From 52a7c9b093bcb05ee128b3ad8338007aad2cfccb Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期二, 27 一月 2026 17:09:26 +0800
Subject: [PATCH] 业务管理:问题修复
---
inspect-server/src/main/resources/mapper/DataAnalysisMapper.xml | 35 ++++++++++++++++++++++-------------
1 files changed, 22 insertions(+), 13 deletions(-)
diff --git a/inspect-server/src/main/resources/mapper/DataAnalysisMapper.xml b/inspect-server/src/main/resources/mapper/DataAnalysisMapper.xml
index 749041b..40c572b 100644
--- a/inspect-server/src/main/resources/mapper/DataAnalysisMapper.xml
+++ b/inspect-server/src/main/resources/mapper/DataAnalysisMapper.xml
@@ -26,7 +26,7 @@
SELECT
DAYOFWEEK(io1.send_time) AS week,
SUM(CASE WHEN iiq.inspect_status = 1 THEN 1 ELSE 0 END) AS qualified,
- SUM(CASE WHEN iiq.inspect_status = 2 THEN 1 ELSE 0 END) AS unQualified
+ SUM(CASE WHEN iiq.inspect_status = 2 or iiq.inspect_status = 4 THEN 1 ELSE 0 END) AS unQualified
FROM ifs_inventory_quantity iiq
INNER JOIN ins_order io1
ON io1.ifs_inventory_id = iiq.id
@@ -37,7 +37,7 @@
) ins ON ins.ins_order_id = io1.id
WHERE
iiq.is_finish = 1
- AND iiq.inspect_status IN (1, 2)
+ AND iiq.inspect_status IN (1, 2,4)
AND io1.order_type = #{dto.orderType}
AND io1.state != -1
AND io1.send_time BETWEEN #{dto.beginDate} AND #{dto.endDate}
@@ -86,7 +86,7 @@
DATE(io1.send_time) AS day,
COUNT(*) AS total,
SUM(CASE WHEN iiq.inspect_status = 1 THEN 1 ELSE 0 END) AS qualified,
- SUM(CASE WHEN iiq.inspect_status = 2 THEN 1 ELSE 0 END) AS unQualified
+ SUM(CASE WHEN iiq.inspect_status = 2 or iiq.inspect_status = 4 THEN 1 ELSE 0 END) AS unQualified
FROM ifs_inventory_quantity iiq
LEFT JOIN ins_order io1
ON io1.ifs_inventory_id = iiq.id
@@ -100,7 +100,7 @@
) ins ON ins.ins_order_id = io1.id
WHERE
iiq.is_finish = 1
- AND iiq.inspect_status IN (1,2)
+ AND iiq.inspect_status IN (1,2,4)
<if test="dto.materialProp != null and dto.materialProp != ''">
AND IFNULL(iiq.material_prop,'') LIKE CONCAT('%',#{dto.materialProp},'%')
@@ -114,7 +114,9 @@
<if test="dto.supplierName != null and dto.supplierName != ''">
AND IFNULL(iiq.supplier_name,'') LIKE CONCAT('%',#{dto.supplierName},'%')
</if>
-
+ <if test="dto.contract != null and dto.contract != ''">
+ AND IFNULL(iiq.contract,'') = #{dto.contract}
+ </if>
GROUP BY DATE(io1.send_time)
) sub ON ad.day = sub.day
ORDER BY ad.day
@@ -158,7 +160,7 @@
MONTH(io1.send_time) AS month,
COUNT(*) AS total,
SUM(CASE WHEN iiq.inspect_status = 1 THEN 1 ELSE 0 END) AS qualified,
- SUM(CASE WHEN iiq.inspect_status = 2 THEN 1 ELSE 0 END) AS unQualified
+ SUM(CASE WHEN iiq.inspect_status = 2 or iiq.inspect_status = 4 THEN 1 ELSE 0 END) AS unQualified
FROM ifs_inventory_quantity iiq
LEFT JOIN ins_order io1
ON io1.ifs_inventory_id = iiq.id
@@ -172,7 +174,7 @@
) ins ON ins.ins_order_id = io1.id
WHERE
iiq.is_finish = 1
- AND iiq.inspect_status IN (1,2)
+ AND iiq.inspect_status IN (1,2,4)
<if test="dto.materialProp != null and dto.materialProp != ''">
AND IFNULL(iiq.material_prop,'') LIKE CONCAT('%',#{dto.materialProp},'%')
@@ -186,7 +188,9 @@
<if test="dto.supplierName != null and dto.supplierName != ''">
AND IFNULL(iiq.supplier_name,'') LIKE CONCAT('%',#{dto.supplierName},'%')
</if>
-
+ <if test="dto.contract != null and dto.contract != ''">
+ AND IFNULL(iiq.contract,'') = #{dto.contract}
+ </if>
GROUP BY MONTH(io1.send_time)
) sub ON am.month = sub.month
ORDER BY am.month
@@ -200,7 +204,7 @@
/* 鍚堟牸 */
SUM(CASE WHEN iiq.inspect_status = 1 THEN 1 ELSE 0 END) AS qualified,
/* 涓嶅悎鏍� */
- SUM(CASE WHEN iiq.inspect_status = 2 THEN 1 ELSE 0 END) AS unQualified,
+ SUM(CASE WHEN iiq.inspect_status = 2 or iiq.inspect_status = 4 THEN 1 ELSE 0 END) AS unQualified,
ROUND(
SUM(CASE WHEN iiq.inspect_status = 1 THEN 1 ELSE 0 END)
/ COUNT(*) * 100,
@@ -220,7 +224,7 @@
) ins ON ins.ins_order_id = io1.id
WHERE
iiq.is_finish = 1
- AND iiq.inspect_status IN (1, 2)
+ AND iiq.inspect_status IN (1, 2,4)
AND io1.order_type = #{dto.orderType}
AND io1.state != -1
AND io1.send_time BETWEEN #{dto.beginDate} AND #{dto.endDate}
@@ -237,13 +241,16 @@
<if test="dto.supplierName != null and dto.supplierName.trim() != ''">
AND IFNULL(iiq.supplier_name, '') LIKE CONCAT('%', #{dto.supplierName}, '%')
</if>
+ <if test="dto.contract != null and dto.contract != ''">
+ AND IFNULL(iiq.contract,'') = #{dto.contract}
+ </if>
</select>
<select id="getMaterialPropTable" resultType="com.ruoyi.inspect.dto.MaterialPropTableDTO">
SELECT
iiq.supplier_name AS supplierName,
COUNT(*) AS totalBatch,
- SUM(CASE WHEN iiq.inspect_status = 2 THEN 1 ELSE 0 END) AS unqualifiedBatch,
+ SUM(CASE WHEN iiq.inspect_status = 2 or iiq.inspect_status = 4 THEN 1 ELSE 0 END) AS unqualifiedBatch,
ROUND(SUM(CASE WHEN iiq.inspect_status = 1 THEN 1 ELSE 0 END) / COUNT(*)* 100, 2 ) AS passRate
FROM ifs_inventory_quantity iiq
@@ -264,7 +271,7 @@
WHERE
iiq.is_finish = 1
- AND iiq.inspect_status IN (1,2)
+ AND iiq.inspect_status IN (1,2,4)
<if test="dto.materialProp != null and dto.materialProp != ''">
AND IFNULL(iiq.material_prop,'') LIKE CONCAT('%',#{dto.materialProp},'%')
@@ -281,7 +288,9 @@
<if test="dto.supplierName != null and dto.supplierName != ''">
AND IFNULL(iiq.supplier_name,'') LIKE CONCAT('%',#{dto.supplierName},'%')
</if>
-
+ <if test="dto.contract != null and dto.contract != ''">
+ AND IFNULL(iiq.contract,'') = #{dto.contract}
+ </if>
GROUP BY
iiq.supplier_name
--
Gitblit v1.9.3