Browse Source

Remove the interface for saving panel instance

sunyj 8 years ago
parent
commit
30d892bea0

+ 1 - 1
kanban-auth/src/main/java/com/uas/kanban/controller/UserController.java

@@ -94,7 +94,7 @@ public class UserController extends BaseController<User> {
      */
     @RequestMapping("/initAdmin")
     @ResponseBody
-    public User initAdmin(@NotEmpty("name") String name, @NotEmpty("password") String password, HttpServletRequest request) {
+    public User initAdmin(@NotEmpty("name") String name, @NotEmpty("password") String password, HttpServletRequest request) throws OperationException {
         User user = new User();
         user.setName(name);
         user.setPassword(password);

+ 2 - 2
kanban-common/src/main/java/com/uas/kanban/base/BaseController.java

@@ -32,7 +32,7 @@ public abstract class BaseController<T extends BaseEntity> {
      */
     @RequestMapping("/save")
     @ResponseBody
-    public T save(@NotEmpty("json") String json, HttpServletRequest request) {
+    public T save(@NotEmpty("json") String json, HttpServletRequest request) throws OperationException {
         return baseService.save(json);
     }
 
@@ -45,7 +45,7 @@ public abstract class BaseController<T extends BaseEntity> {
      */
     @RequestMapping("/savePart")
     @ResponseBody
-    public T savePart(@NotEmpty("json") String json, HttpServletRequest request) {
+    public T savePart(@NotEmpty("json") String json, HttpServletRequest request) throws OperationException {
         return baseService.savePart(json);
     }
 

+ 13 - 1
kanban-console/src/main/java/com/uas/kanban/controller/PanelInstanceController.java

@@ -1,6 +1,8 @@
 package com.uas.kanban.controller;
 
 import com.uas.kanban.annotation.NotEmpty;
+import com.uas.kanban.base.BaseController;
+import com.uas.kanban.exception.OperationException;
 import com.uas.kanban.model.PanelInstance;
 import com.uas.kanban.service.PanelInstanceService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -21,11 +23,21 @@ import java.util.Map;
  */
 @Controller
 @RequestMapping("/panelInstance")
-public class PanelInstanceController {
+public class PanelInstanceController extends BaseController<PanelInstance> {
 
     @Autowired
     private PanelInstanceService panelInstanceService;
 
+    @Override
+    public PanelInstance save(@NotEmpty("json") String json, HttpServletRequest request) throws OperationException {
+        throw new OperationException("不支持的操作");
+    }
+
+    @Override
+    public PanelInstance savePart(@NotEmpty("json") String json, HttpServletRequest request) throws OperationException {
+        return save(json, request);
+    }
+
     /**
      * 根据指定的面板实例,解析生成json数据传给前台
      *

+ 24 - 37
kanban-console/src/main/java/com/uas/kanban/service/impl/PanelInstanceServiceImpl.java

@@ -63,11 +63,10 @@ public class PanelInstanceServiceImpl extends BaseService<PanelInstance> impleme
     private KanbanParser kanbanParser;
 
     @Override
-    public PanelInstance save(@NotEmpty("json") String json) {
+    public int update(@NotEmpty("json") String json) throws IllegalArgumentException, OperationException {
         PanelInstance panelInstance = panelInstanceDao.parse(json);
         checkParameters(panelInstance);
-        initSwitchFrequence(panelInstance);
-        return panelInstanceDao.save(panelInstance);
+        return panelInstanceDao.update(panelInstance);
     }
 
     /**
@@ -162,40 +161,6 @@ public class PanelInstanceServiceImpl extends BaseService<PanelInstance> impleme
         }
     }
 
-    /**
-     * 初始化切换频率
-     *
-     * @param panelInstance 面板实例
-     */
-    private void initSwitchFrequence(@NotEmpty("panelInstance") PanelInstance panelInstance)
-            throws IllegalArgumentException {
-        Panel panel = panelDao.checkExist(panelInstance.getPanelCode());
-        switch (panel.getDisplay()) {
-            case AutoSwitch:
-                if (panelInstance.getSwitchFrequency() == null) {
-                    panelInstance.setSwitchFrequency(PanelInstance.DEFAULT_SWITCH_FREQUENCY);
-                }
-                break;
-            case SplitScreen:
-                if (panelInstance.getSwitchFrequency() != null) {
-                    panelInstance.setSwitchFrequency(null);
-                }
-                break;
-        }
-    }
-
-    @Override
-    public PanelInstance savePart(@NotEmpty("json") String json) {
-        return save(json);
-    }
-
-    @Override
-    public int update(@NotEmpty("json") String json) throws IllegalArgumentException, OperationException {
-        PanelInstance panelInstance = panelInstanceDao.parse(json);
-        checkParameters(panelInstance);
-        return panelInstanceDao.update(panelInstance);
-    }
-
     @Override
     public int updatePart(@NotEmpty("json") String json) throws IllegalArgumentException, OperationException {
         return update(json);
@@ -322,6 +287,28 @@ public class PanelInstanceServiceImpl extends BaseService<PanelInstance> impleme
         return panelInstances;
     }
 
+    /**
+     * 初始化切换频率
+     *
+     * @param panelInstance 面板实例
+     */
+    private void initSwitchFrequence(@NotEmpty("panelInstance") PanelInstance panelInstance)
+            throws IllegalArgumentException {
+        Panel panel = panelDao.checkExist(panelInstance.getPanelCode());
+        switch (panel.getDisplay()) {
+            case AutoSwitch:
+                if (panelInstance.getSwitchFrequency() == null) {
+                    panelInstance.setSwitchFrequency(PanelInstance.DEFAULT_SWITCH_FREQUENCY);
+                }
+                break;
+            case SplitScreen:
+                if (panelInstance.getSwitchFrequency() != null) {
+                    panelInstance.setSwitchFrequency(null);
+                }
+                break;
+        }
+    }
+
     @Override
     public PanelInstance saveToDesktop(@NotEmpty("json") String json) {
         // TODO save to desktop