index.DhQGDXDz.js 7.7 KB

1
  1. import{k as e,m as t,g as a,aq as o,a as i,ak as s,d as r,S as l,ai as n,aj as p,x as d,O as m,P as c,q as u}from"./element-plus.DUy1TWHM.js";import{P as f}from"./system.0GYJijcz.js";import{P as h}from"./PageContent.v2drBSrF.js";import{y as w}from"./index.B1CvNv-2.js";import{_ as j}from"./github.y2-yT1xr.js";import{W as b,a as g}from"./WorkflowDesignDrawer.BCjKKAmT.js";import{M as v,aD as k,a_ as y,aL as _,u as x,I as C,bk as z,bJ as P,v as D,bL as R,s as S,H as N,bb as W,t as T,aU as I,aS as q}from"./@vue.DbmRtknU.js";import"./lodash-es.DaM9m3L-.js";import"./async-validator.j0i5Y79Y.js";import"./@popperjs.DxtSUbXb.js";import"./@ctrl.BEgk5vdO.js";import"./dayjs.DCWbrgJ0.js";import"./memoize-one.BAtLgO95.js";import"./normalize-wheel-es.TzhA1irr.js";import"./@floating-ui.8vigAAFV.js";import"./exceljs.DLSZe_6I.js";import"./xml.DHJV7eh_.js";import"./@vueuse.Dnsd2JKX.js";import"./pinia.BlfmsheH.js";import"./vue-i18n.DXLOBfKS.js";import"./@intlify.DPMNdUn_.js";import"./nprogress.BTjJXJ-u.js";import"./codemirror.CYSLATvI.js";import"./diff-match-patch.DkK4wJpa.js";import"./vue-web-terminal.D-rog7dz.js";import"./vue.MGxsMDTR.js";/* empty css */import"./axios.Da-QW0H8.js";import"./qs.BQjOrGHM.js";import"./side-channel.4q28KFJj.js";import"./es-errors.DTEWvbA_.js";import"./object-inspect.DvQZIv3_.js";import"./side-channel-list.Do0-XmF5.js";import"./side-channel-map.DNHQ53lO.js";import"./get-intrinsic.Bbe5x-9b.js";import"./es-object-atoms.CyiuHMUS.js";import"./math-intrinsics.pM-JTNwN.js";import"./gopd.BudZp56J.js";import"./es-define-property.F0aoeP8o.js";import"./has-symbols.BcO-SUVM.js";import"./get-proto.Cb_fpw-j.js";import"./dunder-proto.WEH3rgQR.js";import"./call-bind-apply-helpers.DJjIjCF_.js";import"./function-bind.DrnB-baK.js";import"./hasown.BXcyoiLU.js";import"./call-bound.22gFUC2Q.js";import"./side-channel-weakmap.DpSeWE6i.js";import"./vue-router.yxIMtaxH.js";import"./pinia-plugin-persistedstate.COWkwNh5.js";import"./@vue-flow.C14KmPsA.js";import"./dagre.C9k86_Gz.js";import"./graphlib.CqVsUrOV.js";import"./lodash.D-BGNLlY.js";import"./DynamicNode._CPMgUtp.js";import"./NodeConfigPanel.Vr2brQKy.js";import"./EdgeConfigPanel.BFydi7eE.js";const A={class:"app-container"},B={class:"data-table__content"},L=v({name:"WorkflowDefinition",inheritAttrs:!1,__name:"index",setup(v){const{searchRef:L,contentRef:E,handleQueryClick:F,handleResetClick:Q,refreshList:H}=w(),J=I(),O=I(!1),U=q({permPrefix:"module_task:workflow:definition",colon:!0,isExpandable:!0,showNumber:2,showToggle:!1,form:{labelWidth:"auto"},formItems:[{prop:"name",label:"流程名称",type:"input",attrs:{placeholder:"请输入流程名称",clearable:!0}},{prop:"code",label:"流程编码",type:"input",attrs:{placeholder:"请输入流程编码",clearable:!0}},{prop:"status",label:"状态",type:"select",options:[{label:"草稿",value:"draft"},{label:"已发布",value:"published"},{label:"已归档",value:"archived"}],attrs:{placeholder:"请选择状态",clearable:!0,style:{width:"170px"}}}]});const $=q({permPrefix:"module_task:workflow:definition",title:"工作流管理",tooltip:"流程编排列表,支持发布与执行",cols:[],hideColumnFilter:!0,toolbar:[{name:"add",text:"新增",attrs:{icon:"plus",type:"success"},perm:"create"},"delete"],defaultToolbar:[{name:"search",text:"搜索",attrs:{icon:"search",type:"info"},perm:"*:*:*"},"refresh"],initialFetch:!1,pagination:{pageSize:10,pageSizes:[10,20,30,50]},request:{page_no:"page_no",page_size:"page_size"},indexAction:async e=>{const t=await g.getWorkflowList(function(e){const t={...e};return""!==t.status&&null!==t.status||(t.status=void 0),t}(e));return{total:t.data.data.total,list:t.data.data.items}},deleteAction:e=>g.deleteWorkflow(e.split(",").map(e=>Number(e.trim())).filter(e=>!Number.isNaN(e)&&e>0)),deleteConfirm:{title:"警告",message:"确认删除选中的工作流吗?",type:"warning"}});function G(){var e;null==(e=L.value)||e.toggleVisible()}function K(){J.value=void 0,O.value=!0}function M(e){return{draft:"草稿",published:"已发布",archived:"已归档"}[e]||e}return k(()=>{H()}),(w,v)=>{const k=d,I=t,q=a,V=i,X=r,Y=p,Z=n,ee=s,te=o,ae=e,oe=y("hasPerm"),ie=m;return _(),x("div",A,[C(f,{ref_key:"searchRef",ref:L,"search-config":U,onQueryClick:z(F),onResetClick:z(Q)},null,8,["search-config","onQueryClick","onResetClick"]),C(h,{ref_key:"contentRef",ref:E,"content-config":$,onSearchClick:G,onAddClick:K},{table:P(({data:e,loading:t,tableRef:a,onSelectionChange:o,pagination:i})=>[D("div",B,[R((_(),S(ae,{ref:a,data:e,height:"100%",border:"",stripe:"",onSelectionChange:o},{empty:P(()=>[C(k,{"image-size":80,description:"暂无数据"})]),default:P(()=>[C(I,{type:"selection",align:"center","min-width":"55"}),C(I,{type:"index",fixed:"",label:"序号","min-width":"60"},{default:P(e=>[N(W((i.currentPage-1)*i.pageSize+e.$index+1),1)]),_:2},1024),C(I,{label:"ID",prop:"id","min-width":"80"}),C(I,{label:"名称",prop:"name","min-width":"160","show-overflow-tooltip":""}),C(I,{label:"编码",prop:"code","min-width":"120","show-overflow-tooltip":""}),C(I,{label:"状态",prop:"status","min-width":"100"},{default:P(e=>{return[C(q,{type:(t=e.row.status,{draft:"info",published:"success",archived:"warning"}[t]||"")},{default:P(()=>[N(W(M(e.row.status)),1)]),_:2},1032,["type"])];var t}),_:1}),C(I,{label:"描述",prop:"description","min-width":"160","show-overflow-tooltip":""}),C(I,{label:"创建时间",prop:"created_time","min-width":"180"}),C(j,{"list-data-length":e.length},{default:P(e=>[C(te,{class:"flex"},{default:P(()=>["draft"===e.row.status?R((_(),S(V,{key:0,type:"success",size:"small",link:"",icon:"upload",onClick:t=>{return a=e.row,void c.confirm("确定要发布此工作流吗?发布后可执行。","确认发布",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(async()=>{try{if(!a.id)return void u.error("工作流ID不存在");await g.publishWorkflow(a.id,{}),u.success("发布成功"),H()}catch{u.error("发布失败")}}).catch(()=>{});var a}},{default:P(()=>[...v[1]||(v[1]=[N(" 发布 ",-1)])]),_:1},8,["onClick"])),[[oe,["module_task:workflow:definition:update"]]]):T("",!0),"published"===e.row.status?R((_(),S(ee,{key:1,onCommand:t=>{return a=t,o=e.row,void("execute"===a&&c.confirm("确定要立即执行此工作流吗?","确认执行",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(async()=>{var e;try{if(!o.id)return void u.error("工作流ID不存在");const t=await g.executeWorkflow({workflow_id:o.id,variables:{}});if(null==(e=t.data)?void 0:e.data){const e=t.data.data;u.success("工作流执行"+("completed"===e.status?"成功":"失败"))}H()}catch{u.error("执行失败")}}).catch(()=>{}));var a,o}},{dropdown:P(()=>[C(Z,null,{default:P(()=>[C(Y,{command:"execute"},{default:P(()=>[...v[3]||(v[3]=[N("立即执行",-1)])]),_:1})]),_:1})]),default:P(()=>[C(V,{type:"warning",size:"small",link:"",icon:"video-play"},{default:P(()=>[v[2]||(v[2]=N(" 执行 ",-1)),C(X,null,{default:P(()=>[C(z(l))]),_:1})]),_:1})]),_:1},8,["onCommand"])),[[oe,["module_task:workflow:definition:execute"]]]):T("",!0),R((_(),S(V,{type:"primary",size:"small",link:"",icon:"edit",onClick:t=>{return a=e.row,J.value=a,void(O.value=!0);var a}},{default:P(()=>[...v[4]||(v[4]=[N(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[oe,["module_task:workflow:definition:update"]]]),R((_(),S(V,{type:"danger",size:"small",link:"",icon:"delete",onClick:t=>{var a,o;null!=(a=e.row.id)&&(null==(o=E.value)||o.handleDelete(a))}},{default:P(()=>[...v[5]||(v[5]=[N(" 删除 ",-1)])]),_:1},8,["onClick"])),[[oe,["module_task:workflow:definition:delete"]]])]),_:2},1024)]),_:1},8,["list-data-length"])]),_:2},1032,["data","onSelectionChange"])),[[ie,t]])])]),_:1},8,["content-config"]),C(b,{visible:O.value,"onUpdate:visible":v[0]||(v[0]=e=>O.value=e),workflow:J.value,onRefresh:z(H)},null,8,["visible","workflow","onRefresh"])])}}});export{L as default};