From 429262bdbebb4322800c1ed4f9276411ec5511d1 Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期五, 22 五月 2026 13:19:37 +0800
Subject: [PATCH] 产出不能为负数,最小是0

---
 src/main/resources/mapper/production/ProductionOperationTaskMapper.xml |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/src/main/resources/mapper/production/ProductionOperationTaskMapper.xml b/src/main/resources/mapper/production/ProductionOperationTaskMapper.xml
index 577bcfd..5ecf0e9 100644
--- a/src/main/resources/mapper/production/ProductionOperationTaskMapper.xml
+++ b/src/main/resources/mapper/production/ProductionOperationTaskMapper.xml
@@ -29,6 +29,7 @@
                pm.model as model,
                pm.unit as unit,
                poro.operation_name as operationName,
+               poro.type as type,
                IFNULL(scrapStat.scrapQty, 0) AS scrapQty,
         ROUND(IFNULL(pot.complete_quantity, 0) / NULLIF(pot.plan_quantity, 0) * 100, 2) AS completionStatus,
         CASE
@@ -62,6 +63,9 @@
             </if>
             <if test="c != null and c.status != null">
                 and pot.status = #{c.status}
+            </if>
+            <if test="c != null and c.isProduction != null">
+                and poro.is_production = #{c.isProduction}
             </if>
             <if test="c != null and c.workOrderNo != null and c.workOrderNo != ''">
                 and pot.work_order_no like concat('%', #{c.workOrderNo}, '%')
@@ -106,7 +110,7 @@
         select poro.operation_name as processName,
                sum(ifnull(ppi.input_quantity, 0)) as totalInput,
                sum(ifnull(ppo.scrap_qty, 0)) as totalScrap,
-               sum(ifnull(ppo.quantity, 0) - ifnull(ppo.scrap_qty, 0)) as totalOutput
+               sum(greatest(ifnull(ppo.quantity, 0) - ifnull(ppo.scrap_qty, 0), 0)) as totalOutput
         from production_product_output ppo
                  inner join production_product_main ppm on ppo.production_product_main_id = ppm.id
                  inner join production_operation_task pot on ppm.production_operation_task_id = pot.id
@@ -158,6 +162,7 @@
 
     <select id="getOperation" resultType="com.ruoyi.production.bean.vo.ProductionOperationTaskVo">
         select poro.operation_name as operationName,
+               max(poro.type) as type,
                count(pot.id) as productionTaskCount,
                sum(ifnull(pot.plan_quantity, 0)) as planQuantity,
                sum(ifnull(pot.complete_quantity, 0)) as completeQuantity,

--
Gitblit v1.9.3