IM Integration (OrgUnit & User)
เอกสารนี้ระบุตรรกะของโปรแกรมและรายละเอียดการเชื่อมต่อข้อมูลระหว่างระบบ AIS Virtual Organization (VO) และระบบ Identity Management (IM) เพื่อจัดการข้อมูลหน่วยงาน (OrgUnit) และข้อมูลผู้ใช้งาน (User)
1. ภาพรวมโครงการ (Project Overview)
- ชื่อระบบ: Virtual Organization (VO) on Azure Cloud
- โมดูล: IM Integration
- วัตถุประสงค์: เพื่อส่งข้อมูลการสร้าง/ปรับปรุงหน่วยงาน (Division) และข้อมูลผู้ใช้งาน (User) เฉพาะกลุ่ม ACC และ Shop ไปยังระบบ IM เพื่อให้ข้อมูลในระบบ IM เป็นปัจจุบัน
2. รายละเอียดการเชื่อมต่อ (Integration Details)
2.1 การจัดการหน่วยงาน (Create & Update OrgUnit)
ระบบ VO จะส่งข้อมูล Division ไปยัง IM เมื่อมีการสร้างหรือแก้ไขข้อมูล Division ผ่านหน้าจอ GUI โดยเน้นกลุ่ม Channel 'ACC'
ตารางการเทียบฟิลด์ (Field Mapping: OrgUnit)
| ฟิลด์ใน IM | ฟิลด์ใน VO | รายละเอียด / Remark |
|---|---|---|
inOrgUnitCode | MasterDivision Code | รหัสหน่วยงาน |
inOrgUnitName | MasterDivision Name | ชื่อหน่วยงาน |
inParentUnit | MasterDivision.ParentId Code | รหัสหน่วยงานต้นสังกัด |
inStatus | MasterDivision Status | สถานะ (Active, Inactive) |
inEfftiveDate | CreateDate | วันที่มีผล |
inChannelSaleGroup | Default = ‘ACC’ | ค่าเริ่มต้นสำหรับกลุ่ม ACC |
2.2 การจัดการผู้ใช้งาน (Create & Update User)
ส่งข้อมูลผู้ใช้งานกลุ่ม ACC และ Shop ไปยัง IM เมื่อมีการ Create/Update ผ่านหน้าจอ GUI หรือได้รับข้อมูลอัปเดตจาก OM
ตารางการเทียบฟิลด์ (Field Mapping: User)
| ฟิลด์ใน IM | ฟิลด์ใน VO | รายละเอียด / Remark |
|---|---|---|
OperatorID | UserName | AIS Username |
OrgUnitID | Division Code | รหัสหน่วยงาน |
ACIMRoleID | ACIM RoleID | รหัสสิทธิ์จากระบบ ACIM |
ManagerUserID | UserMaster.ReportTo UserName | ชื่อผู้ใช้งานของผู้บังคับบัญชา |
FirstName | UserMaster FirstNameEN | ชื่อภาษาอังกฤษ |
LastName | UserMaster LastNameEN | นามสกุลภาษาอังกฤษ |
PositionName | MasterPosition Name | ชื่อตำแหน่งงาน |
Location Code | EmployeeProfile.LocationCode | รหัสสถานที่ปฏิบัติงาน (เฉพาะกลุ่ม Shop) |
2.3 การลบผู้ใช้งาน (Delete User - ACC)
เมื่อมีการปิดการใช้งาน User กลุ่ม ACC ในระบบ VO จะมีการส่งสถานะไปยัง IM
3. การกำหนดกลุ่มการเข้าถึง (IM Access Group Mapping)
ระบบ VO จะแปลงตำแหน่งงาน (Position Type) เป็นกลุ่มการเข้าถึงใน IM ตามเกณฑ์ดังนี้:
| Position Type (VO) | IM Access Group |
|---|---|
| Officer | AIS_OFFICER, CAC_OFFICER, CC_OFFICER |
| Supervisor | AIS_SUP, CAC_SUP, CC_SUP |
| Manager | CAC_MGR, CC_MGR, CC_DM |
| Head Department | CC_HEAD |
| Executive | CC_MD |
4. สถานการณ์การทดสอบ (Test Scenarios)
4.1 การจัดการหน่วยงาน (OrgUnit Scenarios)
- SN-001: สร้าง Division ACC ใหม่โดยไม่กำหนด Parent
- SN-002: สร้าง Division ACC ใหม่โดยกำหนด Parent Division
- SN-003: ปรับปรุงชื่อ Division (OrgUnitName)
- SN-005: เปลี่ยนสถานะ Division เป็น Inactive
4.2 การจัดการผู้ใช้งาน (User Scenarios)
- SN-007: สร้าง User ACC ใหม่ผ่านหน้าจอ GUI
- SN-011: อัปเดตข้อมูลโปรไฟล์ User (ชื่อ, นามสกุล, อีเมล)
- SN-013: ย้าย Division/Position ของ User ข้ามทีม
- SN-015: ปิดการใช้งาน User ACC (Active -> Inactive)
- SN-016: อัปเดตข้อมูล User Shop เมื่อได้รับข้อมูลจาก OM
5. ตรรกะทางธุรกิจเพิ่มเติม (Business Rules)
- Channel Validation: ระบบจะส่งข้อมูลไปยัง IM เฉพาะกลุ่มที่มี Channel เป็น 'ACC' หรือ 'AIS SHOP' (ตามที่กำหนดใน Reorg)
- Mandatory Fields: ฟิลด์ที่จำเป็นในฝั่ง VO เช่น Email ต้องระบุให้ครบถ้วนก่อนบันทึกข้อมูลเพื่อส่งไปยัง IM