addEdit.1c117d.js 6.5 KB

1
  1. import{_ as $,d as ee,m as ae,n as f,Q as I,ab as le,ck as oe,w as ue,r as m,aw as ne,B as te,o as h,A as k,y as r,h as u,e as x,i as se,H as w,a as T,cm as V,fh as re,fi as ie,q as de}from"./index.js";import ce from"./company-modal.755d18.js";const me={class:"w-full flex justify-center"},pe={class:"w-full flex justify-between items-center"},fe=ee({__name:"addEdit",props:{itemId:{type:String,default:""},showModel:{type:Boolean,default:!1},isDetails:{type:String,default:"add"},sitem:{type:Object}},emits:["cancel","refresh"],setup(q,{emit:S}){const{logout:O}=ae(),H=f("default"),D=f(),M=q,y=f(!1),U=S,L=f(""),i=f("add"),z={id:"",nickname:"",mobile:"",companyArr:[]},Q=f(null),l=I({...z}),N=f(null),{isSuperUser:G}=le();let C=[];const J=I({nickname:[{required:!0,message:"\u8BF7\u8F93\u5165\u771F\u5B9E\u59D3\u540D",trigger:"blur"},{min:2,max:12,message:"\u957F\u5EA6\u5728 2 \u5230 12 \u4E2A\u5B57\u7B26",trigger:"blur"}],mobile:[{required:!0,validator:(o,e,a)=>{e===""?a(new Error("\u624B\u673A\u53F7\u4E0D\u80FD\u4E3A\u7A7A\uFF01")):oe(e)?a():a(new Error("\u624B\u673A\u53F7\u683C\u5F0F\u4E0D\u6B63\u786E\uFF01"))},trigger:"blur"}],companyArr:[{required:!0,validator:(o,e,a)=>{e.length===0?a(new Error("\u8BF7\u9009\u62E9\u4E1A\u52A1\u516C\u53F8")):a()}}]}),K=async o=>{if(!o)return;const{companyArr:e}=l,a=e.find(({is_main:n})=>n);if(!a){V.warning("\u8BF7\u9009\u62E9\u9ED8\u8BA4\u516C\u53F8");return}await o.validate(async(n,d)=>{if(n){if(_.value===!0)return;const p=Object.assign({},l);i.value==="add"&&delete p.id;const v=p.companyArr.map(({companyCode:t})=>t),b=C.filter(({companyCode:t})=>!v.includes(t)).map(({companyCode:t,companyName:c,id:s})=>({id:s,companyCode:t,companyName:c,is_del:1})),g=C.filter(({companyCode:t})=>v.includes(t)).map(({companyCode:t,companyName:c,id:s})=>({id:s,companyCode:t,companyName:c,is_del:0})),E=p.companyArr.filter(({companyCode:t})=>!b.find(({companyCode:c})=>c===t)&&!g.find(({companyCode:c})=>c===t)).map(({companyCode:t,companyName:c,id:s})=>({id:s,companyCode:t,companyName:c,is_del:0}));p.companyArr=[...b,...g,...E],p.companyArr.forEach(t=>{t.is_main=t.companyCode===a.companyCode?"1":"0"}),_.value=!0;const{code:A,message:B}=i.value==="add"?await re(p):await ie(p);_.value=!1,A===0?(V.success(F.value+"\u6210\u529F\uFF01"),y.value=!1,U("refresh")):A>100&&A<140?(y.value=!1,O()):V.error(B)}})},P=async(o,e)=>{var a;o&&(o.clearValidate(),o.resetFields()),await de(async()=>{for(let n in l)n==="companyArr"&&e.company_relaton?i.value!=="add"?e.company_relaton.forEach(d=>{l.companyArr.push({...d,is_main:d.is_main==="1"})}):l.companyArr=[]:l[n]=e[n]}),C=((a=e.company_relaton)==null?void 0:a.map(n=>({...n,is_main:!1})))||[],i.value==="add"&&(l.companyArr=[],C=[])},R=()=>{y.value=!1,l.companyArr=[],U("cancel")},_=f(!0),F=f("");async function j(o){switch(_.value=!0,i.value){case"add":F.value="\u65B0\u5EFA\u8D26\u53F7";break;case"edit":F.value="\u7F16\u8F91\u8D26\u53F7";break;case"view":F.value="\u8D26\u53F7\u8BE6\u60C5";break;default:F.value="\u65B0\u5EFA\u8D26\u53F7"}P(D.value,o),_.value=!1}function W(o){const{companyArr:e}=l,a=e.findIndex(({is_main:d})=>d),n=o===e.length-1;a===o&&!n&&(l.companyArr[o+1].is_main=!0),l.companyArr.splice(o,1)}function X(o){const e=l.companyArr.map(({companyCode:a})=>a);o.forEach(a=>{if(!e.includes(a.code)){const{code:n,name:d}=a;l.companyArr.push({companyCode:n,companyName:d,is_main:!1})}})}ue(()=>M.showModel,()=>{const{showModel:o,itemId:e,isDetails:a,sitem:n}=M;y.value=o,y.value&&(L.value=e,i.value=a,j(a!=="add"?n:z))});function Y(o){l.companyArr.forEach((e,a)=>e.is_main=o===a)}return(o,e)=>{const a=m("el-input"),n=m("el-form-item"),d=m("el-col"),p=m("el-checkbox"),v=m("el-table-column"),b=m("ElButton"),g=m("el-table"),E=m("el-row"),A=m("el-button"),B=m("el-form"),t=m("el-dialog"),c=ne("loading");return te((h(),k(t,{"close-on-press-escape":!1,modelValue:y.value,"onUpdate:modelValue":e[4]||(e[4]=s=>y.value=s),"append-to-body":"",width:"900px",center:"",title:F.value,onClose:R,"close-on-click-modal":!1},{default:r(()=>[u(B,{class:"demo-ruleForm",ref_key:"ruleFormRef",ref:D,model:l,rules:J,"label-width":"90px",size:H.value,"status-icon":""},{default:r(()=>[u(E,null,{default:r(()=>[u(d,{span:24},{default:r(()=>[u(n,{label:"\u771F\u5B9E\u59D3\u540D",prop:"nickname"},{default:r(()=>[u(a,{modelValue:l.nickname,"onUpdate:modelValue":e[0]||(e[0]=s=>l.nickname=s),disabled:i.value==="view",placeholder:"\u771F\u5B9E\u59D3\u540D"},null,8,["modelValue","disabled"])]),_:1})]),_:1}),u(d,{span:24},{default:r(()=>[u(n,{label:"\u624B\u673A\u53F7",prop:"mobile"},{default:r(()=>[u(a,{modelValue:l.mobile,"onUpdate:modelValue":e[1]||(e[1]=s=>l.mobile=s),disabled:i.value==="view",maxlength:11,placeholder:"\u624B\u673A\u53F7"},null,8,["modelValue","disabled"])]),_:1})]),_:1}),u(d,{span:24},{default:r(()=>[u(n,{label:"\u4E1A\u52A1\u516C\u53F8",prop:"companyArr"},{default:r(()=>[u(g,{data:l.companyArr,border:"",size:"small","row-key":"companyCode","reserve-selection":"",ref_key:"tableRef",ref:Q},{default:r(()=>[u(v,{label:"\u9ED8\u8BA4\u516C\u53F8",width:"80px"},{default:r(({$index:s})=>[x("div",me,[u(p,{size:"small",disabled:i.value==="view",modelValue:l.companyArr[s].is_main,"onUpdate:modelValue":Z=>l.companyArr[s].is_main=Z,onChange:()=>Y(s)},null,8,["disabled","modelValue","onUpdate:modelValue","onChange"])])]),_:1}),u(v,{label:"\u516C\u53F8\u7F16\u7801",prop:"companyCode",width:"150px"}),u(v,{label:"\u516C\u53F8\u540D\u79F0",prop:"companyName"}),i.value!=="view"&&se(G)?(h(),k(v,{key:0,width:"100px",label:"\u64CD\u4F5C"},{header:r(()=>[x("div",pe,[e[6]||(e[6]=x("div",null,"\u64CD\u4F5C",-1)),u(b,{text:"",size:"small",type:"primary",onClick:e[2]||(e[2]=()=>N.value.onDisplay())},{default:r(()=>e[5]||(e[5]=[w("\u6DFB\u52A0")])),_:1})])]),default:r(({$index:s})=>[u(b,{text:"",size:"small",type:"danger",onClick:()=>W(s)},{default:r(()=>e[7]||(e[7]=[w("\u5220\u9664")])),_:2},1032,["onClick"])]),_:1})):T("v-if",!0)]),_:1},8,["data"])]),_:1})]),_:1})]),_:1}),u(d,{span:24,class:"clear"},{default:r(()=>[i.value==="add"||i.value==="edit"?(h(),k(A,{key:0,type:"primary",class:"fr",style:{margin:"0 0 0 16px"},onClick:e[3]||(e[3]=s=>K(D.value)),loading:_.value},{default:r(()=>e[8]||(e[8]=[w("\u4FDD\u5B58")])),_:1},8,["loading"])):T("v-if",!0),u(A,{class:"fr",style:{margin:"0 0 0 16px"},onClick:R},{default:r(()=>e[9]||(e[9]=[w("\u5173\u95ED")])),_:1})]),_:1})]),_:1},8,["model","rules","size"]),u(ce,{ref_key:"companyModalRef",ref:N,onChoose:X},null,512)]),_:1},8,["modelValue","title"])),[[c,_.value]])}}});var ve=$(fe,[["__file","D:/work/jiesuan/settle-vue3/src/views/supplierManage/supplierAccoutManage/addEdit.vue"]]);export{ve as default};