2 lines
4.9 KiB
Java
2 lines
4.9 KiB
Java
var B=(O,j,s)=>new Promise((k,p)=>{var y=r=>{try{f(s.next(r))}catch(_){p(_)}},o=r=>{try{f(s.throw(r))}catch(_){p(_)}},f=r=>r.done?k(r.value):Promise.resolve(r.value).then(y,o);f((s=s.apply(O,j)).next())});import{d as X,ah as m,ar as Z,as as x,F as ee,k as c,u,f as i,aF as n,au as C,aC as E,ag as te,av as v,G as d}from"./vue-vendor-C7Zq48Yl.js";import{B as ae}from"./index-CUdllngZ.js";import{u as le,a as ne,B as oe}from"./index-CjmLh_1m.js";import{Y as se,u as re,cp as F,cm as ce,d as ue}from"./index-BI6CMai0.js";import ie from"./DepartRoleDataRuleDrawer-CGOqZ83j.js";import{a as de,b as pe,c as fe}from"./depart.user.api-Bund-856.js";import"./antd-vue-vendor-BPnV8VqP.js";import"./index-DeEq83Ov.js";import"./bem-EhXRi4nW.js";import"./vxe-table-vendor-B88kchpX.js";import"./props-D4vdsy3J.js";import"./index-pxs5MULf.js";import"./index-BgYCgfME.js";import"./index-f8O7TghW.js";import"./useTimeout-DDl4l82I.js";import"./useIntersectionObserver-BMxdTqP3.js";import"./useContextMenu-Cwx1lIOK.js";const me=X({__name:"DepartRoleAuthDrawer",emits:["register"],setup(O){const{createMessage:j}=re(),s=i(!1),k=i(""),p=i(""),y=i([]),o=i([]),f=i([]),r=i([]),_=i([]),S=i([]),R=i(!1),{t:g}=se(),[V,{closeDrawer:J}]=le(e=>{p.value=e.record.id,k.value=e.record.departId,L({success:t=>{const l=localStorage.getItem(F);if(l){const a=JSON.parse(l);a.level&&T({key:a.level}),a.expand&&T({key:a.expand})}}})}),[P,$]=ne();function L(){return B(this,arguments,function*(e={}){var t;try{s.value=!0;const{ids:l,treeList:a}=yield de({departId:k.value});l.length>0?(S.value=l,(t=e.success)==null||t.call(e,l),y.value=ce(a),o.value=yield pe({roleId:p.value}),f.value=[o.value]):K()}finally{s.value=!1}})}function K(){y.value=[],r.value=[],o.value=[],f.value=[],s.value=!1}function q(e,t){if(R.value)o.value=e.checked?e.checked:e;else{const l=U(t.node,"children","key");if(t.checked)o.value=[...new Set([...o.value,...l])];else{const a=G(o.value,l);o.value=a}}}function G(e,t){const l={};for(const a of t)l[a]=!0;return e.filter(a=>!l[a])}function U(e,t,l){var A;const a=[];a.push(e[l]);const w=b=>{b.forEach(D=>{var I;a.push(D[l]),(I=D[t])!=null&&I.length&&w(D[t])})};return(A=e[t])!=null&&A.length&&w(e[t]),a}function Y(e){r.value=e}function H(e,{selectedNodes:t}){var l;if((l=t[0])!=null&&l.ruleFlag){let a=e[0];$.openDrawer(!0,{roleId:p,departId:k,functionId:a})}_.value=[]}function z(){K(),J()}function Q(){K()}function M(e){return B(this,null,function*(){try{s.value=!0;let t={roleId:p.value,permissionIds:o.value.join(","),lastpermissionIds:f.value.join(",")};yield fe(t),e&&z()}finally{s.value=!1,e||L()}})}function T({key:e}){e==="checkAll"?o.value=S.value:e==="cancelCheck"?o.value=[]:e==="openAll"?(r.value=S.value,h("expand","openAll")):e==="closeAll"?(r.value=[],h("expand","closeAll")):e==="relation"?(R.value=!1,h("level","relation")):(R.value=!0,h("level","standAlone"))}const h=(e,t)=>{const l=localStorage.getItem(F),a=l?JSON.parse(l):{};a[e]=t,localStorage.setItem(F,JSON.stringify(a))};return(e,t)=>{const l=m("Icon"),a=m("a-menu-item"),w=m("a-menu"),A=m("a-dropdown"),b=m("a-empty"),D=m("a-spin"),I=m("a-button");return x(),Z(ee,null,[c(u(oe),{width:650,loading:s.value,showFooter:"",okText:"保存并关闭",onOk:t[1]||(t[1]=N=>M(!0)),onClose:Q,onRegister:u(V)},{title:n(()=>[t[4]||(t[4]=d(" 部门角色权限配置 ",-1)),c(A,null,{overlay:n(()=>[c(w,{onClick:T},{default:n(()=>[c(a,{key:"checkAll"},{default:n(()=>[d(v(u(g)("component.tree.selectAll")),1)]),_:1}),c(a,{key:"cancelCheck"},{default:n(()=>[d(v(u(g)("component.tree.unSelectAll")),1)]),_:1}),t[2]||(t[2]=C("div",{class:"line"},null,-1)),c(a,{key:"openAll"},{default:n(()=>[d(v(u(g)("component.tree.expandAll")),1)]),_:1}),c(a,{key:"closeAll"},{default:n(()=>[d(v(u(g)("component.tree.unExpandAll")),1)]),_:1}),t[3]||(t[3]=C("div",{class:"line"},null,-1)),c(a,{key:"relation"},{default:n(()=>[d(v(u(g)("component.tree.checkStrictly")),1)]),_:1}),c(a,{key:"standAlone"},{default:n(()=>[d(v(u(g)("component.tree.checkUnStrictly")),1)]),_:1})]),_:1})]),default:n(()=>[c(l,{icon:"ant-design:more-outlined",class:"more-icon"})]),_:1})]),centerFooter:n(()=>[c(I,{type:"primary",loading:s.value,ghost:"",onClick:t[0]||(t[0]=N=>M(!1))},{default:n(()=>[...t[5]||(t[5]=[d("仅保存",-1)])]),_:1},8,["loading"])]),default:n(()=>[C("div",null,[c(D,{spinning:s.value},{default:n(()=>[y.value.length>0?(x(),E(u(ae),{key:0,title:"所拥有的部门权限",checkable:"",treeData:y.value,checkedKeys:o.value,selectedKeys:_.value,expandedKeys:r.value,checkStrictly:!0,clickRowToExpand:!1,onCheck:q,onExpand:Y,onSelect:H},{title:n(({slotTitle:N,ruleFlag:W})=>[C("span",null,v(N),1),W?(x(),E(l,{key:0,icon:"ant-design:align-left-outlined",style:{"margin-left":"5px",color:"red"}})):te("",!0)]),_:1},8,["treeData","checkedKeys","selectedKeys","expandedKeys"])):(x(),E(b,{key:1,description:"无可配置部门权限"}))]),_:1},8,["spinning"])])]),_:1},8,["loading","onRegister"]),c(ie,{onRegister:u(P)},null,8,["onRegister"])],64)}}}),Be=ue(me,[["__scopeId","data-v-f27f20bd"]]);export{Be as default};
|