import{b as He,I as Ge,r as s,v as Je,O as We,d as r,M as fe,o as p,g as B,z as y,N as X,l as o,k as t,f as a,m as ce,F as Z,G as ee,e as g,B as S,n as i,i as F,t as ve,j as O,K as Xe,L as Y}from"./index-B2CLdTeJ.js";import{l as Ze,g as ye,d as el,e as ll,u as tl,f as ol,h as al,i as nl}from"./role-DKU6cIf0.js";import{t as ul,r as dl}from"./menu-tD_T6l-L.js";const rl={class:"app-container"},sl={class:"dialog-footer"},il={class:"dialog-footer"},ml=Xe({name:"Role"}),yl=Object.assign(ml,{setup(pl){const ge=He(),{proxy:v}=Ge(),{sys_normal_disable:le}=v.useDict("sys_normal_disable"),te=s([]),k=s(!1),Q=s(!0),T=s(!0),j=s([]),oe=s(!0),ae=s(!0),H=s(0),N=s(""),U=s([]),I=s([]),$=s(!1),M=s(!1),q=s(!0),A=s(!1),E=s([]),w=s(!1),b=s(null),V=s(null),ke=s([{value:"1",label:"全部数据权限"},{value:"2",label:"自定数据权限"},{value:"3",label:"本部门数据权限"},{value:"4",label:"本部门及以下数据权限"},{value:"5",label:"仅本人数据权限"}]),be=Je({form:{},queryParams:{pageNum:1,pageSize:10,roleName:void 0,roleKey:void 0,status:void 0},rules:{roleName:[{required:!0,message:"角色名称不能为空",trigger:"blur"}],roleKey:[{required:!0,message:"权限字符不能为空",trigger:"blur"}],roleSort:[{required:!0,message:"角色顺序不能为空",trigger:"blur"}]}}),{queryParams:f,form:u,rules:Ve}=We(be);function C(){Q.value=!0,Ze(v.addDateRange(f.value,U.value)).then(n=>{te.value=n.rows,H.value=n.total,Q.value=!1})}function P(){f.value.pageNum=1,C()}function Ce(){U.value=[],v.resetForm("queryRef"),P()}function ne(n){const e=n.roleId||j.value;v.$modal.confirm('是否确认删除角色编号为"'+e+'"的数据项?').then(function(){return el(e)}).then(()=>{C(),v.$modal.msgSuccess("删除成功")}).catch(()=>{})}function he(){v.download("system/role/export",{...f.value},`role_${new Date().getTime()}.xlsx`)}function _e(n){j.value=n.map(e=>e.roleId),oe.value=n.length!=1,ae.value=!n.length}function Se(n){let e=n.status==="0"?"启用":"停用";v.$modal.confirm('确认要"'+e+'""'+n.roleName+'"角色吗?').then(function(){return ll(n.roleId,n.status)}).then(()=>{v.$modal.msgSuccess(e+"成功")}).catch(function(){n.status=n.status==="0"?"1":"0"})}function we(n){ge.push("/system/role-auth/user/"+n.roleId)}function xe(){ul().then(n=>{I.value=n.data})}function Ke(){let n=V.value.getCheckedKeys(),e=V.value.getHalfCheckedKeys();return n.unshift.apply(n,e),n}function R(){b.value!=null&&b.value.setCheckedKeys([]),$.value=!1,M.value=!1,q.value=!0,A.value=!1,u.value={roleId:void 0,roleName:void 0,roleKey:void 0,roleSort:0,status:"0",menuIds:[],deptIds:[],menuCheckStrictly:!0,deptCheckStrictly:!0,remark:void 0},v.resetForm("roleRef")}function Ne(){R(),xe(),k.value=!0,N.value="添加角色"}function ue(n){R();const e=n.roleId||j.value,m=Ue(e);ye(e).then(d=>{u.value=d.data,u.value.roleSort=Number(u.value.roleSort),k.value=!0,Y(()=>{m.then(L=>{L.checkedKeys.forEach(J=>{Y(()=>{b.value.setChecked(J,!0,!1)})})})})}),N.value="修改角色"}function Ue(n){return dl(n).then(e=>(I.value=e.menus,e))}function Ie(n){return nl(n).then(e=>(E.value=e.depts,e))}function de(n,e){if(e=="menu"){let m=I.value;for(let d=0;d{n&&(u.value.roleId!=null?(u.value.menuIds=ie(),tl(u.value).then(()=>{v.$modal.msgSuccess("修改成功"),k.value=!1,C()})):(u.value.menuIds=ie(),ol(u.value).then(()=>{v.$modal.msgSuccess("新增成功"),k.value=!1,C()})))})}function De(){k.value=!1,R()}function Te(n){n!=="2"&&V.value.setCheckedKeys([])}function $e(n){R();const e=Ie(n.roleId);ye(n.roleId).then(m=>{u.value=m.data,w.value=!0,Y(()=>{e.then(d=>{Y(()=>{V.value&&V.value.setCheckedKeys(d.checkedKeys)})})})}),N.value="分配数据权限"}function Me(){u.value.roleId!=null&&(u.value.deptIds=Ke(),al(u.value).then(()=>{v.$modal.msgSuccess("修改成功"),w.value=!1,C()}))}function qe(){w.value=!1,R()}return C(),(n,e)=>{const m=r("el-input"),d=r("el-form-item"),L=r("el-option"),G=r("el-select"),J=r("el-date-picker"),c=r("el-button"),W=r("el-form"),z=r("el-col"),Ae=r("right-toolbar"),Ee=r("el-row"),h=r("el-table-column"),Pe=r("el-switch"),D=r("el-tooltip"),Le=r("el-table"),ze=r("pagination"),Be=r("question-filled"),Fe=r("el-icon"),Oe=r("el-input-number"),Ye=r("el-radio"),Qe=r("el-radio-group"),x=r("el-checkbox"),me=r("el-tree"),pe=r("el-dialog"),_=fe("hasPermi"),je=fe("loading");return p(),B("div",rl,[y(t(W,{model:o(f),ref:"queryRef",inline:!0,"label-width":"68px"},{default:a(()=>[t(d,{label:"角色名称",prop:"roleName"},{default:a(()=>[t(m,{modelValue:o(f).roleName,"onUpdate:modelValue":e[0]||(e[0]=l=>o(f).roleName=l),placeholder:"请输入角色名称",clearable:"",style:{width:"240px"},onKeyup:ce(P,["enter"])},null,8,["modelValue"])]),_:1}),t(d,{label:"权限字符",prop:"roleKey"},{default:a(()=>[t(m,{modelValue:o(f).roleKey,"onUpdate:modelValue":e[1]||(e[1]=l=>o(f).roleKey=l),placeholder:"请输入权限字符",clearable:"",style:{width:"240px"},onKeyup:ce(P,["enter"])},null,8,["modelValue"])]),_:1}),t(d,{label:"状态",prop:"status"},{default:a(()=>[t(G,{modelValue:o(f).status,"onUpdate:modelValue":e[2]||(e[2]=l=>o(f).status=l),placeholder:"角色状态",clearable:"",style:{width:"240px"}},{default:a(()=>[(p(!0),B(Z,null,ee(o(le),l=>(p(),g(L,{key:l.value,label:l.label,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(d,{label:"创建时间",style:{width:"308px"}},{default:a(()=>[t(J,{modelValue:o(U),"onUpdate:modelValue":e[3]||(e[3]=l=>S(U)?U.value=l:null),"value-format":"YYYY-MM-DD",type:"daterange","range-separator":"-","start-placeholder":"开始日期","end-placeholder":"结束日期"},null,8,["modelValue"])]),_:1}),t(d,null,{default:a(()=>[t(c,{type:"primary",icon:"Search",onClick:P},{default:a(()=>[...e[29]||(e[29]=[i("搜索",-1)])]),_:1}),t(c,{icon:"Refresh",onClick:Ce},{default:a(()=>[...e[30]||(e[30]=[i("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"]),[[X,o(T)]]),t(Ee,{gutter:10,class:"mb8"},{default:a(()=>[t(z,{span:1.5},{default:a(()=>[y((p(),g(c,{type:"primary",plain:"",icon:"Plus",onClick:Ne},{default:a(()=>[...e[31]||(e[31]=[i("新增",-1)])]),_:1})),[[_,["system:role:add"]]])]),_:1}),t(z,{span:1.5},{default:a(()=>[y((p(),g(c,{type:"success",plain:"",icon:"Edit",disabled:o(oe),onClick:ue},{default:a(()=>[...e[32]||(e[32]=[i("修改",-1)])]),_:1},8,["disabled"])),[[_,["system:role:edit"]]])]),_:1}),t(z,{span:1.5},{default:a(()=>[y((p(),g(c,{type:"danger",plain:"",icon:"Delete",disabled:o(ae),onClick:ne},{default:a(()=>[...e[33]||(e[33]=[i("删除",-1)])]),_:1},8,["disabled"])),[[_,["system:role:remove"]]])]),_:1}),t(z,{span:1.5},{default:a(()=>[y((p(),g(c,{type:"warning",plain:"",icon:"Download",onClick:he},{default:a(()=>[...e[34]||(e[34]=[i("导出",-1)])]),_:1})),[[_,["system:role:export"]]])]),_:1}),t(Ae,{showSearch:o(T),"onUpdate:showSearch":e[4]||(e[4]=l=>S(T)?T.value=l:null),onQueryTable:C},null,8,["showSearch"])]),_:1}),y((p(),g(Le,{data:o(te),onSelectionChange:_e},{default:a(()=>[t(h,{type:"selection",width:"55",align:"center"}),t(h,{label:"角色编号",prop:"roleId",width:"120"}),t(h,{label:"角色名称",prop:"roleName","show-overflow-tooltip":!0,width:"150"}),t(h,{label:"权限字符",prop:"roleKey","show-overflow-tooltip":!0,width:"150"}),t(h,{label:"显示顺序",prop:"roleSort",width:"100"}),t(h,{label:"状态",align:"center",width:"100"},{default:a(l=>[t(Pe,{modelValue:l.row.status,"onUpdate:modelValue":K=>l.row.status=K,"active-value":"0","inactive-value":"1",onChange:K=>Se(l.row)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1}),t(h,{label:"创建时间",align:"center",prop:"createTime"},{default:a(l=>[F("span",null,ve(n.parseTime(l.row.createTime)),1)]),_:1}),t(h,{label:"操作",align:"center","class-name":"small-padding fixed-width"},{default:a(l=>[l.row.roleId!==1?(p(),g(D,{key:0,content:"修改",placement:"top"},{default:a(()=>[y(t(c,{link:"",type:"primary",icon:"Edit",onClick:K=>ue(l.row)},null,8,["onClick"]),[[_,["system:role:edit"]]])]),_:2},1024)):O("",!0),l.row.roleId!==1?(p(),g(D,{key:1,content:"删除",placement:"top"},{default:a(()=>[y(t(c,{link:"",type:"primary",icon:"Delete",onClick:K=>ne(l.row)},null,8,["onClick"]),[[_,["system:role:remove"]]])]),_:2},1024)):O("",!0),l.row.roleId!==1?(p(),g(D,{key:2,content:"数据权限",placement:"top"},{default:a(()=>[y(t(c,{link:"",type:"primary",icon:"CircleCheck",onClick:K=>$e(l.row)},null,8,["onClick"]),[[_,["system:role:edit"]]])]),_:2},1024)):O("",!0),l.row.roleId!==1?(p(),g(D,{key:3,content:"分配用户",placement:"top"},{default:a(()=>[y(t(c,{link:"",type:"primary",icon:"User",onClick:K=>we(l.row)},null,8,["onClick"]),[[_,["system:role:edit"]]])]),_:2},1024)):O("",!0)]),_:1})]),_:1},8,["data"])),[[je,o(Q)]]),y(t(ze,{total:o(H),page:o(f).pageNum,"onUpdate:page":e[5]||(e[5]=l=>o(f).pageNum=l),limit:o(f).pageSize,"onUpdate:limit":e[6]||(e[6]=l=>o(f).pageSize=l),onPagination:C},null,8,["total","page","limit"]),[[X,o(H)>0]]),t(pe,{title:o(N),modelValue:o(k),"onUpdate:modelValue":e[18]||(e[18]=l=>S(k)?k.value=l:null),width:"500px","append-to-body":""},{footer:a(()=>[F("div",sl,[t(c,{type:"primary",onClick:Re},{default:a(()=>[...e[39]||(e[39]=[i("确 定",-1)])]),_:1}),t(c,{onClick:De},{default:a(()=>[...e[40]||(e[40]=[i("取 消",-1)])]),_:1})])]),default:a(()=>[t(W,{ref:"roleRef",model:o(u),rules:o(Ve),"label-width":"100px"},{default:a(()=>[t(d,{label:"角色名称",prop:"roleName"},{default:a(()=>[t(m,{modelValue:o(u).roleName,"onUpdate:modelValue":e[7]||(e[7]=l=>o(u).roleName=l),placeholder:"请输入角色名称"},null,8,["modelValue"])]),_:1}),t(d,{prop:"roleKey"},{label:a(()=>[F("span",null,[t(D,{content:"控制器中定义的权限字符,如:@PreAuthorize(`@ss.hasRole('admin')`)",placement:"top"},{default:a(()=>[t(Fe,null,{default:a(()=>[t(Be)]),_:1})]),_:1}),e[35]||(e[35]=i(" 权限字符 ",-1))])]),default:a(()=>[t(m,{modelValue:o(u).roleKey,"onUpdate:modelValue":e[8]||(e[8]=l=>o(u).roleKey=l),placeholder:"请输入权限字符"},null,8,["modelValue"])]),_:1}),t(d,{label:"角色顺序",prop:"roleSort"},{default:a(()=>[t(Oe,{modelValue:o(u).roleSort,"onUpdate:modelValue":e[9]||(e[9]=l=>o(u).roleSort=l),"controls-position":"right",min:0},null,8,["modelValue"])]),_:1}),t(d,{label:"状态"},{default:a(()=>[t(Qe,{modelValue:o(u).status,"onUpdate:modelValue":e[10]||(e[10]=l=>o(u).status=l)},{default:a(()=>[(p(!0),B(Z,null,ee(o(le),l=>(p(),g(Ye,{key:l.value,value:l.value},{default:a(()=>[i(ve(l.label),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(d,{label:"菜单权限"},{default:a(()=>[t(x,{modelValue:o($),"onUpdate:modelValue":e[11]||(e[11]=l=>S($)?$.value=l:null),onChange:e[12]||(e[12]=l=>de(l,"menu"))},{default:a(()=>[...e[36]||(e[36]=[i("展开/折叠",-1)])]),_:1},8,["modelValue"]),t(x,{modelValue:o(M),"onUpdate:modelValue":e[13]||(e[13]=l=>S(M)?M.value=l:null),onChange:e[14]||(e[14]=l=>re(l,"menu"))},{default:a(()=>[...e[37]||(e[37]=[i("全选/全不选",-1)])]),_:1},8,["modelValue"]),t(x,{modelValue:o(u).menuCheckStrictly,"onUpdate:modelValue":e[15]||(e[15]=l=>o(u).menuCheckStrictly=l),onChange:e[16]||(e[16]=l=>se(l,"menu"))},{default:a(()=>[...e[38]||(e[38]=[i("父子联动",-1)])]),_:1},8,["modelValue"]),t(me,{class:"tree-border",data:o(I),"show-checkbox":"",ref_key:"menuRef",ref:b,"node-key":"id","check-strictly":!o(u).menuCheckStrictly,"empty-text":"加载中,请稍候",props:{label:"label",children:"children"}},null,8,["data","check-strictly"])]),_:1}),t(d,{label:"备注"},{default:a(()=>[t(m,{modelValue:o(u).remark,"onUpdate:modelValue":e[17]||(e[17]=l=>o(u).remark=l),type:"textarea",placeholder:"请输入内容"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["title","modelValue"]),t(pe,{title:o(N),modelValue:o(w),"onUpdate:modelValue":e[28]||(e[28]=l=>S(w)?w.value=l:null),width:"500px","append-to-body":""},{footer:a(()=>[F("div",il,[t(c,{type:"primary",onClick:Me},{default:a(()=>[...e[44]||(e[44]=[i("确 定",-1)])]),_:1}),t(c,{onClick:qe},{default:a(()=>[...e[45]||(e[45]=[i("取 消",-1)])]),_:1})])]),default:a(()=>[t(W,{model:o(u),"label-width":"80px"},{default:a(()=>[t(d,{label:"角色名称"},{default:a(()=>[t(m,{modelValue:o(u).roleName,"onUpdate:modelValue":e[19]||(e[19]=l=>o(u).roleName=l),disabled:!0},null,8,["modelValue"])]),_:1}),t(d,{label:"权限字符"},{default:a(()=>[t(m,{modelValue:o(u).roleKey,"onUpdate:modelValue":e[20]||(e[20]=l=>o(u).roleKey=l),disabled:!0},null,8,["modelValue"])]),_:1}),t(d,{label:"权限范围"},{default:a(()=>[t(G,{modelValue:o(u).dataScope,"onUpdate:modelValue":e[21]||(e[21]=l=>o(u).dataScope=l),onChange:Te},{default:a(()=>[(p(!0),B(Z,null,ee(o(ke),l=>(p(),g(L,{key:l.value,label:l.label,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),y(t(d,{label:"数据权限"},{default:a(()=>[t(x,{modelValue:o(q),"onUpdate:modelValue":e[22]||(e[22]=l=>S(q)?q.value=l:null),onChange:e[23]||(e[23]=l=>de(l,"dept"))},{default:a(()=>[...e[41]||(e[41]=[i("展开/折叠",-1)])]),_:1},8,["modelValue"]),t(x,{modelValue:o(A),"onUpdate:modelValue":e[24]||(e[24]=l=>S(A)?A.value=l:null),onChange:e[25]||(e[25]=l=>re(l,"dept"))},{default:a(()=>[...e[42]||(e[42]=[i("全选/全不选",-1)])]),_:1},8,["modelValue"]),t(x,{modelValue:o(u).deptCheckStrictly,"onUpdate:modelValue":e[26]||(e[26]=l=>o(u).deptCheckStrictly=l),onChange:e[27]||(e[27]=l=>se(l,"dept"))},{default:a(()=>[...e[43]||(e[43]=[i("父子联动",-1)])]),_:1},8,["modelValue"]),t(me,{class:"tree-border",data:o(E),"show-checkbox":"","default-expand-all":"",ref_key:"deptRef",ref:V,"node-key":"id","check-strictly":!o(u).deptCheckStrictly,"empty-text":"加载中,请稍候",props:{label:"label",children:"children"}},null,8,["data","check-strictly"])]),_:1},512),[[X,o(u).dataScope==2]])]),_:1},8,["model"])]),_:1},8,["title","modelValue"])])}}});export{yl as default};