Giải pháp thực hiện

I. TỔNG QUAN

1. Mục đích tài liệu

  • Tài liệu này hướng dẫn các đơn vị của BNĐP kết nối tới hệ thống NGSP thông qua Nền tảng HCM LGSP để thực hiện tra cứu thông tin Danh mục điện tử dùng chung.

2. Phạm vi và đối tượng áp dụng

  • Tài liệu này cung cấp các phương thức, đối tượng cho lập trình viên sử dụng để phát triển tích hợp ứng dụng đơn vị của BNĐP với các dịch vụ tra cứu của Danh mục điện tử dùng chung thông qua Nền tảng HCM LGSP.

3. Thông tin kết nối

  • Đơn vị cần kết nối liên hệ với Sở Thông tin và Truyền thông để được cung cấp thông tin kết nối bao gồm:
    • AppName
    • AccessKey
    • SecretKey
    • PartnerCode
    • PartnerCodeCus

II. MÔ HÌNH KẾT NỐI

1. Mô hình kết nối

Hình 1: Mô hình kết nối

  • Nền tảng NGSP thực hiện chia sẻ thông tin về danh mục điện tử dùng chung cho Nền tảng HCM LGSP
  • Nền tảng HCM LGSP đảm nhiệm vai trò chính trong việc kết nối với Nền tảng NGSP để thực hiện chia sẻ dữ liệu danh mục điện tử dùng chung cho đơn vị thực hiện tra cứu.
  • API Tra cứu thông tin danh mục điện tử dùng chung hỗ trợ phần mềm tại đơn vị kết nối vào Nền tảng HCM LGSP để thực hiện tra cứu thông tin

2. Quá trình trao đổi gói tin

 

Hình 2: Quy trình trao đổi gói tin

  • Bước 1: Phần mềm của đơn vị gọi đến Nền tảng HCM LGSP thông qua api kèm theo access token.
  • Bước 2: Nền tảng HCM LGSP kiểm tra access token của đơn vị. Nếu thất bại sẽ trả về mã lỗi được mô tả như bên dưới
 

        Mã lỗi

<Error_Number>

Ý nghĩa

401

Sai thông tin xác thực

403

Tài khoản không có quyền truy cập API

429

Vượt quá số lượng request cho phép trong một đơn vị thời gian

 

  • Bước 3: Nền tảng HCM LGSP xử lý dữ liệu và trả về gói tin JSON kết quả cho phần mềm đơn vị.

III. ĐẶC TẢ API

1. Thông tin kết nối

Kiểu

Diễn giải

Ví dụ

Địa chỉ adapter Nền tảng HCM chính

Địa chỉ cổng dịch vụ chính thức

https://hcmlgsp.tphcm.gov.vn

Địa chỉ adapter Nền tảng HCM thử nghiệm

Địa chỉ cổng dịch vụ thử nghiệm

https://hcmesb-test.tphcm.gov.vn

AccessKey

Khóa

rTkhYCBwHM

SecretKey

Khóa bí mật

DWkQgY1YSS

AppName

Đơn vị kết nối

TPHCM

PartnerCode

Mã đơn vị cung cấp ứng dụng

000.00.01.H29

PartnerCodeCus

Mã đơn vị sử dụng dịch vụ

000.00.01.H29

lgspaccesstoken

Khai báo trong Header, Là chuỗi gồm 5 tham số dạng json được mã hóa thành StringBase64

ewoiQWNjZXNzS2V5IjoiclRraFlDQndITSIsCiJTZWNyZXRLZXkiOiJE

V2tRZ1kxWVNTIiwKIkFwcE5hbWUiOiAiVFBIQ00iLAoiUGFydG5lck

NvZGUiOiAiMDAwLjAwLjAxLkgyOSIsCiJQYXJ0bmVyQ29kZUN1cyI

6ICIwMDAuMDAuMDEuSDI5Igp9Cg==

được stringbase64 từ:

{

"AccessKey":"rTkhYCBwHM",

"SecretKey":"DWkQgY1YSS",

"AppName": "TPHCM",

"PartnerCode": "000.00.01.H29",

"PartnerCodeCus": "000.00.01.H29"

}

Bảng 1: Bảng thông tin kết nối

  •  

2. API lấy thông tin token

  • Đường dẫn: /dmdc/token
  • Method: POST
  • Đầu vào:
    • Header:
      • Content-Type: application/x-www-form-urlencoded
      • lgspaccesstoken
    • Body:
      • grant_type=client_credentials
  • Đầu ra:
    • Chuỗi json chứa thông tin trả về
 

STT

Tên trường

Kiểu

Bắt buộc

Mô tả

  1.  

access_token

string

Chuỗi token được cấp tương ứng với

một phiên làm việc của một HTTT/LGSP

  1.  

token_type

string

Kiểu token

  1.  

expires_in

int

Thời gian token có hiệu lực (giây)

Bảng 2: Tham số chuỗi json trả về của API lấy thông tin token

 

 

Ví dụ:

{

    "access_token""7602fd18-9d6f-385d-b9c6-671609b5c078",

    "scope""am_application_scope default",

    "token_type""Bearer",

    "expires_in"3600

}

 

  •  

3. API lấy danh sách danh mục

  • Đường dẫn: /dmdc/st/1.0/AllCategory
  • Method: GET
  • Đầu vào:
    • Header:
      • Authorization: Bearer {token} (token sinh ra từ API lấy thông tin token phía trên)
      • Content-Type: application/json
      • lgspaccesstoken
  • Đầu ra:
    • Danh sách danh mục với thông tin phiên bản, số bản ghi, các endpoint của danh mục (Đối tượng trả ra List<CategoryInfo>)

 

 

Ví dụ:

<CategoryInfo>

        <CategoryCode>DanhMucHeThongNganhSanPhamVietNamCap5</CategoryCode>

        <CategoryName>Danh mục Hệ thống ngành sản phẩm Việt Nam cấp 5</CategoryName>

        <ServiceName>DanhMucHeThongNganhSanPhamVietNamCap5</ServiceName>

        <Version>1</Version>

        <VersionDate>2020-06-16T17:23:07.87</VersionDate>

        <VersionDescription/>

        <TotalItem>587</TotalItem>

        <PageSize>0</PageSize>

        <TotalPage>1</TotalPage>

        <UrlDublinCoreMetadata>http://dmdc/st.ngsp.gov.vn/svc/NGSP.svc/DublinCoreMetadata/DanhMucHeThongNganhSanPham

VietNamCap5</UrlDublinCoreMetadata>

        <UrlMetadata>/dmdc/st/1.0/Metadata/DanhMucHeThongNganhSanPhamVietNamCap5</UrlMetadata>

        <UrlGetList>/dmdc/st/1.0/Category/DanhMucHeThongNganhSanPhamVietNamCap5</UrlGetList>

        <UrlPostList>/dmdc/st/1.0/Category/DanhMucHeThongNganhSanPhamVietNamCap5</UrlPostList>

        <UrlGetTrace>http://dmdc/st.ngsp.gov.vn/svc/NGSP.svc/TraceCategory/DanhMucHeThongNganhSanPhamVietNamCap5</UrlGetTrace>

    </CategoryInfo>

 

 

  •  

4. API danh mục – mã định danh kết nối các hệ thống QLVBĐH cấp 1

4.1. Lấy cấu trúc danh mục

  • Đường dẫn: /dmdc/st/1.0/Metadata/qlvanbandieuhanhcap1
  • Method: GET
  • Đầu vào:
    • Header:
      • Authorization: Bearer {token} (token sinh ra từ API lấy thông tin token phía trên)
      • Content-Type: application/json hoặc application/xml
      • lgspaccesstoken
  • Đầu ra:
    • Danh sách các trường dữ liệu của danh mục Văn bản điều hành cấp 1

 

 

Ví dụ:

<MetadataResult>

        <PropertyCode>MaDinhDanhCap1</PropertyCode>

        <PropertyName>Mã định danh cấp 1</PropertyName>

        <PropertyType>String</PropertyType>

    </MetadataResult>

    <MetadataResult>

        <PropertyCode>TenDonVi</PropertyCode>

        <PropertyName>Tên đơn vị</PropertyName>

        <PropertyType>String</PropertyType>

    </MetadataResult>

    <MetadataResult>

        <PropertyCode>DiaChi</PropertyCode>

        <PropertyName>Địa chỉ</PropertyName>

        <PropertyType>String</PropertyType>

    </MetadataResult>

    <MetadataResult>

        <PropertyCode>Email</PropertyCode>

        <PropertyName>Email</PropertyName>

        <PropertyType>String</PropertyType>

    </MetadataResult>

    <MetadataResult>

        <PropertyCode>SoDienThoai</PropertyCode>

        <PropertyName>Số điện thoại</PropertyName>

        <PropertyType>String</PropertyType>

    </MetadataResult>

    <MetadataResult>

        <PropertyCode>Fax</PropertyCode>

        <PropertyName>Fax</PropertyName>

        <PropertyType>String</PropertyType>

    </MetadataResult>

    <MetadataResult>

        <PropertyCode>Website</PropertyCode>

        <PropertyName>Website</PropertyName>

        <PropertyType>String</PropertyType>

    </MetadataResult>

    <MetadataResult>

        <PropertyCode>QdBanHanhQdSuaDoi</PropertyCode>

        <PropertyName>QĐ ban hành/ QĐ sửa đổi</PropertyName>

        <PropertyType>String</PropertyType>

    </MetadataResult>

    <MetadataResult>

        <PropertyCode>NgayBanHanhQd</PropertyCode>

        <PropertyName>Ngày ban hành QĐ</PropertyName>

        <PropertyType>DateTime</PropertyType>

    </MetadataResult>

    <MetadataResult>

        <PropertyCode>CoQuanBanHanhQd</PropertyCode>

        <PropertyName>Cơ Quan ban hành QĐ</PropertyName>

        <PropertyType>String</PropertyType>

    </MetadataResult>

</DocumentElement>

 

    1.  

4.2. Lấy dữ liệu

  • Đường dẫn: /dmdc/st/1.0/Category/qlvanbandieuhanhcap1
  • Method: GET
  • Đầu vào:
    • Header:
      • Authorization: Bearer {token} (token sinh ra từ API lấy thông tin token phía trên)
      • Content-Type: application/json hoặc application/xml
      • lgspaccesstoken
  • Đầu ra:
    • Danh sách dữ liệu

Ví dụ:

<DanhMucVaMaDinhDanhKetNoiCacHeThongQLVBDHCap1>

        <MaDinhDanhCap1>000.00.00.H30</MaDinhDanhCap1>

        <TenDonVi>UBND tỉnh Hậu Giang</TenDonVi>

        <QdBanHanhQdSuaDoi>1220/QĐ-UBND</QdBanHanhQdSuaDoi>

        <NgayBanHanhQd>2018-08-16T00:00:00+07:00</NgayBanHanhQd>

        <CoQuanBanHanhQd>UBND tỉnh Hậu Giang</CoQuanBanHanhQd>

    </DanhMucVaMaDinhDanhKetNoiCacHeThongQLVBDHCap1>

    <DanhMucVaMaDinhDanhKetNoiCacHeThongQLVBDHCap1>

        <MaDinhDanhCap1>000.00.00.G13</MaDinhDanhCap1>

        <TenDonVi>Bộ Tài nguyên và Môi trường</TenDonVi>

        <QdBanHanhQdSuaDoi>2180/QĐ-BTNMT</QdBanHanhQdSuaDoi>

        <NgayBanHanhQd>2018-07-06T00:00:00+07:00</NgayBanHanhQd>

        <CoQuanBanHanhQd>Bộ Tài nguyên và Môi trường</CoQuanBanHanhQd>

 

 

    1.  

4.3. Bổ sung dữ liệu danh mục

  • Chưa sử dụng

5. Các dịch vụ danh mục khác

Khai thác các dịch vụ danh mục khác cũng tương tự như dịch vụ danh mục - mã định danh kết nối các hệ thống QLVBĐH cấp 1 (tại mục 3.4) với đường dẫn được mô tả trong dịch vụ lấy danh sách danh mục (3.3) (thay địa chỉ adapter tương ứng trong tài liệu này khi gọi dịch vụ) hoặc theo danh sách sau:

Tên

Endpoint

Danh mục và mã định danh kết nối các hệ thống QLVBĐH cấp 1

Get List

/dmdc/st/1.0/Metadata/qlvanbandieuhanhcap1

Get List

/dmdc/st/1.0/Category/qlvanbandieuhanhcap1

Danh mục và mã định danh kết nối các hệ thống QLVBĐH cấp 2

Get List

/dmdc/st/1.0/Metadata/qlvanbandieuhanhcap2

Get List

/dmdc/st/1.0/Category/qlvanbandieuhanhcap2

Danh mục và mã định danh kết nối các hệ thống QLVBĐH cấp 3

Get List

/dmdc/st/1.0/Metadata/qlvanbandieuhanhcap3

Get List

/dmdc/st/1.0/Category/qlvanbandieuhanhcap3

Danh mục và mã định danh kết nối các hệ thống QLVBĐH cấp 4

Get List

/dmdc/st/1.0/Metadata/qlvanbandieuhanhcap4

Get List

/dmdc/st/1.0/Category/qlvanbandieuhanhcap4

Danh mục và mã số các đơn vị hành chính Việt Nam cấp 1 (Tỉnh)

Get List

/dmdc/st/1.0/Metadata/donvihanhchinhcap1

Get List

/dmdc/st/1.0/Category/donvihanhchinhcap1

Danh mục và mã số các đơn vị hành chính Việt Nam cấp 2 (Quận, Huyện)

Get List

/dmdc/st/1.0/Metadata/donvihanhchinhcap2

Get List

/dmdc/st/1.0/Category/donvihanhchinhcap2

Danh mục và mã số các đơn vị hành chính Việt Nam cấp 3 (Phường, Xã)

Get List

/dmdc/st/1.0/Metadata/donvihanhchinhcap3

Get List

/dmdc/st/1.0/Category/donvihanhchinhcap3

Danh mục Mã bưu chính vùng, khu vực

Get List

/dmdc/st/1.0/Metadata/mabuuchinhvungkhuvuc

Get List

/dmdc/st/1.0/Category/mabuuchinhvungkhuvuc

Danh mục Mã bưu chính cấp 1 (Tỉnh)

Get List

/dmdc/st/1.0/Metadata/mabuuchinhcap1

Get List

/dmdc/st/1.0/Category/mabuuchinhcap1

Danh mục Mã bưu chính cấp 2 (Quận, Huyện)

Get List

/dmdc/st/1.0/Metadata/mabuuchinhcap2

Get List

/dmdc/st/1.0/Category/mabuuchinhcap2

Danh mục Mã bưu chính cấp 3 (Phường, Xã)

Get List

/dmdc/st/1.0/Metadata/mabuuchinhcap3

Get List

/dmdc/st/1.0/Category/mabuuchinhcap3

Danh mục và mã các dân tộc

Get List

/dmdc/st/1.0/Metadata/madantoc

Get List

/dmdc/st/1.0/Category/madantoc

Danh mục và mã các dân tộc và tên gọi khác

Get List

/dmdc/st/1.0/Metadata/madantockhac

Get List

/dmdc/st/1.0/Category/madantockhac

Danh mục và mã các tôn giáo

Get List

/dmdc/st/1.0/Metadata/matongiao

Get List

/dmdc/st/1.0/Category/matongiao

Danh mục và mã giới tính

Get List

/dmdc/st/1.0/Metadata/magioitinh

Get List

/dmdc/st/1.0/Category/magioitinh

Danh mục và mã nhóm máu

Get List

/dmdc/st/1.0/Metadata/manhommau

Get List

/dmdc/st/1.0/Category/manhommau

Danh mục và mã ý nghĩa nhóm máu

Get List

/dmdc/st/1.0/Metadata/maynghianhommau

Get List

/dmdc/st/1.0/Category/maynghianhommau

Danh mục và mã Quốc gia, quốc tịch

Get List

/dmdc/st/1.0/Metadata/maquocgia

Get List

/dmdc/st/1.0/Category/maquocgia

Danh mục và mã Tình trạng hôn nhân

Get List

/dmdc/st/1.0/Metadata/matinhtranghonnhan

Get List

/dmdc/st/1.0/Category/matinhtranghonnhan

Danh mục giáo dục, đào tạo Việt Nam Cấp 1

Get List

/dmdc/st/1.0/Metadata/giaoducdaotaovncap1

Get List

/dmdc/st/1.0/Category/giaoducdaotaovncap1

Danh mục giáo dục, đào tạo Việt Nam Cấp 2

Get List

/dmdc/st/1.0/Metadata/giaoducdaotaovncap2

Get List

/dmdc/st/1.0/Category/giaoducdaotaovncap2

Danh mục giáo dục, đào tạo Việt Nam Cấp 3

Get List

/dmdc/st/1.0/Metadata/giaoducdaotaovncap3

Get List

/dmdc/st/1.0/Category/giaoducdaotaovncap3

Danh mục giáo dục, đào tạo cấp IV trình độ cao đẳng, đại học

Get List

/dmdc/st/1.0/Metadata/giaoducdaotaovncap4

Get List

/dmdc/st/1.0/Category/giaoducdaotaovncap4

Danh mục giáo dục, đào tạo cấp IV trình độ thạc sĩ, tiến sĩ

Get List

/dmdc/st/1.0/Metadata/giaoducdaotaovncap5

Get List

/dmdc/st/1.0/Category/giaoducdaotaovncap5

Danh mục và mã chức danh trong các cơ quan Đảng cộng sản Việt Nam

Get List

/dmdc/st/1.0/Metadata/machucdanhcqdcsvn

Get List

/dmdc/st/1.0/Category/machucdanhcqdcsvn

Danh mục bậc lương

Get List

/dmdc/st/1.0/Metadata/mabacluong

Get List

/dmdc/st/1.0/Category/mabacluong

Danh mục bảng lương

Get List

/dmdc/st/1.0/Metadata/mabangluong

Get List

/dmdc/st/1.0/Category/mabangluong

Danh mục loại công chức, viên chức, nhân viên, lãnh đạo

Get List

/dmdc/st/1.0/Metadata/machucdanh

Get List

/dmdc/st/1.0/Category/machucdanh

Danh mục nhóm lương

Get List

/dmdc/st/1.0/Metadata/manhomluong

Get List

/dmdc/st/1.0/Category/manhomluong

Danh mục và mã các hệ số lương

Get List

/dmdc/st/1.0/Metadata/mahesoluong

Get List

/dmdc/st/1.0/Category/mahesoluong

Danh mục và mã mức lương tối thiểu vùng

Get List

/dmdc/st/1.0/Metadata/mahesoluongvung

Get List

/dmdc/st/1.0/Category/mahesoluongvung

Danh mục mã thi đua khen thưởng

Get List

/dmdc/st/1.0/Metadata/mathiduakhenthuong

Get List

/dmdc/st/1.0/Category/mathiduakhenthuong

Danh mục Mã loại văn bản theo quy định pháp luật

Get List

/dmdc/st/1.0/Metadata/maloaivanbantheoqdpl

Get List

/dmdc/st/1.0/Category/maloaivanbantheoqdpl

 

Danh mục Mã tên các loại văn bản quy phạm pháp luật

Get List

/dmdc/st/1.0/Metadata/matenvanbantheoqdpl

Get List

/dmdc/st/1.0/Category/matenvanbantheoqdpl

Danh mục Mã tên các loại văn bản hành chính

Get List

/dmdc/st/1.0/Metadata/matenvanbanhanhchinh

Get List

/dmdc/st/1.0/Category/matenvanbanhanhchinh

Danh mục Mã quy định độ khẩn văn bản

Get List

/dmdc/st/1.0/Metadata/dokhanvanban

Get List

/dmdc/st/1.0/Category/dokhanvanban

Danh sách tệp tin đính kèm

  • HCM_LGSP_Danh muc dung chung_v1.0.docx