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