From 3647aa5008055528f075ee73002542a1399575ae Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期三, 19 三月 2025 14:45:39 +0800
Subject: [PATCH] 单点登录调整

---
 basic-server/src/main/resources/mapper/StandardTreeMapper.xml |  252 ++++++++++++++++++++++++++++---------------------
 1 files changed, 143 insertions(+), 109 deletions(-)

diff --git a/basic-server/src/main/resources/mapper/StandardTreeMapper.xml b/basic-server/src/main/resources/mapper/StandardTreeMapper.xml
index 137857f..989c59c 100644
--- a/basic-server/src/main/resources/mapper/StandardTreeMapper.xml
+++ b/basic-server/src/main/resources/mapper/StandardTreeMapper.xml
@@ -3,7 +3,7 @@
         PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.ruoyi.basic.mapper.StandardTreeMapper">
-    <resultMap id="BaseResultMap" type="com.ruoyi.inspect.pojo.StandardTree">
+    <resultMap id="BaseResultMap" type="com.ruoyi.basic.pojo.StandardTree">
         <id property="id" column="id" jdbcType="INTEGER"/>
         <result property="factory" column="factory" jdbcType="VARCHAR"/>
         <result property="laboratory" column="laboratory" jdbcType="VARCHAR"/>
@@ -16,90 +16,37 @@
         <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
     </resultMap>
 
-    <resultMap id="FactoryDto" type="com.ruoyi.inspect.dto.FactoryDto">
+    <resultMap id="FactoryDto" type="com.ruoyi.basic.dto.FactoryDto">
         <result property="label" column="factory"/>
         <result property="value" column="factory"/>
         <collection property="children" resultMap="LaboratoryDto"/>
     </resultMap>
-
-    <resultMap id="LaboratoryDto" type="com.ruoyi.inspect.dto.LaboratoryDto">
+    <resultMap id="LaboratoryDto" type="com.ruoyi.basic.dto.LaboratoryDto">
         <result property="label" column="laboratory"/>
         <result property="value" column="laboratory"/>
         <collection property="children" resultMap="SampleTypeDto"/>
     </resultMap>
-
-    <resultMap id="SampleTypeDto" type="com.ruoyi.inspect.dto.SampleTypeDto">
+    <resultMap id="SampleTypeDto" type="com.ruoyi.basic.dto.SampleTypeDto">
         <result property="label" column="sample_type"/>
         <result property="value" column="sample_type"/>
-        <result property="sampleTypeId" column="sample_type_id"/>
-        <result property="sort" column="sort"/>
-        <result property="partNo" column="part_no"/>
-        <result property="sampleTypeEn" column="sample_type_en"/>
         <collection property="children" resultMap="SampleDto"/>
     </resultMap>
-
-    <resultMap id="SampleDto" type="com.ruoyi.inspect.dto.SampleDto">
+    <resultMap id="SampleDto" type="com.ruoyi.basic.dto.SampleDto">
         <result property="label" column="sample"/>
         <result property="value" column="sample"/>
-        <result property="partNo" column="sample_part_no"/>
-        <result property="sampleEn" column="sample_en"/>
         <collection property="children" resultMap="ModelDto"/>
     </resultMap>
-
-    <resultMap id="ModelDto" type="com.ruoyi.inspect.dto.ModelDto">
+    <resultMap id="ModelDto" type="com.ruoyi.basic.dto.ModelDto">
         <result property="label" column="model"/>
         <result property="value" column="model"/>
     </resultMap>
-
-    <sql id="selectStandardTree">
-        sample    sample2,
-               inspection_item,
-               inspection_item_en,
-               inspection_item_subclass,
-               inspection_item_subclass_en,
-               inspection_item_class,
-               inspection_item_class_en,
-               method,
-               son_laboratory,
-               unit,
-               ask_tell  tell,
-               ask,
-               price,
-               man_hour,
-               man_hour_group,
-               man_day,
-               inspection_item_type,
-               inspection_value_type,
-               bsm,
-               template_id,
-               laboratory,
-               checkout_number,
-               section,
-               dic,
-               0         state,
-        #{model}
-        model,
-        #{sample}
-        sample,
-        #{trees}
-        tree,
-        id
-        structure_item_parameter_id,
-        radius_list,
-        rates
-    </sql>
-
     <select id="selectStandardTreeList" resultMap="FactoryDto">
         select '涓ぉ绉戞妧妫�娴嬩腑蹇�'        factory,
                l.laboratory_name laboratory,
                sto.specimen_name sample_type,
                p.name            sample,
                st.model,
-               sto.code,
-               sto.id  sample_type_id,
-               sto.sort,
-               sto.specimen_name_en sample_type_en,
-               p.name_en sample_en
+               sto.code
         from laboratory l
                  left join structure_test_object sto on sto.laboratory_id = l.id
                  left join product p on p.object_id = sto.id
@@ -107,8 +54,7 @@
             and st.sample = p.name
         order by l.id, CAST(sto.code AS DECIMAL), p.id, ISNULL(st.id), st.id
     </select>
-
-    <select id="selectStandardProductById" resultType="com.ruoyi.inspect.pojo.StandardProductList">
+    <select id="selectStandardProductById" resultType="com.ruoyi.basic.pojo.StandardProductList">
         select inspection_item,
                inspection_item_subclass,
                laboratory,
@@ -128,7 +74,7 @@
         from structure_item_parameter
         where id = #{id}
     </select>
-    <select id="getStandardProductListBySample" resultType="com.ruoyi.inspect.pojo.StandardProductList">
+    <select id="getStandardProductListBySample" resultType="com.ruoyi.basic.pojo.StandardProductList">
         select inspection_item,
                inspection_item_subclass,
                laboratory,
@@ -154,7 +100,7 @@
            or sp.sample = ''
            or sp.sample = '[]'
     </select>
-    <select id="getStandardMethodListBySample" resultType="com.ruoyi.inspect.pojo.StandardMethodList">
+    <select id="getStandardMethodListBySample" resultType="com.ruoyi.basic.pojo.StandardMethodList">
         select sm.code,sm.name,sm.remark from standard_method sm
         left join structure_test_object sto on sm.structure_test_object_id = sto.id
         where is_use = 1
@@ -163,7 +109,7 @@
             and sto.specimen_name = #{sampleType}
         </if>
     </select>
-    <select id="selectStandardTreeList2" resultType="com.ruoyi.inspect.pojo.StandardTree">
+    <select id="selectStandardTreeList2" resultType="com.ruoyi.basic.pojo.StandardTree">
         select '涓ぉ绉戞妧妫�娴嬩腑蹇�'        factory,
                l.laboratory_name laboratory,
                sto.specimen_name sample_type,
@@ -177,8 +123,36 @@
         where sto.specimen_name = #{sampleType}
         group by sto.specimen_name
     </select>
-    <select id="selectStandardProductListByTree" resultType="com.ruoyi.inspect.pojo.StandardProductList">
-        select <include refid="selectStandardTree"/>
+    <select id="selectStandardProductListByTree" resultType="com.ruoyi.basic.pojo.StandardProductList">
+        select sample    sample2,
+               inspection_item,
+               inspection_item_en,
+               inspection_item_subclass,
+               inspection_item_subclass_en,
+               inspection_item_class,
+               inspection_item_class_en,
+               method,
+               son_laboratory,
+               unit,
+               ask_tell  tell,
+               ask,
+               price,
+               man_hour,
+               man_hour_group,
+               man_day,
+               inspection_item_type,
+               inspection_value_type,
+               bsm,
+               template_id,
+               laboratory,
+               checkout_number,
+               section,
+               dic,
+               0         state,
+               #{model}  model,
+               #{sample} sample,
+               #{trees}  tree,
+               id        structure_item_parameter_id
         from structure_item_parameter
         where (
                 sample is NULL
@@ -189,19 +163,63 @@
           and (laboratory is null
             or laboratory = ''
             or laboratory = #{laboratory})
-        order by inspection_item_class, inspection_item, id asc
-    </select>
+        order by case
+                     when man_hour_group is NULL then 1
+                     when man_hour_group = '' then 1
+                     else 0 end,
+                 CASE
+                     WHEN man_hour_group REGEXP '^[0-9]' THEN CAST(man_hour_group AS UNSIGNED) -- 濡傛灉浠ユ暟瀛楀紑澶达紝鍒欐寜鐓ф暟瀛楀ぇ灏忔帓搴�
+                     WHEN man_hour_group REGEXP '[0-9]+'
+                         THEN CAST(SUBSTRING(man_hour_group, 2) AS UNSIGNED) END -- 鎻愬彇瀛楁瘝鍚庨潰鐨勬暟瀛楅儴鍒�
 
-    <select id="selectStandardProductListByTree2" resultType="com.ruoyi.inspect.pojo.StandardProductList">
-        select <include refid="selectStandardTree"/>
+                , id asc
+    </select>
+    <select id="selectStandardProductListByTree2" resultType="com.ruoyi.basic.pojo.StandardProductList">
+        select sample    sample2,
+               inspection_item,
+               inspection_item_en,
+               inspection_item_subclass,
+               inspection_item_subclass_en,
+               inspection_item_class,
+               inspection_item_class_en,
+               method,
+               son_laboratory,
+               unit,
+               ask_tell  tell,
+               ask,
+               price,
+               man_hour,
+               man_hour_group,
+               man_day,
+               inspection_item_type,
+               inspection_value_type,
+               bsm,
+               template_id,
+               laboratory,
+               checkout_number,
+               section,
+               dic,
+               0         state,
+               #{model}  model,
+               #{sample} sample,
+               #{trees}  tree,
+               id        structure_item_parameter_id
         from structure_item_parameter
         where sample LIKE CONCAT('%[', #{tree}, ']%')
           and (laboratory is null
             or laboratory = ''
             or laboratory = #{laboratory})
-        order by inspection_item_class, inspection_item, id asc
-    </select>
+        order by case
+                     when man_hour_group is NULL then 1
+                     when man_hour_group = '' then 1
+                     else 0 end,
+                 CASE
+                     WHEN man_hour_group REGEXP '^[0-9]' THEN CAST(man_hour_group AS UNSIGNED) -- 濡傛灉浠ユ暟瀛楀紑澶达紝鍒欐寜鐓ф暟瀛楀ぇ灏忔帓搴�
+                     WHEN man_hour_group REGEXP '[0-9]+'
+                         THEN CAST(SUBSTRING(man_hour_group, 2) AS UNSIGNED) END -- 鎻愬彇瀛楁瘝鍚庨潰鐨勬暟瀛楅儴鍒�
 
+                , id asc
+    </select>
     <select id="getStandardTree2" resultMap="SampleTypeDto">
         select sto.specimen_name sample_type,
                p.name            sample,
@@ -211,15 +229,64 @@
                  left join standard_tree st on st.sample_type = sto.specimen_name
             and st.sample = p.name
     </select>
+    <select id="selectStandardProductListByTree3" resultType="com.ruoyi.basic.pojo.StandardProductList">
+        select sample    sample2,
+               inspection_item,
+               inspection_item_en,
+               inspection_item_subclass,
+               inspection_item_subclass_en,
+               inspection_item_class,
+               inspection_item_class_en,
+               method,
+               son_laboratory,
+               unit,
+               ask_tell  tell,
+               ask,
+               price,
+               man_hour,
+               man_hour_group,
+               man_day,
+               inspection_item_type,
+               inspection_value_type,
+               bsm,
+               template_id,
+               laboratory,
+               checkout_number,
+               section,
+               dic,
+               0         state,
+               #{model}  model,
+               #{sample} sample,
+               #{trees}  tree,
+               id        structure_item_parameter_id
+        from structure_item_parameter
+        where (
+                sample is NULL
+                OR sample = ''
+                or sample = '[]'
+                OR sample LIKE CONCAT('%', #{tree}, '%')
+            )
+          and (laboratory is null
+            or laboratory = ''
+            or laboratory = #{laboratory})
+        order by case
+                     when man_hour_group is NULL then 1
+                     when man_hour_group = '' then 1
+                     else 0 end,
+                 CASE
+                     WHEN man_hour_group REGEXP '^[0-9]' THEN CAST(man_hour_group AS UNSIGNED) -- 濡傛灉浠ユ暟瀛楀紑澶达紝鍒欐寜鐓ф暟瀛楀ぇ灏忔帓搴�
+                     WHEN man_hour_group REGEXP '[0-9]+'
+                         THEN CAST(SUBSTRING(man_hour_group, 2) AS UNSIGNED) END -- 鎻愬彇瀛楁瘝鍚庨潰鐨勬暟瀛楅儴鍒�
 
-    <select id="getStandardTree3" resultType="com.ruoyi.inspect.dto.SampleDto">
+                , id asc
+    </select>
+    <select id="getStandardTree3" resultType="com.ruoyi.basic.dto.SampleDto">
         select model label,
                model value
         from standard_tree
         where sample_type = #{sampleType}
           and sample is null
     </select>
-
     <select id="getLaboratory" resultType="java.lang.String">
         select l.laboratory_name
         from structure_test_object sto
@@ -240,7 +307,7 @@
             and (inspection_item_subclass is null or inspection_item_subclass = '')
         </if>
     </select>
-    <select id="selectPList" resultType="com.ruoyi.inspect.dto.ProductDto">
+    <select id="selectPList" resultType="com.ruoyi.basic.dto.ProductDto">
         select p.name
         from structure_test_object sto
                  left join product p on p.object_id = sto.id
@@ -251,38 +318,5 @@
         select name
         from product
         where name = #{name}
-    </select>
-    <select id="selectStandardTreeListByPartNo" resultMap="FactoryDto">
-        select '涓ぉ绉戞妧妫�娴嬩腑蹇�' factory,
-               l.laboratory_name  laboratory,
-               sto.specimen_name  sample_type,
-               p.name             sample,
-               st.model,
-               CASE
-                   WHEN p.id = (SELECT pp.product_id
-                                FROM product_part pp
-                                WHERE pp.part_no = #{partNo})
-                       THEN #{partNo}
-                   ELSE NULL
-                   END AS sample_part_no,
-               CASE
-                   WHEN sto.id = (SELECT sto.test_object_id
-                                  FROM structure_test_object_part sto
-                                  WHERE sto.part_no = #{partNo})
-                       THEN #{partNo}
-                   ELSE NULL
-                   END AS part_no
-        from laboratory l
-                 left join structure_test_object sto on sto.laboratory_id = l.id
-                 left join product p on p.object_id = sto.id
-                 left join standard_tree st on st.sample_type = sto.specimen_name
-            and st.sample = p.name
-        where (p.id = (select pp.product_id
-                       from product_part pp
-                       where pp.part_no = #{partNo})
-            or sto.id = (select sto.test_object_id
-                         from structure_test_object_part sto
-                         where sto.part_no = #{partNo}))
-        order by l.id, CAST(sto.code AS DECIMAL), p.id, ISNULL(st.id), st.id
     </select>
 </mapper>

--
Gitblit v1.9.3