From 4f45f29e6b53f4c01b414409c5000ff4e212b3d9 Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期五, 05 六月 2026 13:36:54 +0800
Subject: [PATCH] 增加eip

---
 report-server/src/main/resources/mapper/TestItemDataMapper.xml |  132 ++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 132 insertions(+), 0 deletions(-)

diff --git a/report-server/src/main/resources/mapper/TestItemDataMapper.xml b/report-server/src/main/resources/mapper/TestItemDataMapper.xml
new file mode 100644
index 0000000..aa05fea
--- /dev/null
+++ b/report-server/src/main/resources/mapper/TestItemDataMapper.xml
@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.report.mapper.TestItemDataMapper">
+
+    <!-- 鍒嗛〉鏌ヨ妫�娴嬮」鐩暟鎹� -->
+    <select id="pageTestItemData" resultType="com.ruoyi.report.vo.TestItemDataVo">
+        SELECT
+            p.id AS productId,
+            s.id AS sampleId,
+            s.sample_code AS sampleCode,
+            s.sample AS sampleName,
+            o.production AS productionOrder,
+            o.entrust_code AS batchNo,
+            p.inspection_item AS itemName,
+            p.last_value AS lastValue,
+            p.ask AS standardValue,
+            p.ins_result AS insResult,
+            p.unit AS unit,
+            u.name AS insUser,
+            o.ins_time AS insTime,
+            r.code AS reportCode
+        FROM ins_product p
+        LEFT JOIN ins_sample s ON p.ins_sample_id = s.id
+        LEFT JOIN ins_order o ON s.ins_order_id = o.id
+        LEFT JOIN ins_report r ON o.id = r.ins_order_id
+        LEFT JOIN ins_product_user pu ON p.id = pu.ins_product_id
+        LEFT JOIN user u ON pu.create_user = u.id
+        WHERE 1=1
+        <if test="dto.productionOrder != null and dto.productionOrder != ''">
+            AND o.production LIKE CONCAT('%', #{dto.productionOrder}, '%')
+        </if>
+        <if test="dto.batchNo != null and dto.batchNo != ''">
+            AND o.entrust_code LIKE CONCAT('%', #{dto.batchNo}, '%')
+        </if>
+        <if test="dto.sampleCode != null and dto.sampleCode != ''">
+            AND s.sample_code LIKE CONCAT('%', #{dto.sampleCode}, '%')
+        </if>
+        <if test="dto.sampleName != null and dto.sampleName != ''">
+            AND s.sample LIKE CONCAT('%', #{dto.sampleName}, '%')
+        </if>
+        <if test="dto.itemName != null and dto.itemName != ''">
+            AND p.inspection_item LIKE CONCAT('%', #{dto.itemName}, '%')
+        </if>
+        <if test="dto.insState != null">
+            AND o.ins_state = #{dto.insState}
+        </if>
+        <if test="dto.startTime != null and dto.startTime != ''">
+            AND o.ins_time >= #{dto.startTime}
+        </if>
+        <if test="dto.endTime != null and dto.endTime != ''">
+            AND o.ins_time &lt;= #{dto.endTime}
+        </if>
+        ORDER BY o.ins_time DESC
+    </select>
+
+    <!-- 鏌ヨ妫�娴嬮」鐩鎯� -->
+    <select id="getDetail" resultType="com.ruoyi.report.vo.TestItemDataVo">
+        SELECT
+            p.id AS productId,
+            s.id AS sampleId,
+            s.sample_code AS sampleCode,
+            s.sample AS sampleName,
+            o.production AS productionOrder,
+            o.entrust_code AS batchNo,
+            p.inspection_item AS itemName,
+            p.last_value AS lastValue,
+            p.ask AS standardValue,
+            p.ins_result AS insResult,
+            p.unit AS unit,
+            u.name AS insUser,
+            o.ins_time AS insTime,
+            r.code AS reportCode
+        FROM ins_product p
+        LEFT JOIN ins_sample s ON p.ins_sample_id = s.id
+        LEFT JOIN ins_order o ON s.ins_order_id = o.id
+        LEFT JOIN ins_report r ON o.id = r.ins_order_id
+        LEFT JOIN ins_product_user pu ON p.id = pu.ins_product_id
+        LEFT JOIN user u ON pu.create_user = u.id
+        WHERE s.id = #{sampleId}
+        ORDER BY p.inspection_item ASC
+    </select>
+
+    <!-- 鏌ヨ妫�娴嬮」鍚嶇О鍒楄〃 -->
+    <select id="getItemNames" resultType="java.lang.String">
+        SELECT DISTINCT p.inspection_item
+        FROM ins_product p
+        LEFT JOIN ins_sample s ON p.ins_sample_id = s.id
+        LEFT JOIN ins_order o ON s.ins_order_id = o.id
+        WHERE 1=1
+        <if test="dto.sampleName != null and dto.sampleName != ''">
+            AND s.sample LIKE CONCAT('%', #{dto.sampleName}, '%')
+        </if>
+        <if test="dto.startTime != null and dto.startTime != ''">
+            AND o.ins_time >= #{dto.startTime}
+        </if>
+        <if test="dto.endTime != null and dto.endTime != ''">
+            AND o.ins_time &lt;= #{dto.endTime}
+        </if>
+        ORDER BY p.inspection_item ASC
+    </select>
+
+    <!-- 鏍规嵁鏍峰搧ID鍒楄〃鏌ヨ妫�娴嬫暟鎹� -->
+    <select id="listBySampleIds" resultType="com.ruoyi.report.vo.TestItemDataVo">
+        SELECT
+            p.id AS productId,
+            s.id AS sampleId,
+            s.sample_code AS sampleCode,
+            s.sample AS sampleName,
+            o.production AS productionOrder,
+            o.entrust_code AS batchNo,
+            p.inspection_item AS itemName,
+            p.last_value AS lastValue,
+            p.ask AS standardValue,
+            p.ins_result AS insResult,
+            p.unit AS unit,
+            u.name AS insUser,
+            o.ins_time AS insTime,
+            r.code AS reportCode
+        FROM ins_product p
+        LEFT JOIN ins_sample s ON p.ins_sample_id = s.id
+        LEFT JOIN ins_order o ON s.ins_order_id = o.id
+        LEFT JOIN ins_report r ON o.id = r.ins_order_id
+        LEFT JOIN ins_product_user pu ON p.id = pu.ins_product_id
+        LEFT JOIN user u ON pu.create_user = u.id
+        WHERE s.id IN
+        <foreach collection="sampleIds" item="id" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+        ORDER BY s.sample_code ASC, p.inspection_item ASC
+    </select>
+
+</mapper>

--
Gitblit v1.9.3