From bbb54c1ab65d141219dfbf7efb2af086522667a0 Mon Sep 17 00:00:00 2001
From: mrzhssss <pro6@qq.com>
Date: 星期一, 10 一月 2022 16:59:09 +0800
Subject: [PATCH] 项目计划管理有些功能没实现
---
src/main/java/zy/cloud/wms/manager/entity/ProjectPlan.java | 406 ++++++++
src/main/webapp/views/item/item.html | 81
src/main/webapp/views/projectStatus/projectStatus.html | 148 +++
src/main/resources/mapper/ProjectTypeMapper.xml | 18
src/main/webapp/static/js/flowStatus/flowStatus.js | 10
src/main/webapp/static/js/projectType/projectType.js | 246 +++++
src/main/java/zy/cloud/wms/manager/controller/ItemController.java | 47
src/main/java/zy/cloud/wms/common/CodeBuilder.java | 2
src/main/resources/mapper/ProjectStatusMapper.xml | 23
src/main/java/zy/cloud/wms/manager/service/ProjectStatusService.java | 8
src/main/java/zy/cloud/wms/manager/service/ProjectPlanService.java | 8
src/main/java/zy/cloud/wms/manager/entity/ProjectType.java | 144 ++
src/main/webapp/views/cstmr/cstmr.html | 2
src/main/java/zy/cloud/wms/manager/controller/ProjectPlanController.java | 149 +++
src/main/webapp/views/projectPlan/projectPlan.html | 188 +++
src/main/java/zy/cloud/wms/manager/controller/ProjectStatusController.java | 125 ++
src/main/webapp/static/js/projectStatus/projectStatus.js | 259 +++++
src/main/webapp/static/js/projectPlan/projectPlan.js | 299 ++++++
src/main/java/zy/cloud/wms/manager/controller/FlowStatusController.java | 41
src/main/webapp/static/js/cstmr/cstmr.js | 2
src/main/webapp/views/projectType/projectType.html | 118 ++
src/main/java/projectPlan.sql | 18
src/main/webapp/views/flowStatus/flowStatus.html | 52
src/main/java/zy/cloud/wms/manager/mapper/ProjectTypeMapper.java | 12
src/main/java/zy/cloud/wms/manager/service/impl/ProjectTypeServiceImpl.java | 12
src/main/java/zy/cloud/wms/manager/entity/Item.java | 6
src/main/java/zy/cloud/wms/manager/entity/ProjectStatus.java | 238 ++++
src/main/java/zy/cloud/wms/manager/controller/ProjectTypeController.java | 126 ++
/dev/null | 18
src/main/java/zy/cloud/wms/manager/mapper/ProjectStatusMapper.java | 12
src/main/java/zy/cloud/wms/manager/service/impl/ProjectStatusServiceImpl.java | 12
src/main/resources/mapper/ProjectPlanMapper.xml | 28
src/main/java/zy/cloud/wms/manager/mapper/ProjectPlanMapper.java | 12
src/main/java/zy/cloud/wms/manager/service/ProjectTypeService.java | 8
src/main/java/zy/cloud/wms/manager/service/impl/ProjectPlanServiceImpl.java | 12
src/main/webapp/static/js/item/item.js | 12
36 files changed, 2,785 insertions(+), 117 deletions(-)
diff --git a/src/main/java/flowStatus.sql b/src/main/java/flowStatus.sql
deleted file mode 100644
index ad5964f..0000000
--- a/src/main/java/flowStatus.sql
+++ /dev/null
@@ -1,18 +0,0 @@
--- save flowStatus record
--- mysql
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'flowStatus/flowStatus.html', 'flowStatus绠$悊', null , '2', null , '1');
-
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'flowStatus#view', '鏌ヨ', '', '3', '0', '1');
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'flowStatus#btn-add', '鏂板', '', '3', '1', '1');
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'flowStatus#btn-edit', '缂栬緫', '', '3', '2', '1');
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'flowStatus#btn-delete', '鍒犻櫎', '', '3', '3', '1');
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'flowStatus#btn-export', '瀵煎嚭', '', '3', '4', '1');
-
--- sqlserver
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'flowStatus/flowStatus.html', N'flowStatus绠$悊', null, '2', null, '1');
-
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'flowStatus#view', N'鏌ヨ', '', '3', '0', '1');
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'flowStatus#btn-add', N'鏂板', '', '3', '1', '1');
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'flowStatus#btn-edit', N'缂栬緫', '', '3', '2', '1');
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'flowStatus#btn-delete', N'鍒犻櫎', '', '3', '3', '1');
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'flowStatus#btn-export', N'瀵煎嚭', '', '3', '4', '1');
diff --git a/src/main/java/projectPlan.sql b/src/main/java/projectPlan.sql
new file mode 100644
index 0000000..a7972fa
--- /dev/null
+++ b/src/main/java/projectPlan.sql
@@ -0,0 +1,18 @@
+-- save projectPlan record
+-- mysql
+insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'projectPlan/projectPlan.html', 'projectPlan绠$悊', null , '2', null , '1');
+
+insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'projectPlan#view', '鏌ヨ', '', '3', '0', '1');
+insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'projectPlan#btn-add', '鏂板', '', '3', '1', '1');
+insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'projectPlan#btn-edit', '缂栬緫', '', '3', '2', '1');
+insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'projectPlan#btn-delete', '鍒犻櫎', '', '3', '3', '1');
+insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'projectPlan#btn-export', '瀵煎嚭', '', '3', '4', '1');
+
+-- sqlserver
+insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'projectPlan/projectPlan.html', N'projectPlan绠$悊', null, '2', null, '1');
+
+insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'projectPlan#view', N'鏌ヨ', '', '3', '0', '1');
+insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'projectPlan#btn-add', N'鏂板', '', '3', '1', '1');
+insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'projectPlan#btn-edit', N'缂栬緫', '', '3', '2', '1');
+insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'projectPlan#btn-delete', N'鍒犻櫎', '', '3', '3', '1');
+insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'projectPlan#btn-export', N'瀵煎嚭', '', '3', '4', '1');
diff --git a/src/main/java/zy/cloud/wms/common/CodeBuilder.java b/src/main/java/zy/cloud/wms/common/CodeBuilder.java
index e14e0c2..dddae57 100644
--- a/src/main/java/zy/cloud/wms/common/CodeBuilder.java
+++ b/src/main/java/zy/cloud/wms/common/CodeBuilder.java
@@ -23,7 +23,7 @@
generator.url="localhost:1433;databasename=zypms";
generator.username="sa";
generator.password="sa@123";
- generator.table="sys_flow_status";
+ generator.table="sys_project_plan";
generator.packagePath="zy.cloud.wms.manager";
generator.sqlOsType = SqlOsType.SQL_SERVER;
// generator.js = false;
diff --git a/src/main/java/zy/cloud/wms/manager/controller/FlowStatusController.java b/src/main/java/zy/cloud/wms/manager/controller/FlowStatusController.java
index bf75dc8..696796d 100644
--- a/src/main/java/zy/cloud/wms/manager/controller/FlowStatusController.java
+++ b/src/main/java/zy/cloud/wms/manager/controller/FlowStatusController.java
@@ -32,22 +32,24 @@
@RequestMapping(value = "/flowStatus/list/auth")
@ManagerAuth
- public R list(@RequestParam(defaultValue = "1")Integer curr,
- @RequestParam(defaultValue = "10")Integer limit,
- @RequestParam(required = false)String orderByField,
- @RequestParam(required = false)String orderByType,
- @RequestParam Map<String, Object> param){
+ public R list(@RequestParam(defaultValue = "1") Integer curr,
+ @RequestParam(defaultValue = "10") Integer limit,
+ @RequestParam(required = false) String orderByField,
+ @RequestParam(required = false) String orderByType,
+ @RequestParam Map<String, Object> param) {
EntityWrapper<FlowStatus> wrapper = new EntityWrapper<>();
excludeTrash(param);
convert(param, wrapper);
- if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
+ if (!Cools.isEmpty(orderByField)) {
+ wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));
+ }
return R.ok(flowStatusService.selectPage(new Page<>(curr, limit), wrapper));
}
- private void convert(Map<String, Object> map, EntityWrapper wrapper){
- for (Map.Entry<String, Object> entry : map.entrySet()){
+ private void convert(Map<String, Object> map, EntityWrapper wrapper) {
+ for (Map.Entry<String, Object> entry : map.entrySet()) {
String val = String.valueOf(entry.getValue());
- if (val.contains(RANGE_TIME_LINK)){
+ if (val.contains(RANGE_TIME_LINK)) {
String[] dates = val.split(RANGE_TIME_LINK);
wrapper.ge(entry.getKey(), DateUtils.convert(dates[0]));
wrapper.le(entry.getKey(), DateUtils.convert(dates[1]));
@@ -64,10 +66,10 @@
return R.ok();
}
- @RequestMapping(value = "/flowStatus/update/auth")
- @ManagerAuth
- public R update(FlowStatus flowStatus){
- if (Cools.isEmpty(flowStatus) || null==flowStatus.getId()){
+ @RequestMapping(value = "/flowStatus/update/auth")
+ @ManagerAuth
+ public R update(FlowStatus flowStatus) {
+ if (Cools.isEmpty(flowStatus) || null == flowStatus.getId()) {
return R.error();
}
flowStatusService.updateById(flowStatus);
@@ -76,16 +78,17 @@
@RequestMapping(value = "/flowStatus/delete/auth")
@ManagerAuth
- public R delete(@RequestParam(value="ids[]") Long[] ids){
- for (Long id : ids){
- flowStatusService.deleteById(id);
+ public R delete(@RequestParam(value = "ids[]") Long[] ids) {
+ for (Long id : ids) {
+ flowStatusService.delete(new EntityWrapper<FlowStatus>()
+ .eq("id",id));
}
return R.ok();
}
@RequestMapping(value = "/flowStatus/export/auth")
@ManagerAuth
- public R export(@RequestBody JSONObject param){
+ public R export(@RequestBody JSONObject param) {
EntityWrapper<FlowStatus> wrapper = new EntityWrapper<>();
List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class);
Map<String, Object> map = excludeTrash(param.getJSONObject("flowStatus"));
@@ -101,7 +104,7 @@
wrapper.like("id", condition);
Page<FlowStatus> page = flowStatusService.selectPage(new Page<>(0, 10), wrapper);
List<Map<String, Object>> result = new ArrayList<>();
- for (FlowStatus flowStatus : page.getRecords()){
+ for (FlowStatus flowStatus : page.getRecords()) {
Map<String, Object> map = new HashMap<>();
map.put("id", flowStatus.getId());
map.put("value", flowStatus.getId());
@@ -114,7 +117,7 @@
@ManagerAuth
public R query(@RequestBody JSONObject param) {
Wrapper<FlowStatus> wrapper = new EntityWrapper<FlowStatus>().eq(humpToLine(String.valueOf(param.get("key"))), param.get("val"));
- if (null != flowStatusService.selectOne(wrapper)){
+ if (null != flowStatusService.selectOne(wrapper)) {
return R.parse(BaseRes.REPEAT).add(getComment(FlowStatus.class, String.valueOf(param.get("key"))));
}
return R.ok();
diff --git a/src/main/java/zy/cloud/wms/manager/controller/ItemController.java b/src/main/java/zy/cloud/wms/manager/controller/ItemController.java
index 5444d54..5644309 100644
--- a/src/main/java/zy/cloud/wms/manager/controller/ItemController.java
+++ b/src/main/java/zy/cloud/wms/manager/controller/ItemController.java
@@ -13,8 +13,12 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import zy.cloud.wms.common.web.BaseController;
+import zy.cloud.wms.manager.entity.Cstmr;
import zy.cloud.wms.manager.entity.Item;
+import zy.cloud.wms.manager.entity.ProjectType;
+import zy.cloud.wms.manager.service.CstmrService;
import zy.cloud.wms.manager.service.ItemService;
+import zy.cloud.wms.manager.service.ProjectTypeService;
import java.util.*;
@@ -23,6 +27,10 @@
@Autowired
private ItemService itemService;
+ @Autowired
+ private CstmrService cstmrService;
+ @Autowired
+ private ProjectTypeService projectTypeService;
@RequestMapping(value = "/item/{id}/auth")
@ManagerAuth
@@ -62,6 +70,24 @@
@ManagerAuth
public R add(Item item) {
+ if (Cools.isEmpty(item)) {
+ return R.error("鍙傛暟涓虹┖,璇疯仈绯荤鐞嗗憳");
+ }
+ Cstmr user_code = cstmrService.selectOne(new EntityWrapper<Cstmr>()
+ .eq("user_code", item.getCstmrUuid()));
+ if (!Cools.isEmpty(user_code)) {
+ item.setCstmr(user_code.getName());
+ }else {
+ return R.error("鍙傛暟閿欒,璇疯緭鍏ユ纭殑瀹㈡埛缂栧彿");
+ }
+ ProjectType id = projectTypeService.selectOne(new EntityWrapper<ProjectType>()
+ .eq("id", item.getType()));
+ if (!Cools.isEmpty(id)) {
+ item.setType(id.getTypeName());
+ }else {
+ return R.error("鍙傛暟閿欒,鎵句笉鍒拌椤圭洰绫诲瀷");
+ }
+
item.setHostId(getHostId());
item.setCreateBy(getUserId());
item.setCreateTime(new Date());
@@ -75,9 +101,26 @@
@RequestMapping(value = "/item/update/auth")
@ManagerAuth
public R update(Item item){
- if (Cools.isEmpty(item) || null==item.getUuid()){
- return R.error();
+ if (Cools.isEmpty(item)) {
+ return R.error("鍙傛暟涓虹┖,璇疯仈绯荤鐞嗗憳");
}
+ Cstmr user_code = cstmrService.selectOne(new EntityWrapper<Cstmr>()
+ .eq("user_code", item.getCstmrUuid()));
+ if (!Cools.isEmpty(user_code)) {
+ item.setCstmr(user_code.getName());
+ }else {
+ return R.error("鍙傛暟閿欒,璇疯緭鍏ユ纭殑瀹㈡埛缂栧彿");
+ }
+ ProjectType id = projectTypeService.selectOne(new EntityWrapper<ProjectType>()
+ .eq("id", item.getType()));
+ if (!Cools.isEmpty(id)) {
+ item.setType(id.getTypeName());
+ }else {
+ return R.error("鍙傛暟閿欒,鎵句笉鍒拌椤圭洰绫诲瀷");
+ }
+// if (Cools.isEmpty(item) || null==item.getUuid()){
+// return R.error();
+// }
item.setUpdateBy(getUserId());
item.setUpdateTime(new Date());
itemService.updateById(item);
diff --git a/src/main/java/zy/cloud/wms/manager/controller/ProjectPlanController.java b/src/main/java/zy/cloud/wms/manager/controller/ProjectPlanController.java
new file mode 100644
index 0000000..8641548
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/manager/controller/ProjectPlanController.java
@@ -0,0 +1,149 @@
+package zy.cloud.wms.manager.controller;
+
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.baomidou.mybatisplus.mapper.Wrapper;
+import com.baomidou.mybatisplus.plugins.Page;
+import com.core.common.DateUtils;
+import zy.cloud.wms.manager.entity.Item;
+import zy.cloud.wms.manager.entity.Node;
+import zy.cloud.wms.manager.entity.ProjectPlan;
+import zy.cloud.wms.manager.service.ItemService;
+import zy.cloud.wms.manager.service.ProjectPlanService;
+import com.core.annotations.ManagerAuth;
+import com.core.common.BaseRes;
+import com.core.common.Cools;
+import com.core.common.R;
+import zy.cloud.wms.common.web.BaseController;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.*;
+
+@RestController
+public class ProjectPlanController extends BaseController {
+
+ @Autowired
+ private ProjectPlanService projectPlanService;
+ @Autowired
+ private ItemService itemService;
+
+ @RequestMapping(value = "/projectPlan/{id}/auth")
+ @ManagerAuth
+ public R get(@PathVariable("id") String id) {
+ return R.ok(projectPlanService.selectById(String.valueOf(id)));
+ }
+
+ @RequestMapping(value = "/projectPlan/list/auth")
+ @ManagerAuth
+ public R list(@RequestParam(defaultValue = "1") Integer curr,
+ @RequestParam(defaultValue = "10") Integer limit,
+ @RequestParam(required = false) String orderByField,
+ @RequestParam(required = false) String orderByType,
+ @RequestParam Map<String, Object> param,
+ @RequestParam String target) {
+ param.remove("target");
+ EntityWrapper<ProjectPlan> wrapper = new EntityWrapper<>();
+ wrapper.eq("item_id",target);
+ excludeTrash(param);
+ convert(param, wrapper);
+ if (!Cools.isEmpty(orderByField)) {
+ wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));
+ }
+ return R.ok(projectPlanService.selectPage(new Page<>(curr, limit), wrapper));
+ }
+
+ private void convert(Map<String, Object> map, EntityWrapper wrapper) {
+ for (Map.Entry<String, Object> entry : map.entrySet()) {
+ String val = String.valueOf(entry.getValue());
+ if (val.contains(RANGE_TIME_LINK)) {
+ String[] dates = val.split(RANGE_TIME_LINK);
+ wrapper.ge(entry.getKey(), DateUtils.convert(dates[0]));
+ wrapper.le(entry.getKey(), DateUtils.convert(dates[1]));
+ } else {
+ wrapper.like(entry.getKey(), val);
+ }
+ }
+ }
+
+ @RequestMapping(value = "/projectPlan/add/auth")
+ @ManagerAuth
+ public R add(ProjectPlan projectPlan) {
+ projectPlanService.insert(projectPlan);
+ return R.ok();
+ }
+
+ @RequestMapping(value = "/projectPlan/update/auth")
+ @ManagerAuth
+ public R update(ProjectPlan projectPlan) {
+ if (Cools.isEmpty(projectPlan) || null == projectPlan.getId()) {
+ return R.error();
+ }
+ projectPlanService.updateById(projectPlan);
+ return R.ok();
+ }
+
+ @RequestMapping(value = "/projectPlan/delete/auth")
+ @ManagerAuth
+ public R delete(@RequestParam(value = "ids[]") Long[] ids) {
+ for (Long id : ids) {
+ projectPlanService.deleteById(id);
+ }
+ return R.ok();
+ }
+
+ @RequestMapping(value = "/projectPlan/export/auth")
+ @ManagerAuth
+ public R export(@RequestBody JSONObject param) {
+ EntityWrapper<ProjectPlan> wrapper = new EntityWrapper<>();
+ List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class);
+ Map<String, Object> map = excludeTrash(param.getJSONObject("projectPlan"));
+ convert(map, wrapper);
+ List<ProjectPlan> list = projectPlanService.selectList(wrapper);
+ return R.ok(exportSupport(list, fields));
+ }
+
+ @RequestMapping(value = "/projectPlanQuery/auth")
+ @ManagerAuth
+ public R query(String condition) {
+ EntityWrapper<ProjectPlan> wrapper = new EntityWrapper<>();
+ wrapper.like("id", condition);
+ Page<ProjectPlan> page = projectPlanService.selectPage(new Page<>(0, 10), wrapper);
+ List<Map<String, Object>> result = new ArrayList<>();
+ for (ProjectPlan projectPlan : page.getRecords()) {
+ Map<String, Object> map = new HashMap<>();
+ map.put("id", projectPlan.getId());
+ map.put("value", projectPlan.getId());
+ result.add(map);
+ }
+ return R.ok(result);
+ }
+
+ @RequestMapping(value = "/projectPlan/check/column/auth")
+ @ManagerAuth
+ public R query(@RequestBody JSONObject param) {
+ Wrapper<ProjectPlan> wrapper = new EntityWrapper<ProjectPlan>().eq(humpToLine(String.valueOf(param.get("key"))), param.get("val"));
+ if (null != projectPlanService.selectOne(wrapper)) {
+ return R.parse(BaseRes.REPEAT).add(getComment(ProjectPlan.class, String.valueOf(param.get("key"))));
+ }
+ return R.ok();
+ }
+
+ @RequestMapping("/projectPlan/allProjects")
+ public R allProjects() {
+
+ List<Item> items = itemService.selectList(null);
+
+ List<Map<String, Object>> result = new ArrayList<>();
+ for (Item item : items) {
+ Map<String, Object> map = new HashMap<>();
+ map.put("key", item.getId());
+ map.put("val", item.getName());
+ result.add(map);
+ }
+ return R.ok().add(result);
+
+ }
+
+}
diff --git a/src/main/java/zy/cloud/wms/manager/controller/ProjectStatusController.java b/src/main/java/zy/cloud/wms/manager/controller/ProjectStatusController.java
new file mode 100644
index 0000000..c0648f2
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/manager/controller/ProjectStatusController.java
@@ -0,0 +1,125 @@
+package zy.cloud.wms.manager.controller;
+
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.baomidou.mybatisplus.mapper.Wrapper;
+import com.baomidou.mybatisplus.plugins.Page;
+import com.core.common.DateUtils;
+import zy.cloud.wms.manager.entity.ProjectStatus;
+import zy.cloud.wms.manager.service.ProjectStatusService;
+import com.core.annotations.ManagerAuth;
+import com.core.common.BaseRes;
+import com.core.common.Cools;
+import com.core.common.R;
+import zy.cloud.wms.common.web.BaseController;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.*;
+
+@RestController
+public class ProjectStatusController extends BaseController {
+
+ @Autowired
+ private ProjectStatusService projectStatusService;
+
+ @RequestMapping(value = "/projectStatus/{id}/auth")
+ @ManagerAuth
+ public R get(@PathVariable("id") String id) {
+ return R.ok(projectStatusService.selectById(String.valueOf(id)));
+ }
+
+ @RequestMapping(value = "/projectStatus/list/auth")
+ @ManagerAuth
+ public R list(@RequestParam(defaultValue = "1")Integer curr,
+ @RequestParam(defaultValue = "10")Integer limit,
+ @RequestParam(required = false)String orderByField,
+ @RequestParam(required = false)String orderByType,
+ @RequestParam Map<String, Object> param){
+ EntityWrapper<ProjectStatus> wrapper = new EntityWrapper<>();
+ excludeTrash(param);
+ convert(param, wrapper);
+ if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
+ return R.ok(projectStatusService.selectPage(new Page<>(curr, limit), wrapper));
+ }
+
+ private void convert(Map<String, Object> map, EntityWrapper wrapper){
+ for (Map.Entry<String, Object> entry : map.entrySet()){
+ String val = String.valueOf(entry.getValue());
+ if (val.contains(RANGE_TIME_LINK)){
+ String[] dates = val.split(RANGE_TIME_LINK);
+ wrapper.ge(entry.getKey(), DateUtils.convert(dates[0]));
+ wrapper.le(entry.getKey(), DateUtils.convert(dates[1]));
+ } else {
+ wrapper.like(entry.getKey(), val);
+ }
+ }
+ }
+
+ @RequestMapping(value = "/projectStatus/add/auth")
+ @ManagerAuth
+ public R add(ProjectStatus projectStatus) {
+ projectStatusService.insert(projectStatus);
+ return R.ok();
+ }
+
+ @RequestMapping(value = "/projectStatus/update/auth")
+ @ManagerAuth
+ public R update(ProjectStatus projectStatus){
+ if (Cools.isEmpty(projectStatus) || null==projectStatus.getId()){
+ return R.error();
+ }
+ projectStatusService.updateById(projectStatus);
+ return R.ok();
+ }
+
+ @RequestMapping(value = "/projectStatus/delete/auth")
+ @ManagerAuth
+ public R delete(@RequestParam(value="ids[]") Long[] ids){
+
+ for (Long id : ids){
+ projectStatusService.delete(new EntityWrapper<ProjectStatus>()
+ .eq("id",id));
+ }
+ return R.ok();
+ }
+
+ @RequestMapping(value = "/projectStatus/export/auth")
+ @ManagerAuth
+ public R export(@RequestBody JSONObject param){
+ EntityWrapper<ProjectStatus> wrapper = new EntityWrapper<>();
+ List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class);
+ Map<String, Object> map = excludeTrash(param.getJSONObject("projectStatus"));
+ convert(map, wrapper);
+ List<ProjectStatus> list = projectStatusService.selectList(wrapper);
+ return R.ok(exportSupport(list, fields));
+ }
+
+ @RequestMapping(value = "/projectStatusQuery/auth")
+ @ManagerAuth
+ public R query(String condition) {
+ EntityWrapper<ProjectStatus> wrapper = new EntityWrapper<>();
+ wrapper.like("id", condition);
+ Page<ProjectStatus> page = projectStatusService.selectPage(new Page<>(0, 10), wrapper);
+ List<Map<String, Object>> result = new ArrayList<>();
+ for (ProjectStatus projectStatus : page.getRecords()){
+ Map<String, Object> map = new HashMap<>();
+ map.put("id", projectStatus.getId());
+ map.put("value", projectStatus.getId());
+ result.add(map);
+ }
+ return R.ok(result);
+ }
+
+ @RequestMapping(value = "/projectStatus/check/column/auth")
+ @ManagerAuth
+ public R query(@RequestBody JSONObject param) {
+ Wrapper<ProjectStatus> wrapper = new EntityWrapper<ProjectStatus>().eq(humpToLine(String.valueOf(param.get("key"))), param.get("val"));
+ if (null != projectStatusService.selectOne(wrapper)){
+ return R.parse(BaseRes.REPEAT).add(getComment(ProjectStatus.class, String.valueOf(param.get("key"))));
+ }
+ return R.ok();
+ }
+
+}
diff --git a/src/main/java/zy/cloud/wms/manager/controller/ProjectTypeController.java b/src/main/java/zy/cloud/wms/manager/controller/ProjectTypeController.java
new file mode 100644
index 0000000..320fd9b
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/manager/controller/ProjectTypeController.java
@@ -0,0 +1,126 @@
+package zy.cloud.wms.manager.controller;
+
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.baomidou.mybatisplus.mapper.Wrapper;
+import com.baomidou.mybatisplus.plugins.Page;
+import com.core.common.DateUtils;
+import zy.cloud.wms.manager.entity.ProjectType;
+import zy.cloud.wms.manager.service.ProjectTypeService;
+import com.core.annotations.ManagerAuth;
+import com.core.common.BaseRes;
+import com.core.common.Cools;
+import com.core.common.R;
+import zy.cloud.wms.common.web.BaseController;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.*;
+
+@RestController
+public class ProjectTypeController extends BaseController {
+
+ @Autowired
+ private ProjectTypeService projectTypeService;
+
+ @RequestMapping(value = "/projectType/{id}/auth")
+ @ManagerAuth
+ public R get(@PathVariable("id") String id) {
+ return R.ok(projectTypeService.selectById(String.valueOf(id)));
+ }
+
+ @RequestMapping(value = "/projectType/list/auth")
+ @ManagerAuth
+ public R list(@RequestParam(defaultValue = "1") Integer curr,
+ @RequestParam(defaultValue = "10") Integer limit,
+ @RequestParam(required = false) String orderByField,
+ @RequestParam(required = false) String orderByType,
+ @RequestParam Map<String, Object> param) {
+ EntityWrapper<ProjectType> wrapper = new EntityWrapper<>();
+ excludeTrash(param);
+ convert(param, wrapper);
+ if (!Cools.isEmpty(orderByField)) {
+ wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));
+ }
+ return R.ok(projectTypeService.selectPage(new Page<>(curr, limit), wrapper));
+ }
+
+ private void convert(Map<String, Object> map, EntityWrapper wrapper) {
+ for (Map.Entry<String, Object> entry : map.entrySet()) {
+ String val = String.valueOf(entry.getValue());
+ if (val.contains(RANGE_TIME_LINK)) {
+ String[] dates = val.split(RANGE_TIME_LINK);
+ wrapper.ge(entry.getKey(), DateUtils.convert(dates[0]));
+ wrapper.le(entry.getKey(), DateUtils.convert(dates[1]));
+ } else {
+ wrapper.like(entry.getKey(), val);
+ }
+ }
+ }
+
+ @RequestMapping(value = "/projectType/add/auth")
+ @ManagerAuth
+ public R add(ProjectType projectType) {
+ projectTypeService.insert(projectType);
+ return R.ok();
+ }
+
+ @RequestMapping(value = "/projectType/update/auth")
+ @ManagerAuth
+ public R update(ProjectType projectType) {
+ if (Cools.isEmpty(projectType) || null == projectType.getId()) {
+ return R.error();
+ }
+ projectTypeService.updateById(projectType);
+ return R.ok();
+ }
+
+ @RequestMapping(value = "/projectType/delete/auth")
+ @ManagerAuth
+ public R delete(@RequestParam(value = "ids[]") Long[] ids) {
+ for (Long id : ids) {
+ projectTypeService.delete(new EntityWrapper<ProjectType>()
+ .eq("id",id));
+ }
+ return R.ok();
+ }
+
+ @RequestMapping(value = "/projectType/export/auth")
+ @ManagerAuth
+ public R export(@RequestBody JSONObject param) {
+ EntityWrapper<ProjectType> wrapper = new EntityWrapper<>();
+ List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class);
+ Map<String, Object> map = excludeTrash(param.getJSONObject("projectType"));
+ convert(map, wrapper);
+ List<ProjectType> list = projectTypeService.selectList(wrapper);
+ return R.ok(exportSupport(list, fields));
+ }
+
+ @RequestMapping(value = "/projectTypeQuery/auth")
+ @ManagerAuth
+ public R query(String condition) {
+ EntityWrapper<ProjectType> wrapper = new EntityWrapper<>();
+ wrapper.like("id", condition);
+ Page<ProjectType> page = projectTypeService.selectPage(new Page<>(0, 10), wrapper);
+ List<Map<String, Object>> result = new ArrayList<>();
+ for (ProjectType projectType : page.getRecords()) {
+ Map<String, Object> map = new HashMap<>();
+ map.put("id", projectType.getId());
+ map.put("value", projectType.getId());
+ result.add(map);
+ }
+ return R.ok(result);
+ }
+
+ @RequestMapping(value = "/projectType/check/column/auth")
+ @ManagerAuth
+ public R query(@RequestBody JSONObject param) {
+ Wrapper<ProjectType> wrapper = new EntityWrapper<ProjectType>().eq(humpToLine(String.valueOf(param.get("key"))), param.get("val"));
+ if (null != projectTypeService.selectOne(wrapper)) {
+ return R.parse(BaseRes.REPEAT).add(getComment(ProjectType.class, String.valueOf(param.get("key"))));
+ }
+ return R.ok();
+ }
+
+}
diff --git a/src/main/java/zy/cloud/wms/manager/entity/Item.java b/src/main/java/zy/cloud/wms/manager/entity/Item.java
index 84ade5b..de67d78 100644
--- a/src/main/java/zy/cloud/wms/manager/entity/Item.java
+++ b/src/main/java/zy/cloud/wms/manager/entity/Item.java
@@ -144,12 +144,14 @@
@TableField("type")
private String type;
- @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+
@TableField("real_start_time")
+ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date realStartTime;
- @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+
@TableField("real_end_time")
+ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date realEndTime;
@TableField("real_month")
diff --git a/src/main/java/zy/cloud/wms/manager/entity/ProjectPlan.java b/src/main/java/zy/cloud/wms/manager/entity/ProjectPlan.java
new file mode 100644
index 0000000..402305c
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/manager/entity/ProjectPlan.java
@@ -0,0 +1,406 @@
+package zy.cloud.wms.manager.entity;
+
+import com.core.common.Cools;import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.enums.IdType;
+import com.baomidou.mybatisplus.annotations.TableField;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import io.swagger.annotations.ApiModelProperty;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import io.swagger.annotations.ApiModelProperty;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import io.swagger.annotations.ApiModelProperty;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+
+import com.baomidou.mybatisplus.annotations.TableName;
+import java.io.Serializable;
+
+@TableName("sys_project_plan")
+public class ProjectPlan implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 鍞竴ID
+ */
+ @ApiModelProperty(value= "鍞竴ID")
+ private Long id;
+
+ /**
+ * 椤圭洰ID
+ */
+ @ApiModelProperty(value= "椤圭洰ID")
+ @TableId(value = "item_id", type = IdType.INPUT)
+ @TableField("item_id")
+ private Long itemId;
+
+ /**
+ * 鏉冮噸ID
+ */
+ @ApiModelProperty(value= "鏉冮噸ID")
+ @TableId(value = "weight_num", type = IdType.INPUT)
+ @TableField("weight_num")
+ private Integer weightNum;
+
+ /**
+ * 鑺傜偣ID
+ */
+ @ApiModelProperty(value= "鑺傜偣ID")
+ @TableField("flow_id")
+ private Integer flowId;
+
+ /**
+ * 鍚姩鏃ユ湡
+ */
+ @ApiModelProperty(value= "鍚姩鏃ユ湡")
+ @TableField("start_time")
+ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ private Date startTime;
+
+ /**
+ * 瀹為檯鍚姩鏃ユ湡
+ */
+ @ApiModelProperty(value= "瀹為檯鍚姩鏃ユ湡")
+ @TableField("real_start_time")
+ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ private Date realStartTime;
+
+ /**
+ * 缁撴潫鏃ユ湡
+ */
+ @ApiModelProperty(value= "缁撴潫鏃ユ湡")
+ @TableField("end_time")
+ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ private Date endTime;
+
+ /**
+ * 瀹為檯缁撴潫鏃ユ湡
+ */
+ @ApiModelProperty(value= "瀹為檯缁撴潫鏃ユ湡")
+ @TableField("real_end_time")
+ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ private Date realEndTime;
+
+ /**
+ * 寤舵湡澶╂暟
+ */
+ @ApiModelProperty(value= "寤舵湡澶╂暟")
+ private Integer delay;
+
+ /**
+ * 寤舵湡鍘熷洜
+ */
+ @ApiModelProperty(value= "寤舵湡鍘熷洜")
+ @TableField("delay_reason")
+ private String delayReason;
+
+ /**
+ * 澶囨敞
+ */
+ @ApiModelProperty(value= "澶囨敞")
+ private String memo;
+
+ /**
+ * 璐d换閮ㄩ棬
+ */
+ @ApiModelProperty(value= "璐d换閮ㄩ棬")
+ @TableField("duty_department")
+ private String dutyDepartment;
+
+ /**
+ * 璐d换浜�
+ */
+ @ApiModelProperty(value= "璐d换浜�")
+ @TableField("duty_man")
+ private String dutyMan;
+
+ /**
+ * 鍒涘缓鏃堕棿
+ */
+ @ApiModelProperty(value= "鍒涘缓鏃堕棿")
+ @TableField("create_time")
+ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ private Date createTime;
+
+ /**
+ * 鍒涘缓浜篿d
+ */
+ @ApiModelProperty(value= "鍒涘缓浜篿d")
+ @TableField("create_id")
+ private Integer createId;
+
+ /**
+ * 淇敼鏃堕棿
+ */
+ @ApiModelProperty(value= "淇敼鏃堕棿")
+ @TableField("modify_time")
+ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ private Date modifyTime;
+
+ /**
+ * 淇敼浜篿d
+ */
+ @ApiModelProperty(value= "淇敼浜篿d")
+ @TableField("modify_id")
+ private Integer modifyId;
+
+ /**
+ * 鑺傜偣鍚嶇О
+ */
+ @ApiModelProperty(value= "鑺傜偣鍚嶇О")
+ @TableField("flow_name")
+ private String flowName;
+
+ public ProjectPlan() {}
+
+ public ProjectPlan(Long itemId,Integer weightNum,Integer flowId,Date startTime,Date realStartTime,Date endTime,Date realEndTime,Integer delay,String delayReason,String memo,String dutyDepartment,String dutyMan,Date createTime,Integer createId,Date modifyTime,Integer modifyId,String flowName) {
+ this.itemId = itemId;
+ this.weightNum = weightNum;
+ this.flowId = flowId;
+ this.startTime = startTime;
+ this.realStartTime = realStartTime;
+ this.endTime = endTime;
+ this.realEndTime = realEndTime;
+ this.delay = delay;
+ this.delayReason = delayReason;
+ this.memo = memo;
+ this.dutyDepartment = dutyDepartment;
+ this.dutyMan = dutyMan;
+ this.createTime = createTime;
+ this.createId = createId;
+ this.modifyTime = modifyTime;
+ this.modifyId = modifyId;
+ this.flowName = flowName;
+ }
+
+// ProjectPlan projectPlan = new ProjectPlan(
+// null, // 椤圭洰ID[闈炵┖]
+// null, // 鏉冮噸ID[闈炵┖]
+// null, // 鑺傜偣ID[闈炵┖]
+// null, // 鍚姩鏃ユ湡[闈炵┖]
+// null, // 瀹為檯鍚姩鏃ユ湡
+// null, // 缁撴潫鏃ユ湡[闈炵┖]
+// null, // 瀹為檯缁撴潫鏃ユ湡
+// null, // 寤舵湡澶╂暟
+// null, // 寤舵湡鍘熷洜
+// null, // 澶囨敞
+// null, // 璐d换閮ㄩ棬
+// null, // 璐d换浜�
+// null, // 鍒涘缓鏃堕棿
+// null, // 鍒涘缓浜篿d
+// null, // 淇敼鏃堕棿
+// null, // 淇敼浜篿d
+// null // 鑺傜偣鍚嶇О
+// );
+
+ public Long getId() {
+ return id;
+ }
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ public Long getItemId() {
+ return itemId;
+ }
+
+ public void setItemId(Long itemId) {
+ this.itemId = itemId;
+ }
+
+ public Integer getWeightNum() {
+ return weightNum;
+ }
+
+ public void setWeightNum(Integer weightNum) {
+ this.weightNum = weightNum;
+ }
+
+ public Integer getFlowId() {
+ return flowId;
+ }
+
+ public void setFlowId(Integer flowId) {
+ this.flowId = flowId;
+ }
+
+ public Date getStartTime() {
+ return startTime;
+ }
+
+ public String getStartTime$(){
+ if (Cools.isEmpty(this.startTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.startTime);
+ }
+
+ public void setStartTime(Date startTime) {
+ this.startTime = startTime;
+ }
+
+ public Date getRealStartTime() {
+ return realStartTime;
+ }
+
+ public String getRealStartTime$(){
+ if (Cools.isEmpty(this.realStartTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.realStartTime);
+ }
+
+ public void setRealStartTime(Date realStartTime) {
+ this.realStartTime = realStartTime;
+ }
+
+ public Date getEndTime() {
+ return endTime;
+ }
+
+ public String getEndTime$(){
+ if (Cools.isEmpty(this.endTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.endTime);
+ }
+
+ public void setEndTime(Date endTime) {
+ this.endTime = endTime;
+ }
+
+ public Date getRealEndTime() {
+ return realEndTime;
+ }
+
+ public String getRealEndTime$(){
+ if (Cools.isEmpty(this.realEndTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.realEndTime);
+ }
+
+ public void setRealEndTime(Date realEndTime) {
+ this.realEndTime = realEndTime;
+ }
+
+ public Integer getDelay() {
+ return delay;
+ }
+
+ public void setDelay(Integer delay) {
+ this.delay = delay;
+ }
+
+ public String getDelayReason() {
+ return delayReason;
+ }
+
+ public void setDelayReason(String delayReason) {
+ this.delayReason = delayReason;
+ }
+
+ public String getMemo() {
+ return memo;
+ }
+
+ public void setMemo(String memo) {
+ this.memo = memo;
+ }
+
+ public String getDutyDepartment() {
+ return dutyDepartment;
+ }
+
+ public void setDutyDepartment(String dutyDepartment) {
+ this.dutyDepartment = dutyDepartment;
+ }
+
+ public String getDutyMan() {
+ return dutyMan;
+ }
+
+ public void setDutyMan(String dutyMan) {
+ this.dutyMan = dutyMan;
+ }
+
+ public Date getCreateTime() {
+ return createTime;
+ }
+
+ public String getCreateTime$(){
+ if (Cools.isEmpty(this.createTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime);
+ }
+
+ public void setCreateTime(Date createTime) {
+ this.createTime = createTime;
+ }
+
+ public Integer getCreateId() {
+ return createId;
+ }
+
+ public void setCreateId(Integer createId) {
+ this.createId = createId;
+ }
+
+ public Date getModifyTime() {
+ return modifyTime;
+ }
+
+ public String getModifyTime$(){
+ if (Cools.isEmpty(this.modifyTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.modifyTime);
+ }
+
+ public void setModifyTime(Date modifyTime) {
+ this.modifyTime = modifyTime;
+ }
+
+ public Integer getModifyId() {
+ return modifyId;
+ }
+
+ public void setModifyId(Integer modifyId) {
+ this.modifyId = modifyId;
+ }
+
+ public String getFlowName() {
+ return flowName;
+ }
+
+ public void setFlowName(String flowName) {
+ this.flowName = flowName;
+ }
+
+
+}
diff --git a/src/main/java/zy/cloud/wms/manager/entity/ProjectStatus.java b/src/main/java/zy/cloud/wms/manager/entity/ProjectStatus.java
new file mode 100644
index 0000000..14ec556
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/manager/entity/ProjectStatus.java
@@ -0,0 +1,238 @@
+package zy.cloud.wms.manager.entity;
+
+import com.core.common.Cools;import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.enums.IdType;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotations.TableField;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import io.swagger.annotations.ApiModelProperty;
+import org.springframework.format.annotation.DateTimeFormat;
+import io.swagger.annotations.ApiModelProperty;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+
+import com.baomidou.mybatisplus.annotations.TableName;
+import java.io.Serializable;
+
+@TableName("sys_project_status")
+public class ProjectStatus implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty(value= "")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Integer id;
+
+ @ApiModelProperty(value= "")
+ @TableField("status_id")
+ private Integer statusId;
+
+ @ApiModelProperty(value= "")
+ @TableField("status_name")
+ private String statusName;
+
+ @ApiModelProperty(value= "")
+ private Integer type;
+
+ @ApiModelProperty(value= "")
+ @TableField("status_class")
+ private Integer statusClass;
+
+ @ApiModelProperty(value= "")
+ private String memo;
+
+ @ApiModelProperty(value= "")
+ @TableField("create_id")
+ private String createId;
+
+ @ApiModelProperty(value= "")
+ @TableField("create_time")
+ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ private Date createTime;
+
+ @ApiModelProperty(value= "")
+ @TableField("modify_id")
+ private String modifyId;
+
+ @ApiModelProperty(value= "")
+ @TableField("modify_time")
+ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ private Date modifyTime;
+
+ @ApiModelProperty(value= "")
+ @TableField("str_1")
+ private String str1;
+
+ @ApiModelProperty(value= "")
+ @TableField("str_2")
+ private String str2;
+
+ @ApiModelProperty(value= "")
+ @TableField("str_3")
+ private String str3;
+
+ public ProjectStatus() {}
+
+ public ProjectStatus(Integer id,Integer statusId,String statusName,Integer type,Integer statusClass,String memo,String createId,Date createTime,String modifyId,Date modifyTime,String str1,String str2,String str3) {
+ this.id = id;
+ this.statusId = statusId;
+ this.statusName = statusName;
+ this.type = type;
+ this.statusClass = statusClass;
+ this.memo = memo;
+ this.createId = createId;
+ this.createTime = createTime;
+ this.modifyId = modifyId;
+ this.modifyTime = modifyTime;
+ this.str1 = str1;
+ this.str2 = str2;
+ this.str3 = str3;
+ }
+
+// ProjectStatus projectStatus = new ProjectStatus(
+// null, // [闈炵┖]
+// null, //
+// null, //
+// null, //
+// null, //
+// null, //
+// null, //
+// null, //
+// null, //
+// null, //
+// null, //
+// null, //
+// null //
+// );
+
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+
+ public Integer getStatusId() {
+ return statusId;
+ }
+
+ public void setStatusId(Integer statusId) {
+ this.statusId = statusId;
+ }
+
+ public String getStatusName() {
+ return statusName;
+ }
+
+ public void setStatusName(String statusName) {
+ this.statusName = statusName;
+ }
+
+ public Integer getType() {
+ return type;
+ }
+
+ public void setType(Integer type) {
+ this.type = type;
+ }
+
+ public Integer getStatusClass() {
+ return statusClass;
+ }
+
+ public void setStatusClass(Integer statusClass) {
+ this.statusClass = statusClass;
+ }
+
+ public String getMemo() {
+ return memo;
+ }
+
+ public void setMemo(String memo) {
+ this.memo = memo;
+ }
+
+ public String getCreateId() {
+ return createId;
+ }
+
+ public void setCreateId(String createId) {
+ this.createId = createId;
+ }
+
+ public Date getCreateTime() {
+ return createTime;
+ }
+
+ public String getCreateTime$(){
+ if (Cools.isEmpty(this.createTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime);
+ }
+
+ public void setCreateTime(Date createTime) {
+ this.createTime = createTime;
+ }
+
+ public String getModifyId() {
+ return modifyId;
+ }
+
+ public void setModifyId(String modifyId) {
+ this.modifyId = modifyId;
+ }
+
+ public Date getModifyTime() {
+ return modifyTime;
+ }
+
+ public String getModifyTime$(){
+ if (Cools.isEmpty(this.modifyTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.modifyTime);
+ }
+
+ public void setModifyTime(Date modifyTime) {
+ this.modifyTime = modifyTime;
+ }
+
+ public String getStr1() {
+ return str1;
+ }
+
+ public void setStr1(String str1) {
+ this.str1 = str1;
+ }
+
+ public String getStr2() {
+ return str2;
+ }
+
+ public void setStr2(String str2) {
+ this.str2 = str2;
+ }
+
+ public String getStr3() {
+ return str3;
+ }
+
+ public void setStr3(String str3) {
+ this.str3 = str3;
+ }
+
+
+}
diff --git a/src/main/java/zy/cloud/wms/manager/entity/ProjectType.java b/src/main/java/zy/cloud/wms/manager/entity/ProjectType.java
new file mode 100644
index 0000000..f56df81
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/manager/entity/ProjectType.java
@@ -0,0 +1,144 @@
+package zy.cloud.wms.manager.entity;
+
+import com.core.common.Cools;import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.enums.IdType;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotations.TableField;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+
+import com.baomidou.mybatisplus.annotations.TableName;
+import java.io.Serializable;
+
+@TableName("sys_project_type")
+public class ProjectType implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty(value= "")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Integer id;
+
+ @ApiModelProperty(value= "")
+ @TableField("type_id")
+ private Integer typeId;
+
+ @ApiModelProperty(value= "")
+ @TableField("type_name")
+ private String typeName;
+
+ @ApiModelProperty(value= "")
+ @TableField("type_status")
+ private Integer typeStatus;
+
+ @ApiModelProperty(value= "")
+ @TableField("type_class")
+ private Integer typeClass;
+
+ @ApiModelProperty(value= "")
+ @TableField("str_1")
+ private String str1;
+
+ @ApiModelProperty(value= "")
+ @TableField("str_2")
+ private String str2;
+
+ @ApiModelProperty(value= "")
+ @TableField("str_3")
+ private String str3;
+
+ public ProjectType() {}
+
+ public ProjectType(Integer id,Integer typeId,String typeName,Integer typeStatus,Integer typeClass,String str1,String str2,String str3) {
+ this.id = id;
+ this.typeId = typeId;
+ this.typeName = typeName;
+ this.typeStatus = typeStatus;
+ this.typeClass = typeClass;
+ this.str1 = str1;
+ this.str2 = str2;
+ this.str3 = str3;
+ }
+
+// ProjectType projectType = new ProjectType(
+// null, // [闈炵┖]
+// null, //
+// null, //
+// null, //
+// null, //
+// null, //
+// null, //
+// null //
+// );
+
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+
+ public Integer getTypeId() {
+ return typeId;
+ }
+
+ public void setTypeId(Integer typeId) {
+ this.typeId = typeId;
+ }
+
+ public String getTypeName() {
+ return typeName;
+ }
+
+ public void setTypeName(String typeName) {
+ this.typeName = typeName;
+ }
+
+ public Integer getTypeStatus() {
+ return typeStatus;
+ }
+
+ public void setTypeStatus(Integer typeStatus) {
+ this.typeStatus = typeStatus;
+ }
+
+ public Integer getTypeClass() {
+ return typeClass;
+ }
+
+ public void setTypeClass(Integer typeClass) {
+ this.typeClass = typeClass;
+ }
+
+ public String getStr1() {
+ return str1;
+ }
+
+ public void setStr1(String str1) {
+ this.str1 = str1;
+ }
+
+ public String getStr2() {
+ return str2;
+ }
+
+ public void setStr2(String str2) {
+ this.str2 = str2;
+ }
+
+ public String getStr3() {
+ return str3;
+ }
+
+ public void setStr3(String str3) {
+ this.str3 = str3;
+ }
+
+
+}
diff --git a/src/main/java/zy/cloud/wms/manager/mapper/ProjectPlanMapper.java b/src/main/java/zy/cloud/wms/manager/mapper/ProjectPlanMapper.java
new file mode 100644
index 0000000..777338d
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/manager/mapper/ProjectPlanMapper.java
@@ -0,0 +1,12 @@
+package zy.cloud.wms.manager.mapper;
+
+import zy.cloud.wms.manager.entity.ProjectPlan;
+import com.baomidou.mybatisplus.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+@Mapper
+@Repository
+public interface ProjectPlanMapper extends BaseMapper<ProjectPlan> {
+
+}
diff --git a/src/main/java/zy/cloud/wms/manager/mapper/ProjectStatusMapper.java b/src/main/java/zy/cloud/wms/manager/mapper/ProjectStatusMapper.java
new file mode 100644
index 0000000..ebdbd94
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/manager/mapper/ProjectStatusMapper.java
@@ -0,0 +1,12 @@
+package zy.cloud.wms.manager.mapper;
+
+import zy.cloud.wms.manager.entity.ProjectStatus;
+import com.baomidou.mybatisplus.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+@Mapper
+@Repository
+public interface ProjectStatusMapper extends BaseMapper<ProjectStatus> {
+
+}
diff --git a/src/main/java/zy/cloud/wms/manager/mapper/ProjectTypeMapper.java b/src/main/java/zy/cloud/wms/manager/mapper/ProjectTypeMapper.java
new file mode 100644
index 0000000..43220b3
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/manager/mapper/ProjectTypeMapper.java
@@ -0,0 +1,12 @@
+package zy.cloud.wms.manager.mapper;
+
+import zy.cloud.wms.manager.entity.ProjectType;
+import com.baomidou.mybatisplus.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+@Mapper
+@Repository
+public interface ProjectTypeMapper extends BaseMapper<ProjectType> {
+
+}
diff --git a/src/main/java/zy/cloud/wms/manager/service/ProjectPlanService.java b/src/main/java/zy/cloud/wms/manager/service/ProjectPlanService.java
new file mode 100644
index 0000000..e66b71b
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/manager/service/ProjectPlanService.java
@@ -0,0 +1,8 @@
+package zy.cloud.wms.manager.service;
+
+import zy.cloud.wms.manager.entity.ProjectPlan;
+import com.baomidou.mybatisplus.service.IService;
+
+public interface ProjectPlanService extends IService<ProjectPlan> {
+
+}
diff --git a/src/main/java/zy/cloud/wms/manager/service/ProjectStatusService.java b/src/main/java/zy/cloud/wms/manager/service/ProjectStatusService.java
new file mode 100644
index 0000000..9fd57ff
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/manager/service/ProjectStatusService.java
@@ -0,0 +1,8 @@
+package zy.cloud.wms.manager.service;
+
+import zy.cloud.wms.manager.entity.ProjectStatus;
+import com.baomidou.mybatisplus.service.IService;
+
+public interface ProjectStatusService extends IService<ProjectStatus> {
+
+}
diff --git a/src/main/java/zy/cloud/wms/manager/service/ProjectTypeService.java b/src/main/java/zy/cloud/wms/manager/service/ProjectTypeService.java
new file mode 100644
index 0000000..ae4be99
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/manager/service/ProjectTypeService.java
@@ -0,0 +1,8 @@
+package zy.cloud.wms.manager.service;
+
+import zy.cloud.wms.manager.entity.ProjectType;
+import com.baomidou.mybatisplus.service.IService;
+
+public interface ProjectTypeService extends IService<ProjectType> {
+
+}
diff --git a/src/main/java/zy/cloud/wms/manager/service/impl/ProjectPlanServiceImpl.java b/src/main/java/zy/cloud/wms/manager/service/impl/ProjectPlanServiceImpl.java
new file mode 100644
index 0000000..2c651fd
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/manager/service/impl/ProjectPlanServiceImpl.java
@@ -0,0 +1,12 @@
+package zy.cloud.wms.manager.service.impl;
+
+import zy.cloud.wms.manager.mapper.ProjectPlanMapper;
+import zy.cloud.wms.manager.entity.ProjectPlan;
+import zy.cloud.wms.manager.service.ProjectPlanService;
+import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+@Service("projectPlanService")
+public class ProjectPlanServiceImpl extends ServiceImpl<ProjectPlanMapper, ProjectPlan> implements ProjectPlanService {
+
+}
diff --git a/src/main/java/zy/cloud/wms/manager/service/impl/ProjectStatusServiceImpl.java b/src/main/java/zy/cloud/wms/manager/service/impl/ProjectStatusServiceImpl.java
new file mode 100644
index 0000000..0d5ddcc
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/manager/service/impl/ProjectStatusServiceImpl.java
@@ -0,0 +1,12 @@
+package zy.cloud.wms.manager.service.impl;
+
+import zy.cloud.wms.manager.mapper.ProjectStatusMapper;
+import zy.cloud.wms.manager.entity.ProjectStatus;
+import zy.cloud.wms.manager.service.ProjectStatusService;
+import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+@Service("projectStatusService")
+public class ProjectStatusServiceImpl extends ServiceImpl<ProjectStatusMapper, ProjectStatus> implements ProjectStatusService {
+
+}
diff --git a/src/main/java/zy/cloud/wms/manager/service/impl/ProjectTypeServiceImpl.java b/src/main/java/zy/cloud/wms/manager/service/impl/ProjectTypeServiceImpl.java
new file mode 100644
index 0000000..0aa1fa8
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/manager/service/impl/ProjectTypeServiceImpl.java
@@ -0,0 +1,12 @@
+package zy.cloud.wms.manager.service.impl;
+
+import zy.cloud.wms.manager.mapper.ProjectTypeMapper;
+import zy.cloud.wms.manager.entity.ProjectType;
+import zy.cloud.wms.manager.service.ProjectTypeService;
+import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+@Service("projectTypeService")
+public class ProjectTypeServiceImpl extends ServiceImpl<ProjectTypeMapper, ProjectType> implements ProjectTypeService {
+
+}
diff --git a/src/main/resources/mapper/ProjectPlanMapper.xml b/src/main/resources/mapper/ProjectPlanMapper.xml
new file mode 100644
index 0000000..d80a17f
--- /dev/null
+++ b/src/main/resources/mapper/ProjectPlanMapper.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="zy.cloud.wms.manager.mapper.ProjectPlanMapper">
+
+ <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+ <resultMap id="BaseResultMap" type="zy.cloud.wms.manager.entity.ProjectPlan">
+ <id column="id" property="id" />
+ <result column="item_id" property="itemId" />
+ <result column="weight_num" property="weightNum" />
+ <result column="flow_id" property="flowId" />
+ <result column="start_time" property="startTime" />
+ <result column="real_start_time" property="realStartTime" />
+ <result column="end_time" property="endTime" />
+ <result column="real_end_time" property="realEndTime" />
+ <result column="delay" property="delay" />
+ <result column="delay_reason" property="delayReason" />
+ <result column="memo" property="memo" />
+ <result column="duty_department" property="dutyDepartment" />
+ <result column="duty_man" property="dutyMan" />
+ <result column="create_time" property="createTime" />
+ <result column="create_id" property="createId" />
+ <result column="modify_time" property="modifyTime" />
+ <result column="modify_id" property="modifyId" />
+ <result column="flow_name" property="flowName" />
+
+ </resultMap>
+
+</mapper>
diff --git a/src/main/resources/mapper/ProjectStatusMapper.xml b/src/main/resources/mapper/ProjectStatusMapper.xml
new file mode 100644
index 0000000..4771056
--- /dev/null
+++ b/src/main/resources/mapper/ProjectStatusMapper.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="zy.cloud.wms.manager.mapper.ProjectStatusMapper">
+
+ <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+ <resultMap id="BaseResultMap" type="zy.cloud.wms.manager.entity.ProjectStatus">
+ <result column="id" property="id" />
+ <result column="status_id" property="statusId" />
+ <result column="status_name" property="statusName" />
+ <result column="type" property="type" />
+ <result column="status_class" property="statusClass" />
+ <result column="memo" property="memo" />
+ <result column="create_id" property="createId" />
+ <result column="create_time" property="createTime" />
+ <result column="modify_id" property="modifyId" />
+ <result column="modify_time" property="modifyTime" />
+ <result column="str_1" property="str1" />
+ <result column="str_2" property="str2" />
+ <result column="str_3" property="str3" />
+
+ </resultMap>
+
+</mapper>
diff --git a/src/main/resources/mapper/ProjectTypeMapper.xml b/src/main/resources/mapper/ProjectTypeMapper.xml
new file mode 100644
index 0000000..3e71407
--- /dev/null
+++ b/src/main/resources/mapper/ProjectTypeMapper.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="zy.cloud.wms.manager.mapper.ProjectTypeMapper">
+
+ <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+ <resultMap id="BaseResultMap" type="zy.cloud.wms.manager.entity.ProjectType">
+ <result column="id" property="id" />
+ <result column="type_id" property="typeId" />
+ <result column="type_name" property="typeName" />
+ <result column="type_status" property="typeStatus" />
+ <result column="type_class" property="typeClass" />
+ <result column="str_1" property="str1" />
+ <result column="str_2" property="str2" />
+ <result column="str_3" property="str3" />
+
+ </resultMap>
+
+</mapper>
diff --git a/src/main/webapp/static/js/cstmr/cstmr.js b/src/main/webapp/static/js/cstmr/cstmr.js
index 75ecfbb..97b7e06 100644
--- a/src/main/webapp/static/js/cstmr/cstmr.js
+++ b/src/main/webapp/static/js/cstmr/cstmr.js
@@ -23,7 +23,7 @@
{type: 'checkbox'}
// ,{field: 'id', align: 'center',title: 'ID'}
// ,{field: 'uuid', align: 'center',title: '瀹㈡埛缂栧彿'}
- ,{field: 'userCode', align: "center", title: '瀹㈡埛浠g爜'}
+ ,{field: 'userCode', align: "center", title: '瀹㈡埛缂栧彿'}
,{field: 'name', align: 'center',title: '瀹㈡埛鍚嶇О'}
,{field: 'contacts', align: 'center',title: '鑱旂郴浜�'}
,{field: 'tel', align: 'center',title: '鑱旂郴鐢佃瘽'}
diff --git a/src/main/webapp/static/js/flowStatus/flowStatus.js b/src/main/webapp/static/js/flowStatus/flowStatus.js
index 7853818..2198ddd 100644
--- a/src/main/webapp/static/js/flowStatus/flowStatus.js
+++ b/src/main/webapp/static/js/flowStatus/flowStatus.js
@@ -22,12 +22,12 @@
cols: [[
{type: 'checkbox'}
,{field: 'id', align: 'center',title: '鍞竴id'}
- ,{field: 'type', align: 'center',title: '鑺傜偣绫诲瀷'}
+ ,{field: 'type', align: 'center',title: '鑺傜偣绫诲瀷', hide:true}
,{field: 'name', align: 'center',title: '鑺傜偣鍚嶇О'}
- ,{field: 'memo', align: 'center',title: '澶囨敞'}
- ,{field: 'str1', align: 'center',title: ''}
- ,{field: 'str2', align: 'center',title: ''}
- ,{field: 'str3', align: 'center',title: ''}
+ ,{field: 'memo', align: 'center',title: '澶囨敞', width: 100}
+ // ,{field: 'str1', align: 'center',title: ''}
+ // ,{field: 'str2', align: 'center',title: ''}
+ // ,{field: 'str3', align: 'center',title: ''}
,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:150}
]],
diff --git a/src/main/webapp/static/js/item/item.js b/src/main/webapp/static/js/item/item.js
index ee2c360..47cd5ad 100644
--- a/src/main/webapp/static/js/item/item.js
+++ b/src/main/webapp/static/js/item/item.js
@@ -25,15 +25,15 @@
// ,{field: 'hostId', align: 'center',title: ''}
,{field: 'uuid', align: 'center',title: '椤圭洰缂栧彿'}
,{field: 'name', align: 'center',title: '椤圭洰鍚嶇О'}
- // ,{field: 'inUuid', align: 'center',title: '鍐呴儴缂栧彿'}
+ ,{field: 'inUuid', align: 'center',title: '鍐呴儴缂栧彿', hide: true}
// ,{field: 'cstmrUuid', align: 'center',title: '瀹㈡埛缂栧彿'}
- ,{field: 'cstmr', align: 'center',title: '瀹㈡埛'}
+ ,{field: 'cstmr', align: 'center',title: '瀹㈡埛鍚嶇О'}
// ,{field: 'member', align: 'center',title: '椤圭洰鎴愬憳'}
// ,{field: 'leader', align: 'center',title: '椤圭洰缁忕悊'}
- ,{field: 'startTime$', align: 'center',title: '寮�濮嬫椂闂�'}
- ,{field: 'realStartTime', align: 'center', title: '鐪熷疄寮�濮嬫椂闂�'}
- ,{field: 'endTime$', align: 'center',title: '缁撴潫鏃堕棿'}
- ,{field: 'realEndTime', align: 'center', title: '鐪熷疄缁撴潫鏃堕棿'}
+ ,{field: 'startTime$', align: 'center',title: '璁″垝寮�濮嬫椂闂�'}
+ ,{field: 'endTime$', align: 'center',title: '璁″垝缁撴潫鏃堕棿'}
+ ,{field: 'realStartTime', align: 'center', title: '瀹為檯寮�濮嬫椂闂�'}
+ ,{field: 'realEndTime', align: 'center', title: '瀹為檯缁撴潫鏃堕棿'}
,{field: 'type', align: 'center', title: '椤圭洰绫诲瀷'}
,{field: 'realMonth', align: 'center', title: '鏃堕棿璺ㄥ害(鏈�)'}
,{field: 'dutyMan', align: 'center', title: '璐d换浜�'}
diff --git a/src/main/webapp/static/js/projectPlan/projectPlan.js b/src/main/webapp/static/js/projectPlan/projectPlan.js
new file mode 100644
index 0000000..38f7715
--- /dev/null
+++ b/src/main/webapp/static/js/projectPlan/projectPlan.js
@@ -0,0 +1,299 @@
+var pageCurr;
+var firstId;
+getItems();
+
+layui.config({
+ base: baseUrl + "/static/layui/lay/modules/"
+}).use(['table','laydate', 'form', 'admin'], function(){
+ var table = layui.table;
+ var $ = layui.jquery;
+ var layer = layui.layer;
+ var layDate = layui.laydate;
+ var form = layui.form;
+ var admin = layui.admin;
+
+ // 鏁版嵁娓叉煋
+ tableIns = table.render({
+ elem: '#projectPlan',
+ headers: {token: localStorage.getItem('token')},
+ url: baseUrl+'/projectPlan/list/auth',
+ page: true,
+ limit: 16,
+ limits: [16, 30, 50, 100, 200, 500],
+ toolbar: '#toolbar',
+ cellMinWidth: 50,
+ where: {
+ target: firstId
+ },
+
+ cols: [[
+ {type: 'checkbox'}
+ // ,{field: 'id', align: 'center',title: '鍞竴ID'}
+ // ,{field: 'itemId', align: 'center',title: '椤圭洰ID'}
+ ,{field: 'flowName', align: 'center',title: '鑺傜偣鍚嶇О'}
+ ,{field: 'weightNum', align: 'center',title: '鏉冮噸鍊�'}
+ // ,{field: 'flowId', align: 'center',title: '鑺傜偣ID'}
+
+ ,{field: 'startTime$', align: 'center',title: '璁″垝寮�濮嬫椂闂�'}
+ ,{field: 'endTime$', align: 'center',title: '璁″垝缁撴潫鏃堕棿'}
+ ,{field: 'realStartTime$', align: 'center',title: '瀹為檯寮�濮嬫椂闂�'}
+ ,{field: 'realEndTime$', align: 'center',title: '瀹為檯缁撴潫鏃堕棿'}
+ ,{field: 'delay', align: 'center',title: '寤舵湡澶╂暟'}
+ ,{field: 'delayReason', align: 'center',title: '寤舵湡鍘熷洜'}
+ ,{field: 'memo', align: 'center',title: '澶囨敞'}
+ ,{field: 'dutyDepartment', align: 'center',title: '璐d换閮ㄩ棬'}
+ ,{field: 'dutyMan', align: 'center',title: '璐d换浜�'}
+ ,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:150}
+ ]],
+ request: {
+ pageName: 'curr',
+ pageSize: 'limit'
+ },
+ parseData: function (res) {
+ return {
+ 'code': res.code,
+ 'msg': res.msg,
+ 'count': res.data.total,
+ 'data': res.data.records
+ }
+ },
+ response: {
+ statusCode: 200
+ },
+ done: function(res, curr, count) {
+ if (res.code === 403) {
+ top.location.href = baseUrl+"/";
+ }
+ pageCurr=curr;
+ limit();
+ }
+ });
+
+ // 鐩戝惉鎺掑簭浜嬩欢
+ table.on('sort(projectPlan)', function (obj) {
+ var searchData = {};
+ $.each($('#search-box [name]').serializeArray(), function() {
+ searchData[this.name] = this.value;
+ });
+ searchData['orderByField'] = obj.field;
+ searchData['orderByType'] = obj.type;
+ tableIns.reload({
+ where: searchData,
+ page: {curr: 1}
+ });
+ });
+
+ // 鐩戝惉澶村伐鍏锋爮浜嬩欢
+ table.on('toolbar(projectPlan)', function (obj) {
+ var checkStatus = table.checkStatus(obj.config.id).data;
+ switch(obj.event) {
+ case 'addData':
+ showEditModel();
+ break;
+ case 'deleteData':
+ if (checkStatus.length === 0) {
+ layer.msg('璇烽�夋嫨瑕佸垹闄ょ殑鏁版嵁', {icon: 2});
+ return;
+ }
+ var ids = checkStatus.map(function (d) {
+ return d.id;
+ });
+ del(ids);
+ break;
+ case 'exportData':
+ layer.confirm('纭畾瀵煎嚭Excel鍚�', {shadeClose: true}, function(){
+ var titles=[];
+ var fields=[];
+ obj.config.cols[0].map(function (col) {
+ if (col.type === 'normal' && col.hide === false && col.toolbar == null) {
+ titles.push(col.title);
+ fields.push(col.field);
+ }
+ });
+ var exportData = {};
+ $.each($('#search-box [name]').serializeArray(), function() {
+ exportData[this.name] = this.value;
+ });
+ var param = {
+ 'projectPlan': exportData,
+ 'fields': fields
+ };
+ $.ajax({
+ url: baseUrl+"/projectPlan/export/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: JSON.stringify(param),
+ dataType:'json',
+ contentType:'application/json;charset=UTF-8',
+ method: 'POST',
+ success: function (res) {
+ layer.closeAll();
+ if (res.code === 200) {
+ table.exportFile(titles,res.data,'xls');
+ } else if (res.code === 403) {
+ top.location.href = baseUrl+"/";
+ } else {
+ layer.msg(res.msg, {icon: 2})
+ }
+ }
+ });
+ });
+ break;
+ }
+ });
+
+ // 鐩戝惉琛屽伐鍏蜂簨浠�
+ table.on('tool(projectPlan)', function(obj){
+ var data = obj.data;
+ switch (obj.event) {
+ case 'edit':
+ showEditModel(data);
+ break;
+ case "del":
+ var ids = [data.id];
+ del(ids);
+ break;
+ }
+ });
+
+ /* 寮圭獥 - 鏂板銆佷慨鏀� */
+ function showEditModel(mData) {
+ admin.open({
+ type: 1,
+ area: '600px',
+ title: (mData ? '淇敼' : '娣诲姞') + '璁㈠崟鐘舵��',
+ content: $('#editDialog').html(),
+ success: function (layero, dIndex) {
+ layDateRender();
+ form.val('detail', mData);
+ form.on('submit(editSubmit)', function (data) {
+
+ var loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/projectPlan/"+(mData?'update':'add')+"/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: data.field,
+ method: 'POST',
+ success: function (res) {
+ layer.close(loadIndex);
+ if (res.code === 200){
+ layer.close(dIndex);
+ layer.msg(res.msg, {icon: 1});
+ tableReload();
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ }else {
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ })
+ return false;
+ });
+ $(layero).children('.layui-layer-content').css('overflow', 'visible');
+ layui.form.render('select');
+ }
+ });
+ }
+
+ /* 鍒犻櫎 */
+ function del(ids) {
+ layer.confirm('纭畾瑕佸垹闄ら�変腑鏁版嵁鍚楋紵', {
+ skin: 'layui-layer-admin',
+ shade: .1
+ }, function (i) {
+ layer.close(i);
+ var loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/projectPlan/delete/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: {ids: ids},
+ method: 'POST',
+ success: function (res) {
+ layer.close(loadIndex);
+ if (res.code === 200){
+ layer.msg(res.msg, {icon: 1});
+ tableReload();
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ } else {
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ })
+ });
+ }
+
+ // 鎼滅储
+ form.on('submit(search)', function (data) {
+ pageCurr = 1;
+ tableReload(false);
+ });
+
+ // 閲嶇疆
+ form.on('submit(reset)', function (data) {
+ pageCurr = 1;
+ clearFormVal($('#search-box'));
+ tableReload(false);
+ });
+
+ // 鏃堕棿閫夋嫨鍣�
+ function layDateRender() {
+ layDate.render({
+ elem: '#startTime\\$',
+ type: 'datetime'
+ });
+ layDate.render({
+ elem: '#realStartTime\\$',
+ type: 'datetime'
+ });
+ layDate.render({
+ elem: '#endTime\\$',
+ type: 'datetime'
+ });
+ layDate.render({
+ elem: '#realEndTime\\$',
+ type: 'datetime'
+ });
+ layDate.render({
+ elem: '#createTime\\$',
+ type: 'datetime'
+ });
+ layDate.render({
+ elem: '#modifyTime\\$',
+ type: 'datetime'
+ });
+
+ }
+ layDateRender();
+
+});
+
+// 鍏抽棴鍔ㄤ綔
+$(document).on('click','#data-detail-close', function () {
+ parent.layer.closeAll();
+});
+
+function tableReload(child) {
+ var searchData = {};
+ $.each($('#search-box [name]').serializeArray(), function() {
+ searchData[this.name] = this.value;
+ });
+ tableIns.reload({
+ where: searchData,
+ page: {curr: pageCurr}
+ });
+}
+
+function getItems(el) {
+ http.post(baseUrl + "/projectPlan/allProjects", null,function (res) {
+
+ if (res.data != null) {
+ // console.log(res.data[0].key)
+ firstId = res.data[0].key;
+ var tpl = $("#parentNodeGroup").html();
+ var template = Handlebars.compile(tpl);
+ var html = template(res);
+ $('#items').append(html);
+
+ }
+ });
+}
\ No newline at end of file
diff --git a/src/main/webapp/static/js/projectStatus/projectStatus.js b/src/main/webapp/static/js/projectStatus/projectStatus.js
new file mode 100644
index 0000000..e200852
--- /dev/null
+++ b/src/main/webapp/static/js/projectStatus/projectStatus.js
@@ -0,0 +1,259 @@
+var pageCurr;
+layui.config({
+ base: baseUrl + "/static/layui/lay/modules/"
+}).use(['table','laydate', 'form', 'admin'], function(){
+ var table = layui.table;
+ var $ = layui.jquery;
+ var layer = layui.layer;
+ var layDate = layui.laydate;
+ var form = layui.form;
+ var admin = layui.admin;
+
+ // 鏁版嵁娓叉煋
+ tableIns = table.render({
+ elem: '#projectStatus',
+ headers: {token: localStorage.getItem('token')},
+ url: baseUrl+'/projectStatus/list/auth',
+ page: true,
+ limit: 16,
+ limits: [16, 30, 50, 100, 200, 500],
+ toolbar: '#toolbar',
+ cellMinWidth: 50,
+ cols: [[
+ {type: 'checkbox'}
+ ,{field: 'id', align: 'center',title: '鍞竴ID'}
+ // ,{field: 'statusId', align: 'center',title: ''}
+ ,{field: 'statusName', align: 'center',title: '鐘舵�佸悕绉�'}
+ // ,{field: 'type', align: 'center',title: ''}
+ // ,{field: 'statusClass', align: 'center',title: ''}
+ ,{field: 'memo', align: 'center',title: '澶囨敞',width: 100}
+ // ,{field: 'createId', align: 'center',title: ''}
+ // ,{field: 'createTime$', align: 'center',title: ''}
+ // ,{field: 'modifyId', align: 'center',title: ''}
+ // ,{field: 'modifyTime$', align: 'center',title: ''}
+ // ,{field: 'str1', align: 'center',title: ''}
+ // ,{field: 'str2', align: 'center',title: ''}
+ // ,{field: 'str3', align: 'center',title: ''}
+
+ ,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:150}
+ ]],
+ request: {
+ pageName: 'curr',
+ pageSize: 'limit'
+ },
+ parseData: function (res) {
+ return {
+ 'code': res.code,
+ 'msg': res.msg,
+ 'count': res.data.total,
+ 'data': res.data.records
+ }
+ },
+ response: {
+ statusCode: 200
+ },
+ done: function(res, curr, count) {
+ if (res.code === 403) {
+ top.location.href = baseUrl+"/";
+ }
+ pageCurr=curr;
+ limit();
+ }
+ });
+
+ // 鐩戝惉鎺掑簭浜嬩欢
+ table.on('sort(projectStatus)', function (obj) {
+ var searchData = {};
+ $.each($('#search-box [name]').serializeArray(), function() {
+ searchData[this.name] = this.value;
+ });
+ searchData['orderByField'] = obj.field;
+ searchData['orderByType'] = obj.type;
+ tableIns.reload({
+ where: searchData,
+ page: {curr: 1}
+ });
+ });
+
+ // 鐩戝惉澶村伐鍏锋爮浜嬩欢
+ table.on('toolbar(projectStatus)', function (obj) {
+ var checkStatus = table.checkStatus(obj.config.id).data;
+ switch(obj.event) {
+ case 'addData':
+ showEditModel();
+ break;
+ case 'deleteData':
+ if (checkStatus.length === 0) {
+ layer.msg('璇烽�夋嫨瑕佸垹闄ょ殑鏁版嵁', {icon: 2});
+ return;
+ }
+ var ids = checkStatus.map(function (d) {
+ return d.id;
+ });
+ del(ids);
+ break;
+ case 'exportData':
+ layer.confirm('纭畾瀵煎嚭Excel鍚�', {shadeClose: true}, function(){
+ var titles=[];
+ var fields=[];
+ obj.config.cols[0].map(function (col) {
+ if (col.type === 'normal' && col.hide === false && col.toolbar == null) {
+ titles.push(col.title);
+ fields.push(col.field);
+ }
+ });
+ var exportData = {};
+ $.each($('#search-box [name]').serializeArray(), function() {
+ exportData[this.name] = this.value;
+ });
+ var param = {
+ 'projectStatus': exportData,
+ 'fields': fields
+ };
+ $.ajax({
+ url: baseUrl+"/projectStatus/export/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: JSON.stringify(param),
+ dataType:'json',
+ contentType:'application/json;charset=UTF-8',
+ method: 'POST',
+ success: function (res) {
+ layer.closeAll();
+ if (res.code === 200) {
+ table.exportFile(titles,res.data,'xls');
+ } else if (res.code === 403) {
+ top.location.href = baseUrl+"/";
+ } else {
+ layer.msg(res.msg, {icon: 2})
+ }
+ }
+ });
+ });
+ break;
+ }
+ });
+
+ // 鐩戝惉琛屽伐鍏蜂簨浠�
+ table.on('tool(projectStatus)', function(obj){
+ var data = obj.data;
+ switch (obj.event) {
+ case 'edit':
+ showEditModel(data);
+ break;
+ case "del":
+ var ids = [data.id];
+ del(ids);
+ break;
+ }
+ });
+
+ /* 寮圭獥 - 鏂板銆佷慨鏀� */
+ function showEditModel(mData) {
+ admin.open({
+ type: 1,
+ area: '600px',
+ title: (mData ? '淇敼' : '娣诲姞') + '璁㈠崟鐘舵��',
+ content: $('#editDialog').html(),
+ success: function (layero, dIndex) {
+ layDateRender();
+ form.val('detail', mData);
+ form.on('submit(editSubmit)', function (data) {
+ var loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/projectStatus/"+(mData?'update':'add')+"/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: data.field,
+ method: 'POST',
+ success: function (res) {
+ layer.close(loadIndex);
+ if (res.code === 200){
+ layer.close(dIndex);
+ layer.msg(res.msg, {icon: 1});
+ tableReload();
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ }else {
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ })
+ return false;
+ });
+ $(layero).children('.layui-layer-content').css('overflow', 'visible');
+ layui.form.render('select');
+ }
+ });
+ }
+
+ /* 鍒犻櫎 */
+ function del(ids) {
+ layer.confirm('纭畾瑕佸垹闄ら�変腑鏁版嵁鍚楋紵', {
+ skin: 'layui-layer-admin',
+ shade: .1
+ }, function (i) {
+ layer.close(i);
+ var loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/projectStatus/delete/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: {ids: ids},
+ method: 'POST',
+ success: function (res) {
+ layer.close(loadIndex);
+ if (res.code === 200){
+ layer.msg(res.msg, {icon: 1});
+ tableReload();
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ } else {
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ })
+ });
+ }
+
+ // 鎼滅储
+ form.on('submit(search)', function (data) {
+ pageCurr = 1;
+ tableReload(false);
+ });
+
+ // 閲嶇疆
+ form.on('submit(reset)', function (data) {
+ pageCurr = 1;
+ clearFormVal($('#search-box'));
+ tableReload(false);
+ });
+
+ // 鏃堕棿閫夋嫨鍣�
+ function layDateRender() {
+ layDate.render({
+ elem: '#createTime\\$',
+ type: 'datetime'
+ });
+ layDate.render({
+ elem: '#modifyTime\\$',
+ type: 'datetime'
+ });
+
+ }
+ layDateRender();
+
+});
+
+// 鍏抽棴鍔ㄤ綔
+$(document).on('click','#data-detail-close', function () {
+ parent.layer.closeAll();
+});
+
+function tableReload(child) {
+ var searchData = {};
+ $.each($('#search-box [name]').serializeArray(), function() {
+ searchData[this.name] = this.value;
+ });
+ tableIns.reload({
+ where: searchData,
+ page: {curr: pageCurr}
+ });
+}
diff --git a/src/main/webapp/static/js/projectType/projectType.js b/src/main/webapp/static/js/projectType/projectType.js
new file mode 100644
index 0000000..d270aae
--- /dev/null
+++ b/src/main/webapp/static/js/projectType/projectType.js
@@ -0,0 +1,246 @@
+var pageCurr;
+layui.config({
+ base: baseUrl + "/static/layui/lay/modules/"
+}).use(['table','laydate', 'form', 'admin'], function(){
+ var table = layui.table;
+ var $ = layui.jquery;
+ var layer = layui.layer;
+ var layDate = layui.laydate;
+ var form = layui.form;
+ var admin = layui.admin;
+
+ // 鏁版嵁娓叉煋
+ tableIns = table.render({
+ elem: '#projectType',
+ headers: {token: localStorage.getItem('token')},
+ url: baseUrl+'/projectType/list/auth',
+ page: true,
+ limit: 16,
+ limits: [16, 30, 50, 100, 200, 500],
+ toolbar: '#toolbar',
+ cellMinWidth: 50,
+ cols: [[
+ {type: 'checkbox'}
+ ,{field: 'id', align: 'center',title: '鍞竴ID'}
+ // ,{field: 'typeId', align: 'center',title: ''}
+ ,{field: 'typeName', align: 'center',title: '绫诲瀷鍚嶇О'}
+ // ,{field: 'typeStatus', align: 'center',title: ''}
+ // ,{field: 'typeClass', align: 'center',title: ''}
+ ,{field: 'str1', align: 'center',title: '澶囨敞', width: 100}
+ // ,{field: 'str2', align: 'center',title: ''}
+ // ,{field: 'str3', align: 'center',title: ''}
+
+ ,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:150}
+ ]],
+ request: {
+ pageName: 'curr',
+ pageSize: 'limit'
+ },
+ parseData: function (res) {
+ return {
+ 'code': res.code,
+ 'msg': res.msg,
+ 'count': res.data.total,
+ 'data': res.data.records
+ }
+ },
+ response: {
+ statusCode: 200
+ },
+ done: function(res, curr, count) {
+ if (res.code === 403) {
+ top.location.href = baseUrl+"/";
+ }
+ pageCurr=curr;
+ limit();
+ }
+ });
+
+ // 鐩戝惉鎺掑簭浜嬩欢
+ table.on('sort(projectType)', function (obj) {
+ var searchData = {};
+ $.each($('#search-box [name]').serializeArray(), function() {
+ searchData[this.name] = this.value;
+ });
+ searchData['orderByField'] = obj.field;
+ searchData['orderByType'] = obj.type;
+ tableIns.reload({
+ where: searchData,
+ page: {curr: 1}
+ });
+ });
+
+ // 鐩戝惉澶村伐鍏锋爮浜嬩欢
+ table.on('toolbar(projectType)', function (obj) {
+ var checkStatus = table.checkStatus(obj.config.id).data;
+ switch(obj.event) {
+ case 'addData':
+ showEditModel();
+ break;
+ case 'deleteData':
+ if (checkStatus.length === 0) {
+ layer.msg('璇烽�夋嫨瑕佸垹闄ょ殑鏁版嵁', {icon: 2});
+ return;
+ }
+ var ids = checkStatus.map(function (d) {
+ return d.id;
+ });
+ del(ids);
+ break;
+ case 'exportData':
+ layer.confirm('纭畾瀵煎嚭Excel鍚�', {shadeClose: true}, function(){
+ var titles=[];
+ var fields=[];
+ obj.config.cols[0].map(function (col) {
+ if (col.type === 'normal' && col.hide === false && col.toolbar == null) {
+ titles.push(col.title);
+ fields.push(col.field);
+ }
+ });
+ var exportData = {};
+ $.each($('#search-box [name]').serializeArray(), function() {
+ exportData[this.name] = this.value;
+ });
+ var param = {
+ 'projectType': exportData,
+ 'fields': fields
+ };
+ $.ajax({
+ url: baseUrl+"/projectType/export/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: JSON.stringify(param),
+ dataType:'json',
+ contentType:'application/json;charset=UTF-8',
+ method: 'POST',
+ success: function (res) {
+ layer.closeAll();
+ if (res.code === 200) {
+ table.exportFile(titles,res.data,'xls');
+ } else if (res.code === 403) {
+ top.location.href = baseUrl+"/";
+ } else {
+ layer.msg(res.msg, {icon: 2})
+ }
+ }
+ });
+ });
+ break;
+ }
+ });
+
+ // 鐩戝惉琛屽伐鍏蜂簨浠�
+ table.on('tool(projectType)', function(obj){
+ var data = obj.data;
+ switch (obj.event) {
+ case 'edit':
+ showEditModel(data);
+ break;
+ case "del":
+ var ids = [data.id];
+ del(ids);
+ break;
+ }
+ });
+
+ /* 寮圭獥 - 鏂板銆佷慨鏀� */
+ function showEditModel(mData) {
+ admin.open({
+ type: 1,
+ area: '600px',
+ title: (mData ? '淇敼' : '娣诲姞') + '璁㈠崟鐘舵��',
+ content: $('#editDialog').html(),
+ success: function (layero, dIndex) {
+ layDateRender();
+ form.val('detail', mData);
+ form.on('submit(editSubmit)', function (data) {
+ var loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/projectType/"+(mData?'update':'add')+"/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: data.field,
+ method: 'POST',
+ success: function (res) {
+ layer.close(loadIndex);
+ if (res.code === 200){
+ layer.close(dIndex);
+ layer.msg(res.msg, {icon: 1});
+ tableReload();
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ }else {
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ })
+ return false;
+ });
+ $(layero).children('.layui-layer-content').css('overflow', 'visible');
+ layui.form.render('select');
+ }
+ });
+ }
+
+ /* 鍒犻櫎 */
+ function del(ids) {
+ layer.confirm('纭畾瑕佸垹闄ら�変腑鏁版嵁鍚楋紵', {
+ skin: 'layui-layer-admin',
+ shade: .1
+ }, function (i) {
+ layer.close(i);
+ var loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/projectType/delete/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: {ids: ids},
+ method: 'POST',
+ success: function (res) {
+ layer.close(loadIndex);
+ if (res.code === 200){
+ layer.msg(res.msg, {icon: 1});
+ tableReload();
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ } else {
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ })
+ });
+ }
+
+ // 鎼滅储
+ form.on('submit(search)', function (data) {
+ pageCurr = 1;
+ tableReload(false);
+ });
+
+ // 閲嶇疆
+ form.on('submit(reset)', function (data) {
+ pageCurr = 1;
+ clearFormVal($('#search-box'));
+ tableReload(false);
+ });
+
+ // 鏃堕棿閫夋嫨鍣�
+ function layDateRender() {
+
+ }
+ layDateRender();
+
+});
+
+// 鍏抽棴鍔ㄤ綔
+$(document).on('click','#data-detail-close', function () {
+ parent.layer.closeAll();
+});
+
+function tableReload(child) {
+ var searchData = {};
+ $.each($('#search-box [name]').serializeArray(), function() {
+ searchData[this.name] = this.value;
+ });
+ tableIns.reload({
+ where: searchData,
+ page: {curr: pageCurr}
+ });
+}
diff --git a/src/main/webapp/views/cstmr/cstmr.html b/src/main/webapp/views/cstmr/cstmr.html
index cd5cc6e..44c0a9a 100644
--- a/src/main/webapp/views/cstmr/cstmr.html
+++ b/src/main/webapp/views/cstmr/cstmr.html
@@ -64,7 +64,7 @@
<div class="layui-col-md6">
<div class="layui-form-item">
<label class="layui-form-label">
- 瀹㈡埛浠e彿:
+ 瀹㈡埛缂栧彿:
</label>
<div class="layui-input-block">
<input class="layui-input" name="userCode" placeholder="璇疯緭鍏ュ鎴蜂唬鍙�(鑻辨枃)">
diff --git a/src/main/webapp/views/flowStatus/flowStatus.html b/src/main/webapp/views/flowStatus/flowStatus.html
index 7c5a711..2e37146 100644
--- a/src/main/webapp/views/flowStatus/flowStatus.html
+++ b/src/main/webapp/views/flowStatus/flowStatus.html
@@ -56,16 +56,16 @@
<input name="id" type="hidden">
<div class="layui-row">
<div class="layui-col-md12">
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">鑺傜偣绫诲瀷: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="type" placeholder="璇疯緭鍏ヨ妭鐐圭被鍨�">-->
+<!-- </div>-->
+<!-- </div>-->
<div class="layui-form-item">
- <label class="layui-form-label">鑺傜偣绫诲瀷: </label>
+ <label class="layui-form-label layui-form-required">鑺傜偣鍚嶇О: </label>
<div class="layui-input-block">
- <input class="layui-input" name="type" placeholder="璇疯緭鍏ヨ妭鐐圭被鍨�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鑺傜偣鍚嶇О: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="name" placeholder="璇疯緭鍏ヨ妭鐐瑰悕绉�">
+ <input class="layui-input" name="name" placeholder="璇疯緭鍏ヨ妭鐐瑰悕绉�" lay-verify="required" lay-vertype="tips">
</div>
</div>
<div class="layui-form-item">
@@ -74,24 +74,24 @@
<input class="layui-input" name="memo" placeholder="璇疯緭鍏ュ娉�">
</div>
</div>
- <div class="layui-form-item">
- <label class="layui-form-label">: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="str1" placeholder="璇疯緭鍏�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="str2" placeholder="璇疯緭鍏�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="str3" placeholder="璇疯緭鍏�">
- </div>
- </div>
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="str1" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="str2" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="str3" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
</div>
</div>
diff --git a/src/main/webapp/views/item/item.html b/src/main/webapp/views/item/item.html
index 18ff943..7299baf 100644
--- a/src/main/webapp/views/item/item.html
+++ b/src/main/webapp/views/item/item.html
@@ -63,9 +63,9 @@
</div>
</div>
<div class="layui-form-item">
- <label class="layui-form-label">椤圭洰鍚嶇О: </label>
+ <label class="layui-form-label layui-form-required">椤圭洰鍚嶇О: </label>
<div class="layui-input-block">
- <input class="layui-input" name="name" placeholder="璇疯緭鍏ラ」鐩悕绉�">
+ <input class="layui-input" name="name" placeholder="璇疯緭鍏ラ」鐩悕绉�" lay-vertype="tips" lay-verify="required">
</div>
</div>
<div class="layui-form-item">
@@ -74,40 +74,48 @@
<input class="layui-input" name="inUuid" placeholder="璇疯緭鍏ュ唴閮ㄧ紪鍙�">
</div>
</div>
+
+
<div class="layui-form-item">
- <label class="layui-form-label">瀹㈡埛缂栧彿: </label>
+ <label class="layui-form-label layui-form-required">瀹㈡埛缂栧彿: </label>
<div class="layui-input-block">
- <input class="layui-input" name="cstmrUuid" placeholder="璇疯緭鍏ュ鎴风紪鍙�">
+ <input class="layui-input" name="cstmrUuid" placeholder="璇疯緭鍏ュ鎴峰悕绉�" lay-vertype="tips" lay-verify="required">
+ </div>
+ </div>
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">瀹㈡埛: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="cstmr" placeholder="璇疯緭鍏ュ鎴�">-->
+<!-- </div>-->
+<!-- </div>-->
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">璁″垝寮�濮嬫椂闂�: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="startTime" id="startTime$" placeholder="璇疯緭鍏ュ紑濮嬫椂闂�" lay-vertype="tips" lay-verify="required">
</div>
</div>
<div class="layui-form-item">
- <label class="layui-form-label">瀹㈡埛: </label>
+ <label class="layui-form-label layui-form-required">璁″垝缁撴潫鏃堕棿: </label>
<div class="layui-input-block">
- <input class="layui-input" name="cstmr" placeholder="璇疯緭鍏ュ鎴�">
+ <input class="layui-input" name="endTime" id="endTime$" placeholder="璇疯緭鍏ョ粨鏉熸椂闂�" lay-vertype="tips" lay-verify="required">
</div>
</div>
<div class="layui-form-item">
- <label class="layui-form-label">寮�濮嬫椂闂�: </label>
+ <label class="layui-form-label">瀹為檯寮�濮嬫椂闂�: </label>
<div class="layui-input-block">
- <input class="layui-input" name="startTime" id="startTime$" placeholder="璇疯緭鍏ュ紑濮嬫椂闂�">
+ <input class="layui-input" name="realStartTime" id="realStartTime$" placeholder="鍙┖濉�,绛夊緟鐪熷疄椤圭洰鍚姩鍐嶅~">
</div>
</div>
<div class="layui-form-item">
- <label class="layui-form-label">鐪熷疄寮�濮嬫椂闂�: </label>
+ <label class="layui-form-label">瀹為檯缁撴潫鏃堕棿: </label>
<div class="layui-input-block">
- <input class="layui-input" name="realStartTime" id="realStartTime$" placeholder="璇疯緭鍏ュ紑濮嬫椂闂�">
+ <input class="layui-input" name="realEndTime" id="realEndTime$" placeholder="鍙┖濉�,绛夊緟鐪熷疄椤圭洰缁撴潫鍐嶅~">
</div>
</div>
<div class="layui-form-item">
- <label class="layui-form-label">缁撴潫鏃堕棿: </label>
+ <label class="layui-form-label layui-form-required">椤圭洰绫诲瀷: </label>
<div class="layui-input-block">
- <input class="layui-input" name="endTime" id="endTime$" placeholder="璇疯緭鍏ョ粨鏉熸椂闂�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鐪熷疄缁撴潫鏃堕棿: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="realEndTime" id="realEndTime$" placeholder="璇疯緭鍏ョ粨鏉熸椂闂�">
+ <input class="layui-input" name="type" placeholder="璇疯緭鍏ラ」鐩被鍨�" lay-vertype="tips" lay-verify="required">
</div>
</div>
<div class="layui-form-item">
@@ -138,25 +146,26 @@
<input class="layui-input" name="dutyDepartment" id="dutyDepartment$" placeholder="璇疯緭鍏ヨ矗浠婚儴闂�">
</div>
</div>
- <div class="layui-form-item">
- <label class="layui-form-label">娣诲姞浜哄憳: </label>
- <div class="layui-input-block cool-auto-complete">
- <input class="layui-input" name="createBy" placeholder="璇疯緭鍏ユ坊鍔犱汉鍛�" style="display: none">
- <input id="createBy$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="璇疯緭鍏ユ坊鍔犱汉鍛�" onfocus=this.blur()>
- <div class="cool-auto-complete-window">
- <input class="cool-auto-complete-window-input" data-key="userQueryBycreateBy" onkeyup="autoLoad(this.getAttribute('data-key'))">
- <select class="cool-auto-complete-window-select" data-key="userQueryBycreateBySelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple">
- </select>
- </div>
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">娣诲姞鏃堕棿: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="createTime" id="createTime$" placeholder="璇疯緭鍏ユ坊鍔犳椂闂�">
- </div>
- </div>
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">娣诲姞浜哄憳: </label>-->
+<!-- <div class="layui-input-block cool-auto-complete">-->
+<!-- <input class="layui-input" name="createBy" placeholder="璇疯緭鍏ユ坊鍔犱汉鍛�" style="display: none">-->
+<!-- <input id="createBy$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="璇疯緭鍏ユ坊鍔犱汉鍛�" onfocus=this.blur()>-->
+<!-- <div class="cool-auto-complete-window">-->
+<!-- <input class="cool-auto-complete-window-input" data-key="userQueryBycreateBy" onkeyup="autoLoad(this.getAttribute('data-key'))">-->
+<!-- <select class="cool-auto-complete-window-select" data-key="userQueryBycreateBySelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple">-->
+<!-- </select>-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- </div>-->
+
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">娣诲姞鏃堕棿: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="createTime" id="createTime$" placeholder="璇疯緭鍏ユ坊鍔犳椂闂�">-->
+<!-- </div>-->
+<!-- </div>-->
<div class="layui-form-item">
<label class="layui-form-label">澶囨敞: </label>
<div class="layui-input-block">
diff --git a/src/main/webapp/views/projectPlan/projectPlan.html b/src/main/webapp/views/projectPlan/projectPlan.html
new file mode 100644
index 0000000..4c30103
--- /dev/null
+++ b/src/main/webapp/views/projectPlan/projectPlan.html
@@ -0,0 +1,188 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset="utf-8">
+ <title></title>
+ <meta name="renderer" content="webkit">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+ <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+ <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
+ <link rel="stylesheet" href="../../static/css/admin.css?v=318" media="all">
+ <link rel="stylesheet" href="../../static/css/cool.css" media="all">
+ <link rel="stylesheet" href="../../static/css/common.css" media="all">
+
+</head>
+<body>
+
+<!-- 鎼滅储鏍� -->
+<div id="search-box" class="layui-form layui-card-header">
+ <div class="layui-inline">
+ <label class="layui-form-label">褰撳墠椤圭洰: </label>
+ <div class="layui-input-inline">
+ <select id="items" name="items" lay-search="">
+ </select>
+ </div>
+ </div>
+<!-- <div class="layui-inline">-->
+<!-- <div class="layui-input-inline">-->
+<!-- <input class="layui-input" type="text" name="id" placeholder="缂栧彿" autocomplete="off">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <!– 寰呮坊鍔� –>-->
+<!-- <div id="data-search-btn" class="layui-btn-container layui-form-item">-->
+<!-- <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">鎼滅储</button>-->
+<!-- <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">閲嶇疆</button>-->
+<!-- </div>-->
+</div>
+
+<!-- 琛ㄦ牸 -->
+<div class="layui-form">
+ <table class="layui-hide" id="projectPlan" lay-filter="projectPlan"></table>
+</div>
+<script type="text/html" id="toolbar">
+ <div class="layui-btn-container">
+ <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">鏂板</button>
+ <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData">鍒犻櫎</button>
+ <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData">瀵煎嚭</button>
+ </div>
+</script>
+
+<script type="text/html" id="operate">
+ <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">淇敼</a>
+ <a class="layui-btn layui-btn-danger layui-btn-xs btn-edit" lay-event="del">鍒犻櫎</a>
+</script>
+
+<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
+<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/projectPlan/projectPlan.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/handlebars/handlebars-v4.5.3.js" charset="utf-8"></script>
+</body>
+<!-- 琛ㄥ崟寮圭獥 -->
+<script type="text/html" id="editDialog">
+ <form id="detail" lay-filter="detail" class="layui-form admin-form">
+ <input name="id" type="hidden">
+ <div class="layui-row">
+ <div class="layui-col-md12">
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label layui-form-required">椤圭洰ID: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="itemId" placeholder="璇疯緭鍏ラ」鐩甀D" lay-vertype="tips" lay-verify="required">-->
+<!-- </div>-->
+<!-- </div>-->
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">鏉冮噸鍊�: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="weightNum" placeholder="璇疯緭鍏ユ潈閲岻D" lay-vertype="tips" lay-verify="required">
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">鑺傜偣ID: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="flowId" placeholder="璇疯緭鍏ヨ妭鐐笽D" lay-vertype="tips" lay-verify="required">
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">璁″垝寮�濮嬫椂闂�: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="startTime" id="startTime$" placeholder="璇疯緭鍏ヨ鍒掑紑濮嬫椂闂�" lay-vertype="tips" lay-verify="required">
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">璁″垝缁撴潫鏃堕棿: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="endTime" id="endTime$" placeholder="璇疯緭鍏ヨ鍒掔粨鏉熸椂闂�" lay-vertype="tips" lay-verify="required">
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label">瀹為檯寮�濮嬫椂闂�: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="realStartTime" id="realStartTime$" placeholder="璇疯緭鍏ュ疄闄呭紑濮嬫椂闂�">
+ </div>
+ </div>
+
+ <div class="layui-form-item">
+ <label class="layui-form-label">瀹為檯缁撴潫鏃堕棿: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="realEndTime" id="realEndTime$" placeholder="璇疯緭鍏ュ疄闄呯粨鏉熸椂闂�">
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label">寤舵湡澶╂暟: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="delay" placeholder="璇疯緭鍏ュ欢鏈熷ぉ鏁�">
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label">寤舵湡鍘熷洜: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="delayReason" placeholder="璇疯緭鍏ュ欢鏈熷師鍥�">
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label">澶囨敞: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="memo" placeholder="璇疯緭鍏ュ娉�">
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label">璐d换閮ㄩ棬: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="dutyDepartment" placeholder="璇疯緭鍏ヨ矗浠婚儴闂�">
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label">璐d换浜�: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="dutyMan" placeholder="璇疯緭鍏ヨ矗浠讳汉">
+ </div>
+ </div>
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">鍒涘缓鏃堕棿: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="createTime" id="createTime$" placeholder="璇疯緭鍏ュ垱寤烘椂闂�">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">鍒涘缓浜篿d: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="createId" placeholder="璇疯緭鍏ュ垱寤轰汉id">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">淇敼鏃堕棿: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="modifyTime" id="modifyTime$" placeholder="璇疯緭鍏ヤ慨鏀规椂闂�">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">淇敼浜篿d: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="modifyId" placeholder="璇疯緭鍏ヤ慨鏀逛汉id">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">鑺傜偣鍚嶇О: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="flowName" placeholder="璇疯緭鍏ヨ妭鐐瑰悕绉�">-->
+<!-- </div>-->
+<!-- </div>-->
+
+<!-- </div>-->
+ </div>
+ <hr class="layui-bg-gray">
+ <div class="layui-form-item text-right">
+ <button class="layui-btn" lay-filter="editSubmit" lay-submit="">淇濆瓨</button>
+ <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button>
+ </div>
+ </form>
+</script>
+<script type="text/template" id="parentNodeGroup">
+ {{#each data}}
+ <option value="{{this.key}}">{{this.val}}</option>
+ {{/each}}
+</script>
+
+</html>
+
diff --git a/src/main/webapp/views/projectStatus/projectStatus.html b/src/main/webapp/views/projectStatus/projectStatus.html
new file mode 100644
index 0000000..3d5f7b4
--- /dev/null
+++ b/src/main/webapp/views/projectStatus/projectStatus.html
@@ -0,0 +1,148 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset="utf-8">
+ <title></title>
+ <meta name="renderer" content="webkit">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+ <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+ <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
+ <link rel="stylesheet" href="../../static/css/admin.css?v=318" media="all">
+ <link rel="stylesheet" href="../../static/css/cool.css" media="all">
+ <link rel="stylesheet" href="../../static/css/common.css" media="all">
+</head>
+<body>
+
+<!-- 鎼滅储鏍� -->
+<div id="search-box" class="layui-form layui-card-header">
+ <div class="layui-inline">
+ <div class="layui-input-inline">
+ <input class="layui-input" type="text" name="id" placeholder="缂栧彿" autocomplete="off">
+ </div>
+ </div>
+ <!-- 寰呮坊鍔� -->
+ <div id="data-search-btn" class="layui-btn-container layui-form-item">
+ <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">鎼滅储</button>
+ <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">閲嶇疆</button>
+ </div>
+</div>
+
+<!-- 琛ㄦ牸 -->
+<div class="layui-form">
+ <table class="layui-hide" id="projectStatus" lay-filter="projectStatus"></table>
+</div>
+<script type="text/html" id="toolbar">
+ <div class="layui-btn-container">
+ <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">鏂板</button>
+ <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData">鍒犻櫎</button>
+ <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData">瀵煎嚭</button>
+ </div>
+</script>
+
+<script type="text/html" id="operate">
+ <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">淇敼</a>
+ <a class="layui-btn layui-btn-danger layui-btn-xs btn-edit" lay-event="del">鍒犻櫎</a>
+</script>
+
+<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
+<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/projectStatus/projectStatus.js" charset="utf-8"></script>
+</body>
+<!-- 琛ㄥ崟寮圭獥 -->
+<script type="text/html" id="editDialog">
+ <form id="detail" lay-filter="detail" class="layui-form admin-form">
+ <input name="id" type="hidden">
+ <div class="layui-row">
+ <div class="layui-col-md12">
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label layui-form-required">ID: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="id" placeholder="璇疯緭鍏ュ敮涓�ID" lay-vertype="tips" lay-verify="required" type="number">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="statusId" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">鐘舵�佸悕绉�: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="statusName" placeholder="璇疯緭鍏�" lay-vertype="tips" lay-verify="required">
+ </div>
+ </div>
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="type" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="statusClass" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
+ <div class="layui-form-item">
+ <label class="layui-form-label">澶囨敞: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="memo" placeholder="璇疯緭鍏�">
+ </div>
+ </div>
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="createId" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="createTime" id="createTime$" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="modifyId" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="modifyTime" id="modifyTime$" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="str1" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="str2" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="str3" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
+
+<!-- </div>-->
+ </div>
+ <hr class="layui-bg-gray">
+ <div class="layui-form-item text-right">
+ <button class="layui-btn" lay-filter="editSubmit" lay-submit="">淇濆瓨</button>
+ <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button>
+ </div>
+ </form>
+</script>
+</html>
+
diff --git a/src/main/webapp/views/projectType/projectType.html b/src/main/webapp/views/projectType/projectType.html
new file mode 100644
index 0000000..2a47dc6
--- /dev/null
+++ b/src/main/webapp/views/projectType/projectType.html
@@ -0,0 +1,118 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset="utf-8">
+ <title></title>
+ <meta name="renderer" content="webkit">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+ <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+ <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
+ <link rel="stylesheet" href="../../static/css/admin.css?v=318" media="all">
+ <link rel="stylesheet" href="../../static/css/cool.css" media="all">
+ <link rel="stylesheet" href="../../static/css/common.css" media="all">
+</head>
+<body>
+
+<!-- 鎼滅储鏍� -->
+<div id="search-box" class="layui-form layui-card-header">
+ <div class="layui-inline">
+ <div class="layui-input-inline">
+ <input class="layui-input" type="text" name="id" placeholder="缂栧彿" autocomplete="off">
+ </div>
+ </div>
+ <!-- 寰呮坊鍔� -->
+ <div id="data-search-btn" class="layui-btn-container layui-form-item">
+ <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">鎼滅储</button>
+ <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">閲嶇疆</button>
+ </div>
+</div>
+
+<!-- 琛ㄦ牸 -->
+<div class="layui-form">
+ <table class="layui-hide" id="projectType" lay-filter="projectType"></table>
+</div>
+<script type="text/html" id="toolbar">
+ <div class="layui-btn-container">
+ <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">鏂板</button>
+ <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData">鍒犻櫎</button>
+ <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData">瀵煎嚭</button>
+ </div>
+</script>
+
+<script type="text/html" id="operate">
+ <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">淇敼</a>
+ <a class="layui-btn layui-btn-danger layui-btn-xs btn-edit" lay-event="del">鍒犻櫎</a>
+</script>
+
+<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
+<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/projectType/projectType.js" charset="utf-8"></script>
+</body>
+<!-- 琛ㄥ崟寮圭獥 -->
+<script type="text/html" id="editDialog">
+ <form id="detail" lay-filter="detail" class="layui-form admin-form">
+ <input name="id" type="hidden">
+ <div class="layui-row">
+ <div class="layui-col-md12">
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label layui-form-required">ID: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="id" placeholder="璇疯緭鍏ュ敮涓�鐨勬暟瀛�" lay-vertype="tips" lay-verify="required" type="number">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="typeId" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">鍚嶇О: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="typeName" placeholder="璇疯緭鍏�" lay-vertype="tips" lay-verify="required">
+ </div>
+ </div>
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="typeStatus" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="typeClass" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
+ <div class="layui-form-item">
+ <label class="layui-form-label">澶囨敞: </label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="str1" placeholder="璇疯緭鍏�">
+ </div>
+ </div>
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="str2" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">: </label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input class="layui-input" name="str3" placeholder="璇疯緭鍏�">-->
+<!-- </div>-->
+<!-- </div>-->
+
+ </div>
+ </div>
+ <hr class="layui-bg-gray">
+ <div class="layui-form-item text-right">
+ <button class="layui-btn" lay-filter="editSubmit" lay-submit="">淇濆瓨</button>
+ <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button>
+ </div>
+ </form>
+</script>
+</html>
+
--
Gitblit v1.9.1