From dfea650104b9ad8529fc2df46225c30a0df8c6f5 Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期四, 31 八月 2023 11:57:38 +0800
Subject: [PATCH] 修改

---
 laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/ClassAndInsTree.java               |   21 ++++++++++
 laboratory-server/src/main/resources/mapper/InstrumentMapper.xml                                   |   47 ++++++++++++++++++++---
 laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/Ins.java                           |   18 +++++++++
 laboratory-server/src/main/java/com/yuanchu/limslaboratory/mapper/InstrumentMapper.java            |    3 +
 inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java |    4 +-
 laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/ClassAndIns.java                   |   20 ++++++++++
 inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/InsProductVo.java               |    2 
 7 files changed, 104 insertions(+), 11 deletions(-)

diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/InsProductVo.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/InsProductVo.java
index ec69439..f7f01bb 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/InsProductVo.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/InsProductVo.java
@@ -64,7 +64,7 @@
     private Integer inspectionMaterialId;
 
     /**
-     *  妫�楠屽憳
+     *  璐d换浜�
      **/
     @JsonSerialize
     private String userName;
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java
index 0780007..639bcb0 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java
@@ -254,8 +254,8 @@
                 insProductVo.setInstrumentName(equipmentName);
             }
             //鑾峰彇鐢ㄦ埛鍚�(鍓嶆彁鏄鏋滃瓨鍦�)
-            if (insProduct.getUserId() != null) {
-                String userName = userMapper.selectById(insProduct.getUserId()).getName();
+            if (insProduct.getUserProId() != null) {
+                String userName = userMapper.selectById(insProduct.getUserProId()).getName();
                 insProductVo.setUserName(userName);
             }
             //椤圭洰鍏宠仈鐗╂枡id
diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/mapper/InstrumentMapper.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/mapper/InstrumentMapper.java
index a0dcfed..d30fe5a 100644
--- a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/mapper/InstrumentMapper.java
+++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/mapper/InstrumentMapper.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.yuanchu.limslaboratory.pojo.ClassAndInsTree;
 import com.yuanchu.limslaboratory.pojo.Instrument;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Mapper;
@@ -26,5 +27,5 @@
     //鍒嗛厤-->閫夋嫨璁惧
     List<Map<String, Object>> chooseinstum();
 
-    List<Map<String, String>> getInstrument();
+    List<ClassAndInsTree> getInstrument();
 }
diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/ClassAndIns.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/ClassAndIns.java
new file mode 100644
index 0000000..130e8c3
--- /dev/null
+++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/ClassAndIns.java
@@ -0,0 +1,20 @@
+package com.yuanchu.limslaboratory.pojo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @Author 寮犲
+ * @Date 2023/8/31
+ */
+@Data
+public class ClassAndIns implements Serializable {
+
+    private Integer sonId;
+
+    private String sonName;
+
+    List<Ins> childrenList;
+}
diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/ClassAndInsTree.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/ClassAndInsTree.java
new file mode 100644
index 0000000..edf41a6
--- /dev/null
+++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/ClassAndInsTree.java
@@ -0,0 +1,21 @@
+package com.yuanchu.limslaboratory.pojo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @Author 寮犲
+ * @Date 2023/8/31
+ */
+@Data
+public class ClassAndInsTree implements Serializable {
+
+    private Integer fatherId;
+
+    private String fatherName;
+
+    List<ClassAndIns> childrenList;
+
+}
diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/Ins.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/Ins.java
new file mode 100644
index 0000000..1d9cf29
--- /dev/null
+++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/Ins.java
@@ -0,0 +1,18 @@
+package com.yuanchu.limslaboratory.pojo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @Author 寮犲
+ * @Date 2023/8/31
+ */
+@Data
+public class Ins implements Serializable {
+
+    private Integer insId;
+
+    private String name;
+
+}
diff --git a/laboratory-server/src/main/resources/mapper/InstrumentMapper.xml b/laboratory-server/src/main/resources/mapper/InstrumentMapper.xml
index 5031258..57ce9b7 100644
--- a/laboratory-server/src/main/resources/mapper/InstrumentMapper.xml
+++ b/laboratory-server/src/main/resources/mapper/InstrumentMapper.xml
@@ -37,16 +37,49 @@
         <result property="name" column="name"/>
     </resultMap>
     <select id="chooseinstum" resultMap="chooseinstumMap">
-        select c.id cid,
-            instrument.id,
-               father_name ,
-               son_name ,
+        select c.id           cid,
+               instrument.id,
+               father_name,
+               son_name,
                equipment_name name
         from lims_laboratory.instrument
                  left join lims_laboratory.classify c on c.id = instrument.classify_id
-        where conditions in(1,5)
+        where conditions in (1, 5)
     </select>
-    <select id="getInstrument" resultType="map">
-        select id,equipment_name equipmentName from instrument  where 1=1  and state=1 and conditions=5
+    <select id="getInstrument" resultMap="treeMapClassAndInstrument">
+        SELECT
+            *
+        FROM
+            classify f,(
+            SELECT
+                cl.id cId,
+                cl.son_name cSonName,
+                cl.father_name cFatherName,
+                i.id iId,
+                equipment_name equipmentName
+            FROM
+                classify cl,
+                instrument i
+            WHERE
+                i.classify_id = cl.id
+              AND i.state = 1
+              AND conditions = 5
+        ) s
+        WHERE
+            f.father_name = s.cFatherName
+          AND f.son_name IS NULL
     </select>
+
+    <resultMap id="treeMapClassAndInstrument" type="com.yuanchu.limslaboratory.pojo.ClassAndInsTree" >
+        <result property="fatherId" column="id"/>
+        <result property="fatherName" column="father_name"/>
+        <collection property="childrenList" ofType="classAndIns">
+            <result property="sonId" column="cId"/>
+            <result property="sonName" column="cSonName"/>
+            <collection property="childrenList" ofType="ins">
+                <result property="insId" column="iId"/>
+                <result property="name" column="equipmentName"/>
+            </collection>
+        </collection>
+    </resultMap>
 </mapper>

--
Gitblit v1.9.3