[CLAUDE] PurchaseEvaluation: Mig 56 ngan sach MA TRAN 3 cot (Du an|PRO|CCM) + badge quyen NS theo role
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 4m57s
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 4m57s
S76 (anh Kiet FDC + chi Tra Sol) — form ngan sach + hien thi quyen nhap NS trong flow: - Part 1: form ngan sach -> MA TRAN 3 cot, moi phong nhap+dieu chinh cot minh (PRO canEditPro / CCM canEditCcm / Du an FE hien-thi-only). Mig 56 +ProInitialAmount/ProAdjustmentAmount (additive-nullable + data-migrate ProEstimate->ProInitial). full moi cot = ban hanh + hieu chinh. - Part 2: Workflow Designer (fe-admin) +badge "NS PRO/CCM" canh approver (suy tu role Admin|Procurement / Admin|CostControl, hien-thi-only no-authz). - Part 3: flow quy trinh fe-user/fe-admin (Duyet NCC) +badge tuong tu. - Fix race mat-du-lieu Part 1 (useIsFetching khoa Luu khi refetch — dong cua-so stale-echo, reviewer Part2/3 bat). - Test 339->344 (+5). 2 workflow review (Part 1 PASS + Part 2/3 PASS). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@ -240,8 +240,22 @@ export function PeWorkflowPanel({
|
||||
{lv.status === 'Current' && <span className="ml-1.5 text-[10px] font-normal text-brand-700">đang chờ</span>}
|
||||
{lv.status === 'Done' && <span className="ml-1.5 text-[10px] font-normal text-emerald-600">đã duyệt</span>}
|
||||
</div>
|
||||
<div className="text-slate-500">
|
||||
{lv.approvers.map(a => a.fullName).join(' / ') || '(chưa cấu hình)'}
|
||||
<div className="flex flex-wrap items-center gap-x-1 gap-y-0.5 text-slate-500">
|
||||
{lv.approvers.length === 0
|
||||
? '(chưa cấu hình)'
|
||||
: lv.approvers.map((a, i) => (
|
||||
<span key={a.userId} className="inline-flex items-center gap-1">
|
||||
{i > 0 && <span className="text-slate-300">/</span>}
|
||||
<span>{a.fullName}</span>
|
||||
{/* [S76] Badge quyền nhập/điều chỉnh ngân sách (hiển thị-only, suy từ role) */}
|
||||
{a.canEditProBudget && (
|
||||
<span className="rounded bg-amber-100 px-1 py-0.5 text-[8px] font-semibold text-amber-700" title="Được nhập/điều chỉnh ngân sách cột PRO">✎ NS PRO</span>
|
||||
)}
|
||||
{a.canEditCcmBudget && (
|
||||
<span className="rounded bg-sky-100 px-1 py-0.5 text-[8px] font-semibold text-sky-700" title="Được nhập/điều chỉnh ngân sách cột CCM">✎ NS CCM</span>
|
||||
)}
|
||||
</span>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user