From 124ecca15d3c5d6dcefa9a27aaa3c07c556674e9 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期二, 30 七月 2024 12:34:42 +0800
Subject: [PATCH] PK8000逻辑处理

---
 cnas-server/src/main/resources/mapper/DeviceMapper.xml |   52 +++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 47 insertions(+), 5 deletions(-)

diff --git a/cnas-server/src/main/resources/mapper/DeviceMapper.xml b/cnas-server/src/main/resources/mapper/DeviceMapper.xml
index 721840b..b9f80a9 100644
--- a/cnas-server/src/main/resources/mapper/DeviceMapper.xml
+++ b/cnas-server/src/main/resources/mapper/DeviceMapper.xml
@@ -3,7 +3,6 @@
         PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.yuanchu.mom.mapper.DeviceMapper">
-
     <select id="selectDeviceParameter" resultType="com.yuanchu.mom.pojo.Device">
         select * from(
         select id,
@@ -93,15 +92,58 @@
     <select id="selectDeviceParameterPage" resultType="com.yuanchu.mom.dto.DeviceDto">
         select * from(
         SELECT
-        d.*, u.name equipmentManagerUser, l.laboratory_name laboratoryName, i.inspection_item insProductItem
+        d.*,
+        GROUP_CONCAT(
+        CONCAT_WS(', ',
+        TRIM(BOTH '["]' FROM SUBSTRING_INDEX(REPLACE(sample, '[["', ''), '"]]', 1)),
+        inspection_item,
+        inspection_item_subclass
+        )
+        SEPARATOR ';'
+        ) AS insProductItem,
+        u.name ,
+        l.laboratory_name
         FROM
         device d
-        left join `user` u on u.id = d.equipment_manager
-        left join laboratory l on l.id = d.subordinate_departments_id
-        left join ins_product i on i.id = d.ins_product_ids
+        LEFT JOIN `user` u ON u.id = d.equipment_manager
+        LEFT JOIN laboratory l ON l.id = d.subordinate_departments_id
+        LEFT JOIN structure_item_parameter sip ON FIND_IN_SET(sip.id, d.ins_product_ids)
+        GROUP BY
+        d.id,
+        u.name, l.laboratory_name
         ) a
         <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''">
             ${ew.customSqlSegment}
         </if>
     </select>
+
+    <select id="getInspectionItemSubclass" resultType="map">
+        SELECT ip.inspection_item,
+               if(ip.inspection_item_subclass is not null and ip.inspection_item_subclass != '',
+                  ip.inspection_item_subclass, ip.inspection_item) inspection_item_subclass
+        FROM ins_product ip
+        where ip.ins_sample_id = #{id}
+    </select>
+
+
+    <resultMap id="treeDeviceDto" type="map">
+        <result property="largeCategory" column="large_category"/>
+        <collection property="children" resultMap="DeviceDto" javaType="List"/>
+    </resultMap>
+
+    <resultMap id="DeviceDto" type="map">
+        <id property="id" column="id"/>
+        <result property="deviceName" column="device_name"/>
+    </resultMap>
+    <select id="treeDevice" resultMap="treeDeviceDto">
+        select id,
+        case  when large_category is null || large_category ='' then '鍏朵粬'
+        else large_category end  as large_category, device_name
+        from device
+        <where>
+            <if test="deviceName!=null and deviceName!=''">
+                and device_name like concat('%',#{deviceName},'%')
+            </if>
+        </where>
+    </select>
 </mapper>

--
Gitblit v1.9.3