From 5d15287b2a06f978485ac6af71e33e1a82b43a65 Mon Sep 17 00:00:00 2001
From: kimi <kimi42345@gmail.com>
Date: 星期三, 15 四月 2020 16:29:55 +0800
Subject: [PATCH] fix  上传后生成版本连接池用完不释放问题

---
 src/main/java/com/highdatas/mdm/service/impl/MasterDataServiceImpl.java |  275 ++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 192 insertions(+), 83 deletions(-)

diff --git a/src/main/java/com/highdatas/mdm/service/impl/MasterDataServiceImpl.java b/src/main/java/com/highdatas/mdm/service/impl/MasterDataServiceImpl.java
index f3604d7..f23f4ea 100644
--- a/src/main/java/com/highdatas/mdm/service/impl/MasterDataServiceImpl.java
+++ b/src/main/java/com/highdatas/mdm/service/impl/MasterDataServiceImpl.java
@@ -4,25 +4,24 @@
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.highdatas.mdm.entity.Character;
 import com.highdatas.mdm.entity.*;
 import com.highdatas.mdm.mapper.TableInfoMapper;
 import com.highdatas.mdm.pojo.*;
 import com.highdatas.mdm.service.*;
-import com.highdatas.mdm.util.Constant;
-import com.highdatas.mdm.util.ContentBuilder;
-import com.highdatas.mdm.util.DbUtils;
-import com.highdatas.mdm.util.RedisClient;
+import com.highdatas.mdm.util.*;
 import org.apache.commons.lang3.StringUtils;
+import org.apache.ibatis.session.SqlSessionFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
 import javax.sql.DataSource;
 import java.sql.Connection;
+import java.sql.SQLException;
 import java.text.MessageFormat;
 import java.util.*;
 import java.util.stream.Collectors;
-
 /**
  * @author kimi
  * @description
@@ -49,7 +48,8 @@
     IMaintainFieldService maintainFieldService;
     @Autowired
     IMasterAuthorService masterAuthorService;
-
+    @Autowired
+    SqlSessionFactory sqlSessionFactory;
     @Resource
     protected DataSource dataSource;
 
@@ -78,35 +78,35 @@
     }
 
     @Override
-    public Result selectList(TUser user, String tableName) {
-        return selectList(user, tableName, null,null, (maintainService.getNowVersion(tableName).getVersion()));
+    public Result selectList(Character character, String tableName) {
+        return selectList(character, tableName, null,null, (maintainService.getNowVersion(tableName).getVersion()));
     }
 
 
     @Override
-    public Result selectList(TUser user, String tableName, String whereSegment) {
-        return selectList(user,tableName, whereSegment, (maintainService.getNowVersion(tableName).getVersion()));
+    public Result selectList(Character character, String tableName, String whereSegment) {
+        return selectList(character,tableName, whereSegment, (maintainService.getNowVersion(tableName).getVersion()));
     }
 
     @Override
-    public Result selectList(TUser user,String tableName, String whereSegment, String version) {
-        return selectList(user, tableName, null, whereSegment, version);
+    public Result selectList(Character character,String tableName, String whereSegment, String version) {
+        return selectList(character, tableName, null, whereSegment, version);
     }
 
     @Override
-    public Result selectList(TUser user, String tableName, List<String> fieldList, String whereSegment) {
-        return selectList(user, tableName, fieldList, whereSegment, maintainService.getNowVersion(tableName).getVersion());
+    public Result selectList(Character character, String tableName, List<String> fieldList, String whereSegment) {
+        return selectList(character, tableName, fieldList, whereSegment, maintainService.getNowVersion(tableName).getVersion());
     }
 
     @Override
-    public Result selectList(TUser user, String tableName,List<String> fieldList, String whereSegment, String version) {
+    public Result selectList(Character character, String tableName,List<String> fieldList, String whereSegment, String version) {
         try{
             JSONObject object = new JSONObject();
             //TODO only add  version
             Maintain maintainFromVersion = maintainService.getMaintainFromVersion(tableName, version);
             String fields;
             if (fieldList == null || fieldList.size() == 0) {
-                fields = getFields(user, tableName, maintainFromVersion);
+                fields = getFields(character, tableName, maintainFromVersion);
             } else {
                 fields = fieldList.stream().collect(Collectors.joining(Constant.COMMA));
             }
@@ -126,8 +126,8 @@
 
 
     @Override
-    public Result selectList(TUser user, String tableName, List<String> fields) {
-        return selectList(user, tableName,fields,Constant.WHERE_DEFAULT,(maintainService.getNowVersion(tableName).getVersion()));
+    public Result selectList(Character character, String tableName, List<String> fields) {
+        return selectList(character, tableName,fields,Constant.WHERE_DEFAULT,(maintainService.getNowVersion(tableName).getVersion()));
     }
 
     public Long getCount(String tableName, String whereSegment) {
@@ -145,16 +145,16 @@
     }
 
     @Override
-    public Long getCountByVersion (TUser user, String maintainId, String tableName,String tableTempName,Integer fromOrderNo, Integer toOrderNo, String whereSegment) {
+    public Long getCountByVersion (Character character, String maintainId, String tableName,String tableTempName,Integer fromOrderNo, Integer toOrderNo, String whereSegment) {
         try{
             Maintain maintain = maintainService.selectById(maintainId);
 
-            String fields = getFields(user,tableName, maintain);
-            String Hfields = getFields(user, tableName, Constant.H, maintain);
-            String tempFields = getTempFields(user, tableName, maintain);
-            String A1fields = getFields(user, tableName, Constant.A1, maintain);
-            String A2fields = getFields(user, tableName, Constant.A2, maintain);
-            String tempHFields = getTempFields(user, tableName, Constant.H, maintain);
+            String fields = getFields(character,tableName, maintain);
+            String Hfields = getFields(character, tableName, Constant.H, maintain);
+            String tempFields = getTempFields(character, tableName, maintain);
+            String A1fields = getFields(character, tableName, Constant.A1, maintain);
+            String A2fields = getFields(character, tableName, Constant.A2, maintain);
+            String tempHFields = getTempFields(character, tableName, Constant.H, maintain);
             if (StringUtils.isEmpty(whereSegment)) {
                 whereSegment = Constant.WHERE_DEFAULT;
             }
@@ -171,16 +171,16 @@
         }
     }
 
-    public Long getCountByMaxVersion (TUser user, String maintainId, String tableName,String tableTempName,Integer fromOrderNo, Integer toOrderNo, String whereSegment) {
+    public Long getCountByMaxVersion (Character character, String maintainId, String tableName,String tableTempName,Integer fromOrderNo, Integer toOrderNo, String whereSegment) {
         try{
             Maintain maintain = maintainService.selectById(maintainId);
 
-            String fields = getFields(user, tableName, maintain);
-            String Hfields = getFields(user, tableName, Constant.H, maintain);
-            String tempFields = getTempFields(user, tableName, maintain);
-            String A1fields = getFields(user, tableName, Constant.A1, maintain);
-            String A2fields = getFields(user, tableName, Constant.A2, maintain);
-            String tempHFields = getTempFields(user, tableName, Constant.H, maintain);
+            String fields = getFields(character, tableName, maintain);
+            String Hfields = getFields(character, tableName, Constant.H, maintain);
+            String tempFields = getTempFields(character, tableName, maintain);
+            String A1fields = getFields(character, tableName, Constant.A1, maintain);
+            String A2fields = getFields(character, tableName, Constant.A2, maintain);
+            String tempHFields = getTempFields(character, tableName, Constant.H, maintain);
             if (StringUtils.isEmpty(whereSegment)) {
                 whereSegment = Constant.WHERE_DEFAULT;
             }
@@ -200,9 +200,9 @@
     }
 
     @Override
-    public String getFields(TUser user, String tableName, Maintain maintain) {
+    public String getFields(Character character, String tableName, Maintain maintain) {
 
-        return getFields(user, tableName, null, maintain);
+        return getFields(character, tableName, null, maintain);
     }
 
     private String getCaseWhenFields(String tableName) {
@@ -239,12 +239,12 @@
     }
 
     @Override
-    public String getFields(TUser user, String tableName, String alias, Maintain maintain) {
+    public String getFields(Character character, String tableName, String alias, Maintain maintain) {
         List<SysField> fields;
-        if (user == null) {
+        if (character == null) {
             fields = fieldService.getFieldByMaintain(maintain.getId());
         }else {
-            fields = masterAuthorService.getField(user.getUserId(), maintain.getId());
+            fields = masterAuthorService.getField(character, maintain.getId());
         }
         ContentBuilder contentBuilder = new ContentBuilder(Constant.COMMA);
         if (fields == null) {
@@ -272,16 +272,16 @@
     }
 
     @Override
-    public String getTempFields(TUser user, String tableName, Maintain maintain) {
-        return getTempFields(user, tableName, null, maintain);
+    public String getTempFields(Character character, String tableName, Maintain maintain) {
+        return getTempFields(character, tableName, null, maintain);
     }
 
     @Override
-    public String getTempFields(TUser user, String tableName) {
-        return getTempFields(user, tableName, Constant.EMPTY_Str);
+    public String getTempFields(Character character, String tableName) {
+        return getTempFields(character, tableName, Constant.EMPTY_Str);
     }
     @Override
-    public String getTempFields(TUser user, String tableName, String alias) {
+    public String getTempFields(Character character, String tableName, String alias) {
         List<TableSchemaResult> tableField = mapper.getTableField(tableName);
 
         ContentBuilder contentBuilder = new ContentBuilder(Constant.COMMA);
@@ -305,12 +305,12 @@
     }
 
     @Override
-    public String getTempFields(TUser user, String tableName, String alias, Maintain maintain) {
+    public String getTempFields(Character character, String tableName, String alias, Maintain maintain) {
         List<SysField> fields;
-        if (user == null) {
+        if (character == null) {
             fields = fieldService.getFieldByMaintain(maintain.getId());
         }else {
-            fields = masterAuthorService.getField(user.getUserId(), maintain.getId());
+            fields = masterAuthorService.getField(character, maintain.getId());
         }
         if (fields == null) {
             return Constant.EMPTY_Str;
@@ -340,45 +340,45 @@
     }
 
     @Override
-    public Result selectListByPageByVersion(TUser user, String tableName, Integer pageNo, Integer pageSize, boolean findMax) {
-        return selectListByPageByVersion(user, tableName,Constant.WHERE_DEFAULT,pageNo,pageSize, findMax);
+    public Result selectListByPageByVersion(Character character, String tableName, Integer pageNo, Integer pageSize, boolean findMax) {
+        return selectListByPageByVersion(character, tableName,Constant.WHERE_DEFAULT,pageNo,pageSize, findMax);
     }
 
     @Override
-    public Result selectListByPageByVersion(TUser user, String tableName, String whereSegment, Integer pageNo, boolean findMax) {
-        return selectListByPageByVersion(user, tableName,null, whereSegment,pageNo, null, String.valueOf(maintainService.getNowVersion(tableName).getVersion()), findMax);
+    public Result selectListByPageByVersion(Character character, String tableName, String whereSegment, Integer pageNo, boolean findMax) {
+        return selectListByPageByVersion(character, tableName,null, whereSegment,pageNo, null, String.valueOf(maintainService.getNowVersion(tableName).getVersion()), findMax);
     }
 
     @Override
-    public Result selectListByPageByVersion(TUser user, String tableName, Integer pageNo, String version, boolean findMax) {
-        return selectListByPageByVersion(user, tableName,null,Constant.WHERE_DEFAULT,pageNo, null, version, findMax);
+    public Result selectListByPageByVersion(Character character, String tableName, Integer pageNo, String version, boolean findMax) {
+        return selectListByPageByVersion(character, tableName,null,Constant.WHERE_DEFAULT,pageNo, null, version, findMax);
     }
     @Override
-    public Result selectListByPageByVersion(TUser user, String tableName, Integer pageNo, boolean findMax) {
-        return selectListByPageByVersion(user, tableName,null,Constant.WHERE_DEFAULT,pageNo, null, String.valueOf(maintainService.getNowVersion(tableName).getVersion()), findMax);
+    public Result selectListByPageByVersion(Character character, String tableName, Integer pageNo, boolean findMax) {
+        return selectListByPageByVersion(character, tableName,null,Constant.WHERE_DEFAULT,pageNo, null, String.valueOf(maintainService.getNowVersion(tableName).getVersion()), findMax);
     }
 
     @Override
-    public Result selectListByPageByVersion(TUser user, String tableName, String whereSegment, Integer pageNo, Integer pageSize, boolean findMax) {
-        return selectListByPageByVersion(user, tableName,null,whereSegment,pageNo,pageSize, findMax);
+    public Result selectListByPageByVersion(Character character, String tableName, String whereSegment, Integer pageNo, Integer pageSize, boolean findMax) {
+        return selectListByPageByVersion(character, tableName,null,whereSegment,pageNo,pageSize, findMax);
     }
 
     @Override
-    public Result selectListByPageByVersion(TUser user, String tableName, List<String> fieldList, String whereSegment, Integer pageNo, boolean findMax) {
-        return selectListByPageByVersion(user, tableName,null,whereSegment,pageNo, null, findMax);
+    public Result selectListByPageByVersion(Character character, String tableName, List<String> fieldList, String whereSegment, Integer pageNo, boolean findMax) {
+        return selectListByPageByVersion(character, tableName,null,whereSegment,pageNo, null, findMax);
     }
 
     @Override
-    public Result selectListByPageByVersion(TUser user, String tableName, List<String> fieldList, Integer pageNo, boolean findMax) {
-        return selectListByPageByVersion(user, tableName,null,Constant.WHERE_DEFAULT,pageNo, findMax);
+    public Result selectListByPageByVersion(Character character, String tableName, List<String> fieldList, Integer pageNo, boolean findMax) {
+        return selectListByPageByVersion(character, tableName,null,Constant.WHERE_DEFAULT,pageNo, findMax);
     }
     @Override
-    public Result selectListByPageByVersion(TUser user, String tableName, String whereSegment, Integer pageNo, String version, boolean findMax) {
-        return selectListByPageByVersion(user, tableName, null,whereSegment, pageNo, null,version, findMax);
+    public Result selectListByPageByVersion(Character character, String tableName, String whereSegment, Integer pageNo, String version, boolean findMax) {
+        return selectListByPageByVersion(character, tableName, null,whereSegment, pageNo, null,version, findMax);
     }
 
     @Override
-    public List<Map<String, Object>> selectListByVersion(TUser user, String tableName, List<String> fieldList, String whereSegment, String version, boolean findMax) {
+    public List<Map<String, Object>> selectListByVersion(Character character, String tableName, List<String> fieldList, String whereSegment, String version, boolean findMax) {
         Maintain maintainFromVersion = maintainService.getMaintainFromVersion(tableName, version);
         Maintain nowVersionMaintain = maintainService.getNowVersion(tableName);
         boolean isMax = maintainService.checkdMaxVersion(maintainFromVersion.getId());
@@ -402,12 +402,12 @@
 
         String tempHfields;
         if (fieldList == null || fieldList.size() == 0) {
-            fields = getFields(user, tableName, maintainFromVersion);
-            Hfields = getFields(user, tableName,Constant.H, maintainFromVersion);
-            A1fields = getFields(user, tableName,Constant.A1, maintainFromVersion);
-            A2fields = getFields(user, tableName,Constant.A2, maintainFromVersion);
-            tempFields = getTempFields(user, tableName, maintainFromVersion);
-            tempHfields = getTempFields(user, tableName, Constant.H, maintainFromVersion);
+            fields = getFields(character, tableName, maintainFromVersion);
+            Hfields = getFields(character, tableName,Constant.H, maintainFromVersion);
+            A1fields = getFields(character, tableName,Constant.A1, maintainFromVersion);
+            A2fields = getFields(character, tableName,Constant.A2, maintainFromVersion);
+            tempFields = getTempFields(character, tableName, maintainFromVersion);
+            tempHfields = getTempFields(character, tableName, Constant.H, maintainFromVersion);
         } else {
             fields = fieldList.stream().collect(Collectors.joining(Constant.COMMA));
             Hfields = fieldList.stream().map(s -> MessageFormat.format(Constant.Alias,Constant.H, s)).collect(Collectors.joining(Constant.COMMA));
@@ -445,8 +445,109 @@
 
         return result;
     }
+
     @Override
-    public Result selectListByPageByVersion(TUser user, String tableName, List<String> fieldList, String whereSegment, Integer pageNo, Integer pageSize, String version, boolean findMax) {
+    public String selectByVersionSql(Character character, String tableName, List<String> fieldList, String whereSegment, String version, boolean findMax) {
+        Maintain maintainFromVersion = maintainService.getMaintainFromVersion(tableName, version);
+        Maintain nowVersionMaintain = maintainService.getNowVersion(tableName);
+        boolean isMax = maintainService.checkdMaxVersion(maintainFromVersion.getId());
+        boolean isNow = maintainService.checkNowVersion(maintainFromVersion.getId());
+        boolean isFirst = maintainService.checkFirstVersion(maintainFromVersion.getId());
+
+        Integer fromVersionOrderNo = maintainFromVersion.getOrderNo();
+        Integer nowVersionOrderNo = 0;
+        if (nowVersionMaintain != null) {
+            nowVersionOrderNo = nowVersionMaintain.getOrderNo();
+        }
+
+        String tableTempName = tableName + Constant.RECORD;
+        String result = null;
+
+        String fields;
+        String tempFields;
+        String Hfields;
+        String A1fields;
+        String A2fields;
+
+        String tempHfields;
+        if (fieldList == null || fieldList.size() == 0) {
+            fields = getFields(null, tableName, maintainFromVersion);
+            Hfields = getFields(null, tableName,Constant.H, maintainFromVersion);
+            A1fields = getFields(null, tableName,Constant.A1, maintainFromVersion);
+            A2fields = getFields(null, tableName,Constant.A2, maintainFromVersion);
+            tempFields = getTempFields(null, tableName, maintainFromVersion);
+            tempHfields = getTempFields(null, tableName, Constant.H, maintainFromVersion);
+        } else {
+            fields = fieldList.stream().collect(Collectors.joining(Constant.COMMA));
+            Hfields = fieldList.stream().map(s -> MessageFormat.format(Constant.Alias,Constant.H, s)).collect(Collectors.joining(Constant.COMMA));
+            A1fields = fieldList.stream().map(s -> MessageFormat.format(Constant.Alias,Constant.A1, s)).collect(Collectors.joining(Constant.COMMA));
+            A2fields = fieldList.stream().map(s -> MessageFormat.format(Constant.Alias,Constant.A2, s)).collect(Collectors.joining(Constant.COMMA));
+            tempFields = fieldList.stream()
+                    .map(s ->
+                            s.equalsIgnoreCase(Constant.ID) ? MessageFormat.format("{0} as id",Constant.STD_ID): s)
+                    .collect(Collectors.joining(Constant.COMMA));
+
+            tempHfields =  fieldList.stream()
+                    .map(s ->
+                            s.equalsIgnoreCase(Constant.ID) ? MessageFormat.format("{0} as id",Constant.STD_ID): s)
+                    .map(s -> MessageFormat.format(Constant.Alias,Constant.H,s))
+                    .collect(Collectors.joining(Constant.COMMA));
+
+        }
+        MyBatisSql ibatisSql = new MyBatisSql();
+        Map<String, Object> parameterMap = new HashMap<>();
+        if (isNow && !findMax){
+            parameterMap.put("tableName", tableName);
+            parameterMap.put("fields", fields);
+            parameterMap.put("where", whereSegment);
+            parameterMap.put("limit", null);
+            result = DbUtils.getMyBatisSql("selectByPage", parameterMap, sqlSessionFactory).getSql();
+        }
+        else if (isMax && findMax) {
+            ContentBuilder builder = new ContentBuilder(Constant.COMMA);
+            if (nowVersionMaintain == null) {
+                builder.append(DbUtils.quotedStr(maintainFromVersion.getId()));
+            }else {
+                List<String> maintainIds = maintainService.getCompareVersionMaintains(nowVersionMaintain, maintainFromVersion);
+                long con = maintainIds.stream().map(s -> builder.append(DbUtils.quotedStr(s))).count();
+            }
+            parameterMap.put("tableName", tableName);
+            parameterMap.put("tableTempName", tableTempName);
+            parameterMap.put("fields", fields);
+            parameterMap.put("tempFields", tempFields);
+            parameterMap.put("Hfields", Hfields);
+            parameterMap.put("A1fields", A1fields);
+            parameterMap.put("A2fields", A2fields);
+            parameterMap.put("tempHFields", tempHfields);
+            parameterMap.put("fromOrderNo", fromVersionOrderNo);
+            parameterMap.put("toOrderNo", nowVersionOrderNo);
+            parameterMap.put("maintainId", DbUtils.quotedStr(maintainFromVersion.getId()));
+            parameterMap.put("where", whereSegment);
+            parameterMap.put("limit", null);
+            result = DbUtils.getMyBatisSql("selectByPageByMaxVersion", parameterMap, sqlSessionFactory).getSql();
+
+        }else {
+            parameterMap.put("tableName", tableName);
+            parameterMap.put("tableTempName", tableTempName);
+            parameterMap.put("fields", fields);
+            parameterMap.put("tempFields", tempFields);
+            parameterMap.put("Hfields", Hfields);
+            parameterMap.put("A1fields", A1fields);
+            parameterMap.put("A2fields", A2fields);
+            parameterMap.put("tempHFields", tempHfields);
+            parameterMap.put("fromOrderNo", fromVersionOrderNo);
+            parameterMap.put("toOrderNo", nowVersionOrderNo);
+            parameterMap.put("maintainId", DbUtils.quotedStr(maintainFromVersion.getId()));
+            parameterMap.put("where", whereSegment);
+            parameterMap.put("limit", null);
+            result = DbUtils.getMyBatisSql("selectByPageByVersion", parameterMap, sqlSessionFactory).getSql();
+        }
+
+        return result;
+    }
+
+    @Override
+    public Result selectListByPageByVersion(Character character, String tableName, List<String> fieldList, String whereSegment, Integer pageNo, Integer pageSize, String version, boolean findMax) {
         Maintain maintainFromVersion = maintainService.getMaintainFromVersion(tableName, version);
         Maintain nowVersionMaintain = maintainService.getNowVersion(tableName);
         boolean isMax = maintainService.checkdMaxVersion(maintainFromVersion.getId());
@@ -470,9 +571,10 @@
            if (isFirst && nowVersionMaintain == null) {
                nowVersionOrderNo = nowVersionOrderNo - 1;
            }
-            count = getCountByMaxVersion(user, maintainFromVersion.getId(), tableName, tableTempName, fromVersionOrderNo, nowVersionOrderNo,  whereSegment);
+
+            count = getCountByMaxVersion(character, maintainFromVersion.getId(), tableName, tableTempName, fromVersionOrderNo, nowVersionOrderNo,  whereSegment);
         }else {
-            count = getCountByVersion(user, maintainFromVersion.getId(), tableName, tableTempName, nowVersionOrderNo, fromVersionOrderNo, whereSegment);
+            count = getCountByVersion(character, maintainFromVersion.getId(), tableName, tableTempName, nowVersionOrderNo, fromVersionOrderNo, whereSegment);
         }
         if (count == 0) {
             return Result.success(null);
@@ -497,12 +599,12 @@
 
         String tempHfields;
         if (fieldList == null || fieldList.size() == 0) {
-            fields = getFields(user, tableName, maintainFromVersion);
-            Hfields = getFields(user, tableName,Constant.H, maintainFromVersion);
-            A1fields = getFields(user, tableName,Constant.A1, maintainFromVersion);
-            A2fields = getFields(user, tableName,Constant.A2, maintainFromVersion);
-            tempFields = getTempFields(user, tableName, maintainFromVersion);
-            tempHfields = getTempFields(user, tableName, Constant.H, maintainFromVersion);
+            fields = getFields(character, tableName, maintainFromVersion);
+            Hfields = getFields(character, tableName,Constant.H, maintainFromVersion);
+            A1fields = getFields(character, tableName,Constant.A1, maintainFromVersion);
+            A2fields = getFields(character, tableName,Constant.A2, maintainFromVersion);
+            tempFields = getTempFields(character, tableName, maintainFromVersion);
+            tempHfields = getTempFields(character, tableName, Constant.H, maintainFromVersion);
         } else {
             fields = fieldList.stream().collect(Collectors.joining(Constant.COMMA));
             Hfields = fieldList.stream().map(s -> MessageFormat.format(Constant.Alias,Constant.H, s)).collect(Collectors.joining(Constant.COMMA));
@@ -550,7 +652,7 @@
         JSONObject object = new JSONObject();
 
         object.fluentPut("total", page.getRecordCount());
-        object.fluentPut("size", page.getPageSize());
+        object.fluentPut("passiveQueueSize", page.getPageSize());
         object.fluentPut("pages", page.getPageCount());
         object.fluentPut("current", page.getPageNo());
         object.fluentPut("record", result);
@@ -609,7 +711,7 @@
         maintain.setTableName(tableName);
         maintain.setCreateTime(new Date());
 
-        Connection connection;
+        Connection connection = null;
         try {
             connection = dataSource.getConnection();
             connection.setAutoCommit(false);
@@ -649,11 +751,18 @@
                     .setDesp("鎵归噺涓婁紶鏁版嵁");
 
             maintain.insert();
-            connection.commit();
         }
         catch (Exception e) {
             e.printStackTrace();
 
+        }finally {
+            if (connection != null) {
+                try {
+                    connection.close();
+                } catch (SQLException e) {
+                    e.printStackTrace();
+                }
+            }
         }
 
         return maintain;
@@ -722,7 +831,7 @@
         JSONObject object = new JSONObject();
 
         object.fluentPut("total", page.getRecordCount());
-        object.fluentPut("size", page.getPageSize());
+        object.fluentPut("passiveQueueSize", page.getPageSize());
         object.fluentPut("pages", page.getPageCount());
         object.fluentPut("current", page.getPageNo());
         object.fluentPut("record", result);
@@ -733,8 +842,8 @@
     }
 
     @Override
-    public Result selectListByPageByVersion(TUser user, String tableName,List<String> fieldList, String whereSegment, Integer pageNo, Integer pageSize, boolean findMax) {
-       return  selectListByPageByVersion(user, tableName, fieldList, whereSegment,pageNo,pageSize,String.valueOf(maintainService.getNowVersion(tableName).getVersion()), findMax);
+    public Result selectListByPageByVersion(Character character, String tableName,List<String> fieldList, String whereSegment, Integer pageNo, Integer pageSize, boolean findMax) {
+       return  selectListByPageByVersion(character, tableName, fieldList, whereSegment,pageNo,pageSize,String.valueOf(maintainService.getNowVersion(tableName).getVersion()), findMax);
     }
 
     @Override

--
Gitblit v1.8.0