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/java/com/highdatas/mdm/controller/SysFieldController.java |   56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 54 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/highdatas/mdm/controller/SysFieldController.java b/src/main/java/com/highdatas/mdm/controller/SysFieldController.java
index 570a0a1..cecb399 100644
--- a/src/main/java/com/highdatas/mdm/controller/SysFieldController.java
+++ b/src/main/java/com/highdatas/mdm/controller/SysFieldController.java
@@ -87,8 +87,7 @@
         if (StringUtils.isEmpty(tableName)) {
             return Result.error(CodeMsg.ERROR_PARAMS_NOT_MATHED);
         }
-        List<SysField> fieldList = fieldService.selectList(new EntityWrapper<SysField>().eq("table_name", tableName).orderBy("order_no"));
-
+        List<SysField> fieldList = fieldService.getFieldByTable(tableName);
         return Result.success(fieldList);
     }
 
@@ -160,6 +159,59 @@
         }
     }
 
+    @RequestMapping(value = "/loadFields", method = RequestMethod.POST)
+    public Result loadFields(@RequestBody String fieldListStr, HttpServletRequest request)  {
+        List<SysField> fieldList = JSONObject.parseArray(fieldListStr,SysField.class);
+        if (fieldList.size() == 0) {
+            return Result.error(CodeMsg.ERROR_PARAMS_NOT_MATHED);
+        }
+        String tableName = fieldList.get(0).getTableName();
+        if (StringUtils.isEmpty(tableName)) {
+            return Result.error(CodeMsg.ERROR_PARAMS_NOT_MATHED);
+        }
+        String maintainId = null;
+        MaintainField maxVersion = maintainFieldService.getMaxVersion(tableName);
+        if (maxVersion != null) {
+            maintainId = maxVersion.getId();
+        }
+
+        MaintainField nowMaintain = null;
+        HttpSession session = request.getSession();
+        TUser user = (TUser) session.getAttribute("user");
+        String userId = user.getUserId();
+
+        if (StringUtils.isEmpty(maintainId)) {
+            //鍒涘缓鏂扮増鏈殑瀛楁
+            nowMaintain = flowsService.createNowVerion(tableName, maintainId, userId);
+            if (nowMaintain == null) {
+                return Result.error(CodeMsg.ERROR_PARAMS_NOT_MATHED);
+            }
+
+        }else {
+            Flows flows = flowsService.selectOne(new EntityWrapper<Flows>().eq("business_id", maintainId));
+            if (flows != null){
+                //褰撳墠宸插鎵�
+                ActivitiStatus status = flows.getStatus();
+                if (status.equals(ActivitiStatus.open) || status.equals(ActivitiStatus.close)) {
+                    nowMaintain = flowsService.createNowVerion(tableName, maintainId, userId);
+                }else {
+                    return Result.error(new CodeMsg(7002, "褰撳墠瀛楁鐗堟湰姝e湪瀹℃壒,璇峰緟瀹℃壒閫氳繃鍚庡啀淇敼"));
+                }
+
+            }else {
+                //delete
+                fieldService.delete(new EntityWrapper<SysField>().eq("maintain_field_id",maintainId));
+                nowMaintain = maintainFieldService.selectById(maintainId);
+            }
+        }
+        for (int i = 0; i < fieldList.size(); i++) {
+            SysField sysField = fieldList.get(i);
+            sysField.setCreateTime(new Date()).setId(DbUtils.getUUID()).setOperate(Operate.create).setMaintainFieldId(nowMaintain.getId()).setOrderNo(i).insert();
+        }
+        nowMaintain.insertOrUpdate();
+        return Result.success(null);
+    }
+
     @RequestMapping(value = "/change", method = RequestMethod.POST)
     public Result addOrUpdate(@RequestBody SysField sysField, HttpServletRequest request)  {
         Operate operate = sysField.getOperate();

--
Gitblit v1.8.0