From 3e144b2eb8fc9447d2d092edb71db533d12abc52 Mon Sep 17 00:00:00 2001
From: liu <2021943741@qq.com>
Date: 星期四, 24 九月 2026 19:06:39 +0800
Subject: [PATCH] feat(生产核算): 新增大类「中提琴」并打通工资/核算折算

---
 src/main/resources/mapper/production/ProductionProductMainMapper.xml |   34 +++++++++++++++++++++++++++++++++-
 1 files changed, 33 insertions(+), 1 deletions(-)

diff --git a/src/main/resources/mapper/production/ProductionProductMainMapper.xml b/src/main/resources/mapper/production/ProductionProductMainMapper.xml
index f0dc39c..1b5dae2 100644
--- a/src/main/resources/mapper/production/ProductionProductMainMapper.xml
+++ b/src/main/resources/mapper/production/ProductionProductMainMapper.xml
@@ -34,6 +34,14 @@
                    else '鏈煡'
                    end as auditStatusName,
                pot.work_order_no as workOrderNo,
+               ifnull(pot.plan_quantity, 0) as schedulingNum,
+               cast(
+                   case
+                       when ifnull(pot.plan_quantity, 0) - ifnull(ppo.quantity, 0) &lt; 0 then 0
+                       else ifnull(pot.plan_quantity, 0) - ifnull(ppo.quantity, 0)
+                   end
+                   as decimal(18,4)
+               ) as pendingNum,
                case pot.status
                    when 1 then '寰呯‘璁�'
                    when 2 then '寰呯敓浜�'
@@ -43,6 +51,8 @@
                    end as workOrderStatus,
                su.nick_name as nickName,
                ifnull(ppo.quantity, 0) as quantity,
+               ifnull(ppo.rework_minor_qty, 0) as reworkMinorQty,
+               ifnull(ppo.rework_major_qty, 0) as reworkMajorQty,
                ifnull(ppo.scrap_qty, 0) as scrapQty,
                p.product_name as productName,
                ifnull(p.standard_quantity, 0) as productStandardQuantity,
@@ -100,6 +110,9 @@
             <if test="c.process != null and c.process != ''">
                 and poro.operation_name like concat('%', #{c.process}, '%')
             </if>
+            <if test="c.majorCategory != null and c.majorCategory != ''">
+                and ppm.major_category = #{c.majorCategory}
+            </if>
             <if test="c.schedulingDate != null">
                 and date(ppm.create_time) = #{c.schedulingDate}
             </if>
@@ -107,7 +120,7 @@
                 and ppm.id = #{c.productMainId}
             </if>
         </where>
-        order by ppm.create_time desc
+        order by ppm.product_no desc
     </select>
 
     <select id="getOrderByMainId" resultType="com.ruoyi.production.pojo.ProductionOrder">
@@ -131,6 +144,14 @@
                    else '鏈煡'
                    end as auditStatusName,
                pot.work_order_no as workOrderNo,
+               ifnull(pot.plan_quantity, 0) as schedulingNum,
+               cast(
+                   case
+                       when ifnull(pot.plan_quantity, 0) - ifnull(ppo.quantity, 0) &lt; 0 then 0
+                       else ifnull(pot.plan_quantity, 0) - ifnull(ppo.quantity, 0)
+                   end
+                   as decimal(18,4)
+               ) as pendingNum,
                p.product_name as productName,
                ifnull(p.standard_quantity, 0) as productStandardQuantity,
                pm.model as productModelName,
@@ -145,6 +166,17 @@
                ppm.repair_work_hour as repairWorkHour,
                cast(ifnull(ppm.work_hour, 0) as decimal(18,4)) as workHour,
                cast(ifnull(pa.work_hours, 0) as decimal(18,4)) as workHours,
+               cast(
+                   case
+                       when poro.type = 0 then ifnull(pa.work_hours, 0)
+                       else case
+                                when ifnull(too.standard_quantity, 0) = 0 then 0
+                                else ifnull(pa.finished_num, 0) / ifnull(too.standard_quantity, 0) * 8
+                            end
+                   end
+                   + ifnull(ppm.repair_work_hour, 0)
+                   as decimal(18,4)
+               ) as convertedWorkHours,
                cast(ifnull(pa.adjust_amount, 0) as decimal(18,4)) as adjustAmount,
                pa.adjust_remark as adjustRemark,
                cast(

--
Gitblit v1.9.3