index-C10KQfXJ.js 8.3 KB

12
  1. var e=Object.defineProperty,a=Object.defineProperties,l=Object.getOwnPropertyDescriptors,t=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,d=Object.prototype.propertyIsEnumerable,s=(a,l,t)=>l in a?e(a,l,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[l]=t,o=(e,a)=>{for(var l in a||(a={}))r.call(a,l)&&s(e,l,a[l]);if(t)for(var l of t(a))d.call(a,l)&&s(e,l,a[l]);return e},i=(e,t)=>a(e,l(t)),n=(e,a,l)=>new Promise(((t,r)=>{var d=e=>{try{o(l.next(e))}catch(a){r(a)}},s=e=>{try{o(l.throw(e))}catch(a){r(a)}},o=e=>e.done?t(e.value):Promise.resolve(e.value).then(d,s);o((l=l.apply(e,a)).next())}));import{b as u,e as c,j as m}from"./index-CT1qRCFx.js";/* empty css *//* empty css *//* empty css */import{_ as p}from"./index-CP2eqSpQ.js";/* empty css *//* empty css */import{A as h}from"./index-CkQFq_mO.js";import{j as f,c as _,Q as y,G as g,D as v,W as k,u as b,H as x,v as j,$ as w,F as C,a0 as V,a1 as I,X as O,Y as A,a2 as P,r as B,N as L,s as K,d as R,_ as M,ad as T,ac as U,a3 as D,a4 as S,a6 as $,a7 as H,a9 as N,ah as z,S as E,i as F,ar as G,au as q,a$ as J,aP as Q}from"./vendor-D0p0RnNT.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-l0sNRNKZ.js";/* empty css */import{r as W}from"./roleApi-C8tk0LRL.js";import{_ as X}from"./_plugin-vue_export-helper-BCo6x5W8.js";/* empty css */import"./index-DC2isIDB.js";const Y={class:"btn-more"},Z=f(i(o({},{name:"ArtButtonMore"}),{__name:"index",props:{list:{},auth:{},authId:{},hasBackground:{type:Boolean,default:!0}},emits:["click"],setup(e,{emit:a}){const l=e,t=_((()=>l.list.some((e=>!e.authId||u().checkAuth(e.authId))))),r=a;return(e,a)=>{const l=h,d=I,s=w,o=P;return g(),y("div",Y,[b(t)?(g(),v(o,{key:0},{dropdown:x((()=>[j(s,null,{default:x((()=>[(g(!0),y(C,null,V(e.list,(e=>(g(),y(C,{key:e.key},[!e.authId||b(u)().checkAuth(e.authId)?(g(),v(d,{key:0,disabled:e.disabled,onClick:a=>(e=>{r("click",e)})(e)},{default:x((()=>[O(A(e.label),1)])),_:2},1032,["disabled","onClick"])):k("",!0)],64)))),128))])),_:1})])),default:x((()=>[j(l,{type:"more",iconBgColor:e.hasBackground?"":"transparent"},null,8,["iconBgColor"])])),_:1})):k("",!0)])}}})),ee={class:"page-content"},ae={class:"dialog-footer"},le={style:{display:"flex","align-items":"center"}},te={key:0},re={key:1},de={class:"dialog-footer"},se=X(f(i(o({},{name:"Role"}),{__name:"index",setup(e){const a=B(!1),l=B(!1),t=L({id:0,name:"",descr:"",create_date:"",auth_ids:[],show_ids:[]}),{menuList:r}=K(c()),d=B(),s=B(!0),i=B(!1),u=e=>e.reduce(((e,a)=>{var l;if(a.hasOwnProperty("id")&&a.id){const t=o({},a);(null==(l=t.children)?void 0:l.length)&&(t.children=u(t.children)),e.push(t)}return e}),[]),h=u(r.value),f=_((()=>{const e=a=>{const l=o({},a);if(a.meta&&a.meta.authList&&a.meta.authList.length){const e=a.meta.authList.map((e=>({id:e.id||!1,name:`${a.name}_${e.authMark}`,label:e.title,authMark:e.authMark,isAuth:!0,checked:e.checked||!1}))).filter((e=>e.id));e.length>0&&(l.children=l.children?[...l.children,...e]:e)}return l.children&&(l.children=l.children.map(e)),l};return h.map(e)})),k=B(),w=L({name:[{required:!0,message:"请输入角色名称",trigger:"blur"},{min:2,max:20,message:"长度在 2 到 20 个字符",trigger:"blur"}],des:[{message:"请输入角色描述",trigger:"blur"},{max:255,message:"长度最大255个字符",trigger:"blur"}]}),C=L({id:0,name:"",descr:""}),V=B([]);R((()=>{I()}));const I=()=>n(this,null,(function*(){const{records:e}=yield W.roleList();V.value=e})),P=B("add"),X=(e,l)=>{a.value=!0,P.value=e,"edit"===e&&l?(C.name=l.name,C.id=l.id,C.descr=l.descr):(C.name="",C.id=0,C.descr="")},Y=e=>{l.value=!0,t.id=e.id,t.name=e.name,t.descr=e.descr,t.create_date=e.create_date,t.auth_ids=e.auth_ids,t.show_ids=e.show_ids;const a=d.value;a&&a.setCheckedKeys(e.show_ids)},se={children:"children",label:e=>{var a;return m(null==(a=e.meta)?void 0:a.title)||""}},oe=e=>{Q.confirm("确定删除该角色吗?","删除确认",{confirmButtonText:"确定",cancelButtonText:"取消",type:"error"}).then((()=>{W.deleteRole({id:e}),setTimeout((()=>{I()}),1e3)}))},ie=e=>n(this,null,(function*(){e&&(yield e.validate((l=>{l&&(W.editRole(C),a.value=!1,e.resetFields(),setTimeout((()=>{I()}),1e3))})))})),ne=()=>n(this,null,(function*(){let e=d.value;yield W.saveRoleAuth(t.id,e.getCheckedKeys(),e.getHalfCheckedKeys()),l.value=!1,setTimeout((()=>{I()}),1e3)})),ue=()=>{const e=d.value;if(!e)return;const a=e.store.nodesMap;for(const l in a)a[l].expanded=!s.value;s.value=!s.value},ce=()=>{const e=d.value;if(e){if(i.value)e.setCheckedKeys([]);else{const a=me(f.value);e.setCheckedKeys(a)}i.value=!i.value}},me=e=>{const a=[],l=e=>{e.forEach((e=>{e.name&&a.push(e.name),e.children&&e.children.length>0&&l(e.children)}))};return l(e),a},pe=()=>{const e=d.value;if(!e)return;const a=e.getCheckedKeys(),l=me(f.value);i.value=a.length===l.length&&l.length>0};return(e,r)=>{const o=S,n=D,u=U,c=H,m=T,h=N,_=z,I=Z,B=p,L=G,K=J,R=q,Q=M("ripple"),W=M("auth");return g(),y("div",ee,[j(h,null,{default:x((()=>[j(m,{gutter:12},{default:x((()=>[j(u,{xs:24,sm:12,lg:6},{default:x((()=>[j(n,null,{default:x((()=>[j(o,{placeholder:"请输入角色名称",modelValue:b(C).name,"onUpdate:modelValue":r[0]||(r[0]=e=>b(C).name=e)},null,8,["modelValue"])])),_:1})])),_:1}),j(u,{xs:24,sm:12,lg:6},{default:x((()=>[j(n,null,{default:x((()=>[$((g(),v(c,null,{default:x((()=>r[8]||(r[8]=[O("搜索")]))),_:1,__:[8]})),[[Q]]),$((g(),v(c,{type:"primary",onClick:r[1]||(r[1]=e=>X("add"))},{default:x((()=>r[9]||(r[9]=[O("新增角色")]))),_:1,__:[9]})),[[Q],[W,110202]])])),_:1})])),_:1})])),_:1})])),_:1}),j(B,{data:b(V)},{default:x((()=>[j(_,{label:"角色名称",prop:"name"}),j(_,{label:"描述",prop:"descr"}),j(_,{label:"创建时间",prop:"create_date"},{default:x((e=>{return[O(A((a=e.row.create_date,new Date(a).toLocaleString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}).replace(/\//g,"-"))),1)];var a})),_:1}),j(_,{fixed:"right",label:"操作",width:"100px"},{default:x((e=>[j(m,null,{default:x((()=>[j(I,{list:[{key:"permission",label:"菜单权限",authId:110201},{key:"edit",label:"编辑角色",authId:110202},{key:"delete",label:"删除角色",authId:110203}],onClick:a=>{return l=a,t=e.row,void("permission"===l.key?Y(t):"edit"===l.key?X("edit",t):"delete"===l.key&&oe(t.id));var l,t}},null,8,["onClick"])])),_:2},1024)])),_:1})])),_:1},8,["data"]),j(L,{modelValue:b(a),"onUpdate:modelValue":r[6]||(r[6]=e=>F(a)?a.value=e:null),title:"add"===b(P)?"新增角色":"编辑角色",width:"30%","align-center":""},{footer:x((()=>[E("div",ae,[j(c,{onClick:r[4]||(r[4]=e=>a.value=!1)},{default:x((()=>r[10]||(r[10]=[O("取消")]))),_:1,__:[10]}),j(c,{type:"primary",onClick:r[5]||(r[5]=e=>ie(b(k)))},{default:x((()=>r[11]||(r[11]=[O("提交")]))),_:1,__:[11]})])])),default:x((()=>[j(h,{ref_key:"formRef",ref:k,model:b(C),rules:b(w),"label-width":"80px"},{default:x((()=>[j(n,{label:"角色名称",prop:"name"},{default:x((()=>[j(o,{modelValue:b(C).name,"onUpdate:modelValue":r[2]||(r[2]=e=>b(C).name=e)},null,8,["modelValue"])])),_:1}),j(n,{label:"描述",prop:"descr"},{default:x((()=>[j(o,{modelValue:b(C).descr,"onUpdate:modelValue":r[3]||(r[3]=e=>b(C).descr=e),type:"textarea",rows:3},null,8,["modelValue"])])),_:1})])),_:1},8,["model","rules"])])),_:1},8,["modelValue","title"]),j(L,{modelValue:b(l),"onUpdate:modelValue":r[7]||(r[7]=e=>F(l)?l.value=e:null),title:"菜单权限",width:"520px","align-center":"",class:"el-dialog-border"},{footer:x((()=>[E("div",de,[j(c,{onClick:ue},{default:x((()=>[O(A(b(s)?"全部收起":"全部展开"),1)])),_:1}),j(c,{onClick:ce,style:{"margin-left":"8px"}},{default:x((()=>[O(A(b(i)?"取消全选":"全部选择"),1)])),_:1}),j(c,{type:"primary",onClick:ne},{default:x((()=>r[12]||(r[12]=[O("保存")]))),_:1,__:[12]})])])),default:x((()=>[j(R,{height:"70vh"},{default:x((()=>[j(K,{ref_key:"treeRef",ref:d,data:b(f),"show-checkbox":"","node-key":"id","default-expand-all":b(s),"default-checked-keys":b(t).show_ids,props:se,onCheck:pe},{default:x((({data:e})=>[E("div",le,[e.isAuth?(g(),y("span",te,A(e.label),1)):(g(),y("span",re,A(se.label(e)),1))])])),_:1},8,["data","default-expand-all","default-checked-keys"])])),_:1})])),_:1},8,["modelValue"])])}}})),[["__scopeId","data-v-886a841d"]]);export{se as default};