|
@@ -12,6 +12,7 @@ import com.uas.kanban.dao.TemplateDao;
|
|
|
import com.uas.kanban.exception.OperationException;
|
|
import com.uas.kanban.exception.OperationException;
|
|
|
import com.uas.kanban.model.Kanban;
|
|
import com.uas.kanban.model.Kanban;
|
|
|
import com.uas.kanban.model.Template;
|
|
import com.uas.kanban.model.Template;
|
|
|
|
|
+import com.uas.kanban.model.Kanban.Display;
|
|
|
import com.uas.kanban.util.CollectionUtils;
|
|
import com.uas.kanban.util.CollectionUtils;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -33,6 +34,7 @@ public class KanbanServiceImpl extends BaseService<Kanban> {
|
|
|
public Kanban save(@NotEmpty("json") String json) {
|
|
public Kanban save(@NotEmpty("json") String json) {
|
|
|
Kanban kanban = kanbanDao.parse(json);
|
|
Kanban kanban = kanbanDao.parse(json);
|
|
|
checkTemplates(kanban.getTemplateCodes());
|
|
checkTemplates(kanban.getTemplateCodes());
|
|
|
|
|
+ checkDisplay(kanban);
|
|
|
return kanbanDao.save(kanban);
|
|
return kanbanDao.save(kanban);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -40,6 +42,7 @@ public class KanbanServiceImpl extends BaseService<Kanban> {
|
|
|
public int update(@NotEmpty("json") String json) throws IllegalArgumentException, OperationException {
|
|
public int update(@NotEmpty("json") String json) throws IllegalArgumentException, OperationException {
|
|
|
Kanban kanban = kanbanDao.parse(json);
|
|
Kanban kanban = kanbanDao.parse(json);
|
|
|
checkTemplates(kanban.getTemplateCodes());
|
|
checkTemplates(kanban.getTemplateCodes());
|
|
|
|
|
+ checkDisplay(kanban);
|
|
|
return kanbanDao.update(kanban);
|
|
return kanbanDao.update(kanban);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -63,4 +66,30 @@ public class KanbanServiceImpl extends BaseService<Kanban> {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 检查展示方式
|
|
|
|
|
+ *
|
|
|
|
|
+ * @param kanban
|
|
|
|
|
+ * 看板
|
|
|
|
|
+ * @throws IllegalArgumentException
|
|
|
|
|
+ * 展示方式为自动切换时,未指定切换频率
|
|
|
|
|
+ */
|
|
|
|
|
+ private void checkDisplay(@NotEmpty("kanban") Kanban kanban) throws IllegalArgumentException {
|
|
|
|
|
+ Display display = kanban.getDisplay();
|
|
|
|
|
+ if (display != null) {
|
|
|
|
|
+ switch (display) {
|
|
|
|
|
+ case AutoSwitch:
|
|
|
|
|
+ if (kanban.getSwitchFrequent() == null) {
|
|
|
|
|
+ throw new IllegalArgumentException("展示方式为“自动切换”时,请指定切换频率(ms)");
|
|
|
|
|
+ }
|
|
|
|
|
+ break;
|
|
|
|
|
+ case SplitScreen:
|
|
|
|
|
+ if (kanban.getSwitchFrequent() != null) {
|
|
|
|
|
+ throw new IllegalArgumentException("展示方式为“分屏展示”时,不可指定切换频率");
|
|
|
|
|
+ }
|
|
|
|
|
+ break;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
}
|
|
}
|