TreeParts-JNkugB-P.js 2.5 KB

1
  1. /* empty css *//* empty css */import{C as R}from"./index-mAXw1lbe.js";import"./index-BVNoxOpZ.js";import{T as S}from"./index-CbOy1mVE.js";import"./index-CA2q5uMI.js";/* empty css */import{_ as V}from"./DeleteModal-D0CHvIxG.js";import{_ as M,B as q}from"./index-BXFjXy9U.js";import{T as z}from"./index-927-iqvI.js";import{u as E,j as d,w as J,L as U,p as B,a8 as X,c as D,o,D as p,A as s,q as m,X as e,s as r,a as G,J as H,B as K,$ as Q,F as W}from"./vue-vendor-BdC0yijC.js";const Y={key:0,class:"default-add"},Z={__name:"TreeParts",props:{title:String,showLock:{type:Boolean,default:!1},treeData:{type:Array,default:()=>[]},permission:{type:Object,default:()=>{}},fieldNames:{type:Object,default:()=>({label:"label",key:"id",children:"children"})}},emits:["nodeClick","addBtnClick","drop","deleteBtnClick"],setup(u,{emit:x}){const f=u,{treeData:v,title:_}=E(f),{permission:{add_permission:C,edit_permission:ee,delete_permission:I}}=f,c=x,y=d(null),g=d({}),i=d(!1);let l=d(!1);const N=()=>{l.value=!l.value},T=t=>{c("nodeClick",t)},b=t=>{c("addBtnClick",t)},w=({dragNode:t,dropNode:a,dropPosition:k})=>{c("drop",{dragNode:t,dropNode:a,dropPosition:k})},A=t=>{g.value=t,i.value=!0},$=()=>{c("deleteBtnClick",g.value),i.value=!1};return J(()=>f.treeData,t=>{t.length>0&&U(()=>{y.value.expandAll()})}),(t,a)=>{const k=q,F=z,h=B("IconPlus"),L=B("IconDelete"),O=S,P=R,j=X("has-permi");return o(),D(W,null,[p(P,{title:e(_),bordered:!1,"header-style":{textAlign:"left"},class:"tree-card"},{title:s(()=>[G("span",null,H(e(_)),1),u.showLock?(o(),r(F,{key:0,content:"点击后可通过拖拽更改结构,再次点击来关闭","background-color":"#165DFF"},{default:s(()=>[K((o(),r(k,{type:e(l)?"secondary":"outline",style:{float:"right"},onClick:N},{default:s(()=>[(o(),r(Q(e(l)?"IconUnlock":"IconLock")))]),_:1},8,["type"])),[[j,"/base/syorganization!update"]])]),_:1})):m("",!0)]),default:s(()=>[p(O,{draggable:e(l),blockNode:"",data:e(v),"show-line":!0,ref_key:"treeRef",ref:y,fieldNames:u.fieldNames,onDrop:w,onSelect:T},{extra:s(n=>[e(C)?(o(),r(h,{key:0,class:"icon-plus",onClick:()=>b(n)},null,8,["onClick"])):m("",!0),e(I)&&n.parentId?(o(),r(L,{key:1,onClick:te=>A(n),class:"icon-delete"},null,8,["onClick"])):m("",!0)]),_:1},8,["draggable","data","fieldNames"]),e(C)&&!e(v).length&&e(_)=="机构"?(o(),D("div",Y,[p(h,{onClick:a[0]||(a[0]=n=>b("root"))})])):m("",!0)]),_:1},8,["title"]),p(V,{visible:i.value,onOk:$,onCancel:a[1]||(a[1]=n=>i.value=!1)},null,8,["visible"])],64)}}},ue=M(Z,[["__scopeId","data-v-60cbdf5f"]]);export{ue as T};