From 827cf8651cbb734beff52c8bff4dc44a4519436c Mon Sep 17 00:00:00 2001 From: LSH Date: 星期四, 14 十二月 2023 16:59:30 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java | 99 +++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 90 insertions(+), 9 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 1a1379e..60e9268 100644 --- a/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java @@ -5,17 +5,12 @@ import com.core.common.DateUtils; import com.core.common.SnowflakeIdWorker; import com.core.exception.CoolException; -import com.zy.asrs.entity.OrderDetl; -import com.zy.asrs.entity.WrkDetl; -import com.zy.asrs.entity.WrkMast; +import com.zy.asrs.entity.*; import com.zy.asrs.entity.param.OpenOrderPakinParam; import com.zy.asrs.entity.param.OpenOrderPakoutParam; import com.zy.asrs.mapper.OrderDetlMapper; import com.zy.asrs.mapper.OrderMapper; -import com.zy.asrs.entity.Order; -import com.zy.asrs.service.OpenService; -import com.zy.asrs.service.OrderDetlService; -import com.zy.asrs.service.OrderService; +import com.zy.asrs.service.*; import com.baomidou.mybatisplus.service.impl.ServiceImpl; import com.zy.common.model.DetlDto; import lombok.extern.slf4j.Slf4j; @@ -24,6 +19,7 @@ import java.util.ArrayList; import java.util.List; +import java.util.Objects; @Slf4j @Service("orderService") @@ -37,6 +33,10 @@ private SnowflakeIdWorker snowflakeIdWorker; @Autowired private OrderDetlService orderDetlService; + @Autowired + private DocTypeService docTypeService; + @Autowired + private WrkDetlService wrkDetlService; @Override public Order selectByNo(String orderNo) { @@ -60,7 +60,7 @@ @Override public void checkComplete(String orderNo) { Order order = this.selectByNo(orderNo); - if (order.getSettle() >= 4L) { + if (Cools.isEmpty(order) || order.getSettle() >= 4L) { return; } List<OrderDetl> orderDetls = orderDetlMapper.selectList(new EntityWrapper<OrderDetl>().eq("order_id", order.getId())); @@ -72,6 +72,14 @@ } } if (complete) { + for (OrderDetl orderDetl : orderDetls) { + if (Cools.isEmpty(orderDetl.getBatch())){ + orderDetlService.updateById(orderDetl); + }else if (orderDetl.getBatch().equals("")){//鐢熸垚鍗曟嵁鍜屽叆搴撻�氱煡妗f椂锛岀粰batch涓虹┖鐨勬槑缁嗚祴浜嗕竴涓� =""锛� 鐜板湪鏀逛负null锛屽洖浼犵敤 + orderDetl.setBatch(null); + orderDetlService.updateById(orderDetl); + } + } if (!this.updateSettle(order.getId(), 4L, null)) { throw new CoolException("淇敼璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戠姸鎬佷负宸插畬鎴愬け璐�"); } @@ -117,9 +125,13 @@ if (!orderDetlService.increase(order.getId(), detlDto.getMatnr(), detlDto.getBatch(), detlDto.getAnfme())) { throw new CoolException("淇敼鍗曟嵁鏄庣粏鏁伴噺澶辫触"); } + // 淇敼璁㈠崟浣滀笟鏁伴噺 + if (!orderDetlService.increaseWorkQty(order.getId(), detlDto.getMatnr(), detlDto.getBatch(), detlDto.getAnfme())) { + throw new CoolException("淇敼鍗曟嵁浣滀笟鏁伴噺澶辫触"); + } } } catch (Exception e) { - log.error("", e); + log.error("saveHandlerOrder===>>", e); return false; } return true; @@ -133,4 +145,73 @@ orderDetlService.delete(new EntityWrapper<OrderDetl>().eq("order_id", orderId)); } + @Override + public List<Order> selectComplete() { + return this.baseMapper.selectComplete(); + } + + @Override + public boolean addToLogTable(Order order) { + return this.baseMapper.addToLogTable(order) > 0; + } + + /** + * + * @param orderNo + * + */ + @Override + public void BackToInit(String orderNo) { + Integer count = this.baseMapper.checkDetlWorkQtyLess0(orderNo); + //濡傛灉鎵�鏈夋槑缁嗙殑宸ヤ綔鏁伴噺鍜屽畬鎴愰噺閮藉皬浜庣瓑浜�0锛� 閭d箞灏嗕富妗f洿鏂颁负鈥滃緟澶勭悊鈥濈姸鎬� + if (count == 0 ){ + this.baseMapper.updateSettleTo1(orderNo); + } + } + + @Override + public List<Order> selectInOrOutOrders(boolean inOrders) { + if (inOrders) { + return this.baseMapper.selectInOrOutOrders(1); + + }else { + return this.baseMapper.selectInOrOutOrders(0); + + } + } + + @Override + public void checkSettleUpdate(Long orderId) { + long settle = 1; + Integer count = 0; + List<OrderDetl> orderNo1 = orderDetlService.selectList(new EntityWrapper<OrderDetl>() + .eq("order_id", orderId)); + for (int i = 0; i < orderNo1.size(); i++) { + OrderDetl orderDetl = orderNo1.get(i); + if (orderDetl.getQty() > 0){ + settle = 2; + + } + if (Objects.equals(orderDetl.getAnfme(), orderDetl.getQty())){ + count++; + } + + } + if (count == orderNo1.size()){ + settle = 4; + } + updateSettle(orderId,settle,1L); + } + + @Override + public List<Order> selectToBeHistoryOrder(boolean isERP) { + int settle = isERP ? 6 : 4; + return this.baseMapper.selectToBeHistoryOrder(settle); + } + + @Override + public List<OrderListDTO> selectAllorderNo() { + return this.baseMapper.selectAllorderNo(); + } + } -- Gitblit v1.9.1