diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesShippingOrderManagementService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesShippingOrderManagementService.java index 629c721..13f36b3 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesShippingOrderManagementService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesShippingOrderManagementService.java @@ -1,8 +1,8 @@ package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base; import cn.estsh.i3plus.ext.mes.api.base.IMesConfigService; +import cn.estsh.i3plus.ext.mes.api.base.IMesPartService; import cn.estsh.i3plus.ext.mes.api.base.IMesShippingOrderManagementService; -import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; import cn.estsh.i3plus.platform.common.tool.TimeTool; @@ -13,6 +13,7 @@ import cn.estsh.i3plus.pojo.mes.bean.*; import cn.estsh.i3plus.pojo.mes.repository.MesJisShippingRepository; import cn.estsh.i3plus.pojo.mes.repository.MesPartRepository; import cn.estsh.i3plus.pojo.mes.repository.MesPartShippingGroupRepository; +import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import cn.estsh.impp.framework.boot.auth.AuthUtil; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.util.ValidatorBean; @@ -25,6 +26,8 @@ import org.springframework.util.StringUtils; import java.util.ArrayList; import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; @Service @Slf4j @@ -47,6 +50,9 @@ public class MesShippingOrderManagementService extends BaseMesService { MesShippingOrderManagementDetail detail = new MesShippingOrderManagementDetail(); + MesPart part = partService.getPartByPartNo(k.getPartNo(), k.getOrganizeCode()); + detail.setPartName(part.getPartName()); + detail.setCustPartNo(k.getCustomerPartNo()); + detail.setPlanQty(1D); + detail.setActualQty(1); detail.setShippingOrderNo(finalBean.getShippingOrderNo()); detail.setOrganizeCode(k.getOrganizeCode()); detail.setStatus(MesExtEnumUtil.SHIPPING_ORDER_STATUS.CREATE.getValue()); @@ -259,12 +270,13 @@ public class MesShippingOrderManagementService extends BaseMesService detailDeleteList = detailService.findAll(detailPackBean); - ; + Map> detailMap = detailDeleteList.stream().collect(Collectors.groupingBy(k -> k.getPartNo())); + List jisShippingList = new ArrayList<>(); - detailDeleteList.forEach(k -> { + detailMap.forEach((k, v) -> { DdlPackBean packBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode()); - DdlPreparedPack.getStringEqualPack(k.getPartNo(), "partNo", packBean); + DdlPreparedPack.getStringEqualPack(v.get(0).getPartNo(), "partNo", packBean); MesPart part = partRepository.getByProperty(packBean); MesJisShipping jisShipping = new MesJisShipping(); @@ -277,13 +289,13 @@ public class MesShippingOrderManagementService extends BaseMesService { +// +// DdlPackBean packBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode()); +// DdlPreparedPack.getStringEqualPack(k.getPartNo(), "partNo", packBean); +// MesPart part = partRepository.getByProperty(packBean); +// +// MesJisShipping jisShipping = new MesJisShipping(); +// BeanUtils.copyProperties(originBean, jisShipping, "id"); +// BeanUtils.copyProperties(k, jisShipping, "id"); +// jisShipping.setFactoryCode(originBean.getOrganizeCode()); +// jisShipping.setCusCode(originBean.getCustCode()); +// jisShipping.setShippingTime(TimeTool.getNowTime(true)); +// jisShipping.setDock(originBean.getSendDockCode()); +// jisShipping.setErpWarerhouse(configService.getCfgValue(bean.getOrganizeCode(), "ERP_WARERHOUSE")); +// jisShipping.setErpWarehous(configService.getCfgValue(bean.getOrganizeCode(), "ERP_WAREHOUS")); +// jisShipping.setCusDock(originBean.getCustDockCode()); +// jisShipping.setCustOrderNo(k.getCustOrderNo()); +// jisShipping.setSerialNumber(k.getBarcode()); +// jisShipping.setQuantityPerCar(detailDeleteList.size()); +// jisShipping.setShippingOrderCode(originBean.getShippingOrderNo()); +// jisShipping.setVin(k.getVin()); +// jisShipping.setCarNo(k.getVin()); +// if(!StringUtils.isEmpty(part)){ +// jisShipping.setUnit(part.getUnit()); +// } +// jisShipping.setOffTime(TimeTool.getNowTime(true)); +// ConvertBean.serviceModelInitialize(jisShipping, AuthUtil.getSessionUser().getUserName()); +// jisShippingList.add(jisShipping); +// }); + //修改当前发运单状态 originBean.setStatus(MesExtEnumUtil.SHIPPING_ORDER_STATUS.SHIPPED.getValue());