Commit dbc05588d59c805e26d4c84e9b91e2f440d01b25

Authored by 游杰
1 parent eef6431f

修改呼叫料盒接口

src/main/java/com/huaheng/mobile/receipt/MobileBatchReceiptController.java
... ... @@ -266,6 +266,36 @@ public class MobileBatchReceiptController {
266 266 throw new JSONException("没有找到入库单");
267 267 }
268 268  
  269 + LambdaQueryWrapper<ReceiptContainerHeader> lambda = Wrappers.lambdaQuery();
  270 + lambda.eq(ReceiptContainerHeader::getContainerCode, containerCode)
  271 + .lt(ReceiptContainerHeader::getStatus, QuantityConstant.RECEIPT_CONTAINER_FINISHED);
  272 + List<ReceiptContainerHeader> list = receiptContainerHeaderService.list(lambda);
  273 + if (list.size() >= 1){
  274 + throw new ServiceException("容器已经生成任务,不能放物料了!");
  275 + }
  276 + ReceiptContainerHeader receiptContainerHeader = new ReceiptContainerHeader();
  277 + //如果不存在记录则新建记录
  278 + receiptContainerHeader.setWarehouseCode(ShiroUtils.getWarehouseCode());
  279 + receiptContainerHeader.setCompanyCode(companyCode);
  280 + receiptContainerHeader.setContainerCode(containerCode);
  281 + Container container2 = containerService.findAllByCode(containerCode);
  282 + receiptContainerHeader.setContainerType(container2.getContainerType());
  283 + receiptContainerHeader.setTaskType(String.valueOf(QuantityConstant.TASK_TYPE_SUPPLEMENTRECEIPT));
  284 + receiptContainerHeader.setFromLocation(container2.getLocationCode());
  285 + receiptContainerHeader.setToLocation(locationCode);
  286 + receiptContainerHeader.setCreatedBy(ShiroUtils.getLoginName());
  287 + receiptContainerHeader.setLastUpdatedBy(ShiroUtils.getLoginName());
  288 + receiptContainerHeader.setStatus((short)10);
  289 +
  290 + if (!receiptContainerHeaderService.save(receiptContainerHeader)){
  291 + throw new ServiceException("入库组盘头表保存失败");
  292 + }
  293 +
  294 + receiptHeader.setFirstStatus(QuantityConstant.RECEIPT_HEADER_RECEIVING);
  295 + receiptHeader.setLastStatus(QuantityConstant.RECEIPT_HEADER_RECEIVING);
  296 + receiptHeaderService.update(receiptHeader, receiptHeaderQueryWrapper);
  297 +
  298 +
269 299 for(ReceiptBill receiptBill : receiptBills) {
270 300  
271 301 TaskDetail taskDetail = new TaskDetail();
... ... @@ -304,6 +334,33 @@ public class MobileBatchReceiptController {
304 334  
305 335 receiptDetail2.setOpenQty(qty);
306 336 receiptDetailService.update(receiptDetail2, receiptDetail2QueryWrapper);
  337 +
  338 + ReceiptContainerDetail receiptContainerDetail = new ReceiptContainerDetail();
  339 + receiptContainerDetail.setReceiptContainerId(receiptContainerHeader.getId());
  340 + receiptContainerDetail.setWarehouseCode(ShiroUtils.getWarehouseCode());
  341 + receiptContainerDetail.setReceiptId(receiptHeader.getId());
  342 + receiptContainerDetail.setReceiptDetailId(receiptDetail2.getId());
  343 + receiptContainerDetail.setReceiptCode(receiptHeader.getCode());
  344 + receiptContainerDetail.setReceiptType(receiptHeader.getReceiptType());
  345 + receiptContainerDetail.setLocationCode(locationCode);
  346 + receiptContainerDetail.setContainerCode(containerCode);
  347 + receiptContainerDetail.setContainerType(container.getContainerType());
  348 + receiptContainerDetail.setCompanyCode(companyCode);
  349 +
  350 + LambdaQueryWrapper<Material> materialQueryWrapper = Wrappers.lambdaQuery();
  351 + materialQueryWrapper.eq(Material::getCode, receiptBill.getMaterialCode())
  352 + .eq(Material::getDeleted, 0);
  353 + Material material = materialService.getOne(materialQueryWrapper);
  354 +
  355 + receiptContainerDetail.setMaterialCode(material.getCode());
  356 + receiptContainerDetail.setMaterialName(material.getName());
  357 + receiptContainerDetail.setMaterialSpec(material.getSpec());
  358 + receiptContainerDetail.setMaterialUnit(material.getUnit());
  359 + receiptContainerDetail.setQty(receiptBill.getQty());
  360 + receiptContainerDetail.setStatus(10);
  361 + receiptContainerDetail.setCreatedBy(ShiroUtils.getLoginName());
  362 + receiptContainerDetail.setLastUpdatedBy(ShiroUtils.getLoginName());
  363 + receiptContainerDetailService.save(receiptContainerDetail);
307 364 }
308 365  
309 366 } else {
... ... @@ -526,6 +583,7 @@ public class MobileBatchReceiptController {
526 583 LambdaQueryWrapper<ReceiptHeader> receiptHeaderQueryWrapper = Wrappers.lambdaQuery();
527 584 receiptHeaderQueryWrapper.eq(ReceiptHeader::getCompanyCode, companyCode)
528 585 .eq(ReceiptHeader::getWarehouseCode, ShiroUtils.getWarehouseCode())
  586 + .ne(ReceiptHeader::getReceiptType, "PPI")
529 587 .le(ReceiptHeader::getCreated, now)
530 588 .gt(ReceiptHeader::getCreated, start)
531 589 .orderByDesc(ReceiptHeader::getCreated);
... ...
src/main/java/com/huaheng/pc/receipt/receiptContainerHeader/service/ReceiptContainerHeaderServiceImpl.java
... ... @@ -494,6 +494,7 @@ public class ReceiptContainerHeaderServiceImpl extends ServiceImpl&lt;ReceiptContai
494 494 recorder.setTaskType(String.valueOf(QuantityConstant.TASK_TYPE_WHOLERECEIPT));
495 495 recorder.setStatus((short) 0);
496 496 recorder.setCreatedBy(ShiroUtils.getLoginName());
  497 + recorder.setLastUpdatedBy(ShiroUtils.getLoginName());
497 498  
498 499 LambdaQueryWrapper<ReceiptContainerHeader> receiptContainerHeaderLambada = Wrappers.lambdaQuery();
499 500 receiptContainerHeaderLambada.eq(ReceiptContainerHeader::getContainerCode, receiptContainerCode)
... ...
src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java
... ... @@ -580,8 +580,10 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
580 580 cycleCountDetailService.updataDetailStatus(item.getBillDetailId(), QuantityConstant.CYCLECOUNT_STATUS_EXECUTING);
581 581 }
582 582 }
583   - if (!taskDetailService.saveOrUpdateBatch(taskDetails)) {
584   - throw new ServiceException("更新任务明细失败");
  583 + if(taskDetails != null && taskDetails.size() > 0) {
  584 + if (!taskDetailService.saveOrUpdateBatch(taskDetails)) {
  585 + throw new ServiceException("更新任务明细失败");
  586 + }
585 587 }
586 588  
587 589 // //修改入库明细
... ...
src/main/resources/application.yml
... ... @@ -33,6 +33,7 @@ server:
33 33 buffer-size: 1024
34 34 # 是否分配的直接内存
35 35 direct-buffers: true
  36 + port: 8888
36 37  
37 38 # 用户配置
38 39 user:
... ...