-- ============================================================================ -- S59 đợt 3 (2026-06-11) — RENAME 71 WorkItems theo format PMH anh Kiệt FDC chốt -- (Zalo 16:59 "MÃ CV gồm chữ MEP-SUB-1 rồi tên 1 MEP Sub MEP (Full) — đúng kiểu vậy"): -- Mã CV = nhóm + STT không pad: MAT-n / SUB-n / MEP-SUB-n / MEP-EQU-n -- Tên CV = "STT nhóm tên": "1 Mat Bê tông", "1 MEP Sub MEP (Full)"… -- UPDATE giữ nguyên Id (phiếu PE/2026/A/001 vừa tạo trỏ WorkItemId vẫn đúng). -- PHẢI chạy TRƯỚC khi deploy commit seed mới (per-code idempotent: nếu deploy -- trước, app restart thấy mã mới "thiếu" sẽ ADD 71 row mới = 142). -- Run: sqlcmd -S .\SQLEXPRESS -d SolutionErp -i s59-rename-workitems-pmh.sql -- ============================================================================ SET QUOTED_IDENTIFIER ON; SET NOCOUNT ON; PRINT '=== BEFORE ==='; SELECT 'TOTAL' AS T, COUNT(*) AS C FROM WorkItems UNION ALL SELECT 'OLD-CODES', COUNT(*) FROM WorkItems WHERE Code LIKE 'VT-%' OR Code LIKE 'TP-%' OR (Code LIKE 'MEP-0%') OR Code LIKE 'TB-%'; BEGIN TRANSACTION; -- VẬT TƯ - XÂY DỰNG: VT-01..16 -> MAT-1..16 UPDATE WorkItems SET Code=N'MAT-1', Name=N'1 Mat Bê tông' WHERE Code=N'VT-01'; UPDATE WorkItems SET Code=N'MAT-2', Name=N'2 Mat Thép cây, Thép lưới hàn' WHERE Code=N'VT-02'; UPDATE WorkItems SET Code=N'MAT-3', Name=N'3 Mat Cọc ly tâm' WHERE Code=N'VT-03'; UPDATE WorkItems SET Code=N'MAT-4', Name=N'4 Mat Cống ly tâm' WHERE Code=N'VT-04'; UPDATE WorkItems SET Code=N'MAT-5', Name=N'5 Mat Cừ tràm' WHERE Code=N'VT-05'; UPDATE WorkItems SET Code=N'MAT-6', Name=N'6 Mat Kim loại ( rọ đầu cọc, V mạ kẽm, Vinox, bản mã…)' WHERE Code=N'VT-06'; UPDATE WorkItems SET Code=N'MAT-7', Name=N'7 Mat Nắp gang' WHERE Code=N'VT-07'; UPDATE WorkItems SET Code=N'MAT-8', Name=N'8 Mat Gạch xây, Xi măng, cát, đá, gạch trồng cỏ' WHERE Code=N'VT-08'; UPDATE WorkItems SET Code=N'MAT-9', Name=N'9 Mat Gạch trồng cỏ, gạch trang trí…' WHERE Code=N'VT-09'; UPDATE WorkItems SET Code=N'MAT-10', Name=N'10 Mat Gạch ốp lát' WHERE Code=N'VT-10'; UPDATE WorkItems SET Code=N'MAT-11', Name=N'11 Mat Ván khuôn' WHERE Code=N'VT-11'; UPDATE WorkItems SET Code=N'MAT-12', Name=N'12 Mat Sơn nước' WHERE Code=N'VT-12'; UPDATE WorkItems SET Code=N'MAT-13', Name=N'13 Mat Phụ gia (sika, vinkem, Gps…)' WHERE Code=N'VT-13'; UPDATE WorkItems SET Code=N'MAT-14', Name=N'14 Mat PVC, vải địa' WHERE Code=N'VT-14'; UPDATE WorkItems SET Code=N'MAT-15', Name=N'15 Mat Nẹp inox, nẹp nhựa' WHERE Code=N'VT-15'; UPDATE WorkItems SET Code=N'MAT-16', Name=N'16 Mat Khác' WHERE Code=N'VT-16'; -- THẦU PHỤ - XÂY DỰNG: TP-01..30 -> SUB-1..30 UPDATE WorkItems SET Code=N'SUB-1', Name=N'1 Sub Thầu phụ cọc ( cơ, robot)' WHERE Code=N'TP-01'; UPDATE WorkItems SET Code=N'SUB-2', Name=N'2 Sub Thầu phụ cọc Khoan nhồi' WHERE Code=N'TP-02'; UPDATE WorkItems SET Code=N'SUB-3', Name=N'3 Sub Thầu phụ cọc CDM' WHERE Code=N'TP-03'; UPDATE WorkItems SET Code=N'SUB-4', Name=N'4 Sub Kết cấu thép' WHERE Code=N'TP-04'; UPDATE WorkItems SET Code=N'SUB-5', Name=N'5 Sub Cáp dự ứng lực' WHERE Code=N'TP-05'; UPDATE WorkItems SET Code=N'SUB-6', Name=N'6 Sub Panel' WHERE Code=N'TP-06'; UPDATE WorkItems SET Code=N'SUB-7', Name=N'7 Sub Nhôm kính, alu' WHERE Code=N'TP-07'; UPDATE WorkItems SET Code=N'SUB-8', Name=N'8 Sub Cửa thép, Cửa cuốn, sectional door' WHERE Code=N'TP-08'; UPDATE WorkItems SET Code=N'SUB-9', Name=N'9 Sub Cửa gỗ' WHERE Code=N'TP-09'; UPDATE WorkItems SET Code=N'SUB-10', Name=N'10 Sub Cơ khí hoàn thiện lan can, cầu thang' WHERE Code=N'TP-10'; UPDATE WorkItems SET Code=N'SUB-11', Name=N'11 Sub Dây cứu sinh' WHERE Code=N'TP-11'; UPDATE WorkItems SET Code=N'SUB-12', Name=N'12 Sub Nội thất' WHERE Code=N'TP-12'; UPDATE WorkItems SET Code=N'SUB-13', Name=N'13 Sub Vách trần thạch cao' WHERE Code=N'TP-13'; UPDATE WorkItems SET Code=N'SUB-14', Name=N'14 Sub Vách ngăn di động' WHERE Code=N'TP-14'; UPDATE WorkItems SET Code=N'SUB-15', Name=N'15 Sub Vách ngăn vệ sinh' WHERE Code=N'TP-15'; UPDATE WorkItems SET Code=N'SUB-16', Name=N'16 Sub Granit' WHERE Code=N'TP-16'; UPDATE WorkItems SET Code=N'SUB-17', Name=N'17 Sub Hoàn thiện sàn thảm, vinyl' WHERE Code=N'TP-17'; UPDATE WorkItems SET Code=N'SUB-18', Name=N'18 Sub Chống mối' WHERE Code=N'TP-18'; UPDATE WorkItems SET Code=N'SUB-19', Name=N'19 Sub Chống thấm' WHERE Code=N'TP-19'; UPDATE WorkItems SET Code=N'SUB-20', Name=N'20 Sub Sơn PU, Epoxy, liquid' WHERE Code=N'TP-20'; UPDATE WorkItems SET Code=N'SUB-21', Name=N'21 Sub Dock Leveler.' WHERE Code=N'TP-21'; UPDATE WorkItems SET Code=N'SUB-22', Name=N'22 Sub Cẩu trục' WHERE Code=N'TP-22'; UPDATE WorkItems SET Code=N'SUB-23', Name=N'23 Sub Trạm cân' WHERE Code=N'TP-23'; UPDATE WorkItems SET Code=N'SUB-24', Name=N'24 Sub Thang máy, thang hàng, …' WHERE Code=N'TP-24'; UPDATE WorkItems SET Code=N'SUB-25', Name=N'25 Sub Sàn nâng.' WHERE Code=N'TP-25'; UPDATE WorkItems SET Code=N'SUB-26', Name=N'26 Sub Landscape' WHERE Code=N'TP-26'; UPDATE WorkItems SET Code=N'SUB-27', Name=N'27 Sub Cổng xếp.' WHERE Code=N'TP-27'; UPDATE WorkItems SET Code=N'SUB-28', Name=N'28 Sub Logo, Bảng hiệu.' WHERE Code=N'TP-28'; UPDATE WorkItems SET Code=N'SUB-29', Name=N'29 Sub TP thi công Màng nhựa' WHERE Code=N'TP-29'; UPDATE WorkItems SET Code=N'SUB-30', Name=N'30 Sub Khác' WHERE Code=N'TP-30'; -- MEP: MEP-01..09 -> MEP-SUB-1..9 (chạy TRƯỚC khối MEP-EQU để LIKE 'MEP-0%' không đụng) UPDATE WorkItems SET Code=N'MEP-SUB-1', Name=N'1 MEP Sub MEP (Full)' WHERE Code=N'MEP-01'; UPDATE WorkItems SET Code=N'MEP-SUB-2', Name=N'2 MEP Sub Hệ thống trung thế' WHERE Code=N'MEP-02'; UPDATE WorkItems SET Code=N'MEP-SUB-3', Name=N'3 MEP Sub PCCC (Phòng cháy chữa cháy).' WHERE Code=N'MEP-03'; UPDATE WorkItems SET Code=N'MEP-SUB-4', Name=N'4 MEP Sub Hệ thống điện, điện nhẹ' WHERE Code=N'MEP-04'; UPDATE WorkItems SET Code=N'MEP-SUB-5', Name=N'5 MEP Sub Hệ thống HVAC, Utility (Thông gió & Điều hòa không khí & Phù trợ).' WHERE Code=N'MEP-05'; UPDATE WorkItems SET Code=N'MEP-SUB-6', Name=N'6 MEP Sub Hệ thống cấp thoát nước' WHERE Code=N'MEP-06'; UPDATE WorkItems SET Code=N'MEP-SUB-7', Name=N'7 MEP Sub Hệ thống xử lý nước thải' WHERE Code=N'MEP-07'; UPDATE WorkItems SET Code=N'MEP-SUB-8', Name=N'8 MEP Sub Hệ thống solar' WHERE Code=N'MEP-08'; UPDATE WorkItems SET Code=N'MEP-SUB-9', Name=N'9 MEP Sub Khác' WHERE Code=N'MEP-09'; -- THIẾT BỊ: TB-01..16 -> MEP-EQU-1..16 UPDATE WorkItems SET Code=N'MEP-EQU-1', Name=N'1 MEP _ Equ Máy biến áp' WHERE Code=N'TB-01'; UPDATE WorkItems SET Code=N'MEP-EQU-2', Name=N'2 MEP _ Equ Tủ điện' WHERE Code=N'TB-02'; UPDATE WorkItems SET Code=N'MEP-EQU-3', Name=N'3 MEP _ Equ Tủ trung thế.' WHERE Code=N'TB-03'; UPDATE WorkItems SET Code=N'MEP-EQU-4', Name=N'4 MEP _ Equ Busway' WHERE Code=N'TB-04'; UPDATE WorkItems SET Code=N'MEP-EQU-5', Name=N'5 MEP _ Equ Cáp điện' WHERE Code=N'TB-05'; UPDATE WorkItems SET Code=N'MEP-EQU-6', Name=N'6 MEP _ Equ Thiết bị Utility (Máy nén khí, Hút bụi hút mùi, Boiler,...)' WHERE Code=N'TB-06'; UPDATE WorkItems SET Code=N'MEP-EQU-7', Name=N'7 MEP _ Equ Máy lạnh' WHERE Code=N'TB-07'; UPDATE WorkItems SET Code=N'MEP-EQU-8', Name=N'8 MEP _ Equ Ống thép, inox' WHERE Code=N'TB-08'; UPDATE WorkItems SET Code=N'MEP-EQU-9', Name=N'9 MEP _ Equ Thang máng cáp' WHERE Code=N'TB-09'; UPDATE WorkItems SET Code=N'MEP-EQU-10', Name=N'10 MEP _ Equ Ống PVC, HDPE' WHERE Code=N'TB-10'; UPDATE WorkItems SET Code=N'MEP-EQU-11', Name=N'11 MEP _ Equ Thiết bị báo cháy' WHERE Code=N'TB-11'; UPDATE WorkItems SET Code=N'MEP-EQU-12', Name=N'12 MEP _ Equ Đèn (đèn chiếu sáng, đèn năng lượng, đèn exit….)' WHERE Code=N'TB-12'; UPDATE WorkItems SET Code=N'MEP-EQU-13', Name=N'13 MEP _ Equ Thiết bị chữa cháy (Sprinkler, Chữa cháy khí, FM200,…)' WHERE Code=N'TB-13'; UPDATE WorkItems SET Code=N'MEP-EQU-14', Name=N'14 MEP _ Equ Bơm (bơm PCCC, Bơm nước…)' WHERE Code=N'TB-14'; UPDATE WorkItems SET Code=N'MEP-EQU-15', Name=N'15 MEP _ Equ Bồn nước, Thiết bị vệ sinh' WHERE Code=N'TB-15'; UPDATE WorkItems SET Code=N'MEP-EQU-16', Name=N'16 MEP _ Equ Khác' WHERE Code=N'TB-16'; PRINT '=== AFTER (expect TOTAL 71 / OLD-CODES 0 / NEW-CODES 71) ==='; SELECT 'TOTAL' AS T, COUNT(*) AS C FROM WorkItems UNION ALL SELECT 'OLD-CODES', COUNT(*) FROM WorkItems WHERE Code LIKE 'VT-%' OR Code LIKE 'TP-%' OR (Code LIKE 'MEP-0%') OR Code LIKE 'TB-%' UNION ALL SELECT 'NEW-MAT', COUNT(*) FROM WorkItems WHERE Code LIKE 'MAT-%' UNION ALL SELECT 'NEW-SUB', COUNT(*) FROM WorkItems WHERE Code LIKE 'SUB-%' UNION ALL SELECT 'NEW-MEP-SUB', COUNT(*) FROM WorkItems WHERE Code LIKE 'MEP-SUB-%' UNION ALL SELECT 'NEW-MEP-EQU', COUNT(*) FROM WorkItems WHERE Code LIKE 'MEP-EQU-%'; SELECT TOP 5 Code, Name FROM WorkItems WHERE Code LIKE 'MEP-SUB-%' ORDER BY Code; COMMIT TRANSACTION; PRINT 'S59 rename PMH COMMITTED.';