From 8033eea1502d4cb0a91aa4b86c848ccb00ba8dc0 Mon Sep 17 00:00:00 2001
From: kimi <kimi42345@gmail.com>
Date: 星期五, 13 三月 2020 09:31:46 +0800
Subject: [PATCH] no message

---
 src/main/resources/mapping/TableInfoMapper.xml |   69 +++++++++++++++++++++++++++++++---
 1 files changed, 63 insertions(+), 6 deletions(-)

diff --git a/src/main/resources/mapping/TableInfoMapper.xml b/src/main/resources/mapping/TableInfoMapper.xml
index 5526fe0..48fe3f3 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}'
         )
@@ -183,12 +195,12 @@
         select ${fields} from ${tableName} where ${where}
     </select>
 
-    <select id="tempDeal"  statementType="STATEMENT"  resultType="java.lang.Long">
+    <select id="tempDeal"  statementType="STATEMENT" resultType="java.lang.Integer">
 
         UPDATE ${tableTempName} t
         SET deal = 1
         where EXISTS (
-        SELECT pre_merge_id from maintain_detail WHERE parent_id = ${maintainId}
+        SELECT pre_merge_id from maintain_detail WHERE parent_id = ${maintainFieldId}
         and maintain_detail.pre_merge_id = t.id
         )
         </select>
@@ -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}'
         )
@@ -380,7 +404,7 @@
     <delete id="deleteTempByMaintainId">
         DELETE FROM ${tableTempName}  where EXISTS (
         SELECT pre_merge_id from maintain_detail d
-        where parent_id = ${maintainId} and d.pre_merge_id = ${tableTempName}.id
+        where parent_id = ${maintainFieldId} and d.pre_merge_id = ${tableTempName}.id
         )
     </delete>
 
@@ -395,7 +419,7 @@
         (
         SELECT  std_id from ${tableTempName} tm
         LEFT JOIN maintain_detail on tm.id = maintain_detail.pre_merge_id
-        WHERE maintain_detail.parent_id = ${maintainId}
+        WHERE maintain_detail.parent_id = ${maintainFieldId}
         and operate = 'create'
         and tm.id = t.id
         )
@@ -411,7 +435,15 @@
     <select id="insertMatintainDetailFromTemp" statementType="STATEMENT" resultType="java.lang.Integer">
 
         INSERT INTO maintain_detail
-        SELECT md5(uuid()) as id, ${maintainId} as parent_id, 'create' as operate, id as pre_merge_id, NOW() as createdate
+        SELECT md5(uuid()) as id, ${maintainFieldId} as parent_id, ${operate} as operate, id as pre_merge_id, NOW() as create_time
+        from ${tableTempName}  m WHERE m.deal = 0
+
+    </select>
+
+    <select id="insertMatintainDetailFromStandrad" statementType="STATEMENT" resultType="java.lang.Integer">
+
+        INSERT INTO maintain_detail
+        SELECT md5(uuid()) as id, ${maintainFieldId} as parent_id, 'delete' as operate, id as pre_merge_id, NOW() as create_time
         from ${tableTempName}  m WHERE m.deal = 0
 
     </select>
@@ -420,6 +452,13 @@
 
         update ${tableTempName}
         set std_id = md5(uuid()) WHERE deal = 0
+
+    </select>
+
+    <select id="insertRecordFromStandrad" statementType="STATEMENT" resultType="java.lang.Integer">
+         INSERT INTO ${recordTableName}
+        SELECT ${tempFieldList}, 0 as deal
+        from  ${tableName}
 
     </select>
 
@@ -432,9 +471,27 @@
         (
         SELECT  pre_merge_id from maintain_detail
         LEFT JOIN maintain on maintain.id = maintain_detail.parent_id
-        WHERE maintain.id = ${maintainId}
+        WHERE maintain.id = ${maintainFieldId}
         and operate = ${operate}
         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 = ${maintainFieldId}
+
+    </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 = ${maintainFieldId} and  ${tableTempName}.std_id = ${stdId}
+
+
+    </select>
 </mapper>

--
Gitblit v1.8.0