2 lines
19 KiB
JavaScript
2 lines
19 KiB
JavaScript
|
|
import{i as xe}from"./index-Bb6yjXMn.js";import{d as Oe,o as Pe,a as Ae,b as g,c as V,e as k,f as l,w as o,V as H,W as Le,X as ie,h,t as b,r as d,U as $e,i as m,a4 as De,g as p,a2 as Ne,n as j,v as se,al as ue}from"./index-CXRNRwY6.js";import{_ as Ee}from"./_plugin-vue_export-helper-DlAUqK2U.js";const qe={class:"knowledge-iteration-page"},Me={class:"knowledge-iteration-page__header"},Ie={class:"knowledge-iteration-page__header-actions"},Re={class:"knowledge-iteration-page__stats-bar"},Je={class:"knowledge-iteration-page__stat-value"},Fe={class:"knowledge-iteration-page__stat-label"},Be={class:"knowledge-iteration-page__filters"},Ge={class:"knowledge-iteration-page__table"},Ke={key:0,class:"knowledge-iteration-page__pagination"},Qe={class:"knowledge-iteration-page__graph-filters"},We={class:"knowledge-iteration-page__graph-info"},Xe={key:0,style:{color:"#67c23a","text-align":"center",padding:"20px"}},He={key:1},Ye=Oe({__name:"KnowledgeIteration",setup(Ze){const Y=d([]),M=d(0),I=d(!1),R=d(!1),J=d(!1),F=d(1),B=d(20),O=d(""),P=d(""),T=d(),U=d(),z=d(!1),x=d(!1),y=d(null),S=d("list"),A=d(!1),L=d(""),$=d(null);let w=null;const Z=d(0),ee=d(0),G=d(!1),D=d(!1),N=d([]),s=se({title:"",content:"",category:"",audience:"",issue:"",action:"",relation_type:"",parent_issue:""}),r=se({title:"",content:"",category:"其他",audience:"engineer_workguide",issue:"",action:"",relation_type:"LEADS_TO"}),re=$e(()=>Math.ceil(M.value/B.value)),le=d([{key:"pending",label:"待审核",value:0},{key:"queued",label:"队列中",value:0},{key:"approved",label:"已通过",value:0},{key:"applied",label:"已应用",value:0},{key:"graph_synced",label:"已同步",value:0}]);async function v(){I.value=!0;try{const a=new URLSearchParams;O.value&&a.set("status",O.value),P.value&&a.set("audience",P.value),T.value!==void 0&&T.value!==null&&a.set("confidence_min",String(T.value/100)),U.value!==void 0&&U.value!==null&&a.set("confidence_max",String(U.value/100)),a.set("page",String(F.value)),a.set("page_size",String(B.value));const i=await(await fetch(`/api/admin/knowledge-iteration/suggestions?${a}`)).json();i.code===0&&i.data&&(Y.value=i.data.items||[],M.value=i.data.total||0)}catch(a){console.error("获取建议列表失败:",a)}finally{I.value=!1}}async function C(){try{const e=await(await fetch("/api/admin/knowledge-iteration/stats")).json();if(e.code===0&&e.data)for(const i of le.value)i.value=e.data[i.key]||0}catch(a){console.error("获取统计失败:",a)}}async function de(){R.value=!0;try{(await(await fetch("/api/admin/knowledge-iteration/analyze",{method:"POST"})).json()).code===0&&await Promise.all([v(),C()])}catch(a){console.error("触发分析失败:",a)}finally{R.value=!1}}function E(a){return a.status==="pending"||a.status==="queued"}async function pe(a){try{(await(await fetch(`/api/admin/knowledge-iteration/suggestions/${a.id}/approve`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({})})).json()).code===0&&await Promise.all([v(),C()])}catch(e){console.error("审批失败:",e)}}async function ce(a){try{(await(await fetch(`/api/admin/knowledge-iteration/suggestions/${a.id}/reject`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({reject_reason:"审核不通过"})})).json()).code===0&&await Promise.all([v(),C()])}catch(e){console.error("驳回失败:",e)}}function fe(a){y.value=a,s.title=a.title,s.content=a.content,s.category=a.category,s.audience=a.audience||"",s.issue=a.issue||"",s.action=a.action||"",s.relation_type=a.relation_type||"",s.parent_issue=a.parent_issue||"",z.value=!0}async function ge(){if(y.value)try{(await(await fetch(`/api/admin/knowledge-iteration/suggestions/${y.value.id}/rewrite`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:s.title||void 0,content:s.content||void 0,category:s.category||void 0,audience:s.audience||void 0,issue:s.issue||void 0,action:s.action||void 0,relation_type:s.relation_type||void 0,parent_issue:s.parent_issue||void 0})})).json()).code===0&&(z.value=!1,await Promise.all([v(),C()]))}catch(a){console.error("改写
|