diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java index 200140ad0..310af67ad 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java @@ -9,6 +9,9 @@ import com.mhd.common.core.utils.OrderSequence; import com.mhd.common.core.utils.bean.BeanUtils; import com.mhd.common.security.utils.SecurityUtils; import com.mhd.system.api.model.LoginUser; +import com.mhd.wms.domain.copyCodeReference.entity.CopyCodeReference; +import com.mhd.wms.domain.copyCodeReference.repository.facade.ICopyCodeReferenceService; +import com.mhd.wms.domain.copyCodeReference.service.CopyCodeReferenceDomainService; import com.mhd.wms.domain.deliveTask.repository.facade.IDeliveTaskService; import com.mhd.wms.domain.deliveTask.repository.todo.DeliveTaskDO; import com.mhd.wms.domain.handoverTaskOrder.entity.HandoverTaskOrder; @@ -41,10 +44,7 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -77,6 +77,8 @@ public class HandoverTaskOrderDomainService { private IMaterialInventoryService materialInventoryService; @Autowired private IStockOutOrderService stockOutOrderService; + @Autowired + private CopyCodeReferenceDomainService copyCodeReferenceDomainService; /** @@ -307,6 +309,8 @@ public class HandoverTaskOrderDomainService { } } + @Autowired + private ICopyCodeReferenceService copyCodeReferenceService; public synchronized void xgkc(List handoverTaskOrderIds,LoginUser loginUser) { for (Long handoverTaskOrderId : handoverTaskOrderIds) { @@ -329,6 +333,14 @@ public class HandoverTaskOrderDomainService { .eq(OutMaterialDetail::getDelFlag, 1)); Integer review = stockOutOrder != null ? stockOutOrder.getReview() : null; for (OutMaterialDetail outMaterialDetail : outMaterialDetailList) { + if (outMaterialDetail.getCopyCodeReferenceIds() != null){ + List copyCodeReferenceIds = Arrays.stream(outMaterialDetail.getCopyCodeReferenceIds().split(",")) + .map(Integer::parseInt).collect(Collectors.toList()); + copyCodeReferenceService.lambdaUpdate() + .set(CopyCodeReference::getMaterialStatusCode, 3) + .set(CopyCodeReference::getMaterialStatusName, "已出库") + .in(CopyCodeReference::getId, copyCodeReferenceIds); + } Long materialInventoryId = outMaterialDetail.getMaterialInventoryId(); // 复核什么扣减什么:需要复核用check_quantity,不需要复核用picking_quantity BigDecimal effectiveQuantity = Integer.valueOf(1).equals(review)