From 01f39fcb06b8713901975153d0a893e86eca6a88 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期一, 07 七月 2025 19:42:26 +0800 Subject: [PATCH] 33.订单历史管理里面增加单据类型选项按钮、单据类型选项按钮 34.单据管理里面增加单据状态选项按钮 35.入库订单全部都入好了,单据状态还是作业中,现在作业中的单据是可以删除的,我不小心把这个单据删除了,怎么恢复? 36.每个界面点下一页都没反应,点第二页是有变化的,之后点任何页面都没反应 37.订单明细点开后的界面改大一点 38.新增出库订单的时候可以输入客户信息(客户名称、收件人、地址、电话等),现在拣货完成后连发给谁都不知道 39.大屏播种界面对应的数量和开单数量不一致 --- zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaveSeedServiceImpl.java | 38 ++++++++++++++++++++++++++++++++++---- 1 files changed, 34 insertions(+), 4 deletions(-) diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaveSeedServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaveSeedServiceImpl.java index 1a98667..7ebbbf9 100644 --- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaveSeedServiceImpl.java +++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaveSeedServiceImpl.java @@ -5,6 +5,7 @@ import com.zy.asrs.framework.exception.CoolException; import com.zy.asrs.wms.apis.wcs.entity.response.SowSeeds; import com.zy.asrs.wms.asrs.entity.*; +import com.zy.asrs.wms.asrs.entity.enums.OrderPickStatus; import com.zy.asrs.wms.asrs.entity.param.WaveSeedReviewParam; import com.zy.asrs.wms.asrs.mapper.*; import com.zy.asrs.wms.asrs.service.OrderDetlService; @@ -14,6 +15,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.math.BigDecimal; import java.util.Date; import java.util.List; import java.util.Objects; @@ -59,7 +61,7 @@ List<CacheSite> sites = cacheSiteMapper.selectList(new LambdaQueryWrapper<CacheSite>().eq(CacheSite::getOrderNo, waveSeed.getOrderNo())); if (sites.isEmpty()) { - throw new CoolException("褰撳墠璁㈠崟鏈粦瀹氭挱绉嶅簱浣嶏紝璇风粦瀹氬悗鍐嶆搷浣滐紒锛�"); + throw new CoolException("褰撳墠璁㈠崟鏈粦瀹氭挱绉嶅簱浣嶏紝璇蜂娇鐢≒DA->鍦版爣缁戝畾,鍔熻兘缁戝畾鍚庡啀鎿嶄綔锛侊紒"); } Double stock = Optional.of(waveSeed.getAnfme() - waveSeed.getWorkQty()).orElse(0.0D); @@ -80,12 +82,40 @@ if (Objects.isNull(orderDetl)) { throw new CoolException("褰撳墠鎾璁㈠崟鏄庣粏涓嶅瓨鍦紒锛�"); } - orderDetl.setWorkQty(orderDetl.getWorkQty() + param.getReviewNum()); - if (orderDetl.getWorkQty() + orderDetl.getQty() > orderDetl.getAnfme()) { + + if (param.getReviewNum() + orderDetl.getQty() > orderDetl.getAnfme()) { throw new CoolException("璇锋牳瀵规槑缁嗘暟閲忓悗锛屽啀杩涜鎿嶄綔!!"); } + + //濡傛灉鎷h揣鏁伴噺涓庤鍗曟槑缁嗘暟閲忕浉绛夛紝琛ㄦ槑鎷h揣瀹屾垚 + if (new BigDecimal(param.getReviewNum() + orderDetl.getQty()).compareTo(new BigDecimal(orderDetl.getAnfme())) == 0) { + orderDetl.setPickStatus(OrderPickStatus.ORDER_PICK_STATUS_DONE.val); + } else { + orderDetl.setPickStatus(OrderPickStatus.ORDER_PICK_STATUS_SECTION.val); + } + if (orderDetlMapper.updateById(orderDetl) < 1) { - throw new CoolException("璁㈠崟鏄庣粏鏁伴噺鏇存柊澶辫触"); + throw new CoolException("璁㈠崟鐘舵�佹洿鏂板け璐�!!"); + } + + List<OrderDetl> detls = orderDetlMapper.selectList(new LambdaQueryWrapper<OrderDetl>().eq(OrderDetl::getOrderNo, orderDetl.getOrderNo())); + List<OrderDetl> detlList = detls.stream().filter(ord -> { + return ord.getPickStatus() != OrderPickStatus.ORDER_PICK_STATUS_DONE.val; + }).collect(Collectors.toList()); + + int update; + if (detlList.isEmpty()) { + update = orderMapper.update(new LambdaUpdateWrapper<Order>() + .eq(Order::getOrderNo, orderDetl.getOrderNo()) + .set(Order::getPickStatus, OrderPickStatus.ORDER_PICK_STATUS_DONE.val)); + } else { + update = orderMapper.update(new LambdaUpdateWrapper<Order>() + .eq(Order::getOrderNo, orderDetl.getOrderNo()) + .set(Order::getPickStatus, OrderPickStatus.ORDER_PICK_STATUS_SECTION.val)); + } + + if (update < 1) { + throw new CoolException("鍘熷璁㈠崟涓诲崟鎷h揣鐘舵�佹洿鏂板け璐ワ紒锛�"); } waveSeed.setUpdateTime(new Date()); -- Gitblit v1.9.1