2 lines
7.5 KiB
JavaScript
2 lines
7.5 KiB
JavaScript
var V=Object.defineProperty,B=Object.defineProperties;var W=Object.getOwnPropertyDescriptors;var h=Object.getOwnPropertySymbols;var S=Object.prototype.hasOwnProperty,y=Object.prototype.propertyIsEnumerable;var _=(t,o,e)=>o in t?V(t,o,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[o]=e,P=(t,o)=>{for(var e in o||(o={}))S.call(o,e)&&_(t,e,o[e]);if(h)for(var e of h(o))y.call(o,e)&&_(t,e,o[e]);return t},b=(t,o)=>B(t,W(o));var N=(t,o)=>{var e={};for(var r in t)S.call(t,r)&&o.indexOf(r)<0&&(e[r]=t[r]);if(t!=null&&h)for(var r of h(t))o.indexOf(r)<0&&y.call(t,r)&&(e[r]=t[r]);return e};var u=(t,o,e)=>new Promise((r,n)=>{var s=a=>{try{p(e.next(a))}catch(c){n(c)}},l=a=>{try{p(e.throw(a))}catch(c){n(c)}},p=a=>a.done?r(a.value):Promise.resolve(a.value).then(s,l);p((e=e.apply(t,o)).next())});import{at as q,V as U,ae as $,a9 as G,bP as M}from"./bootstrap-BKs0Sk6Z.js";import"./vxe-table-D8MHv-3U.js";import{a as j}from"./index-DiKW21_2.js";import{j as J,i as L}from"./index-Bjfi2PUu.js";/* empty css */import{p as z}from"./helpers-COu9p_K6.js";import"./consts-D1Imw0A8.js";import"./simple-process-designer.vue_vue_type_script_setup_true_lang-ubNOIXlG.js";import{g as K}from"./index-71RG0_Rh.js";import{g as T}from"./rangePickerProps-gFa0a5Pw.js";import{D as x}from"./dict-enum-CaHgMaDZ.js";import{_ as H}from"./table-action.vue_vue_type_script_setup_true_lang-DFCWo4M-.js";import{_ as Y}from"./page.vue_vue_type_script_setup_true_lang-C83zw41U.js";import{b as Q}from"./AlertBuilder-BXEOjg1E.js";import{m as X,b9 as Z,v as ee,ab as te,b2 as oe,bJ as D,j as F,u as d,L as re}from"../jse/index-index-DTH1zC_5.js";import{u as ie}from"./use-vxe-grid-Q5I02g7y.js";import{A as w}from"./icons-CieLeI1V.js";import"./dict-tag.vue_vue_type_script_setup_true_lang-Ck1J3m5B.js";import"./biz-bpm-enum-DQJBn5Qr.js";import"./index-ytcc3rko.js";import"./index-Db5sy374.js";import"./index-Dm8-xtKv.js";import"./index-DIDkkYsq.js";import"./index-DPiBDjSv.js";import"./simple-process-model.vue_vue_type_script_setup_true_lang-hqlzB135.js";import"./process-node-tree.vue_vue_type_script_setup_true_lang-BZiEQJ7H.js";import"./child-process-node.vue_vue_type_script_setup_true_lang-Bi8NyZ6z.js";import"./child-process-node-config.vue_vue_type_script_setup_true_lang-Z8n2q7lG.js";import"./index-DNUyl9Bk.js";import"./utils-C4vayS9C.js";import"./use-drawer-BUeOkCeT.js";import"./x-bUPAKCwj.js";import"./node-handler.vue_vue_type_script_setup_true_lang-DAFbHHJw.js";import"./copy-task-node.vue_vue_type_script_setup_true_lang-P_fhhUrR.js";import"./copy-task-node-config.vue_vue_type_script_setup_true_lang-BKxTWtdN.js";import"./delay-timer-node.vue_vue_type_script_setup_true_lang-BxF1Cy7I.js";import"./delay-timer-node-config.vue_vue_type_script_setup_true_lang-yppHuUcs.js";import"./end-event-node.vue_vue_type_script_setup_true_lang-QwKjujQW.js";import"./process-instance-modal.vue_vue_type_script_setup_true_lang-BhI0mga5.js";import"./use-modal-Cpg4Eh9N.js";import"./condition-node-config.vue_vue_type_script_setup_true_lang-D8pzsF-C.js";import"./condition.vue_vue_type_script_setup_true_lang-jI4kZ8SH.js";import"./index-B9lDOBgQ.js";import"./plus-CK0BoToG.js";import"./router-node.vue_vue_type_script_setup_true_lang-CVzXzktV.js";import"./router-node-config.vue_vue_type_script_setup_true_lang-BC864HO4.js";import"./start-user-node.vue_vue_type_script_setup_true_lang-dmLzX2wo.js";import"./start-user-node-config.vue_vue_type_script_setup_true_lang-CQiFnX0T.js";import"./Text-EOsA6-Qr.js";import"./task-list-modal.vue_vue_type_script_setup_true_lang-Dnyh2hgE.js";import"./trigger-node.vue_vue_type_script_setup_true_lang-CqUq_xnQ.js";import"./trigger-node-config.vue_vue_type_script_setup_true_lang-tiSqXjQ0.js";import"./condition-dialog.vue_vue_type_script_setup_true_lang-BTZx-PnG.js";import"./http-request-setting.vue_vue_type_script_setup_true_lang-B9p8PAZB.js";import"./http-request-param-setting.vue_vue_type_script_setup_true_lang-BwefZcBQ.js";import"./user-task-node.vue_vue_type_script_setup_true_lang-u3tkP-uN.js";import"./user-task-node-config.vue_vue_type_script_setup_true_lang-DhsdXv_2.js";import"./user-task-listener.vue_vue_type_script_setup_true_lang-C_xlRORi.js";import"./circle-check-big-BNgj2RWC.js";function I(t=[]){const o=[{fieldName:"startUserId",label:"发起人",component:"ApiSelect",componentProps:{placeholder:"请选择发起人",allowClear:!0,api:K,labelField:"nickname",valueField:"id"}},{fieldName:"name",label:"流程名称",component:"Input",componentProps:{placeholder:"请输入流程名称",allowClear:!0}},{fieldName:"status",label:"流程状态",component:"Select",componentProps:{placeholder:"请选择流程状态",allowClear:!0,options:q(x.BPM_PROCESS_INSTANCE_STATUS,"number")}},{fieldName:"createTime",label:"发起时间",component:"RangePicker",componentProps:b(P({},T()),{allowClear:!0})},{fieldName:"endTime",label:"结束时间",component:"RangePicker",componentProps:b(P({},T()),{allowClear:!0})}],e=t.filter(r=>["input","textarea"].includes(r.type)).map(r=>({fieldName:`formFieldsParams.${r.field}`,label:r.title,component:"Input",componentProps:{placeholder:`请输入${r.title}`,allowClear:!0}}));return[...o,...e]}function k(t=[]){const o=[{field:"name",title:"流程名称",minWidth:250,fixed:"left"},{field:"startUser.nickname",title:"流程发起人",minWidth:200},{field:"status",title:"流程状态",minWidth:120,cellRender:{name:"CellDict",props:{type:x.BPM_PROCESS_INSTANCE_STATUS}}},{field:"startTime",title:"发起时间",minWidth:180,formatter:"formatDateTime"},{field:"endTime",title:"结束时间",minWidth:180,formatter:"formatDateTime"}],e=t.map(r=>({field:`formVariables.${r.field}`,title:r.title,minWidth:120,formatter:({row:n})=>{var s,l;return(l=(s=n.formVariables)==null?void 0:s[r.field])!=null?l:""}}));return[...o,...e,{title:"操作",width:180,fixed:"right",slots:{default:"actions"}}]}const ct=X({name:"BpmProcessInstanceReport",__name:"index",setup(t){const o=U(),{query:e}=$(),r=e.processDefinitionId,n=Z([]);function s(){return u(this,null,function*(){const i=yield j(r);i!=null&&i.formFields&&(n.value=l(i.formFields))})}function l(i){const m=[];return i&&i.forEach(f=>{try{z(JSON.parse(f),m)}catch(E){console.error("解析表单字段失败",E)}}),m}function p(){C.query()}function a(i){o.push({name:"BpmProcessInstanceDetail",query:{id:i.id}})}function c(i){Q({component:()=>re(M,{placeholder:"请输入取消原因",allowClear:!0,rows:2}),content:"请输入取消原因",title:"取消流程",modelPropName:"value"}).then(m=>u(null,null,function*(){m&&(yield J(i.id,m),G.success("取消成功"),p())}))}const[A,C]=ie({formOptions:{schema:I()},gridOptions:{columns:k(),height:"auto",keepSource:!0,rowConfig:{keyField:"id",isHover:!0},toolbarConfig:{refresh:!0,search:!0},proxyConfig:{ajax:{query:(f,E)=>u(null,[f,E],function*({page:i},m){const g=m||{},{formFieldsParams:R={}}=g,O=N(g,["formFieldsParams"]),v=b(P({pageNo:i.currentPage,pageSize:i.pageSize},O),{processDefinitionKey:e.processDefinitionKey,formFieldsParams:JSON.stringify(R)});return yield L(v)})}}}});return ee(()=>u(null,null,function*(){yield s(),C.formApi.setState({schema:I(n.value)}),yield C.grid.reloadColumn(k(n.value))})),(i,m)=>(oe(),te(d(Y),{"auto-content-height":""},{default:D(()=>[F(d(A),{"table-title":"流程实例列表"},{actions:D(({row:f})=>[F(d(H),{actions:[{label:"详情",type:"link",icon:d(w).VIEW,auth:["bpm:process-instance:query"],onClick:a.bind(null,f)},{label:"取消",type:"link",danger:!0,icon:d(w).DELETE,auth:["bpm:process-instance:cancel"],ifShow:f.status===1,onClick:c.bind(null,f)}]},null,8,["actions"])]),_:1})]),_:1}))}});export{ct as default};
|