Files
qhmes/deploy-qhmes/frontend/js/MesXslWarehouseAreaBatchAddModal-CysEAckv.js
2026-05-15 11:34:12 +08:00

2 lines
5.0 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
var A=(I,N,i)=>new Promise((b,y)=>{var d=o=>{try{p(i.next(o))}catch(_){y(_)}},C=o=>{try{p(i.throw(o))}catch(_){y(_)}},p=o=>o.done?b(o.value):Promise.resolve(o.value).then(d,C);p((i=i.apply(I,N)).next())});import{d as K,ah as h,aC as k,as as m,aF as w,au as L,k as E,ar as x,ag as z,av as B,f as v,G as M,F as R,aG as T,e as W,u as S}from"./vue-vendor-C7Zq48Yl.js";import{B as X}from"./index-Du0A3ksf.js";import{ak as H,u as J}from"./index-BI6CMai0.js";import{b as Q}from"./MesXslWarehouseArea.api-Bk6XizKJ.js";import"./BasicModal-0sAdFEk_.js";import"./ModalHeader-keHdAHWH.js";import"./antd-vue-vendor-BPnV8VqP.js";import"./useTimeout-DDl4l82I.js";import"./vxe-table-vendor-B88kchpX.js";import"./index-DeEq83Ov.js";import"./useWindowSizeFn-PRZSD86C.js";import"./index-pxs5MULf.js";import"./index-BgYCgfME.js";import"./index-f8O7TghW.js";import"./useIntersectionObserver-BMxdTqP3.js";const Y={style:{"margin-bottom":"10px",display:"flex","justify-content":"space-between","align-items":"center"}},Z={style:{color:"#666","font-size":"13px"}},ee={key:0,style:{color:"#ff4d4f","font-size":"12px","margin-top":"2px"}},ae={key:0,style:{"text-align":"center",color:"#999",padding:"24px 0","font-size":"13px"}},Ce=K({__name:"MesXslWarehouseAreaBatchAddModal",emits:["register","success"],setup(I,{emit:N}){const{createMessage:i}=J(),b=N,y=v(""),d=v(""),C=v(void 0),p=v(void 0),o=v(!1);let _=0;const r=v([]),V=W(()=>d.value?`批量添加库区 ${d.value}`:"批量添加库区"),F=[{title:"序号",key:"seq",width:52,align:"center"},{title:"库区编码 *",key:"areaCode",width:180},{title:"库区名称",key:"areaName",width:180},{title:"最大存放量",key:"maxCapacity",width:130},{title:"操作",key:"action",width:60,align:"center"}],[q,{setModalProps:U,closeModal:G}]=H(e=>{var s,l,a,n,g,u,t,f;r.value=[],_=0,y.value=(l=(s=e==null?void 0:e.record)==null?void 0:s.id)!=null?l:"",d.value=(n=(a=e==null?void 0:e.record)==null?void 0:a.warehouseName)!=null?n:"",C.value=(u=(g=e==null?void 0:e.record)==null?void 0:g.warehouseCategory)!=null?u:void 0,p.value=(f=(t=e==null?void 0:e.record)==null?void 0:t.tenantId)!=null?f:void 0,$()});function $(){r.value.push({__key:_++,__codeError:"",__prevCode:"",areaCode:"",areaName:"",maxCapacity:void 0})}function O(e){r.value.splice(e,1)}function P(e){(!e.areaName||e.areaName===e.__prevCode)&&(e.areaName=e.areaCode),e.__prevCode=e.areaCode,e.__codeError=""}function j(e){!e.areaCode||!e.areaCode.trim()?e.__codeError="库区编码不能为空":e.__codeError=""}function D(){return A(this,null,function*(){if(r.value.length===0){i.warning("请至少添加一条库区记录");return}let e=!1;const s=new Set;for(const a of r.value){const n=(a.areaCode||"").trim();if(!n){a.__codeError="库区编码不能为空",e=!0;continue}if(s.has(n)){a.__codeError="库区编码重复",e=!0;continue}s.add(n),a.__codeError=""}if(e){i.error("请修正红色标记的错误后再提交");return}const l=r.value.map(a=>{var n;return{areaCode:a.areaCode.trim(),areaName:(a.areaName||a.areaCode).trim()||a.areaCode.trim(),maxCapacity:(n=a.maxCapacity)!=null?n:void 0,warehouseId:y.value,warehouseName:d.value,warehouseCategory:C.value,tenantId:p.value,status:"0"}});try{o.value=!0,U({confirmLoading:!0}),yield Q(l),i.success(`批量添加成功共创建 ${l.length} 个库区`),G(),b("success")}catch(a){}finally{o.value=!1,U({confirmLoading:!1})}})}return(e,s)=>{const l=h("a-button"),a=h("a-input"),n=h("a-input-number"),g=h("a-table");return m(),k(S(X),T(e.$attrs,{onRegister:S(q),destroyOnClose:"",title:V.value,width:700,confirmLoading:o.value,onOk:D}),{default:w(()=>[L("div",Y,[L("span",Z,""+B(r.value.length)+"",1),E(l,{type:"primary",size:"small",preIcon:"ant-design:plus-outlined",onClick:$},{default:w(()=>[...s[0]||(s[0]=[M("新增行",-1)])]),_:1})]),E(g,{columns:F,"data-source":r.value,pagination:!1,size:"small",bordered:"","row-key":"__key",scroll:{y:380}},{bodyCell:w(({column:u,record:t,index:f})=>[u.key==="seq"?(m(),x(R,{key:0},[M(B(f+1),1)],64)):u.key==="areaCode"?(m(),x(R,{key:1},[E(a,{value:t.areaCode,"onUpdate:value":c=>t.areaCode=c,placeholder:"库区编码(必填)",size:"small",status:t.__codeError?"error":"",onChange:c=>P(t),onBlur:c=>j(t)},null,8,["value","onUpdate:value","status","onChange","onBlur"]),t.__codeError?(m(),x("div",ee,B(t.__codeError),1)):z("",!0)],64)):u.key==="areaName"?(m(),k(a,{key:2,value:t.areaName,"onUpdate:value":c=>t.areaName=c,placeholder:"默认同库区编码",size:"small"},null,8,["value","onUpdate:value"])):u.key==="maxCapacity"?(m(),k(n,{key:3,value:t.maxCapacity,"onUpdate:value":c=>t.maxCapacity=c,min:0,precision:0,placeholder:"最大存放量",size:"small",style:{width:"100%"}},null,8,["value","onUpdate:value"])):u.key==="action"?(m(),k(l,{key:4,danger:"",type:"link",size:"small",onClick:c=>O(f)},{default:w(()=>[...s[1]||(s[1]=[M("删除",-1)])]),_:1},8,["onClick"])):z("",!0)]),_:1},8,["data-source"]),r.value.length===0?(m(),x("div",ae," 暂无库区明细,点击「新增行」添加 ")):z("",!0)]),_:1},16,["onRegister","title","confirmLoading"])}}});export{Ce as default};