Files
qhmes/web-dist/js/DepartRoleAuthDrawer-BVO57uyp.js
2026-06-16 18:19:57 +08:00

2 lines
5.7 KiB
Java

var E=(F,O,s)=>new Promise((g,m)=>{var v=r=>{try{d(s.next(r))}catch(_){m(_)}},n=r=>{try{d(s.throw(r))}catch(_){m(_)}},d=r=>r.done?g(r.value):Promise.resolve(r.value).then(v,n);d((s=s.apply(F,O)).next())});import{B as X}from"./index-Bzmv9Ie7.js";import{B as Z}from"./index-D9GWo192.js";import{ad as ee,s as te,aH as oe,bL as ae,aR as le,aS as ne,e4 as N,e2 as se,au as re}from"./index-X7Y8jykP.js";import{_ as ie}from"./DepartRoleDataRuleDrawer.vue_vue_type_script_setup_true_lang-JuqDEWQf.js";import{j as ce,k as ue,m as pe}from"./depart.user.api-ge_koYK4.js";import{u as me,a as de}from"./useDrawer-BDPywy9W.js";import"./index-CfNJyBRj.js";import{D as fe}from"./dropdown-jkliuVyN.js";import{e as ve,C as _e,z as I,f as i,A as l,u as c,r as u,F as ye,K as M,Q as S,y as B,H as ge,G as f,E as p}from"./vue-vendor-DNhG1Cve.js";import"./index-BzChaRPg.js";import"./bem-CTsBfXqP.js";import"./emoji-mart-vue-fast-R0uJEDq-.js";import"./props-Cc-8EPhZ.js";import"./fromPairs-Dx9PT-t0.js";import"./index-ByCwbQDV.js";import"./index-Upeu4GGa.js";import"./index-C4wWpZeQ.js";import"./useTimeout-D5AmIBZw.js";import"./index-M9QP6cvf.js";import"./Skeleton-CimgOdM7.js";import"./useScrollTo-0FPEw5-K.js";import"./useIntersectionObserver-BGOgyKyu.js";import"./useContextMenu-BncvQCmV.js";import"./index-saD4h7VJ.js";import"./difference-CGvbIcA7.js";import"./index-C7ckZv9Z.js";import"./DirectoryTree-nk_YTTIy.js";import"./FolderOpenOutlined-SzIPA7z0.js";import"./index-Cl-8Hzo4.js";import"./useMaxLevel-DE205ncc.js";import"./eagerComputed-BTlOruLW.js";import"./index-BuONesFs.js";import"./ArrowLeftOutlined-B3JgaWh-.js";import"./index-DZJwICFr.js";import"./isNumeric-DjvBa-1E.js";import"./index-DSsDi_fL.js";import"./Group-UHkub2tu.js";import"./Checkbox-Dbxs4we4.js";import"./index-CuWaQdlK.js";import"./index-DO7ZhK45.js";const ke=ve({__name:"DepartRoleAuthDrawer",emits:["register"],setup(F){const{createMessage:O}=te(),s=u(!1),g=u(""),m=u(""),v=u([]),n=u([]),d=u([]),r=u([]),_=u([]),x=u([]),C=u(!1),{t:y}=ee(),[V,{closeDrawer:H}]=me(e=>{m.value=e.record.id,g.value=e.record.departId,j({success:t=>{const a=localStorage.getItem(N);if(a){const o=JSON.parse(a);o.level&&K({key:o.level}),o.expand&&K({key:o.expand})}}})}),[J,P]=de();function j(){return E(this,arguments,function*(e={}){var t;try{s.value=!0;const{ids:a,treeList:o}=yield ue({departId:g.value});a.length>0?(x.value=a,(t=e.success)==null||t.call(e,a),v.value=se(o),n.value=yield pe({roleId:m.value}),d.value=[n.value]):R()}finally{s.value=!1}})}function R(){v.value=[],r.value=[],n.value=[],d.value=[],s.value=!1}function $(e,t){if(C.value)n.value=e.checked?e.checked:e;else{const a=G(t.node,"children","key");if(t.checked)n.value=[...new Set([...n.value,...a])];else{const o=q(n.value,a);n.value=o}}}function q(e,t){const a={};for(const o of t)a[o]=!0;return e.filter(o=>!a[o])}function G(e,t,a){var w;const o=[];o.push(e[a]);const h=T=>{T.forEach(k=>{var A;o.push(k[a]),(A=k[t])!=null&&A.length&&h(k[t])})};return(w=e[t])!=null&&w.length&&h(e[t]),o}function U(e){r.value=e}function z(e,{selectedNodes:t}){var a;if((a=t[0])!=null&&a.ruleFlag){let o=e[0];P.openDrawer(!0,{roleId:m,departId:g,functionId:o})}_.value=[]}function Q(){R(),H()}function Y(){R()}function L(e){return E(this,null,function*(){try{s.value=!0;let t={roleId:m.value,permissionIds:n.value.join(","),lastpermissionIds:d.value.join(",")};yield ce(t),e&&Q()}finally{s.value=!1,e||j()}})}function K({key:e}){e==="checkAll"?n.value=x.value:e==="cancelCheck"?n.value=[]:e==="openAll"?(r.value=x.value,D("expand","openAll")):e==="closeAll"?(r.value=[],D("expand","closeAll")):e==="relation"?(C.value=!1,D("level","relation")):(C.value=!0,D("level","standAlone"))}const D=(e,t)=>{const a=localStorage.getItem(N),o=a?JSON.parse(a):{};o[e]=t,localStorage.setItem(N,JSON.stringify(o))};return(e,t)=>{const a=M("Icon"),o=ne,h=le,w=fe,T=ae,k=oe,A=M("a-button");return I(),_e(ye,null,[i(c(Z),{width:650,loading:s.value,showFooter:"",okText:"保存并关闭",onOk:t[1]||(t[1]=b=>L(!0)),onClose:Y,onRegister:c(V)},{title:l(()=>[t[4]||(t[4]=p(" 部门角色权限配置 ",-1)),i(w,null,{overlay:l(()=>[i(h,{onClick:K},{default:l(()=>[i(o,{key:"checkAll"},{default:l(()=>[p(f(c(y)("component.tree.selectAll")),1)]),_:1}),i(o,{key:"cancelCheck"},{default:l(()=>[p(f(c(y)("component.tree.unSelectAll")),1)]),_:1}),t[2]||(t[2]=S("div",{class:"line"},null,-1)),i(o,{key:"openAll"},{default:l(()=>[p(f(c(y)("component.tree.expandAll")),1)]),_:1}),i(o,{key:"closeAll"},{default:l(()=>[p(f(c(y)("component.tree.unExpandAll")),1)]),_:1}),t[3]||(t[3]=S("div",{class:"line"},null,-1)),i(o,{key:"relation"},{default:l(()=>[p(f(c(y)("component.tree.checkStrictly")),1)]),_:1}),i(o,{key:"standAlone"},{default:l(()=>[p(f(c(y)("component.tree.checkUnStrictly")),1)]),_:1})]),_:1})]),default:l(()=>[i(a,{icon:"ant-design:more-outlined",class:"more-icon"})]),_:1})]),centerFooter:l(()=>[i(A,{type:"primary",loading:s.value,ghost:"",onClick:t[0]||(t[0]=b=>L(!1))},{default:l(()=>[...t[5]||(t[5]=[p("仅保存",-1)])]),_:1},8,["loading"])]),default:l(()=>[S("div",null,[i(k,{spinning:s.value},{default:l(()=>[v.value.length>0?(I(),B(c(X),{key:0,title:"所拥有的部门权限",checkable:"",treeData:v.value,checkedKeys:n.value,selectedKeys:_.value,expandedKeys:r.value,checkStrictly:!0,clickRowToExpand:!1,onCheck:$,onExpand:U,onSelect:z},{title:l(({slotTitle:b,ruleFlag:W})=>[S("span",null,f(b),1),W?(I(),B(a,{key:0,icon:"ant-design:align-left-outlined",style:{"margin-left":"5px",color:"red"}})):ge("",!0)]),_:1},8,["treeData","checkedKeys","selectedKeys","expandedKeys"])):(I(),B(T,{key:1,description:"无可配置部门权限"}))]),_:1},8,["spinning"])])]),_:1},8,["loading","onRegister"]),i(ie,{onRegister:c(J)},null,8,["onRegister"])],64)}}}),rt=re(ke,[["__scopeId","data-v-f27f20bd"]]);export{rt as default};