Commit 502cf7a198c2c7b117027b7b0bb9c283e48b0a83

Authored by xqs
2 parents 9bc22278 b632ea94

Merge remote-tracking branch 'origin/develop' into develop

# Conflicts:
#	.idea/workspace.xml
Showing 104 changed files with 4810 additions and 1265 deletions
.gitignore
... ... @@ -11,6 +11,8 @@ target/
11 11 *.iml
12 12 *.ipr
13 13 .idea/workspace.xml
  14 +.idea/compiler.xml
  15 +
14 16  
15 17 ### NetBeans ###
16 18 /nbproject/private/
... ...
.idea/MyBatisCodeHelperDatasource.xml
... ... @@ -6,9 +6,9 @@
6 6 <option name="addSerializeUid" value="true" />
7 7 <option name="generateService" value="true" />
8 8 <option name="generateServiceInterface" value="true" />
9   - <option name="javaMapperPackage" value="com.huaheng.pc.system.userWarehousel.mapper" />
  9 + <option name="javaMapperPackage" value="com.huaheng.pc.task.taskPreference.mapper" />
10 10 <option name="javaMapperPath" value="$PROJECT_DIR$/src/main/java" />
11   - <option name="javaModelPackage" value="com.huaheng.pc.system.userWarehousel.domain" />
  11 + <option name="javaModelPackage" value="com.huaheng.pc.task.taskPreference.domain" />
12 12 <option name="javaModelPath" value="$PROJECT_DIR$/src/main/java" />
13 13 <option name="lastDatabaseCrudChooseModuleName" value="huaheng" />
14 14 <option name="moduleNameToPackageAndPathMap">
... ... @@ -30,15 +30,15 @@
30 30 <entry key="huaheng">
31 31 <value>
32 32 <UserPackageAndPathInfoByModule>
33   - <option name="javaMapperPackage" value="com.huaheng.pc.system.userWarehousel.mapper" />
  33 + <option name="javaMapperPackage" value="com.huaheng.pc.task.taskPreference.mapper" />
34 34 <option name="javaMapperPath" value="$PROJECT_DIR$/src/main/java" />
35   - <option name="javaModelPacakge" value="com.huaheng.pc.system.userWarehousel.domain" />
  35 + <option name="javaModelPacakge" value="com.huaheng.pc.task.taskPreference.domain" />
36 36 <option name="javaModelPath" value="$PROJECT_DIR$/src/main/java" />
37   - <option name="javaServiceInterfacePackage" value="com.huaheng.pc.system.userWarehousel.service" />
  37 + <option name="javaServiceInterfacePackage" value="com.huaheng.pc.task.taskPreference.service" />
38 38 <option name="javaServiceInterfacePath" value="$PROJECT_DIR$/src/main/java" />
39   - <option name="javaServicePackage" value="com.huaheng.pc.system.userWarehousel.service" />
  39 + <option name="javaServicePackage" value="com.huaheng.pc.task.taskPreference.service" />
40 40 <option name="javaServicePath" value="$PROJECT_DIR$/src/main/java" />
41   - <option name="xmlPackage" value="system" />
  41 + <option name="xmlPackage" value="task" />
42 42 <option name="xmlPath" value="E:\code\wms2\src\main\resources\mybatis" />
43 43 </UserPackageAndPathInfoByModule>
44 44 </value>
... ... @@ -47,6 +47,16 @@
47 47 </option>
48 48 <option name="tableGenerateConfigs">
49 49 <map>
  50 + <entry key="wms_v2:bom_detail">
  51 + <value>
  52 + <TableGenerateConfig>
  53 + <option name="generatedKey" value="id" />
  54 + <option name="javaModelName" value="BomDetail" />
  55 + <option name="moduleName" value="huaheng" />
  56 + <option name="useActualColumnName" value="true" />
  57 + </TableGenerateConfig>
  58 + </value>
  59 + </entry>
50 60 <entry key="wms_v2:bom_header">
51 61 <value>
52 62 <TableGenerateConfig>
... ... @@ -77,6 +87,16 @@
77 87 </TableGenerateConfig>
78 88 </value>
79 89 </entry>
  90 + <entry key="wms_v2:container_capacity">
  91 + <value>
  92 + <TableGenerateConfig>
  93 + <option name="generatedKey" value="id" />
  94 + <option name="javaModelName" value="ContainerCapacity" />
  95 + <option name="moduleName" value="huaheng" />
  96 + <option name="useActualColumnName" value="true" />
  97 + </TableGenerateConfig>
  98 + </value>
  99 + </entry>
80 100 <entry key="wms_v2:container_type">
81 101 <value>
82 102 <TableGenerateConfig>
... ... @@ -267,6 +287,36 @@
267 287 </TableGenerateConfig>
268 288 </value>
269 289 </entry>
  290 + <entry key="wms_v2:task_detail">
  291 + <value>
  292 + <TableGenerateConfig>
  293 + <option name="generatedKey" value="id" />
  294 + <option name="javaModelName" value="TaskDetail" />
  295 + <option name="moduleName" value="huaheng" />
  296 + <option name="useActualColumnName" value="true" />
  297 + </TableGenerateConfig>
  298 + </value>
  299 + </entry>
  300 + <entry key="wms_v2:task_header">
  301 + <value>
  302 + <TableGenerateConfig>
  303 + <option name="generatedKey" value="id" />
  304 + <option name="javaModelName" value="TaskHeader" />
  305 + <option name="moduleName" value="huaheng" />
  306 + <option name="useActualColumnName" value="true" />
  307 + </TableGenerateConfig>
  308 + </value>
  309 + </entry>
  310 + <entry key="wms_v2:task_preference">
  311 + <value>
  312 + <TableGenerateConfig>
  313 + <option name="generatedKey" value="id" />
  314 + <option name="javaModelName" value="TaskPreference" />
  315 + <option name="moduleName" value="huaheng" />
  316 + <option name="useActualColumnName" value="true" />
  317 + </TableGenerateConfig>
  318 + </value>
  319 + </entry>
270 320 <entry key="wms_v2:zone_capacity">
271 321 <value>
272 322 <TableGenerateConfig>
... ... @@ -283,7 +333,7 @@
283 333 <option name="useLomBokOnModel" value="true" />
284 334 <option name="useSwagger" value="true" />
285 335 <option name="userMybatisPlus" value="true" />
286   - <option name="xmlMapperPackage" value="system" />
  336 + <option name="xmlMapperPackage" value="task" />
287 337 <option name="xmlMapperPath" value="E:\code\wms2\src\main\resources\mybatis" />
288 338 </ProjectProfile>
289 339 </option>
... ...
.idea/libraries/Maven__com_baomidou_mybatis_plus_3_1_2.xml deleted
1   -<component name="libraryTable">
2   - <library name="Maven: com.baomidou:mybatis-plus:3.1.2">
3   - <CLASSES>
4   - <root url="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus/3.1.2/mybatis-plus-3.1.2.jar!/" />
5   - </CLASSES>
6   - <JAVADOC>
7   - <root url="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus/3.1.2/mybatis-plus-3.1.2-javadoc.jar!/" />
8   - </JAVADOC>
9   - <SOURCES>
10   - <root url="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus/3.1.2/mybatis-plus-3.1.2-sources.jar!/" />
11   - </SOURCES>
12   - </library>
13   -</component>
14 0 \ No newline at end of file
.idea/libraries/Maven__com_baomidou_mybatis_plus_annotation_3_1_2.xml deleted
1   -<component name="libraryTable">
2   - <library name="Maven: com.baomidou:mybatis-plus-annotation:3.1.2">
3   - <CLASSES>
4   - <root url="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-annotation/3.1.2/mybatis-plus-annotation-3.1.2.jar!/" />
5   - </CLASSES>
6   - <JAVADOC>
7   - <root url="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-annotation/3.1.2/mybatis-plus-annotation-3.1.2-javadoc.jar!/" />
8   - </JAVADOC>
9   - <SOURCES>
10   - <root url="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-annotation/3.1.2/mybatis-plus-annotation-3.1.2-sources.jar!/" />
11   - </SOURCES>
12   - </library>
13   -</component>
14 0 \ No newline at end of file
.idea/libraries/Maven__com_baomidou_mybatis_plus_boot_starter_3_1_2.xml deleted
1   -<component name="libraryTable">
2   - <library name="Maven: com.baomidou:mybatis-plus-boot-starter:3.1.2">
3   - <CLASSES>
4   - <root url="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-boot-starter/3.1.2/mybatis-plus-boot-starter-3.1.2.jar!/" />
5   - </CLASSES>
6   - <JAVADOC>
7   - <root url="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-boot-starter/3.1.2/mybatis-plus-boot-starter-3.1.2-javadoc.jar!/" />
8   - </JAVADOC>
9   - <SOURCES>
10   - <root url="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-boot-starter/3.1.2/mybatis-plus-boot-starter-3.1.2-sources.jar!/" />
11   - </SOURCES>
12   - </library>
13   -</component>
14 0 \ No newline at end of file
.idea/libraries/Maven__com_baomidou_mybatis_plus_core_3_1_2.xml deleted
1   -<component name="libraryTable">
2   - <library name="Maven: com.baomidou:mybatis-plus-core:3.1.2">
3   - <CLASSES>
4   - <root url="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-core/3.1.2/mybatis-plus-core-3.1.2.jar!/" />
5   - </CLASSES>
6   - <JAVADOC>
7   - <root url="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-core/3.1.2/mybatis-plus-core-3.1.2-javadoc.jar!/" />
8   - </JAVADOC>
9   - <SOURCES>
10   - <root url="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-core/3.1.2/mybatis-plus-core-3.1.2-sources.jar!/" />
11   - </SOURCES>
12   - </library>
13   -</component>
14 0 \ No newline at end of file
.idea/libraries/Maven__com_baomidou_mybatis_plus_extension_3_1_2.xml deleted
1   -<component name="libraryTable">
2   - <library name="Maven: com.baomidou:mybatis-plus-extension:3.1.2">
3   - <CLASSES>
4   - <root url="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-extension/3.1.2/mybatis-plus-extension-3.1.2.jar!/" />
5   - </CLASSES>
6   - <JAVADOC>
7   - <root url="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-extension/3.1.2/mybatis-plus-extension-3.1.2-javadoc.jar!/" />
8   - </JAVADOC>
9   - <SOURCES>
10   - <root url="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-extension/3.1.2/mybatis-plus-extension-3.1.2-sources.jar!/" />
11   - </SOURCES>
12   - </library>
13   -</component>
14 0 \ No newline at end of file
.idea/libraries/Maven__commons_fileupload_commons_fileupload_1_4.xml deleted
1   -<component name="libraryTable">
2   - <library name="Maven: commons-fileupload:commons-fileupload:1.4">
3   - <CLASSES>
4   - <root url="jar://$MAVEN_REPOSITORY$/commons-fileupload/commons-fileupload/1.4/commons-fileupload-1.4.jar!/" />
5   - </CLASSES>
6   - <JAVADOC>
7   - <root url="jar://$MAVEN_REPOSITORY$/commons-fileupload/commons-fileupload/1.4/commons-fileupload-1.4-javadoc.jar!/" />
8   - </JAVADOC>
9   - <SOURCES>
10   - <root url="jar://$MAVEN_REPOSITORY$/commons-fileupload/commons-fileupload/1.4/commons-fileupload-1.4-sources.jar!/" />
11   - </SOURCES>
12   - </library>
13   -</component>
14 0 \ No newline at end of file
.idea/libraries/Maven__org_mybatis_mybatis_3_5_1.xml deleted
1   -<component name="libraryTable">
2   - <library name="Maven: org.mybatis:mybatis:3.5.1">
3   - <CLASSES>
4   - <root url="jar://$MAVEN_REPOSITORY$/org/mybatis/mybatis/3.5.1/mybatis-3.5.1.jar!/" />
5   - </CLASSES>
6   - <JAVADOC>
7   - <root url="jar://$MAVEN_REPOSITORY$/org/mybatis/mybatis/3.5.1/mybatis-3.5.1-javadoc.jar!/" />
8   - </JAVADOC>
9   - <SOURCES>
10   - <root url="jar://$MAVEN_REPOSITORY$/org/mybatis/mybatis/3.5.1/mybatis-3.5.1-sources.jar!/" />
11   - </SOURCES>
12   - </library>
13   -</component>
14 0 \ No newline at end of file
.idea/libraries/Maven__org_mybatis_mybatis_spring_2_0_1.xml deleted
1   -<component name="libraryTable">
2   - <library name="Maven: org.mybatis:mybatis-spring:2.0.1">
3   - <CLASSES>
4   - <root url="jar://$MAVEN_REPOSITORY$/org/mybatis/mybatis-spring/2.0.1/mybatis-spring-2.0.1.jar!/" />
5   - </CLASSES>
6   - <JAVADOC>
7   - <root url="jar://$MAVEN_REPOSITORY$/org/mybatis/mybatis-spring/2.0.1/mybatis-spring-2.0.1-javadoc.jar!/" />
8   - </JAVADOC>
9   - <SOURCES>
10   - <root url="jar://$MAVEN_REPOSITORY$/org/mybatis/mybatis-spring/2.0.1/mybatis-spring-2.0.1-sources.jar!/" />
11   - </SOURCES>
12   - </library>
13   -</component>
14 0 \ No newline at end of file
.idea/libraries/Maven__org_projectlombok_lombok_1_18_8.xml deleted
1   -<component name="libraryTable">
2   - <library name="Maven: org.projectlombok:lombok:1.18.8">
3   - <CLASSES>
4   - <root url="jar://$MAVEN_REPOSITORY$/org/projectlombok/lombok/1.18.8/lombok-1.18.8.jar!/" />
5   - </CLASSES>
6   - <JAVADOC>
7   - <root url="jar://$MAVEN_REPOSITORY$/org/projectlombok/lombok/1.18.8/lombok-1.18.8-javadoc.jar!/" />
8   - </JAVADOC>
9   - <SOURCES>
10   - <root url="jar://$MAVEN_REPOSITORY$/org/projectlombok/lombok/1.18.8/lombok-1.18.8-sources.jar!/" />
11   - </SOURCES>
12   - </library>
13   -</component>
14 0 \ No newline at end of file
src/main/java/com/huaheng/pc/config/containerCapacity/controller/ContainerCapacityController.java 0 → 100644
  1 +package com.huaheng.pc.config.containerCapacity.controller;
  2 +
  3 +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  4 +import com.baomidou.mybatisplus.core.metadata.IPage;
  5 +import com.baomidou.mybatisplus.core.toolkit.Wrappers;
  6 +import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  7 +import com.huaheng.common.support.Convert;
  8 +import com.huaheng.common.utils.StringUtils;
  9 +import com.huaheng.common.utils.security.ShiroUtils;
  10 +import com.huaheng.framework.aspectj.lang.annotation.Log;
  11 +import com.huaheng.framework.aspectj.lang.constant.BusinessType;
  12 +import com.huaheng.framework.web.controller.BaseController;
  13 +import com.huaheng.framework.web.domain.AjaxResult;
  14 +import com.huaheng.framework.web.page.PageDomain;
  15 +import com.huaheng.framework.web.page.TableDataInfo;
  16 +import com.huaheng.framework.web.page.TableSupport;
  17 +import com.huaheng.pc.config.containerCapacity.domain.ContainerCapacity;
  18 +import com.huaheng.pc.config.containerCapacity.service.ContainerCapacityService;
  19 +import com.huaheng.pc.general.material.domain.Material;
  20 +import com.huaheng.pc.general.material.service.MaterialService;
  21 +import org.apache.shiro.authz.annotation.RequiresPermissions;
  22 +import org.springframework.beans.factory.annotation.Autowired;
  23 +import org.springframework.stereotype.Controller;
  24 +import org.springframework.ui.ModelMap;
  25 +import org.springframework.web.bind.annotation.*;
  26 +
  27 +import java.util.List;
  28 +
  29 +/**
  30 + * 容器容量值
  31 + * 信息操作处理
  32 + *
  33 + * @author ricard
  34 + * @date 2019-08-12
  35 + */
  36 +@Controller
  37 +@RequestMapping("/config/containerCapacity")
  38 +public class ContainerCapacityController extends BaseController {
  39 +
  40 + private String prefix = "config/containerCapacity";
  41 +
  42 + @Autowired
  43 + private ContainerCapacityService containerCapacityService;
  44 +
  45 + @Autowired
  46 + private MaterialService materialService;
  47 +
  48 + @RequiresPermissions("config:containerCapacity:view")
  49 + @GetMapping()
  50 + public String containerCapacity()
  51 + {
  52 + return prefix + "/containerCapacity";
  53 + }
  54 +
  55 + /**
  56 + * 查询容器容量列表
  57 + */
  58 + @RequiresPermissions("config:containerCapacity:list")
  59 + @Log(title = "配置-容器容量设置", operating = "查看容器容量", action = BusinessType.GRANT)
  60 + @PostMapping("/list")
  61 + @ResponseBody
  62 + public TableDataInfo list(ContainerCapacity containerCapacity,String createdBegin, String createdEnd)
  63 + {
  64 + LambdaQueryWrapper<ContainerCapacity> lambdaQueryWrapper = Wrappers.lambdaQuery();
  65 + PageDomain pageDomain = TableSupport.buildPageRequest();
  66 + Integer pageNum = pageDomain.getPageNum();
  67 + Integer pageSize = pageDomain.getPageSize();
  68 +
  69 + lambdaQueryWrapper.ge(StringUtils.isNotEmpty(createdBegin),ContainerCapacity::getCreated, createdBegin)
  70 + .le(StringUtils.isNotEmpty(createdEnd), ContainerCapacity::getCreated, createdEnd)
  71 + .eq(ContainerCapacity::getWarehouseCode,ShiroUtils.getWarehouseCode())
  72 + .eq(StringUtils.isNotEmpty(containerCapacity.getMaterialCode()),ContainerCapacity::getMaterialCode,containerCapacity.getMaterialCode())
  73 + .eq(StringUtils.isNotEmpty(containerCapacity.getContainerType()), ContainerCapacity::getContainerType, containerCapacity.getContainerType())
  74 + .like(StringUtils.isNotEmpty(containerCapacity.getMaterialName()), ContainerCapacity::getMaterialName, containerCapacity.getMaterialName())
  75 + .orderByAsc(ContainerCapacity::getId);
  76 +
  77 + if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)){
  78 + /**
  79 + * 使用分页查询
  80 + */
  81 + Page<ContainerCapacity> page = new Page<>(pageNum, pageSize);
  82 + IPage<ContainerCapacity> iPage = containerCapacityService.page(page, lambdaQueryWrapper);
  83 + return getMpDataTable(iPage.getRecords(),iPage.getTotal());
  84 + } else {
  85 + List<ContainerCapacity> list = containerCapacityService.list(lambdaQueryWrapper);
  86 + return getDataTable(list);
  87 + }
  88 + }
  89 +
  90 +
  91 + /**
  92 + * 新增容器容量数据
  93 + */
  94 + @GetMapping("/add")
  95 + public String add()
  96 + {
  97 + return prefix + "/add";
  98 + }
  99 +
  100 + /**
  101 + * 新增保存容器容量数据
  102 + */
  103 + @RequiresPermissions("config:containerCapacity:add")
  104 + @Log(title = "配置-容器容量设置", operating = "新增容器容量", action = BusinessType.INSERT)
  105 + @PostMapping("/add")
  106 + @ResponseBody
  107 + public AjaxResult addSave(ContainerCapacity containerCapacity)
  108 + {
  109 + AjaxResult ajaxResult=containerCapacityService.insertModel(containerCapacity);
  110 + return ajaxResult;
  111 + }
  112 +
  113 + /**
  114 + * 修改容器容量
  115 + */
  116 + @GetMapping("/edit/{id}")
  117 + public String edit(@PathVariable("id") Integer id, ModelMap mmap)
  118 + {
  119 + ContainerCapacity containerCapacity = containerCapacityService.getById(id);
  120 + mmap.put("containerCapacity", containerCapacity);
  121 + return prefix + "/edit";
  122 + }
  123 +
  124 + /**
  125 + * 修改保存容器容量
  126 + */
  127 + @RequiresPermissions("config:containerCapacity:edit")
  128 + @Log(title = "配置-容器容量设置", operating = "修改容器容量", action = BusinessType.UPDATE)
  129 + @PostMapping("/edit")
  130 + @ResponseBody
  131 + public AjaxResult editSave(ContainerCapacity containerCapacity)
  132 + {
  133 + containerCapacity.setLastUpdatedBy(ShiroUtils.getLoginName());
  134 + return toAjax(containerCapacityService.saveOrUpdate(containerCapacity));
  135 + }
  136 +
  137 + /**
  138 + * 删除容器类型
  139 + */
  140 + @RequiresPermissions("config:containerCapacity:remove")
  141 + @Log(title = "配置-容器容量设置", operating = "删除容器容量", action = BusinessType.DELETE)
  142 + @PostMapping( "/remove")
  143 + @ResponseBody
  144 + public AjaxResult remove(String ids)
  145 + {
  146 + if (StringUtils.isEmpty(ids))
  147 + return AjaxResult.error("id不能为空");
  148 + for (Integer id : Convert.toIntArray(ids))
  149 + {
  150 +
  151 + }
  152 + return AjaxResult.success("删除成功!");
  153 + }
  154 +
  155 +
  156 +
  157 +}
... ...
src/main/java/com/huaheng/pc/config/containerCapacity/domain/ContainerCapacity.java 0 → 100644
  1 +package com.huaheng.pc.config.containerCapacity.domain;
  2 +
  3 +import com.baomidou.mybatisplus.annotation.IdType;
  4 +import com.baomidou.mybatisplus.annotation.TableField;
  5 +import com.baomidou.mybatisplus.annotation.TableId;
  6 +import com.baomidou.mybatisplus.annotation.TableName;
  7 +import io.swagger.annotations.ApiModel;
  8 +import io.swagger.annotations.ApiModelProperty;
  9 +import java.io.Serializable;
  10 +import java.math.BigDecimal;
  11 +import java.util.Date;
  12 +import lombok.Data;
  13 +
  14 +@ApiModel(value="com.huaheng.pc.config.containerCapacityl.domain.ContainerCapacity")
  15 +@Data
  16 +@TableName(value = "container_capacity")
  17 +public class ContainerCapacity implements Serializable {
  18 + /**
  19 + * 内部号
  20 + */
  21 + @TableId(value = "id", type = IdType.AUTO)
  22 + @ApiModelProperty(value="内部号")
  23 + private Integer id;
  24 +
  25 + /**
  26 + * 容器类型编码
  27 + */
  28 + @TableField(value = "containerType")
  29 + @ApiModelProperty(value="容器类型编码")
  30 + private String containerType;
  31 +
  32 + /**
  33 + * 仓库编码
  34 + */
  35 + @TableField(value = "warehouseCode")
  36 + @ApiModelProperty(value="仓库编码")
  37 + private String warehouseCode;
  38 +
  39 + /**
  40 + * 货主编码
  41 + */
  42 + @TableField(value = "companyCode")
  43 + @ApiModelProperty(value="货主编码")
  44 + private String companyCode;
  45 +
  46 + /**
  47 + * 商品编码
  48 + */
  49 + @TableField(value = "materialCode")
  50 + @ApiModelProperty(value="商品编码")
  51 + private String materialCode;
  52 +
  53 + /**
  54 + * 商品名称
  55 + */
  56 + @TableField(value = "materialName")
  57 + @ApiModelProperty(value="商品名称")
  58 + private String materialName;
  59 +
  60 + /**
  61 + * 商品规格
  62 + */
  63 + @TableField(value = "materialSpec")
  64 + @ApiModelProperty(value="商品规格")
  65 + private String materialSpec;
  66 +
  67 + /**
  68 + * 商品单位
  69 + */
  70 + @TableField(value = "materialUnit")
  71 + @ApiModelProperty(value="商品单位")
  72 + private String materialUnit;
  73 +
  74 + /**
  75 + * 存放数量
  76 + */
  77 + @TableField(value = "qty")
  78 + @ApiModelProperty(value="存放数量")
  79 + private BigDecimal qty;
  80 +
  81 + /**
  82 + * 启用;0—禁用状态
  83 + */
  84 + @TableField(value = "enable")
  85 + @ApiModelProperty(value="启用;0—禁用状态")
  86 + private Boolean enable;
  87 +
  88 + /**
  89 + * 创建时间
  90 + */
  91 + @TableField(value = "created")
  92 + @ApiModelProperty(value="创建时间")
  93 + private Date created;
  94 +
  95 + /**
  96 + * 创建用户
  97 + */
  98 + @TableField(value = "createdBy")
  99 + @ApiModelProperty(value="创建用户")
  100 + private String createdBy;
  101 +
  102 + /**
  103 + * 创建时间
  104 + */
  105 + @TableField(value = "lastUpdated")
  106 + @ApiModelProperty(value="创建时间")
  107 + private Date lastUpdated;
  108 +
  109 + /**
  110 + * 更新用户
  111 + */
  112 + @TableField(value = "lastUpdatedBy")
  113 + @ApiModelProperty(value="更新用户")
  114 + private String lastUpdatedBy;
  115 +
  116 + /**
  117 + * 数据版本
  118 + */
  119 + @TableField(value = "version")
  120 + @ApiModelProperty(value="数据版本")
  121 + private Integer version;
  122 +
  123 + /**
  124 + * 自定义字段1-robot交互用字段
  125 + */
  126 + @TableField(value = "userDef1")
  127 + @ApiModelProperty(value="自定义字段1-robot交互用字段")
  128 + private String userDef1;
  129 +
  130 + /**
  131 + * 自定义字段2
  132 + */
  133 + @TableField(value = "userDef2")
  134 + @ApiModelProperty(value="自定义字段2")
  135 + private String userDef2;
  136 +
  137 + /**
  138 + * 自定义字段3
  139 + */
  140 + @TableField(value = "userDef3")
  141 + @ApiModelProperty(value="自定义字段3")
  142 + private String userDef3;
  143 +
  144 + /**
  145 + * 自定义字段4
  146 + */
  147 + @TableField(value = "userDef4")
  148 + @ApiModelProperty(value="自定义字段4")
  149 + private String userDef4;
  150 +
  151 + /**
  152 + * 自定义字段5
  153 + */
  154 + @TableField(value = "userDef5")
  155 + @ApiModelProperty(value="自定义字段5")
  156 + private String userDef5;
  157 +
  158 + /**
  159 + * 自定义字段6
  160 + */
  161 + @TableField(value = "userDef6")
  162 + @ApiModelProperty(value="自定义字段6")
  163 + private String userDef6;
  164 +
  165 + /**
  166 + * 自定义字段7
  167 + */
  168 + @TableField(value = "userDef7")
  169 + @ApiModelProperty(value="自定义字段7")
  170 + private String userDef7;
  171 +
  172 + /**
  173 + * 自定义字段8
  174 + */
  175 + @TableField(value = "userDef8")
  176 + @ApiModelProperty(value="自定义字段8")
  177 + private String userDef8;
  178 +
  179 + /**
  180 + * 处理标记
  181 + */
  182 + @TableField(value = "processStamp")
  183 + @ApiModelProperty(value="处理标记")
  184 + private String processStamp;
  185 +
  186 + private static final long serialVersionUID = 1L;
  187 +
  188 + public static final String COL_CONTAINERTYPE = "containerType";
  189 +
  190 + public static final String COL_WAREHOUSECODE = "warehouseCode";
  191 +
  192 + public static final String COL_COMPANYCODE = "companyCode";
  193 +
  194 + public static final String COL_MATERIALCODE = "materialCode";
  195 +
  196 + public static final String COL_MATERIALNAME = "materialName";
  197 +
  198 + public static final String COL_MATERIALSPEC = "materialSpec";
  199 +
  200 + public static final String COL_MATERIALUNIT = "materialUnit";
  201 +
  202 + public static final String COL_QTY = "qty";
  203 +
  204 + public static final String COL_ENABLE = "enable";
  205 +
  206 + public static final String COL_CREATED = "created";
  207 +
  208 + public static final String COL_CREATEDBY = "createdBy";
  209 +
  210 + public static final String COL_LASTUPDATED = "lastUpdated";
  211 +
  212 + public static final String COL_LASTUPDATEDBY = "lastUpdatedBy";
  213 +
  214 + public static final String COL_VERSION = "version";
  215 +
  216 + public static final String COL_USERDEF1 = "userDef1";
  217 +
  218 + public static final String COL_USERDEF2 = "userDef2";
  219 +
  220 + public static final String COL_USERDEF3 = "userDef3";
  221 +
  222 + public static final String COL_USERDEF4 = "userDef4";
  223 +
  224 + public static final String COL_USERDEF5 = "userDef5";
  225 +
  226 + public static final String COL_USERDEF6 = "userDef6";
  227 +
  228 + public static final String COL_USERDEF7 = "userDef7";
  229 +
  230 + public static final String COL_USERDEF8 = "userDef8";
  231 +
  232 + public static final String COL_PROCESSSTAMP = "processStamp";
  233 +}
0 234 \ No newline at end of file
... ...
src/main/java/com/huaheng/pc/config/containerCapacity/mapper/ContainerCapacityMapper.java 0 → 100644
  1 +package com.huaheng.pc.config.containerCapacity.mapper;
  2 +
  3 +import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  4 +import com.huaheng.pc.config.containerCapacity.domain.ContainerCapacity;
  5 +
  6 +public interface ContainerCapacityMapper extends BaseMapper<ContainerCapacity> {
  7 +}
0 8 \ No newline at end of file
... ...
src/main/java/com/huaheng/pc/config/containerCapacity/service/ContainerCapacityService.java 0 → 100644
  1 +package com.huaheng.pc.config.containerCapacity.service;
  2 +
  3 +import com.huaheng.framework.web.domain.AjaxResult;
  4 +import com.huaheng.pc.config.containerCapacity.domain.ContainerCapacity;
  5 +import com.baomidou.mybatisplus.extension.service.IService;
  6 +public interface ContainerCapacityService extends IService<ContainerCapacity>{
  7 +
  8 +
  9 + //新增容器容量
  10 + AjaxResult insertModel(ContainerCapacity containerCapacity);
  11 +
  12 +}
... ...
src/main/java/com/huaheng/pc/config/containerCapacity/service/ContainerCapacityServiceImpl.java 0 → 100644
  1 +package com.huaheng.pc.config.containerCapacity.service;
  2 +
  3 +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  4 +import com.baomidou.mybatisplus.core.toolkit.Wrappers;
  5 +import com.huaheng.common.utils.StringUtils;
  6 +import com.huaheng.common.utils.security.ShiroUtils;
  7 +import com.huaheng.framework.web.domain.AjaxResult;
  8 +import com.huaheng.pc.config.containerType.domain.ContainerType;
  9 +import com.huaheng.pc.config.containerType.service.ContainerTypeService;
  10 +import com.huaheng.pc.general.material.domain.Material;
  11 +import com.huaheng.pc.general.material.service.MaterialService;
  12 +import org.springframework.beans.factory.annotation.Autowired;
  13 +import org.springframework.stereotype.Service;
  14 +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  15 +import com.huaheng.pc.config.containerCapacity.mapper.ContainerCapacityMapper;
  16 +import com.huaheng.pc.config.containerCapacity.domain.ContainerCapacity;
  17 +
  18 +@Service
  19 +public class ContainerCapacityServiceImpl extends ServiceImpl<ContainerCapacityMapper, ContainerCapacity> implements ContainerCapacityService{
  20 +
  21 + @Autowired
  22 + private MaterialService materialService;
  23 + @Autowired
  24 + private ContainerTypeService containerTypeService;
  25 +
  26 +
  27 + //判断容器类别是否存在,添加容器容量时,查找到该物料的具体信息,一并加入到容器容量中
  28 + @Override
  29 + public AjaxResult insertModel(ContainerCapacity containerCapacity) {
  30 + containerCapacity.setWarehouseCode(ShiroUtils.getWarehouseCode());
  31 + containerCapacity.setCreatedBy(ShiroUtils.getLoginName());
  32 + containerCapacity.setLastUpdatedBy(ShiroUtils.getLoginName());
  33 +
  34 + //查找该容器类别信息
  35 + LambdaQueryWrapper<ContainerType> lambdaQueryWrappers = Wrappers.lambdaQuery();
  36 + lambdaQueryWrappers.eq(StringUtils.isNotEmpty(containerCapacity.getContainerType()),ContainerType::getCode, containerCapacity.getContainerType())
  37 + .eq(StringUtils.isNotEmpty(containerCapacity.getWarehouseCode()),ContainerType::getWarehouseCode, containerCapacity.getWarehouseCode());
  38 + ContainerType containerType=containerTypeService.getOne(lambdaQueryWrappers);
  39 + if(containerType==null){
  40 + return AjaxResult.error("系统没有该容器类型");
  41 + }
  42 +
  43 + //查找该物料信息
  44 + LambdaQueryWrapper<Material> lambdaQueryWrapper = Wrappers.lambdaQuery();
  45 + lambdaQueryWrapper.eq(StringUtils.isNotEmpty(containerCapacity.getMaterialCode()),Material::getCode, containerCapacity.getMaterialCode())
  46 + .eq(StringUtils.isNotEmpty(containerCapacity.getWarehouseCode()),Material::getWarehouseCode, containerCapacity.getWarehouseCode());
  47 + Material material=materialService.getOne(lambdaQueryWrapper);
  48 + if(material==null){
  49 + return AjaxResult.error("系统没有该物料");
  50 + }
  51 + containerCapacity.setMaterialName(material.getName());
  52 + containerCapacity.setMaterialSpec(material.getSpec());
  53 + containerCapacity.setMaterialUnit(material.getUnit());
  54 + if(!this.save(containerCapacity)){
  55 + return AjaxResult.error("新增容器容量失败");
  56 + }
  57 + return AjaxResult.success("新增容器容量成功");
  58 + }
  59 +}
... ...
src/main/java/com/huaheng/pc/config/containerType/controller/ContainerTypeController.java
... ... @@ -27,8 +27,8 @@ import java.util.List;
27 27 /**
28 28 * 容器类型 信息操作处理
29 29 *
30   - * @author huaheng
31   - * @date 2018-08-19
  30 + * @author ricard
  31 + * @date 2019-08-12
32 32 */
33 33 @Controller
34 34 @RequestMapping("/config/containerType")
... ...
src/main/java/com/huaheng/pc/config/containerType/domain/ContainerType.java
... ... @@ -53,7 +53,7 @@ public class ContainerType implements Serializable {
53 53 */
54 54 @TableField(value = "enable")
55 55 @ApiModelProperty(value="启用;0—禁用状态")
56   - private Integer enable;
  56 + private Boolean enable;
57 57  
58 58 /**
59 59 * 序号
... ... @@ -116,7 +116,7 @@ public class ContainerType implements Serializable {
116 116 */
117 117 @TableField(value = "useAsDEFAULT")
118 118 @ApiModelProperty(value="作为默认货箱")
119   - private Integer useAsDEFAULT;
  119 + private Boolean useAsDEFAULT;
120 120  
121 121 /**
122 122 * 状态
... ... @@ -373,23 +373,6 @@ public class ContainerType implements Serializable {
373 373 this.companyCode = companyCode;
374 374 }
375 375  
376   - /**
377   - * 获取启用;0—禁用状态
378   - *
379   - * @return enable - 启用;0—禁用状态
380   - */
381   - public Integer getEnable() {
382   - return enable;
383   - }
384   -
385   - /**
386   - * 设置启用;0—禁用状态
387   - *
388   - * @param enable 启用;0—禁用状态
389   - */
390   - public void setEnable(Integer enable) {
391   - this.enable = enable;
392   - }
393 376  
394 377 /**
395 378 * 获取序号
... ... @@ -517,39 +500,33 @@ public class ContainerType implements Serializable {
517 500 this.maxWeight = maxWeight;
518 501 }
519 502  
520   - /**
521   - * 获取装满度
522   - *
523   - * @return fillPercent - 装满度
524   - */
525 503 public Integer getFillPercent() {
526 504 return fillPercent;
527 505 }
528 506  
529   - /**
530   - * 设置装满度
531   - *
532   - * @param fillPercent 装满度
533   - */
534 507 public void setFillPercent(Integer fillPercent) {
535 508 this.fillPercent = fillPercent;
536 509 }
537 510  
538 511 /**
539   - * 获取作为默认货箱
  512 + * 获取装满度
540 513 *
541   - * @return useAsDEFAULT - 作为默认货箱
  514 + * @return fillPercent - 装满度
542 515 */
543   - public Integer getUseAsDEFAULT() {
  516 +
  517 + public Boolean getEnable() {
  518 + return enable;
  519 + }
  520 +
  521 + public void setEnable(Boolean enable) {
  522 + this.enable = enable;
  523 + }
  524 +
  525 + public Boolean getUseAsDEFAULT() {
544 526 return useAsDEFAULT;
545 527 }
546 528  
547   - /**
548   - * 设置作为默认货箱
549   - *
550   - * @param useAsDEFAULT 作为默认货箱
551   - */
552   - public void setUseAsDEFAULT(Integer useAsDEFAULT) {
  529 + public void setUseAsDEFAULT(Boolean useAsDEFAULT) {
553 530 this.useAsDEFAULT = useAsDEFAULT;
554 531 }
555 532  
... ...
src/main/java/com/huaheng/pc/config/locationType/controller/LocationTypeController.java
1 1 package com.huaheng.pc.config.locationType.controller;
2 2  
3   -
4 3 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
5 4 import com.baomidou.mybatisplus.core.metadata.IPage;
6 5 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
... ... @@ -17,133 +16,150 @@ import com.huaheng.framework.web.page.TableDataInfo;
17 16 import com.huaheng.framework.web.page.TableSupport;
18 17 import com.huaheng.pc.config.locationType.domain.LocationType;
19 18 import com.huaheng.pc.config.locationType.service.LocationTypeService;
20   -import com.huaheng.pc.general.location.domain.Location;
21   -import com.huaheng.pc.general.location.service.LocationService;
  19 +import com.huaheng.pc.config.zone.domain.Zone;
  20 +import com.huaheng.pc.config.zone.service.ZoneService;
22 21 import org.apache.shiro.authz.annotation.RequiresPermissions;
23 22 import org.springframework.beans.factory.annotation.Autowired;
24 23 import org.springframework.stereotype.Controller;
25 24 import org.springframework.ui.ModelMap;
26 25 import org.springframework.web.bind.annotation.*;
27 26  
28   -import java.util.Arrays;
29 27 import java.util.List;
30 28  
  29 +/**
  30 + * 库位类型 信息操作处理
  31 + *
  32 + * @author ricard
  33 + * @date 2019-08-12
  34 + */
31 35 @Controller
32 36 @RequestMapping("/config/locationType")
33   -public class LocationTypeController extends BaseController {
34   -
  37 +public class LocationTypeController extends BaseController
  38 +{
35 39 private String prefix = "config/locationType";
36   -
37   - @Autowired
38   - private LocationTypeService locationTypeService;
39   - @Autowired
40   - private LocationService locationService;
41   -
42   - @RequestMapping("config:locationType:view")
43   - @GetMapping()
44   - public String locationType()
45   - {
46   - return prefix + "/locationType";
47   - }
48   -
49   - /**
50   - * 查询库位类型列表
51   - */
52   - @RequiresPermissions("config:locationType:list")
53   - @Log(title = "通用-库位类型管理", operating = "查看库位类型列表", action = BusinessType.GRANT)
54   - @PostMapping("/list")
55   - @ResponseBody
56   - public TableDataInfo list(LocationType locationType,String createdBegin, String createdEnd) {
57   - LambdaQueryWrapper<LocationType> lambdaQueryWrapper = Wrappers.lambdaQuery();
58   - PageDomain pageDomain = TableSupport.buildPageRequest();
59   - Integer pageNum = pageDomain.getPageNum();
60   - Integer pageSize = pageDomain.getPageSize();
61   -
62   - lambdaQueryWrapper.ge(StringUtils.isNotEmpty(createdBegin),LocationType::getCreated, createdBegin)
63   - .le(StringUtils.isNotEmpty(createdEnd), LocationType::getCreated, createdEnd)
64   - .eq(LocationType::getWarehouseCode, ShiroUtils.getWarehouseCode())
65   - .eq(StringUtils.isNotEmpty(locationType.getCode()),LocationType::getCode,locationType.getCode())
66   - .like(StringUtils.isNotEmpty(locationType.getName()),LocationType::getName,locationType.getName());
67   -
68   - if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)){
69   - /**
70   - * 使用分页查询
71   - */
72   - Page<LocationType> page = new Page<>(pageNum, pageSize);
73   - IPage<LocationType> iPage = locationTypeService.page(page, lambdaQueryWrapper);
74   - return getDataTable(iPage.getRecords());
75   - } else {
76   - List<LocationType> list = locationTypeService.list(lambdaQueryWrapper);
77   - return getDataTable(list);
78   - }
79   - }
80   -
81   - /**
82   - * 新增库位类型
83   - */
84   - @GetMapping("/add")
85   - public String add() {
86   - return prefix + "/add";
87   - }
88   -
89   - /**
90   - * 新增保存库位类型
91   - */
92   - @RequiresPermissions("config:locationType:add")
93   - @Log(title = "通用-库位类型管理", operating = "新增库位类型", action = BusinessType.INSERT)
94   - @PostMapping("/add")
95   - @ResponseBody
96   - public AjaxResult addSave(LocationType locationType) {
97   - Boolean result = locationTypeService.save(locationType);
98   - return toAjax(result);
99   - }
100   -
101   - /**
102   - * 修改库位类型
103   - */
104   - @GetMapping("/edit/{id}")
105   - public String edit(@PathVariable("id") Integer id, ModelMap mmap) {
106   - LocationType locationType = locationTypeService.getById(id);
107   - mmap.put("locationType", locationType);
108   - return prefix + "/edit";
109   - }
110   -
111   - /**
112   - * 修改保存库位类型
113   - */
114   - @RequiresPermissions("config:locationType:edit")
115   - @Log(title = "通用-库位类型管理", operating = "修改库位类型", action = BusinessType.UPDATE)
116   - @PostMapping("/edit")
117   - @ResponseBody
118   - public AjaxResult editSave(LocationType locationType) {
119   - locationType.setLastUpdatedBy(ShiroUtils.getLoginName());
120   - Boolean result = locationTypeService.updateById(locationType);
121   - return toAjax(result);
122   - }
123   -
124   - /**
125   - * 删除库位
126   - */
127   - @RequiresPermissions("config:locationType:remove")
128   - @Log(title = "通用-库位类型管理", operating = "删除库位类型", action = BusinessType.DELETE)
129   - @PostMapping( "/remove")
130   - @ResponseBody
131   - public AjaxResult remove(String ids) {
132   - if (StringUtils.isEmpty(ids)){
133   - return AjaxResult.error("id不能为空");
134   - }
135   -
136   - for (Integer id : Convert.toIntArray(ids)) {
137   - LambdaQueryWrapper<Location> lambdaQueryWrapper = Wrappers.lambdaQuery();
138   - lambdaQueryWrapper.eq(Location::getLocationType,id);
139   -
140   - int count = locationService.count(lambdaQueryWrapper);
141   - if (count != 0){
142   - return AjaxResult.error("库位类型id="+id+",存在库位,不能删除。");
143   - }
144   - }
145   - List<Integer> list = Arrays.asList(Convert.toIntArray(ids));
146   - locationTypeService.removeByIds(list);
147   - return AjaxResult.success("删除成功!");
148   - }
  40 +
  41 + @Autowired
  42 + private LocationTypeService locationTypeService;
  43 + @Autowired
  44 + private ZoneService zoneService;
  45 +
  46 + @RequiresPermissions("config:locationType:view")
  47 + @GetMapping()
  48 + public String locationType()
  49 + {
  50 + return prefix + "/locationType";
  51 + }
  52 +
  53 + /**
  54 + * 查询库位类型列表
  55 + */
  56 + @RequiresPermissions("config:locationType:list")
  57 + @Log(title = "配置-库位类型设置", operating = "查看库位类型", action = BusinessType.GRANT)
  58 + @PostMapping("/list")
  59 + @ResponseBody
  60 + public TableDataInfo list(LocationType locationType,String createdBegin, String createdEnd)
  61 + {
  62 + LambdaQueryWrapper<LocationType> lambdaQueryWrapper = Wrappers.lambdaQuery();
  63 + PageDomain pageDomain = TableSupport.buildPageRequest();
  64 + Integer pageNum = pageDomain.getPageNum();
  65 + Integer pageSize = pageDomain.getPageSize();
  66 +
  67 + lambdaQueryWrapper.ge(StringUtils.isNotEmpty(createdBegin),LocationType::getCreated, createdBegin)
  68 + .le(StringUtils.isNotEmpty(createdEnd), LocationType::getCreated, createdEnd)
  69 + .eq(LocationType::getWarehouseCode,ShiroUtils.getWarehouseCode())
  70 + .eq(StringUtils.isNotEmpty(locationType.getCode()), LocationType::getCode, locationType.getCode())
  71 + .like(StringUtils.isNotEmpty(locationType.getName()), LocationType::getName, locationType.getName())
  72 + .orderByAsc(LocationType::getId);
  73 +
  74 + if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)){
  75 + /**
  76 + * 使用分页查询
  77 + */
  78 + Page<LocationType> page = new Page<>(pageNum, pageSize);
  79 + IPage<LocationType> iPage = locationTypeService.page(page, lambdaQueryWrapper);
  80 + return getMpDataTable(iPage.getRecords(),iPage.getTotal());
  81 + } else {
  82 + List<LocationType> list = locationTypeService.list(lambdaQueryWrapper);
  83 + return getDataTable(list);
  84 + }
  85 + }
  86 +
  87 + /**
  88 + * 新增库位类型
  89 + */
  90 + @GetMapping("/add")
  91 + public String add()
  92 + {
  93 + return prefix + "/add";
  94 + }
  95 +
  96 + /**
  97 + * 新增保存库位类型
  98 + */
  99 + @RequiresPermissions("config:locationType:add")
  100 + @Log(title = "配置-库位类型设置", operating = "新增库位类型", action = BusinessType.INSERT)
  101 + @PostMapping("/add")
  102 + @ResponseBody
  103 + public AjaxResult addSave(LocationType locationType)
  104 + {
  105 + if(StringUtils.isEmpty(locationType.getCode())){
  106 + return AjaxResult.error("库位类型为空");
  107 + }
  108 + //查找location,是否存在
  109 + Zone zone=new Zone();
  110 + LambdaQueryWrapper<Zone> lambdaQueryWrapper = Wrappers.lambdaQuery();
  111 + lambdaQueryWrapper.eq(Zone::getLocationType,locationType.getCode())
  112 + .eq(Zone::getWarehouseCode,ShiroUtils.getWarehouseCode());
  113 + zone=zoneService.getOne(lambdaQueryWrapper);
  114 + if(zone==null){
  115 + return AjaxResult.error("系统没有此库位类型");
  116 + }
  117 + locationType.setWarehouseCode(ShiroUtils.getWarehouseCode());
  118 + locationType.setCreatedBy(ShiroUtils.getLoginName());
  119 + locationType.setLastUpdatedBy(ShiroUtils.getLoginName());
  120 + return toAjax(locationTypeService.save(locationType));
  121 + }
  122 +
  123 + /**
  124 + * 修改库位类型
  125 + */
  126 + @GetMapping("/edit/{id}")
  127 + public String edit(@PathVariable("id") Integer id, ModelMap mmap)
  128 + {
  129 + LocationType locationType = locationTypeService.getById(id);
  130 + mmap.put("locationType", locationType);
  131 + return prefix + "/edit";
  132 + }
  133 +
  134 + /**
  135 + * 修改保存库位类型
  136 + */
  137 + @RequiresPermissions("config:locationType:edit")
  138 + @Log(title = "配置-库位类型设置", operating = "修改库位类型", action = BusinessType.UPDATE)
  139 + @PostMapping("/edit")
  140 + @ResponseBody
  141 + public AjaxResult editSave(LocationType locationType)
  142 + {
  143 + locationType.setLastUpdatedBy(ShiroUtils.getLoginName());
  144 + return toAjax(locationTypeService.saveOrUpdate(locationType));
  145 + }
  146 +
  147 + /**
  148 + * 删除库位类型
  149 + */
  150 + @RequiresPermissions("config:locationType:remove")
  151 + @Log(title = "配置-库位类型设置", operating = "删除库位类型", action = BusinessType.DELETE)
  152 + @PostMapping( "/remove")
  153 + @ResponseBody
  154 + public AjaxResult remove(String ids)
  155 + {
  156 + if (StringUtils.isEmpty(ids))
  157 + return AjaxResult.error("id不能为空");
  158 + for (Integer id : Convert.toIntArray(ids))
  159 + {
  160 + locationTypeService.removeById(id);
  161 + }
  162 + return AjaxResult.success("删除成功!");
  163 + }
  164 +
149 165 }
... ...
src/main/java/com/huaheng/pc/config/locationType/domain/LocationType.java
... ... @@ -93,7 +93,7 @@ public class LocationType implements Serializable {
93 93 * 有效
94 94 */
95 95 @TableField(value = "enable")
96   - private Integer enable;
  96 + private Boolean enable;
97 97  
98 98 /**
99 99 * 创建时间
... ...
src/main/java/com/huaheng/pc/config/locationType/service/LocationTypeService.java
... ... @@ -8,5 +8,5 @@ import java.util.Map;
8 8  
9 9 public interface LocationTypeService extends IService<LocationType>{
10 10  
11   - List<Map<String,Object>> getLocationPrefix();
  11 + public List<Map<String, Object>> getLocationPrefix();
12 12 }
... ...
src/main/java/com/huaheng/pc/config/locationType/service/LocationTypeServiceImpl.java
... ... @@ -2,11 +2,11 @@ package com.huaheng.pc.config.locationType.service;
2 2  
3 3 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
4 4 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
5   -import com.huaheng.common.utils.security.ShiroUtils;
6   -import org.springframework.stereotype.Service;
7 5 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
8   -import com.huaheng.pc.config.locationType.mapper.LocationTypeMapper;
  6 +import com.huaheng.common.utils.security.ShiroUtils;
9 7 import com.huaheng.pc.config.locationType.domain.LocationType;
  8 +import com.huaheng.pc.config.locationType.mapper.LocationTypeMapper;
  9 +import org.springframework.stereotype.Service;
10 10  
11 11 import java.util.List;
12 12 import java.util.Map;
... ... @@ -14,13 +14,11 @@ import java.util.Map;
14 14 @Service("locationType")
15 15 public class LocationTypeServiceImpl extends ServiceImpl<LocationTypeMapper, LocationType> implements LocationTypeService{
16 16  
17   - @Override
18   - public List<Map<String, Object>> getLocationPrefix() {
19   - LocationType locationType=new LocationType();
20   - locationType.setWarehouseCode(ShiroUtils.getWarehouseCode());
21   - locationType.setEnable(0);
22   - LambdaQueryWrapper<LocationType> lambda = Wrappers.lambdaQuery(locationType);
23   -
24   - return this.listMaps(lambda);
  17 + public List<Map<String, Object>> getLocationPrefix(){
  18 + LambdaQueryWrapper<LocationType> lambdaQueryWrapper = Wrappers.lambdaQuery();
  19 + lambdaQueryWrapper.eq(LocationType::getWarehouseCode, ShiroUtils.getWarehouseCode())
  20 + .eq(LocationType::getEnable, false)
  21 + .eq(LocationType::getEnable, true);
  22 + return this.listMaps(lambdaQueryWrapper);
25 23 }
26 24 }
... ...
src/main/java/com/huaheng/pc/config/zone/controller/ZoneController.java
... ... @@ -24,6 +24,13 @@ import org.springframework.web.bind.annotation.*;
24 24  
25 25 import java.util.List;
26 26  
  27 +/**
  28 + * 库区 信息操作处理
  29 + *
  30 + * @author ricard
  31 + * @date 2019-08-12
  32 + */
  33 +
27 34 @Controller
28 35 @RequestMapping("/config/zone")
29 36 public class ZoneController extends BaseController {
... ...
src/main/java/com/huaheng/pc/config/zoneCapacity/controller/ZoneCapacityController.java
... ... @@ -29,7 +29,7 @@ import java.util.List;
29 29 * 库区容量 信息操作处理
30 30 *
31 31 * @author ricard
32   - * @date 2019-08-18
  32 + * @date 2019-08-12
33 33 */
34 34 @Controller
35 35 @RequestMapping("/config/zoneCapacity")
... ...
src/main/java/com/huaheng/pc/general/bom/controller/BomDetailController.java 0 → 100644
  1 +package com.huaheng.pc.general.bom.controller;
  2 +
  3 +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  4 +import com.baomidou.mybatisplus.core.metadata.IPage;
  5 +import com.baomidou.mybatisplus.core.toolkit.Wrappers;
  6 +import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  7 +import com.huaheng.common.support.Convert;
  8 +import com.huaheng.common.utils.StringUtils;
  9 +import com.huaheng.common.utils.security.ShiroUtils;
  10 +import com.huaheng.framework.aspectj.lang.annotation.Log;
  11 +import com.huaheng.framework.aspectj.lang.constant.BusinessType;
  12 +import com.huaheng.framework.web.controller.BaseController;
  13 +import com.huaheng.framework.web.domain.AjaxResult;
  14 +import com.huaheng.framework.web.page.PageDomain;
  15 +import com.huaheng.framework.web.page.TableDataInfo;
  16 +import com.huaheng.framework.web.page.TableSupport;
  17 +import com.huaheng.pc.general.bom.domain.BomDetail;
  18 +import com.huaheng.pc.general.bom.service.BomDetailService;
  19 +import com.huaheng.pc.general.material.domain.Material;
  20 +import com.huaheng.pc.general.material.service.MaterialService;
  21 +import io.swagger.annotations.ApiOperation;
  22 +import io.swagger.annotations.ApiParam;
  23 +import org.apache.shiro.authz.annotation.RequiresPermissions;
  24 +import org.springframework.stereotype.Controller;
  25 +import org.springframework.ui.ModelMap;
  26 +import org.springframework.web.bind.annotation.*;
  27 +
  28 +import javax.annotation.Resource;
  29 +import java.util.ArrayList;
  30 +import java.util.List;
  31 +
  32 +@Controller
  33 +@RequestMapping("/general/bomDetail")
  34 +public class BomDetailController extends BaseController {
  35 +
  36 + private String prefix = "general/bomDetail";
  37 +
  38 + @Resource
  39 + private BomDetailService bomDetailService;
  40 + @Resource
  41 + private MaterialService materialService;
  42 +
  43 + @RequiresPermissions("general:bomHeader:view")
  44 + @Log(title = "管理-推送详情列表", operating = "推送详情列表", action = BusinessType.GRANT)
  45 + @GetMapping("/list/{id}")
  46 + public String list(@PathVariable("id")Integer id, ModelMap mmap) {
  47 + mmap.put("bomHeaderId",id);
  48 + return prefix+"/bomDetail";
  49 + }
  50 +
  51 + /**
  52 + * 查询商品详情
  53 + */
  54 + @ApiOperation(value="查看商品列表", notes="根据商品id获取商品详情信息", httpMethod = "POST")
  55 + @RequiresPermissions("general:bomHeader:list")
  56 + @Log(title = "通用-商品管理", operating = "查看商品列表", action = BusinessType.GRANT)
  57 + @PostMapping("/list")
  58 + @ResponseBody
  59 + public TableDataInfo list(@ApiParam(name="bomId",value="商品ID") Integer bomId) {
  60 + LambdaQueryWrapper<BomDetail> lambdaQueryWrapper = Wrappers.lambdaQuery();
  61 + PageDomain pageDomain = TableSupport.buildPageRequest();
  62 + Integer pageNum = pageDomain.getPageNum();
  63 + Integer pageSize = pageDomain.getPageSize();
  64 + lambdaQueryWrapper.eq(BomDetail::getBomId, bomId);
  65 + if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)){
  66 + /*使用分页查询*/
  67 + Page<BomDetail> page = new Page<>(pageNum, pageSize);
  68 + IPage<BomDetail> iPage = bomDetailService.page(page, lambdaQueryWrapper);
  69 + return getMpDataTable(iPage.getRecords(), iPage.getTotal());
  70 + } else {
  71 + List<BomDetail> list = bomDetailService.list(lambdaQueryWrapper);
  72 + return getDataTable(list);
  73 + }
  74 + }
  75 +
  76 + /**
  77 + * 新增商品详情
  78 + */
  79 + @GetMapping("/add")
  80 + public String add() {
  81 + return prefix + "/add";
  82 + }
  83 +
  84 + /**
  85 + * 新增保存商品
  86 + */
  87 + @ApiOperation(value="新增商品详情", notes="新增商品详情", httpMethod = "POST")
  88 + @RequiresPermissions("general:bomDetail:add")
  89 + @Log(title = "通用-商品", operating = "新增商品", action = BusinessType.INSERT)
  90 + @PostMapping("/add")
  91 + @ResponseBody
  92 + public AjaxResult addSave(@ApiParam(name = "containerType", value = "商品详情", required = true)
  93 + BomDetail bomDetail) {
  94 + LambdaQueryWrapper<Material> lamdba = Wrappers.lambdaQuery();
  95 + lamdba.eq(Material::getCode, bomDetail.getMaterialCode());
  96 + Material material = materialService.getOne(lamdba);
  97 + if ( material == null){
  98 + return AjaxResult.error("不存在物料编码"+bomDetail.getMaterialCode());
  99 + } else {
  100 + bomDetail.setCompanyCode(material.getCompanyCode());
  101 + bomDetail.setWarehouseCode(material.getWarehouseCode());
  102 + bomDetail.setMaterialCode(material.getCode());
  103 + bomDetail.setMaterialName(material.getName());
  104 + bomDetail.setMaterialUnit(material.getUnit());
  105 + bomDetail.setCreatedBy(ShiroUtils.getLoginName());
  106 + bomDetail.setLastUpdatedBy(ShiroUtils.getLoginName());
  107 + }
  108 + return toAjax(bomDetailService.save(bomDetail));
  109 + }
  110 +
  111 + /**
  112 + * 修改商品详情
  113 + */
  114 + @GetMapping("/edit/{id}")
  115 + public String edit(@PathVariable("id") Integer id, ModelMap mmap) {
  116 + mmap.put("bomDetail", bomDetailService.getById(id));
  117 + return prefix + "/edit";
  118 + }
  119 +
  120 + /**
  121 + * 修改保存商品详情
  122 + */
  123 + @ApiOperation(value="修改商品详情", notes="修改商品详情", httpMethod = "POST")
  124 + @RequiresPermissions("general:BomDetail:edit")
  125 + @Log(title = "通用-商品详情", operating = "修改商品详情", action = BusinessType.UPDATE)
  126 + @PostMapping("/edit")
  127 + @ResponseBody
  128 + public AjaxResult editSave(
  129 + @ApiParam(name = "BomDetail", value = "商品详情实体类", required = true)BomDetail bomDetail) {
  130 + return toAjax(bomDetailService.updateById(bomDetail));
  131 + }
  132 +
  133 + /**
  134 + * 删除商品详情
  135 + */
  136 + @ApiOperation(value="删除商品详情", notes="根据id批量删除商品详情,参数示例1,2,3", httpMethod = "POST")
  137 + @RequiresPermissions("general:BomDetail:remove")
  138 + @Log(title = "通用-商品", operating = "删除商品", action = BusinessType.DELETE)
  139 + @PostMapping( "/remove")
  140 + @ResponseBody
  141 + public AjaxResult remove(String ids) {
  142 + if (StringUtils.isEmpty(ids)){
  143 + return AjaxResult.error("id不能为空");
  144 + }
  145 + List<Integer> list = new ArrayList<>();
  146 + for (Integer id : Convert.toIntArray(ids)) {
  147 + list.add(id);
  148 + }
  149 + return toAjax(bomDetailService.removeByIds(list));
  150 + }
  151 +}
... ...
src/main/java/com/huaheng/pc/general/bom/controller/BomHeaderController.java 0 → 100644
  1 +package com.huaheng.pc.general.bom.controller;
  2 +
  3 +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  4 +import com.baomidou.mybatisplus.core.metadata.IPage;
  5 +import com.baomidou.mybatisplus.core.toolkit.Wrappers;
  6 +import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  7 +import com.huaheng.common.support.Convert;
  8 +import com.huaheng.common.utils.StringUtils;
  9 +import com.huaheng.common.utils.security.ShiroUtils;
  10 +import com.huaheng.framework.aspectj.lang.annotation.Log;
  11 +import com.huaheng.framework.aspectj.lang.constant.BusinessType;
  12 +import com.huaheng.framework.web.controller.BaseController;
  13 +import com.huaheng.framework.web.domain.AjaxResult;
  14 +import com.huaheng.framework.web.page.PageDomain;
  15 +import com.huaheng.framework.web.page.TableDataInfo;
  16 +import com.huaheng.framework.web.page.TableSupport;
  17 +import com.huaheng.pc.general.bom.domain.BomDetail;
  18 +import com.huaheng.pc.general.bom.domain.BomHeader;
  19 +import com.huaheng.pc.general.bom.service.BomDetailService;
  20 +import com.huaheng.pc.general.bom.service.BomHeaderService;
  21 +import com.huaheng.pc.general.material.domain.Material;
  22 +import com.huaheng.pc.general.material.service.MaterialService;
  23 +import io.swagger.annotations.ApiOperation;
  24 +import io.swagger.annotations.ApiParam;
  25 +import org.apache.shiro.authz.annotation.RequiresPermissions;
  26 +import org.springframework.stereotype.Controller;
  27 +import org.springframework.ui.ModelMap;
  28 +import org.springframework.web.bind.annotation.*;
  29 +
  30 +import javax.annotation.Resource;
  31 +import java.util.ArrayList;
  32 +import java.util.List;
  33 +
  34 +@Controller
  35 +@RequestMapping("/general/bomHeader")
  36 +public class BomHeaderController extends BaseController {
  37 +
  38 + private String prefix = "general/bomHeader";
  39 +
  40 + @Resource
  41 + private BomHeaderService bomHeaderService;
  42 +
  43 + @Resource
  44 + private BomDetailService bomDetailService;
  45 +
  46 + @Resource
  47 + private MaterialService materialService;
  48 +
  49 + @RequiresPermissions("general:bomHeader:view")
  50 + @GetMapping()
  51 + public String bomHeader() {
  52 + System.out.println("商品管理");
  53 + return prefix + "/bomHeader";
  54 + }
  55 +
  56 + /**
  57 + * 查询商品列表
  58 + */
  59 + @ApiOperation(value="查看商品列表", notes="根据物料编码、物料名称、货主编码、创建时间获取商品信息", httpMethod = "POST")
  60 + @RequiresPermissions("general:bomHeader:list")
  61 + @Log(title = "通用-商品管理", operating = "查看商品列表", action = BusinessType.GRANT)
  62 + @PostMapping("/list")
  63 + @ResponseBody
  64 + public TableDataInfo list(
  65 + @ApiParam(name="bomHeader",value="物料编码、物料名称、货主编码") BomHeader bomHeader,
  66 + @ApiParam(name = "createdBegin", value = "起止时间") String createdBegin,
  67 + @ApiParam(name = "createdEnd", value = "结束时间") String createdEnd) {
  68 + LambdaQueryWrapper<BomHeader> lambdaQueryWrapper = Wrappers.lambdaQuery();
  69 + PageDomain pageDomain = TableSupport.buildPageRequest();
  70 + Integer pageNum = pageDomain.getPageNum();
  71 + Integer pageSize = pageDomain.getPageSize();
  72 + lambdaQueryWrapper.gt(StringUtils.isNotEmpty(createdBegin), BomHeader::getCreated, createdBegin)
  73 + .lt(StringUtils.isNotEmpty(createdEnd), BomHeader::getCreated, createdEnd)
  74 + .eq(StringUtils.isNotEmpty(bomHeader.getMaterialCode()), BomHeader::getMaterialCode, bomHeader.getMaterialCode())
  75 + .eq(StringUtils.isNotEmpty(bomHeader.getMaterialName()), BomHeader::getMaterialName, bomHeader.getMaterialName())
  76 + .eq(StringUtils.isNotEmpty(bomHeader.getCompanyCode()), BomHeader::getCompanyCode, bomHeader.getCompanyCode());
  77 +
  78 + if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)){
  79 + /*使用分页查询*/
  80 + Page<BomHeader> page = new Page<>(pageNum, pageSize);
  81 + IPage<BomHeader> iPage = bomHeaderService.page(page, lambdaQueryWrapper);
  82 + return getMpDataTable(iPage.getRecords(), iPage.getTotal());
  83 + } else {
  84 + List<BomHeader> list = bomHeaderService.list(lambdaQueryWrapper);
  85 + return getDataTable(list);
  86 + }
  87 + }
  88 +
  89 + /**
  90 + * 新增商品
  91 + */
  92 + @GetMapping("/add")
  93 + public String add() {
  94 + return prefix + "/add";
  95 + }
  96 +
  97 + /**
  98 + * 新增保存商品
  99 + */
  100 + @ApiOperation(value="新增商品", notes="新增商品", httpMethod = "POST")
  101 + @RequiresPermissions("general:bomHeader:add")
  102 + @Log(title = "通用-商品", operating = "新增商品", action = BusinessType.INSERT)
  103 + @PostMapping("/add")
  104 + @ResponseBody
  105 + public AjaxResult addSave(@ApiParam(name = "containerType", value = "商品类型", required = true)
  106 + BomHeader bomHeader) {
  107 +
  108 + LambdaQueryWrapper<Material> lamdba = Wrappers.lambdaQuery();
  109 + lamdba.eq(Material::getCode, bomHeader.getMaterialCode());
  110 + Material material = materialService.getOne(lamdba);
  111 + if ( material == null){
  112 + return AjaxResult.error("不存在物料编码"+bomHeader.getMaterialCode());
  113 + } else {
  114 + bomHeader.setCompanyCode(material.getCompanyCode());
  115 + bomHeader.setWarehouseCode(material.getWarehouseCode());
  116 + bomHeader.setMaterialCode(material.getCode());
  117 + bomHeader.setMaterialName(material.getName());
  118 + bomHeader.setMaterialSpec(material.getSpec());
  119 + bomHeader.setMaterialUnit(material.getUnit());
  120 + bomHeader.setCreatedBy(ShiroUtils.getLoginName());
  121 + bomHeader.setLastUpdatedBy(ShiroUtils.getLoginName());
  122 + }
  123 + return toAjax(bomHeaderService.save(bomHeader));
  124 + }
  125 +
  126 + /**
  127 + * 修改商品
  128 + */
  129 + @GetMapping("/edit/{id}")
  130 + public String edit(@PathVariable("id") Integer id, ModelMap mmap) {
  131 + mmap.put("bomHeader", bomHeaderService.getById(id));
  132 + return prefix + "/edit";
  133 + }
  134 +
  135 + /**
  136 + * 修改保存商品
  137 + */
  138 + @ApiOperation(value="修改商品", notes="修改商品", httpMethod = "POST")
  139 + @RequiresPermissions("general:bomHeader:edit")
  140 + @Log(title = "通用-商品", operating = "修改商品", action = BusinessType.UPDATE)
  141 + @PostMapping("/edit")
  142 + @ResponseBody
  143 + public AjaxResult editSave(
  144 + @ApiParam(name = "bomHeader", value = "商品实体类", required = true)BomHeader bomHeader) {
  145 + return toAjax(bomHeaderService.updateById(bomHeader));
  146 + }
  147 +
  148 + /**
  149 + * 删除容器
  150 + */
  151 + @ApiOperation(value="删除商品", notes="根据id批量删除商品,参数示例1,2,3", httpMethod = "POST")
  152 + @RequiresPermissions("general:bomHeader:remove")
  153 + @Log(title = "通用-商品", operating = "删除商品", action = BusinessType.DELETE)
  154 + @PostMapping( "/remove")
  155 + @ResponseBody
  156 + public AjaxResult remove(String ids) {
  157 + if (StringUtils.isEmpty(ids)){
  158 + return AjaxResult.error("id不能为空");
  159 + }
  160 + List<Integer> list = new ArrayList<>();
  161 + for (Integer id : Convert.toIntArray(ids)) {
  162 +
  163 + LambdaQueryWrapper<BomDetail> lambda = Wrappers.lambdaQuery();
  164 + List<BomDetail> bomDetailList = bomDetailService.list(lambda.eq(BomDetail::getBomId, id));
  165 + if (bomDetailList.size() != 0) {
  166 + list.add(id);
  167 + } else {
  168 + return AjaxResult.error("商品编码为(" + id + ")存在商品详情");
  169 + }
  170 + }
  171 + return toAjax(bomHeaderService.removeByIds(list));
  172 + }
  173 +
  174 +}
... ...
src/main/java/com/huaheng/pc/general/bom/domain/BomDetail.java 0 → 100644
  1 +package com.huaheng.pc.general.bom.domain;
  2 +
  3 +import com.baomidou.mybatisplus.annotation.IdType;
  4 +import com.baomidou.mybatisplus.annotation.TableField;
  5 +import com.baomidou.mybatisplus.annotation.TableId;
  6 +import com.baomidou.mybatisplus.annotation.TableName;
  7 +import io.swagger.annotations.ApiModel;
  8 +import io.swagger.annotations.ApiModelProperty;
  9 +import java.io.Serializable;
  10 +import java.util.Date;
  11 +import lombok.Data;
  12 +
  13 +@ApiModel(value="com.huaheng.pc.general.bom.domain.BomDetail")
  14 +@Data
  15 +@TableName(value = "bom_detail")
  16 +public class BomDetail implements Serializable {
  17 + /**
  18 + * 内部号
  19 + */
  20 + @TableId(value = "id", type = IdType.AUTO)
  21 + @ApiModelProperty(value="内部号")
  22 + private Integer id;
  23 +
  24 + /**
  25 + * 仓库代码
  26 + */
  27 + @TableField(value = "warehouseCode")
  28 + @ApiModelProperty(value="仓库代码")
  29 + private String warehouseCode;
  30 +
  31 + /**
  32 + * 货主
  33 + */
  34 + @TableField(value = "companyCode")
  35 + @ApiModelProperty(value="货主")
  36 + private String companyCode;
  37 +
  38 + /**
  39 + * 物料清单内部号
  40 + */
  41 + @TableField(value = "bomId")
  42 + @ApiModelProperty(value="物料清单内部号")
  43 + private Integer bomId;
  44 +
  45 + /**
  46 + * 物料编码
  47 + */
  48 + @TableField(value = "materialCode")
  49 + @ApiModelProperty(value="物料编码")
  50 + private String materialCode;
  51 +
  52 + /**
  53 + * 物料名称
  54 + */
  55 + @TableField(value = "materialName")
  56 + @ApiModelProperty(value="物料名称")
  57 + private String materialName;
  58 +
  59 + /**
  60 + * 数量单位
  61 + */
  62 + @TableField(value = "materialUnit")
  63 + @ApiModelProperty(value="数量单位")
  64 + private String materialUnit;
  65 +
  66 + /**
  67 + * 组套层次
  68 + */
  69 + @TableField(value = "buildLevel")
  70 + @ApiModelProperty(value="组套层次")
  71 + private Integer buildLevel;
  72 +
  73 + /**
  74 + * 序号
  75 + */
  76 + @TableField(value = "buildSequence")
  77 + @ApiModelProperty(value="序号")
  78 + private Integer buildSequence;
  79 +
  80 + /**
  81 + * 每成品需要数量
  82 + */
  83 + @TableField(value = "qty")
  84 + @ApiModelProperty(value="每成品需要数量")
  85 + private Integer qty;
  86 +
  87 + /**
  88 + * 分配规则
  89 + */
  90 + @TableField(value = "allocationRule")
  91 + @ApiModelProperty(value="分配规则")
  92 + private String allocationRule;
  93 +
  94 + /**
  95 + * 从货位
  96 + */
  97 + @TableField(value = "fromLocation")
  98 + @ApiModelProperty(value="从货位")
  99 + private String fromLocation;
  100 +
  101 + /**
  102 + * 有效
  103 + */
  104 + @TableField(value = "enable")
  105 + @ApiModelProperty(value="有效")
  106 + private Boolean enable;
  107 +
  108 + /**
  109 + * 创建时间
  110 + */
  111 + @TableField(value = "created")
  112 + @ApiModelProperty(value="创建时间")
  113 + private Date created;
  114 +
  115 + /**
  116 + * 创建用户
  117 + */
  118 + @TableField(value = "createdBy")
  119 + @ApiModelProperty(value="创建用户")
  120 + private String createdBy;
  121 +
  122 + /**
  123 + * 创建时间
  124 + */
  125 + @TableField(value = "lastUpdated")
  126 + @ApiModelProperty(value="创建时间")
  127 + private Date lastUpdated;
  128 +
  129 + /**
  130 + * 更新用户
  131 + */
  132 + @TableField(value = "lastUpdatedBy")
  133 + @ApiModelProperty(value="更新用户")
  134 + private String lastUpdatedBy;
  135 +
  136 + /**
  137 + * 数据版本
  138 + */
  139 + @TableField(value = "version")
  140 + @ApiModelProperty(value="数据版本")
  141 + private Integer version;
  142 +
  143 + /**
  144 + * 自定义字段1
  145 + */
  146 + @TableField(value = "userDef1")
  147 + @ApiModelProperty(value="自定义字段1")
  148 + private String userDef1;
  149 +
  150 + /**
  151 + * 自定义字段2
  152 + */
  153 + @TableField(value = "userDef2")
  154 + @ApiModelProperty(value="自定义字段2")
  155 + private String userDef2;
  156 +
  157 + /**
  158 + * 自定义字段3
  159 + */
  160 + @TableField(value = "userDef3")
  161 + @ApiModelProperty(value="自定义字段3")
  162 + private String userDef3;
  163 +
  164 + /**
  165 + * 自定义字段4
  166 + */
  167 + @TableField(value = "userDef4")
  168 + @ApiModelProperty(value="自定义字段4")
  169 + private String userDef4;
  170 +
  171 + /**
  172 + * 自定义字段5
  173 + */
  174 + @TableField(value = "userDef5")
  175 + @ApiModelProperty(value="自定义字段5")
  176 + private String userDef5;
  177 +
  178 + /**
  179 + * 自定义字段6
  180 + */
  181 + @TableField(value = "userDef6")
  182 + @ApiModelProperty(value="自定义字段6")
  183 + private String userDef6;
  184 +
  185 + /**
  186 + * 自定义字段7
  187 + */
  188 + @TableField(value = "userDef7")
  189 + @ApiModelProperty(value="自定义字段7")
  190 + private String userDef7;
  191 +
  192 + /**
  193 + * 自定义字段8
  194 + */
  195 + @TableField(value = "userDef8")
  196 + @ApiModelProperty(value="自定义字段8")
  197 + private String userDef8;
  198 +
  199 + /**
  200 + * 处理标记
  201 + */
  202 + @TableField(value = "processStamp")
  203 + @ApiModelProperty(value="处理标记")
  204 + private String processStamp;
  205 +
  206 + private static final long serialVersionUID = 1L;
  207 +
  208 + public static final String COL_WAREHOUSECODE = "warehouseCode";
  209 +
  210 + public static final String COL_COMPANYCODE = "companyCode";
  211 +
  212 + public static final String COL_BOMID = "bomId";
  213 +
  214 + public static final String COL_MATERIALCODE = "materialCode";
  215 +
  216 + public static final String COL_MATERIALNAME = "materialName";
  217 +
  218 + public static final String COL_MATERIALUNIT = "materialUnit";
  219 +
  220 + public static final String COL_BUILDLEVEL = "buildLevel";
  221 +
  222 + public static final String COL_BUILDSEQUENCE = "buildSequence";
  223 +
  224 + public static final String COL_QTY = "qty";
  225 +
  226 + public static final String COL_ALLOCATIONRULE = "allocationRule";
  227 +
  228 + public static final String COL_FROMLOCATION = "fromLocation";
  229 +
  230 + public static final String COL_ENABLE = "enable";
  231 +
  232 + public static final String COL_CREATED = "created";
  233 +
  234 + public static final String COL_CREATEDBY = "createdBy";
  235 +
  236 + public static final String COL_LASTUPDATED = "lastUpdated";
  237 +
  238 + public static final String COL_LASTUPDATEDBY = "lastUpdatedBy";
  239 +
  240 + public static final String COL_VERSION = "version";
  241 +
  242 + public static final String COL_USERDEF1 = "userDef1";
  243 +
  244 + public static final String COL_USERDEF2 = "userDef2";
  245 +
  246 + public static final String COL_USERDEF3 = "userDef3";
  247 +
  248 + public static final String COL_USERDEF4 = "userDef4";
  249 +
  250 + public static final String COL_USERDEF5 = "userDef5";
  251 +
  252 + public static final String COL_USERDEF6 = "userDef6";
  253 +
  254 + public static final String COL_USERDEF7 = "userDef7";
  255 +
  256 + public static final String COL_USERDEF8 = "userDef8";
  257 +
  258 + public static final String COL_PROCESSSTAMP = "processStamp";
  259 +}
0 260 \ No newline at end of file
... ...
src/main/java/com/huaheng/pc/general/bom/mapper/BomDetailMapper.java 0 → 100644
  1 +package com.huaheng.pc.general.bom.mapper;
  2 +
  3 +import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  4 +import com.huaheng.pc.general.bom.domain.BomDetail;
  5 +
  6 +public interface BomDetailMapper extends BaseMapper<BomDetail> {
  7 +}
0 8 \ No newline at end of file
... ...
src/main/java/com/huaheng/pc/general/bom/service/BomDetailService.java 0 → 100644
  1 +package com.huaheng.pc.general.bom.service;
  2 +
  3 +import com.huaheng.pc.general.bom.domain.BomDetail;
  4 +import com.baomidou.mybatisplus.extension.service.IService;
  5 +public interface BomDetailService extends IService<BomDetail>{
  6 +
  7 +
  8 +}
... ...
src/main/java/com/huaheng/pc/general/bom/service/BomDetailServiceImpl.java 0 → 100644
  1 +package com.huaheng.pc.general.bom.service;
  2 +
  3 +import org.springframework.stereotype.Service;
  4 +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  5 +import com.huaheng.pc.general.bom.domain.BomDetail;
  6 +import com.huaheng.pc.general.bom.mapper.BomDetailMapper;
  7 +
  8 +@Service
  9 +public class BomDetailServiceImpl extends ServiceImpl<BomDetailMapper, BomDetail> implements BomDetailService{
  10 +
  11 +}
... ...
src/main/java/com/huaheng/pc/general/carrier/domain/Carrier.java
... ... @@ -10,6 +10,9 @@ import java.io.Serializable;
10 10 import java.util.Date;
11 11 import lombok.Data;
12 12  
  13 +/**
  14 + * 承运商
  15 + */
13 16 @ApiModel(value="com.huaheng.pc.general.carrier.domain.Carrier")
14 17 @Data
15 18 @TableName(value = "carrier")
... ...
src/main/java/com/huaheng/pc/general/company/service/CompanyService.java
... ... @@ -11,7 +11,7 @@ public interface CompanyService extends IService&lt;Company&gt;{
11 11  
12 12 public List<Company> selectCompanyByCurrentUserId();
13 13  
14   - List<Company> selectCompanyByUserId(Integer userId);
  14 + public List<Company> selectCompanyByUserId(Integer id);
15 15  
16 16 public AjaxResult addCompany(Company company);
17 17  
... ...
src/main/java/com/huaheng/pc/general/company/service/CompanyServiceImpl.java
... ... @@ -35,13 +35,13 @@ public class CompanyServiceImpl extends ServiceImpl&lt;CompanyMapper, Company&gt; impl
35 35  
36 36 /**
37 37 * 查询出仓库所有的货主,并且根据用户id查询对应的货主,包含的就将flag赋为true
38   - * @param userId
  38 + * @param
39 39 * @return
40 40 */
41 41 @Override
42   - public List<Company> selectCompanyByUserId(Integer userId) {
  42 + public List<Company> selectCompanyByUserId(Integer id) {
43 43 UserCompany condition = new UserCompany();
44   - condition.setUserId(userId);
  44 + condition.setUserId(id);
45 45 List<UserCompany> userCompanys = userCompanyMapper.selectListEntityByEqual(condition);
46 46 Company company = new Company();
47 47 company.setWarehouseCode(ShiroUtils.getWarehouseCode());
... ...
src/main/java/com/huaheng/pc/general/location/service/LocationServiceImpl.java
... ... @@ -51,7 +51,7 @@ public class LocationServiceImpl extends ServiceImpl&lt;LocationMapper, Location&gt; i
51 51 throw new ServiceException("库区编码不存在");
52 52 }
53 53  
54   -
  54 + String prefix = location.getLocationType().substring(1);
55 55 List<Location> locations = new ArrayList<>();
56 56 for (int i=1; i<=location.getIRow().intValue(); i++) {
57 57 for (int j=1; j<=location.getIColumn().intValue(); j++) {
... ... @@ -70,7 +70,7 @@ public class LocationServiceImpl extends ServiceImpl&lt;LocationMapper, Location&gt; i
70 70 param.setCreatedBy(ShiroUtils.getLoginName());
71 71 param.setLastUpdatedBy(ShiroUtils.getLoginName());
72 72 String code = MessageFormat.format("{0}{1}-{2}-{3}-{4}",
73   - location.getLocationType(),
  73 + prefix,
74 74 String.format("%02d", i),
75 75 String.format("%02d", j),
76 76 String.format("%02d", k),
... ...
src/main/java/com/huaheng/pc/general/material/controller/MaterialController.java
... ... @@ -18,6 +18,8 @@ import com.huaheng.pc.general.location.domain.Location;
18 18 import com.huaheng.pc.general.location.service.LocationService;
19 19 import com.huaheng.pc.general.material.domain.Material;
20 20 import com.huaheng.pc.general.material.service.MaterialService;
  21 +import com.huaheng.pc.general.materialUnit.domain.MaterialUnit;
  22 +import com.huaheng.pc.general.materialUnit.service.MaterialUnitService;
21 23 import com.huaheng.pc.receipt.receiptDetail.domain.ReceiptDetail;
22 24 import io.swagger.annotations.Api;
23 25 import io.swagger.annotations.ApiOperation;
... ... @@ -41,6 +43,9 @@ public class MaterialController extends BaseController {
41 43 @Resource
42 44 private MaterialService materialService;
43 45  
  46 + @Resource
  47 + private MaterialUnitService materialUnitService;
  48 +
44 49 @RequiresPermissions("general:material:view")
45 50 @GetMapping()
46 51 public String material() {
... ... @@ -74,7 +79,7 @@ public class MaterialController extends BaseController {
74 79 .like(StringUtils.isNotEmpty(material.getSpec()), Material::getSpec, material.getSpec())
75 80 .eq(Material::getWarehouseCode, ShiroUtils.getWarehouseCode())
76 81 .in(Material::getCompanyCode, ShiroUtils.getCompanyCodeList())
77   - .ne(Material::getDeleted, false);
  82 + .eq(Material::getDeleted, false);
78 83  
79 84 if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)){
80 85 /*使用分页查询*/
... ... @@ -113,6 +118,22 @@ public class MaterialController extends BaseController {
113 118 if (map != null) {
114 119 return AjaxResult.error("物料已经存在");
115 120 }
  121 + LambdaQueryWrapper<MaterialUnit> lambdaQueryWrapper = Wrappers.lambdaQuery();
  122 + lambdaQueryWrapper.eq(MaterialUnit::getMaterialCode, material.getCode())
  123 + .eq(MaterialUnit::getUnit, material.getUnit());
  124 + if (materialUnitService.getOne(lambdaQueryWrapper) == null){
  125 + MaterialUnit materialUnit = new MaterialUnit();
  126 + materialUnit.setMaterialCode(material.getCode());
  127 + materialUnit.setMaterialName(material.getName());
  128 + materialUnit.setMaterialSpec(material.getSpec());
  129 + materialUnit.setCompanyCode(material.getCompanyCode());
  130 + materialUnit.setWarehouseCode(ShiroUtils.getWarehouseCode());
  131 + materialUnit.setUnit(material.getUnit());
  132 + materialUnit.setCreatedBy(ShiroUtils.getLoginName());
  133 + materialUnit.setLastUpdatedBy(ShiroUtils.getLoginName());
  134 +
  135 + materialUnitService.save(materialUnit);
  136 + }
116 137  
117 138 material.setWarehouseCode(ShiroUtils.getWarehouseCode());
118 139 material.setCreatedBy(ShiroUtils.getLoginName());
... ...
src/main/java/com/huaheng/pc/general/material/domain/Material.java
... ... @@ -180,7 +180,7 @@ public class Material implements Serializable {
180 180 */
181 181 @TableField(value = "enable")
182 182 @ApiModelProperty(value="状态")
183   - private byte[] enable;
  183 + private Boolean enable;
184 184  
185 185 /**
186 186 * 创建时间
... ...
src/main/java/com/huaheng/pc/general/materialUnit/service/MaterialUnitService.java
... ... @@ -2,7 +2,12 @@ package com.huaheng.pc.general.materialUnit.service;
2 2  
3 3 import com.huaheng.pc.general.materialUnit.domain.MaterialUnit;
4 4 import com.baomidou.mybatisplus.extension.service.IService;
  5 +
  6 +import java.util.List;
  7 +import java.util.Map;
  8 +
5 9 public interface MaterialUnitService extends IService<MaterialUnit>{
6 10  
  11 + public List<Map<String, Object>> getUnit();
7 12  
8 13 }
... ...
src/main/java/com/huaheng/pc/general/materialUnit/service/MaterialUnitServiceImpl.java
1 1 package com.huaheng.pc.general.materialUnit.service;
2 2  
  3 +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  4 +import com.baomidou.mybatisplus.core.toolkit.Wrappers;
3 5 import org.springframework.stereotype.Service;
4 6 import javax.annotation.Resource;
5 7 import java.util.List;
  8 +import java.util.Map;
  9 +
6 10 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7 11 import com.huaheng.pc.general.materialUnit.domain.MaterialUnit;
8 12 import com.huaheng.pc.general.materialUnit.mapper.MaterialUnitMapper;
9 13 import com.huaheng.pc.general.materialUnit.service.MaterialUnitService;
10   -@Service
  14 +@Service("materialUnitService")
11 15 public class MaterialUnitServiceImpl extends ServiceImpl<MaterialUnitMapper, MaterialUnit> implements MaterialUnitService{
12 16  
  17 + @Override
  18 + public List<Map<String, Object>> getUnit(){
  19 + LambdaQueryWrapper<MaterialUnit> lambda = Wrappers.lambdaQuery();
  20 + return this.listMaps(lambda);
  21 + }
13 22 }
... ...
src/main/java/com/huaheng/pc/general/warehouse/domain/Warehouse.java
... ... @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
5 5 import com.baomidou.mybatisplus.annotation.TableId;
6 6 import com.baomidou.mybatisplus.annotation.TableName;
7 7 import lombok.Data;
  8 +import org.springframework.transaction.annotation.Transactional;
8 9  
9 10 import java.io.Serializable;
10 11 import java.util.Date;
... ... @@ -84,6 +85,15 @@ public class Warehouse implements Serializable {
84 85 @TableField(value = "email")
85 86 private String email;
86 87  
  88 + public boolean isFlag() {
  89 + return flag;
  90 + }
  91 +
  92 + public Warehouse setFlag(boolean flag) {
  93 + this.flag = flag;
  94 + return this;
  95 + }
  96 +
87 97 /**
88 98 * 上位系统url地址
89 99 */
... ... @@ -189,6 +199,10 @@ public class Warehouse implements Serializable {
189 199 @TableField(value = "deleted")
190 200 private Boolean deleted;
191 201  
  202 + /** 用户是否存在此仓库标识 默认不存在 */
  203 + @TableField(exist = false)
  204 + private boolean flag = false;
  205 +
192 206 private static final long serialVersionUID = 1L;
193 207  
194 208 public static final String COL_ADDRESS1 = "address1";
... ...
src/main/java/com/huaheng/pc/general/warehouse/mapper/WarehouseMapper.java
... ... @@ -2,6 +2,16 @@ package com.huaheng.pc.general.warehouse.mapper;
2 2  
3 3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 4 import com.huaheng.pc.general.warehouse.domain.Warehouse;
  5 +import com.huaheng.pc.system.role.domain.Role;
  6 +import com.huaheng.pc.system.user.domain.SysUserWarehouse;
  7 +
  8 +import java.util.List;
5 9  
6 10 public interface WarehouseMapper extends BaseMapper<Warehouse> {
  11 +
  12 + public List<SysUserWarehouse> wareHouseAll();
  13 +
  14 + public List<Warehouse> selectWarehouseByUserId(Integer userId);
  15 +
  16 + public List<Warehouse> selectWarehouseAll();
7 17 }
8 18 \ No newline at end of file
... ...
src/main/java/com/huaheng/pc/general/warehouse/service/WarehouseService.java
... ... @@ -2,6 +2,7 @@ package com.huaheng.pc.general.warehouse.service;
2 2  
3 3 import com.huaheng.pc.general.warehouse.domain.Warehouse;
4 4 import com.baomidou.mybatisplus.extension.service.IService;
  5 +import com.huaheng.pc.system.user.domain.SysUserWarehouse;
5 6  
6 7 import java.util.List;
7 8 import java.util.Map;
... ... @@ -9,4 +10,9 @@ import java.util.Map;
9 10 public interface WarehouseService extends IService<Warehouse>{
10 11  
11 12 List<Map<String,Object>> getWarehouseList(Integer id);
  13 +
  14 + public List<Warehouse> selectWarehouseByUserId(Integer userId);
  15 +
  16 +
  17 +
12 18 }
... ...
src/main/java/com/huaheng/pc/general/warehouse/service/WarehouseServiceImpl.java
... ... @@ -2,8 +2,11 @@ package com.huaheng.pc.general.warehouse.service;
2 2  
3 3 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
4 4 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
  5 +import com.huaheng.common.utils.security.ShiroUtils;
5 6 import com.huaheng.pc.general.warehouseCopany.domain.WarehouseCompany;
6 7 import com.huaheng.pc.general.warehouseCopany.service.WarehouseCompanyService;
  8 +import com.huaheng.pc.system.role.domain.Role;
  9 +import com.huaheng.pc.system.user.domain.SysUserWarehouse;
7 10 import org.springframework.stereotype.Service;
8 11 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
9 12 import com.huaheng.pc.general.warehouse.mapper.WarehouseMapper;
... ... @@ -47,4 +50,24 @@ public class WarehouseServiceImpl extends ServiceImpl&lt;WarehouseMapper, Warehouse
47 50 }
48 51 return warehouseList;
49 52 }
  53 +
  54 + @Override
  55 + public List<Warehouse> selectWarehouseByUserId(Integer userId)
  56 + {
  57 + List<Warehouse> userWarhouses = warehouseMapper.selectWarehouseByUserId(userId);
  58 + List<Warehouse> warehouses = warehouseMapper.selectWarehouseAll();
  59 + for (Warehouse warehouse : warehouses)
  60 + {
  61 + for (Warehouse userWarehouse: userWarhouses)
  62 + {
  63 + if (warehouse.getCode().equals(userWarehouse.getCode()))
  64 + {
  65 + warehouse.setFlag(true);
  66 + break;
  67 + }
  68 + }
  69 + }
  70 + return warehouses;
  71 + }
  72 +
50 73 }
... ...
src/main/java/com/huaheng/pc/shipment/shipmentHeader/controller/ShipmentHeaderController.java 0 → 100644
  1 +package com.huaheng.pc.shipment.shipmentHeader.controller;
  2 +
  3 +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  4 +import com.baomidou.mybatisplus.core.metadata.IPage;
  5 +import com.baomidou.mybatisplus.core.toolkit.Wrappers;
  6 +import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  7 +import com.huaheng.common.utils.StringUtils;
  8 +import com.huaheng.common.utils.security.ShiroUtils;
  9 +import com.huaheng.framework.aspectj.lang.annotation.Log;
  10 +import com.huaheng.framework.aspectj.lang.constant.BusinessType;
  11 +import com.huaheng.framework.web.controller.BaseController;
  12 +import com.huaheng.framework.web.domain.AjaxResult;
  13 +import com.huaheng.framework.web.page.PageDomain;
  14 +import com.huaheng.framework.web.page.TableDataInfo;
  15 +import com.huaheng.framework.web.page.TableSupport;
  16 +import com.huaheng.pc.shipment.shipmentHeader.domain.ShipmentHeader;
  17 +import com.huaheng.pc.shipment.shipmentHeader.service.ShipmentHeaderService;
  18 +import org.apache.shiro.authz.annotation.RequiresPermissions;
  19 +import org.springframework.beans.factory.annotation.Autowired;
  20 +import org.springframework.stereotype.Controller;
  21 +import org.springframework.ui.ModelMap;
  22 +import org.springframework.web.bind.annotation.*;
  23 +
  24 +import java.util.List;
  25 +
  26 +
  27 +/**
  28 + * 出库单主 信息操作处理
  29 + *
  30 + * @author huaheng
  31 + * @date 2018-08-19
  32 + */
  33 +@Controller
  34 +@RequestMapping("/shipment/shipmentHeader")
  35 +public class ShipmentHeaderController extends BaseController
  36 +{
  37 + private String prefix = "shipment/shipmentHeader";
  38 +
  39 + @Autowired
  40 + private ShipmentHeaderService shipmentHeaderService;
  41 +
  42 +
  43 + @RequiresPermissions("shipment:bill:view")
  44 + @GetMapping()
  45 + public String shipmentHeader()
  46 + {
  47 + return prefix + "/shipmentHeader";
  48 + }
  49 +
  50 + /**
  51 + * 查询出库单主列表
  52 + */
  53 + @RequiresPermissions("shipment:bill:list")
  54 + @Log(title = "出库-出库单", operating="查看出库主单", action = BusinessType.GRANT)
  55 + @PostMapping("/list")
  56 + @ResponseBody
  57 + public TableDataInfo list(ShipmentHeader shipmentHeader,String createdBegin, String createdEnd)
  58 + {
  59 + LambdaQueryWrapper<ShipmentHeader> lambdaQueryWrapper = Wrappers.lambdaQuery();
  60 + PageDomain pageDomain = TableSupport.buildPageRequest();
  61 + Integer pageNum = pageDomain.getPageNum();
  62 + Integer pageSize = pageDomain.getPageSize();
  63 +
  64 + lambdaQueryWrapper.ge(StringUtils.isNotEmpty(createdBegin),ShipmentHeader::getCreated, createdBegin)
  65 + .le(StringUtils.isNotEmpty(createdEnd), ShipmentHeader::getCreated, createdEnd)
  66 + .eq(ShipmentHeader::getWarehouseCode,ShiroUtils.getWarehouseCode())
  67 + .eq(StringUtils.isNotEmpty(shipmentHeader.getCode()),ShipmentHeader::getCode,shipmentHeader.getCode())
  68 + .eq(StringUtils.isNotEmpty(shipmentHeader.getShipmentType()),ShipmentHeader::getShipmentType,shipmentHeader.getShipmentType())
  69 + .eq(StringUtils.isNotEmpty(shipmentHeader.getReferCode()), ShipmentHeader::getReferCode, shipmentHeader.getReferCode())
  70 + .eq(StringUtils.isNotEmpty(shipmentHeader.getReferCodeType()), ShipmentHeader::getReferCodeType, shipmentHeader.getReferCodeType())
  71 + .eq(shipmentHeader.getFirstStatus()!=null, ShipmentHeader::getFirstStatus, shipmentHeader.getFirstStatus())
  72 + .eq(shipmentHeader.getLastStatus()!=null, ShipmentHeader::getLastStatus, shipmentHeader.getLastStatus())
  73 + .orderByDesc(ShipmentHeader::getId);
  74 +
  75 + if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)){
  76 + /**
  77 + * 使用分页查询
  78 + */
  79 + Page<ShipmentHeader> page = new Page<>(pageNum, pageSize);
  80 + IPage<ShipmentHeader> iPage = shipmentHeaderService.page(page, lambdaQueryWrapper);
  81 + return getMpDataTable(iPage.getRecords(),iPage.getTotal());
  82 + } else {
  83 + List<ShipmentHeader> list = shipmentHeaderService.list(lambdaQueryWrapper);
  84 + return getDataTable(list);
  85 + }
  86 + }
  87 +
  88 + /**
  89 + * 新增出库单主
  90 + */
  91 + @GetMapping("/add")
  92 + public String add()
  93 + {
  94 + return prefix + "/add";
  95 + }
  96 +
  97 + /**
  98 + * 新增保存出库单主
  99 + */
  100 + @RequiresPermissions("shipment:bill:add")
  101 + @Log(title = "出库-出库单", operating="新增出库主单", action = BusinessType.INSERT)
  102 + @PostMapping("/add")
  103 + @ResponseBody
  104 + public AjaxResult addSave(ShipmentHeader shipmentHeader)
  105 + {
  106 + AjaxResult ajaxResult=shipmentHeaderService.saveHeader(shipmentHeader);
  107 + return ajaxResult;
  108 + }
  109 +
  110 +// /**
  111 +// * 修改出库单主
  112 +// */
  113 +// @GetMapping("/edit/{id}")
  114 +// public String edit(@PathVariable("id") Integer id, ModelMap mmap)
  115 +// {
  116 +// ShipmentHeader shipmentHeader = shipmentHeaderService.selectEntityById(id);
  117 +// mmap.put("shipmentHeader", shipmentHeader);
  118 +// return prefix + "/edit";
  119 +// }
  120 +//
  121 +// /**
  122 +// * 修改保存出库单主
  123 +// */
  124 +// @RequiresPermissions("shipment:bill:edit")
  125 +// @Log(title = "出库-出库单", operating="修改出库主单", action = BusinessType.UPDATE)
  126 +// @PostMapping("/edit")
  127 +// @ResponseBody
  128 +// public AjaxResult editSave(ShipmentHeader shipmentHeader)
  129 +// {
  130 +// ShipmentHeader temp = shipmentHeaderService.selectEntityById(shipmentHeader.getId());
  131 +// if(temp.getFirstStatus()>100){
  132 +// return AjaxResult.error("已经超过订单池状态,不能修改");
  133 +// }
  134 +// temp.setCompanyCode(shipmentHeader.getCompanyCode());
  135 +// temp.setCompanyId(shipmentHeader.getCompanyId());
  136 +// temp.setSourceCode(shipmentHeader.getSourceCode());
  137 +// temp.setSourcePlatform(shipmentHeader.getSourcePlatform());
  138 +// temp.setShipTo(shipmentHeader.getShipTo());
  139 +// temp.setPriority(shipmentHeader.getPriority());
  140 +// temp.setStation(shipmentHeader.getStation());
  141 +// temp.setRemark(shipmentHeader.getRemark());
  142 +// temp.setUploadremark(shipmentHeader.getUploadremark());
  143 +// temp.setAppointmentTime(shipmentHeader.getAppointmentTime());
  144 +// temp.setEnable(shipmentHeader.getEnable());
  145 +// temp.setLastUpdatedBy(ShiroUtils.getLoginName());
  146 +// temp.setUserDef1(shipmentHeader.getUserDef1());
  147 +// temp.setUserDef2(shipmentHeader.getUserDef2());
  148 +// temp.setUserDef3(shipmentHeader.getUserDef3());
  149 +// return toAjax(shipmentHeaderService.updateByModel(temp));
  150 +// }
  151 +//
  152 +// /**
  153 +// * 删除出库单主
  154 +// */
  155 +// @RequiresPermissions("shipment:bill:remove")
  156 +// @Log(title = "出库-出库单", operating="删除出库主单", action = BusinessType.DELETE)
  157 +// @PostMapping( "/remove")
  158 +// @ResponseBody
  159 +// public AjaxResult remove(String ids) {
  160 +// if (StringUtils.isEmpty(ids))
  161 +// return AjaxResult.error("id不能为空");
  162 +// for (Integer id : Convert.toIntArray(ids))
  163 +// {
  164 +// AjaxResult result = shipmentHeaderService.deleteHeaderAndDetail(id);
  165 +// if (result.code != RetCode.SUCCESS.getValue())
  166 +// return result;
  167 +// }
  168 +// return AjaxResult.success("删除成功!");
  169 +// }
  170 +//
  171 +// /**
  172 +// * 出库单报表打印
  173 +// * @return
  174 +// */
  175 +// @RequiresPermissions("shipment:bill:report")
  176 +// @Log(title = "出库-出库单", operating="打印出库单报表", action = BusinessType.OTHER)
  177 +// @GetMapping("/report/{id}")
  178 +// public String report(@PathVariable("id") Integer id, ModelMap mmap)
  179 +// {
  180 +// ShipmentHeader shipmentHeader = shipmentHeaderService.selectEntityById(id);
  181 +// mmap.put("shipmentHeader", shipmentHeader);
  182 +//
  183 +// ShipmentDetail shipmentDetail = new ShipmentDetail();
  184 +// shipmentDetail.setShipmentId(id);
  185 +// List<ShipmentDetail> details = shipmentDetailService.getShipmentDetailListByLike(shipmentDetail);
  186 +// mmap.put("details", details);
  187 +//
  188 +// return prefix + "/report";
  189 +// }
  190 +//
  191 +// /**
  192 +// * 手动组盘
  193 +// */
  194 +// @RequiresPermissions("shipment:bill:view")
  195 +// @Log(title = "出库-出库单", operating = "手动组盘", action = BusinessType.OTHER)
  196 +// @PostMapping( "/shipping")
  197 +// @ResponseBody
  198 +// public AjaxResult receive(String code, String ids)
  199 +// {
  200 +// AjaxResult ajaxResult=new AjaxResult();
  201 +// if(StringUtils.isEmpty(ids)){
  202 +// ajaxResult = shipmentHeaderService.shippings(code);
  203 +// }else {
  204 +// ajaxResult = shipmentHeaderService.shipping(code, ids.split(","));
  205 +// }
  206 +// return ajaxResult;
  207 +// }
  208 +//
  209 +// @PostMapping("/getShipmentHeader")
  210 +// @ResponseBody
  211 +// public AjaxResult<ShipmentHeader> getShipmentHeader(int id){
  212 +// return AjaxResult.success(shipmentHeaderService.selectEntityById(id));
  213 +// }
  214 +}
... ...
src/main/java/com/huaheng/pc/shipment/shipmentHeader/domain/ShipmentHeader.java
... ... @@ -36,12 +36,7 @@ public class ShipmentHeader implements Serializable {
36 36 @ApiModelProperty(value = "货主")
37 37 private String companyCode;
38 38  
39   - /**
40   - * 装载号
41   - */
42   - @TableField(value = "loadId")
43   - @ApiModelProperty(value = "装载号")
44   - private Integer loadId;
  39 +
45 40  
46 41 /**
47 42 * 出库单号
... ... @@ -134,12 +129,7 @@ public class ShipmentHeader implements Serializable {
134 129 @ApiModelProperty(value = "要求到货时间")
135 130 private Date requestedDeliveryDate;
136 131  
137   - /**
138   - * 要求到货类型
139   - */
140   - @TableField(value = "requestedDeliveryType")
141   - @ApiModelProperty(value = "要求到货类型")
142   - private String requestedDeliveryType;
  132 +
143 133  
144 134 /**
145 135 * 计划发车日期
... ... @@ -225,26 +215,7 @@ public class ShipmentHeader implements Serializable {
225 215 @ApiModelProperty(value = "总行数")
226 216 private Integer totalLines;
227 217  
228   - /**
229   - * 总拼箱数
230   - */
231   - @TableField(value = "totalContainers")
232   - @ApiModelProperty(value = "总拼箱数")
233   - private Integer totalContainers;
234   -
235   - /**
236   - * 总整箱数
237   - */
238   - @TableField(value = "totalCases")
239   - @ApiModelProperty(value = "总整箱数")
240   - private Integer totalCases;
241 218  
242   - /**
243   - * 总价值
244   - */
245   - @TableField(value = "totalValue")
246   - @ApiModelProperty(value = "总价值")
247   - private BigDecimal totalValue;
248 219  
249 220 /**
250 221 * 处理类型
... ... @@ -441,8 +412,6 @@ public class ShipmentHeader implements Serializable {
441 412  
442 413 public static final String COL_COMPANYCODE = "companyCode";
443 414  
444   - public static final String COL_LOADID = "loadId";
445   -
446 415 public static final String COL_CODE = "code";
447 416  
448 417 public static final String COL_REFERCODE = "referCode";
... ... @@ -469,8 +438,6 @@ public class ShipmentHeader implements Serializable {
469 438  
470 439 public static final String COL_REQUESTEDDELIVERYDATE = "requestedDeliveryDate";
471 440  
472   - public static final String COL_REQUESTEDDELIVERYTYPE = "requestedDeliveryType";
473   -
474 441 public static final String COL_SCHEDULEDSHIPDATE = "scheduledShipDate";
475 442  
476 443 public static final String COL_ACTUALSHIPDATETIME = "actualShipDateTime";
... ... @@ -495,12 +462,6 @@ public class ShipmentHeader implements Serializable {
495 462  
496 463 public static final String COL_TOTALLINES = "totalLines";
497 464  
498   - public static final String COL_TOTALCONTAINERS = "totalContainers";
499   -
500   - public static final String COL_TOTALCASES = "totalCases";
501   -
502   - public static final String COL_TOTALVALUE = "totalValue";
503   -
504 465 public static final String COL_PROCESSTYPE = "processType";
505 466  
506 467 public static final String COL_LASTWAVEID = "lastWaveId";
... ...
src/main/java/com/huaheng/pc/shipment/shipmentHeader/mapper/ShipmentHeaderMapper.java
... ... @@ -4,4 +4,11 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 4 import com.huaheng.pc.shipment.shipmentHeader.domain.ShipmentHeader;
5 5  
6 6 public interface ShipmentHeaderMapper extends BaseMapper<ShipmentHeader> {
  7 +
  8 + /**
  9 + * 生成出库单编码
  10 + * @return
  11 + */
  12 + String createCode(String shipmentType);
  13 +
7 14 }
8 15 \ No newline at end of file
... ...
src/main/java/com/huaheng/pc/shipment/shipmentHeader/service/ShipmentHeaderService.java
1 1 package com.huaheng.pc.shipment.shipmentHeader.service;
2 2  
  3 +import com.huaheng.framework.web.domain.AjaxResult;
3 4 import com.huaheng.pc.shipment.shipmentHeader.domain.ShipmentHeader;
4 5 import com.baomidou.mybatisplus.extension.service.IService;
5 6 public interface ShipmentHeaderService extends IService<ShipmentHeader>{
6 7  
  8 + //新增出库主单
  9 + AjaxResult<Boolean> saveHeader(ShipmentHeader shipmentHeader) ;
  10 +
  11 +
  12 + //根据单据类型建单据号
  13 + String createCode(String shipmentType);
7 14  
8 15 }
... ...
src/main/java/com/huaheng/pc/shipment/shipmentHeader/service/ShipmentHeaderServiceImpl.java
1 1 package com.huaheng.pc.shipment.shipmentHeader.service;
2 2  
  3 +import com.huaheng.common.utils.security.ShiroUtils;
  4 +import com.huaheng.framework.web.domain.AjaxResult;
  5 +import com.huaheng.pc.system.dict.service.IDictDataService;
  6 +import org.springframework.beans.factory.annotation.Autowired;
3 7 import org.springframework.stereotype.Service;
4 8 import javax.annotation.Resource;
  9 +import java.text.SimpleDateFormat;
  10 +import java.util.Date;
5 11 import java.util.List;
6 12 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7 13 import com.huaheng.pc.shipment.shipmentHeader.domain.ShipmentHeader;
... ... @@ -10,4 +16,50 @@ import com.huaheng.pc.shipment.shipmentHeader.service.ShipmentHeaderService;
10 16 @Service
11 17 public class ShipmentHeaderServiceImpl extends ServiceImpl<ShipmentHeaderMapper, ShipmentHeader> implements ShipmentHeaderService{
12 18  
  19 + @Autowired
  20 + private IDictDataService dictDataService;
  21 + @Resource
  22 + private ShipmentHeaderMapper shipmentHeaderMapper;
  23 +
  24 +
  25 + //新增出库主单
  26 + @Override
  27 + public AjaxResult<Boolean> saveHeader(ShipmentHeader shipmentHeader) {
  28 + if(dictDataService.checkConfig("shipmentType", shipmentHeader.getShipmentType()) == false)
  29 + {
  30 + return AjaxResult.error("没有对应的出库单类型");
  31 + }
  32 + String code = createCode(shipmentHeader.getShipmentType());
  33 + shipmentHeader.setId(null);
  34 + shipmentHeader.setFirstStatus(0);
  35 + shipmentHeader.setLastStatus(0);
  36 + shipmentHeader.setLastUpdated(null);
  37 + shipmentHeader.setLastUpdatedBy(ShiroUtils.getLoginName());
  38 + shipmentHeader.setCreated(null);
  39 + shipmentHeader.setCreatedBy(ShiroUtils.getLoginName());
  40 + shipmentHeader.setWarehouseCode(ShiroUtils.getWarehouseCode());
  41 + shipmentHeader.setCode(code);
  42 + boolean result = this.save(shipmentHeader);
  43 + return AjaxResult.toAjax(result);
  44 + }
  45 +
  46 +
  47 + //根据单据类型建单据号
  48 + public String createCode(String shipmentType)
  49 + {
  50 + String code = null;
  51 + Date now = new Date();
  52 + SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd");
  53 + String maxCode = shipmentHeaderMapper.createCode(shipmentType);
  54 + if (maxCode != null && maxCode.length() > 13 && maxCode.substring(maxCode.length() - 13, maxCode.length() - 5).equals(df.format(now)))
  55 + {
  56 + Integer Count = Integer.valueOf(maxCode.substring(maxCode.length() - 5, maxCode.length()));
  57 + code = shipmentType + df.format(now) + String.format("%05d", Count + 1);
  58 + }
  59 + else
  60 + {
  61 + code = shipmentType + df.format(now) + "00001";
  62 + }
  63 + return code;
  64 + }
13 65 }
... ...
src/main/java/com/huaheng/pc/system/role/domain/Role.java
... ... @@ -60,6 +60,7 @@ public class Role
60 60 private String warehouseCode;
61 61  
62 62 /** 用户是否存在此角色标识 默认不存在 */
  63 + @TableField(exist = false)
63 64 private boolean flag = false;
64 65  
65 66 /** 菜单组 */
... ... @@ -87,7 +88,6 @@ public class Role
87 88 private Date updateTime;
88 89  
89 90 /** 备注 */
90   -// @TableField(exist=false)
91 91 @TableField
92 92 private String remark;
93 93  
... ...
src/main/java/com/huaheng/pc/system/user/controller/UserController.java
... ... @@ -2,11 +2,22 @@ package com.huaheng.pc.system.user.controller;
2 2  
3 3 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
4 4 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
  5 +import com.huaheng.common.constant.Constants;
  6 +import com.huaheng.common.utils.MessageUtils;
  7 +import com.huaheng.common.utils.SystemLogUtils;
5 8 import com.huaheng.common.utils.security.ShiroUtils;
  9 +import com.huaheng.framework.shiro.web.filter.LogoutFilter;
6 10 import com.huaheng.pc.general.company.domain.Company;
7 11 import com.huaheng.pc.general.company.service.CompanyService;
  12 +import com.huaheng.pc.general.warehouse.domain.Warehouse;
  13 +import com.huaheng.pc.general.warehouse.mapper.WarehouseMapper;
  14 +import com.huaheng.pc.general.warehouse.service.WarehouseService;
  15 +import com.huaheng.pc.system.user.domain.SysUserWarehouse;
8 16 import org.apache.shiro.authz.annotation.RequiresPermissions;
  17 +import org.apache.shiro.session.SessionException;
  18 +import org.apache.shiro.subject.Subject;
9 19 import org.springframework.beans.factory.annotation.Autowired;
  20 +import org.springframework.boot.web.servlet.server.Session;
10 21 import org.springframework.stereotype.Controller;
11 22 import org.springframework.transaction.annotation.Transactional;
12 23 import org.springframework.ui.ModelMap;
... ... @@ -25,7 +36,14 @@ import com.huaheng.framework.web.page.TableDataInfo;
25 36 import com.huaheng.pc.system.role.service.IRoleService;
26 37 import com.huaheng.pc.system.user.domain.User;
27 38 import com.huaheng.pc.system.user.service.IUserService;
  39 +
  40 +import javax.annotation.Resource;
  41 +import javax.servlet.ServletRequest;
  42 +import javax.servlet.ServletResponse;
28 43 import java.util.List;
  44 +import java.util.Map;
  45 +
  46 +import static javax.security.auth.Subject.getSubject;
29 47  
30 48 /**
31 49 * 用户信息
... ... @@ -47,6 +65,12 @@ public class UserController extends BaseController
47 65 @Autowired
48 66 private CompanyService companyService;
49 67  
  68 + @Autowired
  69 + private WarehouseService warehouseService;
  70 +
  71 + @Resource
  72 + private WarehouseMapper warehouseMapper;
  73 +
50 74 @RequiresPermissions("system:user:view")
51 75 @GetMapping()
52 76 public String user()
... ... @@ -94,6 +118,13 @@ public class UserController extends BaseController
94 118 mmap.put("roles", roleService.selectRoleAll());
95 119 LambdaQueryWrapper<Company> lambdaQueryWrapper = Wrappers.lambdaQuery(company);
96 120 mmap.put("companys", companyService.list(lambdaQueryWrapper));
  121 + LambdaQueryWrapper<Warehouse> warehouse = Wrappers.lambdaQuery();
  122 + warehouse.select(Warehouse::getCode,Warehouse::getName,Warehouse::getEnable);
  123 + List<Map<String, Object>> warehouseList = warehouseService.listMaps(warehouse);
  124 + for (Map<String, Object> item : warehouseList){
  125 + item.put("value",item.get("code").toString());
  126 + }
  127 + mmap.put("warehouseList",warehouseList);
97 128 return prefix + "/add";
98 129 }
99 130  
... ... @@ -124,6 +155,7 @@ public class UserController extends BaseController
124 155 mmap.put("user", userService.selectUserById(id));
125 156 mmap.put("roles", roleService.selectRolesByUserId(id));
126 157 mmap.put("companys", companyService.selectCompanyByUserId(id));
  158 + mmap.put("warehouses", warehouseService.selectWarehouseByUserId(id));
127 159 return prefix + "/edit";
128 160 }
129 161  
... ... @@ -137,11 +169,16 @@ public class UserController extends BaseController
137 169 @ResponseBody
138 170 public AjaxResult editSave(User user)
139 171 {
  172 +
140 173 if (StringUtils.isNotNull(user.getId()) && User.isAdmin(user.getId()))
141 174 {
142 175 return error("不允许修改超级管理员用户");
143 176 }
144 177 AjaxResult ajaxResult = toAjax(userService.updateUser(user));
  178 +
  179 + if (ShiroUtils.getLoginName().equals(user.getUserName()))
  180 + ShiroUtils.logout();
  181 +
145 182 return ajaxResult;
146 183 }
147 184  
... ...
src/main/java/com/huaheng/pc/system/userWarehouse/domain/SysUserWarehouse.java renamed to src/main/java/com/huaheng/pc/system/user/domain/SysUserWarehouse.java
1   -package com.huaheng.pc.system.userWarehouse.domain;
  1 +package com.huaheng.pc.system.user.domain;
2 2  
3 3 import com.baomidou.mybatisplus.annotation.IdType;
4 4 import com.baomidou.mybatisplus.annotation.TableField;
... ... @@ -6,9 +6,10 @@ import com.baomidou.mybatisplus.annotation.TableId;
6 6 import com.baomidou.mybatisplus.annotation.TableName;
7 7 import io.swagger.annotations.ApiModel;
8 8 import io.swagger.annotations.ApiModelProperty;
9   -import java.io.Serializable;
10 9 import lombok.Data;
11 10  
  11 +import java.io.Serializable;
  12 +
12 13 @ApiModel(value="com.huaheng.pc.system.userWarehousel.domain.SysUserWarehouse")
13 14 @Data
14 15 @TableName(value = "sys_user_warehouse")
... ...
src/main/java/com/huaheng/pc/system/user/domain/User.java
... ... @@ -112,6 +112,9 @@ public class User
112 112 /** 货主编码列表 */
113 113 private List<String> companyCodeList;
114 114  
  115 + /** 仓库编码列表 */
  116 + private List<String> warehouseCodeList;
  117 +
115 118 /** 搜索值 */
116 119 private String searchValue;
117 120  
... ...
src/main/java/com/huaheng/pc/system/user/mapper/SysUserWarehouseMapper.java 0 → 100644
  1 +package com.huaheng.pc.system.user.mapper;
  2 +
  3 +import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  4 +import com.huaheng.pc.system.user.domain.SysUserWarehouse;
  5 +import org.apache.ibatis.annotations.Param;
  6 +
  7 +import java.util.List;
  8 +
  9 +
  10 +public interface SysUserWarehouseMapper extends BaseMapper<SysUserWarehouse> {
  11 +
  12 + public int batchUserWarehouse(@Param("userWarehouseList") List<SysUserWarehouse> userWarehouseList);
  13 +
  14 + public int deleteUserWarehouseByUserId(Integer userId);
  15 +
  16 +}
0 17 \ No newline at end of file
... ...
src/main/java/com/huaheng/pc/system/user/mapper/UserMapper.java
... ... @@ -132,6 +132,14 @@ public interface UserMapper
132 132 */
133 133 public List<Map<String, Object>> getWarehouseByUserCode(@Param("loginName")String loginName);
134 134  
  135 +
  136 + /**
  137 + * 根据用户编码查询该用户所有仓库
  138 + * @param loginName
  139 + * @return
  140 + */
  141 + public List<Map<String, Object>> getWarehouseByUserName(@Param("loginName")String loginName);
  142 +
135 143 /**
136 144 * 更新用户维护日期
137 145 * @param date
... ...
src/main/java/com/huaheng/pc/system/user/service/IUserService.java
... ... @@ -2,8 +2,10 @@ package com.huaheng.pc.system.user.service;
2 2  
3 3 import com.huaheng.framework.web.domain.AjaxResult;
4 4 import com.huaheng.pc.system.user.domain.ClientType;
  5 +import com.huaheng.pc.system.user.domain.SysUserWarehouse;
5 6 import com.huaheng.pc.system.user.domain.User;
6 7 import io.swagger.models.auth.In;
  8 +import org.apache.ibatis.annotations.Param;
7 9  
8 10 import java.util.Date;
9 11 import java.util.List;
... ... @@ -195,6 +197,8 @@ public interface IUserService
195 197 * @return
196 198 */
197 199 public User selectmen(String loginName);
  200 +
  201 + public int batchUserWarehouse(@Param("userWarehouseList") List<SysUserWarehouse> userWarehouseList);
198 202 }
199 203  
200 204  
... ...
src/main/java/com/huaheng/pc/system/user/service/UserServiceImpl.java
... ... @@ -13,8 +13,8 @@ import com.huaheng.pc.general.company.mapper.CompanyMapper;
13 13 import com.huaheng.pc.general.company.service.CompanyService;
14 14 import com.huaheng.pc.general.warehouse.service.WarehouseService;
15 15 import com.huaheng.pc.general.warehouse.domain.Warehouse;
16   -import com.huaheng.pc.system.user.domain.ClientType;
17   -import com.huaheng.pc.system.user.domain.UserCompany;
  16 +import com.huaheng.pc.system.user.domain.*;
  17 +import com.huaheng.pc.system.user.mapper.SysUserWarehouseMapper;
18 18 import com.huaheng.pc.system.user.mapper.UserCompanyMapper;
19 19 import org.apache.shiro.SecurityUtils;
20 20 import org.apache.shiro.authc.AuthenticationException;
... ... @@ -29,8 +29,6 @@ import com.huaheng.common.utils.security.ShiroUtils;
29 29 import com.huaheng.framework.shiro.service.PasswordService;
30 30 import com.huaheng.pc.system.role.domain.Role;
31 31 import com.huaheng.pc.system.role.mapper.RoleMapper;
32   -import com.huaheng.pc.system.user.domain.User;
33   -import com.huaheng.pc.system.user.domain.UserRole;
34 32 import com.huaheng.pc.system.user.mapper.UserMapper;
35 33 import com.huaheng.pc.system.user.mapper.UserRoleMapper;
36 34  
... ... @@ -68,11 +66,14 @@ public class UserServiceImpl implements IUserService
68 66 @Resource
69 67 private WarehouseService warehouseService;
70 68  
  69 + @Resource
  70 + private SysUserWarehouseMapper sysUserWarehouseMapper;
  71 +
71 72 /**
72 73 * 登陆验证
73 74 * @param username 用户名
74 75 * @param password 密 码
75   - * @param warehouseId 仓库id
  76 +// * @param warehouseId 仓库id
76 77 * @param warehouseCode 仓库编码
77 78 * @return
78 79 */
... ... @@ -262,6 +263,8 @@ public class UserServiceImpl implements IUserService
262 263 insertUserCompany(user);
263 264 // 新增用户与角色管理
264 265 insertUserRole(user);
  266 + // 新增用户与仓库管理
  267 + insertUserWarehouse(user);
265 268 return rows;
266 269 }
267 270  
... ... @@ -284,6 +287,11 @@ public class UserServiceImpl implements IUserService
284 287 userCompanyMapper.deleteUserCompanyByUserId(userId);
285 288 // 新增用户与货主管理
286 289 insertUserCompany(user);
  290 + // 删除用户与仓库关联
  291 + sysUserWarehouseMapper.deleteUserWarehouseByUserId(userId);
  292 + // 新增用户与仓库管理
  293 + insertUserWarehouse(user);
  294 +
287 295 return userMapper.updateUser(user);
288 296 }
289 297  
... ... @@ -335,6 +343,29 @@ public class UserServiceImpl implements IUserService
335 343 }
336 344 }
337 345  
  346 +
  347 + /**
  348 + * 新增用户仓库信息
  349 + *
  350 + * @param user 用户对象
  351 + */
  352 + public void insertUserWarehouse(User user)
  353 + {
  354 + // 新增用户与仓库管理
  355 + List<SysUserWarehouse> list = new ArrayList<SysUserWarehouse>();
  356 + if (user.getWarehouseCodeList() != null) {
  357 + for (String warehouseCode : user.getWarehouseCodeList()) {
  358 + SysUserWarehouse warehouse = new SysUserWarehouse();
  359 + warehouse.setUserId(user.getId());
  360 + warehouse.setWarehouseCode(warehouseCode);
  361 + list.add(warehouse);
  362 + }
  363 + if (list.size() > 0) {
  364 + sysUserWarehouseMapper.batchUserWarehouse(list);
  365 + }
  366 + }
  367 + }
  368 +
338 369 /**
339 370 * 新增用户货主信息
340 371 *
... ... @@ -469,7 +500,11 @@ public class UserServiceImpl implements IUserService
469 500 }
470 501 else
471 502 {
472   - list = userMapper.getWarehouseByUserCode(loginName);
  503 + list = userMapper.getWarehouseByUserName(loginName);
  504 + if (list.size()==1)
  505 + list=userMapper.getWarehouseByUserCode(loginName);
  506 +
  507 +
473 508 }
474 509 return list;
475 510 }
... ... @@ -552,4 +587,9 @@ public class UserServiceImpl implements IUserService
552 587 return user;
553 588 }
554 589  
  590 + @Override
  591 + public int batchUserWarehouse(List<SysUserWarehouse> userWarehouseList) {
  592 + return sysUserWarehouseMapper.batchUserWarehouse(userWarehouseList);
  593 + }
  594 +
555 595 }
... ...
src/main/java/com/huaheng/pc/system/userWarehouse/mapper/SysUserWarehouseMapper.java deleted
1   -package com.huaheng.pc.system.userWarehouse.mapper;
2   -
3   -import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4   -import com.huaheng.pc.system.userWarehouse.domain.SysUserWarehouse;
5   -
6   -public interface SysUserWarehouseMapper extends BaseMapper<SysUserWarehouse> {
7   -}
8 0 \ No newline at end of file
src/main/java/com/huaheng/pc/system/userWarehouse/service/SysUserWarehouseService.java deleted
1   -package com.huaheng.pc.system.userWarehouse.service;
2   -
3   -import com.huaheng.pc.system.userWarehouse.domain.SysUserWarehouse;
4   -import com.baomidou.mybatisplus.extension.service.IService;
5   -public interface SysUserWarehouseService extends IService<SysUserWarehouse>{
6   -
7   -
8   -}
src/main/java/com/huaheng/pc/system/userWarehouse/service/SysUserWarehouseServiceImpl.java deleted
1   -package com.huaheng.pc.system.userWarehouse.service;
2   -
3   -import org.springframework.stereotype.Service;
4   -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
5   -import com.huaheng.pc.system.userWarehouse.mapper.SysUserWarehouseMapper;
6   -import com.huaheng.pc.system.userWarehouse.domain.SysUserWarehouse;
7   -
8   -@Service
9   -public class SysUserWarehouseServiceImpl extends ServiceImpl<SysUserWarehouseMapper, SysUserWarehouse> implements SysUserWarehouseService{
10   -
11   -}
src/main/java/com/huaheng/pc/task/taskDetail/domain/TaskDetail.java 0 → 100644
  1 +package com.huaheng.pc.task.taskDetail.domain;
  2 +
  3 +import com.baomidou.mybatisplus.annotation.IdType;
  4 +import com.baomidou.mybatisplus.annotation.TableField;
  5 +import com.baomidou.mybatisplus.annotation.TableId;
  6 +import com.baomidou.mybatisplus.annotation.TableName;
  7 +import io.swagger.annotations.ApiModel;
  8 +import io.swagger.annotations.ApiModelProperty;
  9 +import java.io.Serializable;
  10 +import java.util.Date;
  11 +import lombok.Data;
  12 +
  13 +@ApiModel(value="com.huaheng.pc.task.taskDetail.domain.TaskDetail")
  14 +@Data
  15 +@TableName(value = "task_detail")
  16 +public class TaskDetail implements Serializable {
  17 + /**
  18 + * ID
  19 + */
  20 + @TableId(value = "id", type = IdType.AUTO)
  21 + @ApiModelProperty(value="ID")
  22 + private Integer id;
  23 +
  24 + /**
  25 + * 任务头内部号
  26 + */
  27 + @TableField(value = "taskId")
  28 + @ApiModelProperty(value="任务头内部号")
  29 + private Integer taskId;
  30 +
  31 + /**
  32 + * 任务号
  33 + */
  34 + @TableField(value = "taskCode")
  35 + @ApiModelProperty(value="任务号")
  36 + private String taskCode;
  37 +
  38 + /**
  39 + * 任务类型
  40 + */
  41 + @TableField(value = "taskType")
  42 + @ApiModelProperty(value="任务类型")
  43 + private String taskType;
  44 +
  45 + /**
  46 + * 任务类型
  47 + */
  48 + @TableField(value = "internalTaskType")
  49 + @ApiModelProperty(value="任务类型")
  50 + private String internalTaskType;
  51 +
  52 + /**
  53 + * 仓库
  54 + */
  55 + @TableField(value = "warehouseCode")
  56 + @ApiModelProperty(value="仓库")
  57 + private String warehouseCode;
  58 +
  59 + /**
  60 + * 货主
  61 + */
  62 + @TableField(value = "companyCode")
  63 + @ApiModelProperty(value="货主")
  64 + private String companyCode;
  65 +
  66 + /**
  67 + * 物料
  68 + */
  69 + @TableField(value = "materialCode")
  70 + @ApiModelProperty(value="物料")
  71 + private String materialCode;
  72 +
  73 + /**
  74 + * 物料明细
  75 + */
  76 + @TableField(value = "materialName")
  77 + @ApiModelProperty(value="物料明细")
  78 + private String materialName;
  79 +
  80 + /**
  81 + * 物料
  82 + */
  83 + @TableField(value = "materialSpec")
  84 + @ApiModelProperty(value="物料")
  85 + private String materialSpec;
  86 +
  87 + /**
  88 + * 物料明细
  89 + */
  90 + @TableField(value = "materialUnit")
  91 + @ApiModelProperty(value="物料明细")
  92 + private String materialUnit;
  93 +
  94 + /**
  95 + * 数量
  96 + */
  97 + @TableField(value = "qty")
  98 + @ApiModelProperty(value="数量")
  99 + private Integer qty;
  100 +
  101 + /**
  102 + * 从货位
  103 + */
  104 + @TableField(value = "fromLocation")
  105 + @ApiModelProperty(value="从货位")
  106 + private String fromLocation;
  107 +
  108 + /**
  109 + * 到货位
  110 + */
  111 + @TableField(value = "toLocation")
  112 + @ApiModelProperty(value="到货位")
  113 + private String toLocation;
  114 +
  115 + /**
  116 + * 容器编码
  117 + */
  118 + @TableField(value = "containerCode")
  119 + @ApiModelProperty(value="容器编码")
  120 + private String containerCode;
  121 +
  122 + /**
  123 + * 从区域
  124 + */
  125 + @TableField(value = "fromZone")
  126 + @ApiModelProperty(value="从区域")
  127 + private String fromZone;
  128 +
  129 + /**
  130 + * 到区域
  131 + */
  132 + @TableField(value = "toZone")
  133 + @ApiModelProperty(value="到区域")
  134 + private String toZone;
  135 +
  136 + /**
  137 + * 属性号
  138 + */
  139 + @TableField(value = "attributeId")
  140 + @ApiModelProperty(value="属性号")
  141 + private Integer attributeId;
  142 +
  143 + /**
  144 + * 状态
  145 + */
  146 + @TableField(value = "enable")
  147 + @ApiModelProperty(value="状态")
  148 + private Integer enable;
  149 +
  150 + /**
  151 + * 参考单号
  152 + */
  153 + @TableField(value = "referenceCode")
  154 + @ApiModelProperty(value="参考单号")
  155 + private String referenceCode;
  156 +
  157 + /**
  158 + * 参考内部号
  159 + */
  160 + @TableField(value = "referenceId")
  161 + @ApiModelProperty(value="参考内部号")
  162 + private Integer referenceId;
  163 +
  164 + /**
  165 + * 参考内部行号
  166 + */
  167 + @TableField(value = "referenceLineId")
  168 + @ApiModelProperty(value="参考内部行号")
  169 + private Integer referenceLineId;
  170 +
  171 + /**
  172 + * 指派用户
  173 + */
  174 + @TableField(value = "assignedUser")
  175 + @ApiModelProperty(value="指派用户")
  176 + private String assignedUser;
  177 +
  178 + /**
  179 + * 属性1
  180 + */
  181 + @TableField(value = "attribute1")
  182 + @ApiModelProperty(value="属性1")
  183 + private String attribute1;
  184 +
  185 + /**
  186 + * 属性2
  187 + */
  188 + @TableField(value = "attribute2")
  189 + @ApiModelProperty(value="属性2")
  190 + private String attribute2;
  191 +
  192 + /**
  193 + * 属性3
  194 + */
  195 + @TableField(value = "attribute3")
  196 + @ApiModelProperty(value="属性3")
  197 + private String attribute3;
  198 +
  199 + /**
  200 + * 属性4
  201 + */
  202 + @TableField(value = "attribute4")
  203 + @ApiModelProperty(value="属性4")
  204 + private String attribute4;
  205 +
  206 + /**
  207 + * 批次
  208 + */
  209 + @TableField(value = "batch")
  210 + @ApiModelProperty(value="批次")
  211 + private String batch;
  212 +
  213 + /**
  214 + * 批号
  215 + */
  216 + @TableField(value = "lot")
  217 + @ApiModelProperty(value="批号")
  218 + private String lot;
  219 +
  220 + /**
  221 + * 项目号
  222 + */
  223 + @TableField(value = "projectNo")
  224 + @ApiModelProperty(value="项目号")
  225 + private String projectNo;
  226 +
  227 + /**
  228 + * 质检
  229 + */
  230 + @TableField(value = "qcCheck")
  231 + @ApiModelProperty(value="质检")
  232 + private String qcCheck;
  233 +
  234 + /**
  235 + * 生产日期
  236 + */
  237 + @TableField(value = "manufactureDate")
  238 + @ApiModelProperty(value="生产日期")
  239 + private Date manufactureDate;
  240 +
  241 + /**
  242 + * 失效日期
  243 + */
  244 + @TableField(value = "expirationDate")
  245 + @ApiModelProperty(value="失效日期")
  246 + private Date expirationDate;
  247 +
  248 + /**
  249 + * 入库日期
  250 + */
  251 + @TableField(value = "agingDate")
  252 + @ApiModelProperty(value="入库日期")
  253 + private Date agingDate;
  254 +
  255 + /**
  256 + * 库存状态
  257 + */
  258 + @TableField(value = "inventorySts")
  259 + @ApiModelProperty(value="库存状态")
  260 + private String inventorySts;
  261 +
  262 + /**
  263 + * 波次号
  264 + */
  265 + @TableField(value = "waveId")
  266 + @ApiModelProperty(value="波次号")
  267 + private Integer waveId;
  268 +
  269 + /**
  270 + * 分配的库存ID
  271 + */
  272 + @TableField(value = "fromInventoryId")
  273 + @ApiModelProperty(value="分配的库存ID")
  274 + private Integer fromInventoryId;
  275 +
  276 + @TableField(value = "toInventoryId")
  277 + @ApiModelProperty(value="null")
  278 + private Integer toInventoryId;
  279 +
  280 + /**
  281 + * 确认用户
  282 + */
  283 + @TableField(value = "confirmedBy")
  284 + @ApiModelProperty(value="确认用户")
  285 + private String confirmedBy;
  286 +
  287 + /**
  288 + * 组号
  289 + */
  290 + @TableField(value = "groupNum")
  291 + @ApiModelProperty(value="组号")
  292 + private Integer groupNum;
  293 +
  294 + /**
  295 + * 序号
  296 + */
  297 + @TableField(value = "groupIndex")
  298 + @ApiModelProperty(value="序号")
  299 + private Integer groupIndex;
  300 +
  301 + /**
  302 + * 创建时间
  303 + */
  304 + @TableField(value = "created")
  305 + @ApiModelProperty(value="创建时间")
  306 + private Date created;
  307 +
  308 + /**
  309 + * 创建用户
  310 + */
  311 + @TableField(value = "createdBy")
  312 + @ApiModelProperty(value="创建用户")
  313 + private String createdBy;
  314 +
  315 + /**
  316 + * 创建时间
  317 + */
  318 + @TableField(value = "lastUpdated")
  319 + @ApiModelProperty(value="创建时间")
  320 + private Date lastUpdated;
  321 +
  322 + /**
  323 + * 更新用户
  324 + */
  325 + @TableField(value = "lastUpdatedBy")
  326 + @ApiModelProperty(value="更新用户")
  327 + private String lastUpdatedBy;
  328 +
  329 + /**
  330 + * 数据版本
  331 + */
  332 + @TableField(value = "version")
  333 + @ApiModelProperty(value="数据版本")
  334 + private Integer version;
  335 +
  336 + /**
  337 + * kitFlag标志 Y/N AGV专用
  338 + */
  339 + @TableField(value = "userDef1")
  340 + @ApiModelProperty(value="kitFlag标志 Y/N AGV专用")
  341 + private String userDef1;
  342 +
  343 + /**
  344 + * unit 单位 AGV专用
  345 + */
  346 + @TableField(value = "userDef2")
  347 + @ApiModelProperty(value="unit 单位 AGV专用")
  348 + private String userDef2;
  349 +
  350 + /**
  351 + * 自定义字段3
  352 + */
  353 + @TableField(value = "userDef3")
  354 + @ApiModelProperty(value="自定义字段3")
  355 + private String userDef3;
  356 +
  357 + /**
  358 + * 自定义字段4
  359 + */
  360 + @TableField(value = "userDef4")
  361 + @ApiModelProperty(value="自定义字段4")
  362 + private String userDef4;
  363 +
  364 + /**
  365 + * 自定义字段5
  366 + */
  367 + @TableField(value = "userDef5")
  368 + @ApiModelProperty(value="自定义字段5")
  369 + private String userDef5;
  370 +
  371 + /**
  372 + * 自定义字段6
  373 + */
  374 + @TableField(value = "userDef6")
  375 + @ApiModelProperty(value="自定义字段6")
  376 + private String userDef6;
  377 +
  378 + /**
  379 + * 自定义字段7
  380 + */
  381 + @TableField(value = "userDef7")
  382 + @ApiModelProperty(value="自定义字段7")
  383 + private String userDef7;
  384 +
  385 + /**
  386 + * 自定义字段8
  387 + */
  388 + @TableField(value = "userDef8")
  389 + @ApiModelProperty(value="自定义字段8")
  390 + private String userDef8;
  391 +
  392 + /**
  393 + * 处理标记
  394 + */
  395 + @TableField(value = "processStamp")
  396 + @ApiModelProperty(value="处理标记")
  397 + private String processStamp;
  398 +
  399 + private static final long serialVersionUID = 1L;
  400 +
  401 + public static final String COL_ID = "id";
  402 +
  403 + public static final String COL_TASKID = "taskId";
  404 +
  405 + public static final String COL_TASKCODE = "taskCode";
  406 +
  407 + public static final String COL_TASKTYPE = "taskType";
  408 +
  409 + public static final String COL_INTERNALTASKTYPE = "internalTaskType";
  410 +
  411 + public static final String COL_WAREHOUSECODE = "warehouseCode";
  412 +
  413 + public static final String COL_COMPANYCODE = "companyCode";
  414 +
  415 + public static final String COL_MATERIALCODE = "materialCode";
  416 +
  417 + public static final String COL_MATERIALNAME = "materialName";
  418 +
  419 + public static final String COL_MATERIALSPEC = "materialSpec";
  420 +
  421 + public static final String COL_MATERIALUNIT = "materialUnit";
  422 +
  423 + public static final String COL_QTY = "qty";
  424 +
  425 + public static final String COL_FROMLOCATION = "fromLocation";
  426 +
  427 + public static final String COL_TOLOCATION = "toLocation";
  428 +
  429 + public static final String COL_CONTAINERCODE = "containerCode";
  430 +
  431 + public static final String COL_FROMZONE = "fromZone";
  432 +
  433 + public static final String COL_TOZONE = "toZone";
  434 +
  435 + public static final String COL_ATTRIBUTEID = "attributeId";
  436 +
  437 + public static final String COL_ENABLE = "enable";
  438 +
  439 + public static final String COL_REFERENCECODE = "referenceCode";
  440 +
  441 + public static final String COL_REFERENCEID = "referenceId";
  442 +
  443 + public static final String COL_REFERENCELINEID = "referenceLineId";
  444 +
  445 + public static final String COL_ASSIGNEDUSER = "assignedUser";
  446 +
  447 + public static final String COL_ATTRIBUTE1 = "attribute1";
  448 +
  449 + public static final String COL_ATTRIBUTE2 = "attribute2";
  450 +
  451 + public static final String COL_ATTRIBUTE3 = "attribute3";
  452 +
  453 + public static final String COL_ATTRIBUTE4 = "attribute4";
  454 +
  455 + public static final String COL_BATCH = "batch";
  456 +
  457 + public static final String COL_LOT = "lot";
  458 +
  459 + public static final String COL_PROJECTNO = "projectNo";
  460 +
  461 + public static final String COL_QCCHECK = "qcCheck";
  462 +
  463 + public static final String COL_MANUFACTUREDATE = "manufactureDate";
  464 +
  465 + public static final String COL_EXPIRATIONDATE = "expirationDate";
  466 +
  467 + public static final String COL_AGINGDATE = "agingDate";
  468 +
  469 + public static final String COL_INVENTORYSTS = "inventorySts";
  470 +
  471 + public static final String COL_WAVEID = "waveId";
  472 +
  473 + public static final String COL_FROMINVENTORYID = "fromInventoryId";
  474 +
  475 + public static final String COL_TOINVENTORYID = "toInventoryId";
  476 +
  477 + public static final String COL_CONFIRMEDBY = "confirmedBy";
  478 +
  479 + public static final String COL_GROUPNUM = "groupNum";
  480 +
  481 + public static final String COL_GROUPINDEX = "groupIndex";
  482 +
  483 + public static final String COL_CREATED = "created";
  484 +
  485 + public static final String COL_CREATEDBY = "createdBy";
  486 +
  487 + public static final String COL_LASTUPDATED = "lastUpdated";
  488 +
  489 + public static final String COL_LASTUPDATEDBY = "lastUpdatedBy";
  490 +
  491 + public static final String COL_VERSION = "version";
  492 +
  493 + public static final String COL_USERDEF1 = "userDef1";
  494 +
  495 + public static final String COL_USERDEF2 = "userDef2";
  496 +
  497 + public static final String COL_USERDEF3 = "userDef3";
  498 +
  499 + public static final String COL_USERDEF4 = "userDef4";
  500 +
  501 + public static final String COL_USERDEF5 = "userDef5";
  502 +
  503 + public static final String COL_USERDEF6 = "userDef6";
  504 +
  505 + public static final String COL_USERDEF7 = "userDef7";
  506 +
  507 + public static final String COL_USERDEF8 = "userDef8";
  508 +
  509 + public static final String COL_PROCESSSTAMP = "processStamp";
  510 +}
0 511 \ No newline at end of file
... ...
src/main/java/com/huaheng/pc/task/taskDetail/mapper/TaskDetailMapper.java 0 → 100644
  1 +package com.huaheng.pc.task.taskDetail.mapper;
  2 +
  3 +import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  4 +import com.huaheng.pc.task.taskDetail.domain.TaskDetail;
  5 +
  6 +public interface TaskDetailMapper extends BaseMapper<TaskDetail> {
  7 +}
0 8 \ No newline at end of file
... ...
src/main/java/com/huaheng/pc/task/taskDetail/service/TaskDetailService.java 0 → 100644
  1 +package com.huaheng.pc.task.taskDetail.service;
  2 +
  3 +import com.huaheng.pc.task.taskDetail.domain.TaskDetail;
  4 +import com.baomidou.mybatisplus.extension.service.IService;
  5 +public interface TaskDetailService extends IService<TaskDetail>{
  6 +
  7 +
  8 +}
... ...
src/main/java/com/huaheng/pc/task/taskDetail/service/TaskDetailServiceImpl.java 0 → 100644
  1 +package com.huaheng.pc.task.taskDetail.service;
  2 +
  3 +import org.springframework.stereotype.Service;
  4 +import javax.annotation.Resource;
  5 +import java.util.List;
  6 +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  7 +import com.huaheng.pc.task.taskDetail.mapper.TaskDetailMapper;
  8 +import com.huaheng.pc.task.taskDetail.domain.TaskDetail;
  9 +import com.huaheng.pc.task.taskDetail.service.TaskDetailService;
  10 +@Service
  11 +public class TaskDetailServiceImpl extends ServiceImpl<TaskDetailMapper, TaskDetail> implements TaskDetailService{
  12 +
  13 +}
... ...
src/main/java/com/huaheng/pc/task/taskHeader/domain/TaskHeader.java 0 → 100644
  1 +package com.huaheng.pc.task.taskHeader.domain;
  2 +
  3 +import com.baomidou.mybatisplus.annotation.IdType;
  4 +import com.baomidou.mybatisplus.annotation.TableField;
  5 +import com.baomidou.mybatisplus.annotation.TableId;
  6 +import com.baomidou.mybatisplus.annotation.TableName;
  7 +import io.swagger.annotations.ApiModel;
  8 +import io.swagger.annotations.ApiModelProperty;
  9 +import java.io.Serializable;
  10 +import java.util.Date;
  11 +import lombok.Data;
  12 +
  13 +@ApiModel(value="com.huaheng.pc.task.taskHeader.domain.TaskHeader")
  14 +@Data
  15 +@TableName(value = "task_header")
  16 +public class TaskHeader implements Serializable {
  17 + /**
  18 + * ID
  19 + */
  20 + @TableId(value = "id", type = IdType.AUTO)
  21 + @ApiModelProperty(value="ID")
  22 + private Integer id;
  23 +
  24 + /**
  25 + * 任务
  26 + */
  27 + @TableField(value = "code")
  28 + @ApiModelProperty(value="任务")
  29 + private String code;
  30 +
  31 + /**
  32 + * 仓库
  33 + */
  34 + @TableField(value = "warehouseCode")
  35 + @ApiModelProperty(value="仓库")
  36 + private String warehouseCode;
  37 +
  38 + /**
  39 + * 货主
  40 + */
  41 + @TableField(value = "companyCode")
  42 + @ApiModelProperty(value="货主")
  43 + private String companyCode;
  44 +
  45 + /**
  46 + * 任务类型
  47 + */
  48 + @TableField(value = "taskType")
  49 + @ApiModelProperty(value="任务类型")
  50 + private String taskType;
  51 +
  52 + /**
  53 + * 内部类型
  54 + */
  55 + @TableField(value = "internalTaskType")
  56 + @ApiModelProperty(value="内部类型")
  57 + private String internalTaskType;
  58 +
  59 + /**
  60 + * 参考单内部号
  61 + */
  62 + @TableField(value = "referenceId")
  63 + @ApiModelProperty(value="参考单内部号")
  64 + private Integer referenceId;
  65 +
  66 + /**
  67 + * 参考单号
  68 + */
  69 + @TableField(value = "referenceCode")
  70 + @ApiModelProperty(value="参考单号")
  71 + private String referenceCode;
  72 +
  73 + /**
  74 + * 分配用户
  75 + */
  76 + @TableField(value = "assignedUser")
  77 + @ApiModelProperty(value="分配用户")
  78 + private String assignedUser;
  79 +
  80 + /**
  81 + * 确认用户
  82 + */
  83 + @TableField(value = "confirmedBy")
  84 + @ApiModelProperty(value="确认用户")
  85 + private String confirmedBy;
  86 +
  87 + /**
  88 + * 状态
  89 + */
  90 + @TableField(value = "enable")
  91 + @ApiModelProperty(value="状态")
  92 + private Integer enable;
  93 +
  94 + /**
  95 + * 波次号
  96 + */
  97 + @TableField(value = "waveId")
  98 + @ApiModelProperty(value="波次号")
  99 + private Integer waveId;
  100 +
  101 + /**
  102 + * 车号
  103 + */
  104 + @TableField(value = "pickingCartCode")
  105 + @ApiModelProperty(value="车号")
  106 + private String pickingCartCode;
  107 +
  108 + /**
  109 + * 位置号
  110 + */
  111 + @TableField(value = "pickingCartPos")
  112 + @ApiModelProperty(value="位置号")
  113 + private String pickingCartPos;
  114 +
  115 + /**
  116 + * 容器号
  117 + */
  118 + @TableField(value = "containerCode")
  119 + @ApiModelProperty(value="容器号")
  120 + private String containerCode;
  121 +
  122 + /**
  123 + * 开始拣货时间
  124 + */
  125 + @TableField(value = "startPickDateTime")
  126 + @ApiModelProperty(value="开始拣货时间")
  127 + private Date startPickDateTime;
  128 +
  129 + /**
  130 + * 截至拣货时间
  131 + */
  132 + @TableField(value = "endPickDateTime")
  133 + @ApiModelProperty(value="截至拣货时间")
  134 + private Date endPickDateTime;
  135 +
  136 + /**
  137 + * 合流货位
  138 + */
  139 + @TableField(value = "rebatchLoc")
  140 + @ApiModelProperty(value="合流货位")
  141 + private String rebatchLoc;
  142 +
  143 + /**
  144 + * 是否完成合流
  145 + */
  146 + @TableField(value = "finishRebatch")
  147 + @ApiModelProperty(value="是否完成合流")
  148 + private Integer finishRebatch;
  149 +
  150 + /**
  151 + * 合流组唯一号
  152 + */
  153 + @TableField(value = "rebatchGroupCode")
  154 + @ApiModelProperty(value="合流组唯一号")
  155 + private String rebatchGroupCode;
  156 +
  157 + /**
  158 + * 是否允许合流
  159 + */
  160 + @TableField(value = "allowRebatch")
  161 + @ApiModelProperty(value="是否允许合流")
  162 + private Integer allowRebatch;
  163 +
  164 + /**
  165 + * 任务处理类型
  166 + */
  167 + @TableField(value = "taskProcessType")
  168 + @ApiModelProperty(value="任务处理类型")
  169 + private String taskProcessType;
  170 +
  171 + /**
  172 + * 二次分拣工作台
  173 + */
  174 + @TableField(value = "rebinBench")
  175 + @ApiModelProperty(value="二次分拣工作台")
  176 + private String rebinBench;
  177 +
  178 + /**
  179 + * 二次分拣完成
  180 + */
  181 + @TableField(value = "rebined")
  182 + @ApiModelProperty(value="二次分拣完成")
  183 + private Integer rebined;
  184 +
  185 + /**
  186 + * 二次分拣开始时间
  187 + */
  188 + @TableField(value = "startRebinDateTime")
  189 + @ApiModelProperty(value="二次分拣开始时间")
  190 + private Date startRebinDateTime;
  191 +
  192 + /**
  193 + * 二次分拣结束时间
  194 + */
  195 + @TableField(value = "endRebinDateTime")
  196 + @ApiModelProperty(value="二次分拣结束时间")
  197 + private Date endRebinDateTime;
  198 +
  199 + /**
  200 + * 二次分拣人
  201 + */
  202 + @TableField(value = "rebinedBy")
  203 + @ApiModelProperty(value="二次分拣人")
  204 + private String rebinedBy;
  205 +
  206 + /**
  207 + * 异常原因
  208 + */
  209 + @TableField(value = "exceptionCode")
  210 + @ApiModelProperty(value="异常原因")
  211 + private String exceptionCode;
  212 +
  213 + /**
  214 + * 异常处理人
  215 + */
  216 + @TableField(value = "exceptionHandledBy")
  217 + @ApiModelProperty(value="异常处理人")
  218 + private String exceptionHandledBy;
  219 +
  220 + /**
  221 + * 创建时间
  222 + */
  223 + @TableField(value = "created")
  224 + @ApiModelProperty(value="创建时间")
  225 + private Date created;
  226 +
  227 + /**
  228 + * 创建用户
  229 + */
  230 + @TableField(value = "createdBy")
  231 + @ApiModelProperty(value="创建用户")
  232 + private String createdBy;
  233 +
  234 + /**
  235 + * 创建时间
  236 + */
  237 + @TableField(value = "lastUpdated")
  238 + @ApiModelProperty(value="创建时间")
  239 + private Date lastUpdated;
  240 +
  241 + /**
  242 + * 更新用户
  243 + */
  244 + @TableField(value = "lastUpdatedBy")
  245 + @ApiModelProperty(value="更新用户")
  246 + private String lastUpdatedBy;
  247 +
  248 + /**
  249 + * 数据版本
  250 + */
  251 + @TableField(value = "version")
  252 + @ApiModelProperty(value="数据版本")
  253 + private Integer version;
  254 +
  255 + /**
  256 + * AGV区域任务标志 =‘AGV’
  257 + */
  258 + @TableField(value = "userDef1")
  259 + @ApiModelProperty(value="AGV区域任务标志 =‘AGV’")
  260 + private String userDef1;
  261 +
  262 + /**
  263 + * 自定义字段2
  264 + */
  265 + @TableField(value = "userDef2")
  266 + @ApiModelProperty(value="自定义字段2")
  267 + private String userDef2;
  268 +
  269 + /**
  270 + * 同步标志 0:需要同步 10:同步成功 20:同步失败
  271 + */
  272 + @TableField(value = "userDef3")
  273 + @ApiModelProperty(value="同步标志 0:需要同步 10:同步成功 20:同步失败")
  274 + private String userDef3;
  275 +
  276 + /**
  277 + * 自定义字段4
  278 + */
  279 + @TableField(value = "userDef4")
  280 + @ApiModelProperty(value="自定义字段4")
  281 + private String userDef4;
  282 +
  283 + /**
  284 + * 自定义字段5
  285 + */
  286 + @TableField(value = "userDef5")
  287 + @ApiModelProperty(value="自定义字段5")
  288 + private String userDef5;
  289 +
  290 + /**
  291 + * 自定义字段6
  292 + */
  293 + @TableField(value = "userDef6")
  294 + @ApiModelProperty(value="自定义字段6")
  295 + private String userDef6;
  296 +
  297 + /**
  298 + * 自定义字段7
  299 + */
  300 + @TableField(value = "userDef7")
  301 + @ApiModelProperty(value="自定义字段7")
  302 + private String userDef7;
  303 +
  304 + /**
  305 + * 自定义字段8
  306 + */
  307 + @TableField(value = "userDef8")
  308 + @ApiModelProperty(value="自定义字段8")
  309 + private String userDef8;
  310 +
  311 + /**
  312 + * 处理标记
  313 + */
  314 + @TableField(value = "processStamp")
  315 + @ApiModelProperty(value="处理标记")
  316 + private String processStamp;
  317 +
  318 + private static final long serialVersionUID = 1L;
  319 +
  320 + public static final String COL_ID = "id";
  321 +
  322 + public static final String COL_CODE = "code";
  323 +
  324 + public static final String COL_WAREHOUSECODE = "warehouseCode";
  325 +
  326 + public static final String COL_COMPANYCODE = "companyCode";
  327 +
  328 + public static final String COL_TASKTYPE = "taskType";
  329 +
  330 + public static final String COL_INTERNALTASKTYPE = "internalTaskType";
  331 +
  332 + public static final String COL_REFERENCEID = "referenceId";
  333 +
  334 + public static final String COL_REFERENCECODE = "referenceCode";
  335 +
  336 + public static final String COL_ASSIGNEDUSER = "assignedUser";
  337 +
  338 + public static final String COL_CONFIRMEDBY = "confirmedBy";
  339 +
  340 + public static final String COL_ENABLE = "enable";
  341 +
  342 + public static final String COL_WAVEID = "waveId";
  343 +
  344 + public static final String COL_PICKINGCARTCODE = "pickingCartCode";
  345 +
  346 + public static final String COL_PICKINGCARTPOS = "pickingCartPos";
  347 +
  348 + public static final String COL_CONTAINERCODE = "containerCode";
  349 +
  350 + public static final String COL_STARTPICKDATETIME = "startPickDateTime";
  351 +
  352 + public static final String COL_ENDPICKDATETIME = "endPickDateTime";
  353 +
  354 + public static final String COL_REBATCHLOC = "rebatchLoc";
  355 +
  356 + public static final String COL_FINISHREBATCH = "finishRebatch";
  357 +
  358 + public static final String COL_REBATCHGROUPCODE = "rebatchGroupCode";
  359 +
  360 + public static final String COL_ALLOWREBATCH = "allowRebatch";
  361 +
  362 + public static final String COL_TASKPROCESSTYPE = "taskProcessType";
  363 +
  364 + public static final String COL_REBINBENCH = "rebinBench";
  365 +
  366 + public static final String COL_REBINED = "rebined";
  367 +
  368 + public static final String COL_STARTREBINDATETIME = "startRebinDateTime";
  369 +
  370 + public static final String COL_ENDREBINDATETIME = "endRebinDateTime";
  371 +
  372 + public static final String COL_REBINEDBY = "rebinedBy";
  373 +
  374 + public static final String COL_EXCEPTIONCODE = "exceptionCode";
  375 +
  376 + public static final String COL_EXCEPTIONHANDLEDBY = "exceptionHandledBy";
  377 +
  378 + public static final String COL_CREATED = "created";
  379 +
  380 + public static final String COL_CREATEDBY = "createdBy";
  381 +
  382 + public static final String COL_LASTUPDATED = "lastUpdated";
  383 +
  384 + public static final String COL_LASTUPDATEDBY = "lastUpdatedBy";
  385 +
  386 + public static final String COL_VERSION = "version";
  387 +
  388 + public static final String COL_USERDEF1 = "userDef1";
  389 +
  390 + public static final String COL_USERDEF2 = "userDef2";
  391 +
  392 + public static final String COL_USERDEF3 = "userDef3";
  393 +
  394 + public static final String COL_USERDEF4 = "userDef4";
  395 +
  396 + public static final String COL_USERDEF5 = "userDef5";
  397 +
  398 + public static final String COL_USERDEF6 = "userDef6";
  399 +
  400 + public static final String COL_USERDEF7 = "userDef7";
  401 +
  402 + public static final String COL_USERDEF8 = "userDef8";
  403 +
  404 + public static final String COL_PROCESSSTAMP = "processStamp";
  405 +}
0 406 \ No newline at end of file
... ...
src/main/java/com/huaheng/pc/task/taskHeader/mapper/TaskHeaderMapper.java 0 → 100644
  1 +package com.huaheng.pc.task.taskHeader.mapper;
  2 +
  3 +import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  4 +import com.huaheng.pc.task.taskHeader.domain.TaskHeader;
  5 +
  6 +public interface TaskHeaderMapper extends BaseMapper<TaskHeader> {
  7 +}
0 8 \ No newline at end of file
... ...
src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderService.java 0 → 100644
  1 +package com.huaheng.pc.task.taskHeader.service;
  2 +
  3 +import com.huaheng.pc.task.taskHeader.domain.TaskHeader;
  4 +import com.baomidou.mybatisplus.extension.service.IService;
  5 +public interface TaskHeaderService extends IService<TaskHeader>{
  6 +
  7 +
  8 +}
... ...
src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java 0 → 100644
  1 +package com.huaheng.pc.task.taskHeader.service;
  2 +
  3 +import org.springframework.stereotype.Service;
  4 +import javax.annotation.Resource;
  5 +import java.util.List;
  6 +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  7 +import com.huaheng.pc.task.taskHeader.domain.TaskHeader;
  8 +import com.huaheng.pc.task.taskHeader.mapper.TaskHeaderMapper;
  9 +import com.huaheng.pc.task.taskHeader.service.TaskHeaderService;
  10 +@Service
  11 +public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHeader> implements TaskHeaderService{
  12 +
  13 +}
... ...
src/main/java/com/huaheng/pc/task/taskPreference/domain/TaskPreference.java 0 → 100644
  1 +package com.huaheng.pc.task.taskPreference.domain;
  2 +
  3 +import com.baomidou.mybatisplus.annotation.IdType;
  4 +import com.baomidou.mybatisplus.annotation.TableField;
  5 +import com.baomidou.mybatisplus.annotation.TableId;
  6 +import com.baomidou.mybatisplus.annotation.TableName;
  7 +import io.swagger.annotations.ApiModel;
  8 +import io.swagger.annotations.ApiModelProperty;
  9 +import java.io.Serializable;
  10 +import java.util.Date;
  11 +import lombok.Data;
  12 +
  13 +@ApiModel(value="com.huaheng.pc.task.taskPreference.domain.TaskPreference")
  14 +@Data
  15 +@TableName(value = "task_preference")
  16 +public class TaskPreference implements Serializable {
  17 + /**
  18 + * ID
  19 + */
  20 + @TableId(value = "id", type = IdType.AUTO)
  21 + @ApiModelProperty(value="ID")
  22 + private Integer id;
  23 +
  24 + /**
  25 + * 首选项
  26 + */
  27 + @TableField(value = "name")
  28 + @ApiModelProperty(value="首选项")
  29 + private String name;
  30 +
  31 + /**
  32 + * 仓库编码
  33 + */
  34 + @TableField(value = "warehouseCode")
  35 + @ApiModelProperty(value="仓库编码")
  36 + private String warehouseCode;
  37 +
  38 + /**
  39 + * 内部任务类型
  40 + */
  41 + @TableField(value = "internalTaskType")
  42 + @ApiModelProperty(value="内部任务类型")
  43 + private String internalTaskType;
  44 +
  45 + /**
  46 + * 任务类型
  47 + */
  48 + @TableField(value = "taskType")
  49 + @ApiModelProperty(value="任务类型")
  50 + private String taskType;
  51 +
  52 + /**
  53 + * 区域
  54 + */
  55 + @TableField(value = "zoneCode")
  56 + @ApiModelProperty(value="区域")
  57 + private String zoneCode;
  58 +
  59 + /**
  60 + * 任务开始方式
  61 + */
  62 + @TableField(value = "taskInitMethod")
  63 + @ApiModelProperty(value="任务开始方式")
  64 + private String taskInitMethod;
  65 +
  66 + /**
  67 + * 任务方向方式
  68 + */
  69 + @TableField(value = "taskDirectedMethod")
  70 + @ApiModelProperty(value="任务方向方式")
  71 + private String taskDirectedMethod;
  72 +
  73 + /**
  74 + * 拣货顺序?
  75 + */
  76 + @TableField(value = "fromAssignMethod")
  77 + @ApiModelProperty(value="拣货顺序?")
  78 + private String fromAssignMethod;
  79 +
  80 + /**
  81 + * 上架顺序?
  82 + */
  83 + @TableField(value = "toAssignMethod")
  84 + @ApiModelProperty(value="上架顺序?")
  85 + private String toAssignMethod;
  86 +
  87 + /**
  88 + * PICK方式
  89 + */
  90 + @TableField(value = "pickMethod")
  91 + @ApiModelProperty(value="PICK方式")
  92 + private String pickMethod;
  93 +
  94 + /**
  95 + * 启动RF操作成功消息
  96 + */
  97 + @TableField(value = "rfSuccessEnabled")
  98 + @ApiModelProperty(value="启动RF操作成功消息")
  99 + private Integer rfSuccessEnabled;
  100 +
  101 + /**
  102 + * 消息字段
  103 + */
  104 + @TableField(value = "rfSuccessField")
  105 + @ApiModelProperty(value="消息字段")
  106 + private String rfSuccessField;
  107 +
  108 + /**
  109 + * 消息格式
  110 + */
  111 + @TableField(value = "rfSuccessMessage")
  112 + @ApiModelProperty(value="消息格式")
  113 + private String rfSuccessMessage;
  114 +
  115 + /**
  116 + * 默认LPN作为出库箱号
  117 + */
  118 + @TableField(value = "DEFAULTLpAsShipCont")
  119 + @ApiModelProperty(value="默认LPN作为出库箱号")
  120 + private Integer DEFAULTLpAsShipCont;
  121 +
  122 + /**
  123 + * 多人拣选方式
  124 + */
  125 + @TableField(value = "multiPickMethod")
  126 + @ApiModelProperty(value="多人拣选方式")
  127 + private Integer multiPickMethod;
  128 +
  129 + /**
  130 + * 允许部分拣选
  131 + */
  132 + @TableField(value = "allowPartial")
  133 + @ApiModelProperty(value="允许部分拣选")
  134 + private String allowPartial;
  135 +
  136 + /**
  137 + * 接力货位
  138 + */
  139 + @TableField(value = "pickDropLoc")
  140 + @ApiModelProperty(value="接力货位")
  141 + private String pickDropLoc;
  142 +
  143 + /**
  144 + * 显示物料信息
  145 + */
  146 + @TableField(value = "displayItemInfo")
  147 + @ApiModelProperty(value="显示物料信息")
  148 + private String displayItemInfo;
  149 +
  150 + /**
  151 + * 创建时间
  152 + */
  153 + @TableField(value = "created")
  154 + @ApiModelProperty(value="创建时间")
  155 + private Date created;
  156 +
  157 + /**
  158 + * 创建用户
  159 + */
  160 + @TableField(value = "createdBy")
  161 + @ApiModelProperty(value="创建用户")
  162 + private String createdBy;
  163 +
  164 + /**
  165 + * 创建时间
  166 + */
  167 + @TableField(value = "lastUpdated")
  168 + @ApiModelProperty(value="创建时间")
  169 + private Date lastUpdated;
  170 +
  171 + /**
  172 + * 更新用户
  173 + */
  174 + @TableField(value = "lastUpdatedBy")
  175 + @ApiModelProperty(value="更新用户")
  176 + private String lastUpdatedBy;
  177 +
  178 + /**
  179 + * 数据版本
  180 + */
  181 + @TableField(value = "version")
  182 + @ApiModelProperty(value="数据版本")
  183 + private Integer version;
  184 +
  185 + /**
  186 + * 自定义字段1
  187 + */
  188 + @TableField(value = "userDef1")
  189 + @ApiModelProperty(value="自定义字段1")
  190 + private String userDef1;
  191 +
  192 + /**
  193 + * 自定义字段2
  194 + */
  195 + @TableField(value = "userDef2")
  196 + @ApiModelProperty(value="自定义字段2")
  197 + private String userDef2;
  198 +
  199 + /**
  200 + * 自定义字段3
  201 + */
  202 + @TableField(value = "userDef3")
  203 + @ApiModelProperty(value="自定义字段3")
  204 + private String userDef3;
  205 +
  206 + /**
  207 + * 自定义字段4
  208 + */
  209 + @TableField(value = "userDef4")
  210 + @ApiModelProperty(value="自定义字段4")
  211 + private String userDef4;
  212 +
  213 + /**
  214 + * 自定义字段5
  215 + */
  216 + @TableField(value = "userDef5")
  217 + @ApiModelProperty(value="自定义字段5")
  218 + private String userDef5;
  219 +
  220 + /**
  221 + * 自定义字段6
  222 + */
  223 + @TableField(value = "userDef6")
  224 + @ApiModelProperty(value="自定义字段6")
  225 + private String userDef6;
  226 +
  227 + /**
  228 + * 自定义字段7
  229 + */
  230 + @TableField(value = "userDef7")
  231 + @ApiModelProperty(value="自定义字段7")
  232 + private String userDef7;
  233 +
  234 + /**
  235 + * 自定义字段8
  236 + */
  237 + @TableField(value = "userDef8")
  238 + @ApiModelProperty(value="自定义字段8")
  239 + private String userDef8;
  240 +
  241 + /**
  242 + * 处理标记
  243 + */
  244 + @TableField(value = "processStamp")
  245 + @ApiModelProperty(value="处理标记")
  246 + private String processStamp;
  247 +
  248 + /**
  249 + * RF显示待处理任务
  250 + */
  251 + @TableField(value = "showOpenTask")
  252 + @ApiModelProperty(value="RF显示待处理任务")
  253 + private Integer showOpenTask;
  254 +
  255 + private static final long serialVersionUID = 1L;
  256 +
  257 + public static final String COL_ID = "id";
  258 +
  259 + public static final String COL_NAME = "name";
  260 +
  261 + public static final String COL_WAREHOUSECODE = "warehouseCode";
  262 +
  263 + public static final String COL_INTERNALTASKTYPE = "internalTaskType";
  264 +
  265 + public static final String COL_TASKTYPE = "taskType";
  266 +
  267 + public static final String COL_ZONECODE = "zoneCode";
  268 +
  269 + public static final String COL_TASKINITMETHOD = "taskInitMethod";
  270 +
  271 + public static final String COL_TASKDIRECTEDMETHOD = "taskDirectedMethod";
  272 +
  273 + public static final String COL_FROMASSIGNMETHOD = "fromAssignMethod";
  274 +
  275 + public static final String COL_TOASSIGNMETHOD = "toAssignMethod";
  276 +
  277 + public static final String COL_PICKMETHOD = "pickMethod";
  278 +
  279 + public static final String COL_RFSUCCESSENABLED = "rfSuccessEnabled";
  280 +
  281 + public static final String COL_RFSUCCESSFIELD = "rfSuccessField";
  282 +
  283 + public static final String COL_RFSUCCESSMESSAGE = "rfSuccessMessage";
  284 +
  285 + public static final String COL_DEFAULTLPASSHIPCONT = "DEFAULTLpAsShipCont";
  286 +
  287 + public static final String COL_MULTIPICKMETHOD = "multiPickMethod";
  288 +
  289 + public static final String COL_ALLOWPARTIAL = "allowPartial";
  290 +
  291 + public static final String COL_PICKDROPLOC = "pickDropLoc";
  292 +
  293 + public static final String COL_DISPLAYITEMINFO = "displayItemInfo";
  294 +
  295 + public static final String COL_CREATED = "created";
  296 +
  297 + public static final String COL_CREATEDBY = "createdBy";
  298 +
  299 + public static final String COL_LASTUPDATED = "lastUpdated";
  300 +
  301 + public static final String COL_LASTUPDATEDBY = "lastUpdatedBy";
  302 +
  303 + public static final String COL_VERSION = "version";
  304 +
  305 + public static final String COL_USERDEF1 = "userDef1";
  306 +
  307 + public static final String COL_USERDEF2 = "userDef2";
  308 +
  309 + public static final String COL_USERDEF3 = "userDef3";
  310 +
  311 + public static final String COL_USERDEF4 = "userDef4";
  312 +
  313 + public static final String COL_USERDEF5 = "userDef5";
  314 +
  315 + public static final String COL_USERDEF6 = "userDef6";
  316 +
  317 + public static final String COL_USERDEF7 = "userDef7";
  318 +
  319 + public static final String COL_USERDEF8 = "userDef8";
  320 +
  321 + public static final String COL_PROCESSSTAMP = "processStamp";
  322 +
  323 + public static final String COL_SHOWOPENTASK = "showOpenTask";
  324 +}
0 325 \ No newline at end of file
... ...
src/main/java/com/huaheng/pc/task/taskPreference/mapper/TaskPreferenceMapper.java 0 → 100644
  1 +package com.huaheng.pc.task.taskPreference.mapper;
  2 +
  3 +import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  4 +import com.huaheng.pc.task.taskPreference.domain.TaskPreference;
  5 +
  6 +public interface TaskPreferenceMapper extends BaseMapper<TaskPreference> {
  7 +}
0 8 \ No newline at end of file
... ...
src/main/java/com/huaheng/pc/task/taskPreference/service/TaskPreferenceService.java 0 → 100644
  1 +package com.huaheng.pc.task.taskPreference.service;
  2 +
  3 +import com.huaheng.pc.task.taskPreference.domain.TaskPreference;
  4 +import com.baomidou.mybatisplus.extension.service.IService;
  5 +public interface TaskPreferenceService extends IService<TaskPreference>{
  6 +
  7 +
  8 +}
... ...
src/main/java/com/huaheng/pc/task/taskPreference/service/TaskPreferenceServiceImpl.java 0 → 100644
  1 +package com.huaheng.pc.task.taskPreference.service;
  2 +
  3 +import org.springframework.stereotype.Service;
  4 +import javax.annotation.Resource;
  5 +import java.util.List;
  6 +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  7 +import com.huaheng.pc.task.taskPreference.mapper.TaskPreferenceMapper;
  8 +import com.huaheng.pc.task.taskPreference.domain.TaskPreference;
  9 +import com.huaheng.pc.task.taskPreference.service.TaskPreferenceService;
  10 +@Service
  11 +public class TaskPreferenceServiceImpl extends ServiceImpl<TaskPreferenceMapper, TaskPreference> implements TaskPreferenceService{
  12 +
  13 +}
... ...
src/main/resources/mybatis/config/ContainerCapacityMapper.xml 0 → 100644
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3 +<mapper namespace="com.huaheng.pc.config.containerCapacity.mapper.ContainerCapacityMapper">
  4 + <resultMap id="BaseResultMap" type="com.huaheng.pc.config.containerCapacity.domain.ContainerCapacity">
  5 + <!--@mbg.generated-->
  6 + <id column="id" jdbcType="INTEGER" property="id" />
  7 + <result column="containerType" jdbcType="VARCHAR" property="containerType" />
  8 + <result column="warehouseCode" jdbcType="VARCHAR" property="warehouseCode" />
  9 + <result column="companyCode" jdbcType="VARCHAR" property="companyCode" />
  10 + <result column="materialCode" jdbcType="VARCHAR" property="materialCode" />
  11 + <result column="materialName" jdbcType="VARCHAR" property="materialName" />
  12 + <result column="materialSpec" jdbcType="VARCHAR" property="materialSpec" />
  13 + <result column="materialUnit" jdbcType="VARCHAR" property="materialUnit" />
  14 + <result column="qty" jdbcType="DECIMAL" property="qty" />
  15 + <result column="enable" jdbcType="INTEGER" property="enable" />
  16 + <result column="created" jdbcType="TIMESTAMP" property="created" />
  17 + <result column="createdBy" jdbcType="VARCHAR" property="createdBy" />
  18 + <result column="lastUpdated" jdbcType="TIMESTAMP" property="lastUpdated" />
  19 + <result column="lastUpdatedBy" jdbcType="VARCHAR" property="lastUpdatedBy" />
  20 + <result column="version" jdbcType="INTEGER" property="version" />
  21 + <result column="userDef1" jdbcType="VARCHAR" property="userDef1" />
  22 + <result column="userDef2" jdbcType="VARCHAR" property="userDef2" />
  23 + <result column="userDef3" jdbcType="VARCHAR" property="userDef3" />
  24 + <result column="userDef4" jdbcType="VARCHAR" property="userDef4" />
  25 + <result column="userDef5" jdbcType="VARCHAR" property="userDef5" />
  26 + <result column="userDef6" jdbcType="VARCHAR" property="userDef6" />
  27 + <result column="userDef7" jdbcType="VARCHAR" property="userDef7" />
  28 + <result column="userDef8" jdbcType="VARCHAR" property="userDef8" />
  29 + <result column="processStamp" jdbcType="VARCHAR" property="processStamp" />
  30 + </resultMap>
  31 + <sql id="Base_Column_List">
  32 + <!--@mbg.generated-->
  33 + id, containerType, warehouseCode, companyCode, materialCode, materialName, materialSpec,
  34 + materialUnit, qty, `enable`, created, createdBy, lastUpdated, lastUpdatedBy, version,
  35 + userDef1, userDef2, userDef3, userDef4, userDef5, userDef6, userDef7, userDef8, processStamp
  36 + </sql>
  37 +</mapper>
0 38 \ No newline at end of file
... ...
src/main/resources/mybatis/general/WarehouseMapper.xml
... ... @@ -34,6 +34,26 @@
34 34 <result column="userDef8" jdbcType="VARCHAR" property="userDef8" />
35 35 <result column="deleted" jdbcType="BIT" property="deleted" />
36 36 </resultMap>
  37 + <select id="wareHouseAll" resultType="com.huaheng.pc.system.user.domain.SysUserWarehouse">
  38 + select * from warehouse
  39 + </select>
  40 +
  41 + <select id="selectWarehouseByUserId"
  42 + resultType="com.huaheng.pc.general.warehouse.domain.Warehouse">
  43 + SELECT r.`name`, r.code
  44 + FROM sys_user u
  45 + LEFT JOIN sys_user_warehouse ur ON u.id = ur.userId
  46 + LEFT JOIN warehouse r ON ur.warehouseCode = r.code
  47 + WHERE ur.userId =#{userId}
  48 + </select>
  49 +
  50 + <select id="selectWarehouseAll"
  51 + resultType="com.huaheng.pc.general.warehouse.domain.Warehouse">
  52 + select * from warehouse
  53 + </select>
  54 +
  55 +
  56 +
37 57 <sql id="Base_Column_List">
38 58 <!--@mbg.generated-->
39 59 code, address1, address2, city, `state`, district, country, postalCode, attentionTo,
... ...
src/main/resources/mybatis/shipment/ShipmentHeaderMapper.xml
1 1 <?xml version="1.0" encoding="UTF-8"?>
2 2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3   -<mapper namespace="com.huaheng.pc.general.customer.mapper.ShipmentHeaderMapper">
  3 +<mapper namespace="com.huaheng.pc.shipment.shipmentHeader.mapper.ShipmentHeaderMapper">
4 4 <resultMap id="BaseResultMap" type="com.huaheng.pc.shipment.shipmentHeader.domain.ShipmentHeader">
5 5 <!--@mbg.generated-->
6 6 <id column="id" jdbcType="INTEGER" property="id" />
7 7 <result column="warehouseCode" jdbcType="VARCHAR" property="warehouseCode" />
8 8 <result column="companyCode" jdbcType="VARCHAR" property="companyCode" />
9   - <result column="loadId" jdbcType="INTEGER" property="loadId" />
10 9 <result column="code" jdbcType="VARCHAR" property="code" />
11 10 <result column="referCode" jdbcType="VARCHAR" property="referCode" />
12 11 <result column="referCodeType" jdbcType="VARCHAR" property="referCodeType" />
... ... @@ -20,7 +19,6 @@
20 19 <result column="customerName" jdbcType="VARCHAR" property="customerName" />
21 20 <result column="priority" jdbcType="INTEGER" property="priority" />
22 21 <result column="requestedDeliveryDate" jdbcType="DATE" property="requestedDeliveryDate" />
23   - <result column="requestedDeliveryType" jdbcType="VARCHAR" property="requestedDeliveryType" />
24 22 <result column="scheduledShipDate" jdbcType="DATE" property="scheduledShipDate" />
25 23 <result column="actualShipDateTime" jdbcType="TIMESTAMP" property="actualShipDateTime" />
26 24 <result column="actualDeliveryDate" jdbcType="DATE" property="actualDeliveryDate" />
... ... @@ -33,9 +31,6 @@
33 31 <result column="totalQty" jdbcType="INTEGER" property="totalQty" />
34 32 <result column="totalVolume" jdbcType="DECIMAL" property="totalVolume" />
35 33 <result column="totalLines" jdbcType="INTEGER" property="totalLines" />
36   - <result column="totalContainers" jdbcType="INTEGER" property="totalContainers" />
37   - <result column="totalCases" jdbcType="INTEGER" property="totalCases" />
38   - <result column="totalValue" jdbcType="DECIMAL" property="totalValue" />
39 34 <result column="processType" jdbcType="VARCHAR" property="processType" />
40 35 <result column="lastWaveId" jdbcType="INTEGER" property="lastWaveId" />
41 36 <result column="signValue" jdbcType="VARCHAR" property="signValue" />
... ... @@ -66,16 +61,19 @@
66 61 </resultMap>
67 62 <sql id="Base_Column_List">
68 63 <!--@mbg.generated-->
69   - id, warehouseCode, companyCode, loadId, code, referCode, referCodeType, referId,
  64 + id, warehouseCode, companyCode, code, referCode, referCodeType, referId,
70 65 referPlatform, firstStatus, lastStatus, shipmentType, route, customerCode, customerName,
71   - priority, requestedDeliveryDate, requestedDeliveryType, scheduledShipDate, actualShipDateTime,
  66 + priority, requestedDeliveryDate, scheduledShipDate, actualShipDateTime,
72 67 actualDeliveryDate, deliveryNote, rejectionNote, waveId, shipDock, allocateComplete,
73   - totalWeight, totalQty, totalVolume, totalLines, totalContainers, totalCases, totalValue,
  68 + totalWeight, totalQty, totalVolume, totalLines,
74 69 processType, lastWaveId, signValue, carrierCode, carrierService, shipmentNote, carrierServer,
75 70 carrierServerName, plateNumber, carModel, driverName, driverTel, created, createdBy,
76 71 lastUpdated, lastUpdatedBy, version, userDef1, userDef2, userDef3, userDef4, userDef5,
77 72 userDef6, userDef7, userDef8, processStamp, deleted
78 73 </sql>
79 74  
  75 + <select id="createCode" resultType="java.lang.String">
  76 + SELECT code FROM shipment_header WHERE shipmentType = #{shipmentType,jdbcType=VARCHAR} ORDER BY id DESC LIMIT 1
  77 + </select>
80 78  
81 79 </mapper>
82 80 \ No newline at end of file
... ...
src/main/resources/mybatis/system/SysUserWarehouseMapper.xml 0 → 100644
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3 +<mapper namespace="com.huaheng.pc.system.user.mapper.SysUserWarehouseMapper">
  4 + <resultMap id="BaseResultMap" type="com.huaheng.pc.system.user.domain.SysUserWarehouse">
  5 + <!--@mbg.generated-->
  6 + <id column="id" jdbcType="INTEGER" property="id" />
  7 + <result column="userId" jdbcType="INTEGER" property="userId" />
  8 + <result column="warehouseId" jdbcType="INTEGER" property="warehouseId" />
  9 + <result column="warehouseCode" jdbcType="VARCHAR" property="warehouseCode" />
  10 + </resultMap>
  11 +
  12 + <sql id="Base_Column_List">
  13 + <!--@mbg.generated-->
  14 + id, userId, warehouseId, warehouseCode
  15 + </sql>
  16 +
  17 + <insert id="batchUserWarehouse">
  18 + insert into sys_user_warehouse(userId, warehouseCode) values
  19 + <foreach item="item" index="index" collection="userWarehouseList" separator=",">
  20 + (#{item.userId},#{item.warehouseCode})
  21 + </foreach>
  22 + </insert>
  23 +
  24 + <delete id="deleteUserWarehouseByUserId" parameterType="Integer">
  25 + delete from sys_user_warehouse where userId=#{userId}
  26 + </delete>
  27 +
  28 +
  29 +</mapper>
  30 +
... ...
src/main/resources/mybatis/system/UserMapper.xml
... ... @@ -191,6 +191,14 @@
191 191 INNER JOIN sys_role ON sys_user_role.roleId = sys_role.id AND sys_user_role.userId = sys_user.Id AND sys_role.enable = TRUE
192 192 INNER JOIN warehouse ON sys_role.warehouseCode = warehouse.code AND warehouse.enable = TRUE
193 193 </select>
  194 +
  195 + <select id="getWarehouseByUserName" resultType="java.util.HashMap">
  196 + SELECT r.`name`, r.code
  197 + FROM sys_user u
  198 + LEFT JOIN sys_user_warehouse ur ON u.id = ur.userId
  199 + LEFT JOIN warehouse r ON ur.warehouseCode = r.code
  200 + WHERE u.loginName=#{loginName,jdbcType=VARCHAR}
  201 + </select>
194 202  
195 203 <update id="insertupdateTime" >
196 204 update sys_user set updateTime = #{date} where loginName = #{cPersonCode}
... ...
src/main/resources/mybatis/task/TaskDetailMapper.xml 0 → 100644
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3 +<mapper namespace="com.huaheng.pc.task.taskDetail.mapper.TaskDetailMapper">
  4 + <resultMap id="BaseResultMap" type="com.huaheng.pc.task.taskDetail.domain.TaskDetail">
  5 + <!--@mbg.generated-->
  6 + <id column="id" jdbcType="INTEGER" property="id" />
  7 + <result column="taskId" jdbcType="INTEGER" property="taskId" />
  8 + <result column="taskCode" jdbcType="VARCHAR" property="taskCode" />
  9 + <result column="taskType" jdbcType="VARCHAR" property="taskType" />
  10 + <result column="internalTaskType" jdbcType="VARCHAR" property="internalTaskType" />
  11 + <result column="warehouseCode" jdbcType="VARCHAR" property="warehouseCode" />
  12 + <result column="companyCode" jdbcType="VARCHAR" property="companyCode" />
  13 + <result column="materialCode" jdbcType="VARCHAR" property="materialCode" />
  14 + <result column="materialName" jdbcType="VARCHAR" property="materialName" />
  15 + <result column="materialSpec" jdbcType="VARCHAR" property="materialSpec" />
  16 + <result column="materialUnit" jdbcType="VARCHAR" property="materialUnit" />
  17 + <result column="qty" jdbcType="INTEGER" property="qty" />
  18 + <result column="fromLocation" jdbcType="VARCHAR" property="fromLocation" />
  19 + <result column="toLocation" jdbcType="VARCHAR" property="toLocation" />
  20 + <result column="containerCode" jdbcType="VARCHAR" property="containerCode" />
  21 + <result column="fromZone" jdbcType="VARCHAR" property="fromZone" />
  22 + <result column="toZone" jdbcType="VARCHAR" property="toZone" />
  23 + <result column="attributeId" jdbcType="INTEGER" property="attributeId" />
  24 + <result column="enable" jdbcType="INTEGER" property="enable" />
  25 + <result column="referenceCode" jdbcType="VARCHAR" property="referenceCode" />
  26 + <result column="referenceId" jdbcType="INTEGER" property="referenceId" />
  27 + <result column="referenceLineId" jdbcType="INTEGER" property="referenceLineId" />
  28 + <result column="assignedUser" jdbcType="VARCHAR" property="assignedUser" />
  29 + <result column="attribute1" jdbcType="VARCHAR" property="attribute1" />
  30 + <result column="attribute2" jdbcType="VARCHAR" property="attribute2" />
  31 + <result column="attribute3" jdbcType="VARCHAR" property="attribute3" />
  32 + <result column="attribute4" jdbcType="VARCHAR" property="attribute4" />
  33 + <result column="batch" jdbcType="VARCHAR" property="batch" />
  34 + <result column="lot" jdbcType="VARCHAR" property="lot" />
  35 + <result column="projectNo" jdbcType="VARCHAR" property="projectNo" />
  36 + <result column="qcCheck" jdbcType="VARCHAR" property="qcCheck" />
  37 + <result column="manufactureDate" jdbcType="DATE" property="manufactureDate" />
  38 + <result column="expirationDate" jdbcType="DATE" property="expirationDate" />
  39 + <result column="agingDate" jdbcType="DATE" property="agingDate" />
  40 + <result column="inventorySts" jdbcType="VARCHAR" property="inventorySts" />
  41 + <result column="waveId" jdbcType="INTEGER" property="waveId" />
  42 + <result column="fromInventoryId" jdbcType="INTEGER" property="fromInventoryId" />
  43 + <result column="toInventoryId" jdbcType="INTEGER" property="toInventoryId" />
  44 + <result column="confirmedBy" jdbcType="VARCHAR" property="confirmedBy" />
  45 + <result column="groupNum" jdbcType="INTEGER" property="groupNum" />
  46 + <result column="groupIndex" jdbcType="INTEGER" property="groupIndex" />
  47 + <result column="created" jdbcType="TIMESTAMP" property="created" />
  48 + <result column="createdBy" jdbcType="VARCHAR" property="createdBy" />
  49 + <result column="lastUpdated" jdbcType="TIMESTAMP" property="lastUpdated" />
  50 + <result column="lastUpdatedBy" jdbcType="VARCHAR" property="lastUpdatedBy" />
  51 + <result column="version" jdbcType="INTEGER" property="version" />
  52 + <result column="userDef1" jdbcType="VARCHAR" property="userDef1" />
  53 + <result column="userDef2" jdbcType="VARCHAR" property="userDef2" />
  54 + <result column="userDef3" jdbcType="VARCHAR" property="userDef3" />
  55 + <result column="userDef4" jdbcType="VARCHAR" property="userDef4" />
  56 + <result column="userDef5" jdbcType="VARCHAR" property="userDef5" />
  57 + <result column="userDef6" jdbcType="VARCHAR" property="userDef6" />
  58 + <result column="userDef7" jdbcType="VARCHAR" property="userDef7" />
  59 + <result column="userDef8" jdbcType="VARCHAR" property="userDef8" />
  60 + <result column="processStamp" jdbcType="VARCHAR" property="processStamp" />
  61 + </resultMap>
  62 + <sql id="Base_Column_List">
  63 + <!--@mbg.generated-->
  64 + id, taskId, taskCode, taskType, internalTaskType, warehouseCode, companyCode, materialCode,
  65 + materialName, materialSpec, materialUnit, qty, fromLocation, toLocation, containerCode,
  66 + fromZone, toZone, attributeId, `enable`, referenceCode, referenceId, referenceLineId,
  67 + assignedUser, attribute1, attribute2, attribute3, attribute4, batch, lot, projectNo,
  68 + qcCheck, manufactureDate, expirationDate, agingDate, inventorySts, waveId, fromInventoryId,
  69 + toInventoryId, confirmedBy, groupNum, groupIndex, created, createdBy, lastUpdated,
  70 + lastUpdatedBy, version, userDef1, userDef2, userDef3, userDef4, userDef5, userDef6,
  71 + userDef7, userDef8, processStamp
  72 + </sql>
  73 +</mapper>
0 74 \ No newline at end of file
... ...
src/main/resources/mybatis/task/TaskHeaderMapper.xml 0 → 100644
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3 +<mapper namespace="com.huaheng.pc.task.taskHeader.mapper.TaskHeaderMapper">
  4 + <resultMap id="BaseResultMap" type="com.huaheng.pc.task.taskHeader.domain.TaskHeader">
  5 + <!--@mbg.generated-->
  6 + <id column="id" jdbcType="INTEGER" property="id" />
  7 + <result column="code" jdbcType="VARCHAR" property="code" />
  8 + <result column="warehouseCode" jdbcType="VARCHAR" property="warehouseCode" />
  9 + <result column="companyCode" jdbcType="VARCHAR" property="companyCode" />
  10 + <result column="taskType" jdbcType="VARCHAR" property="taskType" />
  11 + <result column="internalTaskType" jdbcType="VARCHAR" property="internalTaskType" />
  12 + <result column="referenceId" jdbcType="INTEGER" property="referenceId" />
  13 + <result column="referenceCode" jdbcType="VARCHAR" property="referenceCode" />
  14 + <result column="assignedUser" jdbcType="VARCHAR" property="assignedUser" />
  15 + <result column="confirmedBy" jdbcType="VARCHAR" property="confirmedBy" />
  16 + <result column="enable" jdbcType="INTEGER" property="enable" />
  17 + <result column="waveId" jdbcType="INTEGER" property="waveId" />
  18 + <result column="pickingCartCode" jdbcType="VARCHAR" property="pickingCartCode" />
  19 + <result column="pickingCartPos" jdbcType="VARCHAR" property="pickingCartPos" />
  20 + <result column="containerCode" jdbcType="VARCHAR" property="containerCode" />
  21 + <result column="startPickDateTime" jdbcType="TIMESTAMP" property="startPickDateTime" />
  22 + <result column="endPickDateTime" jdbcType="TIMESTAMP" property="endPickDateTime" />
  23 + <result column="rebatchLoc" jdbcType="VARCHAR" property="rebatchLoc" />
  24 + <result column="finishRebatch" jdbcType="INTEGER" property="finishRebatch" />
  25 + <result column="rebatchGroupCode" jdbcType="VARCHAR" property="rebatchGroupCode" />
  26 + <result column="allowRebatch" jdbcType="INTEGER" property="allowRebatch" />
  27 + <result column="taskProcessType" jdbcType="VARCHAR" property="taskProcessType" />
  28 + <result column="rebinBench" jdbcType="VARCHAR" property="rebinBench" />
  29 + <result column="rebined" jdbcType="INTEGER" property="rebined" />
  30 + <result column="startRebinDateTime" jdbcType="TIMESTAMP" property="startRebinDateTime" />
  31 + <result column="endRebinDateTime" jdbcType="TIMESTAMP" property="endRebinDateTime" />
  32 + <result column="rebinedBy" jdbcType="VARCHAR" property="rebinedBy" />
  33 + <result column="exceptionCode" jdbcType="VARCHAR" property="exceptionCode" />
  34 + <result column="exceptionHandledBy" jdbcType="VARCHAR" property="exceptionHandledBy" />
  35 + <result column="created" jdbcType="TIMESTAMP" property="created" />
  36 + <result column="createdBy" jdbcType="VARCHAR" property="createdBy" />
  37 + <result column="lastUpdated" jdbcType="TIMESTAMP" property="lastUpdated" />
  38 + <result column="lastUpdatedBy" jdbcType="VARCHAR" property="lastUpdatedBy" />
  39 + <result column="version" jdbcType="INTEGER" property="version" />
  40 + <result column="userDef1" jdbcType="VARCHAR" property="userDef1" />
  41 + <result column="userDef2" jdbcType="VARCHAR" property="userDef2" />
  42 + <result column="userDef3" jdbcType="VARCHAR" property="userDef3" />
  43 + <result column="userDef4" jdbcType="VARCHAR" property="userDef4" />
  44 + <result column="userDef5" jdbcType="VARCHAR" property="userDef5" />
  45 + <result column="userDef6" jdbcType="VARCHAR" property="userDef6" />
  46 + <result column="userDef7" jdbcType="VARCHAR" property="userDef7" />
  47 + <result column="userDef8" jdbcType="VARCHAR" property="userDef8" />
  48 + <result column="processStamp" jdbcType="VARCHAR" property="processStamp" />
  49 + </resultMap>
  50 + <sql id="Base_Column_List">
  51 + <!--@mbg.generated-->
  52 + id, code, warehouseCode, companyCode, taskType, internalTaskType, referenceId, referenceCode,
  53 + assignedUser, confirmedBy, `enable`, waveId, pickingCartCode, pickingCartPos, containerCode,
  54 + startPickDateTime, endPickDateTime, rebatchLoc, finishRebatch, rebatchGroupCode,
  55 + allowRebatch, taskProcessType, rebinBench, rebined, startRebinDateTime, endRebinDateTime,
  56 + rebinedBy, exceptionCode, exceptionHandledBy, created, createdBy, lastUpdated, lastUpdatedBy,
  57 + version, userDef1, userDef2, userDef3, userDef4, userDef5, userDef6, userDef7, userDef8,
  58 + processStamp
  59 + </sql>
  60 +</mapper>
0 61 \ No newline at end of file
... ...
src/main/resources/mybatis/task/TaskPreferenceMapper.xml 0 → 100644
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3 +<mapper namespace="com.huaheng.pc.task.taskPreference.mapper.TaskPreferenceMapper">
  4 + <resultMap id="BaseResultMap" type="com.huaheng.pc.task.taskPreference.domain.TaskPreference">
  5 + <!--@mbg.generated-->
  6 + <id column="id" jdbcType="INTEGER" property="id" />
  7 + <result column="name" jdbcType="VARCHAR" property="name" />
  8 + <result column="warehouseCode" jdbcType="VARCHAR" property="warehouseCode" />
  9 + <result column="internalTaskType" jdbcType="VARCHAR" property="internalTaskType" />
  10 + <result column="taskType" jdbcType="VARCHAR" property="taskType" />
  11 + <result column="zoneCode" jdbcType="VARCHAR" property="zoneCode" />
  12 + <result column="taskInitMethod" jdbcType="VARCHAR" property="taskInitMethod" />
  13 + <result column="taskDirectedMethod" jdbcType="VARCHAR" property="taskDirectedMethod" />
  14 + <result column="fromAssignMethod" jdbcType="VARCHAR" property="fromAssignMethod" />
  15 + <result column="toAssignMethod" jdbcType="VARCHAR" property="toAssignMethod" />
  16 + <result column="pickMethod" jdbcType="VARCHAR" property="pickMethod" />
  17 + <result column="rfSuccessEnabled" jdbcType="INTEGER" property="rfSuccessEnabled" />
  18 + <result column="rfSuccessField" jdbcType="VARCHAR" property="rfSuccessField" />
  19 + <result column="rfSuccessMessage" jdbcType="VARCHAR" property="rfSuccessMessage" />
  20 + <result column="DEFAULTLpAsShipCont" jdbcType="INTEGER" property="DEFAULTLpAsShipCont" />
  21 + <result column="multiPickMethod" jdbcType="INTEGER" property="multiPickMethod" />
  22 + <result column="allowPartial" jdbcType="VARCHAR" property="allowPartial" />
  23 + <result column="pickDropLoc" jdbcType="VARCHAR" property="pickDropLoc" />
  24 + <result column="displayItemInfo" jdbcType="VARCHAR" property="displayItemInfo" />
  25 + <result column="created" jdbcType="TIMESTAMP" property="created" />
  26 + <result column="createdBy" jdbcType="VARCHAR" property="createdBy" />
  27 + <result column="lastUpdated" jdbcType="TIMESTAMP" property="lastUpdated" />
  28 + <result column="lastUpdatedBy" jdbcType="VARCHAR" property="lastUpdatedBy" />
  29 + <result column="version" jdbcType="INTEGER" property="version" />
  30 + <result column="userDef1" jdbcType="VARCHAR" property="userDef1" />
  31 + <result column="userDef2" jdbcType="VARCHAR" property="userDef2" />
  32 + <result column="userDef3" jdbcType="VARCHAR" property="userDef3" />
  33 + <result column="userDef4" jdbcType="VARCHAR" property="userDef4" />
  34 + <result column="userDef5" jdbcType="VARCHAR" property="userDef5" />
  35 + <result column="userDef6" jdbcType="VARCHAR" property="userDef6" />
  36 + <result column="userDef7" jdbcType="VARCHAR" property="userDef7" />
  37 + <result column="userDef8" jdbcType="VARCHAR" property="userDef8" />
  38 + <result column="processStamp" jdbcType="VARCHAR" property="processStamp" />
  39 + <result column="showOpenTask" jdbcType="INTEGER" property="showOpenTask" />
  40 + </resultMap>
  41 + <sql id="Base_Column_List">
  42 + <!--@mbg.generated-->
  43 + id, `name`, warehouseCode, internalTaskType, taskType, zoneCode, taskInitMethod,
  44 + taskDirectedMethod, fromAssignMethod, toAssignMethod, pickMethod, rfSuccessEnabled,
  45 + rfSuccessField, rfSuccessMessage, DEFAULTLpAsShipCont, multiPickMethod, allowPartial,
  46 + pickDropLoc, displayItemInfo, created, createdBy, lastUpdated, lastUpdatedBy, version,
  47 + userDef1, userDef2, userDef3, userDef4, userDef5, userDef6, userDef7, userDef8, processStamp,
  48 + showOpenTask
  49 + </sql>
  50 +</mapper>
0 51 \ No newline at end of file
... ...
src/main/resources/templates/config/containerCapacity/add.html
... ... @@ -6,23 +6,13 @@
6 6 <div class="wrapper wrapper-content animated fadeInRight ibox-content">
7 7 <form class="form-horizontal m" id="form-containerCapacity-add">
8 8 <div class="form-group">
9   - <label class="col-sm-3 control-label">库区编码:</label>
  9 + <label class="col-sm-3 control-label">容器类型编码:</label>
10 10 <div class="col-sm-8">
11   - <select id="zonecode" name="zonecode" class="form-control" th:with="result=${@zone.getZoneCodeList()}">
12   - <option th:each="item : ${result}" th:text="${item['code']}" th:value="${item['code']}"></option>
13   - </select>
  11 + <input id="containerType" name="containerType" class="form-control" type="text">
14 12 </div>
15 13 </div>
16 14 <div class="form-group">
17   - <label class="col-sm-3 control-label">容器类型名称:</label>
18   - <div class="col-sm-8">
19   - <select id="containercapacity" name="containercapacity" class="form-control" th:with="list=${@containerType.getAllContainerType()}">
20   - <option th:each="item : ${list}" th:text="${item['name']}" th:value="${item['name']}" th:attr = " containerTypeId = ${item['id']}, containerTypeCode = ${item['code']}"></option>
21   - </select>
22   - </div>
23   - </div>
24   - <div class="form-group">
25   - <label class="col-sm-3 control-label">物料编码:</label>
  15 + <label class="col-sm-3 control-label">商品编码:</label>
26 16 <div class="col-sm-8">
27 17 <input id="materialCode" name="materialCode" class="form-control" type="text">
28 18 </div>
... ... @@ -34,17 +24,12 @@
34 24 <!--</div>-->
35 25 <!--</div>-->
36 26 <div class="form-group">
37   - <label class="col-sm-3 control-label">上限值:</label>
38   - <div class="col-sm-8">
39   - <input id="uph" name="uph" class="form-control" type="text">
40   - </div>
41   - </div>
42   - <div class="form-group">
43   - <label class="col-sm-3 control-label">备注:</label>
  27 + <label class="col-sm-3 control-label">存放数量:</label>
44 28 <div class="col-sm-8">
45   - <input id="remark" name="remark" class="form-control" type="text">
  29 + <input id="qty" name="qty" class="form-control" type="text">
46 30 </div>
47 31 </div>
  32 +
48 33 <!--<div class="form-group"> -->
49 34 <!--<label class="col-sm-3 control-label">创建时间:</label>-->
50 35 <!--<div class="col-sm-8">-->
... ... @@ -131,7 +116,7 @@
131 116 var prefix = ctx + "config/containerCapacity";
132 117 $("#form-containerCapacity-add").validate({
133 118 rules:{
134   - uph:{
  119 + qty:{
135 120 required:true,
136 121 digits:true,
137 122 number:true,
... ... @@ -146,12 +131,9 @@
146 131 data : {
147 132 "enable" : $("input[name='enable']").is(':checked'),
148 133 "materialCode" :$("input[name='materialCode']").val(),
149   - "uph" :$("input[name='uph']").val(),
150   - "remark" :$("input[name='remark']").val(),
151   - "code" : $("#zonecode option:selected").val(),
152   - "containerTypeName" : $("#containercapacity option:selected").val(),
153   - "containerTypeId" : $("#containercapacity option:selected").attr("containerTypeId"),
154   - "containerTypeCode": $("#containercapacity option:selected").attr("containerTypeCode"),
  134 + "qty" :$("input[name='qty']").val(),
  135 + "containerType" :$("input[name='containerType']").val(),
  136 +
155 137 },
156 138 async : false,
157 139 error : function(request) {
... ...
src/main/resources/templates/config/containerCapacity/containerCapacity.html
... ... @@ -10,13 +10,13 @@
10 10 <div class="select-list">
11 11 <ul>
12 12 <li>
13   - 库区编码:<input type="text" name="code"/>
  13 + 容器类型编码:<input type="text" name="containerType"/>
14 14 </li>
15 15 <li>
16   - 物料编码:<input type="text" name="materialCode"/>
  16 + 商品编码:<input type="text" name="materialCode"/>
17 17 </li>
18 18 <li>
19   - 物料名称:<input type="text" name="materialName"/>
  19 + 商品名称:<input type="text" name="materialName"/>
20 20 </li>
21 21 <!--<li>-->
22 22 <!--角色状态:<select name="enable" th:with="type=${@dict.getType('sys_normal_disable')}">-->
... ... @@ -75,32 +75,24 @@
75 75 title : '标识'
76 76 },
77 77 {
78   - field : 'code',
79   - title : '编码'
80   - },
81   - {
82   - field : 'containerTypeName',
83   - title : '容器类型名称'
84   - },
85   - {
86   - field : 'containerTypeCode',
  78 + field : 'containerType',
87 79 title : '容器类型编码'
88 80 },
89 81 {
90 82 field : 'materialCode',
91   - title : '物料编码'
  83 + title : '商品编码'
92 84 },
93 85 {
94 86 field : 'materialName',
95   - title : '物料名称'
  87 + title : '商品名称'
96 88 },
97 89 {
98   - field : 'uph',
99   - title : '上限值'
  90 + field : 'materialSpec',
  91 + title : '商品单位'
100 92 },
101 93 {
102   - field : 'remark',
103   - title : '备注'
  94 + field : 'qty',
  95 + title : '存放数量'
104 96 },
105 97 {
106 98 field : 'created',
... ...
src/main/resources/templates/config/containerCapacity/edit.html
... ... @@ -6,22 +6,7 @@
6 6 <div class="wrapper wrapper-content animated fadeInRight ibox-content">
7 7 <form class="form-horizontal m" id="form-containerCapacity-edit" th:object="${containerCapacity}">
8 8 <input id="id" name="id" th:field="*{id}" type="hidden">
9   - <div class="form-group">
10   - <label class="col-sm-3 control-label">库区编码:</label>
11   - <div class="col-sm-8">
12   - <select id="zonecode" name="zonecode" class="form-control" th:with="result=${@zone.getZoneCodeList()}" disabled="disabled">
13   - <option th:each="item : ${result}" th:field="*{code}" th:text="${item['code']}" th:value="${item['code']}"></option>
14   - </select>
15   - </div>
16   - </div>
17   - <div class="form-group">
18   - <label class="col-sm-3 control-label">容器类型名称:</label>
19   - <div class="col-sm-8">
20   - <select id="containercapacity" name="containercapacity" class="form-control" th:with="list=${@containerType.getAllContainerType()}" disabled="disabled">
21   - <option th:each="item : ${list}" th:field="*{containerTypeName}" th:text="${item['name']}" th:value="${item['name']}" th:attr = " containerTypeId = ${item['id']}, containerTypeCode = ${item['code']}"></option>
22   - </select>
23   - </div>
24   - </div>
  9 +
25 10 <!--<div class="form-group"> -->
26 11 <!--<label class="col-sm-3 control-label">仓库Id:</label>-->
27 12 <!--<div class="col-sm-8">-->
... ... @@ -35,29 +20,36 @@
35 20 <!--</div>-->
36 21 <!--</div>-->
37 22 <div class="form-group">
38   - <label class="col-sm-3 control-label">物料编码:</label>
  23 + <label class="col-sm-3 control-label">容器类型编码:</label>
  24 + <div class="col-sm-8">
  25 + <input id="containerType" name="containerType" th:field="*{containerType}" class="form-control" type="text" readonly="readonly">
  26 + </div>
  27 + </div>
  28 + <div class="form-group">
  29 + <label class="col-sm-3 control-label">商品编码:</label>
39 30 <div class="col-sm-8">
40   - <input id="materialCode" name="materialCode" th:field="*{materialCode}" class="form-control" type="text" disabled="disabled">
  31 + <input id="materialCode" name="materialCode" th:field="*{materialCode}" class="form-control" type="text" readonly="readonly">
41 32 </div>
42 33 </div>
43 34 <div class="form-group">
44   - <label class="col-sm-3 control-label">物料名称:</label>
  35 + <label class="col-sm-3 control-label">商品名称:</label>
45 36 <div class="col-sm-8">
46   - <input id="materialName" name="materialName" th:field="*{materialName}" class="form-control" type="text" disabled="disabled">
  37 + <input id="materialName" name="materialName" th:field="*{materialName}" class="form-control" type="text" readonly="readonly">
47 38 </div>
48 39 </div>
49 40 <div class="form-group">
50   - <label class="col-sm-3 control-label">上限值:</label>
  41 + <label class="col-sm-3 control-label">商品规格:</label>
51 42 <div class="col-sm-8">
52   - <input id="uph" name="uph" th:field="*{uph}" class="form-control" type="text">
  43 + <input id="materialSpec" name="materialSpec" th:field="*{materialSpec}" class="form-control" type="text" readonly="readonly">
53 44 </div>
54 45 </div>
55 46 <div class="form-group">
56   - <label class="col-sm-3 control-label">备注:</label>
  47 + <label class="col-sm-3 control-label">存放数量:</label>
57 48 <div class="col-sm-8">
58   - <input id="remark" name="remark" th:field="*{remark}" class="form-control" type="text">
  49 + <input id="qty" name="qty" th:field="*{qty}" class="form-control" type="text">
59 50 </div>
60 51 </div>
  52 +
61 53 <!--<div class="form-group"> -->
62 54 <!--<label class="col-sm-3 control-label">创建时间:</label>-->
63 55 <!--<div class="col-sm-8">-->
... ... @@ -175,13 +167,11 @@
175 167 "id": $("input[name='id']").val(),
176 168 "enable" : $("input[name='enable']").is(':checked'),
177 169 "code" : $("#zonecode option:selected").val(),
178   - "containerTypeName" : $("#containercapacity option:selected").val(),
179   - "containerTypeId" : $("#containercapacity option:selected").attr("containerTypeId"),
180   - "containerTypeCode": $("#containercapacity option:selected").attr("containerTypeCode"),
181 170 "materialName" :$("input[name='materialName']").val(),
182 171 "materialCode" :$("input[name='materialCode']").val(),
183   - "uph" :$("input[name='uph']").val(),
184   - "remark" :$("input[name='remark']").val(),
  172 + "qty" :$("input[name='qty']").val(),
  173 + "containerType" :$("input[name='containerType']").val(),
  174 +
185 175 },
186 176 async : false,
187 177 error : function(request) {
... ...
src/main/resources/templates/config/containerType/add.html
... ... @@ -17,6 +17,12 @@
17 17 <input id="name" name="name" class="form-control" type="text">
18 18 </div>
19 19 </div>
  20 + <div class="form-group">
  21 + <label class="col-sm-3 control-label">序号:</label>
  22 + <div class="col-sm-8">
  23 + <input id="sequence" name="sequence" class="form-control" type="text">
  24 + </div>
  25 + </div>
20 26 <!--<div class="form-group"> -->
21 27 <!--<label class="col-sm-3 control-label">仓库Id:</label>-->
22 28 <!--<div class="col-sm-8">-->
... ... @@ -30,12 +36,6 @@
30 36 <!--</div>-->
31 37 <!--</div>-->
32 38 <div class="form-group">
33   - <label class="col-sm-3 control-label">前缀:</label>
34   - <div class="col-sm-8">
35   - <input id="prefix" name="prefix" class="form-control" type="text">
36   - </div>
37   - </div>
38   - <div class="form-group">
39 39 <label class="col-sm-3 control-label">空箱重量kg:</label>
40 40 <div class="col-sm-8">
41 41 <input id="emptyWeight" name="emptyWeight" class="form-control" type="text">
... ... @@ -71,6 +71,12 @@
71 71 <input id="fillPercent" name="fillPercent" class="form-control" type="text">
72 72 </div>
73 73 </div>
  74 + <div class="form-group">
  75 + <label class="col-sm-3 control-label">状态:</label>
  76 + <div class="col-sm-8">
  77 + <input id="status" name="status" class="form-control" type="text">
  78 + </div>
  79 + </div>
74 80 <!--<div class="form-group"> -->
75 81 <!--<label class="col-sm-3 control-label">作为默认货箱:</label>-->
76 82 <!--<div class="col-sm-8">-->
... ... @@ -81,7 +87,7 @@
81 87 <label class="col-sm-3 control-label">是否默认容器:</label>
82 88 <div class="col-sm-8">
83 89 <div class="onoffswitch">
84   - <input type="checkbox" th:checked="false" class="onoffswitch-checkbox" id="useAsDefault" name="useAsDefault">
  90 + <input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="useAsDefault" name="useAsDefault">
85 91 <label class="onoffswitch-label" for="useAsDefault">
86 92 <span class="onoffswitch-inner"></span>
87 93 <span class="onoffswitch-switch"></span>
... ... @@ -90,36 +96,6 @@
90 96 </div>
91 97 </div>
92 98 <div class="form-group">
93   - <label class="col-sm-3 control-label">类型描述:</label>
94   - <div class="col-sm-8">
95   - <input id="remark" name="remark" class="form-control" type="text">
96   - </div>
97   - </div>
98   - <!--<div class="form-group"> -->
99   - <!--<label class="col-sm-3 control-label">创建时间:</label>-->
100   - <!--<div class="col-sm-8">-->
101   - <!--<input id="created" name="created" class="form-control" type="text">-->
102   - <!--</div>-->
103   - <!--</div>-->
104   - <!--<div class="form-group"> -->
105   - <!--<label class="col-sm-3 control-label">创建用户:</label>-->
106   - <!--<div class="col-sm-8">-->
107   - <!--<input id="createdBy" name="createdBy" class="form-control" type="text">-->
108   - <!--</div>-->
109   - <!--</div>-->
110   - <!--<div class="form-group"> -->
111   - <!--<label class="col-sm-3 control-label">创建时间:</label>-->
112   - <!--<div class="col-sm-8">-->
113   - <!--<input id="lastUpdated" name="lastUpdated" class="form-control" type="text">-->
114   - <!--</div>-->
115   - <!--</div>-->
116   - <!--<div class="form-group"> -->
117   - <!--<label class="col-sm-3 control-label">更新用户:</label>-->
118   - <!--<div class="col-sm-8">-->
119   - <!--<input id="lastUpdatedBy" name="lastUpdatedBy" class="form-control" type="text">-->
120   - <!--</div>-->
121   - <!--</div>-->
122   - <div class="form-group">
123 99 <label class="col-sm-3 control-label">是否有效:</label>
124 100 <div class="col-sm-8">
125 101 <!--<input id="enable" name="enable" class="form-control" type="text">-->
... ... @@ -205,14 +181,14 @@
205 181 "useAsDefault" : $("input[name='useAsDefault']").is(':checked'),
206 182 "code" :$("input[name='code']").val(),
207 183 "name" :$("input[name='name']").val(),
208   - "prefix" :$("input[name='prefix']").val(),
  184 + "sequence" :$("input[name='sequence']").val(),
209 185 "emptyWeight" :$("input[name='emptyWeight']").val(),
210 186 "length" :$("input[name='length']").val(),
211 187 "width" :$("input[name='width']").val(),
212 188 "height" :$("input[name='height']").val(),
213 189 "maxWeight" :$("input[name='maxWeight']").val(),
214 190 "fillPercent" :$("input[name='fillPercent']").val(),
215   - "remark" :$("input[name='remark']").val()
  191 + "status" :$("input[name='status']").val(),
216 192 },
217 193 async : false,
218 194 error : function(request) {
... ...
src/main/resources/templates/config/containerType/containerType.html
... ... @@ -87,6 +87,10 @@
87 87 field : 'companyCode',
88 88 title : '货主编码'
89 89 },
  90 + {
  91 + field : 'sequence',
  92 + title : '序号'
  93 + },
90 94 {
91 95 field : 'emptyWeight',
92 96 title : '空箱重量kg'
... ... @@ -124,10 +128,6 @@
124 128 }
125 129 },
126 130 {
127   - field : 'remark',
128   - title : '类型描述'
129   - },
130   - {
131 131 field : 'created',
132 132 title : '创建时间'
133 133 },
... ...
src/main/resources/templates/config/containerType/edit.html
... ... @@ -30,12 +30,7 @@
30 30 <!--<input id="warehouseCode" name="warehouseCode" th:field="*{warehouseCode}" class="form-control" type="text">-->
31 31 <!--</div>-->
32 32 <!--</div>-->
33   - <div class="form-group">
34   - <label class="col-sm-3 control-label">前缀:</label>
35   - <div class="col-sm-8">
36   - <input id="prefix" name="prefix" th:field="*{prefix}" class="form-control" type="text">
37   - </div>
38   - </div>
  33 +
39 34 <div class="form-group">
40 35 <label class="col-sm-3 control-label">空箱重量kg:</label>
41 36 <div class="col-sm-8">
... ... @@ -78,24 +73,24 @@
78 73 <input id="useAsDefault" name="useAsDefault" th:field="*{ }" class="form-control" type="text">
79 74 </div>
80 75 </div>-->
81   - <div class="form-group">
82   - <label class="col-sm-3 control-label">是否默认容器:</label>
83   - <div class="col-sm-8">
84   - <div class="onoffswitch">
85   - <input type="checkbox" th:checked="${containerType.useAsDefault}" class="onoffswitch-checkbox" id="useAsDefault" name="useAsDefault">
86   - <label class="onoffswitch-label" for="useAsDefault">
87   - <span class="onoffswitch-inner"></span>
88   - <span class="onoffswitch-switch"></span>
89   - </label>
90   - </div>
91   - </div>
92   - </div>
93   - <div class="form-group">
94   - <label class="col-sm-3 control-label">类型描述:</label>
95   - <div class="col-sm-8">
96   - <input id="remark" name="remark" th:field="*{remark}" class="form-control" type="text">
97   - </div>
98   - </div>
  76 + <!--<div class="form-group">-->
  77 + <!--<label class="col-sm-3 control-label">是否默认容器:</label>-->
  78 + <!--<div class="col-sm-8">-->
  79 + <!--<div class="onoffswitch">-->
  80 + <!--<input type="checkbox" th:checked="${containerType.useAsDefault}" class="onoffswitch-checkbox" id="useAsDefault" name="useAsDefault">-->
  81 + <!--<label class="onoffswitch-label" for="useAsDefault">-->
  82 + <!--<span class="onoffswitch-inner"></span>-->
  83 + <!--<span class="onoffswitch-switch"></span>-->
  84 + <!--</label>-->
  85 + <!--</div>-->
  86 + <!--</div>-->
  87 + <!--</div>-->
  88 + <!--<div class="form-group"> -->
  89 + <!--<label class="col-sm-3 control-label">类型描述:</label>-->
  90 + <!--<div class="col-sm-8">-->
  91 + <!--<input id="remark" name="remark" th:field="*{remark}" class="form-control" type="text">-->
  92 + <!--</div>-->
  93 + <!--</div>-->
99 94 <!--<div class="form-group"> -->
100 95 <!--<label class="col-sm-3 control-label">创建时间:</label>-->
101 96 <!--<div class="col-sm-8">-->
... ...
src/main/resources/templates/config/locationType/add.html
... ... @@ -17,12 +17,6 @@
17 17 <input id="name" name="name" class="form-control" type="text">
18 18 </div>
19 19 </div>
20   - <div class="form-group">
21   - <label class="col-sm-3 control-label">前缀:</label>
22   - <div class="col-sm-8">
23   - <input id="prefix" name="prefix" class="form-control" type="text">
24   - </div>
25   - </div>
26 20 <!--<div class="form-group"> -->
27 21 <!--<label class="col-sm-3 control-label">仓库Id:</label>-->
28 22 <!--<div class="col-sm-8">-->
... ... @@ -60,9 +54,33 @@
60 54 </div>
61 55 </div>
62 56 <div class="form-group">
63   - <label class="col-sm-3 control-label">描述:</label>
  57 + <label class="col-sm-3 control-label">最小允许单位:</label>
  58 + <div class="col-sm-8">
  59 + <input id="minQtyUm" name="minQtyUm" class="form-control" type="text">
  60 + </div>
  61 + </div>
  62 + <div class="form-group">
  63 + <label class="col-sm-3 control-label">校验位:</label>
  64 + <div class="col-sm-8">
  65 + <input id="checkDigit" name="checkDigit" class="form-control" type="text">
  66 + </div>
  67 + </div>
  68 + <div class="form-group">
  69 + <label class="col-sm-3 control-label">最多混放物料数:</label>
  70 + <div class="col-sm-8">
  71 + <input id="maxMaterials" name="maxMaterials" class="form-control" type="text">
  72 + </div>
  73 + </div>
  74 + <div class="form-group">
  75 + <label class="col-sm-3 control-label">最大批号数量:</label>
64 76 <div class="col-sm-8">
65   - <input id="remark" name="remark" class="form-control" type="text">
  77 + <input id="maxLots" name="maxLots" class="form-control" type="text">
  78 + </div>
  79 + </div>
  80 + <div class="form-group">
  81 + <label class="col-sm-3 control-label">最大允许托盘数:</label>
  82 + <div class="col-sm-8">
  83 + <input id="maxContainers" name="maxContainers" class="form-control" type="text">
66 84 </div>
67 85 </div>
68 86 <!--<div class="form-group"> -->
... ... @@ -89,19 +107,19 @@
89 107 <!--<input id="lastUpdatedBy" name="lastUpdatedBy" class="form-control" type="text">-->
90 108 <!--</div>-->
91 109 <!--</div>-->
92   - <div class="form-group">
93   - <label class="col-sm-3 control-label">是否有效:</label>
94   - <div class="col-sm-8">
95   - <!--<input id="enable" name="enable" class="form-control" type="text">-->
96   - <div class="onoffswitch">
97   - <input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="enable" name="enable">
98   - <label class="onoffswitch-label" for="enable">
99   - <span class="onoffswitch-inner"></span>
100   - <span class="onoffswitch-switch"></span>
101   - </label>
102   - </div>
103   - </div>
104   - </div>
  110 + <!--<div class="form-group"> -->
  111 + <!--<label class="col-sm-3 control-label">是否有效:</label>-->
  112 + <!--<div class="col-sm-8">-->
  113 + <!--&lt;!&ndash;<input id="enable" name="enable" class="form-control" type="text">&ndash;&gt;-->
  114 + <!--<div class="onoffswitch">-->
  115 + <!--<input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="enable" name="enable">-->
  116 + <!--<label class="onoffswitch-label" for="enable">-->
  117 + <!--<span class="onoffswitch-inner"></span>-->
  118 + <!--<span class="onoffswitch-switch"></span>-->
  119 + <!--</label>-->
  120 + <!--</div>-->
  121 + <!--</div>-->
  122 + <!--</div>-->
105 123 <!--<div class="form-group"> -->
106 124 <!--<label class="col-sm-3 control-label">是否删除:</label>-->
107 125 <!--<div class="col-sm-8">-->
... ...
src/main/resources/templates/config/locationType/edit.html
... ... @@ -19,12 +19,6 @@
19 19 </div>
20 20 </div>
21 21 <div class="form-group">
22   - <label class="col-sm-3 control-label">前缀:</label>
23   - <div class="col-sm-8">
24   - <input id="prefix" name="prefix" th:field="*{prefix}" class="form-control" type="text">
25   - </div>
26   - </div>
27   - <div class="form-group">
28 22 <label class="col-sm-3 control-label">长m:</label>
29 23 <div class="col-sm-8">
30 24 <input id="length" name="length" th:field="*{length}" class="form-control" type="text">
... ... @@ -49,9 +43,33 @@
49 43 </div>
50 44 </div>
51 45 <div class="form-group">
52   - <label class="col-sm-3 control-label">描述:</label>
  46 + <label class="col-sm-3 control-label">最小允许单位:</label>
  47 + <div class="col-sm-8">
  48 + <input id="minQtyUm" name="minQtyUm" th:field="*{minQtyUm}" class="form-control" type="text">
  49 + </div>
  50 + </div>
  51 + <div class="form-group">
  52 + <label class="col-sm-3 control-label">校验位:</label>
  53 + <div class="col-sm-8">
  54 + <input id="checkDigit" name="checkDigit" th:field="*{checkDigit}" class="form-control" type="text">
  55 + </div>
  56 + </div>
  57 + <div class="form-group">
  58 + <label class="col-sm-3 control-label">最多混放物料数:</label>
  59 + <div class="col-sm-8">
  60 + <input id="maxMaterials" name="maxMaterials" th:field="*{maxMaterials}" class="form-control" type="text">
  61 + </div>
  62 + </div>
  63 + <div class="form-group">
  64 + <label class="col-sm-3 control-label">最大批号数量:</label>
  65 + <div class="col-sm-8">
  66 + <input id="maxLots" name="maxLots" th:field="*{maxLots}" class="form-control" type="text">
  67 + </div>
  68 + </div>
  69 + <div class="form-group">
  70 + <label class="col-sm-3 control-label">最大允许托盘数:</label>
53 71 <div class="col-sm-8">
54   - <input id="remark" name="remark" th:field="*{remark}" class="form-control" type="text">
  72 + <input id="maxContainers" name="maxContainers" th:field="*{maxContainers}" class="form-control" type="text">
55 73 </div>
56 74 </div>
57 75 <!--<div class="form-group"> -->
... ...
src/main/resources/templates/config/locationType/locationType.html
... ... @@ -71,20 +71,12 @@
71 71 title : '库位类型Id'
72 72 },
73 73 {
74   - field : 'prefix',
75   - title : '前缀'
  74 + field : 'code',
  75 + title : '货位类型'
76 76 },
77 77 {
78   - field : 'name',
79   - title : '库位名称'
80   - },
81   - {
82   - field : 'code',
83   - title : '编码'
84   - },
85   - {
86   - field : 'warehouseId',
87   - title : '仓库Id'
  78 + field : 'name',
  79 + title : '名称'
88 80 },
89 81 {
90 82 field : 'warehouseCode',
... ... @@ -107,9 +99,25 @@
107 99 title : '最大重量kg'
108 100 },
109 101 {
110   - field : 'remark',
111   - title : '描述'
112   - },
  102 + field : 'minQtyUm',
  103 + title : '最小允许单位'
  104 + },
  105 + {
  106 + field : 'checkDigit',
  107 + title : '校验位'
  108 + },
  109 + {
  110 + field : 'checkDigit',
  111 + title : '校验位'
  112 + },
  113 + {
  114 + field : 'maxMaterials',
  115 + title : '最多混放物料数'
  116 + },
  117 + {
  118 + field : 'maxContainers',
  119 + title : '最大允许托盘数'
  120 + },
113 121 {
114 122 field : 'created',
115 123 title : '创建时间'
... ...
src/main/resources/templates/config/zoneCapacity/add.html
... ... @@ -12,17 +12,11 @@
12 12 <input id="materialId" name="materialId" type="hidden">
13 13 </div>
14 14 </div>
15   - <div class="form-group">
16   - <label class="col-sm-3 control-label">仓库:</label>
17   - <div class="col-sm-8">
18   - <input id="warehouseCode" name="warehouseCode" class="form-control" type="text">
19   - </div>
20   - </div>
21 15 <div class="form-group">
22 16 <label class="col-sm-3 control-label">货位过滤条件:</label>
23 17 <div class="col-sm-8">
24   - <select id="zoneId" name="zoneId" class="form-control" th:with="zones=${@zone.list()}">
25   - <option th:each="zone: ${zones}" th:text="${zone['name']}" th:value="${zone['id']}"></option>
  18 + <select id="filterCode" name="filterCode" class="form-control" th:with="zones=${@zone.list()}">
  19 + <option th:each="zone: ${zones}" th:text="${zone['name']}" th:value="${zone['code']}"></option>
26 20 </select>
27 21 </div>
28 22 </div>
... ... @@ -54,7 +48,7 @@
54 48 materialCode:{
55 49 required:true,
56 50 },
57   - warehouseCode:{
  51 + filterCode:{
58 52 required:true,
59 53 },
60 54 materialCode:{
... ...
src/main/resources/templates/config/zoneCapacity/edit.html
... ... @@ -7,98 +7,39 @@
7 7 <form class="form-horizontal m" id="form-zoneCapacity-edit" th:object="${zoneCapacity}">
8 8 <input id="id" name="id" th:field="*{id}" type="hidden">
9 9 <div class="form-group">
10   - <label class="col-sm-3 control-label">编码:</label>
  10 + <label class="col-sm-3 control-label">货位过滤条件:</label>
11 11 <div class="col-sm-8">
12   - <input id="code" name="code" th:field="*{code}" class="form-control" type="text">
13   - </div>
14   - </div>
15   - <div class="form-group">
16   - <label class="col-sm-3 control-label">名称:</label>
17   - <div class="col-sm-8">
18   - <input id="name" name="name" th:field="*{name}" class="form-control" type="text">
  12 + <input id="filterCode" name="filterCode" th:field="*{filterCode}" class="form-control" type="text" readonly="readonly">
19 13 </div>
20 14 </div>
21 15 <div class="form-group">
22   - <label class="col-sm-3 control-label">物料:</label>
  16 + <label class="col-sm-3 control-label">商品编码:</label>
23 17 <div class="col-sm-8">
24   - <input id="materialCode" name="materialCode" th:field="*{materialCode}" class="form-control" type="text">
25   - <input id="materialId" name="materialId" th:field="*{materialId}" type="hidden">
  18 + <input id="materialCode" name="materialCode" th:field="*{materialCode}" class="form-control" type="text" readonly="readonly">
26 19 </div>
27 20 </div>
28 21 <div class="form-group">
29   - <label class="col-sm-3 control-label">物料类别:</label>
  22 + <label class="col-sm-3 control-label">商品名称:</label>
30 23 <div class="col-sm-8">
31   - <select id="materialType" name="materialType" th:field="*{materialType}" th:with="type=${@dict.getType('materialType')}" class="form-control">
32   - <option th:each="e : ${type}" th:text="${e['dictLabel']}" th:value="${e['dictValue']}"></option>
33   - </select>
  24 + <input id="materialName" name="materialName" th:field="*{materialName}" class="form-control" type="text" readonly="readonly">
34 25 </div>
35 26 </div>
36 27 <div class="form-group">
37   - <label class="col-sm-3 control-label">仓库区域:</label>
  28 + <label class="col-sm-3 control-label">商品规格:</label>
38 29 <div class="col-sm-8">
39   - <select id="zoneId" name="zoneId" class="form-control" th:field="*{zoneId}" th:with="zones=${@zone.getZoneCodeList()}">
40   - <option th:each="zone: ${zones}" th:text="${zone['name']}" th:value="${zone['id']}"></option>
41   - </select>
  30 + <input id="materialSpec" name="materialSpec" th:field="*{materialSpec}" class="form-control" type="text" readonly="readonly">
42 31 </div>
43 32 </div>
44 33 <div class="form-group">
45   - <label class="col-sm-3 control-label">上限预警值:</label>
  34 + <label class="col-sm-3 control-label">最大数量:</label>
46 35 <div class="col-sm-8">
47   - <input id="uphAlarm" name="uphAlarm" th:field="*{uphAlarm}" class="form-control" type="text">
  36 + <input id="maxQty" name="maxQty" th:field="*{maxQty}" class="form-control" type="text">
48 37 </div>
49 38 </div>
50 39 <div class="form-group">
51   - <label class="col-sm-3 control-label">上限值:</label>
52   - <div class="col-sm-8">
53   - <input id="uph" name="uph" th:field="*{uph}" class="form-control" type="text">
54   - </div>
55   - </div>
56   - <div class="form-group">
57   - <label class="col-sm-3 control-label">下限预警值:</label>
58   - <div class="col-sm-8">
59   - <input id="lphAlarm" name="lphAlarm" th:field="*{lphAlarm}" class="form-control" type="text">
60   - </div>
61   - </div>
62   - <div class="form-group">
63   - <label class="col-sm-3 control-label">下限值:</label>
64   - <div class="col-sm-8">
65   - <input id="lph" name="lph" th:field="*{lph}" class="form-control" type="text">
66   - </div>
67   - </div>
68   - <div class="form-group">
69   - <label class="col-sm-3 control-label">是否有效:</label>
70   - <div class="col-sm-8">
71   - <div class="onoffswitch">
72   - <input type="checkbox" th:checked="*{enable}" class="onoffswitch-checkbox" id="enable" name="enable">
73   - <label class="onoffswitch-label" for="enable">
74   - <span class="onoffswitch-inner"></span>
75   - <span class="onoffswitch-switch"></span>
76   - </label>
77   - </div>
78   - </div>
79   - </div>
80   - <div class="form-group">
81   - <label class="col-sm-3 control-label">创建时间:</label>
  40 + <label class="col-sm-3 control-label">最小数量:</label>
82 41 <div class="col-sm-8">
83   - <input id="created" name="created" th:field="*{created}" class="form-control" type="text" readonly="readonly">
84   - </div>
85   - </div>
86   - <div class="form-group">
87   - <label class="col-sm-3 control-label">创建用户:</label>
88   - <div class="col-sm-8">
89   - <input id="createdBy" name="createdBy" th:field="*{createdBy}" class="form-control" type="text" readonly="readonly">
90   - </div>
91   - </div>
92   - <div class="form-group">
93   - <label class="col-sm-3 control-label">创建时间:</label>
94   - <div class="col-sm-8">
95   - <input id="lastUpdated" name="lastUpdated" th:field="*{lastUpdated}" class="form-control" type="text" readonly="readonly">
96   - </div>
97   - </div>
98   - <div class="form-group">
99   - <label class="col-sm-3 control-label">更新用户:</label>
100   - <div class="col-sm-8">
101   - <input id="lastUpdatedBy" name="lastUpdatedBy" th:field="*{lastUpdatedBy}" class="form-control" type="text" readonly="readonly">
  42 + <input id="minQty" name="minQty" th:field="*{minQty}" class="form-control" type="text">
102 43 </div>
103 44 </div>
104 45 <div class="form-group">
... ... @@ -114,30 +55,23 @@
114 55 var prefix = ctx + "config/zoneCapacity"
115 56 $("#form-zoneCapacity-edit").validate({
116 57 rules:{
117   - code:{
118   - required:true,
119   - },
120   - name:{
  58 + filterCode:{
121 59 required:true,
122 60 },
123 61 materialCode:{
124 62 required:true,
125 63 },
126   - uphAlarm:{
  64 + materialName:{
127 65 required:true,
128   - range:[0, 100]
129 66 },
130   - uph:{
  67 + materialSpec:{
131 68 required:true,
132   - range:[0, 100]
133 69 },
134   - lphAlarm:{
  70 + maxQty:{
135 71 required:true,
136   - range:[0, 100]
137 72 },
138   - lph:{
  73 + minQty:{
139 74 required:true,
140   - range:[0, 100]
141 75 },
142 76 },
143 77 submitHandler: function(form) {
... ...
src/main/resources/templates/general/bomDetail/add.html 0 → 100644
  1 +<!DOCTYPE HTML>
  2 +<html lang="zh" xmlns:th="http://www.thymeleaf.org">
  3 +<meta charset="utf-8">
  4 +<head th:include="include :: header"></head>
  5 +<body class="white-bg">
  6 +<div class="wrapper wrapper-content animated fadeInRight ibox-content">
  7 + <form class="form-horizontal m" id="form-bomDetail-add">
  8 + <div class="form-group">
  9 + <label class="col-sm-3 control-label"> 物料编码:</label>
  10 + <div class="col-sm-8">
  11 + <input id="materialCode" name="materialCode" class="form-control" type="text">
  12 + </div>
  13 + </div>
  14 + <div class="form-group">
  15 + <label class="col-sm-3 control-label">数量:</label>
  16 + <div class="col-sm-8">
  17 + <input id="qty" name="qty" class="form-control" type="text">
  18 + </div>
  19 + </div>
  20 + <div class="form-group">
  21 + <label class="col-sm-3 control-label">组套层次:</label>
  22 + <div class="col-sm-8">
  23 + <input id="buildLevel" name="buildLevel" class="form-control" type="text">
  24 + </div>
  25 + </div>
  26 + <div class="form-group">
  27 + <label class="col-sm-3 control-label">序号:</label>
  28 + <div class="col-sm-8">
  29 + <input id="buildSequence" name="buildSequence" class="form-control" type="text">
  30 + </div>
  31 + </div>
  32 + <div class="form-group">
  33 + <label class="col-sm-3 control-label">分配规则:</label>
  34 + <div class="col-sm-8">
  35 + <input id="allocationRule" name="allocationRule" class="form-control" type="text">
  36 + </div>
  37 + </div>
  38 + <div class="form-group">
  39 + <label class="col-sm-3 control-label">从货位:</label>
  40 + <div class="col-sm-8">
  41 + <input id="fromLocation" name="fromLocation" class="form-control" type="text">
  42 + </div>
  43 + </div>
  44 + <div class="form-group">
  45 + <div class="form-control-static col-sm-offset-9">
  46 + <button type="submit" class="btn btn-primary">提交</button>
  47 + <button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button>
  48 + </div>
  49 + </div>
  50 + </form>
  51 +</div>
  52 +<div th:include="include::footer"></div>
  53 +<script type="text/javascript">
  54 + var prefix = ctx + "general/bomDetail";
  55 + $("#form-bomDetail-add").validate({
  56 + rules:{
  57 + materialCode:{
  58 + required:true
  59 + },
  60 + },
  61 + submitHandler: function(form) {
  62 + var tableValue = $("#form-bomDetail-add").serialize();
  63 + $.operate.save(prefix + "/add", tableValue);
  64 + }
  65 + });
  66 +</script>
  67 +</body>
  68 +</html>
... ...
src/main/resources/templates/general/bomDetail/bomDetail.html 0 → 100644
  1 +<!DOCTYPE HTML>
  2 +<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
  3 +<meta charset="utf-8">
  4 +<head th:include="include :: header"></head>
  5 +<body>
  6 +
  7 +<div class="btn-group hidden-xs" id="toolbar" role="group">
  8 + <a class="btn btn-outline btn-success btn-rounded" onclick="$.operate.add()" shiro:hasPermission="general:bomDetail:add">
  9 + <i class="fa fa-plus"></i> 新增
  10 + </a>
  11 + <a class="btn btn-outline btn-danger btn-rounded" onclick="$.operate.batRemove()" shiro:hasPermission="general:bomDetail:remove">
  12 + <i class="fa fa-trash-o"></i> 删除
  13 + </a>
  14 +</div>
  15 +<div class="col-sm-12">
  16 + <table id="bootstrap-table" data-mobile-responsive="true" class="table table-bordered table-hover"></table>
  17 +</div>
  18 +
  19 +
  20 +<div th:include="include :: footer"></div>
  21 +<script th:inline="javascript">
  22 + var prefix = ctx + "general/bomDetail";
  23 + var editFlag = [[${@permission.hasPermi('general:bomDetail:edit')}]];
  24 + var removeFlag = [[${@permission.hasPermi('general:bomDetail:remove')}]];
  25 + var datas = [[${@dict.getType('sys_normal_disable')}]];
  26 + $(function() {
  27 + var options = {
  28 + url: prefix + "/list",
  29 + createUrl: prefix + "/add",
  30 + updateUrl: prefix + "/edit/{id}",
  31 + removeUrl: prefix + "/remove",
  32 + modalName: "商品详情",
  33 + queryParams:"bomId="+[[${bomHeaderId}]],
  34 + search: false,
  35 + sortName: "id",
  36 + sortOrder: "desc",
  37 + columns: [{
  38 + checkbox: true
  39 + },
  40 + {
  41 + field : 'id',
  42 + title : 'id'
  43 + },
  44 + {
  45 + field : 'warehouseCode',
  46 + title : '仓库代码'
  47 + },
  48 + {
  49 + field : 'companyCode',
  50 + title : '货主'
  51 + },
  52 + {
  53 + field : 'bomId',
  54 + title : '物料清单内部号' ,
  55 + visible:false
  56 + },
  57 + {
  58 + field : 'materialName',
  59 + title : '物料名称'
  60 + },
  61 + {
  62 + field : 'materialUnit',
  63 + title : '物料单位'
  64 + },
  65 + {
  66 + field : 'buildLevel',
  67 + title : '组套层次'
  68 + },
  69 + {
  70 + field : 'buildSequence',
  71 + title : '序号'
  72 + },
  73 + {
  74 + field : 'qty',
  75 + title : '数量'
  76 + },
  77 + {
  78 + field : 'allocationRule',
  79 + title : '分配规则'
  80 + },
  81 + {
  82 + field : 'fromLocation',
  83 + title : '分配规则'
  84 + },
  85 + {
  86 + field : 'enable',
  87 + title : '是否有效',
  88 + align: 'center',
  89 + formatter: function(value, row, index) {
  90 + return $.table.selectDictLabel(datas, value);
  91 + }
  92 + },
  93 + {
  94 + field : 'created',
  95 + title : '创建时间'
  96 + },
  97 + {
  98 + field : 'createdBy',
  99 + title : '创建用户'
  100 + },
  101 + {
  102 + field : 'lastUpdated',
  103 + title : '更新时间'
  104 + },
  105 + {
  106 + field : 'lastUpdatedBy',
  107 + title : '更新用户'
  108 + },
  109 + {
  110 + field : 'userDef1',
  111 + title : '自定义字段1' ,
  112 + visible:false
  113 + },
  114 + {
  115 + field : 'userDef2',
  116 + title : '自定义字段2' ,
  117 + visible:false
  118 + },
  119 + {
  120 + field : 'userDef3',
  121 + title : '自定义字段3' ,
  122 + visible:false
  123 + },
  124 + {
  125 + title: '操作',
  126 + align: 'center',
  127 + formatter: function(value, row, index) {
  128 + var actions = [];
  129 + actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="#" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
  130 + actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-trash-o"></i>删除</a>');
  131 + return actions.join('');
  132 + }
  133 + }]
  134 + };
  135 + $.table.init(options);
  136 + });
  137 +</script>
  138 +</body>
  139 +</html>
0 140 \ No newline at end of file
... ...
src/main/resources/templates/general/bomDetail/edit.html 0 → 100644
  1 +<!DOCTYPE HTML>
  2 +<html lang="zh" xmlns:th="http://www.thymeleaf.org">
  3 +<meta charset="utf-8">
  4 +<head th:include="include :: header"></head>
  5 +<body class="white-bg">
  6 +<div class="wrapper wrapper-content animated fadeInRight ibox-content">
  7 + <form class="form-horizontal m" id="form-bomDetail-add" th:object="${bomDetail}">
  8 + <div class="form-group">
  9 + <label class="col-sm-3 control-label"> 物料编码:</label>
  10 + <div class="col-sm-8">
  11 + <input id="materialCode" name="materialCode" class="form-control" type="text" th:field="*{materialCode}">
  12 + </div>
  13 + </div>
  14 + <div class="form-group">
  15 + <label class="col-sm-3 control-label">数量:</label>
  16 + <div class="col-sm-8">
  17 + <input id="qty" name="qty" class="form-control" type="text" th:field="*{qty}">
  18 + </div>
  19 + </div>
  20 + <div class="form-group">
  21 + <label class="col-sm-3 control-label">组套层次:</label>
  22 + <div class="col-sm-8">
  23 + <input id="buildLevel" name="buildLevel" class="form-control" type="text" th:field="*{buildLevel}">
  24 + </div>
  25 + </div>
  26 + <div class="form-group">
  27 + <label class="col-sm-3 control-label">序号:</label>
  28 + <div class="col-sm-8">
  29 + <input id="buildSequence" name="buildSequence" class="form-control" type="text" th:field="*{buildSequence}">
  30 + </div>
  31 + </div>
  32 + <div class="form-group">
  33 + <label class="col-sm-3 control-label">分配规则:</label>
  34 + <div class="col-sm-8">
  35 + <input id="allocationRule" name="allocationRule" class="form-control" type="text" th:field="*{allocationRule}">
  36 + </div>
  37 + </div>
  38 + <div class="form-group">
  39 + <label class="col-sm-3 control-label">从货位:</label>
  40 + <div class="col-sm-8">
  41 + <input id="fromLocation" name="fromLocation" class="form-control" type="text" th:field="*{fromLocation}" >
  42 + </div>
  43 + </div>
  44 + <div class="form-group">
  45 + <div class="form-control-static col-sm-offset-9">
  46 + <button type="submit" class="btn btn-primary">提交</button>
  47 + <button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button>
  48 + </div>
  49 + </div>
  50 + </form>
  51 +</div>
  52 +<div th:include="include::footer"></div>
  53 +<script type="text/javascript">
  54 + var prefix = ctx + "general/bomDetail";
  55 + $("#form-bomDetail-add").validate({
  56 + rules:{
  57 + materialCode:{
  58 + required:true
  59 + },
  60 + },
  61 + submitHandler: function(form) {
  62 + var tableValue = $("#form-bomDetail-add").serialize();
  63 + $.operate.save(prefix + "/add", tableValue);
  64 + }
  65 + });
  66 +</script>
  67 +</body>
  68 +</html>
... ...
src/main/resources/templates/general/bomHeader/add.html 0 → 100644
  1 +<!DOCTYPE HTML>
  2 +<html lang="zh" xmlns:th="http://www.thymeleaf.org">
  3 +<meta charset="utf-8">
  4 +<head th:include="include :: header"></head>
  5 +<body class="white-bg">
  6 +<div class="wrapper wrapper-content animated fadeInRight ibox-content">
  7 + <form class="form-horizontal m" id="form-bomHeader-add">
  8 + <div class="form-group">
  9 + <label class="col-sm-3 control-label"> 物料编码:</label>
  10 + <div class="col-sm-8">
  11 + <input id="materialCode" name="materialCode" class="form-control" type="text">
  12 + </div>
  13 + </div>
  14 + <div class="form-group">
  15 + <label class="col-sm-3 control-label">数量:</label>
  16 + <div class="col-sm-8">
  17 + <input id="qty" name="qty" class="form-control" type="text">
  18 + </div>
  19 + </div>
  20 + <div class="form-group">
  21 + <label class="col-sm-3 control-label">修正号码:</label>
  22 + <div class="col-sm-8">
  23 + <input id="revisionNum" name="revisionNum" class="form-control" type="text">
  24 + </div>
  25 + </div>
  26 + <div class="form-group">
  27 + <label class="col-sm-3 control-label">加工说明:</label>
  28 + <div class="col-sm-8">
  29 + <input id="buildInstructions" name="buildInstructions" class="form-control" type="text">
  30 + </div>
  31 + </div>
  32 + <div class="form-group">
  33 + <label class="col-sm-3 control-label">加工货位:</label>
  34 + <div class="col-sm-8">
  35 + <input id="buildLoc" name="buildLoc" class="form-control" type="text">
  36 + </div>
  37 + </div>
  38 + <div class="form-group">
  39 + <label class="col-sm-3 control-label">有效起始日期:</label>
  40 + <div class="col-sm-8">
  41 + <input id="validFromDate" name="validFromDate" class="form-control" type="text">
  42 + </div>
  43 + </div>
  44 + <div class="form-group">
  45 + <label class="col-sm-3 control-label">有效结束日期:</label>
  46 + <div class="col-sm-8">
  47 + <input id="validEndDate" name="validEndDate" class="form-control" type="text">
  48 + </div>
  49 + </div>
  50 + <div class="form-group">
  51 + <label class="col-sm-3 control-label">优先级:</label>
  52 + <div class="col-sm-8">
  53 + <input id="priority" name="priority" class="form-control" type="text">
  54 + </div>
  55 + </div>
  56 + <div class="form-group">
  57 + <label class="col-sm-3 control-label">是否有效:</label>
  58 + <div class="col-sm-8">
  59 + <select id="enable" name="enable" class="form-control" >
  60 + <option value="0">有效</option>
  61 + <option value="1">无效</option>
  62 + </select>
  63 + </div>
  64 + </div>
  65 + <div class="form-group">
  66 + <label class="col-sm-3 control-label">是否虚拟商品:</label>
  67 + <div class="col-sm-8">
  68 + <select id="isVirtualBom" name="isVirtualBom" class="form-control">
  69 + <option value="0">不是</option>
  70 + <option value="1">是</option>
  71 + </select>
  72 + </div>
  73 + </div>
  74 + <div class="form-group">
  75 + <div class="form-control-static col-sm-offset-9">
  76 + <button type="submit" class="btn btn-primary">提交</button>
  77 + <button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button>
  78 + </div>
  79 + </div>
  80 + </form>
  81 +</div>
  82 +<div th:include="include::footer"></div>
  83 +<script type="text/javascript">
  84 + var prefix = ctx + "general/bomHeader";
  85 + $("#form-bomHeader-add").validate({
  86 + rules:{
  87 + materialCode:{
  88 + required:true
  89 + },
  90 + },
  91 + submitHandler: function(form) {
  92 + var tableValue = $("#form-bomHeader-add").serialize();
  93 + tableValue = formValueReplace(tableValue, "enable", $("#enable option:selected").val());
  94 + tableValue = formValueReplace(tableValue, "isVirtualBom", $("#isVirtualBom option:selected").val());
  95 + $.operate.save(prefix + "/add", tableValue);
  96 + }
  97 + });
  98 + $(function () {
  99 + layui.use('laydate', function() {
  100 + var laydate = layui.laydate;
  101 + laydate.render({ elem: '#validFromDate', theme: 'molv', format: 'yyyy-MM-dd' });
  102 + laydate.render({ elem: '#validEndDate', theme: 'molv', format: 'yyyy-MM-dd' });
  103 + });
  104 + });
  105 +</script>
  106 +</body>
  107 +</html>
... ...
src/main/resources/templates/general/bomHeader/bomHeader.html 0 → 100644
  1 +<!DOCTYPE HTML>
  2 +<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
  3 +<meta charset="utf-8">
  4 +<head th:include="include :: header"></head>
  5 +<body class="gray-bg">
  6 +
  7 +<div class="container-div">
  8 + <div class="row">
  9 + <div class="col-sm-12 select-info">
  10 + <ul id="myTab" class="nav nav-tabs">
  11 + <li class="active"><a href="#tabHeader" data-toggle="tab">主表</a></li>
  12 + <li><a href="#tabDetail" data-toggle="tab">明细</a></li>
  13 + </ul>
  14 + <div id="myTabContent" class="tab-content">
  15 + <div class="tab-pane fade in active" id="tabHeader">
  16 + <div class="col-sm-12 select-info">
  17 + <form id="alarmFlow-form">
  18 + <div class="select-list">
  19 + <ul>
  20 + <li>
  21 + 物料名称:<input type="text" name="materialName"/>
  22 + </li>
  23 + <li>
  24 + 物料编码:<input type="text" name="materialCode"/>
  25 + </li>
  26 + <li class="time">
  27 + <label>创建时间: </label>
  28 + <input type="text" class="time-input" id="startTime" placeholder="开始时间"
  29 + name="params[createdBegin]"/>
  30 + <span>-</span>
  31 + <input type="text" class="time-input" id="endTime" placeholder="结束时间"
  32 + name="params[createdEnd]"/>
  33 + </li>
  34 + <li>
  35 + <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i
  36 + class="fa fa-search"></i>&nbsp;搜索</a>
  37 + <!--<a class="btn btn-success btn-rounded btn-sm" onclick="$.table.exportExcel()" shiro:hasPermission="system:role:export"><i class="fa fa-download"></i>&nbsp;导出</a>-->
  38 + </li>
  39 + </ul>
  40 + </div>
  41 + </form>
  42 + </div>
  43 +
  44 +
  45 + <div class="btn-group hidden-xs" id="toolbar" role="group">
  46 + <a class="btn btn-outline btn-success btn-rounded" onclick="$.operate.add()"
  47 + shiro:hasPermission="general:bomHeader:add">
  48 + <i class="fa fa-plus"></i> 新增
  49 + </a>
  50 + <a class="btn btn-outline btn-danger btn-rounded" onclick="$.operate.batRemove()"
  51 + shiro:hasPermission="general:bomHeader:remove">
  52 + <i class="fa fa-trash-o"></i> 删除
  53 + </a>
  54 + </div>
  55 +
  56 + <table id="bootstrap-table" data-mobile-responsive="true" class="table table-bordered table-hover"></table>
  57 + </div>
  58 +
  59 + <div class="tab-pane fade" id="tabDetail">
  60 + <table id="bootstrap-table1" data-mobile-responsive="true"
  61 + class="table table-bordered table-hover"></table>
  62 + </div>
  63 + </div>
  64 + </div>
  65 + </div>
  66 +</div>
  67 +<div th:include="include :: footer"></div>
  68 +<script th:inline="javascript">
  69 + var prefix = ctx + "general/bomHeader";
  70 + var prefix1 = ctx + "general/bomDetail";
  71 + var editFlag = [[${@permission.hasPermi('general:bomHeader:edit')}]];
  72 + var removeFlag = [[${@permission.hasPermi('general:bomHeader:remove')}]];
  73 + $(function() {
  74 + var options = {
  75 + url: prefix + "/list",
  76 + createUrl: prefix + "/add",
  77 + updateUrl: prefix + "/edit/{id}",
  78 + removeUrl: prefix + "/remove",
  79 + modalName: "商品",
  80 + search: false,
  81 + sortName: "id",
  82 + sortOrder: "desc",
  83 + columns: [{
  84 + checkbox: true
  85 + },
  86 + {
  87 + field : 'id',
  88 + title : 'id'
  89 + },
  90 + {
  91 + field : 'materialCode',
  92 + title : '物料编码'
  93 + },
  94 + {
  95 + field : 'materialName',
  96 + title : '物料名称'
  97 + },
  98 + {
  99 + field : 'warehouseCode',
  100 + title : '仓库代码'
  101 + },
  102 + {
  103 + field : 'companyCode',
  104 + title : '货主编码'
  105 + },
  106 + {
  107 + field : 'materialSpec',
  108 + title : '物料规格'
  109 + },
  110 + {
  111 + field : 'materialUnit',
  112 + title : ' 物料单位'
  113 + },
  114 + {
  115 + field : 'qty',
  116 + title : '数量'
  117 + },
  118 + {
  119 + field : 'revisionNum',
  120 + title : '修正号码'
  121 + },
  122 + {
  123 + field : 'buildInstructions',
  124 + title : '加工说明'
  125 + },
  126 + {
  127 + field : 'buildLoc',
  128 + title : '加工货位'
  129 + },
  130 + {
  131 + field : 'validFromDate',
  132 + title : '有效起止日期'
  133 + },
  134 + {
  135 + field : 'validEndDate',
  136 + title : '有效结束日期'
  137 + },
  138 + {
  139 + field : 'priority',
  140 + title : '优先级'
  141 + },
  142 + {
  143 + field : 'version',
  144 + title : '数据版本',
  145 + visible : false
  146 + },
  147 + {
  148 + field : 'isVirtualBom',
  149 + title : '是否为虚拟商品',
  150 + visible : false
  151 + },
  152 + {
  153 + field : 'created',
  154 + title : '创建时间',
  155 + visible : false
  156 + },
  157 + {
  158 + field : 'createdBy',
  159 + title : '创建用户',
  160 + visible : false
  161 + },
  162 + {
  163 + field : 'lastUpdated',
  164 + title : '更新时间',
  165 + visible : false
  166 + },
  167 + {
  168 + field : 'lastUpdatedBy',
  169 + title : '更新用户',
  170 + visible : false
  171 + },
  172 + {
  173 + field : 'userDef1',
  174 + title : '自定义字段1' ,
  175 + visible:false
  176 + },
  177 + {
  178 + field : 'userDef2',
  179 + title : '自定义字段2' ,
  180 + visible:false
  181 + },
  182 + {
  183 + field : 'userDef3',
  184 + title : '自定义字段3' ,
  185 + visible:false
  186 + },
  187 + {
  188 + title: '操作',
  189 + align: 'center',
  190 + formatter: function(value, row, index) {
  191 + var actions = [];
  192 + actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="#" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
  193 + actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-trash-o"></i>删除</a>');
  194 + return actions.join('');
  195 + }
  196 + }]
  197 + };
  198 + $.table.init(options);
  199 + });
  200 +
  201 + function detail(id, code) {
  202 + // console.log(id);
  203 + // dictid=id;
  204 + var url = prefix1+"/list/" + id;
  205 + createtable(url);
  206 + }
  207 +
  208 + function createtable(url) {
  209 + $("#tabDetail").children().remove();
  210 + $("#myTab li").removeClass("active");
  211 + var height = $(document).height()-100 + 'px';
  212 + var str = '<iframe class="huaheng_iframe" name="iframe" width="100%" height="' + height + '" src="' + url + '" frameborder="0" data-id="' + url + '" seamless></iframe>';
  213 + $("#tabDetail").append(str);
  214 + $(".tab-pane").removeClass("in active");
  215 + $("#myTab li:eq(1)").addClass("active");
  216 + $("#tabDetail").addClass("in active");
  217 + }
  218 +</script>
  219 +</body>
  220 +</html>
0 221 \ No newline at end of file
... ...
src/main/resources/templates/general/bomHeader/edit.html 0 → 100644
  1 +<!DOCTYPE HTML>
  2 +<html lang="zh" xmlns:th="http://www.thymeleaf.org">
  3 +<meta charset="utf-8">
  4 +<head th:include="include :: header"></head>
  5 +<body class="white-bg">
  6 +<div class="wrapper wrapper-content animated fadeInRight ibox-content">
  7 + <form class="form-horizontal m" id="form-bomHeader-edit" th:object="${bomHeader}">
  8 + <div class="form-group">
  9 + <label class="col-sm-3 control-label"> 物料编码:</label>
  10 + <div class="col-sm-8">
  11 + <input id="materialCode" name="materialCode" class="form-control" type="text" th:field="*{materialCode}">
  12 + </div>
  13 + </div>
  14 + <div class="form-group">
  15 + <label class="col-sm-3 control-label">数量:</label>
  16 + <div class="col-sm-8">
  17 + <input id="qty" name="qty" class="form-control" type="text" th:field="*{qty}">
  18 + </div>
  19 + </div>
  20 + <div class="form-group">
  21 + <label class="col-sm-3 control-label">修正号码:</label>
  22 + <div class="col-sm-8">
  23 + <input id="revisionNum" name="revisionNum" class="form-control" type="text" th:field="*{revisionNum}">
  24 + </div>
  25 + </div>
  26 + <div class="form-group">
  27 + <label class="col-sm-3 control-label">加工说明:</label>
  28 + <div class="col-sm-8">
  29 + <input id="buildInstructions" name="buildInstructions" class="form-control" type="text" th:field="*{buildInstructions}">
  30 + </div>
  31 + </div>
  32 + <div class="form-group">
  33 + <label class="col-sm-3 control-label">加工货位:</label>
  34 + <div class="col-sm-8">
  35 + <input id="buildLoc" name="buildLoc" class="form-control" type="text" th:field="*{buildLoc}">
  36 + </div>
  37 + </div>
  38 + <div class="form-group">
  39 + <label class="col-sm-3 control-label">有效起始日期:</label>
  40 + <div class="col-sm-8">
  41 + <input id="validFromDate" name="validFromDate" class="time-input" type="text" th:field="*{validFromDate}">
  42 + </div>
  43 + </div>
  44 + <div class="form-group">
  45 + <label class="col-sm-3 control-label">有效结束日期:</label>
  46 + <div class="col-sm-8">
  47 + <input id="validEndDate" name="validEndDate" class="time-input" type="text" th:field="*{validEndDate}">
  48 + </div>
  49 + </div>
  50 + <div class="form-group">
  51 + <label class="col-sm-3 control-label">优先级:</label>
  52 + <div class="col-sm-8">
  53 + <input id="priority" name="priority" class="form-control" type="text" th:field="*{priority}">
  54 + </div>
  55 + </div>
  56 + <div class="form-group">
  57 + <label class="col-sm-3 control-label">是否有效:</label>
  58 + <div class="col-sm-8">
  59 + <select id="enable" name="enable" class="form-control" th:field="*{enable}">
  60 + <option value="0">有效</option>
  61 + <option value="1">无效</option>
  62 + </select>
  63 + </div>
  64 + </div>
  65 + <div class="form-group">
  66 + <label class="col-sm-3 control-label">是否虚拟商品:</label>
  67 + <div class="col-sm-8">
  68 + <select id="isVirtualBom" name="isVirtualBom" class="form-control" th:field="*{isVirtualBom}" >
  69 + <option value="0">不是</option>
  70 + <option value="1">是</option>
  71 + </select>
  72 + </div>
  73 + </div>
  74 + <!--<div class="form-group"> -->
  75 + <!--<label class="col-sm-3 control-label">自定义字段1:</label>-->
  76 + <!--<div class="col-sm-8">-->
  77 + <!--<input id="userDef1" name="userDef1" class="form-control" type="text">-->
  78 + <!--</div>-->
  79 + <!--</div>-->
  80 + <!--<div class="form-group"> -->
  81 + <!--<label class="col-sm-3 control-label">自定义字段2:</label>-->
  82 + <!--<div class="col-sm-8">-->
  83 + <!--<input id="userDef2" name="userDef2" class="form-control" type="text">-->
  84 + <!--</div>-->
  85 + <!--</div>-->
  86 + <!--<div class="form-group"> -->
  87 + <!--<label class="col-sm-3 control-label">自定义字段3:</label>-->
  88 + <!--<div class="col-sm-8">-->
  89 + <!--<input id="userDef3" name="userDef3" class="form-control" type="text">-->
  90 + <!--</div>-->
  91 + <!--</div>-->
  92 + <div class="form-group">
  93 + <div class="form-control-static col-sm-offset-9">
  94 + <button type="submit" class="btn btn-primary">提交</button>
  95 + <button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button>
  96 + </div>
  97 + </div>
  98 + </form>
  99 +</div>
  100 +<div th:include="include::footer"></div>
  101 +<script type="text/javascript">
  102 + var prefix = ctx + "general/bomHeader";
  103 + $("#form-bomHeader-add").validate({
  104 + rules:{
  105 + materialCode:{
  106 + required:true
  107 + },
  108 + },
  109 + submitHandler: function(form) {
  110 + var tableValue = $("#form-bomHeader-add").serialize();
  111 + tableValue = formValueReplace(tableValue, "enable", $("#enable option:selected").val());
  112 + tableValue = formValueReplace(tableValue, "isVirtualBom", $("#isVirtualBom option:selected").val());
  113 + $.operate.save(prefix + "/add", tableValue);
  114 + }
  115 + });
  116 +
  117 + $(function () {
  118 + layui.use('laydate', function() {
  119 + var laydate = layui.laydate;
  120 + laydate.render({ elem: '#validFromDate', theme: 'molv', format: 'yyyy-MM-dd' });
  121 + laydate.render({ elem: '#validEndDate', theme: 'molv', format: 'yyyy-MM-dd' });
  122 + });
  123 + });
  124 +</script>
  125 +</body>
  126 +</html>
... ...
src/main/resources/templates/general/company/add.html
... ... @@ -91,6 +91,8 @@
91 91 <input id="email" name="email" class="form-control" type="text">
92 92 </div>
93 93 </div>
  94 +
  95 + <input id="filePath" name="filePath" class="form-control" type="file">
94 96 <!--<div class="form-group"> -->
95 97 <!--<label class="col-sm-3 control-label">自定义字段1:</label>-->
96 98 <!--<div class="col-sm-8">-->
... ...
src/main/resources/templates/general/material/add.html
... ... @@ -6,17 +6,37 @@
6 6 <div class="wrapper wrapper-content animated fadeInRight ibox-content">
7 7 <form class="form-horizontal m" id="form-material-add">
8 8 <div class="form-group">
9   - <label class="col-sm-3 control-label">存货编码:</label>
  9 + <label class="col-sm-3 control-label">编码:</label>
10 10 <div class="col-sm-8">
11 11 <input id="code" name="code" class="form-control" type="text">
12 12 </div>
13 13 </div>
14 14 <div class="form-group">
  15 + <label class="col-sm-3 control-label">货主编码:</label>
  16 + <div class="col-sm-8">
  17 + <select id="companyCode" name="companyCode" class="form-control" th:with="companyList=${@companyService.selectCompanyByCurrentUserId()}">
  18 + <option th:each="company : ${companyList}" th:text="${company['name']}" th:value="${company['code']}"></option>
  19 + </select>
  20 + </div>
  21 + </div>
  22 + <div class="form-group">
15 23 <label class="col-sm-3 control-label">名称:</label>
16 24 <div class="col-sm-8">
17 25 <input id="name" name="name" class="form-control" type="text">
18 26 </div>
19 27 </div>
  28 + <div class="form-group">
  29 + <label class="col-sm-3 control-label">规格:</label>
  30 + <div class="col-sm-8">
  31 + <input id="spec" name="spec" class="form-control" type="text">
  32 + </div>
  33 + </div>
  34 + <div class="form-group">
  35 + <label class="col-sm-3 control-label">单位:</label>
  36 + <div class="col-sm-8">
  37 + <input id="unit" name="unit" class="form-control" type="text">
  38 + </div>
  39 + </div>
20 40 <div class="form-group">
21 41 <label class="col-sm-3 control-label">物料类别:</label>
22 42 <div class="col-sm-8">
... ... @@ -26,140 +46,101 @@
26 46 </div>
27 47 </div>
28 48 <div class="form-group">
29   - <label class="col-sm-3 control-label">库区编码:</label>
  49 + <label class="col-sm-3 control-label">ABC分类:</label>
30 50 <div class="col-sm-8">
31   - <input id="zoneCode" name="zoneCode" class="form-control" type="text" placeholder="指定该货物只能放在规定库区时填写,否则不填!"/>
  51 + <input id="abcClass" name="abcClass" class="form-control" type="text">
32 52 </div>
33 53 </div>
34 54 <div class="form-group">
35   - <label class="col-sm-3 control-label">货主:</label>
  55 + <label class="col-sm-3 control-label">保质期(天)</label>
36 56 <div class="col-sm-8">
37   - <select id="company" name="company" class="form-control" th:with="list=${@company.selectCompanyByCurrentUserId()}">
38   - <option value ="" code="">全部货主</option>
39   - <option th:each="item : ${list}" th:text="${item['name']}" th:value="${item['id']}" th:attr = " code = ${item['code']}"></option>
40   - </select>
  57 + <input id="daysToExpire" name="daysToExpire" class="form-control" type="text"/>
41 58 </div>
42 59 </div>
43 60 <div class="form-group">
44   - <label class="col-sm-3 control-label">条码:</label>
  61 + <label class="col-sm-3 control-label">定位规则:</label>
45 62 <div class="col-sm-8">
46   - <input id="barcode" name="barcode" class="form-control" type="text">
  63 + <input id="locatingRule" name="locatingRule" class="form-control" type="text">
47 64 </div>
48 65 </div>
49   - <!--<div class="form-group"> -->
50   - <!--<label class="col-sm-3 control-label">条码2:</label>-->
51   - <!--<div class="col-sm-8">-->
52   - <!--<input id="barcode2" name="barcode2" class="form-control" type="text">-->
53   - <!--</div>-->
54   - <!--</div>-->
55   - <!--<div class="form-group"> -->
56   - <!--<label class="col-sm-3 control-label">条码3:</label>-->
57   - <!--<div class="col-sm-8">-->
58   - <!--<input id="barcode3" name="barcode3" class="form-control" type="text">-->
59   - <!--</div>-->
60   - <!--</div>-->
61   - <!--<div class="form-group"> -->
62   - <!--<label class="col-sm-3 control-label">条码4:</label>-->
63   - <!--<div class="col-sm-8">-->
64   - <!--<input id="barcode4" name="barcode4" class="form-control" type="text">-->
65   - <!--</div>-->
66   - <!--</div>-->
67   - <!--<div class="form-group"> -->
68   - <!--<label class="col-sm-3 control-label">类别A:</label>-->
69   - <!--<div class="col-sm-8">-->
70   - <!--<input id="classA" name="classA" class="form-control" type="text">-->
71   - <!--</div>-->
72   - <!--</div>-->
73   - <!--<div class="form-group"> -->
74   - <!--<label class="col-sm-3 control-label">类别B:</label>-->
75   - <!--<div class="col-sm-8">-->
76   - <!--<input id="classB" name="classB" class="form-control" type="text">-->
77   - <!--</div>-->
78   - <!--</div>-->
79   - <!--<div class="form-group"> -->
80   - <!--<label class="col-sm-3 control-label">类别C:</label>-->
81   - <!--<div class="col-sm-8">-->
82   - <!--<input id="classC" name="classC" class="form-control" type="text">-->
83   - <!--</div>-->
84   - <!--</div>-->
85 66 <div class="form-group">
86   - <label class="col-sm-3 control-label">规格:</label>
  67 + <label class="col-sm-3 control-label">分配规则:</label>
87 68 <div class="col-sm-8">
88   - <input id="specification" name="specification" class="form-control" type="text">
  69 + <input id="allocationRule" name="allocationRule" class="form-control" type="text">
89 70 </div>
90 71 </div>
91 72 <div class="form-group">
92   - <label class="col-sm-3 control-label">品牌:</label>
  73 + <label class="col-sm-3 control-label">补货规则:</label>
93 74 <div class="col-sm-8">
94   - <input id="brand" name="brand" class="form-control" type="text">
  75 + <input id="replenishmentRule" name="replenishmentRule" class="form-control" type="text">
  76 + </div>
  77 + </div>
  78 + <div class="form-group">
  79 + <label class="col-sm-3 control-label">空货位规则:</label>
  80 + <div class="col-sm-8">
  81 + <input id="emptyLocRule" name="emptyLocRule" class="form-control" type="text">
95 82 </div>
96 83 </div>
97   - <!--<div class="form-group"> -->
98   - <!--<label class="col-sm-3 control-label">尺码:</label>-->
99   - <!--<div class="col-sm-8">-->
100   - <!--<input id="size" name="size" class="form-control" type="text">-->
101   - <!--</div>-->
102   - <!--</div>-->
103   - <!--<div class="form-group"> -->
104   - <!--<label class="col-sm-3 control-label">颜色:</label>-->
105   - <!--<div class="col-sm-8">-->
106   - <!--<input id="color" name="color" class="form-control" type="text">-->
107   - <!--</div>-->
108   - <!--</div>-->
109   - <!--<div class="form-group"> -->
110   - <!--<label class="col-sm-3 control-label">产地:</label>-->
111   - <!--<div class="col-sm-8">-->
112   - <!--<input id="placeOfOrigin" name="placeOfOrigin" class="form-control" type="text">-->
113   - <!--</div>-->
114   - <!--</div>-->
115 84 <div class="form-group">
116   - <label class="col-sm-3 control-label">保质期(天):</label>
  85 + <label class="col-sm-3 control-label">入库规则</label>
117 86 <div class="col-sm-8">
118   - <input id="daysToExpire" name="daysToExpire" class="form-control" type="text">
  87 + <input id="receivingFlow" name="receivingFlow" class="form-control" type="text">
119 88 </div>
120 89 </div>
121 90 <div class="form-group">
122   - <label class="col-sm-3 control-label">临期预警天数:</label>
  91 + <label class="col-sm-3 control-label">出库流程:</label>
123 92 <div class="col-sm-8">
124   - <input id="expiringDays" name="expiringDays" class="form-control" type="text">
  93 + <input id="shippingFlow" name="shippingFlow" class="form-control" type="text">
125 94 </div>
126 95 </div>
127 96 <div class="form-group">
128   - <label class="col-sm-3 control-label">收货预警天数:</label>
  97 + <label class="col-sm-3 control-label">属性模板:</label>
129 98 <div class="col-sm-8">
130   - <input id="minShelfLifeDays" name="minShelfLifeDays" class="form-control" type="text">
  99 + <input id="attributeTemplateCode" name="attributeTemplateCode" class="form-control" type="text">
131 100 </div>
132 101 </div>
133 102 <div class="form-group">
134   - <label class="col-sm-3 control-label">成本:</label>
  103 + <label class="col-sm-3 control-label">记录序列号:</label>
135 104 <div class="col-sm-8">
136   - <input id="costPrice" name="costPrice" class="form-control" type="text">
  105 + <input id="trackSerialNum" name="trackSerialNum" class="form-control" type="text">
137 106 </div>
138 107 </div>
139 108 <div class="form-group">
140   - <label class="col-sm-3 control-label">标价:</label>
  109 + <label class="col-sm-3 control-label">自动生成序列号:</label>
141 110 <div class="col-sm-8">
142   - <input id="listPrice" name="listPrice" class="form-control" type="text">
  111 + <input id="autoGenSerialNum" name="autoGenSerialNum" class="form-control" type="text">
143 112 </div>
144 113 </div>
145 114 <div class="form-group">
146   - <label class="col-sm-3 control-label">净价:</label>
  115 + <label class="col-sm-3 control-label">自动生成序列号表达式:</label>
147 116 <div class="col-sm-8">
148   - <input id="netPrice" name="netPrice" class="form-control" type="text">
  117 + <input id="autoGenSerialNumFormat" name="autoGenSerialNumFormat" class="form-control" type="text">
149 118 </div>
150 119 </div>
151   - <!--<div class="form-group"> -->
152   - <!--<label class="col-sm-3 control-label">出入库是否按照 生产日期 来匹配:</label>-->
153   - <!--<div class="col-sm-8">-->
154   - <!--<input id="manufactureDate" name="manufactureDate" class="form-control" type="text">-->
155   - <!--</div>-->
156   - <!--</div>-->
157   - <!--<div class="form-group"> -->
158   - <!--<label class="col-sm-3 control-label">出入库是否按照 入库时间 来匹配:</label>-->
159   - <!--<div class="col-sm-8">-->
160   - <!--<input id="receiptDate" name="receiptDate" class="form-control" type="text">-->
161   - <!--</div>-->
162   - <!--</div>-->
  120 + <div class="form-group">
  121 + <label class="col-sm-3 control-label">序列号模板:</label>
  122 + <div class="col-sm-8">
  123 + <input id="snTemplateCode" name="snTemplateCode" class="form-control" type="text">
  124 + </div>
  125 + </div>
  126 + <div class="form-group">
  127 + <label class="col-sm-3 control-label">临期预警天数:</label>
  128 + <div class="col-sm-8">
  129 + <input id="expiringDays" name="expiringDays" class="form-control" type="text">
  130 + </div>
  131 + </div>
  132 + <div class="form-group">
  133 + <label class="col-sm-3 control-label">收货预警天数:</label>
  134 + <div class="col-sm-8">
  135 + <input id="minShelfLifeDays" name="minShelfLifeDays" class="form-control" type="text">
  136 + </div>
  137 + </div>
  138 + <!--<div class="form-group">
  139 + <label class="col-sm-3 control-label">数据版本:</label>
  140 + <div class="col-sm-8">
  141 + <input id="version" name="version" class="form-control" type="text">
  142 + </div>
  143 + </div>-->
163 144 <!--<div class="form-group"> -->
164 145 <!--<label class="col-sm-3 control-label">创建时间:</label>-->
165 146 <!--<div class="col-sm-8">-->
... ... @@ -184,8 +165,9 @@
184 165 <!--<input id="lastUpdatedBy" name="lastUpdatedBy" class="form-control" type="text">-->
185 166 <!--</div>-->
186 167 <!--</div>-->
  168 +
187 169 <div class="form-group">
188   - <label class="col-sm-3 control-label">是否有效:</label>
  170 + <label class="col-sm-3 control-label">状态:</label>
189 171 <div class="col-sm-8">
190 172 <div class="onoffswitch">
191 173 <input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="enable" name="enable">
... ... @@ -268,22 +250,15 @@
268 250 },
269 251 name:{
270 252 required:true,
271   - },
272   - /*zoneCode:{
273   - required:true,
274   - },*/
275   - barcode:{
276   - required:true,
277   - },
  253 + }
278 254 },
279 255 submitHandler: function(form) {
280 256 // $.operate.save(prefix + "/add", $('#form-material-add').serialize());
281 257 // var tableValue = $.common.getTableValue("#form-material-add");
282 258 // $.operate.save(prefix + "/add", tableValue);
283 259 var tableValue = $("#form-material-add").serialize();
  260 + tableValue = formValueReplace(tableValue, "companyCode", $("#companyCode option:selected").val())
284 261 tableValue = formValueReplace(tableValue, "enable", $("input[name='enable']").is(':checked'));
285   - tableValue = formValueReplace(tableValue, "companyId", $("#company option:selected").val());
286   - tableValue = formValueReplace(tableValue, "companyCode", $("#company option:selected").attr("code"));
287 262 $.operate.save(prefix + "/add", tableValue);
288 263 }
289 264 });
... ...
src/main/resources/templates/general/material/edit.html
... ... @@ -3,282 +3,260 @@
3 3 <meta charset="utf-8">
4 4 <head th:include="include :: header"></head>
5 5 <body class="white-bg">
6   - <div class="wrapper wrapper-content animated fadeInRight ibox-content">
7   - <form class="form-horizontal m" id="form-material-edit" th:object="${material}">
8   - <input id="id" name="id" th:field="*{id}" type="hidden">
9   - <div class="form-group">
10   - <label class="col-sm-3 control-label">存货编码:</label>
11   - <div class="col-sm-8">
12   - <input id="code" name="code" th:field="*{code}" class="form-control" type="text" readonly="readonly">
13   - </div>
  6 +<div class="wrapper wrapper-content animated fadeInRight ibox-content">
  7 + <form class="form-horizontal m" id="form-material-add" th:object="${material}">
  8 + <div class="form-group">
  9 + <label class="col-sm-3 control-label">编码:</label>
  10 + <div class="col-sm-8">
  11 + <input id="code" name="code" class="form-control" type="text" th:field="*{code}">
14 12 </div>
15   - <div class="form-group">
16   - <label class="col-sm-3 control-label">物料类别:</label>
17   - <div class="col-sm-8">
18   - <select id="type" name="type" class="form-control" th:with="locationType=${@dict.getType('materialType')}">
19   - <option th:each="item : ${locationType}" th:text="${item['dictLabel']}" th:value="${item['dictValue']}" th:field="*{type}"></option>
20   - </select>
21   - </div>
  13 + </div>
  14 + <div class="form-group">
  15 + <label class="col-sm-3 control-label">名称:</label>
  16 + <div class="col-sm-8">
  17 + <input id="name" name="name" class="form-control" type="text" th:field="*{name}">
22 18 </div>
23   - <div class="form-group">
24   - <label class="col-sm-3 control-label">货主:</label>
25   - <div class="col-sm-8">
26   - <select id="company" name="company" class="form-control" th:with="list=${@company.selectCompanyByCurrentUserId()}" th:field="*{companyId}" disabled="disabled">
27   - <option value ="" code="">全部货主</option>
28   - <option th:each="item : ${list}" th:text="${item['name']}" th:value="${item['id']}" th:attr = " code = ${item['code']}"></option>
29   - </select>
30   - </div>
  19 + </div>
  20 + <div class="form-group">
  21 + <label class="col-sm-3 control-label">规格:</label>
  22 + <div class="col-sm-8">
  23 + <input id="spec" name="spec" class="form-control" type="text" th:field="*{spec}">
31 24 </div>
32   - <div class="form-group">
33   - <label class="col-sm-3 control-label">名称:</label>
34   - <div class="col-sm-8">
35   - <input id="name" name="name" th:field="*{name}" class="form-control" type="text">
36   - </div>
  25 + </div>
  26 + <div class="form-group">
  27 + <label class="col-sm-3 control-label">单位:</label>
  28 + <div class="col-sm-8">
  29 + <select id="unit" name="unit" class="form-control" th:with="materialType=${@dict.getType('materialType')}">
  30 + <option th:each="item : ${materialType}" th:text="${item['dictLabel']}" th:value="${item['dictValue']}"
  31 + th:field="*{unit}" ></option>
  32 + </select>
37 33 </div>
38   - <div class="form-group">
39   - <label class="col-sm-3 control-label">条码:</label>
40   - <div class="col-sm-8">
41   - <input id="barcode" name="barcode" th:field="*{barcode}" class="form-control" type="text">
42   - </div>
  34 + </div>
  35 + <div class="form-group">
  36 + <label class="col-sm-3 control-label">物料类别:</label>
  37 + <div class="col-sm-8">
  38 + <select id="type" name="type" class="form-control" th:with="materialType=${@dict.getType('materialType')}">
  39 + <option th:each="item : ${materialType}" th:text="${item['dictLabel']}" th:value="${item['dictValue']}"
  40 + th:field="*{type}"></option>
  41 + </select>
43 42 </div>
44   - <!--<div class="form-group"> -->
45   - <!--<label class="col-sm-3 control-label">条码2:</label>-->
46   - <!--<div class="col-sm-8">-->
47   - <!--<input id="barcode2" name="barcode2" th:field="*{barcode2}" class="form-control" type="text">-->
48   - <!--</div>-->
49   - <!--</div>-->
50   - <!--<div class="form-group"> -->
51   - <!--<label class="col-sm-3 control-label">条码3:</label>-->
52   - <!--<div class="col-sm-8">-->
53   - <!--<input id="barcode3" name="barcode3" th:field="*{barcode3}" class="form-control" type="text">-->
54   - <!--</div>-->
55   - <!--</div>-->
56   - <!--<div class="form-group"> -->
57   - <!--<label class="col-sm-3 control-label">条码4:</label>-->
58   - <!--<div class="col-sm-8">-->
59   - <!--<input id="barcode4" name="barcode4" th:field="*{barcode4}" class="form-control" type="text">-->
60   - <!--</div>-->
61   - <!--</div>-->
62   - <!--<div class="form-group"> -->
63   - <!--<label class="col-sm-3 control-label">类别A:</label>-->
64   - <!--<div class="col-sm-8">-->
65   - <!--<input id="classA" name="classA" th:field="*{classA}" class="form-control" type="text">-->
66   - <!--</div>-->
67   - <!--</div>-->
68   - <!--<div class="form-group"> -->
69   - <!--<label class="col-sm-3 control-label">类别B:</label>-->
70   - <!--<div class="col-sm-8">-->
71   - <!--<input id="classB" name="classB" th:field="*{classB}" class="form-control" type="text">-->
72   - <!--</div>-->
73   - <!--</div>-->
74   - <!--<div class="form-group"> -->
75   - <!--<label class="col-sm-3 control-label">类别C:</label>-->
76   - <!--<div class="col-sm-8">-->
77   - <!--<input id="classC" name="classC" th:field="*{classC}" class="form-control" type="text">-->
78   - <!--</div>-->
79   - <!--</div>-->
80   - <div class="form-group">
81   - <label class="col-sm-3 control-label">规格:</label>
82   - <div class="col-sm-8">
83   - <input id="specification" name="specification" th:field="*{specification}" class="form-control" type="text">
84   - </div>
  43 + </div>
  44 + <div class="form-group">
  45 + <label class="col-sm-3 control-label">ABC分类:</label>
  46 + <div class="col-sdm-8">
  47 + <input id="abcClass" name="abcClass" class="form-control" type="text" th:field="*{abcClass}"/>
85 48 </div>
86   - <div class="form-group">
87   - <label class="col-sm-3 control-label">品牌:</label>
88   - <div class="col-sm-8">
89   - <input id="brand" name="brand" th:field="*{brand}" class="form-control" type="text">
90   - </div>
  49 + </div>
  50 + <div class="form-group">
  51 + <label class="col-sm-3 control-label">保质期(天)</label>
  52 + <div class="col-sm-8">
  53 + <input id="daysToExpire" name="daysToExpire" class="form-control" type="text" th:field="*{daysToExpire}"/>
91 54 </div>
92   - <!--<div class="form-group"> -->
93   - <!--<label class="col-sm-3 control-label">尺码:</label>-->
94   - <!--<div class="col-sm-8">-->
95   - <!--<input id="size" name="size" th:field="*{size}" class="form-control" type="text">-->
96   - <!--</div>-->
97   - <!--</div>-->
98   - <!--<div class="form-group"> -->
99   - <!--<label class="col-sm-3 control-label">颜色:</label>-->
100   - <!--<div class="col-sm-8">-->
101   - <!--<input id="color" name="color" th:field="*{color}" class="form-control" type="text">-->
102   - <!--</div>-->
103   - <!--</div>-->
104   - <!--<div class="form-group"> -->
105   - <!--<label class="col-sm-3 control-label">产地:</label>-->
106   - <!--<div class="col-sm-8">-->
107   - <!--<input id="placeOfOrigin" name="placeOfOrigin" th:field="*{placeOfOrigin}" class="form-control" type="text">-->
108   - <!--</div>-->
109   - <!--</div>-->
110   - <div class="form-group">
111   - <label class="col-sm-3 control-label">保质期(天):</label>
112   - <div class="col-sm-8">
113   - <input id="daysToExpire" name="daysToExpire" th:field="*{daysToExpire}" class="form-control" type="text">
114   - </div>
  55 + </div>
  56 + <div class="form-group">
  57 + <label class="col-sm-3 control-label">定位规则:</label>
  58 + <div class="col-sm-8">
  59 + <input id="locatingRule" name="locatingRule" class="form-control" type="text" th:field="*{locatingRule}">
115 60 </div>
116   - <div class="form-group">
117   - <label class="col-sm-3 control-label">临期预警天数:</label>
118   - <div class="col-sm-8">
119   - <input id="expiringDays" name="expiringDays" th:field="*{expiringDays}" class="form-control" type="text">
120   - </div>
  61 + </div>
  62 + <div class="form-group">
  63 + <label class="col-sm-3 control-label">分配规则:</label>
  64 + <div class="col-sm-8">
  65 + <input id="allocationRule" name="allocationRule" class="form-control" type="text" th:field="*{allocationRule}">
121 66 </div>
122   - <div class="form-group">
123   - <label class="col-sm-3 control-label">收货预警天数:</label>
124   - <div class="col-sm-8">
125   - <input id="minShelfLifeDays" name="minShelfLifeDays" th:field="*{minShelfLifeDays}" class="form-control" type="text">
126   - </div>
  67 + </div>
  68 + <div class="form-group">
  69 + <label class="col-sm-3 control-label">补货规则:</label>
  70 + <div class="col-sm-8">
  71 + <input id="replenishmentRule" name="replenishmentRule" class="form-control" type="text" th:field="*{replenishmentRule}">
127 72 </div>
128   - <div class="form-group">
129   - <label class="col-sm-3 control-label">成本:</label>
130   - <div class="col-sm-8">
131   - <input id="costPrice" name="costPrice" th:field="*{costPrice}" class="form-control" type="text">
132   - </div>
  73 + </div>
  74 + <div class="form-group">
  75 + <label class="col-sm-3 control-label">空货位规则:</label>
  76 + <div class="col-sm-8">
  77 + <input id="emptyLocRule" name="emptyLocRule" class="form-control" type="text" th:field="*{emptyLocRule}">
133 78 </div>
134   - <div class="form-group">
135   - <label class="col-sm-3 control-label">标价:</label>
136   - <div class="col-sm-8">
137   - <input id="listPrice" name="listPrice" th:field="*{listPrice}" class="form-control" type="text">
138   - </div>
  79 + </div>
  80 + <div class="form-group">
  81 + <label class="col-sm-3 control-label">入库规则</label>
  82 + <div class="col-sm-8">
  83 + <input id="receivingFlow" name="receivingFlow" class="form-control" type="text" th:field="*{receivingFlow}">
139 84 </div>
140   - <div class="form-group">
141   - <label class="col-sm-3 control-label">净价:</label>
142   - <div class="col-sm-8">
143   - <input id="netPrice" name="netPrice" th:field="*{netPrice}" class="form-control" type="text">
144   - </div>
  85 + </div>
  86 + <div class="form-group">
  87 + <label class="col-sm-3 control-label">出库流程:</label>
  88 + <div class="col-sm-8">
  89 + <input id="shippingFlow" name="shippingFlow" class="form-control" type="text" th:field="*{shippingFlow}">
  90 + </div>
  91 + </div>
  92 + <div class="form-group">
  93 + <label class="col-sm-3 control-label">属性模板:</label>
  94 + <div class="col-sm-8">
  95 + <input id="attributeTemplateCode" name="attributeTemplateCode" class="form-control" type="text" th:field="*{attributeTemplateCode}">
  96 + </div>
  97 + </div>
  98 + <div class="form-group">
  99 + <label class="col-sm-3 control-label">记录序列号:</label>
  100 + <div class="col-sm-8">
  101 + <input id="trackSerialNum" name="trackSerialNum" class="form-control" type="text" th:field="*{trackSerialNum}">
  102 + </div>
  103 + </div>
  104 + <div class="form-group">
  105 + <label class="col-sm-3 control-label">自动生成序列号:</label>
  106 + <div class="col-sm-8">
  107 + <input id="autoGenSerialNum" name="autoGenSerialNum" class="form-control" type="text" th:field="*{autoGenSerialNum}">
  108 + </div>
  109 + </div>
  110 + <div class="form-group">
  111 + <label class="col-sm-3 control-label">自动生成序列号表达式:</label>
  112 + <div class="col-sm-8">
  113 + <input id="autoGenSerialNumFormat" name="autoGenSerialNumFormat" class="form-control" type="text" th:field="*{autoGenSerialNumFormat}">
145 114 </div>
146   - <!--<div class="form-group"> -->
147   - <!--<label class="col-sm-3 control-label">出入库是否按照 生产日期 来匹配:</label>-->
148   - <!--<div class="col-sm-8">-->
149   - <!--<input id="manufactureDate" name="manufactureDate" th:field="*{manufactureDate}" class="form-control" type="text">-->
150   - <!--</div>-->
151   - <!--</div>-->
152   - <!--<div class="form-group"> -->
153   - <!--<label class="col-sm-3 control-label">出入库是否按照 入库时间 来匹配:</label>-->
154   - <!--<div class="col-sm-8">-->
155   - <!--<input id="receiptDate" name="receiptDate" th:field="*{receiptDate}" class="form-control" type="text">-->
156   - <!--</div>-->
157   - <!--</div>-->
158   - <!--<div class="form-group"> -->
159   - <!--<label class="col-sm-3 control-label">创建时间:</label>-->
160   - <!--<div class="col-sm-8">-->
161   - <!--<input id="created" name="created" th:field="*{created}" class="form-control" type="text">-->
162   - <!--</div>-->
163   - <!--</div>-->
164   - <!--<div class="form-group"> -->
165   - <!--<label class="col-sm-3 control-label">创建用户:</label>-->
166   - <!--<div class="col-sm-8">-->
167   - <!--<input id="createdBy" name="createdBy" th:field="*{createdBy}" class="form-control" type="text">-->
168   - <!--</div>-->
169   - <!--</div>-->
170   - <!--<div class="form-group"> -->
171   - <!--<label class="col-sm-3 control-label">最后修改间:</label>-->
172   - <!--<div class="col-sm-8">-->
173   - <!--<input id="lastUpdated" name="lastUpdated" th:field="*{lastUpdated}" class="form-control" type="text">-->
174   - <!--</div>-->
175   - <!--</div>-->
176   - <!--<div class="form-group"> -->
177   - <!--<label class="col-sm-3 control-label">更新用户:</label>-->
178   - <!--<div class="col-sm-8">-->
179   - <!--<input id="lastUpdatedBy" name="lastUpdatedBy" th:field="*{lastUpdatedBy}" class="form-control" type="text">-->
180   - <!--</div>-->
181   - <!--</div>-->
182   - <div class="form-group">
183   - <label class="col-sm-3 control-label">是否有效:</label>
184   - <div class="col-sm-8">
185   - <div class="onoffswitch">
186   - <input type="checkbox" th:checked="${material.enable}" class="onoffswitch-checkbox" id="enable" name="enable">
187   - <label class="onoffswitch-label" for="enable">
188   - <span class="onoffswitch-inner"></span>
189   - <span class="onoffswitch-switch"></span>
190   - </label>
191   - </div>
  115 + </div>
  116 + <div class="form-group">
  117 + <label class="col-sm-3 control-label">序列号模板:</label>
  118 + <div class="col-sm-8">
  119 + <input id="snTemplateCode" name="snTemplateCode" class="form-control" type="text" th:field="*{snTemplateCode}">
  120 + </div>
  121 + </div>
  122 + <div class="form-group">
  123 + <label class="col-sm-3 control-label">临期预警天数:</label>
  124 + <div class="col-sm-8">
  125 + <input id="expiringDays" name="expiringDays" class="form-control" type="text" th:field="*{expiringDays}">
  126 + </div>
  127 + </div>
  128 + <div class="form-group">
  129 + <label class="col-sm-3 control-label">收货预警天数:</label>
  130 + <div class="col-sm-8">
  131 + <input id="minShelfLifeDays" name="minShelfLifeDays" class="form-control" type="text" th:field="*{minShelfLifeDays}">
  132 + </div>
  133 + </div>
  134 + <!--<div class="form-group">
  135 + <label class="col-sm-3 control-label">数据版本:</label>
  136 + <div class="col-sm-8">
  137 + <input id="version" name="version" class="form-control" type="text">
  138 + </div>
  139 + </div>-->
  140 + <!--<div class="form-group"> -->
  141 + <!--<label class="col-sm-3 control-label">创建时间:</label>-->
  142 + <!--<div class="col-sm-8">-->
  143 + <!--<input id="created" name="created" class="form-control" type="text">-->
  144 + <!--</div>-->
  145 + <!--</div>-->
  146 + <!--<div class="form-group"> -->
  147 + <!--<label class="col-sm-3 control-label">创建用户:</label>-->
  148 + <!--<div class="col-sm-8">-->
  149 + <!--<input id="createdBy" name="createdBy" class="form-control" type="text">-->
  150 + <!--</div>-->
  151 + <!--</div>-->
  152 + <!--<div class="form-group"> -->
  153 + <!--<label class="col-sm-3 control-label">最后修改间:</label>-->
  154 + <!--<div class="col-sm-8">-->
  155 + <!--<input id="lastUpdated" name="lastUpdated" class="form-control" type="text">-->
  156 + <!--</div>-->
  157 + <!--</div>-->
  158 + <!--<div class="form-group"> -->
  159 + <!--<label class="col-sm-3 control-label">更新用户:</label>-->
  160 + <!--<div class="col-sm-8">-->
  161 + <!--<input id="lastUpdatedBy" name="lastUpdatedBy" class="form-control" type="text">-->
  162 + <!--</div>-->
  163 + <!--</div>-->
  164 +
  165 + <div class="form-group">
  166 + <label class="col-sm-3 control-label">状态:</label>
  167 + <div class="col-sm-8">
  168 + <div class="onoffswitch">
  169 + <input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="enable" name="enable" th:field="*{enable}">
  170 + <label class="onoffswitch-label" for="enable">
  171 + <span class="onoffswitch-inner"></span>
  172 + <span class="onoffswitch-switch"></span>
  173 + </label>
192 174 </div>
193 175 </div>
194   - <!--<div class="form-group"> -->
195   - <!--<label class="col-sm-3 control-label">是否删除:</label>-->
196   - <!--<div class="col-sm-8">-->
197   - <!--<input id="deleted" name="deleted" th:field="*{deleted}" class="form-control" type="text">-->
198   - <!--</div>-->
199   - <!--</div>-->
200   - <!--<div class="form-group"> -->
201   - <!--<label class="col-sm-3 control-label">自定义字段1:</label>-->
202   - <!--<div class="col-sm-8">-->
203   - <!--<input id="userDef1" name="userDef1" th:field="*{userDef1}" class="form-control" type="text">-->
204   - <!--</div>-->
205   - <!--</div>-->
206   - <!--<div class="form-group"> -->
207   - <!--<label class="col-sm-3 control-label">自定义字段2:</label>-->
208   - <!--<div class="col-sm-8">-->
209   - <!--<input id="userDef2" name="userDef2" th:field="*{userDef2}" class="form-control" type="text">-->
210   - <!--</div>-->
211   - <!--</div>-->
212   - <!--<div class="form-group"> -->
213   - <!--<label class="col-sm-3 control-label">自定义字段3:</label>-->
214   - <!--<div class="col-sm-8">-->
215   - <!--<input id="userDef3" name="userDef3" th:field="*{userDef3}" class="form-control" type="text">-->
216   - <!--</div>-->
217   - <!--</div>-->
218   - <!--<div class="form-group"> -->
219   - <!--<label class="col-sm-3 control-label">自定义字段4:</label>-->
220   - <!--<div class="col-sm-8">-->
221   - <!--<input id="userDef4" name="userDef4" th:field="*{userDef4}" class="form-control" type="text">-->
222   - <!--</div>-->
223   - <!--</div>-->
224   - <!--<div class="form-group"> -->
225   - <!--<label class="col-sm-3 control-label">自定义字段5:</label>-->
226   - <!--<div class="col-sm-8">-->
227   - <!--<input id="userDef5" name="userDef5" th:field="*{userDef5}" class="form-control" type="text">-->
228   - <!--</div>-->
229   - <!--</div>-->
230   - <!--<div class="form-group"> -->
231   - <!--<label class="col-sm-3 control-label">自定义字段6:</label>-->
232   - <!--<div class="col-sm-8">-->
233   - <!--<input id="userDef6" name="userDef6" th:field="*{userDef6}" class="form-control" type="text">-->
234   - <!--</div>-->
235   - <!--</div>-->
236   - <!--<div class="form-group"> -->
237   - <!--<label class="col-sm-3 control-label">自定义字段7:</label>-->
238   - <!--<div class="col-sm-8">-->
239   - <!--<input id="userDef7" name="userDef7" th:field="*{userDef7}" class="form-control" type="text">-->
240   - <!--</div>-->
241   - <!--</div>-->
242   - <!--<div class="form-group"> -->
243   - <!--<label class="col-sm-3 control-label">自定义字段8:</label>-->
244   - <!--<div class="col-sm-8">-->
245   - <!--<input id="userDef8" name="userDef8" th:field="*{userDef8}" class="form-control" type="text">-->
246   - <!--</div>-->
247   - <!--</div>-->
248   - <div class="form-group">
249   - <div class="form-control-static col-sm-offset-9">
250   - <button type="submit" class="btn btn-primary">提交</button>
251   - <button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button>
252   - </div>
253   - </div>
254   - </form>
255   - </div>
256   - <div th:include="include::footer"></div>
257   - <script type="text/javascript">
258   - var prefix = ctx + "general/material";
259   - $("#form-material-edit").validate({
260   - rules:{
261   - code:{
262   - required:true
263   - },
264   - name:{
265   - required:true
266   - },
267   - barcode:{
268   - required:true
269   - }
  176 + </div>
  177 + <!--<div class="form-group"> -->
  178 + <!--<label class="col-sm-3 control-label">是否删除:</label>-->
  179 + <!--<div class="col-sm-8">-->
  180 + <!--<input id="deleted" name="deleted" class="form-control" type="text">-->
  181 + <!--</div>-->
  182 + <!--</div>-->
  183 + <!--<div class="form-group"> -->
  184 + <!--<label class="col-sm-3 control-label">自定义字段1:</label>-->
  185 + <!--<div class="col-sm-8">-->
  186 + <!--<input id="userDef1" name="userDef1" class="form-control" type="text">-->
  187 + <!--</div>-->
  188 + <!--</div>-->
  189 + <!--<div class="form-group"> -->
  190 + <!--<label class="col-sm-3 control-label">自定义字段2:</label>-->
  191 + <!--<div class="col-sm-8">-->
  192 + <!--<input id="userDef2" name="userDef2" class="form-control" type="text">-->
  193 + <!--</div>-->
  194 + <!--</div>-->
  195 + <!--<div class="form-group"> -->
  196 + <!--<label class="col-sm-3 control-label">自定义字段3:</label>-->
  197 + <!--<div class="col-sm-8">-->
  198 + <!--<input id="userDef3" name="userDef3" class="form-control" type="text">-->
  199 + <!--</div>-->
  200 + <!--</div>-->
  201 + <!--<div class="form-group"> -->
  202 + <!--<label class="col-sm-3 control-label">自定义字段4:</label>-->
  203 + <!--<div class="col-sm-8">-->
  204 + <!--<input id="userDef4" name="userDef4" class="form-control" type="text">-->
  205 + <!--</div>-->
  206 + <!--</div>-->
  207 + <!--<div class="form-group"> -->
  208 + <!--<label class="col-sm-3 control-label">自定义字段5:</label>-->
  209 + <!--<div class="col-sm-8">-->
  210 + <!--<input id="userDef5" name="userDef5" class="form-control" type="text">-->
  211 + <!--</div>-->
  212 + <!--</div>-->
  213 + <!--<div class="form-group"> -->
  214 + <!--<label class="col-sm-3 control-label">自定义字段6:</label>-->
  215 + <!--<div class="col-sm-8">-->
  216 + <!--<input id="userDef6" name="userDef6" class="form-control" type="text">-->
  217 + <!--</div>-->
  218 + <!--</div>-->
  219 + <!--<div class="form-group"> -->
  220 + <!--<label class="col-sm-3 control-label">自定义字段7:</label>-->
  221 + <!--<div class="col-sm-8">-->
  222 + <!--<input id="userDef7" name="userDef7" class="form-control" type="text">-->
  223 + <!--</div>-->
  224 + <!--</div>-->
  225 + <!--<div class="form-group"> -->
  226 + <!--<label class="col-sm-3 control-label">自定义字段8:</label>-->
  227 + <!--<div class="col-sm-8">-->
  228 + <!--<input id="userDef8" name="userDef8" class="form-control" type="text">-->
  229 + <!--</div>-->
  230 + <!--</div>-->
  231 + <div class="form-group">
  232 + <div class="form-control-static col-sm-offset-9">
  233 + <button type="submit" class="btn btn-primary">提交</button>
  234 + <button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button>
  235 + </div>
  236 + </div>
  237 + </form>
  238 +</div>
  239 +<div th:include="include::footer"></div>
  240 +<script type="text/javascript">
  241 + var prefix = ctx + "general/material";
  242 + $("#form-material-add").validate({
  243 + rules:{
  244 + code:{
  245 + required:true,
270 246 },
271   - submitHandler: function(form) {
272   - // $.operate.save(prefix + "/edit", $('#form-material-edit').serialize());
273   - // var tableValue = $.common.getTableValue("#form-material-edit");
274   - // $.operate.save(prefix + "/edit", tableValue);
275   - var tableValue = $("#form-material-edit").serialize();
276   - tableValue = formValueReplace(tableValue, "enable", $("input[name='enable']").is(':checked'));
277   - tableValue = formValueReplace(tableValue, "companyId", $("#company option:selected").val());
278   - tableValue = formValueReplace(tableValue, "companyCode", $("#company option:selected").attr("code"));
279   - $.operate.save(prefix + "/edit", tableValue);
280   - }
281   - });
282   - </script>
  247 + name:{
  248 + required:true,
  249 + }
  250 + },
  251 + submitHandler: function(form) {
  252 + // $.operate.save(prefix + "/add", $('#form-material-add').serialize());
  253 + // var tableValue = $.common.getTableValue("#form-material-add");
  254 + // $.operate.save(prefix + "/add", tableValue);
  255 + var tableValue = $("#form-material-add").serialize();
  256 + tableValue = formValueReplace(tableValue, "enable", $("input[name='enable']").is(':checked'));
  257 + $.operate.save(prefix + "/add", tableValue);
  258 + }
  259 + });
  260 +</script>
283 261 </body>
284 262 </html>
... ...
src/main/resources/templates/general/material/material.html
... ... @@ -80,23 +80,10 @@
80 80 field : 'id',
81 81 title : 'id'
82 82 },
83   - // {
84   - // field : 'warehouseCode',
85   - // title : '仓库编码'
86   - // },
87 83 {
88 84 field : 'code',
89 85 title : '物料编码'
90 86 },
91   - {
92   - field : 'barcode',
93   - title : '条码',
94   - visible:false
95   - },
96   - {
97   - field : 'userDef1',
98   - title : '存货代码',
99   - },
100 87 {
101 88 field : 'type',
102 89 title : '物料类别' ,
... ... @@ -105,10 +92,11 @@
105 92 return $.table.selectDictLabel(mType, value);
106 93 }
107 94 },
108   - {
109   - field : 'zoneCode',
110   - title : '库区编码'
111   - },
  95 + {
  96 + field : 'abcClass',
  97 + title : 'ABC分类' ,
  98 + align: 'center',
  99 + },
112 100 {
113 101 field : 'name',
114 102 title : '名称'
... ... @@ -123,77 +111,87 @@
123 111 visible:false
124 112 },
125 113 {
126   - field : 'size',
127   - title : '尺码' ,
  114 + field : 'daysToExpire',
  115 + title : '保质期(天)' ,
128 116 visible:false
129 117 },
130 118 {
131   - field : 'color',
132   - title : '颜色',
133   - visible:false
  119 + field : 'locatingRule',
  120 + title : '定位规则',
134 121 },
135 122 {
136   - field : 'placeOfOrigin',
137   - title : '产地' ,
138   - visible:false
  123 + field : 'allocationRule',
  124 + title : '分配规则' ,
139 125 },
140 126 {
141   - field : 'daysToExpire',
142   - title : '保质期(天)' ,
143   - visible:false
  127 + field : 'replenishmentRule',
  128 + title : '补货规则' ,
144 129 },
145 130 {
146   - field : 'expiringDays',
147   - title : '临期预警天数' ,
148   - visible:false
  131 + field : 'emptyLocRule',
  132 + title : '空货位规则' ,
149 133 },
150 134 {
151   - field : 'minShelfLifeDays',
152   - title : '收货预警天数' ,
153   - visible:false
  135 + field : 'receivingFlow',
  136 + title : '入库流程' ,
154 137 },
155 138 {
156   - field : 'costPrice',
157   - title : '成本',
158   - visible:false
  139 + field : 'shippingFlow',
  140 + title : '出库流程' ,
159 141 },
160 142 {
161   - field : 'listPrice',
162   - title : '标价' ,
163   - visible:false
  143 + field : 'attributeTemplateCode',
  144 + title : '属性模板' ,
164 145 },
165 146 {
166   - field : 'netPrice',
167   - title : '净价',
168   - visible:false
  147 + field : 'trackSerialNum',
  148 + title : '记录序列号' ,
169 149 },
170   - // {
171   - // field : 'manufactureDate',
172   - // title : '出入库是否按照 生产日期 来匹配'
173   - // },
174   - // {
175   - // field : 'receiptDate',
176   - // title : '出入库是否按照 入库时间 来匹配'
177   - // },
178 150 {
179   - field : 'created',
180   - title : '创建时间'
  151 + field : 'autoGenSerialNum',
  152 + title : '自动生成序列号' ,
181 153 },
182 154 {
183   - field : 'createdBy',
184   - title : '创建用户'
  155 + field : 'autoGenSerialNumFormat',
  156 + title : '自动生成序列号表达式' ,
185 157 },
186 158 {
187   - field : 'lastUpdated',
188   - title : '更新时间'
  159 + field : 'snTemplateCode',
  160 + title : '序列号模板' ,
  161 + },
  162 + {
  163 + field : 'expiringDays',
  164 + title : '临期预警天数' ,
  165 + visible:false
189 166 },
190 167 {
191   - field : 'lastUpdatedBy',
192   - title : '更新用户'
  168 + field : 'minShelfLifeDays',
  169 + title : '收货预警天数' ,
  170 + visible:false
193 171 },
  172 + // {
  173 + // field : "version",
  174 + // title: "数据版本"
  175 + // },
  176 + // {
  177 + // field : 'created',
  178 + // title : '创建时间'
  179 + // },
  180 + // {
  181 + // field : 'createdBy',
  182 + // title : '创建用户'
  183 + // },
  184 + // {
  185 + // field : 'lastUpdated',
  186 + // title : '更新时间'
  187 + // },
  188 + // {
  189 + // field : 'lastUpdatedBy',
  190 + // title : '更新用户'
  191 + // },
194 192 {
195 193 field : 'enable',
196   - title : '是否有效' ,
  194 + title : '状态' ,
197 195 align: 'center',
198 196 formatter: function(value, row, index) {
199 197 return $.table.selectDictLabel(datas, value);
... ... @@ -204,8 +202,8 @@
204 202 align: 'center',
205 203 formatter: function(value, row, index) {
206 204 var actions = [];
207   - /*actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="#" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
208   - */actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-trash-o"></i>删除</a>');
  205 + actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="#" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
  206 + actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-trash-o"></i>删除</a>');
209 207 return actions.join('');
210 208 }
211 209 }]
... ...
src/main/resources/templates/shipment/shipmentHeader/add.html
... ... @@ -8,7 +8,7 @@
8 8 <div class="form-group">
9 9 <label class="col-sm-3 control-label">出库单类型:</label>
10 10 <div class="col-sm-8">
11   - <select id="type" class="form-control" th:with="shipmentType=${@dict.getType('shipmentType')}">
  11 + <select id="shipmentType" class="form-control" th:with="shipmentType=${@dict.getType('shipmentType')}">
12 12 <option th:each="dict : ${shipmentType}" th:text="${dict['dictLabel']}" th:value="${dict['dictValue']}"></option>
13 13 </select>
14 14 </div>
... ... @@ -16,27 +16,27 @@
16 16 <div class="form-group">
17 17 <label class="col-sm-3 control-label">货主:</label>
18 18 <div class="col-sm-8">
19   - <select id = "company" name="company" class="form-control" th:with="list=${@company.selectCompanyByCurrentUserId()}">
  19 + <select id = "companyCode" name="companyCode" class="form-control" th:with="list=${@companyService.selectCompanyByCurrentUserId()}">
20 20 <option th:each="item : ${list}" th:text="${item['name']}" th:value="${item['id']}" th:attr = " code = ${item['code']}"></option>
21 21 </select>
22 22 </div>
23 23 </div>
24 24 <div class="form-group">
25   - <label class="col-sm-3 control-label">上游系统单号:</label>
  25 + <label class="col-sm-3 control-label">erp订单号:</label>
26 26 <div class="col-sm-8">
27   - <input id="sourceCode" name="sourceCode" class="form-control" type="text">
  27 + <input id="referCode" name="referCode" class="form-control" type="text">
28 28 </div>
29 29 </div>
30 30 <div class="form-group">
31 31 <label class="col-sm-3 control-label">上游平台:</label>
32 32 <div class="col-sm-8">
33   - <input id="sourcePlatform" name="sourcePlatform" class="form-control" type="text">
  33 + <input id="referPlatform" name="referPlatform" class="form-control" type="text">
34 34 </div>
35 35 </div>
36 36 <div class="form-group">
37 37 <label class="col-sm-3 control-label">客户编码:</label>
38 38 <div class="col-sm-8">
39   - <input id="shipTo" name="shipTo" class="form-control" type="text">
  39 + <input id="customerCode" name="customerCode" class="form-control" type="text">
40 40 <!--<select id="shipTo" class="form-control m-b" th:with="shipmentType=${@dict.getType('shipmentType')}">-->
41 41 <!--<option th:each="dict : ${shipmentType}" th:text="${dict['dictLabel']}" th:value="${dict['dictValue']}"></option>-->
42 42 <!--</select>-->
... ... @@ -49,15 +49,6 @@
49 49 </div>
50 50 </div>
51 51 <div class="form-group">
52   - <label class="col-sm-3 control-label">发货站台:</label>
53   - <div class="col-sm-8">
54   - <!--<input id="station" name="station" class="form-control" type="text">-->
55   - <select id="station" name="station" class="form-control" th:with="station=${@dict.getType('station')}">
56   - <option th:each="dict : ${station}" th:text="${dict['dictLabel']}" th:value="${dict['dictValue']}"></option>
57   - </select>
58   - </div>
59   - </div>
60   - <div class="form-group">
61 52 <label class="col-sm-3 control-label">总数量:</label>
62 53 <div class="col-sm-8">
63 54 <input id="totalQty" name="totalQty" class="form-control" type="text">
... ... @@ -69,30 +60,24 @@
69 60 <input id="totalLines" name="totalLines" class="form-control" type="text">
70 61 </div>
71 62 </div>
72   - <div class="form-group">
73   - <label class="col-sm-3 control-label">备注:</label>
74   - <div class="col-sm-8">
75   - <input id="remark" name="remark" class="form-control" type="text">
76   - </div>
77   - </div>
78   - <div class="form-group">
79   - <label class="col-sm-3 control-label">发货预约时间:</label>
80   - <div class="col-sm-8">
81   - <input id="appointmentTime" name="appointmentTime" class="form-control" type="text">
82   - </div>
83   - </div>
84 63 <div class="form-group">
85   - <label class="col-sm-3 control-label">是否有效:</label>
  64 + <label class="col-sm-3 control-label">要求到货时间:</label>
86 65 <div class="col-sm-8">
87   - <div class="onoffswitch">
88   - <input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="enable" name="enable">
89   - <label class="onoffswitch-label" for="enable">
90   - <span class="onoffswitch-inner"></span>
91   - <span class="onoffswitch-switch"></span>
92   - </label>
93   - </div>
  66 + <input id="requestedDeliveryDate" name="requestedDeliveryDate" class="form-control" type="text">
94 67 </div>
95 68 </div>
  69 + <!--<div class="form-group">-->
  70 + <!--<label class="col-sm-3 control-label">是否有效:</label>-->
  71 + <!--<div class="col-sm-8">-->
  72 + <!--<div class="onoffswitch">-->
  73 + <!--<input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="enable" name="enable">-->
  74 + <!--<label class="onoffswitch-label" for="enable">-->
  75 + <!--<span class="onoffswitch-inner"></span>-->
  76 + <!--<span class="onoffswitch-switch"></span>-->
  77 + <!--</label>-->
  78 + <!--</div>-->
  79 + <!--</div>-->
  80 + <!--</div>-->
96 81 <!--<div class="form-group"> -->
97 82 <!--<label class="col-sm-3 control-label">自定义字段1:</label>-->
98 83 <!--<div class="col-sm-8">-->
... ... @@ -149,22 +134,15 @@
149 134 type: "POST",
150 135 url: prefix + "/add",
151 136 data: {
152   - "type": $("#type option:selected").val(),
153   - "companyId": $("#company option:selected").val(),
154   - "companyCode": $("#company option:selected").attr("code"),
155   - "sourceCode": $("input[name='sourceCode']").val(),
156   - "sourcePlatform": $("input[name='sourcePlatform']").val(),
157   - "shipTo": $("input[name='shipTo']").val(),
  137 + "shipmentType": $("#shipmentType option:selected").val(),
  138 + "companyCode": $("#companyCode option:selected").attr("code"),
  139 + "referCode": $("input[name='referCode']").val(),
  140 + "referPlatform": $("input[name='referPlatform']").val(),
  141 + "customerCode": $("input[name='customerCode']").val(),
158 142 "priority": $("input[name='priority']").val(),
159   - "station": $("#station option:selected").val(),
160 143 "totalQty": $("input[name='totalQty']").val(),
161 144 "totalLines": $("input[name='totalLines']").val(),
162   - "remark": $("input[name='remark']").val(),
163   - "appointmentTime": $("input[name='appointmentTime']").val(),
164   - "enable": $("input[name='enable']").is(':checked'),
165   - "userDef1": $("input[name='userDef1']").val(),
166   - "userDef2": $("input[name='userDef2']").val(),
167   - "userDef3": $("input[name='userDef3']").val(),
  145 + "requestedDeliveryDate": $("input[name='requestedDeliveryDate']").val(),
168 146 },
169 147 async: false,
170 148 error: function (request) {
... ...
src/main/resources/templates/shipment/shipmentHeader/edit.html
... ... @@ -15,27 +15,27 @@
15 15 <div class="form-group">
16 16 <label class="col-sm-3 control-label">货主:</label>
17 17 <div class="col-sm-8">
18   - <select id="company" name="company" class="form-control" th:with="list=${@company.selectCompanyByCurrentUserId()}" th:field="*{companyId}" readonly="readonly" disabled="disabled">
  18 + <select id="companyCode" name="companyCode" class="form-control" th:with="list=${@companyService.selectCompanyByCurrentUserId()}" th:field="*{companyId}" readonly="readonly" disabled="disabled">
19 19 <option th:each="item : ${list}" th:text="${item['name']}" th:value="${item['id']}" th:attr="code = ${item['code']}"></option>
20 20 </select>
21 21 </div>
22 22 </div>
23 23 <div class="form-group">
24   - <label class="col-sm-3 control-label">上游系统单号:</label>
  24 + <label class="col-sm-3 control-label">erp订单号:</label>
25 25 <div class="col-sm-8">
26   - <input id="sourceCode" name="sourceCode" th:field="*{sourceCode}" class="form-control" type="text" readonly="readonly">
  26 + <input id="referCode" name="referCode" th:field="*{referCode}" class="form-control" type="text" readonly="readonly">
27 27 </div>
28 28 </div>
29 29 <div class="form-group">
30   - <label class="col-sm-3 control-label">上游平台:</label>
  30 + <label class="col-sm-3 control-label">订单平台:</label>
31 31 <div class="col-sm-8">
32   - <input id="sourcePlatform" name="sourcePlatform" th:field="*{sourcePlatform}" class="form-control" type="text" readonly="readonly">
  32 + <input id="referPlatform" name="referPlatform" th:field="*{referPlatform}" class="form-control" type="text" readonly="readonly">
33 33 </div>
34 34 </div>
35 35 <div class="form-group">
36 36 <label class="col-sm-3 control-label">出库单类型:</label>
37 37 <div class="col-sm-8">
38   - <select id="type" class="form-control" th:with="shipmentType=${@dict.getType('shipmentType')}" th:field="*{type}" readonly="readonly" disabled="disabled">
  38 + <select id="shipmentType" class="form-control" th:with="shipmentType=${@dict.getType('shipmentType')}" th:field="*{type}" readonly="readonly" disabled="disabled">
39 39 <option th:each="dict : ${shipmentType}" th:text="${dict['dictLabel']}" th:value="${dict['dictValue']}" ></option>
40 40 </select>
41 41 </div>
... ... @@ -43,7 +43,7 @@
43 43 <div class="form-group">
44 44 <label class="col-sm-3 control-label">客户编码:</label>
45 45 <div class="col-sm-8">
46   - <input id="shipTo" name="shipTo" th:field="*{shipTo}" class="form-control" type="text">
  46 + <input id="customerCode" name="customerCode" th:field="*{customerCode}" class="form-control" type="text">
47 47 </div>
48 48 </div>
49 49 <div class="form-group">
... ... @@ -53,12 +53,6 @@
53 53 </div>
54 54 </div>
55 55 <div class="form-group">
56   - <label class="col-sm-3 control-label">发货站台:</label>
57   - <div class="col-sm-8">
58   - <input id="station" name="station" th:field="*{station}" class="form-control" type="text">
59   - </div>
60   - </div>
61   - <div class="form-group">
62 56 <label class="col-sm-3 control-label">总数量:</label>
63 57 <div class="col-sm-8">
64 58 <input id="totalQty" name="totalQty" th:field="*{totalQty}" class="form-control" type="text" readonly="readonly">
... ... @@ -70,12 +64,6 @@
70 64 <input id="totalLines" name="totalLines" th:field="*{totalLines}" class="form-control" type="text" readonly="readonly">
71 65 </div>
72 66 </div>
73   - <div class="form-group">
74   - <label class="col-sm-3 control-label">备注:</label>
75   - <div class="col-sm-8">
76   - <input id="remark" name="remark" th:field="*{remark}" class="form-control" type="text">
77   - </div>
78   - </div>
79 67 <!--<div class="form-group">
80 68 <label class="col-sm-3 control-label">上传备注:</label>
81 69 <div class="col-sm-8">
... ... @@ -83,15 +71,9 @@
83 71 </div>
84 72 </div>-->
85 73 <div class="form-group">
86   - <label class="col-sm-3 control-label">上传时间:</label>
  74 + <label class="col-sm-3 control-label">要求到货时间:</label>
87 75 <div class="col-sm-8">
88   - <input id="uploadTime" name="uploadTime" th:field="*{uploadTime}" class="form-control" type="text" readonly="readonly">
89   - </div>
90   - </div>
91   - <div class="form-group">
92   - <label class="col-sm-3 control-label">发货预约时间:</label>
93   - <div class="col-sm-8">
94   - <input id="appointmentTime" name="appointmentTime" th:field="*{appointmentTime}" class="form-control" type="text">
  76 + <input id="requestedDeliveryDate" name="requestedDeliveryDate" th:field="*{requestedDeliveryDate}" class="form-control" type="text">
95 77 </div>
96 78 </div>
97 79 <div class="form-group">
... ... @@ -110,16 +92,16 @@
110 92 </select>
111 93 </div>
112 94 </div>
113   - <div class="form-group">
114   - <label class="col-sm-3 control-label">上传状态:</label>
115   - <div class="col-sm-8">
116   - <!--<input id="uploadStatus" name="uploadStatus" th:field="*{uploadStatus}" class="form-control" type="text" readonly="readonly">-->
  95 + <!--<div class="form-group">-->
  96 + <!--<label class="col-sm-3 control-label">上传状态:</label>-->
  97 + <!--<div class="col-sm-8">-->
  98 + <!--&lt;!&ndash;<input id="uploadStatus" name="uploadStatus" th:field="*{uploadStatus}" class="form-control" type="text" readonly="readonly">&ndash;&gt;-->
117 99  
118   - <select id="uploadStatus" class="form-control" th:with="uploadStatus=${@dict.getType('uploadStatus')}" th:field="*{uploadStatus}" disabled="disabled">
119   - <option th:each="dict : ${uploadStatus}" th:text="${dict['dictLabel']}" th:value="${dict['dictValue']}" ></option>
120   - </select>
121   - </div>
122   - </div>
  100 + <!--<select id="uploadStatus" class="form-control" th:with="uploadStatus=${@dict.getType('uploadStatus')}" th:field="*{uploadStatus}" disabled="disabled">-->
  101 + <!--<option th:each="dict : ${uploadStatus}" th:text="${dict['dictLabel']}" th:value="${dict['dictValue']}" ></option>-->
  102 + <!--</select>-->
  103 + <!--</div>-->
  104 + <!--</div>-->
123 105 <!--<div class="form-group"> -->
124 106 <!--<label class="col-sm-3 control-label">创建时间:</label>-->
125 107 <!--<div class="col-sm-8">-->
... ... @@ -144,24 +126,24 @@
144 126 <!--<input id="lastUpdatedBy" name="lastUpdatedBy" th:field="*{lastUpdatedBy}" class="form-control" type="text" readonly="readonly">-->
145 127 <!--</div>-->
146 128 <!--</div>-->
147   - <div class="form-group">
  129 + <!--<div class="form-group"> -->
  130 + <!--&lt;!&ndash;<label class="col-sm-3 control-label">是否有效:</label>&ndash;&gt;-->
  131 + <!--&lt;!&ndash;<div class="col-sm-8">&ndash;&gt;-->
  132 + <!--&lt;!&ndash;&lt;!&ndash;<input id="enable" name="enable" th:field="*{enable}" class="form-control" type="text">&ndash;&gt;&ndash;&gt;-->
  133 + <!--&lt;!&ndash;<input type="radio" name="enable" value="true" th:checked="*{enable}" >是&ndash;&gt;-->
  134 + <!--&lt;!&ndash;<input type="radio" name="enable" value="false" th:checked="*{enable}">否&ndash;&gt;-->
  135 + <!--&lt;!&ndash;</div>&ndash;&gt;-->
148 136 <!--<label class="col-sm-3 control-label">是否有效:</label>-->
149 137 <!--<div class="col-sm-8">-->
150   - <!--&lt;!&ndash;<input id="enable" name="enable" th:field="*{enable}" class="form-control" type="text">&ndash;&gt;-->
151   - <!--<input type="radio" name="enable" value="true" th:checked="*{enable}" >是-->
152   - <!--<input type="radio" name="enable" value="false" th:checked="*{enable}">否-->
  138 + <!--<div class="onoffswitch">-->
  139 + <!--<input type="checkbox" th:checked="${shipmentHeader.enable}" class="onoffswitch-checkbox" id="enable" name="enable">-->
  140 + <!--<label class="onoffswitch-label" for="enable">-->
  141 + <!--<span class="onoffswitch-inner"></span>-->
  142 + <!--<span class="onoffswitch-switch"></span>-->
  143 + <!--</label>-->
  144 + <!--</div>-->
153 145 <!--</div>-->
154   - <label class="col-sm-3 control-label">是否有效:</label>
155   - <div class="col-sm-8">
156   - <div class="onoffswitch">
157   - <input type="checkbox" th:checked="${shipmentHeader.enable}" class="onoffswitch-checkbox" id="enable" name="enable">
158   - <label class="onoffswitch-label" for="enable">
159   - <span class="onoffswitch-inner"></span>
160   - <span class="onoffswitch-switch"></span>
161   - </label>
162   - </div>
163   - </div>
164   - </div>
  146 + <!--</div>-->
165 147 <!--<div class="form-group">-->
166 148 <!--<label class="col-sm-3 control-label">扩展属性1:</label>-->
167 149 <!--<div class="col-sm-8">-->
... ... @@ -196,9 +178,7 @@
196 178 submitHandler: function(form) {
197 179 // var tableValue = $.common.getTableValue("#form-shipmentHeader-edit");
198 180 var tableValue = $("#form-shipmentHeader-edit").serialize();
199   - tableValue = formValueReplace(tableValue, "enable", $("input[name='enable']").is(':checked'));
200   - tableValue = formValueReplace(tableValue, "companyId", $("#company option:selected").val());
201   - tableValue = formValueReplace(tableValue, "companyCode", $("#company option:selected").attr("code"));
  181 + tableValue = formValueReplace(tableValue, "companyCode", $("#companyCode option:selected").attr("code"));
202 182 $.operate.save(prefix + "/edit", tableValue);
203 183 }
204 184 });
... ...
src/main/resources/templates/shipment/shipmentHeader/shipmentHeader.html
... ... @@ -28,13 +28,19 @@
28 28 </li>
29 29 <li>
30 30 <!--入库类型:<input type="text" name="sourceCode"/>-->
31   - 出库类型:<select name="type" th:with="type=${@dict.getType('shipmentType')}">
  31 + 出库类型:<select name="shipmentType" th:with="shipmentType=${@dict.getType('shipmentType')}">
32 32 <option value="">所有</option>
33   - <option th:each="e : ${type}" th:text="${e['dictLabel']}"
  33 + <option th:each="e : ${shipmentType}" th:text="${e['dictLabel']}"
34 34 th:value="${e['dictValue']}"></option>
35 35 </select>
36 36 </li>
37 37 <li>
  38 + erp单号:<input type="text" name="referCode"/>
  39 + </li>
  40 + <li>
  41 + erp订单类型:<input type="text" name="referCodeType"/>
  42 + </li>
  43 + <li>
38 44 客户编码:<input type="text" name="sourceCode"/>
39 45 </li>
40 46 <li>
... ... @@ -55,24 +61,13 @@
55 61 th:value="${e['dictValue']}"></option>
56 62 </select>
57 63 </li>
58   - <li>
59   - 上游单号:<input type="text" name="sourceCode"/>
60   - </li>
61   - <li>
62   - u8仓库:<select name="uWarehouseCode" th:with="warehouse=${@warehouse.selectList()}">
63   - <option value="">所有</option>
64   - <option th:each="e : ${warehouse}" th:text="${e['uWarehouseName']}" th:value="${e['uWarehouseCode']}"></option></select>
65   - </li>
66   - <li>
67   - 上游平台:<input type="text" name="sourcePlatform"/>
68   - </li>
69 64 <li class="time">
70 65 <label>创建时间: </label>
71 66 <input type="text" class="time-input" id="startTime" placeholder="开始时间"
72   - name="params[createdBegin]"/>
  67 + name="createdBegin"/>
73 68 <span>-</span>
74 69 <input type="text" class="time-input" id="endTime" placeholder="结束时间"
75   - name="params[createdEnd]"/>
  70 + name="createdEnd"/>
76 71 </li>
77 72 <li>
78 73 <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i
... ... @@ -248,33 +243,23 @@
248 243 sortable:true
249 244 },
250 245 {
251   - field: 'companyId',
252   - title: '货主标识',
253   - visible:false
254   - },
255   - {
256 246 field: 'companyCode',
257 247 title: '货主',
258 248 sortable:true
259 249 },
260 250 {
261   - field: 'sourceCode',
262   - title: '上游单号',
  251 + field: 'referCode',
  252 + title: 'erp订单号',
263 253 sortable:true
264 254 },
265 255 {
266   - field: 'sourcePlatform',
267   - title: '上游平台',
  256 + field: 'referCodeType',
  257 + title: 'erp订单内部号',
268 258 sortable:true,
269 259 visible:false
270 260 },
271 261 {
272   - field : 'uWarehouseCode',
273   - title : 'U8仓库',
274   - sortable:true
275   - },
276   - {
277   - field: 'type',
  262 + field: 'shipmentType',
278 263 title: '类型',
279 264 align: 'center',
280 265 formatter: function(value, row, index) {
... ... @@ -284,7 +269,7 @@
284 269  
285 270 },
286 271 {
287   - field: 'shipTo',
  272 + field: 'customerCode',
288 273 title: '客户编码',
289 274 sortable:true
290 275 },
... ... @@ -293,12 +278,8 @@
293 278 title: '优先级'
294 279 },
295 280 {
296   - field: 'station',
297   - title: '发货站台',
298   - align: 'center',
299   - formatter: function(value, row, index) {
300   - return $.table.selectDictLabel(stations, value);
301   - },
  281 + field: 'route',
  282 + title: '路线',
302 283 sortable:true
303 284 },
304 285 {
... ... @@ -310,25 +291,6 @@
310 291 title: '总行数'
311 292 },
312 293 {
313   - field: 'remark',
314   - title: '备注'
315   - },
316   - {
317   - field: 'uploadremark',
318   - title: '上传备注',
319   - visible:false
320   - },
321   - {
322   - field: 'uploadTime',
323   - title: '上传时间',
324   - visible:false
325   - },
326   - {
327   - field: 'appointmentTime',
328   - title: '发货预约时间',
329   - visible:false
330   - },
331   - {
332 294 field: 'firstStatus',
333 295 title: '头状态',
334 296 formatter: function(value, row, index) {
... ... @@ -345,11 +307,6 @@
345 307 sortable:true
346 308 },
347 309 {
348   - field: 'uploadStatus',
349   - title: '上传状态',
350   - visible:false
351   - },
352   - {
353 310 field: 'created',
354 311 title: '创建时间',
355 312 sortable: true
... ... @@ -369,13 +326,6 @@
369 326 visible:false
370 327 },
371 328 {
372   - field: 'enable',
373   - title: '是否有效',
374   - formatter: function(value, row, index) {
375   - return $.table.selectDictLabel(datas, value);
376   - }
377   - },
378   - {
379 329 title: '操作',
380 330 align: 'center',
381 331 formatter: function (value, row, index) {
... ...
src/main/resources/templates/system/user/add.html
... ... @@ -71,6 +71,16 @@
71 71 </label>
72 72 </div>
73 73 </div>
  74 +
  75 + <div class="form-group">
  76 + <label class="col-sm-3 control-label">仓库:</label>
  77 + <div class="col-sm-8">
  78 + <label th:each="warehouse:${warehouseList}" class="checkbox-inline i-checks">
  79 + <input name="warehouseCode" type="checkbox" th:value="${warehouse.value}" th:text=" ${warehouse.name}" th:disabled="${warehouse.enable == false} ">
  80 + </label>
  81 + </div>
  82 + </div>
  83 +
74 84 <div class="form-group">
75 85 <label class="col-sm-3 control-label">角色:</label>
76 86 <div class="col-sm-8">
... ... @@ -188,6 +198,7 @@
188 198 var sex = $("#sex option:selected").val();
189 199 var enable = $("input[name='enable']").is(':checked') == true ? 1 : 0;
190 200 var roleIds = $.form.selectCheckeds("role");
  201 + var warehouseCodeList = $.form.selectCheckeds("warehouseCode");
191 202 var companyIdList = $.form.selectCheckeds("company");
192 203 $.ajax({
193 204 cache : true,
... ... @@ -204,6 +215,7 @@
204 215 "sex": sex,
205 216 "enable": enable,
206 217 "roleIds": roleIds,
  218 + "warehouseCodeList": warehouseCodeList,
207 219 "companyIdList": companyIdList
208 220 },
209 221 async : false,
... ...
src/main/resources/templates/system/user/edit.html
... ... @@ -66,6 +66,16 @@
66 66 </label>
67 67 </div>
68 68 </div>
  69 +
  70 + <div class="form-group">
  71 + <label class="col-sm-3 control-label">仓库:</label>
  72 + <div class="col-sm-8">
  73 + <label th:each="warehouse:${warehouses}" class="checkbox-inline i-checks">
  74 + <input name="warehouse" type="checkbox" th:value="${warehouse.code}" th:text="${warehouse.name}" th:checked="${warehouse.flag}" th:disabled="${warehouse.enable == false}">
  75 + </label>
  76 + </div>
  77 + </div>
  78 +
69 79 <div class="form-group">
70 80 <label class="col-sm-3 control-label">角色:</label>
71 81 <div class="col-sm-8">
... ... @@ -160,6 +170,7 @@
160 170 var sex = $("#sex option:selected").val();
161 171 var enable = $("input[name='enable']").is(':checked') == true ? 1 : 0;
162 172 var roleIds = $.form.selectCheckeds("role");
  173 + var warehouseCodeList = $.form.selectCheckeds("warehouse");
163 174 var companyIdList = $.form.selectCheckeds("company");
164 175 $.ajax({
165 176 cache : true,
... ... @@ -174,6 +185,7 @@
174 185 "sex": sex,
175 186 "enable": enable,
176 187 "roleIds": roleIds,
  188 + "warehouseCodeList": warehouseCodeList,
177 189 "companyIdList": companyIdList
178 190 },
179 191 async : false,
... ...