From 0ffe411dba5952e349d47512f9de5e05c800d1af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=80=A1=E8=93=89?= <377046077@qq.com> Date: Tue, 27 Jan 2026 17:31:05 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=A5=E5=BA=93=E9=83=A8=E5=88=86=E5=92=8C?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/domain/DeliveryNoticeItemVo.java | 4 + .../api/service/impl/ToErpServiceImpl.java | 19 +- .../service/impl/InStockinServiceImpl.java | 18 +- .../in/stockinback/domain/InStockinBack.java | 32 +++- .../mapper/InStockinBackMapper.java | 3 + .../service/IInStockinBackService.java | 2 + .../impl/InStockinBackServiceImpl.java | 5 + .../domain/InStockinDetailBack.java | 32 +++- .../mapper/in/InStockinBackMapper.xml | 25 ++- .../mapper/in/InStockinDetailBackMapper.xml | 20 +- .../src/views/in/stockIn/add/index_new.vue | 172 ++++++++++-------- ruoyi-ui/src/views/in/stockIn/index.vue | 2 +- 12 files changed, 247 insertions(+), 87 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/api/domain/DeliveryNoticeItemVo.java b/ruoyi-admin/src/main/java/com/ruoyi/api/domain/DeliveryNoticeItemVo.java index 9273d2f..8fd3ecd 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/api/domain/DeliveryNoticeItemVo.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/api/domain/DeliveryNoticeItemVo.java @@ -41,4 +41,8 @@ public class DeliveryNoticeItemVo { private String quantity; /** 备注 */ private String remark; + + private String area; + + private String location; } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/ToErpServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/ToErpServiceImpl.java index af7678b..0841b34 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/ToErpServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/ToErpServiceImpl.java @@ -12,7 +12,9 @@ import com.ruoyi.in.erp.domain.TransferBillCallback; import com.ruoyi.in.erp.service.ITransferBillCallbackService; import com.ruoyi.in.stockin.domain.InStockin; import com.ruoyi.in.stockin.service.IInStockinService; +import com.ruoyi.in.stockinback.domain.InStockinBack; import com.ruoyi.in.stockinback.service.IInStockinBackService; +import com.ruoyi.in.stockindeatilback.domain.InStockinDetailBack; import com.ruoyi.in.stockindeatilback.service.IInStockinDetailBackService; import com.ruoyi.in.stockindetail.domain.InStockinDetail; import com.ruoyi.in.stockindetail.service.IInStockinDetailService; @@ -300,11 +302,8 @@ public class ToErpServiceImpl implements IToErpService { @Override public void callbackInDeliveryNotice() { - InStockin inStockin = null; -// inStockin = inStockinService.selectInStockinByStockinId(billNo); - - String billNo=""; + InStockinBack inStockin = inStockinBackService.selectTopInStockin(); DeliveryNoticeVo deliveryNoticeVo = new DeliveryNoticeVo(); deliveryNoticeVo.setBillNo(inStockin.getStockinId()); deliveryNoticeVo.setNoteBillNo(inStockin.getStockinId()); @@ -321,13 +320,13 @@ public class ToErpServiceImpl implements IToErpService { deliveryNoticeVo.setApproveMan(inStockin.getSpare4()); deliveryNoticeVo.setRemark(inStockin.getSpare5()); - InStockinDetail inStockinDetailParam = new InStockinDetail(); - inStockinDetailParam.setStockinId(billNo); - List inStockinDetails = inStockinDetailService.selectInStockinDetailList(inStockinDetailParam); + InStockinDetailBack inStockinDetailParam = new InStockinDetailBack(); + inStockinDetailParam.setStockinId(inStockin.getStockinId()); + List inStockinDetails = inStockinDetailBackService.selectInStockinDetailBackList(inStockinDetailParam); List detailList = new ArrayList<>(); if (inStockinDetails != null && !inStockinDetails.isEmpty()) { - for (InStockinDetail detail : inStockinDetails) { + for (InStockinDetailBack detail : inStockinDetails) { DeliveryNoticeItemVo item = new DeliveryNoticeItemVo(); item.setLineNo(detail.getStockinDetailId()); item.setNotelineNo(detail.getStockinDetailId()); @@ -342,11 +341,15 @@ public class ToErpServiceImpl implements IToErpService { item.setUpperMaterial(detail.getSpare2()); item.setTopMaterial(detail.getSpare3()); item.setRemark(detail.getRemark()); + item.setArea(detail.getSpare9()); + item.setLocation(detail.getSpare8()); detailList.add(item); } } deliveryNoticeVo.setDetailList(detailList); + //todo 发送给erp 成功失败改状态 + // return AjaxResult.success(deliveryNoticeVo); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/in/stockin/service/impl/InStockinServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/in/stockin/service/impl/InStockinServiceImpl.java index 68fc1b5..99205df 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/in/stockin/service/impl/InStockinServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/in/stockin/service/impl/InStockinServiceImpl.java @@ -17,6 +17,7 @@ import com.ruoyi.in.stockin.service.IInStockinService; import com.ruoyi.in.stockinback.domain.InStockinBack; import com.ruoyi.in.stockinback.mapper.InStockinBackMapper; import com.ruoyi.in.stockinback.service.IInStockinBackService; +import com.ruoyi.in.stockindeatilback.domain.InStockinDetailBack; import com.ruoyi.in.stockindeatilback.mapper.InStockinDetailBackMapper; import com.ruoyi.in.stockindeatilback.service.IInStockinDetailBackService; import com.ruoyi.in.stockindetail.domain.InStockinDetail; @@ -209,9 +210,20 @@ public class InStockinServiceImpl implements IInStockinService } private void insertInStockinBack(InStockin inStockin){ - - inStockinBackMapper.insertInStockinBackById(inStockin); - inStockinDetailBackMapper.insertInStockinDetailBackById(inStockin); + InStockin inStockin1 = selectInStockinByStockinGuid(inStockin.getStockinGuid()); + InStockinBack inStockinBack = new InStockinBack(); + BeanUtil.copyProperties(inStockin1,inStockinBack); + inStockinBack.setSendStatus("0"); + inStockinBackMapper.insertInStockinBack(inStockinBack); + InStockinDetail inStockinDetail = new InStockinDetail(); + inStockinDetail.setStockinId(inStockin1.getStockinId()); + List inStockinDetails = iInStockinDetailService.selectInStockinDetailList(inStockinDetail); + for(InStockinDetail inStockinDetail1:inStockinDetails){ + InStockinDetailBack inStockinDetailBack = new InStockinDetailBack(); + BeanUtil.copyProperties(inStockinDetail1,inStockinDetailBack); + inStockinDetailBack.setSendStatus("0"); + inStockinDetailBackMapper.insertInStockinDetailBack(inStockinDetailBack); + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/in/stockinback/domain/InStockinBack.java b/ruoyi-admin/src/main/java/com/ruoyi/in/stockinback/domain/InStockinBack.java index 4a5c313..e97d854 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/in/stockinback/domain/InStockinBack.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/in/stockinback/domain/InStockinBack.java @@ -90,7 +90,37 @@ public class InStockinBack extends BaseEntity @Excel(name = "供应商编码546") private String supplierNo; - public void setStockinGuid(String stockinGuid) + private String sendStatus; + + private String sendTime; + + private String msg; + + public String getSendStatus() { + return sendStatus; + } + + public void setSendStatus(String sendStatus) { + this.sendStatus = sendStatus; + } + + public String getSendTime() { + return sendTime; + } + + public void setSendTime(String sendTime) { + this.sendTime = sendTime; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } + + public void setStockinGuid(String stockinGuid) { this.stockinGuid = stockinGuid; } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/in/stockinback/mapper/InStockinBackMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/in/stockinback/mapper/InStockinBackMapper.java index f3bded8..ecb64ab 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/in/stockinback/mapper/InStockinBackMapper.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/in/stockinback/mapper/InStockinBackMapper.java @@ -62,4 +62,7 @@ public interface InStockinBackMapper * @return 结果 */ public int deleteInStockinBackByStockinGuids(String[] stockinGuids); + + + public InStockinBack selectTopInStockin(); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/in/stockinback/service/IInStockinBackService.java b/ruoyi-admin/src/main/java/com/ruoyi/in/stockinback/service/IInStockinBackService.java index d42f27d..30d015c 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/in/stockinback/service/IInStockinBackService.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/in/stockinback/service/IInStockinBackService.java @@ -58,4 +58,6 @@ public interface IInStockinBackService * @return 结果 */ public int deleteInStockinBackByStockinGuid(String stockinGuid); + + public InStockinBack selectTopInStockin(); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/in/stockinback/service/impl/InStockinBackServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/in/stockinback/service/impl/InStockinBackServiceImpl.java index abeee0c..7a0f219 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/in/stockinback/service/impl/InStockinBackServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/in/stockinback/service/impl/InStockinBackServiceImpl.java @@ -90,4 +90,9 @@ public class InStockinBackServiceImpl implements IInStockinBackService { return inStockinBackMapper.deleteInStockinBackByStockinGuid(stockinGuid); } + + @Override + public InStockinBack selectTopInStockin() { + return inStockinBackMapper.selectTopInStockin(); + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/in/stockindeatilback/domain/InStockinDetailBack.java b/ruoyi-admin/src/main/java/com/ruoyi/in/stockindeatilback/domain/InStockinDetailBack.java index 47f347c..68990fe 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/in/stockindeatilback/domain/InStockinDetailBack.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/in/stockindeatilback/domain/InStockinDetailBack.java @@ -146,7 +146,37 @@ public class InStockinDetailBack extends BaseEntity @Excel(name = "物料名称546") private String productName; - public void setStockinDetailId(String stockinDetailId) + private String sendStatus; + + private String sendTime; + + private String msg; + + public String getSendStatus() { + return sendStatus; + } + + public void setSendStatus(String sendStatus) { + this.sendStatus = sendStatus; + } + + public String getSendTime() { + return sendTime; + } + + public void setSendTime(String sendTime) { + this.sendTime = sendTime; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } + + public void setStockinDetailId(String stockinDetailId) { this.stockinDetailId = stockinDetailId; } diff --git a/ruoyi-admin/src/main/resources/mapper/in/InStockinBackMapper.xml b/ruoyi-admin/src/main/resources/mapper/in/InStockinBackMapper.xml index cf4d654..36519fa 100644 --- a/ruoyi-admin/src/main/resources/mapper/in/InStockinBackMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/in/InStockinBackMapper.xml @@ -24,10 +24,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + - select stockin_guid, stockin_id, in_type, create_date, create_man_id, status, warehouse_id, spare5, spare4, spare3, finish_date, spare2, spare1, erp_bill, stock_source, department_no, customer_no, class_no, supplier_no from in_stockin_back + select stockin_guid, stockin_id, in_type, create_date, create_man_id, status, warehouse_id, + spare5, spare4, spare3, finish_date, spare2, spare1, erp_bill, stock_source, department_no, + customer_no, class_no, supplier_no,send_status,send_time,msg from in_stockin_back @@ -81,6 +89,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" customer_no, class_no, supplier_no, + send_status, + send_time, + msg, #{stockinGuid}, @@ -102,6 +113,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{customerNo}, #{classNo}, #{supplierNo}, + #{sendStatus}, + #{sendTime}, + #{msg}, @@ -131,6 +145,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" customer_no = #{customerNo}, class_no = #{classNo}, supplier_no = #{supplierNo}, + send_status = #{sendStatus}, + send_time = #{senTime}, + msg = #{msg}, where stockin_guid = #{stockinGuid} @@ -145,4 +162,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{stockinGuid} + + \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/mapper/in/InStockinDetailBackMapper.xml b/ruoyi-admin/src/main/resources/mapper/in/InStockinDetailBackMapper.xml index 51d7dc6..3d14518 100644 --- a/ruoyi-admin/src/main/resources/mapper/in/InStockinDetailBackMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/in/InStockinDetailBackMapper.xml @@ -39,10 +39,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + - select stockin_detail_id, stockin_guid, stockin_id, lot_no, product_guid, product_id, quantity, quantity_x, quantity_j, price, cargo_no, remark, assign_num, assign_num_x, assign_num_j, print_date, stock_status, supplier_id, customer_id, unit, spec, spare1, spare2, spare3, spare4, spare5, spare6, scan_num, scan_num_x, scan_num_j, spare7, spare8, spare9, product_name from in_stockin_detail_back + select stockin_detail_id, stockin_guid, stockin_id, lot_no, product_guid, product_id, quantity, + quantity_x, quantity_j, price, cargo_no, remark, assign_num, assign_num_x, assign_num_j, + print_date, stock_status, supplier_id, customer_id, unit, spec, spare1, spare2, spare3, + spare4, spare5, spare6, scan_num, scan_num_x, scan_num_j, spare7, spare8, spare9, product_name,send_status,send_time,msg from in_stockin_detail_back @@ -125,6 +134,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" spare8, spare9, product_name, + send_status, + send_time, + msg, #{stockinDetailId}, @@ -161,6 +173,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{spare8}, #{spare9}, #{productName}, + #{sendStatus}, + #{sendTime}, + #{msg}, @@ -206,6 +221,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" spare8 = #{spare8}, spare9 = #{spare9}, product_name = #{productName}, + send_status = #{sendStatus}, + send_time = #{senTime}, + msg = #{msg}, where stockin_detail_id = #{stockinDetailId} diff --git a/ruoyi-ui/src/views/in/stockIn/add/index_new.vue b/ruoyi-ui/src/views/in/stockIn/add/index_new.vue index b8f897e..946fdda 100644 --- a/ruoyi-ui/src/views/in/stockIn/add/index_new.vue +++ b/ruoyi-ui/src/views/in/stockIn/add/index_new.vue @@ -19,9 +19,9 @@ - + --> - - - - + + + + + + + + + + + + + @@ -554,24 +583,24 @@ export default { const newProducts = this.selectedProducts.map(item => ({ productGuid: item.productGuid, productId: item.productId, - parentId: item.parentId, - price: item.price, - cargoNo: item.cargoNo, - unit: "", + // parentId: item.parentId, + // price: item.price, + // cargoNo: item.cargoNo, + // unit: "", spec: item.spec, - remark: item.remark, + // remark: item.remark, productName: item.productName, - quantity: 1, - spare1: item.spare1, - spare2: item.spare2, - spare3: item.spare3, - spare4: item.spare4, - spare5: item.spare5, - spare6: item.spare6, - spare7: item.spare7, - spare8: item.spare8, - spare9:"", - lotNo:"", + // quantity: 1, + // spare1: item.spare1, + // spare2: item.spare2, + // spare3: item.spare3, + // spare4: item.spare4, + // spare5: item.spare5, + // spare6: item.spare6, + // spare7: item.spare7, + // spare8: item.spare8, + // spare9:"", + // lotNo:"", })); this.productList.push(...newProducts); @@ -618,59 +647,60 @@ export default { for (let i = 0; i < this.productList.length; i++) { const item = this.productList[i]; if (!item.spare1) { - this.$modal.msgError(`品号 ${item.productId} 的型号未填写`); + this.$modal.msgError(`品号 ${item.productId} 的层级关系未填写`); return; } if (!item.spare2) { - this.$modal.msgError(`品号 ${item.productId} 的净重未填写`); - return; - } - if (!item.spare3) { - this.$modal.msgError(`品号 ${item.productId} 的颜色未填写`); - return; - } - if (!item.spare4) { - this.$modal.msgError(`品号 ${item.productId} 的序列号未填写`); - return; - } - if (!item.spare5) { - this.$modal.msgError(`品号 ${item.productId} 的电压未填写`); - return; - } - if (!item.spare6) { - this.$modal.msgError(`品号 ${item.productId} 的功率未填写`); - return; - } - if (!item.spare7) { - this.$modal.msgError(`品号 ${item.productId} 的相位未填写`); - return; - } - if (!item.spare8) { - this.$modal.msgError(`品号 ${item.productId} 的毛重未填写`); - return; - } - if (!item.quantity) { - this.$modal.msgError(`品号 ${item.productId} 的数量未填写`); - return; - } - if (!item.lotNo) { - this.$modal.msgError(`品号 ${item.productId} 的批次号未填写`); - return; - } - if (!item.unit) { - this.$modal.msgError(`品号 ${item.productId} 的机型未填写`); - return; - } - if (!item.spare9) { - this.$modal.msgError(`品号 ${item.productId} 的分销未填写`); + this.$modal.msgError(`品号 ${item.productId} 的上层物料未填写`); return; } + // if (!item.spare3) { + // this.$modal.msgError(`品号 ${item.productId} 的颜色未填写`); + // return; + // } + // if (!item.spare4) { + // this.$modal.msgError(`品号 ${item.productId} 的序列号未填写`); + // return; + // } + // if (!item.spare5) { + // this.$modal.msgError(`品号 ${item.productId} 的电压未填写`); + // return; + // } + // if (!item.spare6) { + // this.$modal.msgError(`品号 ${item.productId} 的功率未填写`); + // return; + // } + // if (!item.spare7) { + // this.$modal.msgError(`品号 ${item.productId} 的相位未填写`); + // return; + // } + // if (!item.spare8) { + // this.$modal.msgError(`品号 ${item.productId} 的毛重未填写`); + // return; + // } + // if (!item.quantity) { + // this.$modal.msgError(`品号 ${item.productId} 的数量未填写`); + // return; + // } + // if (!item.lotNo) { + // this.$modal.msgError(`品号 ${item.productId} 的批次号未填写`); + // return; + // } + // if (!item.unit) { + // this.$modal.msgError(`品号 ${item.productId} 的机型未填写`); + // return; + // } + // if (!item.spare9) { + // this.$modal.msgError(`品号 ${item.productId} 的分销未填写`); + // return; + // } } // 构建请求数据 const data = { warehouseId: "01", supplierId: this.form.supplierId, + classNo:this.classNo, remark: this.form.remark, inType:this.form.inType, erpBill:this.form.erpBill, @@ -686,12 +716,12 @@ export default { spare1: item.spare1, spare2: item.spare2, spare3: item.spare3, - spare4: item.spare4, - spare5: item.spare5, - spare6: item.spare6, - spare7: item.spare7, - spare8: item.spare8, - spare9: item.spare9, + // spare4: item.spare4, + // spare5: item.spare5, + // spare6: item.spare6, + // spare7: item.spare7, + // spare8: item.spare8, + // spare9: item.spare9, unit:item.unit, productName: item.productName })) diff --git a/ruoyi-ui/src/views/in/stockIn/index.vue b/ruoyi-ui/src/views/in/stockIn/index.vue index 15a3796..8b5e59c 100644 --- a/ruoyi-ui/src/views/in/stockIn/index.vue +++ b/ruoyi-ui/src/views/in/stockIn/index.vue @@ -267,7 +267,7 @@ import VueQr from 'vue-qr' export default { name: "StockIn", - dicts: ['bill_resource', 'in_bill_status', 'in_bill_type', 'bill_resource'], + dicts: ['bill_resource', 'in_bill_status', 'in_bill_type'], components: { vueEasyPrint, VueQr