From 95f69d1183a56f5768e6d56d043b0c6e5a878bb5 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期三, 04 十二月 2024 21:30:26 +0800
Subject: [PATCH] 空指针校验

---
 ycl-server/src/main/resources/mapper/zgyw/DynamicColumnMapper.xml |  104 ++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 76 insertions(+), 28 deletions(-)

diff --git a/ycl-server/src/main/resources/mapper/zgyw/DynamicColumnMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/DynamicColumnMapper.xml
index 7a27cf7..c640b36 100644
--- a/ycl-server/src/main/resources/mapper/zgyw/DynamicColumnMapper.xml
+++ b/ycl-server/src/main/resources/mapper/zgyw/DynamicColumnMapper.xml
@@ -4,43 +4,91 @@
 
     <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
     <resultMap id="BaseResultMap" type="com.ycl.platform.domain.vo.DynamicColumnVO">
-        <result column="ref_id" property="refId" />
-        <result column="prop_name" property="propName" />
-        <result column="label_value" property="labelValue" />
-        <result column="field_value" property="fieldValue" />
+        <result column="ref_id" property="refId"/>
+        <result column="prop_name" property="propName"/>
+        <result column="label_value" property="labelValue"/>
+        <result column="field_value" property="fieldValue"/>
     </resultMap>
 
-
-
-
-
-
-
     <select id="getById" resultMap="BaseResultMap">
+        SELECT TDC.ref_id,
+               TDC.prop_name,
+               TDC.label_value,
+               TDC.field_value,
+               TDC.id
+        FROM t_dynamic_column TDC
+        WHERE TDC.id = #{id}
+          AND TDC.deleted = 0
+    </select>
+
+    <select id="getHeader" resultType="java.lang.String">
+        SELECT TDC.label_value
+        FROM t_dynamic_column TDC
+        WHERE TDC.table_name =#{tableName}
+    </select>
+    <select id="getData" resultType="com.ycl.platform.domain.vo.DynamicColumnVO">
         SELECT
-            TDC.ref_id,
-            TDC.prop_name,
-            TDC.label_value,
-            TDC.field_value,
-            TDC.id
+        TDC.id,
+        TDCV.ref_id,
+        TDC.prop_name,
+        TDC.label_value,
+        TDCV.column_value,
+        TDCV.id as value_id
         FROM
-            t_dynamic_column TDC
-        WHERE
-            TDC.id = #{id} AND TDC.deleted = 0
+        t_dynamic_column TDC
+        LEFT JOIN t_dynamic_column_value TDCV ON TDC.id =TDCV.dynamic_column_id
+        <where>
+            TDC.table_name  = 't_yw_point'
+<!--            <if test="ids !=null and ids.size > 0">-->
+<!--                AND TDCV.ref_id in-->
+<!--                <foreach collection="ids" open="(" separator="," close=")" item="id">-->
+<!--                    #{id}-->
+<!--                </foreach>-->
+<!--            </if>-->
+        </where>
     </select>
 
 
     <select id="getPage" resultMap="BaseResultMap">
-        SELECT
-            TDC.ref_id,
-            TDC.prop_name,
-            TDC.label_value,
-            TDC.field_value,
-            TDC.id
-        FROM
-            t_dynamic_column TDC
-        WHERE
-            TDC.deleted = 0
+        SELECT TDC.ref_id,
+               TDC.prop_name,
+               TDC.label_value,
+               TDC.field_value,
+               TDC.id
+        FROM t_dynamic_column TDC
+        WHERE TDC.deleted = 0
     </select>
 
+    <insert id="saveBatch">
+        insert into t_dynamic_column_value (dynamic_column_id,column_value,ref_id) values
+        <foreach collection="insertList" item="item" separator=",">
+            (#{item.dynamicColumnId},#{item.columnValue},#{item.refId})
+        </foreach>
+    </insert>
+    <update id="updateBatch">
+        <foreach collection="updateList" separator=";" item="item">
+            UPDATE t_dynamic_column_value
+            SET column_value = #{item.columnValue}
+            WHERE id = #{item.id}
+        </foreach>
+    </update>
+    <delete id="deleteBatch">
+        delete from t_dynamic_column_value where id in
+        <foreach collection="deleteList" open="(" close=")" separator="," item="id">
+            #{id}
+        </foreach>
+    </delete>
+
+    <select id="getDynamicsByIds" resultType="com.ycl.platform.domain.vo.DynamicColumnVO">
+        SELECT
+        *
+        FROM
+        t_dynamic_column_value dcv
+        LEFT JOIN t_dynamic_column dc ON dc.id = dcv.dynamic_column_id AND dc.table_name = #{tableName}
+        WHERE
+        dcv.ref_id in
+        <foreach collection="ids" item="id" separator="," open="(" close=")">
+            #{id}
+        </foreach>
+    </select>
 </mapper>

--
Gitblit v1.8.0