| 1 |
- import pe from"./ContentContainer-CoADvsY1.js";import{_ as fe,B as _e}from"./Modal-D_TG6pDn.js";import{ab as G,c as p,o as b,g as x,w as l,f as n,j as R,r as u,$ as V,Q as ae,e as H,t as T,d as J,F as W,q as oe,i as A,Z as le,A as F,u as ve,b as he,m as ke,ac as ye,a1 as ge,s as L,B,ad as te,M as Ce}from"./index-DA4TjoSG.js";import{A as be,D as Ie}from"./Action-DBDPO42M.js";import{_ as X}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{Q as $e}from"./resource-D7ovPZbN.js";import{a as Ne}from"./common-DRsDvfDu.js";const we={__name:"RoleForm",props:{edit_form:Object,is_edit_mode:Boolean,roles:Array},setup(_){const D=_,{edit_form:f}=G(D);return(v,$)=>{const O=p("a-input"),k=p("a-form-item"),N=p("a-col"),m=p("a-row"),s=p("a-textarea"),i=p("a-form");return b(),x(i,{ref:"roleFormRef",model:R(f),"auto-label-width":""},{default:l(()=>[n(m,{gutter:24},{default:l(()=>[n(N,{span:22},{default:l(()=>[n(k,{field:"roleName",label:v.$t("permission.role.roleName"),rules:[{required:!0,message:v.$t("permission.role.roleNameRequired")}]},{default:l(()=>[n(O,{modelValue:R(f).roleName,"onUpdate:modelValue":$[0]||($[0]=d=>R(f).roleName=d)},null,8,["modelValue"])]),_:1},8,["label","rules"])]),_:1})]),_:1}),n(m,{gutter:24},{default:l(()=>[n(N,{span:22},{default:l(()=>[n(k,{field:"remark",label:v.$t("permission.role.remark")},{default:l(()=>[n(s,{modelValue:R(f).remark,"onUpdate:modelValue":$[1]||($[1]=d=>R(f).remark=d)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})]),_:1})]),_:1},8,["model"])}}},xe={style:{display:"flex"}},Re={style:{margin:"8px 0"}},De={__name:"PermissionConfigModal",props:{visible:Boolean,menu_list:{type:Array,default:()=>[]},record:Object},emits:["getActiveTab","close","ok"],setup(_,{emit:D}){const f=_,{visible:v,menu_list:$,record:O}=G(f),k=D,N=u(null),m=u(["0"]),s=u([]),i=u([]),d=(a,t)=>{const h=t.node,r={menuId:h.menuId,menuName:h.menuName,children:h.children};if(t.checked){let y=function(g){i.value.push(g),g.children&&Array.isArray(g.children)&&g.children.forEach(C=>{y(C)})};y(r)}else{let g=function(C,c){C.children&&C.children.length>0&&C.children.forEach(z=>{const j=c.findIndex(Q=>Q.menuId===z.menuId);j!==-1&&(c.splice(j,1),g(z,c))})};const y=i.value.findIndex(C=>C.menuId===t.node.menuId);i.value.splice(y,1),g(t.node,i.value)}},S=()=>{k("cancel")},P=()=>{k("ok",s.value)};return V(()=>f.record,a=>{(a==null?void 0:a.resources.length)>0?(i.value=[],s.value=[],a.resources.forEach(t=>{i.value.push({menuId:t.menuId,menuName:t.menuName}),s.value.push(t.menuId),m.value.push(t.menuId)})):(i.value=[],s.value=[],m.value=["0"])}),V(()=>f.menu_list,a=>{a.length>0&&ae(()=>{N.value.expandAll()})}),(a,t)=>{const h=p("a-tree"),r=p("a-card"),y=p("a-tag"),g=p("a-space"),C=p("a-modal");return b(),x(C,{width:"50%",visible:R(v),"onUpdate:visible":t[2]||(t[2]=c=>le(v)?v.value=c:null),title:a.$t("permission.role.permissionConfig"),onCancel:S,onOk:P},{default:l(()=>[H("div",xe,[n(r,{class:"card-body",title:a.$t("permission.role.menuFunctions"),hoverable:""},{default:l(()=>[n(h,{data:R($),ref_key:"treeRef",ref:N,"checked-keys":s.value,"onUpdate:checkedKeys":t[0]||(t[0]=c=>s.value=c),"expanded-keys":m.value,"onUpdate:expandedKeys":t[1]||(t[1]=c=>m.value=c),checkable:!0,"show-line":!0,onCheck:d,fieldNames:{key:"menuId",title:"menuName",children:"children"}},null,8,["data","checked-keys","expanded-keys"])]),_:1},8,["title"]),n(r,{class:"card-body",title:a.$t("permission.role.roleMenuPermissions")},{default:l(()=>[H("div",Re,T(a.$t("permission.role.menuFunctions"))+":",1),n(g,{wrap:""},{default:l(()=>[(b(!0),J(W,null,oe(i.value,c=>(b(),x(y,{key:c.menuId},{default:l(()=>[A(T(c.menuName),1)]),_:2},1024))),128))]),_:1})]),_:1},8,["title"])])]),_:1},8,["visible","title"])}}},Se=X(De,[["__scopeId","data-v-b5f0f870"]]),Te={style:{display:"flex"}},Pe={__name:"DeptConfigModal",props:{visible:Boolean,dept_list:{type:Array,default:()=>[]},record:{type:Object,default:!1}},emits:["close","ok"],setup(_,{emit:D}){const f=_,{visible:v,dept_list:$,record:O}=G(f),k=D,N=u(null),m=u([]),s=u([]),i=(a,t)=>{a.children&&a.children.length>0&&a.children.forEach(h=>{const r=t.findIndex(y=>y.deptId===h.deptId);r!==-1&&(t.splice(r,1),i(h,t))})},d=(a,t)=>{const h={deptId:t.node.deptId,deptName:t.node.deptName};if(t.checked)s.value.push(h);else{const r=s.value.findIndex(y=>y.deptId===t.node.deptId);s.value.splice(r,1),i(t.node,s.value)}},S=()=>{v.value=!1,k("close")},P=()=>{k("ok",m.value)};return V(()=>f.record,a=>{(a==null?void 0:a.dept.length)>0?(s.value=[],m.value=[],a.dept.forEach(t=>{s.value.push({deptId:t.deptId,deptName:t.deptName}),m.value.push(t.deptId)})):(s.value=[],m.value=[])}),V(()=>f.dept_list,a=>{a.length>0&&ae(()=>{N.value.expandAll()})}),(a,t)=>{const h=p("a-tree"),r=p("a-card"),y=p("a-tag"),g=p("a-space"),C=p("a-modal");return b(),x(C,{width:"50%",visible:R(v),"onUpdate:visible":t[1]||(t[1]=c=>le(v)?v.value=c:null),title:a.$t("permission.role.deptConfig"),onCancel:S,onOk:P},{default:l(()=>[H("div",Te,[n(r,{class:"card-body",title:a.$t("permission.role.organization"),hoverable:""},{default:l(()=>[n(h,{data:R($),ref_key:"treeRef",ref:N,"checked-keys":m.value,"onUpdate:checkedKeys":t[0]||(t[0]=c=>m.value=c),checkable:!0,"check-strictly":!0,"show-line":!0,onCheck:d,fieldNames:{key:"deptId",title:"deptName",children:"children"}},null,8,["data","checked-keys"])]),_:1},8,["title"]),n(r,{class:"card-body",title:a.$t("permission.role.roleDepartments")},{default:l(()=>[n(g,{wrap:""},{default:l(()=>[(b(!0),J(W,null,oe(s.value,c=>(b(),x(y,{key:c.deptId},{default:l(()=>[A(T(c.deptName),1)]),_:2},1024))),128))]),_:1})]),_:1},8,["title"])])]),_:1},8,["visible","title"])}}},Ee=X(Pe,[["__scopeId","data-v-51203b7c"]]),U="/api/role";function Me(_){return F({url:`${U}/list`,method:"get",params:_})}function Ae(_){return F({url:`${U}/add_role`,method:"post",data:_})}function Z(_){return F({url:`${U}/edit_role`,method:"put",data:_})}function Oe(_){return F({url:`${U}/change_status`,method:"put",data:_})}function Be(_){return F({url:`${U}/delete_role/${_}`,method:"delete"})}const Fe={class:"operation-btn-container"},Ue={__name:"index",setup(_){const D=ve(),f=u(""),v=u(null),$=u([]),O=u([{title:"序号",width:80,slotName:"index"},{title:"角色名",dataIndex:"roleName",width:600,titleSlotName:"roleName"},{title:"状态",dataIndex:"status",slotName:"status"},{title:"操作",dataIndex:"operation",width:300,fixed:"right",slotName:"operationSlot"}]),k=u({total:10,current:1,pageSize:12}),N=u("medium"),m=u(!1),s=u(!1),i=u(!1),d=he({roleName:"",remark:""}),S=u(!1),P=u([]),a=u(!1),t=u(null),h=u([]),r=async()=>{const e={keyword:f.value,current:k.value.current,pageSize:k.value.pageSize};m.value=!0;const{code:o,data:I}=await Me(e);o===200&&(k.value.total=I.total,$.value=I.rows),m.value=!1},y=e=>{f.value=e,r()},g=()=>{f.value="",r()},C=()=>{d.roleName="",d.remark="",i.value=!1,s.value=!0},c=()=>{r()},z=e=>{k.value.current=e,r()},j=async e=>{const o={roleId:e.roleId,status:e.status},{code:I}=await Oe(o);I===200&&B.success({title:"成功",content:"状态切换成功"})},Q=(e,o)=>{e&&(d.roleId=e.roleId,d.roleName=e.roleName,d.remark=e.remark,i.value=!0),s.value=o},Y=async(e,o)=>{e&&(d.roleId=e.roleId,t.value=e),S.value=o},ne=async e=>{S.value=!1;const o={roleId:d.roleId,resources:e,editType:2},{code:I}=await Z(o);I===200&&(B.success({title:"权限配置",content:"权限配置成功"}),r())},ee=async(e,o)=>{e&&(d.roleId=e.roleId,t.value=e),a.value=o},se=async e=>{a.value=!1;const o={roleId:d.roleId,depts:e,editType:3},{code:I}=await Z(o);I===200&&(B.success({title:"部门配置",content:"部门配置成功"}),r())},ie=async e=>{const{code:o}=await Be(e);o===200&&(B.success({title:"删除用户",content:"删除成功"}),r())},re=async()=>{v.value.$refs.roleFormRef.validate&&v.value.$refs.roleFormRef.validate(async e=>{if(!e){s.value=!1;const o={roleId:i.value?d.roleId:void 0,roleName:d.roleName,editType:i.value?1:void 0,remark:d.remark},I=i.value?Z:Ae,{code:E}=await I(o);if(E===200){const K=i.value?"编辑":"新增";B.success({title:`${K}用户`,content:`${K}成功`}),r()}}})},de=e=>{N.value=e},ce=async()=>{const{code:e,data:{rows:o}}=await $e();e===200&&(P.value=te(o))},ue=async()=>{const{code:e,data:{rows:o}}=await Ne();e==200&&(h.value=te(o))},me=(e,o)=>{Ce.warning({title:o,okText:"确定",cancelText:"取消",hideCancel:!1,onOk(){ie(e)}})};return ke(()=>{ye("system:role:list")?(r(),ce(),ue()):D.push("/noPer")}),(e,o)=>{const I=p("a-switch"),E=p("a-button"),K=p("a-card"),q=ge("hasPermi");return b(),J(W,null,[n(K,{class:"role-page-card"},{default:l(()=>[n(be,{btn_text:e.$t("permission.role.add"),btn_permission:"system:role:add",onSearchClick:y,onResetClick:g,onCreateClick:C,onSizeChange:de,onRefreshClick:c},null,8,["btn_text"]),n(Ie,{data:$.value,columns:O.value,"row-key":"roleId",size:N.value,loading:m.value,pagination:k.value,onPageChange:z},{status:l(({record:w})=>[n(I,{modelValue:w.status,"onUpdate:modelValue":M=>w.status=M,onChange:M=>j(w),"checked-value":"1","unchecked-value":"0"},null,8,["modelValue","onUpdate:modelValue","onChange"])]),operationSlot:l(({record:w})=>[H("div",Fe,[L((b(),x(E,{type:"text",onClick:M=>Q(w,!0)},{default:l(()=>[A(T(e.$t("permission.role.edit")),1)]),_:2},1032,["onClick"])),[[q,"system:role:edit"]]),L((b(),x(E,{type:"text",onClick:M=>Y(w,!0)},{default:l(()=>[A(T(e.$t("permission.role.permissionEdit")),1)]),_:2},1032,["onClick"])),[[q,"system:role:permissionEdit"]]),L((b(),x(E,{type:"text",onClick:M=>ee(w,!0)},{default:l(()=>[A(T(e.$t("permission.role.deptEdit")),1)]),_:2},1032,["onClick"])),[[q,"system:role:deptEdit"]]),L((b(),x(E,{onClick:M=>me(w.roleId,e.$t("permission.delete_confirm")),type:"text",status:"warning"},{default:l(()=>[A(T(e.$t("permission.role.delete")),1)]),_:2},1032,["onClick"])),[[q,"system:role:delete"]])])]),_:1},8,["data","columns","size","loading","pagination"])]),_:1}),n(fe,{visible:s.value,onOk:re,onCancel:o[0]||(o[0]=w=>Q(null,!1)),title:i.value?e.$t("permission.role.edit"):e.$t("permission.role.add")},{default:l(()=>[n(we,{ref_key:"roleForm",ref:v,edit_form:d,is_edit_mode:i.value},null,8,["edit_form","is_edit_mode"])]),_:1},8,["visible","title"]),n(Se,{visible:S.value,menu_list:P.value,record:t.value,onOk:ne,onCancel:o[1]||(o[1]=w=>Y(null,!1))},null,8,["visible","menu_list","record"]),n(Ee,{visible:a.value,dept_list:h.value,record:t.value,onOk:se,onCancel:o[2]||(o[2]=w=>ee(null,!1))},null,8,["visible","dept_list","record"])],64)}}},ze=X(Ue,[["__scopeId","data-v-3d3d2fa7"]]),Ze={__name:"PermissionRole",setup(_){return(D,f)=>(b(),x(pe,null,{default:l(()=>[n(_e,{current_label:"角色"}),n(ze)]),_:1}))}};export{Ze as default};
|