Nghiệp vụ | IT | |||
|---|---|---|---|---|
Người lập | Người duyệt | Người lập | Người duyệt | |
Tên, Chức danh | Nguyễn Thanh Vân | Vũ Thị Mơ | ||
Tài khoản email/MS team | vannt4 | movt2 | ||
Chức danh | Business Analyst (BA) | Business (BA BIZ) | ||
Ngày ký | ||||
Jira Link | BPMKVH-972 - Getting issue details... STATUS | |||
1. Card (Mô tả tính năng)
Là admin hệ thống, tôi muốn hệ thống tích hợp các thông tin nhân sự lấy từ HRIS phục vụ cho phân quyền và đo lường OLA/SLA
- Thông tin nhân viên của tập đoàn
- Thông tin cơ cấu tổ chức tập đoàn & các đơn vị thành viên
- Thông tin ca, thời gian làm việc
2. Confirmation/ Acceptance Criteria (Tiêu chí nghiệm thu)
- Tôi muốn cấu hình được tần suất cập nhật theo thời gian
- Tôi muốn chủ động cập nhật thủ công được thông tin khi có nhu cầu
- Tôi muốn quản lý được lịch sử đồng bộ
- Thời gian băt đầu
- Thời gian kết thúc
- Người đồng bộ
- Trạng thái
- Mã lỗi
- Mô tả lỗi
- Tôi muốn lọc được thông tin lịch sử đồng bộ theo
- Ngày: Từ- Đến
- Người đồng bộ
- Trạng thái
- Mã lỗi
- Phân quyền: Với những người có quyền xem danh mục thì sẽ có quyền full liên quan đến danh mục bao gồm cả Cấu hình và Đồng bộ ngay
- Phạm vi dữ liệu:
- Danh sách cbnv thuộc tập đoàn và các đơn vị thành viên (trừ MSB)
- Lấy cả công việc chính và công việc phụ (kiêm nhiệm, điều động)
- Chỉ lấy người tại công ty gốc
- Thông tin các trường dữ liệu
STT | Thông tin dữ liệu | Mô tả | Ghi chú |
1 | Mã nhân viên | Mã duy nhất cho từng nhân viên | Mã NV Hris 6 chữ số |
2 | Tên nhân viên | Lấy thông tin Tên nhân viên (Cột Name) HRIS trả về | Full name trên HRIS |
3 | Dùng để đăng nhập vào và nhận thông báo từ hệ thống | ||
4 | Công việc chính/phụ | Thể hiện công việc tại 1 công ty là chính hay phụ (kiêm nhiệm/điều động) | Trên HRIS: P - Chính, S - Phụ (Bổ sung) |
5 | Mã chức danh | Mã chức danh để xác định vai trò của nhân viên trong cơ cấu tổ chức | Mã chức danh HRIS |
6 | Chức danh | Dùng để xác định vai trò trong quy trình và phân quyền theo chức danh/ vai trò | Chức danh HRIS |
7 | Phòng/ ban | Dùng để phân quyền và điều hướng luồng trong quy trình | Tên phòng ban mà CBNV đó đang đứng |
8 | Mã phòng/ban | Mã phòng ban | Mã phòng ban tương ứng |
9 | Đơn vị cấp 1 | Dùng để phân quyền và điều hướng luồng trong quy trình | Tên đơn vị cấp 1 |
10 | Mã Đơn vị cấp 1 | Mã đơn vị cấp 1 | |
11 | Đơn vị cấp 2 | Dùng để phân quyền và điều hướng luồng trong quy trình | Tên đơn vị cấp 2 |
12 | Mã Đơn vị cấp 2 | Mã đơn vị cấp 2 | |
13 | Đơn vị cấp 3 | Dùng để phân quyền và điều hướng luồng trong quy trình | Tên đơn vị cấp 3 |
14 | Mã Đơn vị cấp 3 | Mã đơn vị cấp 3 | |
15 | Đơn vị cấp 4 | Dùng để phân quyền và điều hướng luồng trong quy trình | Tên đơn vị cấp 4 |
16 | Mã Đơn vị cấp 4 | Mã đơn vị cấp 4 | |
17 | Đơn vị cấp 5 | Dùng để phân quyền và điều hướng luồng trong quy trình | Tên đơn vị cấp 5 |
18 | Mã Đơn vị cấp 5 | Mã đơn vị cấp 5 | |
19 | Trạng thái nhân sự | Để xác định trạng thái hoạt động của nhân sự/ account trên hệ thống | Trạng thái Đang làm việc, nghỉ việc của nhân sự |
| 20 | Ca làm việc | Lấy mã ca làm việc | Lấy thông tin mã ca tại HRIS và cấu hình thông tin thời gian làm việc trực tiếp tại BPM theo thông tin trả về tại file excel của HRIS ( Đã thống nhất lại giữa PO vs anh Dung vì tần suất thay đổi thời gian ca làm việc không nhiều nên BPM chủ động khai báo) Trường hợp với nhân viên có các công việc phụ, thông tin mã ca làm việc được lấy theo công việc chính và active ( Với trường hợp một nhân viên có nhiều công việc chính thì lấy ngẫu nhiên theo một công việc chính của nhân viên đó) |
3. Conversation (Mô tả chi tiết)
3.1. UI/UX
3.1.1. Màn hình Tích hợp HRIS
3.1.2. Màn hình pop-up Bộ lọc
3.1.3. Màn hình pop-up Cấu hình tích hợp HRIS
3.1.4. Màn hình pop-up Xác nhận đồng bộ dữ liệu
3.1.6. Màn hình pop-up Cảnh báo
3.1.6. Màn hình pop-up Đồng bộ thất bại
3.2. Luồng:
Mô tả sơ đồ tích hợp giữa các thành phần của hệ thống BPM1, trong đó 2 hình chữ nhật màu xanh là tích hợp mới cho hệ thống HRIS với service tích hợp của hệ thống BPM1
3.3. API Spec: BPM1_Giai phap tich hop HRIS.docx
Method | POST | URL | /integration/hris/sync |
|---|---|---|---|
Description | API lấy thông tin nhân viên từ Hris | ||
Note | API mới | ||
3.3.3.1. Headers
STT | Field | Source Data Type / Length | Description | Sample Values |
|---|---|---|---|---|
| 1 | authorization | <token> | Token của người dùng đăng nhập | Bearer eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3NjY0NTU3ODksInVzZXIiOiJ7XCJpZFwiOjIwMjAsXCJ1c2VybmFtZVwiOlwiMDM3NDc4ODQwNVwiLFwibmFtZVwiOlwiQ2h1IFRo4buLIExpw6puXCIsXCJyb2xlc1wiOltdLFwibWFwQmVhdXR5U2Fsb25cIjp7XCJicG0ucmVib3JuLnZuXCI6Nn0sXCJlbXBsb3llZUlkXCI6NTMxLFwiYnJhbmNoSWRcIjoyM30ifQ.wrvIFd-Q2kHgkTmPf6ryMY6aDIgXpNsWmSvvifQWc5k |
3.3.3.2. RequestParam
STT | Field | Require | Data Type / Length | Description | Note | Sample Values |
|---|---|---|---|---|---|---|
| 1 | from | true | String | ngày hiện tại | định dạng (2025-12-06) |
3.3.3.3. Response / Incoming Data Specification
| STT | Field | Data Type / Length | Description | Note | Sample Values |
|---|---|---|---|---|---|
| 1 | code | Integer | 0: thành công còn lại thất bại | ||
| 2 | message | String | message | ||
| 3 | result | String | Thông tin đồng bộ |
Method | POST | URL | /integration/hris/sync |
|---|---|---|---|
Description | API lấy thông tin nhân viên từ Hris | ||
Note | API mới | ||
3.3.3.1. Headers
STT | Field | Source Data Type / Length | Description | Sample Values |
|---|---|---|---|---|
| 1 | authorization | <token> | Token của người dùng đăng nhập | Bearer eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3NjY0NTU3ODksInVzZXIiOiJ7XCJpZFwiOjIwMjAsXCJ1c2VybmFtZVwiOlwiMDM3NDc4ODQwNVwiLFwibmFtZVwiOlwiQ2h1IFRo4buLIExpw6puXCIsXCJyb2xlc1wiOltdLFwibWFwQmVhdXR5U2Fsb25cIjp7XCJicG0ucmVib3JuLnZuXCI6Nn0sXCJlbXBsb3llZUlkXCI6NTMxLFwiYnJhbmNoSWRcIjoyM30ifQ.wrvIFd-Q2kHgkTmPf6ryMY6aDIgXpNsWmSvvifQWc5k |
3.3.3.2. RequestBody
STT | Field | Require | Data Type / Length | Description | Note | Sample Values |
|---|---|---|---|---|---|---|
| 1 | List<Employee> | true | String | danh sách các bản ghi employee | ||
| 2 | (Employee) ID | fa;se | String | |||
| 3 | (Employee) ID_RCD | true | String | id record Hris | ||
| 4 | (Employee) EMPLID | true | String | id employee hris | ||
| 5 | (Employee) EMPL_RCD | true | String | |||
| 6 | (Employee) NAME | true | String | tên nhân viên | ||
| 7 | (Employee) EMAIL | true | String | mail nhân viên | ||
| 8 | (Employee) JOB_INDICATOR | true | String | Công việc chính/ phụ có 2 giá trị: P (chính), S (phụ) | ||
| 9 | (Employee) MA_CHUC_DANH | true | String | mã chức danh | ||
| 10 | (Employee) CHUC_DANH | true | String | tên chức danh | ||
| 11 | (Employee) PHONG_BAN | true | String | tên phòng ban | ||
| 12 | (Employee) MA_PHONG_BAN | true | String | mã phòng ban | ||
| 13 | (Employee) BAND | true | String | |||
| 14 | (Employee) HAM | true | String | |||
| 15 | (Employee) DV_C1 | true | String | tên đơn vị cấp 1 (tên công ty) | ||
| 16 | (Employee) MA_DV_C1 | true | String | mã đơn vị cấp 1 (mã công ty) | ||
| 17 | (Employee) MA_DV_C2 | true | String | tên đơn vị cấp 2 | ||
| 18 | (Employee) DV_C2 | true | String | mã đơn vị cấp 2 | ||
| 19 | (Employee) MA_DV_C3 | true | String | tên đơn vị cấp 3 | ||
| 20 | (Employee) DV_C3 | true | String | mã đơn vị cấp 3 | ||
| 21 | (Employee) DV_C4 | true | String | tên đơn vị cấp 4 | ||
| 22 | (Employee) MA_DV_C4 | true | String | mã đơn vị cấp 4 | ||
| 23 | (Employee) DV_C5 | true | String | tên đơn vị cấp 5 | ||
| 24 | (Employee) MA_DV_C5 | true | String | mã đơn vị cấp 5 | ||
| 25 | (Employee) HR_STATUS | true | String | Trạng thái nhân sự: A (active), I (inactive) | ||
| 26 | (Employee) MA_CA_LV | true | String | mã ca làm việc |
3.3.3.3. Response / Incoming Data Specification
| STT | Field | Data Type / Length | Description | Note | Sample Values |
|---|---|---|---|---|---|
| 1 | code | Integer | 0: thành công còn lại thất bại | ||
| 2 | message | String | message |
Phần cấu hình đồng bộ và danh sách lích sử đồng bộ tương tự như phần SAP: 4304 - User Story- SAP về BPM- Đồng bộ thông tin dự án tương thị như phần đồng bộ dự án như thay type = HRIS_EMPLOYEE
3.4. Mô tả HRIS API:
HRIS cung cấp API trả về danh sách toàn bộ nhân sự theo ngày.
- Nhân sự mới onboard
- Nhân sự thay đổi vị trí công việc.
- Nhân sự nghỉ việc
Các trường dữ liệu được mô tả chi tiết theo tài liệu mô tả API.
- Cập nhật dữ liệu
Luồng cập nhật dữ liệu thông qua các bước sau:
- Tạo bảng Employee trên database Integration đóng vai trò lưu trữ dữ liệu lấy về từ HRIS theo ngày.
- Bảng integrations.employee được sử dụng làm nơi lưu trữ tạm thời dữ liệu nhân sự mới lấy về từ hệ thống HRIS.
- Dữ liệu được lấy theo từng đợt (theo ngày hoặc batch cụ thể).
- Mục tiêu: so sánh với dữ liệu hiện có trong hệ thống để xác định cần thêm mới hay cập nhật.
- Từ dữ liệu mới từ HRIS, sánh với dữ bảng dữ liệu đã có trong employee thuộc service system.
- Trường hợp bảng ghi mới:
- Có employee_id chưa tồn tại thì thêm mới vào bảng employee (thuộc service system)
- Trường hợp employee đã tồn tại employee_id và vị trí công việc trong bảng integration.employee đã tồn tại trong system.employee thì:
- Tiến hành cập nhật thông tin đã thay đổi (so sánh giá trị từng trường).
- Có thể chỉ cập nhật một số trường như vị trí công việc, đơn vị cấp 1, đơn vị cấp 2, …
- HR status từ A đổi sang I là đã nghỉ việc
3.5. Mô tả các trường dữ liệu trên màn hình:
3.5.1. Màn hình danh sách Tích hợp HRIS
Trường dữ liệu | Kiểu dữ liệu | Bắt buộc | Quy định | Mô tả | |
|---|---|---|---|---|---|
| 1 | STT | Số (Number) | Không bắt buộc |
| Thể hiện thứ tự các bản ghi lịch sử đồng bộ trên màn hình "Tích hợp HRIS" |
| 2 | Thời gian bắt đầu | Thời gian (date-time) | Không bắt buộc |
| Thể hiện thời gian bắt đầu đồng bộ thông tin từ HRIS |
| 3 | Thời gian kết thúc | Thời gian (date-time) | Không bắt buộc |
| Thể hiện thời gian kết thúc đồng bộ thông tin từ HRIS |
| 4 | Người đồng bộ | Văn bản (Text) | Không bắt buộc |
| Thể hiện tên người thực hiện đồng bộ dữ liệu (Hệ thống hoặc tên nhân viên tương ứng) |
| 5 | Trạng thái | Văn bản (Text) | Không bắt buộc |
| Thể hiển trạng thái đồng bộ thông tin từ HRIS |
| 6 | Mã lỗi | Đường dẫn (Hyperlink) | Không bắt buộc |
| Thể hiện mã lỗi hệ thống trả về khi đồng bộ thất bại |
| 7 | Nút "Lọc" | Nút chức năng (Button) | Không bắt buộc | Cho phép người dùng nhấn để mở ra màn hình pop-up "Bộ lọc"
| Thể hiện nút chức năng bộ lọc |
| 8 | Nút "Cấu hình" | Nút chức năng (Button) | Không bắt buộc | Cho phép người dùng nhấn để mở ra màn hình pop-up "Cấu hình tích hợp HRIS"
| Thể hiện nút chức năng cấu hình tích hợp/cấu hình lịch đồng bộ |
| 9 | Nút "Đồng bộ ngay" | Nút chức năng (Button) | Không bắt buộc | Cho phép người dùng nhấn để mở ra màn hình pop-up "Xác nhận đồng bộ dữ liệu"
| Thể hiện nút chức năng đồng bộ dữ liệu ngay lập tức theo thời gian hiện tại |
3.5.2. Màn hình pop-up "Bộ lọc"
Trường dữ liệu | Kiểu dữ liệu | Bắt buộc | Quy định | Mô tả | |
|---|---|---|---|---|---|
| 1 | Khoảng thời gian | Ngày tháng năm (Date picker) | Không bắt buộc | Cho phép người dùng chọn khoảng thời gian từ ngày đến ngày đồng bộ | Thể hiện thời gian lọc từ ngày đến ngày |
| 2 | Người đồng bộ | Lựa chọn (Droplist) | Không bắt buộc |
| Thể hiện người thực hiện đồng bộ thông tin từ HRIS |
| 3 | Trạng thái | Lựa chọn (Droplist) | Không bắt buộc | Cho phép người dùng chọn giá trị trạng thái tương ứng:
| Thể hiện trạng thái đồng bộ thông tin từ HRIS |
| 4 | Mã lỗi | Văn bản (Text) | Không bắt buộc | Cho phép người dùng nhập mã lỗi đồng bộ thông tin không thành công | Thể hiện thông tin mã lỗi khi đồng bộ thông tin từ HRIS |
| 5 | Nút "X" | Nút chức năng (Button) | Không bắt buộc |
| Thể hiện nút chức năng hủy bỏ thao tác lọc. |
| 6 | Nút "Đặt lại" | Nút chức năng (Button) | Không bắt buộc |
| Thể hiện nút chức năng đặt lại tất cả tiêu chí lọc về trạng thái mặc định ban đầu. |
| 7 | Nút "Áp dụng" | Nút chức năng (Button) | Không bắt buộc |
| Thể hiện nút chức năng áp dụng tiêu chí lọc được chọn |
3.5.3. Màn hình pop-up "Cấu hình tích hợp HRIS"
Trường dữ liệu | Kiểu dữ liệu | Bắt buộc | Quy định | Mô tả | |
|---|---|---|---|---|---|
| 1 | Nút đóng (X)/ Nút "Hủy" | Nút chức năng (Button) |
| Thể hiện nút chức năng hủy bỏ thao tác cấu hình | |
| 2 | Tần suất | Nhãn hiệu (Label) | Chỉ được chọn 1 trong 2 giá trị tần suất đồng bộ thông tin từ HRIS:
| Thể hiện tần suất người dùng chọn đồng bộ thông tin từ HRIS | |
| 3 | Hàng ngày | Nút chọn (Radio Option) | Khi chọn Nút "Hàng ngày", hệ thống sẽ hiện hộp thời gian chọn thời điểm thực hiện đồng bộ thông tin khoản mục phí, theo kiểu thời gian time picker định dạng HH:mm (24h).
| Thể hiện thời gian đồng bộ thông tin từ HRIS được chọn trong ngày | |
| 4 | Tùy chọn | Nút chọn (Radio Option) | Khi chọn nút "Tùy chọn", hệ thống sẽ hiện:
| Thể hiện thời gian đồng bộ thông tin từ HRIS các ngày được chọn trong tuần | |
| 5 | Nút Áp dụng | Nút chức năng (Button) |
| Thể hiện nút chức năng áp dụng thời gian cài đặt cấu hình tự động mới |
3.5.4. Màn hình pop-up "Xác nhận đồng bộ dữ liệu"
Trường dữ liệu | Kiểu dữ liệu | Bắt buộc | Quy định | Mô tả | |
|---|---|---|---|---|---|
| 1 | Bạn có chắc chắc muốn đồng bộ dữ liệu HRIS? | Nhãn hiệu (Label) | Thể hiện văn bản thông báo | ||
| 2 | Nút "Tôi chắc chắn" | Nút chức năng (Button) |
| Thể hiện nút chức năng để thực hiện đồng bộ thông tin từ HRIS theo cấu hình hiện tại | |
| 3 | Nút "Hủy" | Nút chức năng (Button) | Cho phép người dùng nhấn để hủy bỏ thao tác đồng bộ ngay | Thể hiện nút chức năng để hủy bỏ thao tác đồng bộ ngay. |
3.5.5. Pop-up "Cảnh báo"
Trường dữ liệu | Kiểu dữ liệu | Bắt buộc | Quy định | Mô tả | |
|---|---|---|---|---|---|
| 1 | Hệ thống đang thực hiện đồng bộ. Vui lòng chờ quá trình hoàn tất. | Nhãn hiệu (Label) | Thể hiện văn bản cảnh báo | ||
| 2 | Nút "Thoát" | Nút chức năng (Button) | Cho phép người dùng nhấn để đóng màn hình pop-up | Thể hiện nút chức năng để đóng màn hình pop up |
3.5.6. Pop-up "Đồng bộ thất bại"
Trường dữ liệu | Kiểu dữ liệu | Bắt buộc | Quy định | Mô tả | |
|---|---|---|---|---|---|
| 1 | <Mã lỗi> <Mô tả lỗi> | Nhãn hiệu (Label) | Thể hiện văn bản thông báo | ||
| 2 | Nút "Thoát" | Nút chức năng (Button) | Cho phép người dùng nhấn để đóng màn hình pop-up. | Thể hiện nút chức năng để đóng màn hình pop up |
Bảng mã lỗi
| Mã lỗi | Mô tả lỗi | |
|---|---|---|
| 1 | 153 | "Đồng bộ tự động không thể thực hiện do hệ thống đang xử lý đồng bộ thủ công." |
| 2 | 162 | "Đồng bộ HRIS Employee thất bại: <log hệ thống>." |
| 3 | 163 | "Gọi HRIS bị timeout (không nhận phản hồi kịp thời)." |
| 4 | 164 | "DNS lỗi khi gọi HRIS: <log hệ thống>." |
| 5 | 165 | "Không kết nối được tới HRIS: <log hệ thống>." |
| 6 | 166 | "Lỗi mạng khi gọi HRIS: <log hệ thống>." |
| 7 | 167 | "Parse dữ liệu HRIS thất bại: <log hệ thống>." |
| 8 | 168 | "Có lỗi không mong muốn khi gọi/xử lý HRIS: <log hệ thống>." |
| 9 | 169 | "Gọi system thất bại, HTTP: <code>." |
| 10 | 170 | "Lưu/gửi employee thất bại: <log hệ thống>." |
| 11 | 171 | "Không parse được response JSON: Hris trả về dữ liệu nhưng bị lỗi định dạng." |






2 Comments
Phạm Hồng Quân
Nguyễn Đức Trung anh Trung xem giúp em phần tài liệu của HRIS nhé, chỗ này phải làm Hợp đồng với TNTalent nên chốt phạm vi lại e còn đóng URD trên 1C và sau là cơ sở nghiệm thu với TNTalent đấy!
Vũ Thị Mơ
chi-tiet-nhan-vien-hris.xlsx