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