From 5bac93baf5659ce013163f884c9dce41990a860e Mon Sep 17 00:00:00 2001
From: kimi42345 <kimi42345@outlook.com>
Date: 星期一, 23 三月 2020 08:49:41 +0800
Subject: [PATCH] no message

---
 src/main/java/com/highdatas/mdm/controller/SysFieldController.java |   47 +++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 43 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/highdatas/mdm/controller/SysFieldController.java b/src/main/java/com/highdatas/mdm/controller/SysFieldController.java
index 470b1b2..5796d73 100644
--- a/src/main/java/com/highdatas/mdm/controller/SysFieldController.java
+++ b/src/main/java/com/highdatas/mdm/controller/SysFieldController.java
@@ -66,9 +66,15 @@
 
     }
 
-    @RequestMapping(value = "total/{tableName}", method = RequestMethod.GET)
-    public Result getTotalFields(@PathVariable String tableName, HttpServletRequest request){
-        return fieldService.getTotalFields(tableName);
+    @RequestMapping(value = "total/{tableName}/{pageNo}", method = RequestMethod.GET)
+    public Result getTotalFields(@PathVariable String tableName,@PathVariable Integer pageNo, HttpServletRequest request){
+        String pageSize = request.getParameter("pageSize");
+        if(StringUtils.isEmpty(pageSize)){
+            return fieldService.getTotalFields(tableName, pageNo, 15);
+        }else  {
+            return fieldService.getTotalFields(tableName, pageNo, Integer.valueOf(pageSize));
+        }
+
     }
 
     @RequestMapping(value = "fix/{tableName}", method = RequestMethod.GET)
@@ -78,6 +84,7 @@
         data.fluentPut("aduit", true);
         return totalFields;
     }
+
 
     @RequestMapping(value = "/menu/{id}", method = RequestMethod.GET)
     public Result getFieldByMenu(@PathVariable String id){
@@ -244,6 +251,16 @@
         if (dataMaxVersion == null) {
             isInit = true;
         }
+        if (!StringUtils.isEmpty(sysField.getId())) {
+            String id = sysField.getId();
+            SysField field = fieldService.selectById(id);
+            if (field != null){
+                Operate operate = field.getOperate();
+                if (operate != null) {
+                    isInit = true;
+                }
+            }
+        }
 
         Operate operate = sysField.getOperate();
 
@@ -252,6 +269,7 @@
                 if (StringUtils.isEmpty(sysField.getId())) {
                     sysField.setId(DbUtils.getUUID());
                 }
+                sysField.setOperate(null);
                 boolean update = sysField.insertOrUpdate();
                 if (update) {
                     return Result.success(CodeMsg.SUCCESS);
@@ -262,13 +280,30 @@
             }
         }
         if (isInit && operate.equals(Operate.delete)) {
+            String maintainFieldId = sysField.getMaintainFieldId();
             boolean delete = sysField.deleteById();
             if (delete) {
+                //鍒犻櫎鍚� 鍒ゆ柇鏄惁鏈夋湭鎻愪氦鐨勪簡
+                if (StringUtils.isEmpty(maintainFieldId)) {
+                    return Result.success(CodeMsg.SUCCESS);
+                }
+                List<SysField> fieldList = fieldService.selectList(new EntityWrapper<SysField>().eq("maintain_field_id", maintainFieldId));
+                long count = fieldList.stream().filter(field -> field.getOperate() != null).count();
+                if (count == 0) {
+                    //璇存槑 褰撳墠鐗堟湰娌℃湁淇敼鐨勫瓧娈典簡
+                    delete = fieldService.delete(new EntityWrapper<SysField>().eq("maintain_field_id", maintainFieldId));
+                    delete = maintainFieldService.deleteById(maintainFieldId);
+                    if (delete) {
+                        return Result.success(CodeMsg.SUCCESS);
+                    }
+                }
                 return Result.success(CodeMsg.SUCCESS);
+
             }else {
                 return Result.error(CodeMsg.DELETE_ERROR);
             }
         }
+
         if (operate.equals(Operate.update)) {
             String id = sysField.getId();
             SysField field = fieldService.selectById(id);
@@ -309,7 +344,11 @@
             }
         }
         MaintainField maxVersion = maintainFieldService.getMaxVersion(sysField.getTableName());
-        String maintainId = maxVersion.getId();
+        String maintainId = null;
+        if(maxVersion != null) {
+            maintainId = maxVersion.getId();
+        }
+
         MaintainField nowMaintain = null;
         HttpSession session = request.getSession();
         TUser user = (TUser) session.getAttribute("user");

--
Gitblit v1.8.0