zcui/saber3/src/frontend/dist/assets/Entry-D6uFOOuc.js

3 lines
27 KiB
JavaScript
Raw Normal View History

2026-06-16 14:07:58 +08:00
import{_ as fe,U as Ve,o as be,c as we,a as C,e,f as a,k as v,i as L,q as ye,j as c,h as f,t as T,E as U}from"./index-CsXfDo-r.js";const ce={class:"annual-plan-entry"},he={class:"table-toolbar"},ge={class:"form-actions"},ve={class:"table-toolbar"},_e={__name:"Entry",setup(Ue){const N=v("apply"),$=v(null),z=v(null),k=v(!1),D=v(!1),S=v(!1),x=v(0),j=v(0),h=v([]),R=v(null),O=new Date().getFullYear(),I=L(()=>{const r=new Date,t=r.getFullYear()+String(r.getMonth()+1).padStart(2,"0")+String(r.getDate()).padStart(2,"0"),V=String(r.getHours()).padStart(2,"0")+String(r.getMinutes()).padStart(2,"0"),p=Math.floor(Math.random()*1e3).toString().padStart(3,"0");return`ND${t}${V}${p}`}),A=L(()=>pe(d.estimatedTotalAmount||0)),d=ye({applicant:"管理员",applyTime:new Date,phone:"",company:"",documentNo:"",year:new Date,department:"采购部",applyCompany:"",isPlanned:"计划内",estimatedTotalAmount:0,remark:"",details:[]}),F={phone:[{required:!0,message:"请输入联系电话",trigger:"blur"},{pattern:/^1[3-9]\d{9}$/,message:"请输入正确的手机号码",trigger:"blur"}],company:[{required:!0,message:"请选择所属公司",trigger:"change"}],year:[{required:!0,message:"请选择年度",trigger:"change"}],department:[{required:!0,message:"请输入所属部门",trigger:"blur"}],applyCompany:[{required:!0,message:"请输入所属公司",trigger:"blur"}]},E=[{name:"张三",department:"采购部",position:"采购专员",phone:"138-0001-0001"},{name:"李四",department:"采购部",position:"采购主管",phone:"138-0001-0002"},{name:"王五",department:"技术部",position:"技术经理",phone:"138-0001-0003"},{name:"赵六",department:"财务部",position:"财务专员",phone:"138-0001-0004"},{name:"孙七",department:"行政部",position:"行政主管",phone:"138-0001-0005"}],P={};Ve(()=>{var r,t;(r=$.value)==null||r.clearValidate(),(t=z.value)==null||t.clearValidate(),N.value="apply",d.documentNo=I.value,d.year=new Date});const G=r=>{d.applyCompany=r},Q=()=>{d.estimatedTotalAmount=d.details.reduce((r,t)=>r+(t.budgetAmount||0),0)},J=()=>{const r=d.details.length+1;d.details.push({year:O,plan:`计划-${String(r).padStart(3,"0")}`,planType:"",seqNo:String(r),projectName:"",projectType:"",contactPerson:"",applyDate:new Date,expectedDate:new Date,projectAttribute:"",procurementRequirement:"",budgetAmount:0,biddingMethod:"",projectIntro:"",detailRemark:"",materialId:`00${d.details.length+1}`})},W=r=>{d.details.splice(r,1),d.details.forEach((t,V)=>{t.seqNo=String(V+1),t.plan=`计划-${String(V+1).padStart(3,"0")}`}),Q()},X=r=>{x.value=r,k.value=!0},Z=r=>{d.details[x.value].contactPerson=r.name,k.value=!1},ee=r=>{x.value=r;const t=`${x.value}`;h.value=P[t]||[],D.value=!0},le=r=>{const t=r.materialId||`${x.value}`;h.value=P[t]||[],D.value=!0},ae=()=>{const r=h.value.length+1;h.value.push({seqNo:String(r),materialName:"",materialCode:`M${String(r).padStart(3,"0")}`,spec:"",brand:"",unit:"",referencePrice:0,expectedQuantity:0,amount:0,contactPerson:"",applyDate:new Date,expectedDate:new Date,projectAttribute:"",requirementIntro:"",remark:""})},te=r=>{h.value.splice(r,1),h.value.forEach((t,V)=>{t.seqNo=String(V+1),t.materialCode=`M${String(V+1).padStart(3,"0")}`})},q=r=>{const t=h.value[r];t.amount=(t.referencePrice||0)*(t.expectedQuantity||0)},oe=r=>{j.value=r,S.value=!0},de=r=>{h.value[j.value].contactPerson=r.name,S.value=!1},ne=()=>{const r=`${x.value}`;P[r]=[...h.value],U.success("物料明细保存成功"),D.value=!1},re=()=>{var r;(r=R.value)==null||r.click()},ue=r=>{const t=r.target.files[0];if(!t)return;const V=new FileReader;V.onload=p=>{try{p.target.result.split(`
`).filter(b=>b.trim()).forEach((b,w)=>{if(w===0)return;const u=b.split(",");if(u.length>=2){const s=h.value.length+1;h.value.push({seqNo:String(s),materialName:u[0]||"",materialCode:`M${String(s).padStart(3,"0")}`,spec:u[1]||"",brand:"",unit:u[2]||"个",referencePrice:parseFloat(u[3])||0,expectedQuantity:parseInt(u[4])||0,amount:0,contactPerson:"",applyDate:new Date,expectedDate:new Date,projectAttribute:"",requirementIntro:u[5]||"",remark:""})}}),h.value.forEach((b,w)=>{q(w)}),U.success("导入成功")}catch{U.error("导入失败,请检查文件格式")}},V.readAsText(t),r.target.value=""},pe=r=>{if(r===0)return"零元整";const t=["零","壹","贰","叁","肆","伍","陆","柒","捌","玖"],V=["","拾","佰","仟"],p=["","万","亿"],i=Math.floor(r),m=Math.round((r-i)*100);let b="";const w=u=>{let s="";const _=u.toString();for(let y=0;y<_.length;y++){const n=parseInt(_[y]),g=_.length-y-1;n!==0?(s+=t[n]+V[g%4],g%4===0&&g>0&&(s+=p[Math.floor(g/4)])):s+=t[0]}return s=s.replace(/零+$/,""),s=s.replace(/零+/g,"零"),s};if(i>0&&(b+=w(i)+"元"),m>0){const u=Math.floor(m/10),s=m%10;u>0&&(b+=t[u]+"角"),s>0&&(b+=t[s]+"分")}else b+="整";return b},Y=r=>{if(!r)return"";const t=new Date(r);return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")}`},ie=()=>{B(),U.info("表单已重置")},B=()=>{Object.assign(d,{applicant:"管理员",applyTime:new Date,phone:"",company:"",documentNo:I.value,year:new Date,department:"采购部",applyCompany:"",isPlanned:"计划内",estimatedTotalAmount:0,remark:"",details:[]})},me=()=>{const r=N.value==="apply"?$.value:z.value;if(!r){U.warning("表单未初始化");return}r.validate(t=>{if(t)U.success("提交成功"),B();else return U.error("请填写完整信息"),!1})};return(r,t)=>{const V=c("el-divider"),p=c("el-input"),i=c("el-form-item"),m=c("el-col"),b=c("el-date-picker"),w=c("el-row"),u=c("el-option"),s=c("el-select"),_=c("el-input-number"),y=c("el-button"),n=c("el-table-column"),g=c("el-table"),K=c("el-form"),H=c("el-tab-pane"),se=c("el-tabs"),M=c("el-dialog");return be(),we("div",ce,[t[50]||(t[50]=C("div",{class:"page-header"},[C("h2",null,"年度计划录入")],-1)),e(se,{modelValue:N.value,"onUpdate:modelValue":t[24]||(t[24]=l=>N.value=l),type:"border-card"},{default:a(()=>[e(H,{label:"申请页",name:"apply"},{default:a(()=>[e(K,{model:d,rules:F,ref_key:"formRef",ref:$,"label-width":"140px"},{default:a(()=>[e(V,{"content-position":"left"},{default:a(()=>[...t[31]||(t[31]=[f("发起人信息",-1)])]),_:1}),e(w,{gutter:20},{default:a(()=>[e(m,{span:12},{default:a(()=>[e(i,{label:"申请人",prop:"applicant"},{default:a(()=>[e(p,{modelValue:d.applicant,"onUpdate:modelValue":t[0]||(t[0]=l=>d.applicant=l),placeholder:"请输入申请人",disabled:""},null,8,["modelValue"])]),_:1})]),_:1}),e(m,{span:12},{default:a(()=>[e(i,{label:"申请时间",prop:"applyTime"},{default:a(()=>[e(b,{modelValue:d.applyTime,"onUpdate:modelValue":t[1]||(t[1]=l=>d.applyTime=l),type:"datetime",placeholder:"请选择申请时间",style:{width:"100%"},disabled:""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),e(w,{gutter:20},{default:a(()=>[e(m,{span:12},{default:a(()=>[e(i,{label:"联系电话",prop:"phone"},{default:a(()=>[e(p,{modelValue:d.phone,"onUpdate:modelValue":t[2]||(t[2]=l=>d.phone=l),placeholder:"请输入联系电话"},null,8,["modelValue"])]),_:1})]),_:1}),e(m,{span:12},{default:a(()=>[e(i,{label:"所属公司",prop:"company"},{default:a(()=>[e(s,{modelValue:d.company,"onUpdate:modelValue":t[3]||(t[3]=l=>d.company=l),placeholder:"请选择所属公司",style:{width:"100%"},onChange:G},{default:a(()=>[e(u,{label:"漱玉平民大药房连锁股份有限公司",value:"漱玉平民大药房连锁股份有限公司"}),e(u,{label:"山东漱玉平民大药房有限公司",value:"山东漱玉平民大药房有限公司"}),e(u,{label:"济南漱玉平民大药房有限公司",value:"济南漱玉平民大药房有限公司"})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),e(V,{"content-position":"left"},{default:a(()=>[...t[32]||(t[32]=[f("申请信息",-1)]