Преглед изворни кода

support modify KanbanHistory's description

sunyj пре 8 година
родитељ
комит
5099fe50d0

+ 0 - 5
kanban-console/src/main/java/com/uas/kanban/controller/KanbanHistoryController.java

@@ -43,11 +43,6 @@ public class KanbanHistoryController extends BaseController<KanbanHistory> {
         throw new OperationException("不支持的操作");
     }
 
-    @Override
-    public int updatePart(@NotEmpty("json") String json, HttpServletRequest request) throws IllegalArgumentException, OperationException {
-        throw new OperationException("不支持的操作");
-    }
-
     @Override
     public int deleteAll(HttpServletRequest request) throws OperationException {
         throw new OperationException("不支持的操作");

+ 19 - 0
kanban-console/src/main/java/com/uas/kanban/service/impl/KanbanHistoryServiceImpl.java

@@ -1,5 +1,6 @@
 package com.uas.kanban.service.impl;
 
+import com.alibaba.fastjson.JSONObject;
 import com.uas.kanban.annotation.NotEmpty;
 import com.uas.kanban.base.BaseService;
 import com.uas.kanban.dao.KanbanDao;
@@ -11,6 +12,7 @@ import com.uas.kanban.service.KanbanHistoryService;
 import com.uas.kanban.service.KanbanService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.util.ObjectUtils;
 
 import java.util.List;
 
@@ -32,6 +34,23 @@ public class KanbanHistoryServiceImpl extends BaseService<KanbanHistory> impleme
     @Autowired
     private KanbanService kanbanService;
 
+    @Override
+    public int updatePart(@NotEmpty("json") String json) throws IllegalArgumentException, OperationException {
+        JSONObject jsonObject = JSONObject.parseObject(json);
+        Object code = jsonObject.remove("code");
+        if (ObjectUtils.isEmpty(code)) {
+            throw new IllegalArgumentException("未指定 code");
+        }
+        Object description = jsonObject.remove("description");
+        if (ObjectUtils.isEmpty(description)) {
+            throw new IllegalArgumentException("未指定 description");
+        }
+        if (!jsonObject.isEmpty()) {
+            throw new OperationException("只支持修改 description");
+        }
+        return super.updatePart(json);
+    }
+
     @Override
     public List<KanbanHistory> findByKanbanCode(@NotEmpty("kanbanCode") String kanbanCode) {
         return kanbanHistoryDao.findByKanbanCode(kanbanCode);

+ 1 - 0
kanban-console/src/main/webapp/WEB-INF/views/console.html

@@ -81,6 +81,7 @@
         </ol>
         <strong><li class="title">看板历史记录</li></strong>
         <ol>
+            <li><a target="_blank">kanbanHistory/updatePart?json={"code":"4EC2735D343","description":"备份测试2"}</a></li>
             <li><a target="_blank">kanbanHistory/delete/4EC2735D343</a></li>
             <li><a target="_blank">kanbanHistory/delete/byCodes?codes=53E04542411&codes=53E04631812</a></li>
             <li><a target="_blank">kanbanHistory/get/4EC2735D343</a></li>