Commit 103f3918e8c457cc9e7ae2ac3a366bb800dc54dd
Merge branch 'develop' of http://172.16.29.40:8010/wms/wms2 into develop
Showing
18 changed files
with
344 additions
and
207 deletions
src/main/java/com/huaheng/pc/config/shipmentPreference/domain/ShipmentPreference.java
... | ... | @@ -74,7 +74,7 @@ public class ShipmentPreference implements Serializable { |
74 | 74 | */ |
75 | 75 | @TableField(value = "autoAssignLPN") |
76 | 76 | @ApiModelProperty(value="自动生成托盘号") |
77 | - private Integer autoAssignLPN; | |
77 | + private Boolean autoAssignLPN; | |
78 | 78 | |
79 | 79 | /** |
80 | 80 | * 允许越库 |
... | ... | @@ -95,7 +95,7 @@ public class ShipmentPreference implements Serializable { |
95 | 95 | */ |
96 | 96 | @TableField(value = "showInventoryQty") |
97 | 97 | @ApiModelProperty(value="显示库存数量") |
98 | - private Integer showInventoryQty; | |
98 | + private Boolean showInventoryQty; | |
99 | 99 | |
100 | 100 | |
101 | 101 | |
... | ... | @@ -104,28 +104,28 @@ public class ShipmentPreference implements Serializable { |
104 | 104 | */ |
105 | 105 | @TableField(value = "groupPickup") |
106 | 106 | @ApiModelProperty(value="RF组车收货") |
107 | - private Integer groupPickup; | |
107 | + private Boolean groupPickup; | |
108 | 108 | |
109 | 109 | /** |
110 | 110 | * 人工组盘 |
111 | 111 | */ |
112 | 112 | @TableField(value = "manuallyBuildLPN") |
113 | 113 | @ApiModelProperty(value="人工组盘") |
114 | - private Integer manuallyBuildLPN; | |
114 | + private Boolean manuallyBuildLPN; | |
115 | 115 | |
116 | 116 | /** |
117 | 117 | * RF逐件拣货 |
118 | 118 | */ |
119 | 119 | @TableField(value = "checkinByPiece") |
120 | 120 | @ApiModelProperty(value="RF逐件拣货") |
121 | - private Integer checkinByPiece; | |
121 | + private Boolean checkinByPiece; | |
122 | 122 | |
123 | 123 | /** |
124 | 124 | * RF快速拣货 |
125 | 125 | */ |
126 | 126 | @TableField(value = "allowQuickPickup") |
127 | 127 | @ApiModelProperty(value="RF快速拣货") |
128 | - private Integer allowQuickPickup; | |
128 | + private Boolean allowQuickPickup; | |
129 | 129 | |
130 | 130 | /** |
131 | 131 | * 创建时间 |
... | ... | @@ -364,23 +364,6 @@ public class ShipmentPreference implements Serializable { |
364 | 364 | this.allocationRule = allocationRule; |
365 | 365 | } |
366 | 366 | |
367 | - /** | |
368 | - * 获取自动生成托盘号 | |
369 | - * | |
370 | - * @return autoAssignLPN - 自动生成托盘号 | |
371 | - */ | |
372 | - public Integer getAutoAssignLPN() { | |
373 | - return autoAssignLPN; | |
374 | - } | |
375 | - | |
376 | - /** | |
377 | - * 设置自动生成托盘号 | |
378 | - * | |
379 | - * @param autoAssignLPN 自动生成托盘号 | |
380 | - */ | |
381 | - public void setAutoAssignLPN(Integer autoAssignLPN) { | |
382 | - this.autoAssignLPN = autoAssignLPN; | |
383 | - } | |
384 | 367 | |
385 | 368 | public Boolean getAllowCross() { |
386 | 369 | return allowCross; |
... | ... | @@ -398,95 +381,51 @@ public class ShipmentPreference implements Serializable { |
398 | 381 | this.allowQcCheckResult = allowQcCheckResult; |
399 | 382 | } |
400 | 383 | |
401 | - /** | |
402 | - * 获取显示库存数量 | |
403 | - * | |
404 | - * @return showInventoryQty - 显示库存数量 | |
405 | - */ | |
406 | - public Integer getShowInventoryQty() { | |
384 | + public Boolean getAutoAssignLPN() { | |
385 | + return autoAssignLPN; | |
386 | + } | |
387 | + | |
388 | + public void setAutoAssignLPN(Boolean autoAssignLPN) { | |
389 | + this.autoAssignLPN = autoAssignLPN; | |
390 | + } | |
391 | + | |
392 | + public Boolean getShowInventoryQty() { | |
407 | 393 | return showInventoryQty; |
408 | 394 | } |
409 | 395 | |
410 | - /** | |
411 | - * 设置显示库存数量 | |
412 | - * | |
413 | - * @param showInventoryQty 显示库存数量 | |
414 | - */ | |
415 | - public void setShowInventoryQty(Integer showInventoryQty) { | |
396 | + public void setShowInventoryQty(Boolean showInventoryQty) { | |
416 | 397 | this.showInventoryQty = showInventoryQty; |
417 | 398 | } |
418 | 399 | |
419 | - | |
420 | - /** | |
421 | - * 获取RF组车收货 | |
422 | - * | |
423 | - * @return groupPickup - RF组车收货 | |
424 | - */ | |
425 | - public Integer getGroupPickup() { | |
400 | + public Boolean getGroupPickup() { | |
426 | 401 | return groupPickup; |
427 | 402 | } |
428 | 403 | |
429 | - /** | |
430 | - * 设置RF组车收货 | |
431 | - * | |
432 | - * @param groupPickup RF组车收货 | |
433 | - */ | |
434 | - public void setGroupPickup(Integer groupPickup) { | |
404 | + public void setGroupPickup(Boolean groupPickup) { | |
435 | 405 | this.groupPickup = groupPickup; |
436 | 406 | } |
437 | 407 | |
438 | - /** | |
439 | - * 获取人工组盘 | |
440 | - * | |
441 | - * @return manuallyBuildLPN - 人工组盘 | |
442 | - */ | |
443 | - public Integer getManuallyBuildLPN() { | |
408 | + public Boolean getManuallyBuildLPN() { | |
444 | 409 | return manuallyBuildLPN; |
445 | 410 | } |
446 | 411 | |
447 | - /** | |
448 | - * 设置人工组盘 | |
449 | - * | |
450 | - * @param manuallyBuildLPN 人工组盘 | |
451 | - */ | |
452 | - public void setManuallyBuildLPN(Integer manuallyBuildLPN) { | |
412 | + public void setManuallyBuildLPN(Boolean manuallyBuildLPN) { | |
453 | 413 | this.manuallyBuildLPN = manuallyBuildLPN; |
454 | 414 | } |
455 | 415 | |
456 | - | |
457 | - /** | |
458 | - * 获取RF逐件拣货 | |
459 | - * | |
460 | - * @return checkinByPiece - RF逐件拣货 | |
461 | - */ | |
462 | - public Integer getCheckinByPiece() { | |
416 | + public Boolean getCheckinByPiece() { | |
463 | 417 | return checkinByPiece; |
464 | 418 | } |
465 | 419 | |
466 | - /** | |
467 | - * 设置RF逐件拣货 | |
468 | - * | |
469 | - * @param checkinByPiece RF逐件拣货 | |
470 | - */ | |
471 | - public void setCheckinByPiece(Integer checkinByPiece) { | |
420 | + public void setCheckinByPiece(Boolean checkinByPiece) { | |
472 | 421 | this.checkinByPiece = checkinByPiece; |
473 | 422 | } |
474 | 423 | |
475 | - /** | |
476 | - * 获取RF快速拣货 | |
477 | - * | |
478 | - * @return allowQuickPickup - RF快速拣货 | |
479 | - */ | |
480 | - public Integer getAllowQuickPickup() { | |
424 | + public Boolean getAllowQuickPickup() { | |
481 | 425 | return allowQuickPickup; |
482 | 426 | } |
483 | 427 | |
484 | - /** | |
485 | - * 设置RF快速拣货 | |
486 | - * | |
487 | - * @param allowQuickPickup RF快速拣货 | |
488 | - */ | |
489 | - public void setAllowQuickPickup(Integer allowQuickPickup) { | |
428 | + public void setAllowQuickPickup(Boolean allowQuickPickup) { | |
490 | 429 | this.allowQuickPickup = allowQuickPickup; |
491 | 430 | } |
492 | 431 | |
... | ... |
src/main/java/com/huaheng/pc/receipt/receiptContainerHeader/service/ReceiptContainerHeaderServiceImpl.java
... | ... | @@ -29,7 +29,11 @@ import org.springframework.stereotype.Service; |
29 | 29 | import org.springframework.transaction.annotation.Transactional; |
30 | 30 | |
31 | 31 | import javax.annotation.Resource; |
32 | +import java.io.PushbackInputStream; | |
32 | 33 | import java.math.BigDecimal; |
34 | +import java.text.MessageFormat; | |
35 | +import java.util.Calendar; | |
36 | +import java.util.Date; | |
33 | 37 | import java.util.List; |
34 | 38 | @Service |
35 | 39 | public class ReceiptContainerHeaderServiceImpl extends ServiceImpl<ReceiptContainerHeaderMapper, ReceiptContainerHeader> implements ReceiptContainerHeaderService{ |
... | ... | @@ -63,9 +67,15 @@ public class ReceiptContainerHeaderServiceImpl extends ServiceImpl<ReceiptContai |
63 | 67 | @Transactional |
64 | 68 | public AjaxResult saveCountain(String receiptCode, String containerCode, Integer receiptDetailId, |
65 | 69 | String locationCode, Integer qty, String locatingRule) { |
70 | + ReceiptDetail detail = receiptDetailService.getById(receiptDetailId); | |
66 | 71 | //检查容器编码合法性 |
67 | - Integer taskType = checkContainer(containerCode); | |
68 | - if (taskType == 0){ throw new ServiceException("容器状态未知"); } | |
72 | + Integer taskType = checkContainer(containerCode, detail.getMaterialCode()); | |
73 | + if (taskType == 1){ | |
74 | + containerCode = createContainer(); | |
75 | + taskType = 100; | |
76 | + }else { | |
77 | + if (taskType == 0){ throw new ServiceException("容器状态未知"); } | |
78 | + } | |
69 | 79 | //检查库位编码合法性 |
70 | 80 | if (checkLocationCode(locationCode, containerCode, taskType) == true) { |
71 | 81 | locationService.updateStatus(locationCode, "lock"); |
... | ... | @@ -177,13 +187,23 @@ public class ReceiptContainerHeaderServiceImpl extends ServiceImpl<ReceiptContai |
177 | 187 | /** |
178 | 188 | * 检查容器编码合法性 |
179 | 189 | * @param containerCode |
180 | - * @return | |
190 | + * @param materialCode | |
191 | + * @return 返回容器状态,如果需自动生成容器编码返回1 | |
181 | 192 | */ |
182 | 193 | @Transactional |
183 | - public Integer checkContainer(String containerCode) { | |
194 | + public Integer checkContainer(String containerCode, String materialCode) { | |
195 | + | |
196 | + if (StringUtils.isEmpty(containerCode)){ | |
197 | + LambdaQueryWrapper<Material> lambdaQueryWrapper = Wrappers.lambdaQuery(); | |
198 | + lambdaQueryWrapper.eq(Material::getCode, materialCode); | |
199 | + Material material = materialService.getOne(lambdaQueryWrapper); | |
200 | + if (material.getAutoGenSerialNum() == 0){ | |
201 | + return 1; //需自动生成容器编码 | |
202 | + } else { | |
203 | + throw new ServiceException("容器不能为空"); | |
204 | + } | |
205 | + } | |
184 | 206 | |
185 | - if (StringUtils.isEmpty(containerCode)) | |
186 | - throw new ServiceException("容器不能为空"); | |
187 | 207 | |
188 | 208 | LambdaQueryWrapper<Container> lambda = Wrappers.lambdaQuery(); |
189 | 209 | lambda.eq(Container::getCode, containerCode); |
... | ... | @@ -341,5 +361,30 @@ public class ReceiptContainerHeaderServiceImpl extends ServiceImpl<ReceiptContai |
341 | 361 | throw new ServiceException("更新入库组盘详情失败"); |
342 | 362 | } |
343 | 363 | } |
364 | + | |
365 | + } | |
366 | + | |
367 | + | |
368 | + /** | |
369 | + * 自动生成容器编码 | |
370 | + * @return 容器编码 | |
371 | + */ | |
372 | + public String createContainer(){ | |
373 | + String code = MessageFormat.format("{0}{1}", | |
374 | + "LS", | |
375 | + String.format("%d", Calendar.getInstance().getTimeInMillis())); | |
376 | + Container container = new Container(); | |
377 | + container.setCode(code); | |
378 | + container.setWarehouseCode(ShiroUtils.getWarehouseCode()); | |
379 | + container.setCompanyCode(ShiroUtils.getCompanyCodeList().get(0)); | |
380 | + container.setContainerType("LS"); | |
381 | + container.setCreatedBy(ShiroUtils.getLoginName()); | |
382 | + container.setLastUpdated(new Date()); | |
383 | + container.setLastUpdatedBy(ShiroUtils.getLoginName()); | |
384 | + container.setStatus("empty"); | |
385 | + if (!containerService.save(container)){ | |
386 | + throw new ServiceException("新增容器失败"); | |
387 | + } | |
388 | + return code; | |
344 | 389 | } |
345 | 390 | } |
... | ... |
src/main/java/com/huaheng/pc/receipt/receiving/service/ReceivingService.java
... | ... | @@ -88,7 +88,7 @@ public class ReceivingService { |
88 | 88 | throw new ServiceException("该入库组盘已生成任务不能重新定位"); |
89 | 89 | } |
90 | 90 | //如果入库组盘表中有目标库位说明已经指定 |
91 | - if (StringUtils.isNotEmpty(receiptContainerHeader.getToLocation())){throw new ServiceException("该入库组盘已有库位,不需要定位;如需定位请先取消定位");} | |
91 | + if (StringUtils.isNotEmpty(receiptContainerHeader.getToLocation())){return true;} | |
92 | 92 | String locatingRule = receiptContainerHeader.getLocatingRule(); //定位规则 |
93 | 93 | if (StringUtils.isNotEmpty(locatingRule)){ |
94 | 94 | //入库组盘头表中定位规则不为空时执行 |
... | ... | @@ -102,7 +102,7 @@ public class ReceivingService { |
102 | 102 | Material material = materialService.getOne(materialLambda); |
103 | 103 | locatingRule = material.getLocatingRule(); |
104 | 104 | |
105 | - if (locatingRule == null){ | |
105 | + if (StringUtils.isEmpty(locatingRule)){ | |
106 | 106 | //物料表中定位规则为空时,查询物料类别 |
107 | 107 | LambdaQueryWrapper<MaterialType> materialTypeLambda = Wrappers.lambdaQuery(); |
108 | 108 | materialTypeLambda.eq(MaterialType::getCode, material.getType()); |
... | ... |
src/main/java/com/huaheng/pc/task/taskHeader/controller/TaskHeaderController.java
... | ... | @@ -71,7 +71,8 @@ public class TaskHeaderController extends BaseController { |
71 | 71 | .eq(StringUtils.isNotEmpty(taskHeader.getContainerCode()),TaskHeader::getContainerCode,taskHeader.getContainerCode()) |
72 | 72 | .eq(StringUtils.isNotEmpty(taskHeader.getToLocation()),TaskHeader::getToLocation,taskHeader.getToLocation()) |
73 | 73 | .gt(StringUtils.isNotEmpty(createdBegin),TaskHeader::getCreated,createdBegin) |
74 | - .lt(StringUtils.isNotEmpty(createdEnd),TaskHeader::getCreated,createdEnd); | |
74 | + .lt(StringUtils.isNotEmpty(createdEnd),TaskHeader::getCreated,createdEnd) | |
75 | + .orderByDesc(TaskHeader::getId); | |
75 | 76 | |
76 | 77 | PageDomain pageDomain = TableSupport.buildPageRequest(); |
77 | 78 | Integer pageNum = pageDomain.getPageNum(); |
... | ... |
src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java
... | ... | @@ -64,8 +64,6 @@ import javax.annotation.Resource; |
64 | 64 | @Service |
65 | 65 | public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHeader> implements TaskHeaderService { |
66 | 66 | |
67 | - | |
68 | - | |
69 | 67 | @Resource |
70 | 68 | private ShipmentContainerHeaderService shipmentContainerHeaderService; |
71 | 69 | @Resource |
... | ... | @@ -150,7 +148,7 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea |
150 | 148 | ReceiptContainerHeader record =new ReceiptContainerHeader(); |
151 | 149 | record.setStatus((short)0); |
152 | 150 | record.setId(taskHeader.getAllocationHeadId()); |
153 | - receiptContainerHeaderService.updateById(record); | |
151 | + if (receiptContainerHeaderService.updateById(record)){throw new ServiceException("回滚组盘明细失败");} | |
154 | 152 | } |
155 | 153 | //根据任务类型来更新货箱状态 |
156 | 154 | //修改关联的货箱状态 |
... | ... | @@ -602,8 +600,8 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea |
602 | 600 | |
603 | 601 | //修改入库单状态 |
604 | 602 | ReceiptHeader receiptHeader = new ReceiptHeader(); |
605 | - receiptHeader.setFirstStatus(300); | |
606 | - receiptHeader.setLastStatus(300); | |
603 | + receiptHeader.setFirstStatus(800); | |
604 | + receiptHeader.setLastStatus(800); | |
607 | 605 | receiptHeader.setLastUpdatedBy(ShiroUtils.getLoginName()); |
608 | 606 | receiptHeader.setLastUpdated(new Date()); |
609 | 607 | LambdaUpdateWrapper<ReceiptHeader> receiptHeaderLambdaUpdateWrapper = Wrappers.lambdaUpdate(); |
... | ... | @@ -1112,6 +1110,7 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea |
1112 | 1110 | } |
1113 | 1111 | //添加任务主表 |
1114 | 1112 | TaskHeader task = new TaskHeader(); |
1113 | + task.setAllocationHeadId(receiptContainerHeader.getId()); | |
1115 | 1114 | task.setInternalTaskType(100); |
1116 | 1115 | task.setWarehouseCode(receiptContainerHeader.getWarehouseCode()); |
1117 | 1116 | task.setCompanyCode(receiptContainerHeader.getCompanyCode()); |
... | ... |
src/main/resources/mybatis/config/ShipmentPreferenceMapper.xml
... | ... | @@ -11,14 +11,14 @@ |
11 | 11 | <result column="shipmentPickingRule" jdbcType="VARCHAR" property="shipmentPickingRule" /> |
12 | 12 | <result column="shipmentPickingLocRange" jdbcType="VARCHAR" property="shipmentPickingLocRange" /> |
13 | 13 | <result column="allocationRule" jdbcType="VARCHAR" property="allocationRule" /> |
14 | - <result column="autoAssignLPN" jdbcType="INTEGER" property="autoAssignLPN" /> | |
14 | + <result column="autoAssignLPN" jdbcType="BIT" property="autoAssignLPN" /> | |
15 | 15 | <result column="allowCross" jdbcType="BIT" property="allowCross" /> |
16 | 16 | <result column="allowQcCheckResult" jdbcType="BIT" property="allowQcCheckResult" /> |
17 | - <result column="showInventoryQty" jdbcType="INTEGER" property="showInventoryQty" /> | |
18 | - <result column="groupPickup" jdbcType="INTEGER" property="groupPickup" /> | |
19 | - <result column="manuallyBuildLPN" jdbcType="INTEGER" property="manuallyBuildLPN" /> | |
20 | - <result column="checkinByPiece" jdbcType="INTEGER" property="checkinByPiece" /> | |
21 | - <result column="allowQuickPickup" jdbcType="INTEGER" property="allowQuickPickup" /> | |
17 | + <result column="showInventoryQty" jdbcType="BIT" property="showInventoryQty" /> | |
18 | + <result column="groupPickup" jdbcType="BIT" property="groupPickup" /> | |
19 | + <result column="manuallyBuildLPN" jdbcType="BIT" property="manuallyBuildLPN" /> | |
20 | + <result column="checkinByPiece" jdbcType="BIT" property="checkinByPiece" /> | |
21 | + <result column="allowQuickPickup" jdbcType="BIT" property="allowQuickPickup" /> | |
22 | 22 | <result column="created" jdbcType="TIMESTAMP" property="created" /> |
23 | 23 | <result column="createdBy" jdbcType="VARCHAR" property="createdBy" /> |
24 | 24 | <result column="lastUpdated" jdbcType="TIMESTAMP" property="lastUpdated" /> |
... | ... |
src/main/resources/templates/config/containerType/add.html
... | ... | @@ -155,21 +155,17 @@ |
155 | 155 | <div th:include="include::footer"></div> |
156 | 156 | <script type="text/javascript"> |
157 | 157 | var prefix = ctx + "config/containerType"; |
158 | - /*$("#form-containerType-add").validate({ | |
159 | - rules:{ | |
160 | - code:{ | |
161 | - required:true | |
158 | + | |
159 | + $("#form-containerType-add").validate({ | |
160 | + rules:{ | |
161 | + code:{ | |
162 | + required:true | |
162 | 163 | }, |
163 | - fillPercent:{ | |
164 | - range:[0,100] | |
164 | + fillPercent:{ | |
165 | + required:true, | |
166 | + range:[0,100] | |
165 | 167 | } |
166 | 168 | }, |
167 | - submitHandler: function(form) { | |
168 | - // $.operate.save(prefix + "/add", $('#form-containerType-add').serialize()); | |
169 | - var tableValue = $.common.getTableValue("#form-containerType-add"); | |
170 | - $.operate.save(prefix + "/add", tableValue); | |
171 | - }*/ | |
172 | - $("#form-containerType-add").validate({ | |
173 | 169 | submitHandler: function(form) { |
174 | 170 | $.ajax({ |
175 | 171 | cache : true, |
... | ... |
src/main/resources/templates/config/material/add.html
... | ... | @@ -60,37 +60,55 @@ |
60 | 60 | <div class="form-group"> |
61 | 61 | <label class="col-sm-3 control-label">定位规则:</label> |
62 | 62 | <div class="col-sm-8"> |
63 | - <input id="locatingRule" name="locatingRule" class="form-control" type="text"> | |
63 | + <select id="locatingRule" name="locatingRule" class="form-control" th:with="list=${@FilterConfigDetailService.queryFilterConfigDetail('入库')}"> | |
64 | + <option value="">请选择</option> | |
65 | + <option th:each="flow : ${list}" th:text="${flow['description']}" th:value="${flow['code']}"></option> | |
66 | + </select> | |
64 | 67 | </div> |
65 | 68 | </div> |
66 | 69 | <div class="form-group"> |
67 | 70 | <label class="col-sm-3 control-label">分配规则:</label> |
68 | 71 | <div class="col-sm-8"> |
69 | - <input id="allocationRule" name="allocationRule" class="form-control" type="text"> | |
72 | + <select id="allocationRule" name="allocationRule" class="form-control" th:with="list=${@FilterConfigDetailService.queryFilterConfigDetail('分配规则')}"> | |
73 | + <option value="">请选择</option> | |
74 | + <option th:each="flow : ${list}" th:text="${flow['description']}" th:value="${flow['code']}"></option> | |
75 | + </select> | |
70 | 76 | </div> |
71 | 77 | </div> |
72 | 78 | <div class="form-group"> |
73 | 79 | <label class="col-sm-3 control-label">补货规则:</label> |
74 | 80 | <div class="col-sm-8"> |
75 | - <input id="replenishmentRule" name="replenishmentRule" class="form-control" type="text"> | |
81 | + <select id="replenishmentRule" name="replenishmentRule" class="form-control" th:with="list=${@FilterConfigDetailService.queryFilterConfigDetail('补货规则')}"> | |
82 | + <option value="">请选择</option> | |
83 | + <option th:each="flow : ${list}" th:text="${flow['description']}" th:value="${flow['code']}"></option> | |
84 | + </select> | |
76 | 85 | </div> |
77 | 86 | </div> |
78 | 87 | <div class="form-group"> |
79 | 88 | <label class="col-sm-3 control-label">空货位规则:</label> |
80 | 89 | <div class="col-sm-8"> |
81 | - <input id="emptyLocRule" name="emptyLocRule" class="form-control" type="text"> | |
90 | + <select id="emptyLocRule" name="emptyLocRule" class="form-control" th:with="list=${@FilterConfigDetailService.queryFilterConfigDetail('空货位规则')}"> | |
91 | + <option value="">请选择</option> | |
92 | + <option th:each="flow : ${list}" th:text="${flow['description']}" th:value="${flow['code']}"></option> | |
93 | + </select> | |
82 | 94 | </div> |
83 | 95 | </div> |
84 | 96 | <div class="form-group"> |
85 | - <label class="col-sm-3 control-label">入库规则</label> | |
97 | + <label class="col-sm-3 control-label">入库规则:</label> | |
86 | 98 | <div class="col-sm-8"> |
87 | - <input id="receivingFlow" name="receivingFlow" class="form-control" type="text"> | |
99 | + <select id="receivingFlow" name="receivingFlow" class="form-control" th:with="list=${@StatusFlow.flowList('入库单')}"> | |
100 | + <option value="">请选择</option> | |
101 | + <option th:each="flow : ${list}" th:text="${flow['name']}" th:value="${flow['code']}"></option> | |
102 | + </select> | |
88 | 103 | </div> |
89 | 104 | </div> |
90 | 105 | <div class="form-group"> |
91 | 106 | <label class="col-sm-3 control-label">出库流程:</label> |
92 | 107 | <div class="col-sm-8"> |
93 | - <input id="shippingFlow" name="shippingFlow" class="form-control" type="text"> | |
108 | + <select id="shippingFlow" name="shippingFlow" class="form-control" th:with="list=${@StatusFlow.flowList('出库单')}"> | |
109 | + <option value="">请选择</option> | |
110 | + <option th:each="flow : ${list}" th:text="${flow['name']}" th:value="${flow['code']}"></option> | |
111 | + </select> | |
94 | 112 | </div> |
95 | 113 | </div> |
96 | 114 | <div class="form-group"> |
... | ... | @@ -108,7 +126,11 @@ |
108 | 126 | <div class="form-group"> |
109 | 127 | <label class="col-sm-3 control-label">自动生成序列号:</label> |
110 | 128 | <div class="col-sm-8"> |
111 | - <input id="autoGenSerialNum" name="autoGenSerialNum" class="form-control" type="text"> | |
129 | + <select id="autoGenSerialNum" name="autoGenSerialNum" class="form-control"> | |
130 | + <option value="">请选择</option> | |
131 | + <option value="0">是</option> | |
132 | + <option value="1">否</option> | |
133 | + </select> | |
112 | 134 | </div> |
113 | 135 | </div> |
114 | 136 | <div class="form-group"> |
... | ... | @@ -257,8 +279,15 @@ |
257 | 279 | // var tableValue = $.common.getTableValue("#form-material-add"); |
258 | 280 | // $.operate.save(prefix + "/add", tableValue); |
259 | 281 | var tableValue = $("#form-material-add").serialize(); |
260 | - tableValue = formValueReplace(tableValue, "companyCode", $("#companyCode option:selected").val()) | |
282 | + tableValue = formValueReplace(tableValue, "companyCode", $("#companyCode option:selected").val()); | |
261 | 283 | tableValue = formValueReplace(tableValue, "enable", $("input[name='enable']").is(':checked')); |
284 | + tableValue = formValueReplace(tableValue, "receivingFlow", $("#receivingFlow option:selected").val()); | |
285 | + tableValue = formValueReplace(tableValue, "shippingFlow", $("#shippingFlow option:selected").val()); | |
286 | + tableValue = formValueReplace(tableValue, "locatingRule", $("#locatingRule option:selected").val()); | |
287 | + tableValue = formValueReplace(tableValue, "allocationRule", $("#allocationRule option:selected").val()); | |
288 | + tableValue = formValueReplace(tableValue, "replenishmentRule", $("#replenishmentRule option:selected").val()); | |
289 | + tableValue = formValueReplace(tableValue, "emptyLocRule", $("#emptyLocRule option:selected").val()); | |
290 | + tableValue = formValueReplace(tableValue, "pickingRule", $("#pickingRule option:selected").val()); | |
262 | 291 | $.operate.save(prefix + "/add", tableValue); |
263 | 292 | } |
264 | 293 | }); |
... | ... |
src/main/resources/templates/config/shipmentPreference/add.html
... | ... | @@ -24,9 +24,9 @@ |
24 | 24 | </div> |
25 | 25 | </div> |
26 | 26 | <div class="form-group"> |
27 | - <label class="col-sm-3 control-label">自动生成托盘号:</label> | |
27 | + <label class="col-sm-3 control-label">库存分配规则:</label> | |
28 | 28 | <div class="col-sm-8"> |
29 | - <input id="autoAssignLPN" name="autoAssignLPN" class="form-control" type="text"> | |
29 | + <input id="allocationRule" name="allocationRule" class="form-control" type="text"> | |
30 | 30 | </div> |
31 | 31 | </div> |
32 | 32 | <div class="form-group"> |
... | ... | @@ -42,67 +42,99 @@ |
42 | 42 | </div> |
43 | 43 | </div> |
44 | 44 | <div class="form-group"> |
45 | - <label class="col-sm-3 control-label">库存分配规则:</label> | |
45 | + <label class="col-sm-3 control-label">自动生成托盘号:</label> | |
46 | 46 | <div class="col-sm-8"> |
47 | - <input id="allocationRule" name="allocationRule" class="form-control" type="text"> | |
47 | + <div class="onoffswitch"> | |
48 | + <input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="autoAssignLPN" name="autoAssignLPN"> | |
49 | + <label class="onoffswitch-label" for="autoAssignLPN"> | |
50 | + <span class="onoffswitch-inner"></span> | |
51 | + <span class="onoffswitch-switch"></span> | |
52 | + </label> | |
53 | + </div> | |
48 | 54 | </div> |
49 | 55 | </div> |
50 | 56 | <div class="form-group"> |
51 | 57 | <label class="col-sm-3 control-label">允许越库:</label> |
52 | 58 | <div class="col-sm-8"> |
53 | - <div class="radio radio-info radio-inline" style="transform: scale(1.1, 1.1);"> | |
54 | - <input type="radio" id="allowCross1" name="allowCross" value="true" checked="checked" | |
55 | - class="radio_select"> | |
56 | - <label for="allowCross1">是</label> | |
57 | - </div> | |
58 | - <div class="radio radio-danger radio-inline " style="transform: scale(1.1, 1.1);"> | |
59 | - <input type="radio" id="allowCross2" name="allowCross" value="false"> | |
60 | - <label for="allowCross2">否</label> | |
59 | + <div class="onoffswitch"> | |
60 | + <input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="allowCross" name="allowCross"> | |
61 | + <label class="onoffswitch-label" for="allowCross"> | |
62 | + <span class="onoffswitch-inner"></span> | |
63 | + <span class="onoffswitch-switch"></span> | |
64 | + </label> | |
61 | 65 | </div> |
62 | 66 | </div> |
63 | 67 | </div> |
64 | 68 | <div class="form-group"> |
65 | 69 | <label class="col-sm-3 control-label">允许未质检的出库:</label> |
66 | 70 | <div class="col-sm-8"> |
67 | - <div class="radio radio-info radio-inline" style="transform: scale(1.1, 1.1);"> | |
68 | - <input type="radio" id="allowQcCheckResult1" name="allowQcCheckResult" value="true" checked="checked" | |
69 | - class="radio_select"> | |
70 | - <label for="allowQcCheckResult1">是</label> | |
71 | - </div> | |
72 | - <div class="radio radio-danger radio-inline " style="transform: scale(1.1, 1.1);"> | |
73 | - <input type="radio" id="allowQcCheckResult2" name="allowQcCheckResult" value="false"> | |
74 | - <label for="allowQcCheckResult2">否</label> | |
71 | + <div class="onoffswitch"> | |
72 | + <input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="allowQcCheckResult" name="allowQcCheckResult"> | |
73 | + <label class="onoffswitch-label" for="allowQcCheckResult"> | |
74 | + <span class="onoffswitch-inner"></span> | |
75 | + <span class="onoffswitch-switch"></span> | |
76 | + </label> | |
75 | 77 | </div> |
76 | 78 | </div> |
77 | 79 | </div> |
78 | 80 | <div class="form-group"> |
79 | 81 | <label class="col-sm-3 control-label">显示库存数量:</label> |
80 | 82 | <div class="col-sm-8"> |
81 | - <input id="showInventoryQty" name="showInventoryQty" class="form-control" type="text"> | |
83 | + <div class="onoffswitch"> | |
84 | + <input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="showInventoryQty" name="showInventoryQty"> | |
85 | + <label class="onoffswitch-label" for="showInventoryQty"> | |
86 | + <span class="onoffswitch-inner"></span> | |
87 | + <span class="onoffswitch-switch"></span> | |
88 | + </label> | |
89 | + </div> | |
82 | 90 | </div> |
83 | 91 | </div> |
84 | 92 | <div class="form-group"> |
85 | 93 | <label class="col-sm-3 control-label">RF组车收货:</label> |
86 | 94 | <div class="col-sm-8"> |
87 | - <input id="groupPutaway" name="groupPutaway" class="form-control" type="text"> | |
95 | + <div class="onoffswitch"> | |
96 | + <input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="groupPutaway" name="groupPutaway"> | |
97 | + <label class="onoffswitch-label" for="groupPutaway"> | |
98 | + <span class="onoffswitch-inner"></span> | |
99 | + <span class="onoffswitch-switch"></span> | |
100 | + </label> | |
101 | + </div> | |
88 | 102 | </div> |
89 | 103 | </div> |
90 | 104 | <div class="form-group"> |
91 | 105 | <label class="col-sm-3 control-label">人工组盘:</label> |
92 | 106 | <div class="col-sm-8"> |
93 | - <input id="manuallyBuildLPN" name="manuallyBuildLPN" class="form-control" type="text"> | |
107 | + <div class="onoffswitch"> | |
108 | + <input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="manuallyBuildLPN" name="manuallyBuildLPN"> | |
109 | + <label class="onoffswitch-label" for="manuallyBuildLPN"> | |
110 | + <span class="onoffswitch-inner"></span> | |
111 | + <span class="onoffswitch-switch"></span> | |
112 | + </label> | |
113 | + </div> | |
94 | 114 | </div> |
95 | 115 | </div> |
96 | 116 | <div class="form-group"> |
97 | 117 | <label class="col-sm-3 control-label">RF逐件拣货:</label> |
98 | 118 | <div class="col-sm-8"> |
99 | - <input id="checkinByPiece" name="checkinByPiece" class="form-control" type="text"> | |
119 | + <div class="onoffswitch"> | |
120 | + <input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="checkinByPiece" name="checkinByPiece"> | |
121 | + <label class="onoffswitch-label" for="checkinByPiece"> | |
122 | + <span class="onoffswitch-inner"></span> | |
123 | + <span class="onoffswitch-switch"></span> | |
124 | + </label> | |
125 | + </div> | |
100 | 126 | </div> |
101 | 127 | </div> |
102 | 128 | <div class="form-group"> |
103 | 129 | <label class="col-sm-3 control-label">RF快速拣货:</label> |
104 | 130 | <div class="col-sm-8"> |
105 | - <input id="allowQuickPickup" name="allowQuickPickup" class="form-control" type="text"> | |
131 | + <div class="onoffswitch"> | |
132 | + <input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="allowQuickPickup" name="allowQuickPickup"> | |
133 | + <label class="onoffswitch-label" for="allowQuickPickup"> | |
134 | + <span class="onoffswitch-inner"></span> | |
135 | + <span class="onoffswitch-switch"></span> | |
136 | + </label> | |
137 | + </div> | |
106 | 138 | </div> |
107 | 139 | </div> |
108 | 140 | <!--<div class="form-group"> |
... | ... | @@ -242,6 +274,14 @@ |
242 | 274 | }, |
243 | 275 | submitHandler: function(form) { |
244 | 276 | var tableValue = $.common.getTableValue("#form-shipmentPreference-add"); |
277 | + tableValue = formValueReplace(tableValue, "autoAssignLPN", $("input[name='autoAssignLPN']").is(':checked')); | |
278 | + tableValue = formValueReplace(tableValue, "allowCross", $("input[name='allowCross']").is(':checked')); | |
279 | + tableValue = formValueReplace(tableValue, "allowQcCheckResult", $("input[name='allowQcCheckResult']").is(':checked')); | |
280 | + tableValue = formValueReplace(tableValue, "showInventoryQty", $("input[name='showInventoryQty']").is(':checked')); | |
281 | + tableValue = formValueReplace(tableValue, "groupPickup", $("input[name='groupPickup']").is(':checked')); | |
282 | + tableValue = formValueReplace(tableValue, "manuallyBuildLPN", $("input[name='manuallyBuildLPN']").is(':checked')); | |
283 | + tableValue = formValueReplace(tableValue, "checkinByPiece", $("input[name='checkinByPiece']").is(':checked')); | |
284 | + tableValue = formValueReplace(tableValue, "allowQuickPickup", $("input[name='allowQuickPickup']").is(':checked')); | |
245 | 285 | $.operate.save(prefix + "/add", tableValue); |
246 | 286 | } |
247 | 287 | }); |
... | ... |
src/main/resources/templates/config/shipmentPreference/edit.html
... | ... | @@ -25,85 +25,117 @@ |
25 | 25 | </div> |
26 | 26 | </div> |
27 | 27 | <div class="form-group"> |
28 | - <label class="col-sm-3 control-label">拣货规则:</label> | |
28 | + <label class="col-sm-3 control-label">库存分配规则:</label> | |
29 | 29 | <div class="col-sm-8"> |
30 | - <input id="shipmentPickingRule" name="shipmentPickingRule" class="form-control" type="text" th:field="*{shipmentPickingRule}"> | |
30 | + <input id="allocationRule" name="allocationRule" class="form-control" type="text" th:field="*{allocationRule}"> | |
31 | 31 | </div> |
32 | 32 | </div> |
33 | 33 | <div class="form-group"> |
34 | - <label class="col-sm-3 control-label">拣货库位范围规则:</label> | |
34 | + <label class="col-sm-3 control-label">拣货规则:</label> | |
35 | 35 | <div class="col-sm-8"> |
36 | - <input id="shipmentPickingLocRange" name="shipmentPickingLocRange" class="form-control" type="text" th:field="*{shipmentPickingLocRange}"> | |
36 | + <input id="shipmentPickingRule" name="shipmentPickingRule" class="form-control" type="text" th:field="*{shipmentPickingRule}"> | |
37 | 37 | </div> |
38 | 38 | </div> |
39 | 39 | <div class="form-group"> |
40 | - <label class="col-sm-3 control-label">库存分配规则:</label> | |
40 | + <label class="col-sm-3 control-label">拣货库位范围规则:</label> | |
41 | 41 | <div class="col-sm-8"> |
42 | - <input id="allocationRule" name="allocationRule" class="form-control" type="text" th:field="*{allocationRule}"> | |
42 | + <input id="shipmentPickingLocRange" name="shipmentPickingLocRange" class="form-control" type="text" th:field="*{shipmentPickingLocRange}"> | |
43 | 43 | </div> |
44 | 44 | </div> |
45 | 45 | <div class="form-group"> |
46 | 46 | <label class="col-sm-3 control-label">自动生成托盘号:</label> |
47 | 47 | <div class="col-sm-8"> |
48 | - <input id="autoAssignLPN" name="autoAssignLPN" class="form-control" type="text" th:field="*{autoAssignLPN}"> | |
48 | + <div class="onoffswitch"> | |
49 | + <input type="checkbox" th:checked="*{autoAssignLPN}" class="onoffswitch-checkbox" id="autoAssignLPN" name="autoAssignLPN"> | |
50 | + <label class="onoffswitch-label" for="autoAssignLPN"> | |
51 | + <span class="onoffswitch-inner"></span> | |
52 | + <span class="onoffswitch-switch"></span> | |
53 | + </label> | |
54 | + </div> | |
49 | 55 | </div> |
50 | 56 | </div> |
51 | 57 | <div class="form-group"> |
52 | 58 | <label class="col-sm-3 control-label">允许越库:</label> |
53 | 59 | <div class="col-sm-8"> |
54 | - <div class="radio radio-info radio-inline" style="transform: scale(1.1, 1.1);"> | |
55 | - <input type="radio" id="allowCross1" name="allowCross" value="true" th:field="*{allowCross}" | |
56 | - class="radio_select"> | |
57 | - <label for="allowCross1">是</label> | |
58 | - </div> | |
59 | - <div class="radio radio-danger radio-inline " style="transform: scale(1.1, 1.1);"> | |
60 | - <input type="radio" id="allowCross2" name="allowCross" value="false" th:field="*{allowCross}"> | |
61 | - <label for="allowCross2">否</label> | |
60 | + <div class="onoffswitch"> | |
61 | + <input type="checkbox" th:checked="*{allowCross}" class="onoffswitch-checkbox" id="allowCross" name="allowCross"> | |
62 | + <label class="onoffswitch-label" for="allowCross"> | |
63 | + <span class="onoffswitch-inner"></span> | |
64 | + <span class="onoffswitch-switch"></span> | |
65 | + </label> | |
62 | 66 | </div> |
63 | 67 | </div> |
64 | 68 | </div> |
65 | 69 | <div class="form-group"> |
66 | 70 | <label class="col-sm-3 control-label">允许未质检的出库:</label> |
67 | 71 | <div class="col-sm-8"> |
68 | - <div class="radio radio-info radio-inline" style="transform: scale(1.1, 1.1);"> | |
69 | - <input type="radio" id="allowQcCheckResult1" name="allowQcCheckResult" value="true" th:field="*{allowQcCheckResult}" | |
70 | - class="radio_select"> | |
71 | - <label for="allowQcCheckResult1">是</label> | |
72 | - </div> | |
73 | - <div class="radio radio-danger radio-inline " style="transform: scale(1.1, 1.1);"> | |
74 | - <input type="radio" id="allowQcCheckResult2" name="allowQcCheckResult" value="false" th:field="*{allowQcCheckResult}"> | |
75 | - <label for="allowQcCheckResult2">否</label> | |
72 | + <div class="onoffswitch"> | |
73 | + <input type="checkbox" th:checked="*{allowQcCheckResult}" class="onoffswitch-checkbox" id="allowQcCheckResult" name="allowQcCheckResult"> | |
74 | + <label class="onoffswitch-label" for="allowQcCheckResult"> | |
75 | + <span class="onoffswitch-inner"></span> | |
76 | + <span class="onoffswitch-switch"></span> | |
77 | + </label> | |
76 | 78 | </div> |
77 | 79 | </div> |
78 | 80 | </div> |
79 | 81 | <div class="form-group"> |
80 | 82 | <label class="col-sm-3 control-label">显示库存数量:</label> |
81 | 83 | <div class="col-sm-8"> |
82 | - <input id="showInventoryQty" name="showInventoryQty" class="form-control" type="text" th:field="*{showInventoryQty}"> | |
84 | + <div class="onoffswitch"> | |
85 | + <input type="checkbox" th:checked="*{showInventoryQty}" class="onoffswitch-checkbox" id="showInventoryQty" name="showInventoryQty"> | |
86 | + <label class="onoffswitch-label" for="showInventoryQty"> | |
87 | + <span class="onoffswitch-inner"></span> | |
88 | + <span class="onoffswitch-switch"></span> | |
89 | + </label> | |
90 | + </div> | |
83 | 91 | </div> |
84 | 92 | </div> |
85 | 93 | <div class="form-group"> |
86 | 94 | <label class="col-sm-3 control-label">RF组车收货:</label> |
87 | 95 | <div class="col-sm-8"> |
88 | - <input id="groupPickup" name="groupPickup" class="form-control" type="text" th:field="*{groupPickup}"> | |
96 | + <div class="onoffswitch"> | |
97 | + <input type="checkbox" th:checked="*{groupPickup}" class="onoffswitch-checkbox" id="groupPickup" name="groupPickup"> | |
98 | + <label class="onoffswitch-label" for="groupPickup"> | |
99 | + <span class="onoffswitch-inner"></span> | |
100 | + <span class="onoffswitch-switch"></span> | |
101 | + </label> | |
102 | + </div> | |
89 | 103 | </div> |
90 | 104 | </div> |
91 | 105 | <div class="form-group"> |
92 | 106 | <label class="col-sm-3 control-label">人工组盘:</label> |
93 | 107 | <div class="col-sm-8"> |
94 | - <input id="manuallyBuildLPN" name="manuallyBuildLPN" class="form-control" type="text" th:field="*{manuallyBuildLPN}"> | |
108 | + <div class="onoffswitch"> | |
109 | + <input type="checkbox" th:checked="*{manuallyBuildLPN}" class="onoffswitch-checkbox" id="manuallyBuildLPN" name="manuallyBuildLPN"> | |
110 | + <label class="onoffswitch-label" for="manuallyBuildLPN"> | |
111 | + <span class="onoffswitch-inner"></span> | |
112 | + <span class="onoffswitch-switch"></span> | |
113 | + </label> | |
114 | + </div> | |
95 | 115 | </div> |
96 | 116 | </div> |
97 | 117 | <div class="form-group"> |
98 | 118 | <label class="col-sm-3 control-label">RF逐件收货:</label> |
99 | 119 | <div class="col-sm-8"> |
100 | - <input id="checkinByPiece" name="checkinByPiece" class="form-control" type="text" th:field="*{checkinByPiece}"> | |
120 | + <div class="onoffswitch"> | |
121 | + <input type="checkbox" th:checked="*{checkinByPiece}" class="onoffswitch-checkbox" id="checkinByPiece" name="checkinByPiece"> | |
122 | + <label class="onoffswitch-label" for="checkinByPiece"> | |
123 | + <span class="onoffswitch-inner"></span> | |
124 | + <span class="onoffswitch-switch"></span> | |
125 | + </label> | |
126 | + </div> | |
101 | 127 | </div> |
102 | 128 | </div> |
103 | 129 | <div class="form-group"> |
104 | 130 | <label class="col-sm-3 control-label">RF快速上架:</label> |
105 | 131 | <div class="col-sm-8"> |
106 | - <input id="allowQuickPickup" name="allowQuickPickup" class="form-control" type="text" th:field="*{allowQuickPickup}"> | |
132 | + <div class="onoffswitch"> | |
133 | + <input type="checkbox" th:checked="*{allowQuickPickup}" class="onoffswitch-checkbox" id="allowQuickPickup" name="allowQuickPickup"> | |
134 | + <label class="onoffswitch-label" for="allowQuickPickup"> | |
135 | + <span class="onoffswitch-inner"></span> | |
136 | + <span class="onoffswitch-switch"></span> | |
137 | + </label> | |
138 | + </div> | |
107 | 139 | </div> |
108 | 140 | </div> |
109 | 141 | <!--<div class="form-group"> |
... | ... | @@ -243,6 +275,14 @@ |
243 | 275 | }, |
244 | 276 | submitHandler: function(form) { |
245 | 277 | var tableValue = $.common.getTableValue("#form-shipmentPreference-edit"); |
278 | + tableValue = formValueReplace(tableValue, "autoAssignLPN", $("input[name='autoAssignLPN']").is(':checked')); | |
279 | + tableValue = formValueReplace(tableValue, "allowCross", $("input[name='allowCross']").is(':checked')); | |
280 | + tableValue = formValueReplace(tableValue, "allowQcCheckResult", $("input[name='allowQcCheckResult']").is(':checked')); | |
281 | + tableValue = formValueReplace(tableValue, "showInventoryQty", $("input[name='showInventoryQty']").is(':checked')); | |
282 | + tableValue = formValueReplace(tableValue, "groupPickup", $("input[name='groupPickup']").is(':checked')); | |
283 | + tableValue = formValueReplace(tableValue, "manuallyBuildLPN", $("input[name='manuallyBuildLPN']").is(':checked')); | |
284 | + tableValue = formValueReplace(tableValue, "checkinByPiece", $("input[name='checkinByPiece']").is(':checked')); | |
285 | + tableValue = formValueReplace(tableValue, "allowQuickPickup", $("input[name='allowQuickPickup']").is(':checked')); | |
246 | 286 | $.operate.save(prefix + "/edit", tableValue); |
247 | 287 | } |
248 | 288 | }); |
... | ... |
src/main/resources/templates/config/shipmentPreference/shipmentPreference.html
... | ... | @@ -77,13 +77,17 @@ |
77 | 77 | title : '名称' |
78 | 78 | }, |
79 | 79 | { |
80 | + field : 'warehouseCode', | |
81 | + title : '仓库编码', | |
82 | + visible : false | |
83 | + }, | |
84 | + { | |
80 | 85 | field : 'shippingFlow', |
81 | 86 | title : '出库流程' |
82 | 87 | }, |
83 | 88 | { |
84 | - field : 'warehouseCode', | |
85 | - title : '仓库编码', | |
86 | - visible : false | |
89 | + field : 'allocationRule', | |
90 | + title : '库存分配规则', | |
87 | 91 | }, |
88 | 92 | { |
89 | 93 | field : 'shipmentPickingRule', |
... | ... | @@ -94,12 +98,16 @@ |
94 | 98 | title : '拣货库位范围规则', |
95 | 99 | }, |
96 | 100 | { |
97 | - field : 'allocationRule', | |
98 | - title : '库存分配规则', | |
99 | - }, | |
100 | - { | |
101 | 101 | field : 'autoAssignLPN', |
102 | - title : '自动生成托盘号' | |
102 | + title : '自动生成托盘号', | |
103 | + formatter: function (value, item, index) { | |
104 | + if (value==true) { | |
105 | + return '<span class="badge" style="background-color: #00B83F;color: white;width: 36px;">' + ' 是 ' + '</span>'; | |
106 | + } | |
107 | + else if (value==false) { | |
108 | + return '<span class="badge" style="background-color: #ff0000;color: white;width: 36px;">' + ' 否 ' + '</span>'; | |
109 | + } | |
110 | + } | |
103 | 111 | }, |
104 | 112 | { |
105 | 113 | field : 'allowCross', |
... | ... | @@ -127,23 +135,63 @@ |
127 | 135 | }, |
128 | 136 | { |
129 | 137 | field : 'showInventoryQty', |
130 | - title : '显示库存数量' | |
138 | + title : '显示库存数量', | |
139 | + formatter: function (value, item, index) { | |
140 | + if (value==true) { | |
141 | + return '<span class="badge" style="background-color: #00B83F;color: white;width: 36px;">' + ' 是 ' + '</span>'; | |
142 | + } | |
143 | + else if (value==false) { | |
144 | + return '<span class="badge" style="background-color: #ff0000;color: white;width: 36px;">' + ' 否 ' + '</span>'; | |
145 | + } | |
146 | + } | |
131 | 147 | }, |
132 | 148 | { |
133 | 149 | field : 'groupPickup', |
134 | - title : 'RF组车拣货' | |
150 | + title : 'RF组车拣货', | |
151 | + formatter: function (value, item, index) { | |
152 | + if (value==true) { | |
153 | + return '<span class="badge" style="background-color: #00B83F;color: white;width: 36px;">' + ' 是 ' + '</span>'; | |
154 | + } | |
155 | + else if (value==false) { | |
156 | + return '<span class="badge" style="background-color: #ff0000;color: white;width: 36px;">' + ' 否 ' + '</span>'; | |
157 | + } | |
158 | + } | |
135 | 159 | }, |
136 | 160 | { |
137 | 161 | field : 'manuallyBuildLPN', |
138 | - title : '人工组盘' | |
162 | + title : '人工组盘', | |
163 | + formatter: function (value, item, index) { | |
164 | + if (value==true) { | |
165 | + return '<span class="badge" style="background-color: #00B83F;color: white;width: 36px;">' + ' 是 ' + '</span>'; | |
166 | + } | |
167 | + else if (value==false) { | |
168 | + return '<span class="badge" style="background-color: #ff0000;color: white;width: 36px;">' + ' 否 ' + '</span>'; | |
169 | + } | |
170 | + } | |
139 | 171 | }, |
140 | 172 | { |
141 | 173 | field : 'checkinByPiece', |
142 | - title : 'RF逐件拣货' | |
174 | + title : 'RF逐件拣货', | |
175 | + formatter: function (value, item, index) { | |
176 | + if (value==true) { | |
177 | + return '<span class="badge" style="background-color: #00B83F;color: white;width: 36px;">' + ' 是 ' + '</span>'; | |
178 | + } | |
179 | + else if (value==false) { | |
180 | + return '<span class="badge" style="background-color: #ff0000;color: white;width: 36px;">' + ' 否 ' + '</span>'; | |
181 | + } | |
182 | + } | |
143 | 183 | }, |
144 | 184 | { |
145 | 185 | field : 'allowQuickPickup', |
146 | - title : 'RF快速拣货' | |
186 | + title : 'RF快速拣货', | |
187 | + formatter: function (value, item, index) { | |
188 | + if (value==true) { | |
189 | + return '<span class="badge" style="background-color: #00B83F;color: white;width: 36px;">' + ' 是 ' + '</span>'; | |
190 | + } | |
191 | + else if (value==false) { | |
192 | + return '<span class="badge" style="background-color: #ff0000;color: white;width: 36px;">' + ' 否 ' + '</span>'; | |
193 | + } | |
194 | + } | |
147 | 195 | }, |
148 | 196 | { |
149 | 197 | field : 'created', |
... | ... |
src/main/resources/templates/config/statusFlowDetail/add.html
... | ... | @@ -16,7 +16,9 @@ |
16 | 16 | <div class="form-group"> |
17 | 17 | <label class="col-sm-3 control-label">模块:</label> |
18 | 18 | <div class="col-sm-8"> |
19 | - <input id="moduleType" name="moduleType" class="form-control" type="text"> | |
19 | + <select id="moduleType" name="moduleType" class="form-control" th:with="moduleType=${@dict.getType('moduleType')}"> | |
20 | + <option th:each="item : ${moduleType}" th:text="${item['dictLabel']}" th:value="${item['dictValue']}"></option> | |
21 | + </select> | |
20 | 22 | </div> |
21 | 23 | </div> |
22 | 24 | <div class="form-group"> |
... | ... |
src/main/resources/templates/config/statusFlowDetail/edit.html
... | ... | @@ -16,7 +16,7 @@ |
16 | 16 | <div class="form-group"> |
17 | 17 | <label class="col-sm-3 control-label">模块:</label> |
18 | 18 | <div class="col-sm-8"> |
19 | - <input id="moduleType" name="moduleType" class="form-control" type="text" th:field="*{moduleType}"> | |
19 | + <input id="moduleType" name="moduleType" class="form-control" type="text" th:field="*{moduleType}" readonly="readonly"> | |
20 | 20 | </div> |
21 | 21 | </div> |
22 | 22 | <div class="form-group"> |
... | ... |
src/main/resources/templates/config/statusFlowHeader/add.html
... | ... | @@ -20,7 +20,7 @@ |
20 | 20 | <div class="form-group"> |
21 | 21 | <label class="col-sm-3 control-label">模块:</label> |
22 | 22 | <div class="col-sm-8"> |
23 | - <select id="moduleType" name="moduleType" class="form-control" th:with="moduleTyped=${@dict.getType('moduleType')}"> | |
23 | + <select id="moduleType" name="moduleType" class="form-control" th:with="moduleType=${@dict.getType('moduleType')}"> | |
24 | 24 | <option th:each="item : ${moduleType}" th:text="${item['dictLabel']}" th:value="${item['dictValue']}"></option> |
25 | 25 | </select> |
26 | 26 | </div> |
... | ... | @@ -83,6 +83,7 @@ |
83 | 83 | var tableValue = $.common.getTableValue("#form-statusFlowHeader-add"); |
84 | 84 | tableValue = formValueReplace(tableValue, "companyCode", $("#companyCode option:selected").val()); |
85 | 85 | tableValue = formValueReplace(tableValue, "enable", $("input[name='enable']").is(':checked')); |
86 | + | |
86 | 87 | $.operate.save(prefix + "/add", tableValue); |
87 | 88 | } |
88 | 89 | }); |
... | ... |
src/main/resources/templates/config/statusFlowHeader/edit.html
... | ... | @@ -21,9 +21,7 @@ |
21 | 21 | <div class="form-group"> |
22 | 22 | <label class="col-sm-3 control-label">模块:</label> |
23 | 23 | <div class="col-sm-8"> |
24 | - <select id="moduleType" name="moduleType" class="form-control" th:with="moduleTyped=${@dict.getType('moduleType')}" th:field="*{moduleType}"> | |
25 | - <option th:each="item : ${moduleType}" th:text="${item['dictLabel']}" th:value="${item['dictValue']}"></option> | |
26 | - </select> | |
24 | + <input id="moduleType" name="moduleType" class="form-control" readonly="readonly"> | |
27 | 25 | </div> |
28 | 26 | </div> |
29 | 27 | <div class="form-group"> |
... | ... |
src/main/resources/templates/receipt/receiptContainerHeader/receiptContainerHeader.html
... | ... | @@ -144,8 +144,10 @@ |
144 | 144 | formatter: function(value, row, index) { |
145 | 145 | var actions = []; |
146 | 146 | actions.push('<a class="btn btn-info btn-xs " href="#" onclick="detail(\'' + row.id + '\')"><i class="fa fa-list-ul"></i>明细</a> '); |
147 | - actions.push('<a class="btn btn-success btn-xs ' + createTaskFlag + '" href="#" onclick="createTask(\'' + row.id + '\')"><i class="fa fa-edit"></i>生成任务</a> '); | |
148 | - if (row.status == 0) { | |
147 | + if (row.status < 10){ | |
148 | + actions.push('<a class="btn btn-success btn-xs ' + createTaskFlag + '" href="#" onclick="createTask(\'' + row.id + '\')"><i class="fa fa-edit"></i>生成任务</a> '); | |
149 | + } | |
150 | + if (row.status == 0) { | |
149 | 151 | actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>取消配盘</a>'); |
150 | 152 | } |
151 | 153 | return actions.join(''); |
... | ... |
src/main/resources/templates/receipt/receiptHeader/receiptHeader.html
... | ... | @@ -196,7 +196,7 @@ |
196 | 196 | var prefix = ctx + "receipt/receiptHeader"; |
197 | 197 | var detailPrefix = ctx + "receipt/receiptDetail"; |
198 | 198 | var datas = [[${@dict.getType('sys_normal_disable')}]]; |
199 | - var receiptTypes = [[${@dict.getType('receiptType')}]]; | |
199 | + var receiptTypes = [[${@receiptTypeService.getType()}]]; | |
200 | 200 | var receiptHeaderStatus = [[${@dict.getType('receiptHeaderStatus')}]]; |
201 | 201 | var uploadStatus = [[${@dict.getType('uploadStatus')}]]; |
202 | 202 | var detailCreateUrl = detailPrefix+"/add"; |
... | ... | @@ -260,8 +260,8 @@ |
260 | 260 | formatter: function(value, row, index) { |
261 | 261 | var actions = []; |
262 | 262 | $.each(receiptTypes, function(index, dict) { |
263 | - if (dict.dictValue == value) { | |
264 | - actions.push("<span class='badge badge-info'>" + dict.dictLabel + "</span>"); | |
263 | + if (dict.code == value) { | |
264 | + actions.push("<span class='badge badge-info'>" + dict.name + "</span>"); | |
265 | 265 | return false; |
266 | 266 | } |
267 | 267 | }); |
... | ... | @@ -744,7 +744,7 @@ |
744 | 744 | function Toreceiving(code) { |
745 | 745 | let storage=window.localStorage; |
746 | 746 | storage.receiving_code=code; |
747 | - createMenuItem(ctx + "receipt/receiving","入库组盘"); | |
747 | + createMenuItem(ctx + "receipt/receiving","收货"); | |
748 | 748 | parent.$('.tabReload').click(); |
749 | 749 | } |
750 | 750 | |
... | ... |