From 25e1bcba7282b350011950cdf5006e11f1bb9ba5 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期一, 13 一月 2025 20:38:43 +0800 Subject: [PATCH] # 大屏分拣拍灯功能开发 --- zy-asrs-wms/src/main/java/com/zy/asrs/wms/apis/wcs/services/Impl/WaveManagentServiceImpl.java | 66 ++++++++++++++++++++++++++++++++ 1 files changed, 65 insertions(+), 1 deletions(-) diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/apis/wcs/services/Impl/WaveManagentServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/apis/wcs/services/Impl/WaveManagentServiceImpl.java index 17653bd..1a502b0 100644 --- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/apis/wcs/services/Impl/WaveManagentServiceImpl.java +++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/apis/wcs/services/Impl/WaveManagentServiceImpl.java @@ -1,22 +1,32 @@ package com.zy.asrs.wms.apis.wcs.services.Impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.mysql.cj.util.StringUtils; import com.zy.asrs.framework.common.R; import com.zy.asrs.framework.exception.CoolException; import com.zy.asrs.wms.apis.wcs.entity.domain.WaveTaskDetl; import com.zy.asrs.wms.apis.wcs.entity.response.SowSeeds; import com.zy.asrs.wms.apis.wcs.services.WaveManagentService; +import com.zy.asrs.wms.asrs.entity.CacheSite; +import com.zy.asrs.wms.asrs.entity.Order; +import com.zy.asrs.wms.asrs.entity.OrderDetl; import com.zy.asrs.wms.asrs.entity.Task; import com.zy.asrs.wms.asrs.entity.dto.LargeScreenTaskDto; import com.zy.asrs.wms.asrs.entity.enums.TaskStsType; import com.zy.asrs.wms.asrs.entity.param.WaveSeedReviewParam; +import com.zy.asrs.wms.asrs.mapper.CacheSiteMapper; +import com.zy.asrs.wms.asrs.mapper.OrderDetlMapper; +import com.zy.asrs.wms.asrs.mapper.OrderMapper; import com.zy.asrs.wms.asrs.mapper.TaskMapper; import com.zy.asrs.wms.asrs.service.TaskService; import com.zy.asrs.wms.asrs.service.WaveSeedService; +import org.aspectj.weaver.ast.Or; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; @Service public class WaveManagentServiceImpl implements WaveManagentService { @@ -25,9 +35,14 @@ @Autowired private TaskService taskService; - @Autowired private TaskMapper taskMapper; + @Autowired + private OrderMapper orderMapper; + @Autowired + private OrderDetlMapper orderDetlMapper; + @Autowired + private CacheSiteMapper cacheSiteMapper; @Override public R getSowSeeds() { @@ -72,4 +87,53 @@ List<WaveTaskDetl> taskDetls = taskMapper.getTaskDetlQutify(taskNo); return R.ok(taskDetls); } + + /** + * 鑾峰彇娉㈡涓嬫墍鏈夎鍗� + * @param waveNo + * @return + */ + @Override + public R getAllOrders(String waveNo) { + if (StringUtils.isNullOrEmpty(waveNo)) { + throw new CoolException("娉㈡缂栫爜涓嶈兘涓虹┖锛侊紒"); + } + List<Order> orders = orderMapper.selectList(new LambdaQueryWrapper<Order>().eq(Order::getWaveNo, waveNo)); + if (orders.isEmpty()) { + throw new CoolException("褰撳墠娉㈡涓嬫病鏈夎鍗�!!"); + } + + orders.forEach(order -> { + List<OrderDetl> detls = orderDetlMapper.selectList(new LambdaQueryWrapper<OrderDetl>().eq(OrderDetl::getOrderId, order.getId())); + if (detls.isEmpty()) { + throw new CoolException("璁㈠崟锛�" + order.getOrderNo() + " 娌℃湁鏄庣粏,璇疯仈绯荤鐞嗗憳锛侊紒"); + } + List<OrderDetl> orderDetls = detls.stream().filter(orderDetl -> { + return orderDetl.getAnfme() == (orderDetl.getWorkQty() + orderDetl.getQty()); + }).collect(Collectors.toList()); + + if (!orderDetls.isEmpty() && orderDetls.size() == detls.size()) { + order.setOrderStatus("宸插畬鎴�");//宸插畬鎴� + } else if (orderDetls.size() < detls.size() && orderDetls.size() != 0) {//閮ㄥ垎瀹屾垚 + order.setOrderStatus("閮ㄥ垎瀹屾垚"); + } else {//鏈畬鎴� + order.setOrderStatus("鏈畬鎴�"); + } + }); + + return R.ok(orders); + } + + /** + * 鑾蜂簡褰撳墠鎾澧欏簱浣嶄俊鎭� + * @return + */ + @Override + public R AllSeedLocs() { + List<CacheSite> cacheSites = cacheSiteMapper.selectList(new LambdaQueryWrapper<CacheSite>()); + if (cacheSites.isEmpty()) { + return R.error("褰撳墠鎾澧欎俊鎭湭璁剧疆锛侊紒"); + } + return R.ok(cacheSites); + } } -- Gitblit v1.9.1