详情页项目汇总:发起人显示姓名(assessorName)而非用户ID
This commit is contained in:
@@ -215,6 +215,7 @@ export function AssessmentDetail(): JSX.Element {
|
|||||||
const [status, setStatus] = useState<WorkflowStatus>('pending_risk_review');
|
const [status, setStatus] = useState<WorkflowStatus>('pending_risk_review');
|
||||||
const [auditLog, setAuditLog] = useState<AuditLogEntry[]>([]);
|
const [auditLog, setAuditLog] = useState<AuditLogEntry[]>([]);
|
||||||
const [assignment, setAssignment] = useState<{ riskReviewerName: string | null; managerName: string | null } | null>(null);
|
const [assignment, setAssignment] = useState<{ riskReviewerName: string | null; managerName: string | null } | null>(null);
|
||||||
|
const [assessorName, setAssessorName] = useState<string | null>(null);
|
||||||
const [actionLoading, setActionLoading] = useState(false);
|
const [actionLoading, setActionLoading] = useState(false);
|
||||||
const [reloadKey, setReloadKey] = useState(0);
|
const [reloadKey, setReloadKey] = useState(0);
|
||||||
const [comment, setComment] = useState('');
|
const [comment, setComment] = useState('');
|
||||||
@@ -250,6 +251,7 @@ export function AssessmentDetail(): JSX.Element {
|
|||||||
setStatus(data.status);
|
setStatus(data.status);
|
||||||
setAuditLog(data.auditLog);
|
setAuditLog(data.auditLog);
|
||||||
setAssignment(data.assignment ?? null);
|
setAssignment(data.assignment ?? null);
|
||||||
|
setAssessorName(data.assessorName ?? null);
|
||||||
setProfitability(data.profitability ?? null);
|
setProfitability(data.profitability ?? null);
|
||||||
setProfitabilityInputs(data.profitabilityInputs ?? null);
|
setProfitabilityInputs(data.profitabilityInputs ?? null);
|
||||||
setExpiresAt(data.expiresAt ?? null);
|
setExpiresAt(data.expiresAt ?? null);
|
||||||
@@ -660,6 +662,7 @@ export function AssessmentDetail(): JSX.Element {
|
|||||||
recommendation={recommendation}
|
recommendation={recommendation}
|
||||||
operatingControls={operatingControls}
|
operatingControls={operatingControls}
|
||||||
expiresAt={expiresAt}
|
expiresAt={expiresAt}
|
||||||
|
assessorName={assessorName}
|
||||||
targetPct={targetPct}
|
targetPct={targetPct}
|
||||||
onTargetPct={setTargetPct}
|
onTargetPct={setTargetPct}
|
||||||
onRegenerate={handleRegenerate}
|
onRegenerate={handleRegenerate}
|
||||||
@@ -1360,6 +1363,7 @@ function AssessmentSections({
|
|||||||
recommendation,
|
recommendation,
|
||||||
operatingControls,
|
operatingControls,
|
||||||
expiresAt,
|
expiresAt,
|
||||||
|
assessorName,
|
||||||
targetPct,
|
targetPct,
|
||||||
onTargetPct,
|
onTargetPct,
|
||||||
onRegenerate,
|
onRegenerate,
|
||||||
@@ -1371,6 +1375,7 @@ function AssessmentSections({
|
|||||||
readonly recommendation: Recommendation | null;
|
readonly recommendation: Recommendation | null;
|
||||||
readonly operatingControls: OperatingControls | null;
|
readonly operatingControls: OperatingControls | null;
|
||||||
readonly expiresAt: string | null;
|
readonly expiresAt: string | null;
|
||||||
|
readonly assessorName: string | null;
|
||||||
readonly targetPct: string;
|
readonly targetPct: string;
|
||||||
readonly onTargetPct: (v: string) => void;
|
readonly onTargetPct: (v: string) => void;
|
||||||
readonly onRegenerate: () => void;
|
readonly onRegenerate: () => void;
|
||||||
@@ -1495,7 +1500,7 @@ function AssessmentSections({
|
|||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<MetaRow label="适用地域" value={meta.region} />
|
<MetaRow label="适用地域" value={meta.region} />
|
||||||
<MetaRow label="发起人" value={meta.assessorId} />
|
<MetaRow label="发起人" value={assessorName ?? meta.assessorId} />
|
||||||
<MetaRow
|
<MetaRow
|
||||||
label="创建时间"
|
label="创建时间"
|
||||||
value={meta.createdAt === '' ? '—' : new Date(meta.createdAt).toLocaleString('zh-CN')}
|
value={meta.createdAt === '' ? '—' : new Date(meta.createdAt).toLocaleString('zh-CN')}
|
||||||
|
|||||||
Reference in New Issue
Block a user