1 |
- import{w as J,D as u,H as K,aF as l,x as D,y as w,a8 as t,z as _,G as r,R as b,a1 as a,a2 as x,a9 as C,a5 as S,a6 as N,a7 as Q,av as W,ax as X}from"./vue.Bi2Y_N79.js";import{g as Y}from"./index.es.DmevZXPX.js";import{F as Z,G as ee,w as g}from"./index.igw5cVmP.js";import{d as te,a as oe,l as ae}from"./api.BkmanEgY.js";import{_ as le}from"./_plugin-vue_export-helper.DlAUqK2U.js";const ne={class:"dept-tree-com"},se={class:"tc-head"},ie={key:0,class:"text-center font-black font-normal"},de={key:1,color:"var(--el-color-primary)"},re={class:"tree-tags"},ce=J({__name:"index",props:{treeData:{default:()=>[]}},emits:["treeClick","deleteDept","updateDept"],setup(ue,{expose:E,emit:F}){const B=Y(W),H={children:"children",label:"name",isLeaf:(o,e)=>!e.data.hasChild},v=F;let p=u(""),c=u(!1),f=u(!1),n=u({}),z=u(null);const k=u();K(p,o=>{k.value.filter(o)});const R=(o,e)=>o?X(e).name?.indexOf(o)!==-1:!0,I=(o,e)=>{o.level!==0&&ae({parent:o.data.id}).then(d=>{e(d.data)})},M=(o,e)=>{n.value=o,z.value=e,v("treeClick",o)},y=o=>{if(o==="update"){if(!n.value.id){g("请选择菜单!");return}v("updateDept",o,n.value)}else v("updateDept",o)},P=()=>{if(!n.value.id){g("请选择菜单!");return}v("deleteDept",n.value.id,()=>{n.value={}})},L=async o=>{if(!n.value.id){g("请选择菜单!");return}if(f.value)return;const e=z.value?.parent.childNodes||[],d=e.findIndex(s=>s.data.id===n.value.id),h=e.find(s=>s.data.id===n.value.id);if(o==="up"){if(d===0)return;e.splice(d-1,0,h),e.splice(d+1,1),f.value=!0,await te({dept_id:n.value.id}),f.value=!1}o==="down"&&(e.splice(d+2,0,h),e.splice(d,1),f.value=!0,await oe({dept_id:n.value.id}),f.value=!1)};return E({treeRef:k}),(o,e)=>{const d=l("el-input"),h=l("HomeFilled"),s=l("el-icon"),U=l("View"),$=l("Hide"),T=l("SvgIcon"),G=l("Plus"),m=l("el-tooltip"),O=l("Edit"),j=l("Top"),q=l("Bottom"),A=l("Delete");return w(),D(Q,null,[t(d,{modelValue:r(p),"onUpdate:modelValue":e[0]||(e[0]=i=>b(p)?p.value=i:p=i),"prefix-icon":r(Z),placeholder:"请输入部门名称"},null,8,["modelValue","prefix-icon"]),_("div",ne,[_("div",se,[t(s,{size:"16",color:"#606266",class:"tc-head-icon"},{default:a(()=>[t(h)]),_:1}),e[6]||(e[6]=_("span",{class:"tc-head-txt"},"部门架构",-1)),t(s,{size:"16",color:"#606266",onClick:e[1]||(e[1]=()=>b(c)?c.value=!r(c):c=!r(c)),class:"tc-head-icon"},{default:a(()=>[x(t(U,null,null,512),[[C,!r(c)]]),x(t($,null,null,512),[[C,r(c)]])]),_:1})]),t(r(ee),{ref_key:"treeRef",ref:k,data:o.treeData,props:H,"filter-node-method":R,load:I,lazy:"",indent:38,onNodeClick:M,"highlight-current":""},{default:a(({node:i,data:V})=>[t(r(B),{node:i,showLabelLine:!1,indent:32},{default:a(()=>[V.status?(w(),D("span",ie,[t(T,{name:"iconfont icon-shouye",color:"var(--el-color-primary)"}),S(" "+N(i.label)+" ",1),x(_("span",null,"("+N(V.dept_user_count)+"人)",513),[[C,r(c)]])])):(w(),D("span",de,[t(T,{name:"iconfont icon-shouye"}),S(" "+N(i.label),1)]))]),_:2},1032,["node"])]),_:1},8,["data"]),_("div",re,[t(m,{effect:"dark",content:"新增"},{default:a(()=>[t(s,{size:"16",onClick:e[2]||(e[2]=i=>y("create")),class:"mlt-icon"},{default:a(()=>[t(G)]),_:1})]),_:1}),t(m,{effect:"dark",content:"编辑"},{default:a(()=>[t(s,{size:"16",onClick:e[3]||(e[3]=i=>y("update")),class:"mlt-icon"},{default:a(()=>[t(O)]),_:1})]),_:1}),t(m,{effect:"dark",content:"上移"},{default:a(()=>[t(s,{size:"16",onClick:e[4]||(e[4]=i=>L("up")),class:"mlt-icon"},{default:a(()=>[t(j)]),_:1})]),_:1}),t(m,{effect:"dark",content:"下移"},{default:a(()=>[t(s,{size:"16",onClick:e[5]||(e[5]=i=>L("down")),class:"mlt-icon"},{default:a(()=>[t(q)]),_:1})]),_:1}),t(m,{effect:"dark",content:"删除"},{default:a(()=>[t(s,{size:"16",onClick:P,class:"mlt-icon"},{default:a(()=>[t(A)]),_:1})]),_:1})])])],64)}}}),he=le(ce,[["__scopeId","data-v-50724fd0"]]);export{he as default};
|