| 1 |
- import Ie from"./ContentContainer-DTYObT5L.js";import{_ as ge,B as be}from"./Modal-xOacY5AE.js";/* empty css */import"./index-DhKoY12H.js";import{C as J}from"./index-BJbCsCKB.js";import{S as $e}from"./index-Cf-t12mF.js";import{u as Z,s as w,o as C,A as n,D as l,P as R,j as r,w as O,L as ae,a as H,J as M,c as G,F as W,_ as le,I as P,U as ne,Z as Ne,r as xe,x as we,a9 as Re,B as Q}from"./vue-vendor-BOX7Kenj.js";import{M as E}from"./index-ugL_7kbA.js";import"./index-BgDRZce_.js";import{_ as X,M as se,H as A,u as Se,aC as De,B as Te,aD as oe}from"./index-_atq84Ji.js";import{A as Me,D as Be}from"./Action-Gzth8lbn.js";import{R as Fe,C as Pe,a as Ee,F as Oe}from"./index-CU2Ui3xA.js";import{T as Ae}from"./index-CQy-Lk9Z.js";import"./index-Cv88WlPC.js";import{I as Ue}from"./index-CoF0H4ok.js";import{S as ie}from"./index-BHTmVRE6.js";import{T as re}from"./index-BsGqlWxn.js";import"./index-CIpEbTAU.js";import{T as de}from"./index-8xG_TqDZ.js";import{_ as ze}from"./DeleteModal-Q4EbXz0d.js";import{Q as je}from"./resource-c5vW5eZd.js";import{a as Ke}from"./common-CzmKFV4g.js";import"./index-42YnQv79.js";import"./index-BlAITTqL.js";import"./index-B3rE5vt3.js";/* empty css *//* empty css */import"./index-DnLxEI07.js";import"./index-TzJgFsmL.js";import"./index.es-BW_FzNZC.js";import"./index-C8qH4TAY.js";import"./index-B4JT3Sd4.js";import"./get-value-by-path-5GE1jYEF.js";import"./resize-observer-BIIvGtO1.js";/* empty css *//* empty css */import"./index-B3z4cY-J.js";import"./responsive-observe-4ACH6YSC.js";import"./use-merge-state-CudXQmS1.js";import"./render-function-L9CkAxUA.js";const Le={__name:"RoleForm",props:{edit_form:Object,is_edit_mode:Boolean,roles:Array},setup(u){const S=u,{edit_form:s}=Z(S);return(h,I)=>{const T=Ue,y=Ee,x=Pe,m=Fe,i=Ae,f=Oe;return C(),w(f,{ref:"roleFormRef",model:R(s),"auto-label-width":""},{default:n(()=>[l(m,{gutter:24},{default:n(()=>[l(x,{span:22},{default:n(()=>[l(y,{field:"roleName",label:h.$t("permission.role.roleName"),rules:[{required:!0,message:h.$t("permission.role.roleNameRequired")}]},{default:n(()=>[l(T,{modelValue:R(s).roleName,"onUpdate:modelValue":I[0]||(I[0]=g=>R(s).roleName=g)},null,8,["modelValue"])]),_:1},8,["label","rules"])]),_:1})]),_:1}),l(m,{gutter:24},{default:n(()=>[l(x,{span:22},{default:n(()=>[l(y,{field:"remark",label:h.$t("permission.role.remark")},{default:n(()=>[l(i,{modelValue:R(s).remark,"onUpdate:modelValue":I[1]||(I[1]=g=>R(s).remark=g)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})]),_:1})]),_:1},8,["model"])}}},Qe={style:{display:"flex"}},He={style:{margin:"8px 0"}},Ve={__name:"PermissionConfigModal",props:{visible:Boolean,menu_list:{type:Array,default:()=>[]},record:Object},emits:["getActiveTab","close","ok"],setup(u,{emit:S}){const s=u,{visible:h,menu_list:I,record:T}=Z(s),y=S,x=r(null),m=r(["0"]),i=r([]),f=r([]),g=(t,o)=>{const v=o.node,_={menuId:v.menuId,menuName:v.menuName,children:v.children};if(o.checked){let p=function(k){f.value.push(k),k.children&&Array.isArray(k.children)&&k.children.forEach(d=>{p(d)})};p(_)}else{let k=function(d,c){d.children&&d.children.length>0&&d.children.forEach(z=>{const j=c.findIndex(V=>V.menuId===z.menuId);j!==-1&&(c.splice(j,1),k(z,c))})};const p=f.value.findIndex(d=>d.menuId===o.node.menuId);f.value.splice(p,1),k(o.node,f.value)}},D=()=>{y("cancel")},b=()=>{y("ok",i.value)};return O(()=>s.record,t=>{(t==null?void 0:t.resources.length)>0?(f.value=[],i.value=[],t.resources.forEach(o=>{f.value.push({menuId:o.menuId,menuName:o.menuName}),i.value.push(o.menuId),m.value.push(o.menuId)})):(f.value=[],i.value=[],m.value=["0"])},{immediate:!0}),O(()=>s.menu_list,t=>{t.length>0&&ae(()=>{x.value.expandAll()})}),(t,o)=>{const v=de,_=J,p=re,k=ie,d=se;return C(),w(d,{width:"50%",visible:R(h),"onUpdate:visible":o[2]||(o[2]=c=>ne(h)?h.value=c:null),title:t.$t("permission.role.permissionConfig"),onCancel:D,onOk:b},{default:n(()=>[H("div",Qe,[l(_,{class:"card-body",title:t.$t("permission.role.menuFunctions"),hoverable:""},{default:n(()=>[l(v,{data:R(I),ref_key:"treeRef",ref:x,"checked-keys":i.value,"onUpdate:checkedKeys":o[0]||(o[0]=c=>i.value=c),"expanded-keys":m.value,"onUpdate:expandedKeys":o[1]||(o[1]=c=>m.value=c),checkable:!0,"show-line":!0,onCheck:g,fieldNames:{key:"menuId",title:"menuName",children:"children"}},null,8,["data","checked-keys","expanded-keys"])]),_:1},8,["title"]),l(_,{class:"card-body",title:t.$t("permission.role.roleMenuPermissions")},{default:n(()=>[H("div",He,M(t.$t("permission.role.menuFunctions"))+":",1),l(k,{wrap:""},{default:n(()=>[(C(!0),G(W,null,le(f.value,c=>(C(),w(p,{key:c.menuId},{default:n(()=>[P(M(c.menuName),1)]),_:2},1024))),128))]),_:1})]),_:1},8,["title"])])]),_:1},8,["visible","title"])}}},qe=X(Ve,[["__scopeId","data-v-5f205e95"]]),Je={style:{display:"flex"}},Ze={__name:"DeptConfigModal",props:{visible:Boolean,dept_list:{type:Array,default:()=>[]},record:{type:Object,default:!1}},emits:["close","ok"],setup(u,{emit:S}){const s=u,{visible:h,dept_list:I,record:T}=Z(s),y=S,x=r(null),m=r([]),i=r([]),f=(t,o)=>{t.children&&t.children.length>0&&t.children.forEach(v=>{const _=o.findIndex(p=>p.deptId===v.deptId);_!==-1&&(o.splice(_,1),f(v,o))})},g=(t,o)=>{const v={deptId:o.node.deptId,deptName:o.node.deptName};if(o.checked)i.value.push(v);else{const _=i.value.findIndex(p=>p.deptId===o.node.deptId);i.value.splice(_,1),f(o.node,i.value)}},D=()=>{h.value=!1,y("close")},b=()=>{y("ok",m.value)};return O(()=>s.record,t=>{(t==null?void 0:t.dept.length)>0?(i.value=[],m.value=[],t.dept.forEach(o=>{i.value.push({deptId:o.deptId,deptName:o.deptName}),m.value.push(o.deptId)})):(i.value=[],m.value=[])}),O(()=>s.dept_list,t=>{t.length>0&&ae(()=>{x.value.expandAll()})}),(t,o)=>{const v=de,_=J,p=re,k=ie,d=se;return C(),w(d,{width:"50%",visible:R(h),"onUpdate:visible":o[1]||(o[1]=c=>ne(h)?h.value=c:null),title:t.$t("permission.role.deptConfig"),onCancel:D,onOk:b},{default:n(()=>[H("div",Je,[l(_,{class:"card-body",title:t.$t("permission.role.organization"),hoverable:""},{default:n(()=>[l(v,{data:R(I),ref_key:"treeRef",ref:x,"checked-keys":m.value,"onUpdate:checkedKeys":o[0]||(o[0]=c=>m.value=c),checkable:!0,"check-strictly":!0,"show-line":!0,onCheck:g,fieldNames:{key:"deptId",title:"deptName",children:"children"}},null,8,["data","checked-keys"])]),_:1},8,["title"]),l(_,{class:"card-body",title:t.$t("permission.role.roleDepartments")},{default:n(()=>[l(k,{wrap:""},{default:n(()=>[(C(!0),G(W,null,le(i.value,c=>(C(),w(p,{key:c.deptId},{default:n(()=>[P(M(c.deptName),1)]),_:2},1024))),128))]),_:1})]),_:1},8,["title"])])]),_:1},8,["visible","title"])}}},Ge=X(Ze,[["__scopeId","data-v-b129481d"]]),U="/api/role";function We(u){return A({url:`${U}/list`,method:"get",params:u})}function Xe(u){return A({url:`${U}/add_role`,method:"post",data:u})}function q(u){return A({url:`${U}/edit_role`,method:"put",data:u})}function Ye(u){return A({url:`${U}/change_status`,method:"put",data:u})}function et(u){return A({url:`${U}/delete_role/${u}`,method:"delete"})}const tt={class:"operation-btn-container"},ot={__name:"index",setup(u){const S=Ne(),{t:s,locale:h}=Se(),I=r(""),T=r(null),y=r(!1),x=r([]),m=r([{title:s("permission.role.serial_number"),width:130,slotName:"index"},{title:s("permission.role.roleName"),dataIndex:"roleName",width:600,titleSlotName:"roleName"},{title:s("permission.role.status"),dataIndex:"status",slotName:"status"},{title:s("permission.role.action"),dataIndex:"operation",width:500,fixed:"right",slotName:"operationSlot"}]),i=r({total:10,current:1,pageSize:15}),f=r("medium"),g=r(!1),D=r(!1),b=r(!1),t=xe({roleName:"",remark:""}),o=r(!1),v=r([]),_=r(!1),p=r(null),k=r([]),d=async()=>{const e={keyword:I.value,current:i.value.current,pageSize:i.value.pageSize};g.value=!0;const{code:a,data:$}=await We(e);a===200&&(i.value.total=$.total,x.value=$.rows),g.value=!1},c=e=>{I.value=e,d()},z=()=>{I.value="",d()},j=()=>{t.roleName="",t.remark="",b.value=!1,D.value=!0},V=()=>{d()},ce=e=>{i.value.current=e,d()},ue=async e=>{const a={roleId:e.roleId,status:e.status},{code:$}=await Ye(a);$===200&&E.success({title:"成功",content:"状态切换成功"})},Y=(e,a)=>{e&&(t.roleId=e.roleId,t.roleName=e.roleName,t.remark=e.remark,b.value=!0),D.value=a},ee=async(e,a)=>{e&&(t.roleId=e.roleId,p.value=e),o.value=a},me=async e=>{o.value=!1;const a={roleId:t.roleId,resources:e,editType:2},{code:$}=await q(a);$===200&&(E.success({title:"权限配置",content:"权限配置成功"}),d())},te=async(e,a)=>{e&&(t.roleId=e.roleId,p.value=e),_.value=a},pe=async e=>{_.value=!1;const a={roleId:t.roleId,depts:e,editType:3},{code:$}=await q(a);$===200&&(E.success({title:"部门配置",content:"部门配置成功"}),d())},fe=async e=>{const{code:a}=await et(e);a===200&&(E.success({title:"删除用户",content:"删除成功"}),d())},_e=async()=>{T.value.$refs.roleFormRef.validate&&T.value.$refs.roleFormRef.validate(async e=>{if(!e){D.value=!1;const a={roleId:b.value?t.roleId:void 0,roleName:t.roleName,editType:b.value?1:void 0,remark:t.remark},$=b.value?q:Xe,{code:B}=await $(a);if(B===200){const K=b.value?"编辑":"新增";E.success({title:`${K}用户`,content:`${K}成功`}),d()}}})},ve=e=>{f.value=e},he=async()=>{const{code:e,data:{rows:a}}=await je();e===200&&(v.value=oe(a))},ke=async()=>{const{code:e,data:{rows:a}}=await Ke();e==200&&(k.value=oe(a))},ye=e=>{t.roleId=e,y.value=!0},Ce=()=>{fe(t.roleId),y.value=!1};return O(()=>h.value,()=>{m.value=[{title:s("permission.role.serial_number"),width:130,slotName:"index"},{title:s("permission.role.roleName"),dataIndex:"roleName",width:600,titleSlotName:"roleName"},{title:s("permission.role.status"),dataIndex:"status",slotName:"status"},{title:s("permission.role.action"),dataIndex:"operation",width:500,fixed:"right",slotName:"operationSlot"}]}),we(()=>{De("system:role:list")?(d(),he(),ke()):S.push("/denied")}),(e,a)=>{const $=$e,B=Te,K=J,L=Re("hasPermi");return C(),G(W,null,[l(K,{class:"role-page-card"},{default:n(()=>[l(Me,{btn_text:e.$t("permission.role.add"),btn_permission:"system:role:add",onSearchClick:c,onResetClick:z,onCreateClick:j,onSizeChange:ve,onRefreshClick:V},null,8,["btn_text"]),l(Be,{data:x.value,columns:m.value,"row-key":"roleId",scroll:{y:"calc(100vh - 300px)"},size:f.value,loading:g.value,pagination:i.value,onPageChange:ce},{status:n(({record:N})=>[l($,{modelValue:N.status,"onUpdate:modelValue":F=>N.status=F,onChange:F=>ue(N),"checked-value":"1","unchecked-value":"0"},null,8,["modelValue","onUpdate:modelValue","onChange"])]),operationSlot:n(({record:N})=>[H("div",tt,[Q((C(),w(B,{type:"text",onClick:F=>Y(N,!0)},{default:n(()=>[P(M(e.$t("permission.edit")),1)]),_:2},1032,["onClick"])),[[L,"system:role:edit"]]),Q((C(),w(B,{type:"text",onClick:F=>ee(N,!0)},{default:n(()=>[P(M(e.$t("permission.role.permissionEdit")),1)]),_:2},1032,["onClick"])),[[L,"system:role:permissionEdit"]]),Q((C(),w(B,{type:"text",onClick:F=>te(N,!0)},{default:n(()=>[P(M(e.$t("permission.role.deptEdit")),1)]),_:2},1032,["onClick"])),[[L,"system:role:deptEdit"]]),Q((C(),w(B,{onClick:F=>ye(N.roleId,e.$t("permission.delete_confirm")),type:"text",status:"warning"},{default:n(()=>[P(M(e.$t("permission.delete")),1)]),_:2},1032,["onClick"])),[[L,"system:role:delete"]])])]),_:1},8,["data","columns","size","loading","pagination"])]),_:1}),l(ge,{visible:D.value,onOk:_e,onCancel:a[0]||(a[0]=N=>Y(null,!1)),title:b.value?e.$t("permission.role.edit"):e.$t("permission.role.add")},{default:n(()=>[l(Le,{ref_key:"roleForm",ref:T,edit_form:t,is_edit_mode:b.value},null,8,["edit_form","is_edit_mode"])]),_:1},8,["visible","title"]),l(qe,{visible:o.value,menu_list:v.value,record:p.value,onOk:me,onCancel:a[1]||(a[1]=N=>ee(null,!1))},null,8,["visible","menu_list","record"]),l(Ge,{visible:_.value,dept_list:k.value,record:p.value,onOk:pe,onCancel:a[2]||(a[2]=N=>te(null,!1))},null,8,["visible","dept_list","record"]),l(ze,{visible:y.value,onOk:Ce,onCancel:a[3]||(a[3]=N=>y.value=!1)},null,8,["visible"])],64)}}},at=X(ot,[["__scopeId","data-v-4ef72d41"]]),Qt={__name:"PermissionRole",setup(u){return(S,s)=>(C(),w(Ie,null,{default:n(()=>[l(be,{current_label:"角色"}),l(at)]),_:1}))}};export{Qt as default};
|