From f2833c7f3e01c997e94a66bd5dd9be738b5c6cc7 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期四, 26 六月 2025 13:31:08 +0800 Subject: [PATCH] 波次任务下发功能优化 --- rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyIsptItemServiceImpl.java | 15 ++++++++++++++- 1 files changed, 14 insertions(+), 1 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyIsptItemServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyIsptItemServiceImpl.java index 66440f7..8eca471 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyIsptItemServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyIsptItemServiceImpl.java @@ -16,6 +16,7 @@ import com.vincent.rsf.server.manager.service.QlyInspectService; import com.vincent.rsf.server.manager.service.QlyIsptItemService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -40,6 +41,8 @@ private QlyIsptItemService qlyIsptItemService; @Autowired private WarehouseAreasItemServiceImpl warehouseAreasItemService; + @Autowired + private CompanysServiceImpl companysService; /** * @param @@ -156,6 +159,15 @@ Double disQty = Objects.isNull(item.getDisQty()) ? 0 : item.getDisQty(); Double safeQty = Objects.isNull(item.getSafeQty()) ? 0 : item.getSafeQty(); Double sum = disQty + safeQty; + + AsnOrderItem asnOrderItem = asnOrderItemService.getById(item.getAsnItemId()); + if (Objects.isNull(asnOrderItem)) { + if (StringUtils.isNoneBlank(asnOrderItem.getSplrCode())) { + Companys companys = companysService.getOne(new LambdaQueryWrapper<Companys>().eq(Companys::getCode, asnOrderItem.getSplrCode())); + orderItem.setSplrId(companys.getId()); + } + } + if (sum.compareTo(orderItem.getAnfme()) >= 0) { //瀹屾垚璐ㄦ,鍋氭洿鏂版搷浣� if (safeQty.compareTo(0.0) > 0) { @@ -178,7 +190,8 @@ } } } else { - orderItem.setAnfme(orderItem.getAnfme() - sum); + Double anfme = Math.round((orderItem.getAnfme() - sum) * 10000) / 10000.0; + orderItem.setAnfme(anfme); if (!warehouseAreasItemService.updateById(orderItem)) { throw new CoolException("鏀惰揣鍖哄簱瀛樻槑缁嗘洿鏂板け璐ワ紒锛�"); } -- Gitblit v1.9.1