From 8097892d20b2865fa0bd9a1c71c28a8fa6252e3e Mon Sep 17 00:00:00 2001 From: pqhuy1987 Date: Tue, 28 Apr 2026 10:51:56 +0700 Subject: [PATCH] [CLAUDE] Infra: them 14 demo users Solutions company (PRO 5 + CCM 7 + ISO 1 + CEO 1) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit User cung cap danh sach nhan vien thuc te. Add vao SeedDemoUsersAsync, idempotent (FindByEmail trong reconcile pattern). Pass = User@123456 (matching demo pattern, policy 12 char + digit + lower + upper + special). PRO (5): - tra.bui — Bui Le Thuy Tra — TP Cung ung (Procurement+DeptManager) - phuong.nguyen — Nguyen Thi Bich Phuong (Procurement+Drafter) - thanh.lethanh — Le Thanh Binh (Procurement+Drafter) - long.chau — Chau Ta Kim Long (Procurement+Drafter) - duy.nguyen — Nguyen Van Duy (Procurement+Drafter) CCM (7): - chuong.phan — Phan Van Chuong — TP Kiem soat Chi phi (CostControl+DeptManager) - binh.le — Le Van Binh (CostControl) - luu.tran — Tran Xuan Luu (CostControl) - nguyen.ho — Ho Thi Nu Nguyen (CostControl) - anh.nguyen — Nguyen Thi Kim Anh (CostControl) - tring.le — Le Tu Dang Trinh (CostControl) — giu literal user provided - truong.le — Le Tran Dang Truong (CostControl) ISO (1): - long.nguyen — Nguyen Hoang Chanh Long — Dep HRA, role HrAdmin (dong dau HD) CEO (1): - truong.nguyen — Nguyen Van Truong — Dep BOD, role Director (ASCII fix tu 'truong.nguyen' co dau) Email typo fix: - 'phuong.nguyen@soluttions.com' → 'phuong.nguyen@solutions.com.vn' - 'truong.nguyen' co dau → 'truong.nguyen' ASCII (KHONG conflict voi truong.le CCM) Reconcile pattern dam bao: neu user da exist (email collision), update dept/position/role thay vi error. Pass khong overwrite cho existing user. --- .../Persistence/DbInitializer.cs | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/src/Backend/SolutionErp.Infrastructure/Persistence/DbInitializer.cs b/src/Backend/SolutionErp.Infrastructure/Persistence/DbInitializer.cs index db37474..8098d48 100644 --- a/src/Backend/SolutionErp.Infrastructure/Persistence/DbInitializer.cs +++ b/src/Backend/SolutionErp.Infrastructure/Persistence/DbInitializer.cs @@ -1156,6 +1156,29 @@ public static class DbInitializer ("nv.cao@solutions.com.vn", "Cao Văn Long", "PRO", "Nhân viên Cung ứng", new[] { AppRoles.Drafter }), ("nv.dinh@solutions.com.vn", "Đinh Thị Yến", "FIN", "Nhân viên Tài chính", new[] { AppRoles.Drafter }), ("nv.truong@solutions.com.vn", "Trương Minh Quân", "CCM", "Nhân viên Kiểm soát chi phí", new[] { AppRoles.Drafter }), + + // ===== Solutions company users (real names — added 2026-04-25) ===== + // PRO — Phòng Cung ứng (5 user) + ("tra.bui@solutions.com.vn", "Bùi Lê Thủy Trà", "PRO", "TP Cung ứng", new[] { AppRoles.Procurement, AppRoles.DeptManager }), + ("phuong.nguyen@solutions.com.vn", "Nguyễn Thị Bích Phượng", "PRO", "Nhân viên Cung ứng", new[] { AppRoles.Procurement, AppRoles.Drafter }), + ("thanh.lethanh@solutions.com.vn", "Lê Thanh Bình", "PRO", "Nhân viên Cung ứng", new[] { AppRoles.Procurement, AppRoles.Drafter }), + ("long.chau@solutions.com.vn", "Châu Tạ Kim Long", "PRO", "Nhân viên Cung ứng", new[] { AppRoles.Procurement, AppRoles.Drafter }), + ("duy.nguyen@solutions.com.vn", "Nguyễn Văn Duy", "PRO", "Nhân viên Cung ứng", new[] { AppRoles.Procurement, AppRoles.Drafter }), + + // CCM — Phòng Kiểm soát Chi phí (7 user) + ("chuong.phan@solutions.com.vn", "Phan Văn Chương", "CCM", "TP Kiểm soát Chi phí", new[] { AppRoles.CostControl, AppRoles.DeptManager }), + ("binh.le@solutions.com.vn", "Lê Văn Bình", "CCM", "Nhân viên Kiểm soát Chi phí", new[] { AppRoles.CostControl }), + ("luu.tran@solutions.com.vn", "Trần Xuân Lưu", "CCM", "Nhân viên Kiểm soát Chi phí", new[] { AppRoles.CostControl }), + ("nguyen.ho@solutions.com.vn", "Hồ Thị Nữ Nguyên", "CCM", "Nhân viên Kiểm soát Chi phí", new[] { AppRoles.CostControl }), + ("anh.nguyen@solutions.com.vn", "Nguyễn Thị Kim Ánh", "CCM", "Nhân viên Kiểm soát Chi phí", new[] { AppRoles.CostControl }), + ("tring.le@solutions.com.vn", "Lê Tự Đăng Trình", "CCM", "Nhân viên Kiểm soát Chi phí", new[] { AppRoles.CostControl }), + ("truong.le@solutions.com.vn", "Lê Trần Đăng Trường", "CCM", "Nhân viên Kiểm soát Chi phí", new[] { AppRoles.CostControl }), + + // ISO — đóng dấu HĐ (1 user, dept HRA) + ("long.nguyen@solutions.com.vn", "Nguyễn Hoàng Chánh Long", "HRA", "ISO — Đóng dấu HĐ", new[] { AppRoles.HrAdmin }), + + // CEO — Tổng Giám đốc (1 user, dept BOD) + ("truong.nguyen@solutions.com.vn", "Nguyễn Văn Trường", "BOD", "Tổng Giám đốc (CEO)", new[] { AppRoles.Director }), }; int created = 0, fixedExisting = 0, failed = 0;