From 18097001d683a155257d7d38ebedbfe58269449b Mon Sep 17 00:00:00 2001
From: kimi <kimi42345@gmail.com>
Date: 星期五, 14 二月 2020 14:37:38 +0800
Subject: [PATCH] Merge branch 'master' of http://highdatas.com:9000/r/~kimi/mdm

---
 src/main/resources/mapping/TableInfoMapper.xml |   42 ++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 42 insertions(+), 0 deletions(-)

diff --git a/src/main/resources/mapping/TableInfoMapper.xml b/src/main/resources/mapping/TableInfoMapper.xml
index 5526fe0..c208b70 100644
--- a/src/main/resources/mapping/TableInfoMapper.xml
+++ b/src/main/resources/mapping/TableInfoMapper.xml
@@ -28,9 +28,11 @@
           SELECT std_id FROM  ${tableTempName} tm
           LEFT JOIN maintain_detail ON tm.id = maintain_detail.pre_merge_id
 		  LEFT JOIN maintain ON maintain.id = maintain_detail.parent_id
+		    LEFT JOIN flows f on maintain.flow_id = f.id
 		  WHERE  maintain.order_no <= ${fromOrderNo} and maintain.order_no > ${toOrderNo}
 		  and operate = 'create'
 		  AND tm.std_id = m.id
+		  AND f.status = 'open'
 		  and maintain.table_name = '${tableName}'
 		  ) ) a1
 		LEFT JOIN
@@ -42,8 +44,10 @@
         SELECT MIN(m.order_no) as order_no, mt.std_id FROM ${tableTempName} mt
         LEFT JOIN maintain_detail md on md.pre_merge_id = mt.id
         LEFT JOIN maintain m on m.id = md.parent_id
+        LEFT JOIN flows f on m.flow_id = f.id
         WHERE m.order_no <= ${fromOrderNo} and m.order_no > ${toOrderNo} and  m.table_name = '${tableName}'
         and operate = 'update'
+        AND f.status = 'open'
         GROUP BY mt.std_id
         ) a on a.order_no = m.order_no and a.std_id = h.std_id
 		)a2 on a1.id = a2.id WHERE  a2.id is null
@@ -56,8 +60,10 @@
           SELECT std_id FROM  ${tableTempName} tm
           LEFT JOIN maintain_detail ON tm.id = maintain_detail.pre_merge_id
 		  LEFT JOIN maintain ON maintain.id = maintain_detail.parent_id
+		  LEFT JOIN flows f on maintain.flow_id = f.id
 		  WHERE  maintain.order_no <= ${fromOrderNo} and maintain.order_no > ${toOrderNo}
 		  and operate = 'create'
+		  AND f.status = 'open'
 		  AND tm.std_id = m.id
 		  and maintain.table_name = '${tableName}'
 		  ) ) a1
@@ -70,23 +76,29 @@
         SELECT MIN(m.order_no) as order_no, mt.std_id FROM ${tableTempName} mt
         LEFT JOIN maintain_detail md on md.pre_merge_id = mt.id
         LEFT JOIN maintain m on m.id = md.parent_id
+        LEFT JOIN flows f on m.flow_id = f.id
         WHERE m.order_no <= ${fromOrderNo} and m.order_no > ${toOrderNo} and m.table_name = '${tableName}'
         and operate = 'update'
+        AND f.status = 'open'
         GROUP BY mt.std_id
         ) a on a.order_no = m.order_no and a.std_id = h.std_id
 		)a2 on a1.id = a2.id WHERE  a2.id is not null
 			UNION
 		SELECT ${tempFields} FROM maintain_detail md
         LEFT JOIN maintain ON maintain.id = md.parent_id
+        LEFT JOIN flows f on maintain.flow_id = f.id
         LEFT JOIN ${tableTempName} mt on mt.id = md.pre_merge_id
         WHERE maintain.order_no <= ${fromOrderNo} and maintain.order_no > ${toOrderNo} AND operate = 'delete'
+         AND f.status = 'open'
          and  maintain.table_name = '${tableName}'
         AND NOT EXISTS (
             SELECT * FROM maintain_detail
             LEFT JOIN maintain ON maintain.id = maintain_detail.parent_id
             LEFT JOIN ${tableTempName} mt1 on mt1.id = maintain_detail.pre_merge_id
+            LEFT JOIN flows f on maintain.flow_id = f.id
             WHERE  maintain.order_no <= ${fromOrderNo} and maintain.order_no > ${toOrderNo}
             AND operate = 'create'
+            AND f.status = 'open'
             AND mt.std_id = mt1.std_id
             and  maintain.table_name = '${tableName}'
         )
@@ -208,8 +220,10 @@
           SELECT std_id FROM  ${tableTempName} tm
           LEFT JOIN maintain_detail ON tm.id = maintain_detail.pre_merge_id
 		  LEFT JOIN maintain ON maintain.id = maintain_detail.parent_id
+		  LEFT JOIN flows f on maintain.flow_id = f.id
 		  WHERE  maintain.order_no <= ${fromOrderNo} and maintain.order_no > ${toOrderNo}
 		  and  maintain.table_name = '${tableName}'
+		  AND f.status = 'open'
 		  and operate = 'create'
 		  AND tm.std_id = m.id
 		  ) ) a1
@@ -222,8 +236,10 @@
         SELECT MIN(m.order_no) as order_no, mt.std_id FROM ${tableTempName} mt
         LEFT JOIN maintain_detail md on md.pre_merge_id = mt.id
         LEFT JOIN maintain m on m.id = md.parent_id
+        LEFT JOIN flows f on m.flow_id = f.id
         WHERE m.order_no <= ${fromOrderNo} and m.order_no > ${toOrderNo} and  m.table_name = '${tableName}'
         and operate = 'update'
+        AND f.status = 'open'
         GROUP BY mt.std_id
         ) a on a.order_no = m.order_no and a.std_id = h.std_id
 		)a2 on a1.id = a2.id WHERE  a2.id is null
@@ -236,8 +252,10 @@
           SELECT std_id FROM  ${tableTempName} tm
           LEFT JOIN maintain_detail ON tm.id = maintain_detail.pre_merge_id
 		  LEFT JOIN maintain ON maintain.id = maintain_detail.parent_id
+		  LEFT JOIN flows f on maintain.flow_id = f.id
 		  WHERE  maintain.order_no <= ${fromOrderNo} and maintain.order_no > ${toOrderNo}
 		   and maintain.table_name = '${tableName}'
+		   AND f.status = 'open'
 		  and operate = 'create'
 		  AND tm.std_id = m.id
 		  ) ) a1
@@ -250,8 +268,10 @@
         SELECT MIN(m.order_no) as order_no, mt.std_id FROM ${tableTempName} mt
         LEFT JOIN maintain_detail md on md.pre_merge_id = mt.id
         LEFT JOIN maintain m on m.id = md.parent_id
+        LEFT JOIN flows f on m.flow_id = f.id
         WHERE m.order_no <= ${fromOrderNo} and m.order_no > ${toOrderNo}  and m.table_name = '${tableName}'
         and operate = 'update'
+        AND f.status = 'open'
         GROUP BY mt.std_id
         ) a on a.order_no = m.order_no and a.std_id = h.std_id
 		)a2 on a1.id = a2.id WHERE  a2.id is not null
@@ -259,15 +279,19 @@
 		SELECT ${tempFields} FROM maintain_detail md
         LEFT JOIN maintain ON maintain.id = md.parent_id
         LEFT JOIN ${tableTempName} mt on mt.id = md.pre_merge_id
+        LEFT JOIN flows f on maintain.flow_id = f.id
         WHERE maintain.order_no <= ${fromOrderNo} and maintain.order_no > ${toOrderNo}
         and  maintain.table_name = '${tableName}'
+        AND f.status = 'open'
         AND operate = 'delete'
         AND NOT EXISTS (
             SELECT * FROM maintain_detail
             LEFT JOIN maintain ON maintain.id = maintain_detail.parent_id
             LEFT JOIN ${tableTempName} mt1 on mt1.id = maintain_detail.pre_merge_id
+            LEFT JOIN flows f on maintain.flow_id = f.id
             WHERE  maintain.order_no <= ${fromOrderNo} and maintain.order_no > ${toOrderNo}
             AND operate = 'create'
+            AND f.status = 'open'
             AND mt.std_id = mt1.std_id
             and  maintain.table_name = '${tableName}'
         )
@@ -437,4 +461,22 @@
         and maintain_detail.pre_merge_id = t.id
         )
     </select>
+
+
+    <select id="updateRecordByMaintainId" statementType="STATEMENT" resultType="java.lang.Integer">
+         update ${tableTempName}
+        INNER JOIN maintain_detail on ${tableTempName}.id = maintain_detail.pre_merge_id
+        set ${updateSegment}
+        WHERE maintain_detail.parent_id = ${maintainId}
+
+    </select>
+
+    <select id="deleteRecordByMaintainId" statementType="STATEMENT" resultType="java.lang.Integer">
+
+        DELETE  ${tableTempName} from  ${tableTempName}
+        INNER JOIN maintain_detail on maintain_detail.pre_merge_id =  ${tableTempName}.id
+        WHERE maintain_detail.parent_id = ${maintainId} and  ${tableTempName}.std_id = ${stdId}
+\
+
+    </select>
 </mapper>

--
Gitblit v1.8.0