| 1 |
- import{k as e,m as t,g as a,a as l,x as o,O as i,U as s,V as r,z as d,A as n,t as p,B as m,I as u,a3 as c,as as f,q as h,P as b}from"./element-plus.ea_38_Np.js";import{y,D as _,o as v,f as w}from"./index.Dwded2Oo.js";import{_ as g,a as j,P as k}from"./PageContent.CDE_q5Ba.js";import{P as x}from"./wechat.Ddj9nHVn.js";import{E as C}from"./sql.B_67SxmZ.js";import{M as V,a_ as D,aL as U,u as z,I as R,bk as P,bJ as q,v as A,bL as I,s as Y,t as M,H,bb as N,aU as S,aS as F}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"./pinia.BlfmsheH.js";import"./@vueuse.Dnsd2JKX.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"./vue-router.yxIMtaxH.js";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"./pinia-plugin-persistedstate.COWkwNh5.js";import"./exceljs.DLSZe_6I.js";const L={class:"app-container"},B={class:"data-table__toolbar--right"},O={class:"data-table__content"},T={class:"dialog-footer"},E=V({name:"Dept",inheritAttrs:!1,__name:"index",setup(V){const{searchRef:E,contentRef:Q,handleQueryClick:$,handleResetClick:J,refreshList:Z}=y(),G=S(),K=F({permPrefix:"module_system:dept",colon:!0,isExpandable:!0,showNumber:2,form:{labelWidth:"auto"},formItems:[{prop:"name",label:"部门名称",type:"input",attrs:{placeholder:"请输入部门名称",clearable:!0}},{prop:"status",label:"状态",type:"select",options:[{label:"启用",value:"0"},{label:"停用",value:"1"}],attrs:{placeholder:"请选择状态",clearable:!0,style:{width:"167.5px"}}},{prop:"created_time",label:"创建时间",type:"date-picker",attrs:{type:"datetimerange",rangeSeparator:"至",startPlaceholder:"开始日期",endPlaceholder:"结束日期",format:"YYYY-MM-DD HH:mm:ss",valueFormat:"YYYY-MM-DD HH:mm:ss",style:{width:"340px"}}}]}),W=F([{prop:"selection",label:"选择框",show:!0},{prop:"index",label:"序号",show:!0},{prop:"name",label:"部门名称",show:!0},{prop:"code",label:"部门编码",show:!0},{prop:"order",label:"排序",show:!0},{prop:"status",label:"状态",show:!0},{prop:"description",label:"描述",show:!0},{prop:"created_time",label:"创建时间",show:!0},{prop:"updated_time",label:"更新时间",show:!0},{prop:"operation",label:"操作",show:!0}]),X=F({permPrefix:"module_system:dept",pk:"id",cols:W,hideColumnFilter:!1,toolbar:[],defaultToolbar:["refresh","filter"],pagination:!1,indexAction:async e=>{const t=(await _.listDept(e)).data.data||[];return ee.value=w(t),t},deleteAction:async e=>{await _.deleteDept(e.split(",").map(e=>Number(e.trim())).filter(e=>!Number.isNaN(e)));const t=v();await t.getUserInfo()},deleteConfirm:{title:"警告",message:"确认删除该项数据?",type:"warning"}}),ee=S([]),te=S({code:""}),ae=F({id:void 0,name:void 0,code:"",order:1,parent_id:void 0,status:"0",description:void 0}),le=F({title:"",visible:!1,type:"create"}),oe=F({name:[{required:!0,message:"请输入部门名称",trigger:"blur"}],code:[{required:!0,message:"请输入部门编码",trigger:"blur"},{pattern:/^[A-Za-z][A-Za-z0-9_]{1,15}$/,message:"字母开头,2-16位字母/数字/下划线",trigger:"blur"}],order:[{required:!0,message:"请输入排序",trigger:"blur"}],status:[{required:!0,message:"请选择状态",trigger:"blur"}]}),ie={id:void 0,name:void 0,code:"",order:1,parent_id:void 0,status:"0",description:void 0};async function se(){G.value&&(G.value.resetFields(),G.value.clearValidate()),Object.assign(ae,ie)}async function re(){le.visible=!1,await se()}async function de(e,t,a){if(le.type=e,t){const a=await _.detailDept(t);"detail"===e?(le.title="部门详情",Object.assign(te.value,a.data.data)):"update"===e&&(le.title="修改部门",Object.assign(ae,a.data.data))}else le.title="新增部门",ae.id=void 0,a&&(ae.parent_id=a);le.visible=!0}async function ne(){G.value.validate(async e=>{if(e){const e=ae.id;try{e?await _.updateDept(e,{id:e,...ae}):await _.createDept(ae),le.visible=!1,await se(),Z();const t=v();await t.getUserInfo()}catch(t){}}})}async function pe(e){var t;const a=((null==(t=Q.value)?void 0:t.getSelectionData())??[]).map(e=>e.id).filter(e=>null!=e);a.length?b.confirm(`确认${"0"===e?"启用":"停用"}该项数据?`,"警告",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(async()=>{try{await _.batchDept({ids:a,status:e}),Z();const t=v();await t.getUserInfo()}catch(t){}}).catch(()=>{b.close()}):h.warning("请先选择要操作的数据")}return(h,b)=>{const y=o,_=t,v=a,w=l,V=e,S=r,F=s,Z=p,ie=n,se=m,me=u,ue=f,ce=c,fe=d,he=D("hasPerm"),be=i;return U(),z("div",L,[R(x,{ref_key:"searchRef",ref:E,"search-config":K,onQueryClick:P($),onResetClick:P(J)},null,8,["search-config","onQueryClick","onResetClick"]),R(k,{ref_key:"contentRef",ref:Q,"content-config":X},{toolbar:q(({toolbarRight:e,onToolbar:t,removeIds:a,cols:l})=>[R(g,{"remove-ids":a,"perm-create":["module_system:dept:create"],"perm-delete":["module_system:dept:delete"],"perm-patch":["module_system:dept:patch"],onAdd:b[0]||(b[0]=e=>de("create")),onDelete:e=>t("delete"),onMore:pe},null,8,["remove-ids","onDelete"]),A("div",B,[R(j,{buttons:e,cols:l,"on-toolbar":t},null,8,["buttons","cols","on-toolbar"])])]),table:q(({data:e,loading:t,tableRef:a,onSelectionChange:l})=>[A("div",O,[I((U(),Y(V,{ref:a,"row-key":"id",data:e,"tree-props":{children:"children",hasChildren:"hasChildren"},height:"100%",border:"",onSelectionChange:l},{empty:q(()=>[R(y,{"image-size":80,description:"暂无数据"})]),default:q(()=>{var e,t,a,l,o,i,s,r,d,n;return[(null==(e=W.find(e=>"selection"===e.prop))?void 0:e.show)?(U(),Y(_,{key:0,type:"selection","min-width":"55",align:"center"})):M("",!0),(null==(t=W.find(e=>"index"===e.prop))?void 0:t.show)?(U(),Y(_,{key:1,type:"index",fixed:"",label:"序号","min-width":"60"})):M("",!0),(null==(a=W.find(e=>"name"===e.prop))?void 0:a.show)?(U(),Y(_,{key:"name",label:"部门名称",prop:"name","min-width":"120"})):M("",!0),(null==(l=W.find(e=>"code"===e.prop))?void 0:l.show)?(U(),Y(_,{key:"code",label:"部门编码",prop:"code","min-width":"120"})):M("",!0),(null==(o=W.find(e=>"status"===e.prop))?void 0:o.show)?(U(),Y(_,{key:"status",label:"状态",prop:"status","min-width":"60"},{default:q(e=>[R(v,{type:"0"===e.row.status?"success":"danger"},{default:q(()=>[H(N(e.row.status?"启用":"停用"),1)]),_:2},1032,["type"])]),_:1})):M("",!0),(null==(i=W.find(e=>"order"===e.prop))?void 0:i.show)?(U(),Y(_,{key:"order",label:"排序",prop:"order","min-width":"60","show-overflow-tooltip":""})):M("",!0),(null==(s=W.find(e=>"description"===e.prop))?void 0:s.show)?(U(),Y(_,{key:"description",label:"描述",prop:"description","min-width":"100"})):M("",!0),(null==(r=W.find(e=>"created_time"===e.prop))?void 0:r.show)?(U(),Y(_,{key:"created_time",label:"创建时间",prop:"created_time","min-width":"120",sortable:""})):M("",!0),(null==(d=W.find(e=>"updated_time"===e.prop))?void 0:d.show)?(U(),Y(_,{key:"updated_time",label:"更新时间",prop:"updated_time","min-width":"120",sortable:""})):M("",!0),(null==(n=W.find(e=>"operation"===e.prop))?void 0:n.show)?(U(),Y(_,{key:9,fixed:"right",label:"操作",align:"center","min-width":"200"},{default:q(e=>[I((U(),Y(w,{type:"success",size:"small",link:"",icon:"plus",onClick:t=>de("create",void 0,e.row.id)},{default:q(()=>[...b[8]||(b[8]=[H(" 新增 ",-1)])]),_:1},8,["onClick"])),[[he,["module_system:dept:create"]]]),I((U(),Y(w,{type:"info",size:"small",link:"",icon:"View",onClick:t=>de("detail",e.row.id)},{default:q(()=>[...b[9]||(b[9]=[H(" 详情 ",-1)])]),_:1},8,["onClick"])),[[he,["module_system:dept:detail"]]]),I((U(),Y(w,{type:"primary",size:"small",link:"",icon:"edit",onClick:t=>de("update",e.row.id)},{default:q(()=>[...b[10]||(b[10]=[H(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[he,["module_system:dept:update"]]]),I((U(),Y(w,{type:"danger",size:"small",link:"",icon:"delete",onClick:t=>function(e){var t;null==(t=Q.value)||t.handleDelete(e)}(e.row.id)},{default:q(()=>[...b[11]||(b[11]=[H(" 删除 ",-1)])]),_:1},8,["onClick"])),[[he,["module_system:dept:delete"]]])]),_:1})):M("",!0)]}),_:1},8,["data","onSelectionChange"])),[[be,t]])])]),_:1},8,["content-config"]),R(C,{modelValue:le.visible,"onUpdate:modelValue":b[7]||(b[7]=e=>le.visible=e),title:le.title,onClose:re},{footer:q(()=>[A("div",T,["detail"!==le.type?(U(),Y(w,{key:0,type:"primary",onClick:ne},{default:q(()=>[...b[14]||(b[14]=[H(" 确定 ",-1)])]),_:1})):(U(),Y(w,{key:1,type:"primary",onClick:re},{default:q(()=>[...b[15]||(b[15]=[H("确定",-1)])]),_:1})),R(w,{onClick:re},{default:q(()=>[...b[16]||(b[16]=[H("取消",-1)])]),_:1})])]),default:q(()=>["detail"===le.type?(U(),Y(F,{key:0,column:4,border:""},{default:q(()=>[R(S,{label:"部门名称",span:2},{default:q(()=>[H(N(te.value.name),1)]),_:1}),R(S,{label:"部门编码",span:2},{default:q(()=>[H(N(te.value.code),1)]),_:1}),R(S,{label:"上级部门",span:2},{default:q(()=>[H(N(te.value.parent_name),1)]),_:1}),R(S,{label:"状态",span:2},{default:q(()=>[R(v,{type:te.value.status?"success":"danger"},{default:q(()=>[H(N(te.value.status?"启用":"停用"),1)]),_:1},8,["type"])]),_:1}),R(S,{label:"排序",span:2},{default:q(()=>[H(N(te.value.order),1)]),_:1}),R(S,{label:"创建时间",span:2},{default:q(()=>[H(N(te.value.created_time),1)]),_:1}),R(S,{label:"更新时间",span:2},{default:q(()=>[H(N(te.value.updated_time),1)]),_:1}),R(S,{label:"描述",span:4},{default:q(()=>[H(N(te.value.description),1)]),_:1})]),_:1})):(U(),Y(fe,{key:1,ref_key:"dataFormRef",ref:G,model:ae,rules:oe,"label-suffix":":","label-width":"auto","label-position":"right"},{default:q(()=>[R(ie,{label:"部门名称",prop:"name"},{default:q(()=>[R(Z,{modelValue:ae.name,"onUpdate:modelValue":b[1]||(b[1]=e=>ae.name=e),placeholder:"请输入部门名称",maxlength:50},null,8,["modelValue"])]),_:1}),R(ie,{label:"部门编码",prop:"code"},{default:q(()=>[R(Z,{modelValue:ae.code,"onUpdate:modelValue":b[2]||(b[2]=e=>ae.code=e),placeholder:"字母开头,2-16位字母/数字/下划线",maxlength:16,"show-word-limit":""},null,8,["modelValue"])]),_:1}),R(ie,{label:"上级部门",prop:"parent_id"},{default:q(()=>[R(se,{modelValue:ae.parent_id,"onUpdate:modelValue":b[3]||(b[3]=e=>ae.parent_id=e),placeholder:"请选择上级部门",data:ee.value,filterable:"","check-strictly":"","render-after-expand":!1},null,8,["modelValue","data"])]),_:1}),R(ie,{label:"排序",prop:"order"},{default:q(()=>[R(me,{modelValue:ae.order,"onUpdate:modelValue":b[4]||(b[4]=e=>ae.order=e),"controls-position":"right",min:1,max:999},null,8,["modelValue"])]),_:1}),R(ie,{label:"状态",prop:"status"},{default:q(()=>[R(ce,{modelValue:ae.status,"onUpdate:modelValue":b[5]||(b[5]=e=>ae.status=e)},{default:q(()=>[R(ue,{value:"0"},{default:q(()=>[...b[12]||(b[12]=[H("启用",-1)])]),_:1}),R(ue,{value:"1"},{default:q(()=>[...b[13]||(b[13]=[H("停用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),R(ie,{label:"描述",prop:"description"},{default:q(()=>[R(Z,{modelValue:ae.description,"onUpdate:modelValue":b[6]||(b[6]=e=>ae.description=e),rows:4,maxlength:100,"show-word-limit":"",type:"textarea",placeholder:"请输入描述"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"]))]),_:1},8,["modelValue","title"])])}}});export{E as default};
|