index.dda6ad50.js 6.3 KB

1
  1. import{d as fe,r,w as ve,k as he,Q as ge,j as Ve,a9 as i,o as u,E as U,G as s,M as n,a as o,K as h,L as w,c as d,a0 as g,W as j,H as T,N as z,u as p,F as V,t as N,aq as ke,ar as ye}from"./vue.65d9dadc.js";import{r as B,X as Ce,$ as be}from"./index.5ce19447.js";import{E as we}from"./elementPlus.ff7602ba.js";import{_ as xe}from"./_plugin-vue_export-helper.c27b6911.js";import"./echarts.72dc8373.js";function Ue(_){return B({url:"/api/system/role_menu_button_permission/get_role_premission/",method:"get",params:_})}function De(_,M){return B({url:`/api/system/role_menu_button_permission/${_}/set_role_premission/`,method:"put",data:M})}function Pe(){return B({url:"/api/system/role_menu_button_permission/data_scope/",method:"get"})}function Se(){return B({url:"/api/system/role_menu_button_permission/role_to_dept_all/",method:"get"})}const F=_=>(ke("data-v-a1c63f1c"),_=_(),ye(),_),Ne={class:"permission-com"},Be={class:"pc-collapse-title"},Me={class:"pc-collapse-main"},Re={class:"pccm-item"},Ee=F(()=>o("p",null,"允许对这些数据有以下操作",-1)),qe={class:"btn-item"},Ie=["onClick"],Te={class:"pccm-item"},ze=F(()=>o("p",null,"对这些数据有以下字段权限",-1)),Fe={class:"columns-list"},Ke={class:"columns-head"},Le=F(()=>o("div",{class:"width-txt"},[o("span",null,"字段")],-1)),Xe={class:"width-txt"},$e={class:"pc-dialog"},je=fe({__name:"index",props:{roleId:{type:Number,default:-1},roleName:{type:String,default:""},drawerVisible:{type:Boolean,default:!1}},emits:["update:drawerVisible"],setup(_,{emit:M}){const D=_,A=M,R=r(!1);ve(()=>D.drawerVisible,t=>{R.value=t,W(),J()});const G=()=>{A("update:drawerVisible",!1)},H={children:"children",label:"name",value:"id"};let P=r([]),k=r(["1"]),K=r({}),L=r(-1),y=r(!1),S=r([]);const Q=he(()=>function(t){const a=S.value.find(c=>c.value===t);return(a==null?void 0:a.label)||""});let X=r([]),m=r(),C=r([]);const W=async()=>{const t=await Ue({role:D.roleId});P.value=t.data},J=async()=>{try{const t=await Pe();(t==null?void 0:t.code)===2e3&&(S.value=t.data)}catch{return}},O=t=>{k.value=[t]},Y=(t,a)=>{K.value=t,L.value=a,y.value=!0},Z=(t,a,c)=>{for(const b of a.columns)b[c]=t},ee=async t=>{if(t===4){const a=await Se(),c=Ce.toArrayTree(a.data,{parentKey:"parent",strict:!1});X.value=c}},le=()=>{if(m.value!==0&&!m.value){be("请选择");return}for(const t of P.value)if(t.id===K.value.id){for(const a of t.btns)if(a.id===L.value){const c=S.value.find(b=>b.value===m.value);a.data_range=(c==null?void 0:c.value)||0,a.data_range===4&&(a.dept=C.value)}}E()},E=()=>{y.value=!1,C.value=[],m.value=null},ae=()=>{De(D.roleId,P.value).then(t=>{we({message:t.msg,type:"success"})})},$=ge({header:[{value:"is_create",label:"新增可见"},{value:"is_update",label:"编辑可见"},{value:"is_query",label:"列表可见"}]});return Ve(()=>{}),(t,a)=>{const c=i("el-tag"),b=i("el-col"),q=i("el-button"),te=i("el-row"),x=i("el-checkbox"),oe=i("Setting"),se=i("el-icon"),ne=i("el-collapse-item"),ue=i("el-collapse"),ie=i("el-option"),ce=i("el-select"),re=i("el-tree-select"),de=i("el-dialog"),_e=i("el-drawer");return u(),U(_e,{modelValue:R.value,"onUpdate:modelValue":a[4]||(a[4]=e=>R.value=e),title:"权限配置",direction:"rtl",size:"60%","close-on-click-modal":!1,"before-close":G},{header:s(()=>[n(te,null,{default:s(()=>[n(b,{span:4},{default:s(()=>[o("div",null,[h("当前角色: "),n(c,null,{default:s(()=>[h(w(D.roleName),1)]),_:1})])]),_:1}),n(b,{span:6,offset:8},{default:s(()=>[o("div",null,[n(q,{size:"small",type:"primary",class:"pc-save-btn",onClick:ae},{default:s(()=>[h("保存菜单授权 ")]),_:1})])]),_:1})]),_:1})]),default:s(()=>[o("div",Ne,[n(ue,{modelValue:p(k),"onUpdate:modelValue":a[0]||(a[0]=e=>N(k)?k.value=e:k=e),onChange:O,accordion:""},{default:s(()=>[(u(!0),d(V,null,g(p(P),(e,I)=>(u(),U(ne,{key:I,name:I},{title:s(()=>[o("div",{onClick:j(l=>null,["stop"])},[o("p",Be,[n(x,{modelValue:e.isCheck,"onUpdate:modelValue":l=>e.isCheck=l},{default:s(()=>[o("span",null,w(e.name),1)]),_:2},1032,["modelValue","onUpdate:modelValue"])]),T(o("div",null,[(u(!0),d(V,null,g(e.btns,l=>(u(),U(x,{key:l.value,label:l.value,modelValue:l.isCheck,"onUpdate:modelValue":f=>l.isCheck=f},{default:s(()=>[h(w(l.name),1)]),_:2},1032,["label","modelValue","onUpdate:modelValue"]))),128))],512),[[z,!p(k).includes(I)]])])]),default:s(()=>[o("div",Me,[o("div",Re,[Ee,(u(!0),d(V,null,g(e.btns,(l,f)=>(u(),U(x,{key:f,modelValue:l.isCheck,"onUpdate:modelValue":v=>l.isCheck=v,label:l.value},{default:s(()=>[o("div",qe,[h(w(l.data_range!==null?`${l.name}(${Q.value(l.data_range)})`:l.name)+" ",1),T(o("span",{onClick:j(v=>Y(e,l.id),["stop","prevent"])},[n(se,null,{default:s(()=>[n(oe)]),_:1})],8,Ie),[[z,l.isCheck]])])]),_:2},1032,["modelValue","onUpdate:modelValue","label"]))),128))]),o("div",Te,[ze,o("ul",Fe,[o("li",Ke,[Le,(u(!0),d(V,null,g($.header,(l,f)=>(u(),d("div",{key:f,class:"width-check"},[n(x,{label:l.value,onChange:v=>Z(v,e,l.value)},{default:s(()=>[o("span",null,w(l.label),1)]),_:2},1032,["label","onChange"])]))),128))]),(u(!0),d(V,null,g(e.columns,(l,f)=>(u(),d("li",{key:f,class:"columns-item"},[o("div",Xe,w(l.title),1),(u(!0),d(V,null,g($.header,(v,me)=>(u(),d("div",{key:me,class:"width-check"},[n(x,{modelValue:l[v.value],"onUpdate:modelValue":pe=>l[v.value]=pe,class:"ci-checkout"},null,8,["modelValue","onUpdate:modelValue"])]))),128))]))),128))])])])]),_:2},1032,["name"]))),128))]),_:1},8,["modelValue"]),n(de,{modelValue:p(y),"onUpdate:modelValue":a[3]||(a[3]=e=>N(y)?y.value=e:y=e),title:"数据权限配置",width:"400px","close-on-click-modal":!1,"before-close":E},{footer:s(()=>[o("div",null,[n(q,{type:"primary",onClick:le},{default:s(()=>[h(" 确定")]),_:1}),n(q,{onClick:E},{default:s(()=>[h(" 取消")]),_:1})])]),default:s(()=>[o("div",$e,[n(ce,{modelValue:p(m),"onUpdate:modelValue":a[1]||(a[1]=e=>N(m)?m.value=e:m=e),onChange:ee,class:"dialog-select",placeholder:"请选择"},{default:s(()=>[(u(!0),d(V,null,g(p(S),e=>(u(),U(ie,{key:e.value,label:e.label,value:e.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),T(n(re,{"node-key":"id",modelValue:p(C),"onUpdate:modelValue":a[2]||(a[2]=e=>N(C)?C.value=e:C=e),props:H,data:p(X),multiple:"","check-strictly":"","render-after-expand":!1,"show-checkbox":"",class:"dialog-tree"},null,8,["modelValue","data"]),[[z,p(m)===4]])])]),_:1},8,["modelValue"])])]),_:1},8,["modelValue"])}}});const Je=xe(je,[["__scopeId","data-v-a1c63f1c"]]);export{Je as default};