From c65db22f67af8018ae7105ea00d8743e42835e13 Mon Sep 17 00:00:00 2001 From: ZY <zc857179121@qq.com> Date: 星期六, 29 三月 2025 15:52:09 +0800 Subject: [PATCH] 1 --- src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java | 63 ++++++++++++++++++++++++++++--- 1 files changed, 57 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java index 53936a5..b7895bc 100644 --- a/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java @@ -25,10 +25,13 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Date; import java.util.List; +import java.util.concurrent.TimeUnit; @Slf4j @Service("orderService") @@ -88,18 +91,26 @@ } @Override + public boolean updateTel(Long orderId, String tel) { + return this.baseMapper.updateTel(orderId, tel) > 0; + } + + @Override public boolean updateSettle(Long orderId, Long settle, Long userId) { return this.baseMapper.updateSettle(orderId, settle, userId) > 0; } @Override - public boolean updateSettle2(Long orderId, Long settle, Integer plt) { - return this.baseMapper.updateSettle2(orderId, settle, plt) > 0; + public boolean updateSettle2(Long orderId, Long settle, Integer plt, String inTime) { + return this.baseMapper.updateSettle2(orderId, settle, plt, inTime) > 0; } @Override public void checkComplete(String orderNo, Integer pltType) { Order order = this.selectByNo(orderNo); + if (order.getDocType() == 38) { + return; + } if (Cools.isEmpty(order)) { return; } @@ -117,7 +128,7 @@ } // 濡傛灉 浣滀笟鏁伴噺绛変簬鍗曟嵁鎬绘暟閲� && 宸ヤ綔鏄庣粏妗d腑鏃犺鍗曟嵁鐨勬暟鎹� && AGV宸ヤ綔鏄庣粏妗d腑鏃犺鍗曟嵁鐨勬暟鎹� - int count = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("order_no", orderNo)); + //int count = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("order_no", orderNo)); boolean wrkDeltExist = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().like("order_no", orderNo)) < 1; boolean agvWrkDetlExist = agvWrkDetlService.selectCount(new EntityWrapper<AgvWrkDetl>().like("order_no", orderNo)) < 1; boolean waitPakinExist = agvWaitPakinService.selectCount(new EntityWrapper<AgvWaitPakin>().like("order_no", orderNo)) < 1; @@ -126,18 +137,57 @@ boolean manPakoutExist = Cools.isEmpty(manPakOut) || (manPakOut.getPayment() != null && manPakOut.getPayment() == 1); if (complete && wrkDeltExist && agvWrkDetlExist && waitPakinExist && manPakoutExist) { - if (!this.updateSettle2(order.getId(), 4L, pltType)) { + if (pltType == null) { + if (!this.updateSettle(order.getId(), 6L, 9528L)) { + throw new CoolException("淇敼璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戠姸鎬佷负宸插畬鎴愬け璐�"); + } + } else if (!this.updateSettle2(order.getId(), 6L, pltType, DateUtils.convert(new Date(), DateUtils.yyyyMMddHHmmsssss_F))) { throw new CoolException("淇敼璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戠姸鎬佷负宸插畬鎴愬け璐�"); } } else { - if (!Cools.isEmpty(pltType)) { + if (pltType != null && pltType > 0) { order.setPltType(pltType); - super.updateById(order); + order.setInTime(DateUtils.convert(new Date(), DateUtils.yyyyMMddHHmmsssss_F)); + this.baseMapper.updateById(order); } + } + } + @Override + @Transactional + public void checkComplete2(String orderNo) { + Order order = this.selectByNo(orderNo); + if (Cools.isEmpty(order)) { + return; + } + if (order.getSettle() >= 4L) { + return; + } + List<OrderDetl> orderDetls = orderDetlMapper.selectList(new EntityWrapper<OrderDetl>().eq("order_id", order.getId())); + // 浣滀笟鏁伴噺鏄惁绛変簬鏁伴噺 + boolean complete = true; + + for (OrderDetl orderDetl : orderDetls) { + if (orderDetl.getAnfme() > orderDetl.getQty()) { + complete = false; + break; + } } + // 濡傛灉 浣滀笟鏁伴噺绛変簬鍗曟嵁鎬绘暟閲� && 宸ヤ綔鏄庣粏妗d腑鏃犺鍗曟嵁鐨勬暟鎹� && AGV宸ヤ綔鏄庣粏妗d腑鏃犺鍗曟嵁鐨勬暟鎹� + //int count = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("order_no", orderNo)); + boolean wrkDeltExist = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().like("order_no", orderNo)) < 1; + boolean agvWrkDetlExist = agvWrkDetlService.selectCount(new EntityWrapper<AgvWrkDetl>().like("order_no", orderNo)) < 1; + boolean waitPakinExist = agvWaitPakinService.selectCount(new EntityWrapper<AgvWaitPakin>().like("order_no", orderNo)) < 1; + ManPakOut manPakOut = manPakOutService.selectByOrderWithName(orderNo); + + boolean manPakoutExist = Cools.isEmpty(manPakOut) || (manPakOut.getPayment() != null && manPakOut.getPayment() == 1); + if (complete && wrkDeltExist && agvWrkDetlExist && waitPakinExist && manPakoutExist) { + if (!this.updateSettle(order.getId(), 6L, 9528L)) { + throw new CoolException("淇敼璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戠姸鎬佷负宸插畬鎴愬け璐�"); + } + } } @Override @@ -288,6 +338,7 @@ response = new HttpHandler.Builder() .setUri(url) .setPath(path) + .setTimeout(30, TimeUnit.SECONDS) .setJson(JSONObject.toJSONString(requestParam)) .build() .doPost(); -- Gitblit v1.9.1