ROADMAP Q1 推进(前端类型安全治理 in_progress): - src/api/ 整个目录 any 清零(含 monitor/ deploy/ 子目录 12+ 文件) create/update 入参 any -> Record<string, unknown> / object mock 桩 trace/grafana 对接 types/ 标准类型(Trace/GrafanaDashboard) 典型接口 LdapFormData/ProbeForm 等强类型表单用 object 接收 - types/monitor.ts 扩展 ~150 行接口: ZabbixDatasource / AlertSilence / 7 个输入 DTO Trace / TraceSpan / TraceServiceMetrics / GrafanaDashboard / DashboardPanel HealthProbeInput 验证: - 整个 src/api/ 目录 any=0 - ESLint no-explicit-any: 995 -> 937 (本项目此轮贡献 -58) - tsc -b 零错误, npm run build ✓ (17.06s) - API 回归 8/8 核心端点通过, Docker 部署 healthy
2 lines
22 KiB
JavaScript
2 lines
22 KiB
JavaScript
import{r as c,j as e,B as x,L as H,X as I,O as B,P as de,D as M,a as W,b as Y,c as Z,d as ee,C as xe,Q as ne,t as l,U as he,o as ie}from"./index-o4rKtKfJ.js";import{C as ve,a as me}from"./card-6Ae5ROGi.js";import{I as q}from"./input-BfBi0wR2.js";import{B as z}from"./badge-CDGsL4jH.js";import{L as ye}from"./label-DrX9VaVC.js";import{T as ue,a as Ce,b as J,c as N,d as je,e as f}from"./table-FZ6-yFwR.js";import{S as U,a as X,b as K,c as Q,d as w}from"./select-DuV0kIrj.js";import{b as h}from"./approval-CXJJf5q6.js";import{P as Pe}from"./plus-BXcAPnTg.js";import{S as Ae}from"./search-C_UCkHB_.js";import{R as be}from"./refresh-cw-eQ6GkWW0.js";import{F as Ne}from"./file-text-KcpAjpkr.js";import{C as fe}from"./circle-x-DCq7zPbk.js";import{P as we}from"./play-BOUTOTLk.js";const ae=t=>{switch(t){case"approved":return e.jsxs(z,{"code-path":"src/pages/ApprovalCategoryPage.tsx:43:29",className:"bg-emerald-500/20 text-emerald-400 border-emerald-500/30",children:[e.jsx(ne,{"code-path":"src/pages/ApprovalCategoryPage.tsx:43:105",className:"h-3 w-3 mr-1"}),"已通过"]});case"rejected":return e.jsxs(z,{"code-path":"src/pages/ApprovalCategoryPage.tsx:44:29",className:"bg-red-500/20 text-red-400 border-red-500/30",children:[e.jsx(fe,{"code-path":"src/pages/ApprovalCategoryPage.tsx:44:93",className:"h-3 w-3 mr-1"}),"已拒绝"]});default:return e.jsxs(z,{"code-path":"src/pages/ApprovalCategoryPage.tsx:45:21",className:"bg-amber-500/20 text-amber-400 border-amber-500/30",children:[e.jsx(xe,{"code-path":"src/pages/ApprovalCategoryPage.tsx:45:91",className:"h-3 w-3 mr-1"}),"审批中"]})}};function G(t){try{return JSON.parse(t)||{}}catch{return{}}}function se(t){const p=t?.applicant_user;return p?p.real_name||p.username||`#${t.applicant}`:t?.applicant?`#${t.applicant}`:"--"}function ke(t){if(t.status!=="pending")return"--";const p=t.steps||[];if(p.length===0)return"管理员(待分配)";const d=p.find(g=>g.step===t.current_step&&g.status==="pending");return d?d.approver_user?d.approver_user.real_name||d.approver_user.username||`#${d.approver}`:"管理员":"管理员(待分配)"}function qe({category:t,title:p,description:d,fields:g,templateCode:C}){const[y,j]=c.useState([]),[k,_]=c.useState(!0),[P,S]=c.useState(""),[i,D]=c.useState(""),[s,o]=c.useState(!1),[n,A]=c.useState(!1),[$,F]=c.useState(null),[v,b]=c.useState({}),[te,L]=c.useState(null),[E,T]=c.useState(!1),m=c.useCallback(async()=>{_(!0);try{const a={page_size:"100"};t&&(a.category=t),i&&(a.status=i);const r=await h.getProcesses(a);j(r?.list??r?.data?.list??[])}catch{j([])}finally{_(!1)}},[t,i]),O=c.useCallback(async()=>{try{const a=await h.getTemplates({type:C}),r=a?.list??a?.data?.list??[];r.length>0&&F(r[0].id)}catch{}},[C]);c.useEffect(()=>{m()},[m]),c.useEffect(()=>{O()},[O]);const re=async()=>{if(!$){l.error("模板未加载");return}for(const a of g)if(a.required&&!v[a.key]){l.error(`请填写「${a.label}」`);return}A(!0);try{const a=v[g[0]?.key]||"",r=g[1]&&v[g[1].key]||"";await h.createProcess({template_id:$,title:`${p} - ${a}${r?" / "+r:""}`,form_data:JSON.stringify(v)}),l.success("申请已提交"),o(!1),b({}),m()}catch(a){l.error(a?.message||"提交失败")}finally{A(!1)}},R=()=>{const a={};g.forEach(r=>{a[r.key]=r.defaultValue?.toString()||""}),b(a),o(!0)},pe=async a=>{T(!0);try{await h.approveProcess(a),l.success("已通过"),m()}catch(r){l.error(r?.response?.data?.message||"审批失败")}finally{T(!1)}},ce=async a=>{T(!0);try{await h.rejectProcess(a,"审批拒绝"),l.success("已拒绝"),m()}catch(r){l.error(r?.response?.data?.message||"操作失败")}finally{T(!1)}},oe=async a=>{try{const r=await h.getProcesses({page_size:200}),ge=(r?.list??r?.data?.list??[]).find(le=>le.id===a.id);L(ge||a)}catch{L(a)}},V=y.filter(a=>!P||(a.title||"").toLowerCase().includes(P.toLowerCase()));return e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:154:5",className:"space-y-5",children:[e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:155:7",className:"flex items-center justify-between",children:[e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:156:9",children:[e.jsx("h1",{"code-path":"src/pages/ApprovalCategoryPage.tsx:157:11",className:"text-2xl font-bold text-[var(--dg-text-primary)]",children:p}),e.jsx("p",{"code-path":"src/pages/ApprovalCategoryPage.tsx:158:11",className:"text-sm text-[var(--dg-text-secondary)] mt-1",children:d})]}),e.jsxs(x,{"code-path":"src/pages/ApprovalCategoryPage.tsx:160:9",onClick:R,className:"bg-[var(--dg-blue)] hover:bg-[var(--dg-blue)]/90",children:[e.jsx(Pe,{"code-path":"src/pages/ApprovalCategoryPage.tsx:161:11",className:"h-4 w-4 mr-2"}),"新建申请"]})]}),e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:165:7",className:"flex items-center gap-3 flex-wrap",children:[e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:166:9",className:"relative w-64",children:[e.jsx(Ae,{"code-path":"src/pages/ApprovalCategoryPage.tsx:167:11",className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-[var(--dg-text-muted)]"}),e.jsx(q,{"code-path":"src/pages/ApprovalCategoryPage.tsx:168:11",placeholder:"搜索申请...",value:P,onChange:a=>S(a.target.value),className:"pl-9 h-9 bg-[var(--dg-bg-tertiary)] border-[var(--dg-border)]"})]}),e.jsxs(U,{"code-path":"src/pages/ApprovalCategoryPage.tsx:171:9",value:i,onValueChange:D,children:[e.jsx(X,{"code-path":"src/pages/ApprovalCategoryPage.tsx:172:11",className:"w-32 h-9 bg-[var(--dg-bg-tertiary)] border-[var(--dg-border)]",children:e.jsx(K,{"code-path":"src/pages/ApprovalCategoryPage.tsx:173:13",placeholder:"全部状态"})}),e.jsxs(Q,{"code-path":"src/pages/ApprovalCategoryPage.tsx:175:11",children:[e.jsx(w,{"code-path":"src/pages/ApprovalCategoryPage.tsx:176:13",value:"all",children:"全部状态"}),e.jsx(w,{"code-path":"src/pages/ApprovalCategoryPage.tsx:177:13",value:"pending",children:"审批中"}),e.jsx(w,{"code-path":"src/pages/ApprovalCategoryPage.tsx:178:13",value:"approved",children:"已通过"}),e.jsx(w,{"code-path":"src/pages/ApprovalCategoryPage.tsx:179:13",value:"rejected",children:"已拒绝"})]})]}),e.jsxs(x,{"code-path":"src/pages/ApprovalCategoryPage.tsx:182:9",variant:"outline",size:"sm",className:"border-[var(--dg-border)]",onClick:m,children:[e.jsx(be,{"code-path":"src/pages/ApprovalCategoryPage.tsx:183:11",className:"h-4 w-4 mr-2"}),"刷新"]})]}),e.jsx(ve,{"code-path":"src/pages/ApprovalCategoryPage.tsx:187:7",className:"bg-[var(--dg-bg-secondary)] border-[var(--dg-border)]",children:e.jsx(me,{"code-path":"src/pages/ApprovalCategoryPage.tsx:188:9",className:"p-0",children:k?e.jsx("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:190:13",className:"flex items-center justify-center py-16",children:e.jsx(H,{"code-path":"src/pages/ApprovalCategoryPage.tsx:190:69",className:"h-6 w-6 animate-spin text-[var(--dg-blue)]"})}):V.length===0?e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:192:13",className:"flex flex-col items-center justify-center py-16 text-[var(--dg-text-muted)]",children:[e.jsx(Ne,{"code-path":"src/pages/ApprovalCategoryPage.tsx:193:15",className:"h-10 w-10 mb-3 opacity-30"}),e.jsx("p",{"code-path":"src/pages/ApprovalCategoryPage.tsx:194:15",className:"text-sm",children:"暂无申请记录"}),e.jsx(x,{"code-path":"src/pages/ApprovalCategoryPage.tsx:195:15",variant:"link",className:"mt-2",onClick:R,children:"立即申请"})]}):e.jsxs(ue,{"code-path":"src/pages/ApprovalCategoryPage.tsx:198:13",children:[e.jsx(Ce,{"code-path":"src/pages/ApprovalCategoryPage.tsx:199:15",children:e.jsxs(J,{"code-path":"src/pages/ApprovalCategoryPage.tsx:200:17",className:"border-[var(--dg-border)] hover:bg-transparent",children:[e.jsx(N,{"code-path":"src/pages/ApprovalCategoryPage.tsx:201:19",className:"text-[var(--dg-text-secondary)]",children:"提交时间"}),e.jsx(N,{"code-path":"src/pages/ApprovalCategoryPage.tsx:202:19",className:"text-[var(--dg-text-secondary)]",children:"提交账号"}),e.jsx(N,{"code-path":"src/pages/ApprovalCategoryPage.tsx:203:19",className:"text-[var(--dg-text-secondary)]",children:"当前审核人"}),e.jsx(N,{"code-path":"src/pages/ApprovalCategoryPage.tsx:204:19",className:"text-[var(--dg-text-secondary)]",children:"状态"}),e.jsx(N,{"code-path":"src/pages/ApprovalCategoryPage.tsx:205:19",className:"text-[var(--dg-text-secondary)] w-28",children:"操作"})]})}),e.jsx(je,{"code-path":"src/pages/ApprovalCategoryPage.tsx:208:15",children:V.map(a=>e.jsxs(J,{"code-path":"src/pages/ApprovalCategoryPage.tsx:210:19",className:"border-[var(--dg-border)] hover:bg-[var(--dg-bg-hover)]",children:[e.jsx(f,{"code-path":"src/pages/ApprovalCategoryPage.tsx:211:21",className:"text-[var(--dg-text-muted)] text-sm whitespace-nowrap",children:a.created_at?new Date(a.created_at).toLocaleString("zh-CN"):"--"}),e.jsx(f,{"code-path":"src/pages/ApprovalCategoryPage.tsx:214:21",className:"text-[var(--dg-text-primary)]",children:se(a)}),e.jsx(f,{"code-path":"src/pages/ApprovalCategoryPage.tsx:215:21",className:"text-[var(--dg-text-muted)] text-sm",children:ke(a)}),e.jsx(f,{"code-path":"src/pages/ApprovalCategoryPage.tsx:216:21",children:ae(a.status)}),e.jsx(f,{"code-path":"src/pages/ApprovalCategoryPage.tsx:217:21",children:e.jsx("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:218:23",className:"flex items-center gap-1",children:a.status==="pending"?e.jsxs(e.Fragment,{children:[e.jsxs(x,{"code-path":"src/pages/ApprovalCategoryPage.tsx:221:29",variant:"ghost",size:"sm",className:"h-8 text-red-400 hover:bg-red-500/10",onClick:()=>ce(a.id),disabled:E,children:[e.jsx(I,{"code-path":"src/pages/ApprovalCategoryPage.tsx:222:31",className:"h-3.5 w-3.5 mr-1"}),"拒绝"]}),e.jsxs(x,{"code-path":"src/pages/ApprovalCategoryPage.tsx:224:29",variant:"ghost",size:"sm",className:"h-8 text-emerald-400 hover:bg-emerald-500/10",onClick:()=>pe(a.id),disabled:E,children:[e.jsx(B,{"code-path":"src/pages/ApprovalCategoryPage.tsx:225:31",className:"h-3.5 w-3.5 mr-1"}),"通过"]})]}):e.jsxs(x,{"code-path":"src/pages/ApprovalCategoryPage.tsx:229:27",variant:"ghost",size:"sm",className:"h-8 text-[var(--dg-text-muted)] hover:text-[var(--dg-text-primary)]",onClick:()=>oe(a),children:[e.jsx(de,{"code-path":"src/pages/ApprovalCategoryPage.tsx:230:29",className:"h-3.5 w-3.5 mr-1"}),"详情"]})})})]},a.id))})]})})}),e.jsx(M,{"code-path":"src/pages/ApprovalCategoryPage.tsx:244:7",open:s,onOpenChange:o,children:e.jsxs(W,{"code-path":"src/pages/ApprovalCategoryPage.tsx:245:9",className:"bg-[var(--dg-bg-secondary)] border-[var(--dg-border)] max-w-lg max-h-[85vh] overflow-y-auto",children:[e.jsxs(Y,{"code-path":"src/pages/ApprovalCategoryPage.tsx:246:11",children:[e.jsxs(Z,{"code-path":"src/pages/ApprovalCategoryPage.tsx:247:13",className:"text-[var(--dg-text-primary)]",children:["新建",p]}),e.jsx(ee,{"code-path":"src/pages/ApprovalCategoryPage.tsx:248:13",className:"text-[var(--dg-text-secondary)]",children:d})]}),e.jsx("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:250:11",className:"space-y-4 py-2",children:g.map(a=>e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:252:15",className:"space-y-1.5",children:[e.jsxs(ye,{"code-path":"src/pages/ApprovalCategoryPage.tsx:253:17",className:"text-[var(--dg-text-primary)] text-sm",children:[a.label,a.required&&e.jsx("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:253:106",className:"text-red-400 ml-0.5",children:"*"})]}),a.type==="select"?e.jsxs(U,{"code-path":"src/pages/ApprovalCategoryPage.tsx:255:19",value:v[a.key]||"",onValueChange:r=>b(u=>({...u,[a.key]:r})),children:[e.jsx(X,{"code-path":"src/pages/ApprovalCategoryPage.tsx:256:21",className:"bg-[var(--dg-bg-tertiary)] border-[var(--dg-border)]",children:e.jsx(K,{"code-path":"src/pages/ApprovalCategoryPage.tsx:256:101",placeholder:a.placeholder||`选择${a.label}`})}),e.jsx(Q,{"code-path":"src/pages/ApprovalCategoryPage.tsx:257:21",children:(a.options||[]).map(r=>e.jsx(w,{"code-path":"src/pages/ApprovalCategoryPage.tsx:257:73",value:r,children:r},r))})]}):a.type==="textarea"?e.jsx("textarea",{"code-path":"src/pages/ApprovalCategoryPage.tsx:260:19",value:v[a.key]||"",onChange:r=>b(u=>({...u,[a.key]:r.target.value})),placeholder:a.placeholder,rows:3,className:"w-full rounded-md bg-[var(--dg-bg-tertiary)] border border-[var(--dg-border)] text-[var(--dg-text-primary)] px-3 py-2 text-sm resize-none focus:outline-none focus:border-[var(--dg-blue)]"}):e.jsx(q,{"code-path":"src/pages/ApprovalCategoryPage.tsx:264:19",type:a.type,value:v[a.key]||"",onChange:r=>b(u=>({...u,[a.key]:r.target.value})),placeholder:a.placeholder,className:"bg-[var(--dg-bg-tertiary)] border-[var(--dg-border)]"})]},a.key))}),e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:270:11",className:"flex justify-end gap-3 pt-2",children:[e.jsx(x,{"code-path":"src/pages/ApprovalCategoryPage.tsx:271:13",variant:"outline",className:"border-[var(--dg-border)]",onClick:()=>o(!1),children:"取消"}),e.jsx(x,{"code-path":"src/pages/ApprovalCategoryPage.tsx:272:13",onClick:re,disabled:n,className:"bg-[var(--dg-blue)] hover:bg-[var(--dg-blue)]/90",children:n?e.jsxs(e.Fragment,{children:[e.jsx(H,{"code-path":"src/pages/ApprovalCategoryPage.tsx:273:31",className:"h-4 w-4 mr-2 animate-spin"}),"提交中..."]}):"提交申请"})]})]})}),e.jsx(_e,{"code-path":"src/pages/ApprovalCategoryPage.tsx:280:7",item:te,onClose:()=>L(null),fields:g,onStatusChange:m})]})}function _e({item:t,onClose:p,fields:d,onStatusChange:g}){const[C,y]=c.useState(!1);if(!t)return null;const j=s=>s?new Date(s).toLocaleString("zh-CN"):"",k=t.steps||[],_=async()=>{y(!0);try{await h.approveProcess(t.id),l.success("已通过"),g(),p()}catch(s){l.error(s?.response?.data?.message||"审批失败")}finally{y(!1)}},P=async()=>{y(!0);try{await h.rejectProcess(t.id,"审批拒绝"),l.success("已拒绝"),g(),p()}catch(s){l.error(s?.response?.data?.message||"操作失败")}finally{y(!1)}},S=s=>s.status==="approved"?"通过":s.status==="rejected"?"拒绝":s.status==="pending"&&s.step===t.current_step?"待审批":s.status==="pending"?"待开始":s.status,i=s=>s.status==="approved"?"text-emerald-400":s.status==="rejected"?"text-red-400":s.step===t.current_step?"text-blue-400":"text-[var(--dg-text-muted)]",D=s=>s.approver_user?s.approver_user.real_name||s.approver_user.username||`#${s.approver}`:"管理员";return e.jsx(M,{"code-path":"src/pages/ApprovalCategoryPage.tsx:337:5",open:!!t,onOpenChange:s=>{s||p()},children:e.jsxs(W,{"code-path":"src/pages/ApprovalCategoryPage.tsx:338:7",className:"bg-[var(--dg-bg-secondary)] border-[var(--dg-border)] max-w-lg max-h-[85vh] overflow-y-auto",children:[e.jsxs(Y,{"code-path":"src/pages/ApprovalCategoryPage.tsx:339:9",children:[e.jsx(Z,{"code-path":"src/pages/ApprovalCategoryPage.tsx:340:11",className:"text-[var(--dg-text-primary)]",children:"申请详情"}),e.jsx(ee,{"code-path":"src/pages/ApprovalCategoryPage.tsx:341:11",className:"text-[var(--dg-text-secondary)]",children:t.title})]}),e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:344:9",className:"space-y-4 py-2",children:[e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:346:11",className:"flex items-center gap-3",children:[e.jsx("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:347:13",className:"text-sm text-[var(--dg-text-muted)]",children:"状态:"}),ae(t.status),t.status==="pending"&&e.jsxs("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:350:15",className:"text-xs text-[var(--dg-text-muted)]",children:["第 ",t.current_step,"/",t.total_steps," 步"]})]}),e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:357:11",className:"border-t border-[var(--dg-border)] pt-4",children:[e.jsx("h4",{"code-path":"src/pages/ApprovalCategoryPage.tsx:358:13",className:"text-sm font-medium text-[var(--dg-text-primary)] mb-4",children:"操作时间线"}),e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:359:13",className:"space-y-0",children:[e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:361:15",className:"flex gap-3",children:[e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:362:17",className:"flex flex-col items-center",children:[e.jsx("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:363:19",className:"w-7 h-7 rounded-full bg-blue-500/20 flex items-center justify-center",children:e.jsx(he,{"code-path":"src/pages/ApprovalCategoryPage.tsx:363:105",className:"w-3.5 h-3.5 text-blue-400"})}),e.jsx("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:364:19",className:"w-0.5 flex-1 bg-[var(--dg-border)] my-1"})]}),e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:366:17",className:"flex-1 pb-4",children:[e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:367:19",className:"flex items-center gap-2",children:[e.jsx("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:368:21",className:"text-sm font-medium text-[var(--dg-text-primary)]",children:"提交申请"}),e.jsx("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:369:21",className:"text-xs text-[var(--dg-text-muted)]",children:"·"}),e.jsx("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:370:21",className:"text-xs text-[var(--dg-text-secondary)]",children:se(t)}),e.jsx("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:371:21",className:"text-xs text-[var(--dg-text-muted)]",children:"·"}),e.jsx("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:372:21",className:"text-xs text-[var(--dg-text-muted)]",children:j(t.created_at)})]}),e.jsx("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:375:19",className:"mt-1 flex flex-wrap gap-2",children:(()=>{const s=G(t.form_data||"{}");return d.slice(0,4).map(o=>{const n=s[o.key];return n?e.jsxs("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:382:27",className:"text-[11px] px-1.5 py-0.5 rounded bg-[var(--dg-bg-tertiary)] text-[var(--dg-text-muted)]",children:[o.label,": ",e.jsx("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:383:40",className:"text-[var(--dg-text-secondary)]",children:n})]},o.key):null})})()})]})]}),k.map((s,o)=>{const n=o===k.length-1,A=s.step_type==="execute",$=A?"执行":"审核",F=s.status==="approved"?"bg-emerald-500/20":s.status==="rejected"?"bg-red-500/20":"bg-[var(--dg-bg-tertiary)]";return e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:401:19",className:"flex gap-3",children:[e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:402:21",className:"flex flex-col items-center",children:[e.jsx("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:403:23",className:`w-7 h-7 rounded-full flex items-center justify-center ${F}`,children:s.status==="approved"?e.jsx(B,{"code-path":"src/pages/ApprovalCategoryPage.tsx:404:52",className:"w-3.5 h-3.5 text-emerald-400"}):s.status==="rejected"?e.jsx(I,{"code-path":"src/pages/ApprovalCategoryPage.tsx:405:55",className:"w-3.5 h-3.5 text-red-400"}):A?e.jsx(we,{"code-path":"src/pages/ApprovalCategoryPage.tsx:407:33",className:`w-3.5 h-3.5 ${s.step===t.current_step?"text-green-400":"text-[var(--dg-text-muted)]"}`}):e.jsx(ie,{"code-path":"src/pages/ApprovalCategoryPage.tsx:408:33",className:`w-3.5 h-3.5 ${s.step===t.current_step?"text-blue-400":"text-[var(--dg-text-muted)]"}`})}),!n&&e.jsx("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:410:35",className:"w-0.5 flex-1 bg-[var(--dg-border)] my-1"})]}),e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:412:21",className:`flex-1 ${n?"":"pb-4"}`,children:[e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:413:23",className:"flex items-center gap-2 flex-wrap",children:[e.jsx("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:414:25",className:"text-sm font-medium text-[var(--dg-text-primary)]",children:$}),s.approver_user&&e.jsxs(e.Fragment,{children:[e.jsx("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:417:29",className:"text-xs text-[var(--dg-text-muted)]",children:"·"}),e.jsxs("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:418:29",className:"text-xs text-[var(--dg-text-secondary)]",children:["指派人: ",D(s)]})]}),s.approved_at&&e.jsxs(e.Fragment,{children:[e.jsx("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:423:29",className:"text-xs text-[var(--dg-text-muted)]",children:"·"}),e.jsxs("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:424:29",className:`text-xs ${i(s)}`,children:[D(s)," · ",S(s)," · ",j(s.approved_at)]})]}),!s.approved_at&&e.jsxs(e.Fragment,{children:[e.jsx("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:431:29",className:"text-xs text-[var(--dg-text-muted)]",children:"·"}),e.jsx("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:432:29",className:`text-xs ${i(s)}`,children:S(s)})]})]}),s.comment&&s.comment!==s.status&&s.comment!=="pending"&&e.jsx("p",{"code-path":"src/pages/ApprovalCategoryPage.tsx:437:25",className:"text-xs text-[var(--dg-text-muted)] mt-1 ml-0",children:s.comment})]})]},s.id)})]})]}),e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:447:11",className:"border-t border-[var(--dg-border)] pt-4",children:[e.jsx("h4",{"code-path":"src/pages/ApprovalCategoryPage.tsx:448:13",className:"text-sm font-medium text-[var(--dg-text-primary)] mb-2",children:"申请内容"}),e.jsx("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:449:13",className:"space-y-2",children:(()=>{const s=G(t.form_data||"{}");return d.map(o=>{const n=s[o.key];return e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:455:21",className:"grid grid-cols-3 gap-2 text-sm",children:[e.jsxs("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:456:23",className:"text-[var(--dg-text-muted)]",children:[o.label,":"]}),e.jsx("span",{"code-path":"src/pages/ApprovalCategoryPage.tsx:457:23",className:"text-[var(--dg-text-primary)] col-span-2",children:n??"--"})]},o.key)})})()})]})]}),e.jsxs("div",{"code-path":"src/pages/ApprovalCategoryPage.tsx:466:9",className:"flex justify-end gap-3 pt-2",children:[t.status==="pending"&&e.jsxs(e.Fragment,{children:[e.jsxs(x,{"code-path":"src/pages/ApprovalCategoryPage.tsx:469:15",variant:"outline",className:"border-red-500/30 text-red-400 hover:bg-red-500/10",onClick:P,disabled:C,children:[e.jsx(I,{"code-path":"src/pages/ApprovalCategoryPage.tsx:470:17",className:"h-4 w-4 mr-1.5"}),"拒绝"]}),e.jsxs(x,{"code-path":"src/pages/ApprovalCategoryPage.tsx:472:15",className:"bg-emerald-600 hover:bg-emerald-700",onClick:_,disabled:C,children:[e.jsx(B,{"code-path":"src/pages/ApprovalCategoryPage.tsx:473:17",className:"h-4 w-4 mr-1.5"}),"通过"]})]}),e.jsx(x,{"code-path":"src/pages/ApprovalCategoryPage.tsx:477:11",variant:"outline",className:"border-[var(--dg-border)]",onClick:p,children:"关闭"})]})]})})}export{qe as A};
|