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/controller/MasterDataController.java |   20 +++++++++++---------
 1 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/src/main/java/com/highdatas/mdm/controller/MasterDataController.java b/src/main/java/com/highdatas/mdm/controller/MasterDataController.java
index a0e09ad..0ade9ab 100644
--- a/src/main/java/com/highdatas/mdm/controller/MasterDataController.java
+++ b/src/main/java/com/highdatas/mdm/controller/MasterDataController.java
@@ -4,6 +4,7 @@
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.highdatas.mdm.entity.*;
+import com.highdatas.mdm.entity.Character;
 import com.highdatas.mdm.mapper.TableInfoMapper;
 import com.highdatas.mdm.pojo.CodeMsg;
 import com.highdatas.mdm.pojo.Operate;
@@ -60,7 +61,7 @@
             uploadType = SysAssembleUpdateType.Increment;
         }
         uploadType = SysAssembleUpdateType.valueOf(uploadTypeStr);
-        TUser user = (TUser) request.getSession().getAttribute(Constant.USER);
+        TUser user = DbUtils.getUser(request);
         Maintain maintain = masterDataService.uploadedData(tableName, uploadType, user.getUserId());
         // 澶勭悊鍏宠仈浜�
         masterModifiedService.dealAssemble(maintain.getId(), user.getUserId(), true);
@@ -78,7 +79,8 @@
 
     @RequestMapping(value = "{tableName}/all/{pageNo}",  method = RequestMethod.GET)
     public Result getByPage(@PathVariable String tableName, @PathVariable Integer pageNo, HttpServletRequest request) throws UnsupportedEncodingException {
-        TUser user = DbUtils.getUser(request);
+        Character character = DbUtils.getCharacter(request);
+
         String pageSizeStr = request.getParameter("pageSize");
         String whereSegment = request.getParameter(Constant.WHERE_SEGMENT);
         String fields = request.getParameter(Constant.FIELDS);
@@ -113,7 +115,7 @@
             return null;
         }
         //ADD Filter
-        String filter = masterAuthorService.getFilter(user.getUserId(), maintainFromVersion.getId());
+        String filter = masterAuthorService.getFilter(character, maintainFromVersion.getId());
         if (!StringUtils.isEmpty(filter)) {
             whereSegment = DbUtils.StrJoin(whereSegment, Constant.AND, filter);
         }
@@ -121,16 +123,16 @@
 
         if (StringUtils.isEmpty(fields)) {
             if (StringUtils.isEmpty(pageSizeStr)) {
-                return masterDataService.selectListByPageByVersion(user, tableName, whereSegment,pageNo,version, findMax);
+                return masterDataService.selectListByPageByVersion(character, tableName, whereSegment,pageNo,version, findMax);
             }
-            return masterDataService.selectListByPageByVersion(user, tableName, null, whereSegment,pageNo, Integer.valueOf(pageSizeStr),version,findMax);
+            return masterDataService.selectListByPageByVersion(character, tableName, null, whereSegment,pageNo, Integer.valueOf(pageSizeStr),version,findMax);
         }else {
             String[] split = fields.split(Constant.COMMA_TRIM);
             List<String> fieldList = Arrays.stream(split).collect(Collectors.toList());
             if (StringUtils.isEmpty(pageSizeStr)) {
-                return masterDataService.selectListByPageByVersion(user, tableName, fieldList, whereSegment,pageNo, null,version, findMax);
+                return masterDataService.selectListByPageByVersion(character, tableName, fieldList, whereSegment,pageNo, null,version, findMax);
             }
-            return masterDataService.selectListByPageByVersion(user, tableName, fieldList, whereSegment,pageNo, Integer.valueOf(pageSizeStr), findMax);
+            return masterDataService.selectListByPageByVersion(character, tableName, fieldList, whereSegment,pageNo, Integer.valueOf(pageSizeStr), findMax);
 
         }
     }
@@ -158,7 +160,7 @@
             String[] split = modify.split(Constant.SEMICOLON);
             modifyFields = Arrays.stream(split).collect(Collectors.toList());
         }
-        TUser user = (TUser) request.getSession().getAttribute("user");
+        TUser user = DbUtils.getUser(request);
 
         switch (operate) {
             case delete:
@@ -213,7 +215,7 @@
     public Result insert(@PathVariable String tableName,@PathVariable String operateStr, @RequestParam String datas, @RequestParam String modify, HttpServletRequest request) {
         String fields = request.getParameter("fields");
         Operate operate = Operate.parse(operateStr);
-        TUser user = (TUser) request.getSession().getAttribute("user");
+        TUser user = DbUtils.getUser(request);
         String userId = user.getUserId();
         Maintain maintain = maintainService.getMaxVersion(tableName);
         Maintain nowMaintain = maintainService.getNextMaintain(tableName, userId);

--
Gitblit v1.8.0