index-a2f7176c.js 8.2 KB

1
  1. import{u as J,_ as W}from"./pagging-58a38392.js";import{c as X}from"./index-343523a6.js";import{c as Y}from"./index-5b348caf.js";import{aj as e,ak as h,d as F,c as M,r as B,al as Z,I as ee,am as oe,an as ne,f as p,o as _,n as k,l as r,k as t,u as d,ao as K,y as U,N as j,i as C,h as S,K as H,L as le,p as g,t as D,ap as te,P as $,aa as ae,aq as se,_ as re,ar as Q,a1 as de,a3 as R,V as E,as as ie,a4 as ue,at as pe}from"./index-32c39055.js";import"./sys-e4ad01b3.js";import"./organization-4b3019eb.js";const T={[e.all]:"全部数据",[e.selfLower]:"所属组织及下级组织数据",[e.selfInner]:"所属组织内部数据",[e.personCreate]:"个人创建数据"},ce=[{id:e.all,value:T[e.all]},{id:e.selfLower,value:T[e.selfLower]},{id:e.selfInner,value:T[e.selfInner]},{id:e.personCreate,value:T[e.personCreate]}],fe={[h.tourist]:{},[h.systemAdmin]:{other:e.all},[h.admin]:{503:e.none,504:e.none,506:e.none,606:e.none,607:e.none,702:e.none,703:e.none,704:e.none,710:e.none,808:e.none,809:e.none,102:e.selfLower,103:e.selfLower,104:e.selfLower,106:e.selfLower,201:e.selfInner,202:e.selfInner,203:e.selfInner,204:e.selfInner,other:e.all},[h.corps]:{201:e.selfInner,202:e.selfInner,203:e.selfInner,204:e.selfInner,503:e.personCreate,506:e.personCreate,606:e.selfInner,607:e.selfInner,702:e.selfInner,703:e.selfInner,704:e.selfInner,other:e.selfLower},[h.detachment1]:{101:e.selfLower,102:e.selfLower,103:e.selfLower,104:e.selfLower,106:e.selfLower,301:e.selfLower,302:e.selfLower,303:e.selfLower,304:e.selfLower,501:e.selfLower,503:e.selfLower,504:e.selfLower,506:e.selfLower,507:e.selfLower,601:e.selfLower,701:e.selfLower,706:e.selfLower,707:e.selfLower,708:e.selfLower,710:e.none,711:e.selfLower,801:e.selfLower,806:e.selfLower,807:e.selfLower,808:e.selfLower,810:e.selfLower,809:e.none,other:e.selfInner},[h.detachment2]:{302:e.none,303:e.none,304:e.none,503:e.personCreate,506:e.personCreate,710:e.none,809:e.none,other:e.selfInner}},me={class:"grid-content bg-purple"},_e={class:"grid-content bg-purple"},ye=F({__name:"edit",props:{roleId:{},edit:{type:Boolean},onQuit:{type:Function},onSuccess:{type:Function}},setup(y){const s=y,v=M(()=>s.edit?s.roleId?"修改":"新增":"查看"),a=B({perm:[]}),w=o=>{const n=fe[K.value];return o in n?n[o]:n.other},V=M(()=>{const o=!s.edit,n=l=>l.filter(c=>w(c.id)!=e.none).map(c=>({...c,disabled:o,children:c.children?n(c.children):[]}));return n(Z.value)}),N=(o,n=V.value)=>{for(const l of n){if(l.id===o)return l.type==="button"?l:null;if(l.children){const c=N(o,l.children);if(c)return c}}return null},z=M(()=>a.value.perm.filter(o=>o.type==="button").map(o=>o.permissionId)),f=B(null),b=(o,n)=>{a.value.perm=n.checkedKeys.map(l=>N(l)).filter(l=>!!l).map(l=>({...l,permissionId:l.id,dataScope:w(l.id)})),f.value=a.value.perm.find(l=>l.id===o.id)},i=o=>{f.value=a.value.perm.find(n=>n.permissionId===o.id)},P=M(()=>{if(f.value)return console.log(w(f.value.id)),ce.filter(o=>o.id>=w(f.value.id))}),I=async()=>{if(!a.value.roleName)return $.error("请输入用户姓名");const o={};a.value.perm.forEach(n=>{o[n.id]=n.dataScope,o[n.parentId]=e.all}),await ae.post(se,{id:a.value.id||"",perm:o,roleName:a.value.roleName}),s.onSuccess(a.value)};return ee(async()=>{await oe(),s.roleId&&(a.value=await ne(s.roleId))}),(o,n)=>{const l=p("el-input"),c=p("el-form-item"),L=p("el-tree"),u=p("el-col"),x=p("el-radio"),O=p("el-radio-group"),A=p("el-row"),G=p("el-form");return _(),k(te,{title:`${v.value}角色`,onQuit:o.onQuit,show:!0,showClose:o.edit,enterText:o.edit?void 0:"确定",cornerClose:!o.edit,onSubmit:n[3]||(n[3]=m=>o.edit?I():o.onQuit()),width:600},{default:r(()=>[t(G,{ref:"form","label-width":"90px",class:"user-from"},{default:r(()=>[t(c,{label:"角色名称:",class:"mandatory"},{default:r(()=>[t(l,{maxlength:"15",modelValue:a.value.roleName,"onUpdate:modelValue":n[0]||(n[0]=m=>a.value.roleName=m),disabled:v.value=="查看",placeholder:"请输入"},null,8,["modelValue","disabled"])]),_:1}),d(K)!==d(h).admin?(_(),k(c,{key:0,label:"所属架构:"},{default:r(()=>[t(l,{maxlength:"15",disabled:!0,modelValue:d(U).info.deptName,"onUpdate:modelValue":n[1]||(n[1]=m=>d(U).info.deptName=m),placeholder:"请输入"},null,8,["modelValue"])]),_:1})):j("",!0),t(A,{gutter:20},{default:r(()=>[t(u,{span:12},{default:r(()=>[C("div",me,[n[4]||(n[4]=C("div",{class:"title"},"功能权限",-1)),t(L,{ref:"tree",data:V.value,"highlight-current":"","show-checkbox":"","node-key":"id","default-checked-keys":z.value,onCheck:b,onNodeClick:i,props:{children:"children",label:"name",disabled:"disabled"}},null,8,["data","default-checked-keys"])])]),_:1}),t(u,{span:12},{default:r(()=>[C("div",_e,[n[5]||(n[5]=C("div",{class:"title"},"数据权限",-1)),f.value?(_(),k(O,{key:0,modelValue:f.value.dataScope,"onUpdate:modelValue":n[2]||(n[2]=m=>f.value.dataScope=m),disabled:!o.edit},{default:r(()=>[(_(!0),S(H,null,le(P.value,m=>(_(),k(x,{style:{"line-height":"28px"},key:m.id,label:m.id,size:"large"},{default:r(()=>[g(D(m.value),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue","disabled"])):j("",!0)])]),_:1})]),_:1})]),_:1},512)]),_:1},8,["title","onQuit","showClose","enterText","cornerClose"])}}});const q=re(ye,[["__scopeId","data-v-a2f53be9"]]),ve=y=>new Promise((s,v)=>{const a=Q(q,{roleId:y,edit:!1,onQuit:()=>{a(),s()},onSuccess(){a(),s()}})}),we=y=>new Promise((s,v)=>{const a=Q(q,{roleId:y,edit:!0,onQuit:()=>{a(),s(null)},onSuccess(w){a(),s(w)}})}),ge=()=>new Promise((y,s)=>{const v=Q(q,{edit:!0,onQuit:()=>{v(),y(null)},onSuccess(a){v(),y(a)}})}),be={class:"body-layer",style:{"padding-top":"8px"}},he={class:"body-but"},Ce={style:{"text-align":"center"}},Le=["onClick"],Ie=["onClick"],ke=["onClick"],Te=F({__name:"index",setup(y){const{state:s,queryReset:v,refresh:a,changPageCurrent:w,changPageSize:V}=J({get:ie,paramsTemlate:{searchKey:"",deptId:""}}),N=async b=>{if(b.type==0)return $.warning("预设角色不能删除");await ue("删除角色后,相关用户需重新配置角色,确认要删除组织吗?")&&(await pe(b.id),$.success("操作成功"),a())},z=async()=>{await ge(),a()},f=async b=>{await we(b.id),a()};return(b,i)=>{const P=p("el-input"),I=p("el-form-item"),o=p("el-button"),n=p("el-form"),l=p("el-table-column"),c=p("el-table"),L=de("pdpath");return _(),S(H,null,[t(X,{options:[{name:"角色管理",value:"2"}]},{default:r(()=>[t(n,{"label-width":"84px"},{default:r(()=>[t(I,{label:"角色名称:"},{default:r(()=>[t(P,{modelValue:d(s).query.searchKey,"onUpdate:modelValue":i[0]||(i[0]=u=>d(s).query.searchKey=u),placeholder:"请输入"},null,8,["modelValue"])]),_:1}),t(I,{label:"所属架构:"},{default:r(()=>[t(Y,{modelValue:d(s).query.deptId,"onUpdate:modelValue":i[1]||(i[1]=u=>d(s).query.deptId=u)},null,8,["modelValue"])]),_:1}),t(I,{class:"searh-btns"},{default:r(()=>[t(o,{type:"primary",onClick:d(a)},{default:r(()=>i[2]||(i[2]=[g("查询")])),_:1},8,["onClick"]),t(o,{type:"primary",plain:"",onClick:d(v)},{default:r(()=>i[3]||(i[3]=[g("重置")])),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1}),C("div",be,[C("div",he,[R((_(),k(o,{type:"primary",onClick:z},{default:r(()=>i[4]||(i[4]=[g("新增角色")])),_:1})),[[L,"add"]])]),t(c,{class:"user-table",data:d(s).table.rows,style:{width:"100%","max-height":"480px"},size:"large"},{default:r(()=>[t(l,{label:"序号",width:"70"},{default:r(({$index:u})=>[C("div",Ce,D(d(s).pag.size*(d(s).pag.currentPage-1)+u+1),1)]),_:1}),t(l,{label:"角色名称",prop:"roleName"}),t(l,{label:"角色类型",prop:"type"},{default:r(u=>[g(D(u.row.type==0?"预设":"自定义"),1)]),_:1}),t(l,{label:"所属架构",prop:"deptName"}),t(l,{label:"创建人",prop:"nickName"}),t(l,{label:"创建时间",prop:"createTime"}),t(l,{label:"操作"},{default:r(({row:u})=>[R((_(),S("span",{class:"oper-span",onClick:x=>d(ve)(u.id)},i[5]||(i[5]=[g("查看")]),8,Le)),[[L,"view"]]),R((_(),S("span",{class:E(["oper-span",{disable:u.type===0}]),onClick:x=>f(u)},i[6]||(i[6]=[g("编辑")]),10,Ie)),[[L,["edit"]]]),R((_(),S("span",{class:E(["oper-span",{disable:u.type==0}]),style:{color:"var(--primaryColor)"},onClick:x=>N(u)},i[7]||(i[7]=[g("删除")]),10,ke)),[[L,["del"]]])]),_:1})]),_:1},8,["data"]),t(W,{onSizeChange:d(V),onCurrentChange:d(w),"current-page":d(s).pag.currentPage,"page-size":d(s).pag.size,total:d(s).pag.total},null,8,["onSizeChange","onCurrentChange","current-page","page-size","total"])])],64)}}});export{Te as default};