From 54b0cbe63344fd6bf26e3b8fcef8eabe529a8312 Mon Sep 17 00:00:00 2001
From: yiwenpeng <ywp303@163.com>
Date: Sun, 24 Dec 2023 17:49:48 +0800
Subject: [PATCH] feat: 自动出库:指定车间出库

---
 src/main/java/com/huaheng/common/constant/QuantityConstant.java                                               | 2 ++
 src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java | 2 +-
 src/main/java/com/huaheng/pc/shipment/shipmentHeader/controller/ShipmentHeaderController.java                 | 3 +++
 3 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/main/java/com/huaheng/common/constant/QuantityConstant.java b/src/main/java/com/huaheng/common/constant/QuantityConstant.java
index fb9eb43..9680093 100644
--- a/src/main/java/com/huaheng/common/constant/QuantityConstant.java
+++ b/src/main/java/com/huaheng/common/constant/QuantityConstant.java
@@ -494,6 +494,8 @@ public class QuantityConstant {
     public static final String AUTO_SHIPMENT_DEFAULT_QTY = "autoShipmentDefaultQty";
     // 自动出库单据间隔(秒)
     public static final String AUTO_SHIPMENT_INTERVAL = "autoShipmentInterval";
+    // 自动出库,生成车间
+    public static final String AUTO_SHIPMENT_WORKSHOPS = "autoShipmentWorkshops";
 
     // 呆滞时间
     public static final String DEAD_TIME = "dead_time";
diff --git a/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java b/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java
index 0a5aa33..5408344 100644
--- a/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java
+++ b/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java
@@ -257,7 +257,7 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl<ShipmentCont
             //shipmentContainerHeader.setPort(shipmentDetail.getPort());
 
             //自动出库自动分配站台
-            if (isAutoShipment) {
+            if (isAutoShipment && container.getFlat() != 1) {
                 List<Station> stations = stationService.list(new LambdaQueryWrapper<Station>()
                         .eq(Station::getIsSorting, 1)
                         .eq(Station::getRoadway, location.getRoadway()));
diff --git a/src/main/java/com/huaheng/pc/shipment/shipmentHeader/controller/ShipmentHeaderController.java b/src/main/java/com/huaheng/pc/shipment/shipmentHeader/controller/ShipmentHeaderController.java
index 1989688..7a6bc32 100644
--- a/src/main/java/com/huaheng/pc/shipment/shipmentHeader/controller/ShipmentHeaderController.java
+++ b/src/main/java/com/huaheng/pc/shipment/shipmentHeader/controller/ShipmentHeaderController.java
@@ -626,13 +626,16 @@ public class ShipmentHeaderController extends BaseController {
             if (prepareShipmentHeaderList.isEmpty()) {
                 //从参数配置中获取要自动出库的出库单数量,根据创建时间排序,设备库的出库单优先出库(原仓库编号028和029)
                 int autoShipmentDefaultQty = Integer.parseInt(configService.getKey(AUTO_SHIPMENT_DEFAULT_QTY));
+                String workshops = configService.getKey(AUTO_SHIPMENT_WORKSHOPS);
                 List<ShipmentHeader> shipmentHeaderList = shipmentHeaderService.list(new LambdaQueryWrapper<ShipmentHeader>()
                         .eq(ShipmentHeader::getCreatedBy, "MOM")
                         .eq(ShipmentHeader::getAutoShipmentStatus, 0)
                         .eq(ShipmentHeader::getFirstStatus, RECEIPT_HEADER_BUILD)
                         .eq(ShipmentHeader::getLastStatus, RECEIPT_HEADER_BUILD)
+                        .eq(StringUtils.isNotBlank(workshops), ShipmentHeader::getWorkshop, workshops)
                         //将'028'和'029'的优先出库
                         .last("ORDER BY CASE WHEN warehouse IN ('028', '029') THEN 1 ELSE 2 END, created DESC LIMIT " + autoShipmentDefaultQty));
+
                 if (shipmentHeaderList.isEmpty()) {
                     return AjaxResult.error("没有能自动出库的新建状态出库单了");
                 } else {
--
libgit2 0.22.2