From 28c1376ce853518597c981cbaeecd1ccd27945c7 Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期三, 27 八月 2025 13:16:20 +0800
Subject: [PATCH] yys  完善生产管控

---
 main-business/src/main/java/com/ruoyi/business/dto/ProductionDto.java                                 |    2 ++
 main-business/src/main/java/com/ruoyi/business/service/impl/ProductionSchedulingServiceImpl.java      |    3 ++-
 main-business/src/main/java/com/ruoyi/business/entity/ProductionScheduling.java                       |    3 +++
 main-business/src/main/java/com/ruoyi/business/entity/Production.java                                 |    6 ++++++
 main-business/src/main/java/com/ruoyi/business/service/impl/ProductionServiceImpl.java                |    3 +++
 main-business/src/main/resources/db/migration/postgresql/V20250604101800__create_table_production.sql |    2 ++
 main-business/src/main/resources/mapper/ProductionSchedulingMapper.xml                                |    3 +++
 7 files changed, 21 insertions(+), 1 deletions(-)

diff --git a/main-business/src/main/java/com/ruoyi/business/dto/ProductionDto.java b/main-business/src/main/java/com/ruoyi/business/dto/ProductionDto.java
index 2c73818..2de72fc 100644
--- a/main-business/src/main/java/com/ruoyi/business/dto/ProductionDto.java
+++ b/main-business/src/main/java/com/ruoyi/business/dto/ProductionDto.java
@@ -10,5 +10,7 @@
 
     private List officialList;
 
+    private Integer searchAll;
+
     
 }
diff --git a/main-business/src/main/java/com/ruoyi/business/entity/Production.java b/main-business/src/main/java/com/ruoyi/business/entity/Production.java
index 0220378..17f67fd 100644
--- a/main-business/src/main/java/com/ruoyi/business/entity/Production.java
+++ b/main-business/src/main/java/com/ruoyi/business/entity/Production.java
@@ -42,6 +42,12 @@
      */
     @TableField(value = "production_quantity")
     private BigDecimal productionQuantity;
+
+    /**
+     * 寰呮帓浜ф暟閲�
+     */
+    @TableField(value = "pending_quantity")
+    private BigDecimal pendingQuantity;
     /**
      * 浜哄伐鎴愭湰
      */
diff --git a/main-business/src/main/java/com/ruoyi/business/entity/ProductionScheduling.java b/main-business/src/main/java/com/ruoyi/business/entity/ProductionScheduling.java
index af0b454..acd3c84 100644
--- a/main-business/src/main/java/com/ruoyi/business/entity/ProductionScheduling.java
+++ b/main-business/src/main/java/com/ruoyi/business/entity/ProductionScheduling.java
@@ -44,6 +44,9 @@
      */
     @TableField(exist = false)
     private BigDecimal productionQuantity;
+
+    @TableField(exist = false)
+    private Integer searchAll;
     /**
      * 鎺掍骇鏁伴噺
      */
diff --git a/main-business/src/main/java/com/ruoyi/business/service/impl/ProductionSchedulingServiceImpl.java b/main-business/src/main/java/com/ruoyi/business/service/impl/ProductionSchedulingServiceImpl.java
index 0ce8ddb..3e361cc 100644
--- a/main-business/src/main/java/com/ruoyi/business/service/impl/ProductionSchedulingServiceImpl.java
+++ b/main-business/src/main/java/com/ruoyi/business/service/impl/ProductionSchedulingServiceImpl.java
@@ -53,13 +53,14 @@
         BigDecimal reduce = productionScheduling.stream()
                 .map(ProductionScheduling::getSchedulingNum)
                 .reduce(BigDecimal.ZERO, BigDecimal::add);
-        if(reduce.compareTo(productionScheduling.get(0).getProductionQuantity()) < 0){
+        if(reduce.compareTo(productionScheduling.get(0).getProductionQuantity()) > 0){
             return false;
         }
         Production production = productionMapper.selectById(productionScheduling.get(0).getProductionId());
         if(production == null){
             throw new RuntimeException("鐢熶骇璁㈠崟涓虹┖");
         }
+        production.setPendingQuantity(production.getPendingQuantity().add(reduce));
         production.setStatus(2);
         if(reduce.compareTo(productionScheduling.get(0).getProductionQuantity()) == 0){
             production.setStatus(3);
diff --git a/main-business/src/main/java/com/ruoyi/business/service/impl/ProductionServiceImpl.java b/main-business/src/main/java/com/ruoyi/business/service/impl/ProductionServiceImpl.java
index 732c3c8..f26d594 100644
--- a/main-business/src/main/java/com/ruoyi/business/service/impl/ProductionServiceImpl.java
+++ b/main-business/src/main/java/com/ruoyi/business/service/impl/ProductionServiceImpl.java
@@ -34,6 +34,9 @@
     @Override
     public IPage<Production> selectProductionList(Page page, ProductionDto productionDto) {
         LambdaQueryWrapper<Production> queryWrapper = new LambdaQueryWrapper<>();
+        if(productionDto != null && productionDto.getSearchAll() != null){
+            queryWrapper.eq(Production::getStatus, productionDto.getSearchAll());
+        }
         queryWrapper.orderByDesc(Production::getCreateTime);
         return productionMapper.selectPage(page, queryWrapper);
     }
diff --git a/main-business/src/main/resources/db/migration/postgresql/V20250604101800__create_table_production.sql b/main-business/src/main/resources/db/migration/postgresql/V20250604101800__create_table_production.sql
index cc091ed..adf249b 100644
--- a/main-business/src/main/resources/db/migration/postgresql/V20250604101800__create_table_production.sql
+++ b/main-business/src/main/resources/db/migration/postgresql/V20250604101800__create_table_production.sql
@@ -5,6 +5,7 @@
     production_master_id    BIGINT         NOT NULL DEFAULT 0, -- 鐢熶骇涓昏〃ID
     coal_id                 BIGINT         NOT NULL DEFAULT 0, -- 鐓ょID
     production_quantity     INT            NOT NULL,           -- 鐢熶骇鏁伴噺
+    pending_quantity     INT            NOT NULL DEFAULT 0,           -- 寰呮帓浜ф暟閲�
     labor_cost              DECIMAL(10, 2) NOT NULL,           -- 浜哄伐鎴愭湰
     energy_consumption_cost DECIMAL(10, 2) NOT NULL,           -- 鑳借�楁垚鏈�
     equipment_depreciation  DECIMAL(10, 2) NOT NULL,           -- 璁惧鎶樻棫
@@ -30,6 +31,7 @@
 COMMENT ON COLUMN production.id IS '涓婚敭ID';
 COMMENT ON COLUMN production.coal_id IS '鐓ょID';
 COMMENT ON COLUMN production.production_quantity IS '鐢熶骇鏁伴噺';
+COMMENT ON COLUMN production.pending_quantity IS '寰呮帓浜ф暟閲�';
 COMMENT ON COLUMN production.labor_cost IS '浜哄伐鎴愭湰';
 COMMENT ON COLUMN production.energy_consumption_cost IS '鑳借�楁垚鏈�';
 COMMENT ON COLUMN production.equipment_depreciation IS '璁惧鎶樻棫';
diff --git a/main-business/src/main/resources/mapper/ProductionSchedulingMapper.xml b/main-business/src/main/resources/mapper/ProductionSchedulingMapper.xml
index eb42eb4..63360fa 100644
--- a/main-business/src/main/resources/mapper/ProductionSchedulingMapper.xml
+++ b/main-business/src/main/resources/mapper/ProductionSchedulingMapper.xml
@@ -4,5 +4,8 @@
 
     <select id="listPage" resultType="com.ruoyi.business.entity.ProductionScheduling">
         select * from production_scheduling where deleted = 0
+        <if test="req.searchAll != null and req.searchAll != ''">
+            and status = #{req.searchAll}
+        </if>
     </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.3