|
|
|
@ -575,11 +575,11 @@ public class IoCodeTempController extends BaseController {
|
|
|
|
|
|
|
|
|
|
BaseResponse invRes = null;
|
|
|
|
|
if (bussinessTypeEntity.isScanPreIn()) { //校验预验收库存
|
|
|
|
|
invRes = checkPreInInv(bussinessTypeEntity, exitLocalEntity);
|
|
|
|
|
invRes = checkPreInInv(bussinessTypeEntity, genDetaiEntity);
|
|
|
|
|
} else if (bussinessTypeEntity.isAdvancePreIn()) { //校验寄售库存
|
|
|
|
|
invRes = checkPreInv(bussinessTypeEntity, exitLocalEntity);
|
|
|
|
|
invRes = checkPreInv(bussinessTypeEntity, genDetaiEntity);
|
|
|
|
|
} else {
|
|
|
|
|
invRes = checkInv(bussinessTypeEntity, exitLocalEntity);
|
|
|
|
|
invRes = checkInv(bussinessTypeEntity, genDetaiEntity);
|
|
|
|
|
}
|
|
|
|
|
if (invRes != null) {
|
|
|
|
|
return invRes;
|
|
|
|
@ -791,15 +791,15 @@ public class IoCodeTempController extends BaseController {
|
|
|
|
|
InvWarehouseEntity invWarehouseEntity = invWarehouseService.findByOne(ConstantStatus.ACTION_TYPE_ADVANCE);
|
|
|
|
|
int count = 0;
|
|
|
|
|
if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_NULL) {
|
|
|
|
|
if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
|
|
|
|
|
count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), null, codeTempEntity.getCode());
|
|
|
|
|
} else
|
|
|
|
|
count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), null);
|
|
|
|
|
// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
|
|
|
|
|
// count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), null, codeTempEntity.getCode());
|
|
|
|
|
// } else
|
|
|
|
|
count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), null);
|
|
|
|
|
} else if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_SET) {
|
|
|
|
|
if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
|
|
|
|
|
count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode(), codeTempEntity.getCode());
|
|
|
|
|
} else
|
|
|
|
|
count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode());
|
|
|
|
|
// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
|
|
|
|
|
// count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode(), codeTempEntity.getCode());
|
|
|
|
|
// } else
|
|
|
|
|
count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode());
|
|
|
|
|
} else if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_CODE) {
|
|
|
|
|
//按指定货位出库
|
|
|
|
|
if (StrUtil.isEmpty(codeTempEntity.getPreSpaceCode())) {
|
|
|
|
@ -816,35 +816,38 @@ public class IoCodeTempController extends BaseController {
|
|
|
|
|
return ResultVOUtils.error(500, "添加失败,该产品未上架货位!");
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
|
|
|
|
|
count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode(), codeTempEntity.getCode());
|
|
|
|
|
} else
|
|
|
|
|
count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode());
|
|
|
|
|
// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
|
|
|
|
|
// count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode(), codeTempEntity.getCode());
|
|
|
|
|
// } else
|
|
|
|
|
count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
InvPreProductDetailEntity invPreinDetailEntity = invPreProductDetailService.findUseOneByCode(codeTempEntity.getCode());
|
|
|
|
|
// InvPreProductDetailEntity invPreinDetailEntity = invPreProductDetailService.findUseOneByCode(codeTempEntity.getCode());
|
|
|
|
|
if (count <= 0) {
|
|
|
|
|
return ResultVOUtils.error(500, "寄售库存数量不足!");
|
|
|
|
|
} else {
|
|
|
|
|
if (StrUtil.isNotEmpty(invPreinDetailEntity.getBatchNo()) && StrUtil.isNotEmpty(codeTempEntity.getBatchNo())
|
|
|
|
|
&& !invPreinDetailEntity.getBatchNo().equals(codeTempEntity.getBatchNo())) {
|
|
|
|
|
return ResultVOUtils.error(500, "当前批次号与预验收录入批次号不匹配!");
|
|
|
|
|
}
|
|
|
|
|
if (StrUtil.isNotEmpty(codeTempEntity.getOrderId())) {//非首次添加
|
|
|
|
|
if (StrUtil.isEmpty(codeTempEntity.getSerialNo())) {//该单据已有该产品
|
|
|
|
|
//无序列号,则可能存在多个预验收入库单
|
|
|
|
|
IoCodeTempEntity tempEntity = codeTempService.findByUnique(codeTempEntity.getOrderId(), codeTempEntity.getCode());
|
|
|
|
|
if (tempEntity != null) {
|
|
|
|
|
if (count < (tempEntity.getMyCount() + 1)) {
|
|
|
|
|
return ResultVOUtils.error(500, "超出寄售库存数量");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
if (count < 1) {
|
|
|
|
|
return ResultVOUtils.error(500, "寄售库存数量不足");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
// if (StrUtil.isNotEmpty(invPreinDetailEntity.getBatchNo()) && StrUtil.isNotEmpty(codeTempEntity.getBatchNo())
|
|
|
|
|
// && !invPreinDetailEntity.getBatchNo().equals(codeTempEntity.getBatchNo())) {
|
|
|
|
|
// return ResultVOUtils.error(500, "当前批次号与预验收录入批次号不匹配!");
|
|
|
|
|
// }
|
|
|
|
|
// if (StrUtil.isNotEmpty(codeTempEntity.getOrderId())) {//非首次添加
|
|
|
|
|
// if (StrUtil.isEmpty(codeTempEntity.getSerialNo())) {//该单据已有该产品
|
|
|
|
|
// IoCodeTempEntity tempEntity = codeTempService.findByUnique(codeTempEntity.getOrderId(), codeTempEntity.getCode());
|
|
|
|
|
// if (tempEntity != null) {
|
|
|
|
|
// if (count < (tempEntity.getMyCount() + 1)) {
|
|
|
|
|
// return ResultVOUtils.error(500, "超出寄售库存数量");
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// } else {
|
|
|
|
|
// if (count < 1) {
|
|
|
|
|
// return ResultVOUtils.error(500, "寄售库存数量不足");
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
int exitCount = IntUtil.value(codeTempService.selectExitCount(codeTempEntity.getOrderId(), codeTempEntity.getBatchNo(), codeTempEntity.getRelId(), codeTempEntity.getSupId()));
|
|
|
|
|
if ((codeTempEntity.getMyReCount() + exitCount) > count) {
|
|
|
|
|
return ResultVOUtils.error(500, "寄售库存数量不足");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return null;
|
|
|
|
@ -908,7 +911,7 @@ public class IoCodeTempController extends BaseController {
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
if (count < 1) {
|
|
|
|
|
return ResultVOUtils.error(500, "寄售预验收数量不足");
|
|
|
|
|
return ResultVOUtils.error(500, "预验收库存数量不足");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -1058,15 +1061,15 @@ public class IoCodeTempController extends BaseController {
|
|
|
|
|
if (bussinessTypeEntity.isVailInv() && bussinessTypeEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
|
|
|
|
|
int count = 0;
|
|
|
|
|
if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_NULL) {
|
|
|
|
|
if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
|
|
|
|
|
count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), null, codeTempEntity.getCode());
|
|
|
|
|
} else
|
|
|
|
|
count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), null);
|
|
|
|
|
// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
|
|
|
|
|
// count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), null, codeTempEntity.getCode());
|
|
|
|
|
// } else
|
|
|
|
|
count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), null);
|
|
|
|
|
} else if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_SET) {
|
|
|
|
|
if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
|
|
|
|
|
count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode(), codeTempEntity.getCode());
|
|
|
|
|
} else
|
|
|
|
|
count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode());
|
|
|
|
|
// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
|
|
|
|
|
// count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode(), codeTempEntity.getCode());
|
|
|
|
|
// } else
|
|
|
|
|
count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode());
|
|
|
|
|
} else if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_CODE) {
|
|
|
|
|
//按指定货位出库
|
|
|
|
|
if (StrUtil.isEmpty(codeTempEntity.getWarehouseCode())) {
|
|
|
|
@ -1082,17 +1085,18 @@ public class IoCodeTempController extends BaseController {
|
|
|
|
|
return ResultVOUtils.error(500, "添加失败,该产品未上架货位!");
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
|
|
|
|
|
count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode(), codeTempEntity.getCode());
|
|
|
|
|
} else
|
|
|
|
|
count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode());
|
|
|
|
|
// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
|
|
|
|
|
// count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode(), codeTempEntity.getCode());
|
|
|
|
|
// } else
|
|
|
|
|
count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (count <= 0) {
|
|
|
|
|
return ResultVOUtils.error(500, "当前库存不足");
|
|
|
|
|
} else {
|
|
|
|
|
//查询此单据已扫描的条码数量
|
|
|
|
|
if (codeTempEntity.getMyReCount() > count) {
|
|
|
|
|
int exitCount = IntUtil.value(codeTempService.selectExitCount(codeTempEntity.getOrderId(), codeTempEntity.getBatchNo(), codeTempEntity.getRelId(), codeTempEntity.getSupId()));
|
|
|
|
|
if ((codeTempEntity.getMyReCount() + exitCount) > count) {
|
|
|
|
|
return ResultVOUtils.error(500, "当前库存不足");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|