瀏覽代碼

修改防止node数据中共锁人出现空字符串解析错误的情况

车车 1 月之前
父節點
當前提交
4c8c81d8a8
共有 1 個文件被更改,包括 5 次插入4 次删除
  1. 5 4
      yudao-module-iscs/src/main/resources/mapper/workdesign/WorkflowWorkMapper.xml

+ 5 - 4
yudao-module-iscs/src/main/resources/mapper/workdesign/WorkflowWorkMapper.xml

@@ -53,6 +53,7 @@
 
             -- 条件3:公锁人ID匹配(仅isolation类型有此条件)
             OR (
+            work_node.colock_persons != '' AND
             JSON_CONTAINS(CAST(work_node.colock_persons AS JSON), CAST(#{vo.loginUserId} AS JSON), '$')
             -- AND (
             -- isolation类型:进度大于等于3
@@ -104,7 +105,7 @@
             -- 条件2:关联表中上锁人ID匹配
             OR work_node.lock_person = #{vo.loginUserId}
             -- 条件3:关联表中公锁人ID匹配
-            OR JSON_CONTAINS(CAST(work_node.colock_persons AS JSON), CAST(#{vo.loginUserId} AS JSON), '$') )
+            OR (work_node.colock_persons != '' AND JSON_CONTAINS(CAST(work_node.colock_persons AS JSON), CAST(#{vo.loginUserId} AS JSON), '$') ) )
             <if test="vo.key != null and vo.key.trim != ''">
                 AND (ww.name like concat('%',#{vo.key},'%')
                 OR ww.order_no like concat('%',#{vo.key},'%')
@@ -131,7 +132,7 @@
             -- 条件2:关联表中上锁人ID匹配
             OR work_node.lock_person = #{loginUserId}
             -- 条件3:关联表中公锁人ID匹配
-            OR JSON_CONTAINS(CAST(work_node.colock_persons AS JSON), CAST(#{loginUserId} AS JSON), '$') )
+            OR (work_node.colock_persons != '' AND JSON_CONTAINS(CAST(work_node.colock_persons AS JSON), CAST(#{loginUserId} AS JSON), '$') ) )
         </where>
     </select>
     <select id="getMyCompletedCount" resultType="java.lang.Long">
@@ -149,7 +150,7 @@
             -- 条件2:关联表中上锁人ID匹配
             OR work_node.lock_person = #{loginUserId}
             -- 条件3:关联表中公锁人ID匹配
-            OR JSON_CONTAINS(CAST(work_node.colock_persons AS JSON), CAST(#{loginUserId} AS JSON), '$') )
+            OR (work_node.colock_persons != '' AND JSON_CONTAINS(CAST(work_node.colock_persons AS JSON), CAST(#{loginUserId} AS JSON), '$') ) )
         </where>
 
     </select>
@@ -224,7 +225,7 @@
             -- 条件2:关联表中上锁人ID匹配
             OR work_node.lock_person = #{vo.loginUserId}
             -- 条件3:关联表中公锁人ID匹配
-            OR JSON_CONTAINS(CAST(work_node.colock_persons AS JSON), CAST(#{vo.loginUserId} AS JSON), '$') ) )
+            OR (work_node.colock_persons != '' AND JSON_CONTAINS(CAST(work_node.colock_persons AS JSON), CAST(#{vo.loginUserId} AS JSON), '$') ) ) )
             -- 我的创建
             OR ww.creator = #{vo.loginUserId} )
             <if test="vo.key != null and vo.key.trim != ''">