1 |
- import{k as se,S as re,n as ie,p as ce,q as ue,t as de,w as fe,x as S,y as me,E as _e}from"./index.DsdVBPWY.js";import{a as E,aH as pe,r as f,q as ve,Z as ge,aj as r,J as F,o as y,K as o,S as l,b as m,H as ye,u as v,c as V,R as be,M as j,P as s,Q as i}from"./vue.YrNK8sx4.js";import{createCrudOptions as he}from"./crud.BElnOBLi.js";import De from"./index.FmD3G9mH.js";import we from"./index.DTXaaJcd.js";import{G as ke,D as xe}from"./api.7-NBcHRN.js";import{_ as Ce}from"./_plugin-vue_export-helper.DlAUqK2U.js";const Te={class:"document-box document-left-box"},Be={class:"document-box document-right-box"},Fe={key:0,class:"uploaded-file-info mt-2"},Ve={class:"flex items-center justify-between"},je={class:"flex items-center"},Re={class:"flex items-center"},ze={class:"text-gray-500 text-sm mr-4"},Ne={key:1,class:"flex items-center justify-between"},Ue={class:"dialog-footer"},Me=E({name:"documentList"}),Se=E({...Me,setup(Ee){const{crudBinding:P,crudRef:_,crudExpose:h}=se({createCrudOptions:he});pe();const g=f(null),k=f([]),R=f([]),b=f(!1),x=f({}),z=f(null),p=f(""),D=f(!1),c=f({id:0,name:"",doc_type:"",category:"",project:"",version:"",file_type:"",file_size:0,status:!0,doc_desc:"",update_datetime:"",file_path:"",file:""}),L=f(null),C=()=>{ke({}).then(e=>{console.log("ret",e);const t=e.data;k.value=t})},$=e=>{console.log("record",e),p.value=(e==null?void 0:e.id)||"",g.value=null;const t={form:{job_id:p.value}};h.doSearch(t)},A=(e,t)=>{var a,n;if(e==="update"&&t){const T=((n=(a=z.value)==null?void 0:a.treeRef)==null?void 0:n.currentNode.parent.data)||{};R.value=[T],x.value=t}b.value=!0},N=e=>{e==="submit"&&C(),b.value=!1,x.value={}},G=(e,t)=>{S.confirm("您确认删除该文档分类吗?","温馨提示",{confirmButtonText:"确认",cancelButtonText:"取消",type:"warning"}).then(async()=>{const a=await xe(e);t(),(a==null?void 0:a.code)===2e3&&(me(a.msg),C())})},q=(e,t,a)=>{if(!e||!e.data){console.error("Upload response is invalid:",e);return}const n={name:t.name,file_path:e.data.bucket_url,file_type:e.data.file_type,file_size:t.size,doc_type:a.form.doc_type||"",category:p.value,status:!0,doc_desc:"",version:"",file:e.data.bucket_url};if(a.form)Object.assign(a.form,n);else{console.error("Form reference is not available");return}g.value=n,h.doRefresh({form:{category:p.value}})},H=e=>{var t;if(g.value=null,(t=_.value)!=null&&t.form){const a=_.value.form;a.name="",a.file_path="",a.file_type="",a.file_size="",a.doc_type="",a.category="",a.doc_desc="",a.version="",a.file="",e.value=""}},U=e=>{if(e===0)return"0 B";const t=1024,a=["B","KB","MB","GB","TB"],n=Math.floor(Math.log(e)/Math.log(t));return parseFloat((e/Math.pow(t,n)).toFixed(2))+" "+a[n]},J=e=>e?["pdf","doc","docx","xls","xlsx","ppt","pptx","jpg","jpeg","png","gif","bmp","webp","svg"].includes(e.toLowerCase()):!1,K=e=>{if(!e||!e.file){S.alert("文件链接不存在","预览失败",{type:"error"});return}const t=e.file_type||"",a=`/#/preview?url=${encodeURIComponent(filePath)}&type=${t}`;window.open(a,"_blank")},M=async e=>{const t=e.detail||e;try{c.value=t,D.value=!0}catch{_e.error("获取文档详情失败")}},O=e=>{if(!e)return"";const a=[{value:1,label:"合同文档"},{value:2,label:"技术文档"},{value:3,label:"操作手册"},{value:4,label:"维护记录"},{value:5,label:"其他文档"}].find(n=>n.value===e);return a?a.label:e},Q=e=>{if(!e)return"";const a=(window.__categoryDict||[]).find(n=>n.id===e);return a?a.name:e},W=e=>{if(!e)return"";const a=(window.__projectDict||[]).find(n=>n.id===e);return a?a.name:e},Z=()=>{};return ve(()=>{C(),h.doRefresh(),setTimeout(()=>{_.value&&(_.value.searchForm||(_.value.searchForm={}),p.value&&(_.value.searchForm.category=p.value,h.doSearch({form:{category:p.value}})))},300),window.addEventListener("viewDocumentDetail",M)}),ge(()=>{window.removeEventListener("viewDocumentDetail",M)}),(e,t)=>{const a=r("el-col"),n=r("el-button"),T=r("el-upload"),w=r("el-icon"),X=r("el-card"),Y=r("fs-crud"),I=r("el-row"),ee=r("el-drawer"),d=r("el-descriptions-item"),te=r("el-tag"),ae=r("el-descriptions"),le=r("el-dialog"),oe=r("fs-page");return y(),F(oe,null,{default:o(()=>[l(I,{class:"document-el-row"},{default:o(()=>[l(a,{span:4},{default:o(()=>[m("div",Te,[l(De,{ref_key:"documentTreeRef",ref:z,treeData:k.value,onTreeClick:$,onUpdateDocument:A,onDeleteDocument:G},null,8,["treeData"])])]),_:1}),l(a,{span:20},{default:o(()=>[m("div",Be,[l(Y,ye({ref_key:"crudRef",ref:_},v(P)),{form_file:o(u=>[u.mode!=="view"?(y(),V(be,{key:0},[l(T,{action:v(ie)()+"api/system/minioupload/",headers:{Authorization:"JWT "+v(re).get("token")},multiple:!1,"on-success":(B,ne)=>q(B,ne,u),drag:!1,"show-file-list":!1},{default:o(()=>[l(n,{type:"primary",icon:"plus"},{default:o(()=>t[3]||(t[3]=[s("上传")])),_:1})]),_:2},1032,["action","headers","on-success"]),g.value?(y(),V("div",Fe,[l(X,{shadow:"hover",class:"w-full"},{default:o(()=>[m("div",Ve,[m("div",je,[l(w,{class:"mr-2"},{default:o(()=>[l(v(ce))]),_:1}),m("span",null,i(g.value.name),1)]),m("div",Re,[m("span",ze,i(U(g.value.file_size)),1),l(n,{type:"danger",link:"",onClick:B=>H(u)},{default:o(()=>[l(w,null,{default:o(()=>[l(v(ue))]),_:1})]),_:2},1032,["onClick"])])])]),_:2},1024)])):j("",!0)],64)):(y(),V("div",Ne,[m("span",null,i(u.form.fileName),1),J(u.form.file_type)?(y(),F(n,{key:0,type:"primary",link:"",onClick:B=>K(u.form)},{default:o(()=>[l(w,{class:"mr-1"},{default:o(()=>[l(v(de))]),_:1}),t[4]||(t[4]=s("预览 "))]),_:2},1032,["onClick"])):j("",!0)]))]),_:1},16)])]),_:1})]),_:1}),l(ee,{modelValue:b.value,"onUpdate:modelValue":t[0]||(t[0]=u=>b.value=u),title:"文档配置",direction:"rtl",size:"500px","close-on-click-modal":!1,"before-close":N},{default:o(()=>[b.value?(y(),F(we,{key:0,initFormData:x.value,cacheData:R.value,treeData:k.value,onDrawerClose:N},null,8,["initFormData","cacheData","treeData"])):j("",!0)]),_:1},8,["modelValue"]),l(le,{modelValue:D.value,"onUpdate:modelValue":t[2]||(t[2]=u=>D.value=u),title:"文档详情",width:"50%","destroy-on-close":""},{footer:o(()=>[m("span",Ue,[l(n,{type:"primary",onClick:Z},{default:o(()=>[l(w,null,{default:o(()=>[l(v(fe))]),_:1}),t[5]||(t[5]=s("打印 "))]),_:1}),l(n,{onClick:t[1]||(t[1]=u=>D.value=!1)},{default:o(()=>t[6]||(t[6]=[s("关闭")])),_:1})])]),default:o(()=>[m("div",{ref_key:"printArea",ref:L},[l(ae,{column:2,size:"small",border:""},{default:o(()=>[l(d,{"label-align":"right",label:"文档名称"},{default:o(()=>[s(i(c.value.name||"-"),1)]),_:1}),l(d,{"label-align":"right",label:"文档类型"},{default:o(()=>[s(i(O(c.value.doc_type)||"-"),1)]),_:1}),l(d,{"label-align":"right",label:"文件分类"},{default:o(()=>[s(i(Q(c.value.category)||"-"),1)]),_:1}),l(d,{"label-align":"right",label:"所属项目"},{default:o(()=>[s(i(W(c.value.project)||"-"),1)]),_:1}),l(d,{"label-align":"right",label:"文档版本"},{default:o(()=>[s(i(c.value.version||"-"),1)]),_:1}),l(d,{"label-align":"right",label:"文件类型"},{default:o(()=>[s(i(c.value.file_type||"-"),1)]),_:1}),l(d,{"label-align":"right",label:"文件大小"},{default:o(()=>[s(i(U(c.value.file_size)||"-"),1)]),_:1}),l(d,{"label-align":"right",label:"状态"},{default:o(()=>[l(te,{type:c.value.status?"success":"info"},{default:o(()=>[s(i(c.value.status?"启用":"禁用"),1)]),_:1},8,["type"])]),_:1}),l(d,{"label-align":"right",label:"文档描述",span:2},{default:o(()=>[s(i(c.value.doc_desc||"-"),1)]),_:1}),l(d,{"label-align":"right",label:"更新时间"},{default:o(()=>[s(i(c.value.update_datetime||"-"),1)]),_:1})]),_:1})],512)]),_:1},8,["modelValue"])]),_:1})}}}),Je=Ce(Se,[["__scopeId","data-v-7d8c1fc1"]]);export{Je as default};
|