diff --git a/src/main/java/com/glxp/api/controller/basic/EntrustReceController.java b/src/main/java/com/glxp/api/controller/basic/EntrustReceController.java index 44f5260ac..b91b5b6c2 100644 --- a/src/main/java/com/glxp/api/controller/basic/EntrustReceController.java +++ b/src/main/java/com/glxp/api/controller/basic/EntrustReceController.java @@ -1,9 +1,11 @@ package com.glxp.api.controller.basic; +import cn.hutool.core.util.StrUtil; import com.github.pagehelper.PageInfo; import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.controller.BaseController; +import com.glxp.api.entity.auth.InvWarehouseEntity; import com.glxp.api.entity.basic.BasicBussinessTypeEntity; import com.glxp.api.entity.basic.DlEntrustReceEntity; import com.glxp.api.entity.basic.EntrustReceEntity; @@ -14,6 +16,7 @@ import com.glxp.api.req.system.DeleteRequest; import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.res.basic.EntrustReceResponse; import com.glxp.api.service.auth.CustomerService; +import com.glxp.api.service.auth.InvWarehouseService; import com.glxp.api.service.basic.EntrustReceService; import com.glxp.api.service.basic.IBasicBussinessTypeService; import org.springframework.web.bind.annotation.GetMapping; @@ -67,16 +70,31 @@ public class EntrustReceController extends BaseController { } + @Resource + InvWarehouseService invWarehouseService; @PostMapping("/spms/entrust/rece/add") public BaseResponse aadEntrustRece(@RequestBody EntrustReceEntity entrustReceEntity) { entrustReceEntity.setUserId(getUserId()); entrustReceEntity.setUpdateTime(new Date()); - EntrustReceEntity temp = entrustReceService.findByUnique(entrustReceEntity.getAction(), entrustReceEntity.getEntrustUser()); if (temp != null) { return ResultVOUtils.error(500, "已存在相同的委托验收"); } + + if (StrUtil.isEmpty(entrustReceEntity.getCurInv())) { + return ResultVOUtils.error(500, "当前仓库不能为空!"); + } + + if (StrUtil.isEmpty(entrustReceEntity.getEntrustInv())) { + return ResultVOUtils.error(500, "委托验收仓库不能为空!"); + } + + InvWarehouseEntity curEntity = invWarehouseService.findByInvSubByCode(entrustReceEntity.getCurInv()); + InvWarehouseEntity entrustEntity = invWarehouseService.findByInvSubByCode(entrustReceEntity.getEntrustInv()); + entrustReceEntity.setEntrustDept(entrustEntity.getParentId()); + entrustReceEntity.setCurDept(curEntity.getParentId()); + int b = entrustReceService.insertEntrustRec(entrustReceEntity); if (b > 0) { return ResultVOUtils.success("添加成功!"); @@ -89,9 +107,19 @@ public class EntrustReceController extends BaseController { @PostMapping("/spms/entrust/rece/update") public BaseResponse updateEntrustRece(@RequestBody EntrustReceEntity entrustReceEntity) { - entrustReceEntity.setUpdateTime(new Date()); + if (StrUtil.isEmpty(entrustReceEntity.getCurInv())) { + return ResultVOUtils.error(500, "当前仓库不能为空!"); + } + if (StrUtil.isEmpty(entrustReceEntity.getEntrustInv())) { + return ResultVOUtils.error(500, "委托验收仓库不能为空!"); + } + entrustReceEntity.setUpdateTime(new Date()); + InvWarehouseEntity curEntity = invWarehouseService.findByInvSubByCode(entrustReceEntity.getCurInv()); + InvWarehouseEntity entrustEntity = invWarehouseService.findByInvSubByCode(entrustReceEntity.getEntrustInv()); + entrustReceEntity.setEntrustDept(entrustEntity.getParentId()); + entrustReceEntity.setCurDept(curEntity.getParentId()); int b = entrustReceService.updateEntrustRec(entrustReceEntity); if (b > 0) { return ResultVOUtils.success("添加成功!"); diff --git a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java index 1af89aeed..94e2671b3 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java @@ -921,6 +921,7 @@ public class IoCodeTempController extends BaseController { if (codeTempEntity.getMyCount() <= 0) { return ResultVOUtils.error(500, "数量不能小于0"); } + codeTempEntity.setReCount(codeTempEntity.getMyCount() * udiCalCountUtil.getActCount(codeTempEntity.getRelId())); int b = codeTempService.updateById(codeTempEntity); if (b > 0) return ResultVOUtils.success("修改成功"); diff --git a/src/main/java/com/glxp/api/entity/inout/IoOrderDetailBizEntity.java b/src/main/java/com/glxp/api/entity/inout/IoOrderDetailBizEntity.java index 29117214b..e51eb5204 100644 --- a/src/main/java/com/glxp/api/entity/inout/IoOrderDetailBizEntity.java +++ b/src/main/java/com/glxp/api/entity/inout/IoOrderDetailBizEntity.java @@ -1,9 +1,6 @@ package com.glxp.api.entity.inout; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.*; import lombok.Data; import java.math.BigDecimal; @@ -41,7 +38,7 @@ public class IoOrderDetailBizEntity { /** * 批次号 */ - @TableField(value = "batchNo") + @TableField(value = "batchNo", updateStrategy = FieldStrategy.IGNORED) private String batchNo; /** diff --git a/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java b/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java index 36b205b85..cbeb5c753 100644 --- a/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java +++ b/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java @@ -171,8 +171,8 @@ public class IoCheckInoutService { int curCount = 0; if (orderDetailCodeEntity != null) { curCount = orderDetailCodeEntity.getReCount() + codeEntity.getMyReCount(); - }else { - curCount=codeEntity.getMyReCount(); + } else { + curCount = codeEntity.getMyReCount(); } if (curCount > bizEntity.getCount()) { return "当前产品数量超出!"; @@ -596,7 +596,8 @@ public class IoCheckInoutService { for (IoCodeEntity warehouseEntity : codeList) { List invProductDetailEntities = invPreinDetailService.findByCode(warehouseEntity.getCode()); if (invProductDetailEntities.size() > 0) { - preInOrder.put(invProductDetailEntities.get(0).getOrderId(), invProductDetailEntities.get(0).getOrderId()); + for (InvPreinDetailEntity invPreinDetailEntity : invProductDetailEntities) + preInOrder.put(invPreinDetailEntity.getOrderId(), invPreinDetailEntity.getOrderId()); } } if (preInOrder.size() > 0) { @@ -615,7 +616,12 @@ public class IoCheckInoutService { if (StrUtil.isEmpty(codeEntity.getSerialNo())) { InvPreinDetailEntity invPreinDetailEntity = invPreinDetailService.findByCode(key, codeEntity.getCode()); if (invPreinDetailEntity != null) { - int count = invPreinDetailEntity.getCount() - 1; + int count = 0; + if (invPreinDetailEntity.getCount() < codeEntity.getCount()) { + count = 0; + } else { + count = invPreinDetailEntity.getCount() - codeEntity.getCount(); + } if (count >= 0) { if (count == 0) { invPreinDetailService.deleteByCode(key, codeEntity.getCode()); diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java index de875d90f..fdf44b6dd 100644 --- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java +++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java @@ -381,7 +381,7 @@ public class IoOrderServiceImpl implements IoOrderService { if (bussinessTypeEntity.isPreIn()) { invPreinOrderService.deleteByOrderId(billNo); invPreinDetailService.deleteByOrderId(billNo); - }else { + } else { List invProductDetailEntities = invProductDetailService.selectByOrderIdFk(billNo); if (CollUtil.isNotEmpty(invProductDetailEntities)) { for (InvProductDetailEntity invProductDetailEntity : invProductDetailEntities) { @@ -395,6 +395,7 @@ public class IoOrderServiceImpl implements IoOrderService { int count = invProductEntity.getOutCount() - invProductDetailEntity.getReCount(); invProductEntity.setOutCount(count); } + invProductEntity.setReCount(invProductEntity.getInCount() - invProductEntity.getOutCount()); invProductService.update(invProductEntity); } invProductDetailService.deleteByOrderId(billNo); @@ -402,7 +403,6 @@ public class IoOrderServiceImpl implements IoOrderService { } - orderEntity.setDealStatus(ConstantStatus.ORDER_DEAL_POST); orderEntity.setStatus(ConstantStatus.ORDER_STATUS_CHECK_SUCCESS); orderEntity.setUpdateTime(new Date()); diff --git a/src/main/resources/application-pro.yml b/src/main/resources/application-pro.yml index 061a99b10..b92f6f818 100644 --- a/src/main/resources/application-pro.yml +++ b/src/main/resources/application-pro.yml @@ -1,6 +1,5 @@ server: port: 9991 - spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver