f9d626a499
add test, and fix script
2026-02-09 17:45:50 +07:00
638362df1c
feat: improve move-draft-to-current with differential sync
...
Implement differential sync for organization structure and positions
instead of delete-all-and-insert-all approach.
Changes:
- Add OrgIdMapping and AllOrgMappings interfaces for tracking ID mappings
- Implement syncOrgLevel() helper for differential sync per org level
- Add syncPositionsForPosMaster() helper for position table sync
- Process org levels bottom-up (Child4→Child3→Child2→Child1→Root)
- Use ancestorDNA matching with Like operator for descendant sync
- Cascade delete positions before deleting org nodes
- Batch DELETE/UPDATE/INSERT operations for better performance
- Track draft→current ID mappings for position updates
- Add comprehensive documentation in docs/move-draft-to-current.md
Benefits:
- Preserve IDs for unchanged nodes (better tracking)
- More efficient (fewer database operations)
- Better data integrity with proper FK handling
- Sync all descendants under given rootDnaId
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 12:35:59 +07:00
22fc43fe17
Merge branch 'develop' into feat/org-move-draf-current
...
* develop:
fix: ช่วยรายการและรักษาการ endDate null
fix salaryId set null
fix script move positionSalaryTemp to positionSalary
2026-02-09 09:55:30 +07:00
922a0ab1c2
fix: ช่วยรายการและรักษาการ endDate null
Build & Deploy on Dev / build (push) Successful in 51s
2026-02-06 22:11:07 +07:00
e750b39639
fix salaryId set null
Build & Deploy on Dev / build (push) Successful in 1m2s
2026-02-06 21:58:45 +07:00
2627c58244
fix script move positionSalaryTemp to positionSalary
Build & Deploy on Dev / build (push) Successful in 52s
2026-02-06 21:47:56 +07:00
3177ffc42f
merge
2026-02-06 21:46:41 +07:00
9aa0a97a53
fix script
Build & Deploy on Dev / build (push) Successful in 51s
2026-02-06 17:02:08 +07:00
528f8f75c1
add query
2026-02-06 16:50:31 +07:00
256296672d
privilege
Build & Deploy on Dev / build (push) Successful in 48s
2026-02-06 15:25:54 +07:00
77b545d392
fix child privilege
Build & Deploy on Dev / build (push) Successful in 48s
2026-02-06 15:12:52 +07:00
8a649086f7
fix : #2239
Build & Deploy on Dev / build (push) Successful in 48s
2026-02-06 14:55:59 +07:00
harid
1696890f74
เพิ่มข้อมูล "อายุราชการ (กทม.)" #2285
Build & Deploy on Dev / build (push) Successful in 49s
2026-02-06 14:47:47 +07:00
harid
5b726e69c8
Migrate add table profileSalaryBackup & เพิ่ม insert รักษาการ และช่วยราชการ #2292
2026-02-06 14:47:13 +07:00
203ec6cb84
fix: run temp to profileSalary
Build & Deploy on Dev / build (push) Successful in 53s
2026-02-05 17:18:50 +07:00
af466df0d0
fix mode profileSalaryTemp to profileSalary
Build & Deploy on Dev / build (push) Successful in 53s
2026-02-05 16:46:32 +07:00
631d634074
#2239
Build & Deploy on Dev / build (push) Successful in 49s
2026-02-05 13:37:28 +07:00
d0241016fb
disciption
Build & Deploy on Dev / build (push) Successful in 1m3s
2026-02-05 11:45:10 +07:00
561dc7f66c
change method
2026-02-05 11:43:59 +07:00
39a07482cd
add api find dna by keycloak
Build & Deploy on Dev / build (push) Successful in 1m0s
2026-02-05 11:23:38 +07:00
harid
dbc46e2fb9
เพิ่ม return สถานะการทดลองงาน
Build & Deploy on Dev / build (push) Successful in 56s
2026-02-05 10:14:49 +07:00
harid
55085ab8d8
กรอง isDeleted
Build & Deploy on Dev / build (push) Successful in 50s
2026-02-04 16:32:25 +07:00
harid
30bf5ad9e3
migrate add column isDeleted + API ลบข้อมูลฝึกอบรม/ดูงาน + การพัฒนารายบุคคล idp + รักษาการ Task #2276 , #2279 , #2278
Build & Deploy on Dev / build (push) Successful in 50s
2026-02-03 17:44:30 +07:00
harid
bb18fed9ae
migrate add commandOperator.orderNo & api ส่วนเจ้าหน้าที่ดำเนินการที่คำสั่ง #2220
Build & Deploy on Dev / build (push) Successful in 49s
2026-02-03 12:22:55 +07:00
e5e407e122
fix: PUT /org/workflow/commander/operate isAct = true not response posExecutiveNameOrg
Build & Deploy on Dev / build (push) Successful in 51s
2026-02-02 17:50:48 +07:00
0a3f0d9170
fix: return status of act position
Build & Deploy on Dev / build (push) Successful in 50s
2026-02-02 16:30:24 +07:00
9507040f75
created: script active act position
2026-02-02 16:18:32 +07:00
e92321d360
fix: type avatar & avatarName, clear value null
Build & Deploy on Dev / build (push) Successful in 1m39s
2026-01-31 12:37:25 +07:00
DESKTOP-1R2VSQH\Lenovo ThinkPad E490
74752361be
fix: avatar : string
Build & Deploy on Dev / build (push) Successful in 54s
2026-01-30 18:22:07 +07:00
510aaee0ee
fix
2026-01-30 17:30:34 +07:00
84fb85ef3a
fix: test entity avatar
2026-01-30 17:22:25 +07:00
DESKTOP-1R2VSQH\Lenovo ThinkPad E490
cd68478945
fix:avatar:string
2026-01-30 17:06:23 +07:00
DESKTOP-1R2VSQH\Lenovo ThinkPad E490
109caf7a0d
fix: Type ProfileAvatar string | null
Build & Deploy on Dev / build (push) Successful in 1m20s
2026-01-30 16:15:26 +07:00
DESKTOP-1R2VSQH\Lenovo ThinkPad E490
633ccd4906
fix:delete profileAvatar
Build & Deploy on Dev / build (push) Successful in 53s
2026-01-30 14:47:46 +07:00
harid
e461f43604
Fix Bug #2243
Build & Deploy on Dev / build (push) Successful in 54s
2026-01-30 12:01:38 +07:00
harid
12d2eb1ee9
ข้อมูลทะเบียนประวัติไม่อัปเดตหลัง "ยืนยันข้อมูลถูกต้อง" #2243
Build & Deploy on Dev / build (push) Successful in 55s
2026-01-30 10:20:54 +07:00
d36c4c931c
#2259
Build & Deploy on Dev / build (push) Successful in 50s
2026-01-29 14:10:11 +07:00
harid
69acf3bb0b
add api
Build & Deploy on Dev / build (push) Successful in 52s
2026-01-29 13:18:21 +07:00
harid
328b5b8001
Fix เมนูสิทธิ์แก้ไขข้อมูลทะเบียนประวัติตำแหน่ง/เงินเดือน Error
Build & Deploy on Dev / build (push) Successful in 59s
2026-01-29 09:34:12 +07:00
34f4a01d31
Merge branch 'fix/optimization-detailSuperAdmin' into develop
...
Build & Deploy on Dev / build (push) Successful in 1m5s
* fix/optimization-detailSuperAdmin:
Changed LogMemoryStore from active refresh (setInterval) to passive refresh on-access (60 min TTL)
fix: extend OrgStructureCache TTL and add graceful shutdown cleanup
add: docs and backup file
2026-01-29 00:31:26 +07:00
e4cfac2eb2
add: docs and backup file
2026-01-28 23:10:50 +07:00
07535c9c53
Merge branch 'fix/optimization-detailSuperAdmin' into develop
...
Build & Deploy on Dev / build (push) Successful in 1m2s
* fix/optimization-detailSuperAdmin:
fix: api /super-admin/{id} memory cache
fix: query use Promise all
fix: Api GET /super-admin/{id}
fix: เพิ่ม Graceful Shutdown - ป้องกัน connection in app file, Log Mnddleware + Memory Store
fix: connection pool settings
feat: optimize detailSuperAdmin API to fix database connection issue
2026-01-28 18:26:41 +07:00
1a324af483
fix: api /super-admin/{id} memory cache
2026-01-28 18:26:03 +07:00
7c70229579
fix: query use Promise all
2026-01-28 17:48:28 +07:00
5dcb59632f
fix: Api GET /super-admin/{id}
2026-01-28 17:43:26 +07:00
14c26cce72
add api get profileId
Build & Deploy on Dev / build (push) Successful in 1m0s
2026-01-28 14:17:31 +07:00
bca25a7a52
feat: optimize detailSuperAdmin API to fix database connection issue
...
ปัญหา: API GET /api/v1/org/super-admin/{id} ทำให้ระบบดับเพราะ N+1 queries
- เดิม: >1,000,000 queries (100 orgRoots × 10 children × 10 counts/level)
- ใหม่: ~10 queries (query รวมครั้งเดียว + 5 org queries)
การเปลี่ยนแปลง:
1. สร้าง OrganizationController-optimized.ts
- getPositionCounts(): query posMaster ทั้งหมดครั้งเดียว
- สร้าง maps (orgRootMap, orgChild1Map, etc.) สำหรับ lookup
- ลด queries จาก 1,000,000+ → ~10 queries
2. เพิ่ม import สำหรับ helper functions ใน OrganizationController.ts
- import { getPositionCounts, getCounts, getRootCounts }
- ต้อง replace ฟังก์ชัน detailSuperAdmin ด้วย optimized version
- ดู OPTIMIZED_FUNCTION.ts สำหรับฟังก์ชันใหม่
ไฟล์ที่เพิ่ม:
- src/controllers/OrganizationController-optimized.ts (helper functions)
- OPTIMIZED_FUNCTION.ts (optimized function reference)
- src/utils/log-memory-store.ts (from earlier log middleware fix)
หมายเหตุ: ฟังก์ชัน detailSuperAdmin ใน OrganizationController.ts
ยังไม่ถูก replace (ต้องทำ manual) - ดู OPTIMIZED_FUNCTION.ts
Co-Authored-By: Claude (glm-4.7) <noreply@anthropic.com>
2026-01-28 13:45:52 +07:00
b64a8bb26d
API Get Profile For Logs
...
Build & Deploy on Dev / build (push) Successful in 1m0s
@Get("user-logs/{keycloakId}")
2026-01-28 12:04:49 +07:00
harid
ecd002456e
Merge branch 'develop-Bright' into develop
Build & Deploy on Dev / build (push) Successful in 59s
2026-01-28 11:02:38 +07:00
harid
43ae825ac0
tuning api (ตัด profileSalary เส้นที่ไม่ได้ใช้งาน)
2026-01-28 11:02:11 +07:00