Эх сурвалжийг харах

解决质检系统节点移动后数据统计错误的问题

lvy 15 цаг өмнө
parent
commit
cb6374464f

+ 6 - 0
blade-service/blade-business/src/main/java/org/springblade/business/mapper/WbsTreeContractStatisticsMapper.xml

@@ -38,6 +38,12 @@
         SET a.leaf_num = ifnull(t.leaf_num, a.leaf_num), a.fill_num = ifnull(t.fill_num, a.fill_num),a.approve_num = ifnull(t.approve_num, a.approve_num),
             a.complete_num = ifnull(t.complete_num, a.complete_num), a.jl_fill_num = ifnull(t.jl_fill_num, a.jl_fill_num), a.jl_approve_num = ifnull(t.jl_approve_num, a.jl_approve_num),
             a.jl_complete_num = ifnull(t.jl_complete_num, a.jl_complete_num), a.is_leaf = if(t.leaf_num > 0, 0, 1);
+        update m_wbs_tree_contract_statistics a set fill_num = 0, approve_num = 0, complete_num = 0, jl_fill_num= 0, jl_approve_num = 0, jl_complete_num = 0
+                                                where (is_leaf = 1 or leaf_num = 0) and is_deleted = 0 and id in (
+        <foreach collection="ids" item="item" separator=",">
+            #{item}
+        </foreach>
+        ) and not exists (SELECT 1 from m_wbs_tree_contract where p_id = a.id and is_deleted = 0);
     </update>
     <select id="getByIdOnLock" resultMap="ResultMap">
         select <include refid="includeSql"/> from m_wbs_tree_contract_statistics where id = #{id} for update