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