From fd58eac9c45b19300135d84b1d22013466807a96 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期日, 20 九月 2026 13:52:51 +0800
Subject: [PATCH] feat(inspect): 完善检验报告功能与数据处理 - 添加重新生成报告的功能接口 - 优化管理员权限判断逻辑,允许管理员查看全部待复核任务 - 改进Excel数据解析逻辑,支持合并单元格的坐标计算 - 完善直绑模板订单的检验结果处理机制 - 优化报告下载接口,支持按报告类型选择 - 提升附件上传大小限制至200MB

---
 inspect-server/src/main/resources/mapper/InsOrderRatesMapper.xml |   20 ++++++++++++++++----
 1 files changed, 16 insertions(+), 4 deletions(-)

diff --git a/inspect-server/src/main/resources/mapper/InsOrderRatesMapper.xml b/inspect-server/src/main/resources/mapper/InsOrderRatesMapper.xml
index f025537..402a50a 100644
--- a/inspect-server/src/main/resources/mapper/InsOrderRatesMapper.xml
+++ b/inspect-server/src/main/resources/mapper/InsOrderRatesMapper.xml
@@ -10,12 +10,24 @@
         io.type_source = 0
         then io.sample_view
         else io.sample end                            sampleStr,
-        GROUP_CONCAT(DISTINCT isa.model SEPARATOR ' ') AS sample_model
+        GROUP_CONCAT(DISTINCT isa.model SEPARATOR ' ') AS sample_model,
+        sum(tempior.rates) + 200 total_price
         from ins_order io
         LEFT JOIN ins_sample isa ON isa.ins_order_id = io.id
-        left join ins_order_rates ior on ior.ins_order_id = io.id
-        where ior.id is not null
-        group by  io.id) a
+        left join (
+        select ior.id, ior.ins_order_id, ior.rates from
+        ins_order_rates ior
+        left join ins_product ip on ip.id = ior.ins_product_id
+        left join ins_order io2 on ior.ins_order_id = io2.id
+        GROUP BY CASE
+        WHEN ior.man_hour_group IS NOT NULL AND ior.man_hour_group != '' THEN ior.man_hour_group
+        ELSE ior.id END,
+        CASE WHEN ior.man_hour_group IS NOT NULL AND ior.man_hour_group != '' THEN ior.ins_sample_id ELSE ior.id END,
+        CASE WHEN ior.man_hour_group IS NOT NULL AND ior.man_hour_group != '' THEN ip.radius ELSE ior.id END,
+        CASE WHEN ior.man_hour_group IS NOT NULL AND ior.man_hour_group != '' THEN ip.cable_tag ELSE ior.id END,
+        CASE WHEN ior.man_hour_group IS NOT NULL AND ior.man_hour_group != '' THEN ior.ins_order_id ELSE ior.id END) tempior on tempior.ins_order_id = io.id
+        where tempior.id is not null
+        group by io.id) a
         <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''">
             ${ew.customSqlSegment}
         </if>

--
Gitblit v1.9.3