addEdit.b03a71ac.js 10 KB

1
  1. import{a as pe,b as ge,c as me,d as ke}from"./index.80168c68.js";import{_ as Le,q as Ce,A as Fe,B as C,a4 as x,E as Ve,a2 as I,r as g,as as we,L as De,o as h,K as B,H as r,t as p,n as k,J as M,v as Q,I as y,p as _,P as z,S as N,aL as K,O as P,V as Ae,W as Be,D as Ee}from"./index.f00b3728.js";import{l as ye}from"./status.b8063a0d.js";const Se=G=>(Ae("data-v-6eb043e4"),G=G(),Be(),G),Ue={class:"quanxian-main"},Me=Se(()=>_("div",{class:"quanxian-title"},[_("div",{style:{color:"#ff8888"}},"*"),_("div",null,"\u529F"),_("div",null,"\u80FD"),_("div",null,"\u6743"),_("div",null,"\u9650")],-1)),Ne={class:"rule-view"},Oe={class:"rule-list"},qe={class:"ftitle"},Je={class:"fbody"},Te={class:"stitle"},ze={class:"_h2"},Ge={key:0,class:"scheck"},Re={class:"checkAll"},He=N("\u529F\u80FD\u5168\u9009"),Ke={class:"checkItem"},Pe={key:1,class:"sfield"},We={class:"checkAll"},$e=N("\u5B57\u6BB5\u5168\u9009"),je={class:"checkItem"},Qe=N("\u4FDD\u5B58"),Xe=N("\u5173\u95ED"),Ye=Ce({__name:"addEdit",props:{itemId:{type:String,default:""},showModel:{type:Boolean,default:!1},isDetails:{type:String,default:"add"}},emits:["cancel","refresh"],setup(G,{emit:X}){const Y=G,{logout:W}=Fe(),ee=C("default"),$=C(),S=C(!1),j=C(""),f=C("add"),o=C([]),O=C([]),E=C([]),q=C([]),Z={roleid:"",role_name:"",level:"1",action:"",private_data:""},m=x({...Z}),le=x({role_name:[{required:!0,message:"\u8BF7\u8F93\u5165\u89D2\u8272\u540D\u79F0",trigger:"blur"},{min:2,max:12,message:"\u957F\u5EA6\u5728 2 \u5230 12 \u4E2A\u5B57\u7B26",trigger:"blur"}],level:[{required:!0,message:"\u8BF7\u9009\u62E9\u89D2\u8272\u7B49\u7EA7",trigger:"change"}]}),ae=(a,e,i,l)=>{o.value[e].child[l].checkAll=a,o.value[e].child[l].action.forEach(t=>{const n=o.value[e].child[l].checkList.findIndex(u=>u===t.id);a&&n==-1?o.value[e].child[l].checkList.push(t.id):!a&&n>-1&&o.value[e].child[l].checkList.splice(n,1)})},te=(a,e,i,l)=>{o.value[e].child[l].fieldAll=a,o.value[e].child[l].action_data.forEach(t=>{const n=o.value[e].child[l].fieldList.findIndex(u=>u===t.id);a&&n==-1?o.value[e].child[l].fieldList.push(t.id):!a&&n>-1&&o.value[e].child[l].fieldList.splice(n,1)})},ie=(a,e,i,l)=>{o.value[e].child[l].checkAll=o.value[e].child[l].action.every(t=>o.value[e].child[l].checkList.findIndex(n=>n===t.id)>-1)},oe=(a,e,i,l)=>{o.value[e].child[l].fieldAll=o.value[e].child[l].action_data.every(t=>o.value[e].child[l].fieldList.findIndex(n=>n===t.id)>-1)},ne=(a,e,i,l,t)=>{if(a)o.value[i].child[l].checkList.indexOf(e)==-1&&o.value[i].child[l].checkList.push(e);else{const n=o.value[i].child[l].checkList.findIndex(u=>u==e);n>-1&&o.value[i].child[l].checkList.splice(n,1),o.value[i].child[l].checkAll=!1}},de=(a,e,i,l,t)=>{if(a)o.value[i].child[l].fieldList.indexOf(e)==-1&&o.value[i].child[l].fieldList.push(e);else{const n=o.value[i].child[l].fieldList.findIndex(u=>u==e);n>-1&&o.value[i].child[l].fieldList.splice(n,1),o.value[i].child[l].fieldAll=!1}},se=async a=>{!a||await a.validate(async(e,i)=>{if(e){if(U.value===!0)return;U.value=!0;const{level:l,role_name:t,roleid:n}=m;if(O.value=[],E.value=[],q.value=[],o.value.forEach(L=>{L.child.forEach(c=>{O.value.push(...c.fieldList),E.value.push(...c.checkList),c.is_private_change==="1"&&q.value.push(c.id)})}),E.value.length===0){K.error("\u8BF7\u9009\u62E9\u529F\u80FD!"),U.value=!1;return}let u={level:l,role_name:t,roleid:n,action:E.value,private_data:q.value};f.value==="add"&&delete u.roleid;const{code:V,message:T}=f.value==="add"?await pe(u):await ge(u);U.value=!1,V===0?(K.success(J.value+"\u6210\u529F\uFF01"),S.value=!1,X("refresh")):V>100&&V<140?(S.value=!1,W()):K.error(T)}})},ce=async(a,e)=>{!a||(a.clearValidate(),a.resetFields(),await Ee(async()=>{for(let i in m)i==="role"?m[i]=e.roleid||"":m[i]=e[i]}))},b=()=>{S.value=!1,X("cancel")},U=C(!0),J=C("");async function ue(a){switch(U.value=!0,f.value){case"add":J.value="\u65B0\u5EFA\u89D2\u8272";break;case"edit":J.value="\u7F16\u8F91\u89D2\u8272";break;case"view":J.value="\u89D2\u8272\u8BE6\u60C5";break;default:J.value="\u65B0\u5EFA\u89D2\u8272"}const{code:e,data:i,message:l}=await me({});if(e===0){let t=JSON.parse(JSON.stringify(i!=null?i:[]));t=t.filter(n=>n.child&&n.child.length>0),t=t.map(n=>(n.child.map(u=>(u.checkAll=!1,u.checkList=[],u.fieldAll=!1,u.fieldList=[],u.is_private_change="0",u.is_private==="0"?u.private=[]:u.private=[{id:"0",label:"\u516C\u6709\u6570\u636E"},{id:"1",label:"\u79C1\u6709\u6570\u636E"}],u)),n)),o.value=t}else e>100&&e<140?W():K.error(l);await ce($.value,a),f.value!=="add"&&await re(),U.value=!1}const re=async()=>{const{code:a,data:e,message:i}=await ke({roleid:j.value});if(a===0){const{action:l,action_data:t,private_data:n,role_name:u,level:V}=e!=null?e:{};m.roleid=j.value,m.role_name=u!=null?u:"",m.level=V!=null?V:"1",O.value=l!=null?l:[],E.value=t!=null?t:[],q.value=n!=null?n:[];const T=JSON.parse(JSON.stringify(o.value));T.map(L=>(L.child&&L.child.length>0&&L.child.map(c=>(c.action&&c.action.length>0&&(c.action.map(w=>{const F=O.value.length>0?O.value.findIndex(R=>R===w.id):-1;return F!==-1&&c.checkList.push(O.value[F]),w}),c.action.length===c.checkList.length&&(c.checkAll=!0)),c.action_data&&c.action_data.length>0&&(c.action.map(w=>{const F=E.value.length>0?E.value.findIndex(R=>R===w.id):-1;return F!==-1&&c.fieldList.push(E.value[F]),w}),c.action_data.length===c.fieldList.length&&(c.fieldAll=!0)),c.private&&c.private.length===2&&(q.value.length>0?q.value.findIndex(F=>F===c.id):-1)!==-1?c.is_private_change="1":c.is_private_change="0",c)),L)),o.value=T}else a>=100&&a<=104?W():K.warning(i)};Ve(()=>Y.showModel,()=>{const{showModel:a,itemId:e,isDetails:i}=Y;S.value=a,S.value&&(j.value=e,f.value=i,ue(Z))});let he=I(()=>a=>{const e=a.action.filter(l=>a.checkList.findIndex(t=>t===l.id)>-1).length,i=a.action.filter(l=>a.checkList.findIndex(t=>t===l.id)==-1).length;return e>0&&i>0}),ve=I(()=>a=>{const e=a.action_data.filter(l=>a.fieldList.findIndex(t=>t===l.id)>-1).length,i=a.action_data.filter(l=>a.fieldList.findIndex(t=>t===l.id)==-1).length;return e>0&&i>0});return(a,e)=>{const i=g("el-input"),l=g("el-form-item"),t=g("el-col"),n=g("el-option"),u=g("el-select"),V=g("el-radio-button"),T=g("el-radio-group"),L=g("el-checkbox"),c=g("el-checkbox-group"),w=g("el-row"),F=g("el-button"),R=g("el-form"),_e=g("el-dialog"),fe=we("loading");return De((h(),B(_e,{"close-on-press-escape":!1,modelValue:S.value,"onUpdate:modelValue":e[3]||(e[3]=v=>S.value=v),"append-to-body":"",center:"",top:"5vh",width:"900px",title:J.value,onClose:b},{default:r(()=>[p(R,{ref_key:"ruleFormRef",ref:$,model:m,rules:le,"label-width":"90px",class:"role-addedit",size:ee.value,"status-icon":""},{default:r(()=>[p(w,null,{default:r(()=>[p(t,{span:12},{default:r(()=>[p(l,{label:"\u89D2\u8272\u540D\u79F0",prop:"role_name"},{default:r(()=>[p(i,{modelValue:m.role_name,"onUpdate:modelValue":e[0]||(e[0]=v=>m.role_name=v),disabled:f.value==="view",placeholder:"\u89D2\u8272\u540D\u79F0"},null,8,["modelValue","disabled"])]),_:1})]),_:1}),p(t,{span:12},{default:r(()=>[p(l,{label:"\u89D2\u8272\u7B49\u7EA7",prop:"level"},{default:r(()=>[p(u,{modelValue:m.level,"onUpdate:modelValue":e[1]||(e[1]=v=>m.level=v),style:{width:"100%"},disabled:f.value==="view",placeholder:"\u83DC\u5355\u7C7B\u578B"},{default:r(()=>[(h(!0),k(y,null,M(Q(ye),(v,D)=>(h(),B(n,{key:"type"+v.value+D,label:v.label,value:v.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","disabled"])]),_:1})]),_:1}),p(t,{span:24},{default:r(()=>[_("div",Ue,[Me,_("div",Ne,[_("div",Oe,[(h(!0),k(y,null,M(o.value,(v,D)=>(h(),B(w,{key:"menu"+v.id+D},{default:r(()=>[v.child&&v.child.length>0?(h(),B(t,{key:0,class:"ffff",span:24},{default:r(()=>[_("div",qe,[(h(!0),k(y,null,M(v.menu_name,(d,A)=>(h(),k("div",{key:"title"+A+d},P(d),1))),128))]),_("div",Je,[(h(!0),k(y,null,M(v.child,(d,A)=>(h(),k("div",{class:"fbody-item",key:"yemian"+d.id+A},[d.action&&d.action.length===0&&d.action_data&&d.action_data.length===0?z("",!0):(h(),k(y,{key:0},[_("div",Te,[_("span",ze,P(d.menu_name),1),d&&d.private&&d.private.length===2?(h(),B(T,{key:0,style:{margin:"0 0 0 20px"},size:"mini",modelValue:d.is_private_change,"onUpdate:modelValue":s=>d.is_private_change=s},{default:r(()=>[(h(!0),k(y,null,M(d.private,(s,H)=>(h(),B(V,{key:s.label+H,label:s.id},{default:r(()=>[N(P(s.label),1)]),_:2},1032,["label"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])):z("",!0)]),d.action&&d.action.length>0?(h(),k("div",Ge,[_("div",Re,[p(L,{modelValue:d.checkAll,"onUpdate:modelValue":s=>d.checkAll=s,disabled:f.value==="view",indeterminate:Q(he)(d),onChange:s=>ae(s,D,v,A)},{default:r(()=>[He]),_:2},1032,["modelValue","onUpdate:modelValue","disabled","indeterminate","onChange"])]),_("div",Ke,[p(c,{modelValue:d.checkList,"onUpdate:modelValue":s=>d.checkList=s,disabled:f.value==="view",onChange:s=>ie(s,D,v,A)},{default:r(()=>[(h(!0),k(y,null,M(d.action,s=>(h(),B(L,{disabled:f.value==="view",key:"checkItem"+s.id,label:s.id,onChange:H=>ne(H,s.id,D,A)},{default:r(()=>[N(P(s.action_name),1)]),_:2},1032,["disabled","label","onChange"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue","disabled","onChange"])])])):z("",!0),d.action_data&&d.action_data.length>0?(h(),k("div",Pe,[_("div",We,[p(L,{modelValue:d.fieldAll,"onUpdate:modelValue":s=>d.fieldAll=s,disabled:f.value==="view",indeterminate:Q(ve)(d),onChange:s=>te(s,D,v,A)},{default:r(()=>[$e]),_:2},1032,["modelValue","onUpdate:modelValue","disabled","indeterminate","onChange"])]),_("div",je,[p(c,{modelValue:d.fieldList,"onUpdate:modelValue":s=>d.fieldList=s,disabled:f.value==="view",onChange:s=>oe(s,D,v,A)},{default:r(()=>[(h(!0),k(y,null,M(d.action_data,s=>(h(),B(L,{key:"FieldItem"+s.id,label:s.id,disabled:f.value==="view",onChange:H=>de(H,s.id,D,A)},{default:r(()=>[N(P(s.field_name),1)]),_:2},1032,["label","disabled","onChange"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue","disabled","onChange"])])])):z("",!0)],64))]))),128))])]),_:2},1024)):z("",!0)]),_:2},1024))),128))])])])]),_:1})]),_:1}),p(t,{span:24,class:"clear"},{default:r(()=>[f.value==="add"||f.value==="edit"?(h(),B(F,{key:0,type:"primary",class:"fr",style:{margin:"0 0 0 16px"},onClick:e[2]||(e[2]=v=>se($.value))},{default:r(()=>[Qe]),_:1})):z("",!0),p(F,{class:"fr",style:{margin:"0 0 0 16px"},onClick:b},{default:r(()=>[Xe]),_:1})]),_:1})]),_:1},8,["model","rules","size"])]),_:1},8,["modelValue","title"])),[[fe,U.value]])}}});var Ie=Le(Ye,[["__scopeId","data-v-6eb043e4"]]);export{Ie as default};