2 lines
5.0 KiB
Java
2 lines
5.0 KiB
Java
var T=(N,_,y)=>new Promise((g,d)=>{var a=i=>{try{p(y.next(i))}catch(u){d(u)}},w=i=>{try{p(y.throw(i))}catch(u){d(u)}},p=i=>i.done?g(i.value):Promise.resolve(i.value).then(a,w);p((y=y.apply(N,_)).next())});import{d as Y,ah as k,aC as R,as as E,aF as s,k as n,u as v,f,G as r,ag as q,av as z,au as F,aG as H}from"./vue-vendor-C7Zq48Yl.js";import{u as U,B as Q}from"./index-CjmLh_1m.js";import{B as W}from"./index-CUdllngZ.js";import{w as X,v as Z}from"./tenant.api-7xr32mep.js";import{cy as P,Y as ee,d as te}from"./index-BI6CMai0.js";import"./antd-vue-vendor-BPnV8VqP.js";import"./index-DeEq83Ov.js";import"./index-pxs5MULf.js";import"./index-BgYCgfME.js";import"./index-f8O7TghW.js";import"./useTimeout-DDl4l82I.js";import"./vxe-table-vendor-B88kchpX.js";import"./useIntersectionObserver-BMxdTqP3.js";import"./bem-EhXRi4nW.js";import"./props-D4vdsy3J.js";import"./useContextMenu-Cwx1lIOK.js";const le=Y({__name:"PackPermissionDrawer",emits:["register","success"],setup(N,{emit:_}){const y=_,g=f([]),d=f([]),a=f([]),w=f([]),p=f(""),i=f(null),u=f(!1),C=f([]),A=f(!1),[L,{setDrawerProps:b,closeDrawer:h}]=U(t=>T(null,null,function*(){yield G(),b({confirmLoading:!1,loading:!0}),p.value=t.packId;const e=yield X();g.value=B(e.treeList),d.value=e.ids;const o=localStorage.getItem(P);if(o){const l=JSON.parse(o);l.level&&D({key:l.level}),l.expand&&D({key:l.expand})}else C.value=e.ids;t.permissionIds&&(a.value=t.permissionIds.split(",")),b({loading:!1})}));function B(t){return t!=null&&t.length&&t.forEach(e=>{var o;if(e.slotTitle){const{t:l}=ee();e.slotTitle.includes("t('")&&l&&(e.slotTitle=new Function("t",`return ${e.slotTitle}`)(l))}(o=e.children)!=null&&o.length&&B(e.children)}),t}function V(t,e){if(A.value)a.value=t.checked?t.checked:t;else{const o=j(e.node,"children","key");if(e.checked)a.value=[...new Set([...a.value,...o])];else{const l=$(a.value,o);a.value=l}}}function $(t,e){const o={};for(const l of e)o[l]=!0;return t.filter(l=>!o[l])}function j(t,e,o){var I;const l=[];l.push(t[o]);const c=S=>{S.forEach(m=>{var K;l.push(m[o]),(K=m[e])!=null&&K.length&&c(m[e])})};return(I=t[e])!=null&&I.length&&c(t[e]),l}function G(){g.value=[],d.value=[],a.value=[],w.value=[],p.value=""}function J(){const t=v(i);if(!t)throw new Error("tree is null!");return t}function O(t){return T(this,null,function*(){var o;let e={id:v(p),permissionIds:v((o=J())==null?void 0:o.getCheckedKeys()).join(",")};u.value===!1&&(yield M(e)),t&&h()})}function M(t){return T(this,null,function*(){u.value=!0;try{yield Z(t),y("success")}catch(e){u.value=!1}setTimeout(()=>{u.value=!1},500)})}function D({key:t}){t==="checkAll"?a.value=d.value:t==="cancelCheck"?a.value=[]:t==="openAll"?(C.value=d.value,x("expand","openAll")):t==="closeAll"?(C.value=[],x("expand","closeAll")):t==="relation"?(A.value=!1,x("level","relation")):(A.value=!0,x("level","standAlone"))}const x=(t,e)=>{const o=localStorage.getItem(P),l=o?JSON.parse(o):{};l[t]=e,localStorage.setItem(P,JSON.stringify(l))};return(t,e)=>{const o=k("Icon"),l=k("a-button"),c=k("a-menu-item"),I=k("a-menu"),S=k("a-dropdown");return E(),R(v(Q),H(t.$attrs,{onRegister:v(L),width:"650px",destroyOnClose:"",showFooter:""}),{title:s(()=>[e[11]||(e[11]=r(" 权限配置 ",-1)),n(S,null,{overlay:s(()=>[n(I,{onClick:D},{default:s(()=>[n(c,{key:"checkAll"},{default:s(()=>[...e[3]||(e[3]=[r("选择全部",-1)])]),_:1}),n(c,{key:"cancelCheck"},{default:s(()=>[...e[4]||(e[4]=[r("取消选择",-1)])]),_:1}),e[9]||(e[9]=F("div",{class:"line"},null,-1)),n(c,{key:"openAll"},{default:s(()=>[...e[5]||(e[5]=[r("展开全部",-1)])]),_:1}),n(c,{key:"closeAll"},{default:s(()=>[...e[6]||(e[6]=[r("折叠全部",-1)])]),_:1}),e[10]||(e[10]=F("div",{class:"line"},null,-1)),n(c,{key:"relation"},{default:s(()=>[...e[7]||(e[7]=[r("层级关联",-1)])]),_:1}),n(c,{key:"standAlone"},{default:s(()=>[...e[8]||(e[8]=[r("层级独立",-1)])]),_:1})]),_:1})]),default:s(()=>[n(l,{class:"more-icon"},{default:s(()=>[e[2]||(e[2]=r(" 更多操作 ",-1)),n(o,{icon:"ant-design:down-outlined",size:"14px",style:{position:"relative",top:"1px",right:"5px"}})]),_:1})]),_:1})]),footer:s(()=>[n(l,{onClick:v(h)},{default:s(()=>[...e[12]||(e[12]=[r("取消",-1)])]),_:1},8,["onClick"]),n(l,{onClick:e[0]||(e[0]=m=>O(!1)),type:"primary",loading:u.value,ghost:"",style:{"margin-right":"0.8rem"}},{default:s(()=>[...e[13]||(e[13]=[r("仅保存",-1)])]),_:1},8,["loading"]),n(l,{onClick:e[1]||(e[1]=m=>O(!0)),type:"primary",loading:u.value},{default:s(()=>[...e[14]||(e[14]=[r("保存并关闭",-1)])]),_:1},8,["loading"])]),default:s(()=>[n(v(W),{ref_key:"treeRef",ref:i,checkable:"",treeData:g.value,checkedKeys:a.value,expandedKeys:C.value,selectedKeys:w.value,clickRowToExpand:!1,checkStrictly:!0,title:"所拥有的的权限",onCheck:V},{title:s(({slotTitle:m,ruleFlag:K})=>[r(z(m)+" ",1),K?(E(),R(o,{key:0,icon:"ant-design:align-left-outlined",style:{"margin-left":"5px",color:"red"}})):q("",!0)]),_:1},8,["treeData","checkedKeys","expandedKeys","selectedKeys"])]),_:1},16,["onRegister"])}}}),Ce=te(le,[["__scopeId","data-v-84a257e9"]]);export{Ce as default};
|