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

I. TỔNG QUAN

1. Mô tả nghiệp vụ

  • Phần mềm ISO điện tử khi có nhu cầu lấy bộ danh mục đơn vị thì sẽ gọi api lấy bộ danh mục đơn vị lên HCM LGSP (APILayDanhMucDonVi).
  • HCM LGSP sẽ lấy thông tin bộ danh mục đơn vị từ CSDL dùng chung của Thành phố và trả về thông tin danh mục đơn vị cho đơn vị.

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

  • Tài liệu này nhằm hướng dẫn đơn vị lấy thông tin danh mục đơn vị từ CSDL tập trung của Thành phố.

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

  • Tài liệu này được sử dụng bởi các kỹ thuật viên của các đơn vị cần lấy thông tin danh mục đơn vị từ chuẩn CSDL dùng chung của Thành phố.

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

  • Đơn vị cần kết nối liên hệ 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

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

1. Mô hình kết nối lấy danh mục đơn vị

Hình 1: Mô hình kết nối lấy bộ danh mục đơn vị

  • CSDL Dùng chung là nơi tập trung toàn bộ kho dữ liệu dùng chung của TPHCM. Cơ quan, tổ chức có thể thực hiện việc khai thác và đồng bộ dữ liệu về CSDL Dùng chung của Thành phố thông qua Nền tảng HCM LGSP.
  • Nền tảng HCM LGSP đảm nhiệm vai trò chính trong việc cung cấp các thông tin kết nối đến các phần mềm tại đơn vị, khai thác và đồng bộ dữ liệu từ CSDL tập trung của thành phố.
  • APILayDanhMucDonVi hỗ trợ phần mềm kết nối vào Nền tảng HCM LGSP lấy bộ danh mục Đơn vị chuẩn từ CSDL dùng chung của Thành phố.

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ề gói tin JSON lỗi cho phần mềm của đơn vị.
  • 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 LẤY DANH MỤC ĐƠN VỊ

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

  • Đơn vị đang trong giai đoạn thử nghiệm sẽ dùng hệ thống test theo địa chỉ apdapter Nền tảng HCM thử nghiệm
  • Đơn vị khi có thông báo vận hành chính thức sẽ dùng hệ thống chính theo địa chỉ apdapter Nền tảng HCM chính

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ụ dự kiến chính thức

https://hcmesb.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.tphcm.gov.vn/test

AccessKey

Khóa

rTkhYCBwHM

SecretKey

Khóa bí mật

DWkQgY1YSS

AppName

Đơn vị kết nối

TPHCM

Authorization/Token

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

eyJhcHAiOiJRTkkiLCJzZWNyZXQiOiJEV2tRZ1kxWVNTIiwia2V5IjoiclRraFlDQndITSJ9

được stringbase64 từ:

{

"AccessKey":"rTkhYCBwHM",

"SecretKey":"DWkQgY1YSS",

"AppName": "TPHCM"

}

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

2. API lấy danh mục đơn vị

  • Đường dẫn: /GetDanhMucDonVi
  • Method: GET
  • Đầu vào:
    • Header: Authorization
  • Đầu ra:
    • chuỗi json chứa thông tin trả về, resultObject là chuỗi json array chứa thông tin danh mục, chi tiết dữ liệu tại mục 3.3

STT

Tham số

Thuộc tính tham số

Mô tả

1

StatusCode   

Int

Mã trạng thái gói tin

- 200: Request đã được tiếp nhận và xử lý thành công

- 400: Request bị lỗi hoặc không thể xử lý

- 404: Tài nguyên không tồn tại

- 500: Lỗi trong quá trình xử lý

2

Description

String

Nội dung lỗi trả về

3

ResultObject

Boolean

Kết quả trả về

4

ResultType

String

Type của gói tin trả về Mặc định là “JSON”

5

Status

String

Trạng thái gói tin“SUCCESS” hoặc “FAIL”

6

ThrowException

bool

 Có lỗi xảy ra hay không

Bảng 2: tham số trả về của chuỗi json

Ví dụ:

Thành công

Lỗi

{

     "StatusCode": 200,

     "Description": null,

     "ResultObject":[{

            "DiaChi": "59 Lý Tự Trọng Quận 1 Thành phố Hồ Chí Minh",

            "DienThoai": "(028) 35202727",

            "Email": "stttt@tphcm.gov.vn",

            "Fax": "(028) 35202424",

            "MaDonVi": "30.98.H29",

            "TenDonVi": "Sở Thông tin và Truyền thông",

            "TenDonViChuQuan": null,

            "Website": null

        }],

    "ResultType": "JSON",

    "Status": "SUCCESS",

    "ThrowException": false

}

{

    "StatusCode": 500,

    "Description": "Tham số đầu vào không đúng",

    "ResultObject": null,

    "ResultType": null,

    "Status": "FAIL",

    "ThrowException": true

}         

 

3. Gói tin danh mục đơn vị

STT

Tham số

Thuộc tính tham số

Mô tả

Yêu cầu

1

MaDonVi

String

Mã đơn vị.

Bắt buộc

2

TenDonVi

String

Tên đơn vị.

Bắt buộc

3

TenDonViChuQuan

String

Tên đơn vị chủ quan.

Không bắt buộc

4

DiaChi

String

Địa chỉ

Không bắt buộc

5

DienThoai

String

Điện thoại

Không bắt buộc

6

Email

String

Email

Không bắt buộc

7

Fax

String

Fax

Không bắt buộc

8

Website

String

Website

Không bắt buộc

Bảng 3: Gói tin danh mục đơn vị

Ví dụ:

{

            "DiaChi": "59 Lý Tự Trọng Quận 1 Thành phố Hồ Chí Minh",

            "DienThoai": "(028) 35202727",

            "Email": "stttt@tphcm.gov.vn",

            "Fax": "(028) 35202424",

            "MaDonVi": "30.98.H29",

            "TenDonVi": "Sở Thông tin và Truyền thông",

            "TenDonViChuQuan": null,

            "Website": null

}

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

  • DacTaLienThong_APICungCapDanhMucDonVi_v1.1.docx