diff --git a/op-modules/op-device/src/main/java/com/op/device/domain/EquEquipment.java b/op-modules/op-device/src/main/java/com/op/device/domain/EquEquipment.java index 46647fcb..23e3d0ee 100644 --- a/op-modules/op-device/src/main/java/com/op/device/domain/EquEquipment.java +++ b/op-modules/op-device/src/main/java/com/op/device/domain/EquEquipment.java @@ -104,13 +104,13 @@ public class EquEquipment extends BaseEntity { * 预留字段3 */ @Excel(name = "预留字段3") - private Long attr3; + private String attr3; /** * 预留字段4 */ @Excel(name = "预留字段4") - private Long attr4; + private String attr4; /** * 工段 @@ -394,19 +394,19 @@ public class EquEquipment extends BaseEntity { return attr2; } - public void setAttr3(Long attr3) { + public void setAttr3(String attr3) { this.attr3 = attr3; } - public Long getAttr3() { + public String getAttr3() { return attr3; } - public void setAttr4(Long attr4) { + public void setAttr4(String attr4) { this.attr4 = attr4; } - public Long getAttr4() { + public String getAttr4() { return attr4; } diff --git a/op-modules/op-device/src/main/java/com/op/device/domain/Equipment.java b/op-modules/op-device/src/main/java/com/op/device/domain/Equipment.java index ac49f6b1..c69693a8 100644 --- a/op-modules/op-device/src/main/java/com/op/device/domain/Equipment.java +++ b/op-modules/op-device/src/main/java/com/op/device/domain/Equipment.java @@ -96,13 +96,13 @@ public class Equipment extends BaseEntity { * 预留字段3 */ @Excel(name = "预留字段3") - private Long attr3; + private String attr3; /** * 预留字段4 */ @Excel(name = "预留字段4") - private Long attr4; + private String attr4; /** * 工段 @@ -347,19 +347,19 @@ public class Equipment extends BaseEntity { return attr2; } - public void setAttr3(Long attr3) { + public void setAttr3(String attr3) { this.attr3 = attr3; } - public Long getAttr3() { + public String getAttr3() { return attr3; } - public void setAttr4(Long attr4) { + public void setAttr4(String attr4) { this.attr4 = attr4; } - public Long getAttr4() { + public String getAttr4() { return attr4; } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/controller/OdsProcureOrderController.java b/op-modules/op-wms/src/main/java/com/op/wms/controller/OdsProcureOrderController.java index ed54e9e3..ac695e1b 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/controller/OdsProcureOrderController.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/controller/OdsProcureOrderController.java @@ -51,7 +51,7 @@ public class OdsProcureOrderController extends BaseController { } /**获取标识卡**/ @PostMapping("/getIdCardList") - public List getIdCardList(@RequestBody OdsProcureOrder odsProcureOrder) { + public List getIdCardList(@RequestBody OdsProcureOrder odsProcureOrder) { return odsProcureOrderService.getIdCardList(odsProcureOrder); } /** diff --git a/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java b/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java index 2f4196c1..ea4baa5a 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java @@ -306,11 +306,15 @@ public class WmsToWCSmissionController { */ @PostMapping("/WmsProductPutByWorkOrderqueryBS") public AjaxResult WmsProductPutByWorkOrderqueryBS(@RequestBody WmsProductPut wmsProductPut) { - WmsProductPut wmsProductPut1= wmsProductPutService.WmsProductPutByWorkOrderqueryBS(wmsProductPut); - if (wmsProductPut1==null) { - return AjaxResult.error("标识卡未绑定"); + try { + // 调用服务层方法获取 WmsProductPut 对象 + WmsProductPut wmsProductPut1 = wmsProductPutService.WmsProductPutByWorkOrderqueryBS(wmsProductPut); + // 返回成功结果 + return AjaxResult.success(wmsProductPut1); + } catch (Exception e) { + // 捕捉到异常时,返回错误提示 + return AjaxResult.error("扫描标识卡异常,检查标识卡是否有问题:" + e.getMessage()); } - return AjaxResult.success(wmsProductPut1); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseEquipment.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseEquipment.java index 446e5a06..920c9462 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseEquipment.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseEquipment.java @@ -63,10 +63,10 @@ public class BaseEquipment extends BaseEntity { private String attr2; @Excel(name = "预留字段3") - private Long attr3; + private String attr3; @Excel(name = "预留字段4") - private Long attr4; + private String attr4; @Excel(name = "单台能力工时") private String unitWorkingHours; @@ -677,19 +677,19 @@ public class BaseEquipment extends BaseEntity { return attr2; } - public void setAttr3(Long attr3) { + public void setAttr3(String attr3) { this.attr3 = attr3; } - public Long getAttr3() { + public String getAttr3() { return attr3; } - public void setAttr4(Long attr4) { + public void setAttr4(String attr4) { this.attr4 = attr4; } - public Long getAttr4() { + public String getAttr4() { return attr4; } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOrder.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOrder.java index 77433d6a..b7583344 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOrder.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOrder.java @@ -71,6 +71,8 @@ public class OdsProcureOrder extends BaseEntity { */ @Excel(name = "工厂编码") private String siteCode; + private String cardNum; + /** * 仓库编码--收货仓库 */ @@ -283,6 +285,14 @@ public class OdsProcureOrder extends BaseEntity { this.Remark = Remark; } + public String getCardNum() { + return cardNum; + } + + public void setCardNum(String cardNum) { + this.cardNum = cardNum; + } + /** * 供应商名称 */ diff --git a/op-modules/op-wms/src/main/java/com/op/wms/mapper/OdsProcureOrderMapper.java b/op-modules/op-wms/src/main/java/com/op/wms/mapper/OdsProcureOrderMapper.java index 7c9cdaa1..09de2d8f 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/mapper/OdsProcureOrderMapper.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/mapper/OdsProcureOrderMapper.java @@ -3,6 +3,7 @@ package com.op.wms.mapper; import java.util.List; import com.op.wms.domain.OdsProcureOrder; +import org.apache.ibatis.annotations.Param; /** * 包材采购单Mapper接口 @@ -72,4 +73,6 @@ public interface OdsProcureOrderMapper { void updateOdsProcureOrderByProcureCode(OdsProcureOrder odsProcureOrder); List getIdCardList(OdsProcureOrder odsProcureOrder); + + void addBatchPallet(@Param("list")List dtos); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsProductPutMapper.java b/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsProductPutMapper.java index 6f378db4..68dea54f 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsProductPutMapper.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsProductPutMapper.java @@ -4,6 +4,7 @@ import java.util.List; import com.op.system.api.domain.wms.wmsReportWork; +import com.op.wms.domain.ProOrderWorkorder; import com.op.wms.domain.WmsProductPut; import org.apache.ibatis.annotations.Param; @@ -81,6 +82,10 @@ public interface WmsProductPutMapper { WmsProductPut selectProOrderWorkorderBatchPallet(WmsProductPut wmsProductPut); + WmsProductPut selectProOrderWorkorderBatchPalletcode(WmsProductPut wmsProductPut); + + WmsProductPut selectProOrderWorkorderBatchPalletAtter(ProOrderWorkorder proOrderWorkorder); + // String selectWmsProductPutNum(wmsReportWork wmsReportWork); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOrderService.java b/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOrderService.java index 4fb5c8f8..19e19d67 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOrderService.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOrderService.java @@ -112,5 +112,5 @@ public interface IOdsProcureOrderService { void OutboundPostingSAPfc(List orderList); - List getIdCardList(OdsProcureOrder odsProcureOrder); + List getIdCardList(OdsProcureOrder odsProcureOrder); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOrderServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOrderServiceImpl.java index bcf45168..ef625d19 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOrderServiceImpl.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOrderServiceImpl.java @@ -15,6 +15,7 @@ import java.util.*; import com.op.common.core.domain.R; +import com.op.common.core.utils.DateUtils; import com.op.common.core.web.domain.AjaxResult; import com.op.common.security.utils.SecurityUtils; import com.op.system.api.RemoteOpenService; @@ -41,6 +42,7 @@ import com.op.wms.mapper.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.op.wms.service.IOdsProcureOrderService; +import org.springframework.util.CollectionUtils; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; @@ -77,6 +79,9 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { private WmsRawOrderInMapper wmsRawOrderInMapper; @Autowired private RemoteOpenService remoteOpenService; + @Autowired + private BaseProductAttachedMapper baseProductAttachedMapper; + /** * 查询包材采购单 * @@ -1075,10 +1080,69 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { @Override - public List getIdCardList(OdsProcureOrder odsProcureOrder) { - List orderList= odsProcureOrderMapper.getIdCardList(odsProcureOrder); + @DS("#header.poolName") + public List getIdCardList(OdsProcureOrder odsProcureOrder) { +// DynamicDataSourceContextHolder.push("ds_" + odsProcureOrder.getFactoryCode()); + List dtos = new ArrayList<>(); + OdsProcureOrder order=odsProcureOrderMapper.selectOdsProcureOrderByID(odsProcureOrder.getID()); + //根据采购单获取一托盘要装多少 + BaseProductAttached baseProductAttached=new BaseProductAttached(); + String trimmedMaterialCode = order.getMaterialCode().substring(7); + baseProductAttached.setProductCode(trimmedMaterialCode); + List baseProductAttacheds= baseProductAttachedMapper.selectBaseProductAttachedList(baseProductAttached); + if (baseProductAttacheds.size()==0){ + //没有配置附属信息 + return null; + } + String name = odsProcureOrderMapper.selectBaseSupplier(order); + order.setSupplierName(name); + List dtos0= odsProcureOrderMapper.getIdCardList(order); + if(dtos0.size()==0){ + //说明没生成过标识卡 + OdsProcureOrder pw = new OdsProcureOrder(); + int i = 1; + String palletNum = baseProductAttacheds.get(0).getPalletNum(); + Date nowDate = DateUtils.getNowDate(); + + if(palletNum!=null){ + BigDecimal pall = order.getPlanNumber(); + BigDecimal pn = new BigDecimal(palletNum); + while(pall.compareTo(BigDecimal.ZERO)>0){ + pw = new OdsProcureOrder(); + pw.setSiteCode(order.getSiteCode()); + + pw.setProcureCode(order.getProcureCode()); + pw.setUserDefined3(order.getUserDefined3());//行项目 + pw.setMaterialCode(order.getMaterialCode()); + pw.setMaterialDesc(order.getMaterialDesc()); + pw.setPlanNumber(pn); + pw.setSupplierCode(order.getSupplierCode()); + pw.setSupplierName(order.getSupplierName()); + pw.setUserDefined8(order.getUserDefined8()); + pw.setUserDefined11(order.getUserDefined11()); + pw.setUnit(order.getUnit()); + if(pall.compareTo(pn)<0) {//最后一托盘 + pw.setPlanNumber(pall); + }else{ + pw.setPlanNumber(pn); + } + pw.setCardNum(String.valueOf(i++)); + String dateString = pw.getUserDefined11().replace("-", ""); + pw.setUserDefined1(pw.getProcureCode()+"-"+pw.getUserDefined3()+"-"+pw.getUserDefined8()+"-"+dateString+"-"+pw.getCardNum());//采购单+行项目+类型+日期+板次 + pw.setCreateTime(nowDate); + pw.setActive("1"); + dtos.add(pw); + pall = pall.subtract(pn); + } + } - return null; + if(!CollectionUtils.isEmpty(dtos)){ + odsProcureOrderMapper.addBatchPallet(dtos); + } + }else{ + dtos.addAll(dtos0); + } + return dtos; } public String DesignatedPalletOutboundWCS(WMSDesignatedPalle wmsDesignatedPalle) { diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsProductPutServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsProductPutServiceImpl.java index 288d346a..4281320d 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsProductPutServiceImpl.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsProductPutServiceImpl.java @@ -1032,11 +1032,11 @@ public class WmsProductPutServiceImpl implements IWmsProductPutService { public WmsProductPut WmsProductPutByWorkOrderqueryBS(WmsProductPut wmsProductPut) { // 使用 split 方法根据 '-' 分割字符串,结果是一个字符串数组 DynamicDataSourceContextHolder.push("ds_" + wmsProductPut.getFactoryCode()); - String[] attributes = wmsProductPut.getPallet().split("-"); - // 通过索引访问分割后的数组,获取所需的三个属性 - String attribute1 = attributes[0]; // 获取第一个属性 - String attribute2 = attributes[1]; // 获取第二个属性 - String attribute3 = attributes[2]; // 获取第三个属性 +// String[] attributes = wmsProductPut.getPallet().split("-"); + WmsProductPut wmsProductPutTEM= wmsProductPutMapper.selectProOrderWorkorderBatchPalletcode(wmsProductPut); + String attribute1 = wmsProductPutTEM.getAttribute1(); // 获取第一个属性 + String attribute2 = wmsProductPutTEM.getAttribute2(); // 获取第二个属性 + String attribute3 = wmsProductPutTEM.getAttribute3(); // 获取第三个属性 wmsProductPut.setAttribute1(attribute1); wmsProductPut.setAttribute2(attribute2); wmsProductPut.setAttribute3(attribute3); @@ -1091,11 +1091,12 @@ public class WmsProductPutServiceImpl implements IWmsProductPutService { @Override public ProOrderWorkorder finishedProductProductionRecordscar(ProOrderWorkorder proOrderWorkorder) { DynamicDataSourceContextHolder.push("ds_" + proOrderWorkorder.getFactoryCode()); - String[] attributes = proOrderWorkorder.getAttr1().split("-"); + //String[] attributes = proOrderWorkorder.getAttr1().split("-"); // 通过索引访问分割后的数组,获取所需的三个属性 - String attribute1 = attributes[0]; // 获取第一个属性 - String attribute2 = attributes[1]; // 获取第二个属性 - String attribute3 = attributes[2]; // 获取第三个属性 + WmsProductPut wmsProductPutTEM= wmsProductPutMapper.selectProOrderWorkorderBatchPalletAtter(proOrderWorkorder); + String attribute1 = wmsProductPutTEM.getAttribute1(); // 获取第一个属性 + String attribute2 = wmsProductPutTEM.getAttribute2(); // 获取第二个属性 + String attribute3 = wmsProductPutTEM.getAttribute3(); // 获取第三个属性 proOrderWorkorder.setWorkorderCodeSap(attribute1); proOrderWorkorder.setBatchCode(attribute2); WmsProductPut wmsProductPut =new WmsProductPut(); diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOrderMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOrderMapper.xml index ff983ecb..5a84bf58 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOrderMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOrderMapper.xml @@ -14,6 +14,7 @@ + @@ -250,7 +251,185 @@ and Active= #{Active} - + SELECT + Site_code, + ID, + Procure_Code, + Material_Code, + Material_Desc, + Plan_Date, + Plan_Number, + Unit, + COALESCE ( Reality_Number, 0 ) Reality_Number, + card_num cardNum, + User_Defined1, + User_Defined2, + User_Defined3, + User_Defined4, + User_Defined5, + User_Defined6, + User_Defined7, + User_Defined8, + User_Defined9, + User_Defined10, + User_Defined11, + Supplier_Code, + Supplier_Name, + Remark, + Create_By, + Create_Date, + Last_Update_By, + Last_Update_Date, + Active, + Enterprise_Id, + Enterprise_Code, + COALESCE ( Operation_Number, 0 ) Operation_Number + FROM + ods_procure_order_card + where Procure_Code=#{procureCode} and User_Defined3= #{userDefined3} and User_Defined8= #{userDefined8} and User_Defined11= #{userDefined11} + + + + + + insert into ods_procure_order_card + + + + Site_code, + + ID, + + card_num, + + Procure_Code, + + Material_Code, + + Material_Desc, + + Plan_Date, + + Plan_Number, + + Unit, + + Reality_Number, + + Order_Status, + + User_Defined1, + + User_Defined2, + + User_Defined3, + + User_Defined4, + + User_Defined5, + + User_Defined6, + + User_Defined7, + + User_Defined8, + + User_Defined9, + + User_Defined10, + + User_Defined11, + + Supplier_Code, + + Supplier_Name, + + Remark, + + Create_By, + + Create_Date, + + Last_Update_By, + + Last_Update_Date, + + Active, + + Enterprise_Id, + + Enterprise_Code, + + + + + #{dto.siteCode}, + + #{dto.ID}, + + #{dto.cardNum}, + + #{dto.procureCode}, + + #{dto.materialCode}, + + #{dto.materialDesc}, + + #{dto.planDate}, + + #{dto.planNumber}, + + #{dto.Unit}, + + #{dto.realityNumber}, + + #{dto.orderStatus}, + + #{dto.userDefined1}, + + #{dto.userDefined2}, + + #{dto.userDefined3}, + + #{dto.userDefined4}, + + #{dto.userDefined5}, + + #{dto.userDefined6}, + + #{dto.userDefined7}, + + #{dto.userDefined8}, + + #{dto.userDefined9}, + + #{dto.userDefined10}, + + #{dto.userDefined11}, + + #{dto.supplierCode}, + + #{dto.supplierName}, + + #{dto.Remark}, + + #{dto.createBy}, + + #{dto.createDate}, + + #{dto.lastUpdateBy}, + + #{dto.lastUpdateDate}, + + #{dto.Active}, + + #{dto.enterpriseId}, + + #{dto.enterpriseCode}, + + + diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/WmsProductPutMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/WmsProductPutMapper.xml index c731dae6..ece6f4c0 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/WmsProductPutMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/WmsProductPutMapper.xml @@ -39,6 +39,9 @@ + + + @@ -432,4 +435,29 @@ AND pro_order_workorder_batch_pallet.pallet_num= #{pallet} + + +