All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 2m51s
User feedback: thêm master data NCC + Project + cập nhật HĐ đang thiếu/ trùng nhau. ## SeedDemoMasterDataAsync — per-code idempotent Trước: skip toàn bộ nếu Suppliers + Projects table đã có row → không add được seed mới khi expand list. Sau: per-Code check — add từng item nếu Code chưa tồn tại, skip nếu có. Cho phép expand seed list theo thời gian mà không clobber data admin đã add manual. ## 15 demo suppliers (5 SupplierType × 3 entities) - NhaCungCap (5): VLXD-ABC, Xi măng Hà Tiên, Thép Hòa Phát, Cadivi Điện, Tiền Phong Cấp thoát nước - NhaThauPhu (4): Thăng Long XD, Cô Công Cơ khí, MEP Hà Nội, Next Stage Nội thất - ToDoi (3): Hoàng Nam (cốp pha), Bắc Ninh (xây trát), Hà Trang (ốp lát) - DonViDichVu (3): Clean Pro, Hồng Phát Vận chuyển, Long An Bảo vệ - ChuDauTu (3): Vingroup, Sun Group, Masterise Homes Đầy đủ TaxCode + Phone + Email + ContactPerson + Address. ## 8 demo projects (đa dạng quy mô + giai đoạn) - FLOCK01 (sẵn) + SKYGARDEN (sẵn) + INDUSTRIAL (sẵn) - VHOMES-OP (Vinhomes Ocean Park 3, 350B) - ECOPARK-VL (Ecopark Văn Lâm, 180B) - BWTOWER (Văn phòng BW Tower 25 tầng, 95B) - WAREHOUSE-LB (Kho vận Long Biên, 32B) - RESORT-PQ (Resort 5* Phú Quốc 250 phòng, 220B) ## Backfill demo HĐ supplier + project Vấn đề trước: 7 demo HĐ tất cả dùng cùng 1 supplier (FirstOrDefault) + cùng 1 project → list nhìn không thực tế. DemoSupplierByType + DemoProjectByType maps mới: | ContractType | Supplier | Project | |---|---|---| | HopDongThauPhu | NTP-XD (thầu phụ) | FLOCK01 | | HopDongGiaoKhoan | TD-NEHOANG (tổ đội) | FLOCK01 | | HopDongNhaCungCap | NCC-XIMANG | VHOMES-OP | | HopDongDichVu | DV-VANCHUYEN | RESORT-PQ | | HopDongMuaBan | NCC-DIEN | BWTOWER | | HopDongNguyenTacNCC | NCC-THEP | ECOPARK-VL | | HopDongNguyenTacDichVu | DV-CLEAN | WAREHOUSE-LB | SeedDemoContractsAsync 2 path: 1. Lần đầu (no [DEMO] HĐ): tạo mới với supplier+project diverse per type 2. Đã có [DEMO] HĐ: gọi BackfillDemoContractsSupplierProjectAsync — loop từng demo HĐ, update supplier_id + project_id nếu mismatch với map (idempotent, log count updated) Match đúng business: HĐ thầu phụ → NTP, HĐ NCC → NCC supplier, HĐ DV → DV supplier, HĐ chủ đầu tư (BypassCCM) → CDT supplier (admin tự gán). ## Build dotnet build BE pass (0 error) ## Note deploy Lần CI/CD deploy `e8XXXXX` lên prod sẽ: - Add 10 supplier mới + 5 project mới (existing 5+3 giữ nguyên) - Backfill 7 demo HĐ → switch sang đúng supplier + project per type - Log: "Seeded 10 demo suppliers", "Seeded 5 demo projects", "Backfill [DEMO] contracts supplier+project: 6 updated." (6 vì FLOCK01 vẫn dùng cho ThauPhu/GiaoKhoan unchanged) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>