CHƯƠNG I: TỔNG QUAN VÀ THIẾT KẾ HỆ THỐNG LGSP

Sơ bộ hệ thống LGSP

TRANG 1: Bối cảnh dự án và Tầm nhìn tích hợp

1.1. Hiện trạng và Thách thức

Trong kỷ nguyên số, các cơ quan nhà nước tại địa phương thường vận hành các hệ thống phần mềm độc lập (Silos). Điều này dẫn đến việc dữ liệu bị chia cắt, không đồng bộ và gây khó khăn cho người dân khi thực hiện thủ tục hành chính liên thông. Dự án LGSP (Local Government Service Platform) ra đời để giải quyết các nút thắt này.

1.2. Tầm nhìn của trục LGSP

TRANG 2: Công nghệ và Các thành phần lõi

2.1. Nền tảng WSO2 Micro Integrator (MI) 4.4.0

Hệ thống sử dụng WSO2 MI - một nền tảng mã nguồn mở mạnh mẽ nhất thế giới về ESB. Các ưu điểm chính:

2.2. Các thành phần phụ thuộc (Middleware)

TRANG 3: Phân tích bài toán liên thông LGSP - NGSP

3.1. Mô hình kết nối Liên thông Quốc gia (NGSP)

Dự án thực hiện vai trò là Gateway trung gian giữa Địa phương và Trung ương:

  1. Hướng đi lên (Upstream): Các app địa phương gọi API qua LGSP -> LGSP thực hiện ký số/xác thực -> Gửi lên NDXP/NGSP.
  2. Hướng đi xuống (Downstream): Dữ liệu từ các Bộ/Ngành gửi về qua NGSP -> LGSP tiếp nhận -> Phân phối về đúng phòng ban/sở ngành tương ứng.

3.2. Đảm bảo tính tin cậy tuyệt đối (Guaranteed Delivery)

Đối với văn bản điện tử (EDXML), hệ thống không chỉ gọi API mà còn thực hiện:

TRANG 4: Chi tiết Cơ sở dữ liệu vận hành (Core Schema)

Hệ thống yêu cầu các bảng dữ liệu sau trong ESB_DB để có thể vận hành các tính năng nâng cao:

4.1. Quản lý trạng thái Khóa (sync_lock)

Bảng này cực kỳ quan trọng để đảm bảo tính duy nhất của các tiến trình đồng bộ (Task).

4.2. Quản lý Lập lịch Task động (job_schedule)

Cho phép Admin cấu hình lịch chạy mà không cần sửa code WSO2.

CREATE TABLE `job_schedule` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `service_code` varchar(100) NOT NULL COMMENT 'Mã nghiệp vụ (Vd: DM_TTHC)',
  `cron_expression` varchar(50) NOT NULL COMMENT 'Ví dụ: 0 0 * * * ? (Chạy mỗi giờ)',
  `sequence_name` varchar(100) NOT NULL COMMENT 'Tên Sequence xử lý chính',
  `sync_endpoint_path` text COMMENT 'URL API đích',
  `last_run` datetime DEFAULT NULL COMMENT 'Lần chạy thành công cuối cùng',
  `status` tinyint(1) DEFAULT '1' COMMENT '1: Kích hoạt, 0: Tái kích hoạt',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

4.3. Quản lý Nhật ký truy cập (api_logs)

CREATE TABLE `api_logs` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `api_name` varchar(100) DEFAULT NULL,
  `request_time` datetime DEFAULT NULL,
  `log_level` varchar(20) DEFAULT NULL,
  `message` text DEFAULT NULL,
  `serviceCode` varchar(100) DEFAULT NULL,
  `systemCode` varchar(100) DEFAULT NULL,
  `headers` text DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;