Commit d61ba5bf by 赵剑炜

调整盘点功能

parent cf038366
...@@ -14,6 +14,7 @@ public enum InventoryExceptionEnum implements IExceptionEnum { ...@@ -14,6 +14,7 @@ public enum InventoryExceptionEnum implements IExceptionEnum {
ORDER_HAS_START(CommonConstant.DEFAULT_BIZ_ERROR_CODE,"单据已经开始,请勿重复操作"), ORDER_HAS_START(CommonConstant.DEFAULT_BIZ_ERROR_CODE,"单据已经开始,请勿重复操作"),
RUNNINGORDER_EXIST(CommonConstant.DEFAULT_BIZ_ERROR_CODE,"已存在盘点单据"), RUNNINGORDER_EXIST(CommonConstant.DEFAULT_BIZ_ERROR_CODE,"已存在盘点单据"),
ORDER_CLOSED(CommonConstant.DEFAULT_BIZ_ERROR_CODE,"单据已结算,无法重复操作"), ORDER_CLOSED(CommonConstant.DEFAULT_BIZ_ERROR_CODE,"单据已结算,无法重复操作"),
ACCOUNT_ERROR(CommonConstant.DEFAULT_BIZ_ERROR_CODE,"人工新增物资未编辑,请先编辑物资信息"),
/** /**
* 装备不存在 * 装备不存在
*/ */
......
...@@ -45,6 +45,8 @@ public class BussinessDetail implements Serializable { ...@@ -45,6 +45,8 @@ public class BussinessDetail implements Serializable {
@TableField(value = "type_name") @TableField(value = "type_name")
private String typeName; private String typeName;
@TableField(value = "has_count")
private Integer hasCount;
/** /**
* 单据编号 * 单据编号
*/ */
......
...@@ -304,6 +304,10 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor ...@@ -304,6 +304,10 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor
rules=rules+"类别及号型盘点:"+sizes; rules=rules+"类别及号型盘点:"+sizes;
} }
else
{
rules=rules+"整库盘点";
}
BIDto.setRules(rules); BIDto.setRules(rules);
List<EquipmentListDto> eqList = new ArrayList<>(); List<EquipmentListDto> eqList = new ArrayList<>();
Integer totalNumber = 0; Integer totalNumber = 0;
...@@ -463,6 +467,10 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor ...@@ -463,6 +467,10 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor
public Boolean UploadStock(UploadInventoryReq req) { public Boolean UploadStock(UploadInventoryReq req) {
//更新之前先把库存表的epc备份 //更新之前先把库存表的epc备份
BussinessInventory BI= this.getById(req.getOrderId()); BussinessInventory BI= this.getById(req.getOrderId());
if (BI==null)
{
throw new ServiceException(InventoryExceptionEnum.ORDER_NOT_EXIST);
}
if (BI.getInventoryState().equals("close")) if (BI.getInventoryState().equals("close"))
{ {
throw new ServiceException(InventoryExceptionEnum.ORDER_CLOSED); throw new ServiceException(InventoryExceptionEnum.ORDER_CLOSED);
...@@ -494,12 +502,20 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor ...@@ -494,12 +502,20 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor
BeanPlusUtil.copyProperties(detail, eqDto); BeanPlusUtil.copyProperties(detail, eqDto);
eqDto.setNum(Integer.valueOf(priceEq.getNum())); eqDto.setNum(Integer.valueOf(priceEq.getNum()));
eqDto.setPrice(priceEq.getPrice()); eqDto.setPrice(priceEq.getPrice());
eqDto.setFixPrice(detail.getFixPrice()); eqDto.setFixPrice(priceEq.getStockPrice());
eqDto.setStockPrice(priceEq.getStockPrice()); eqDto.setStockPrice(priceEq.getStockPrice());
eqDto.setAccountNum(String.valueOf(priceEq.getAccountNumber())); eqDto.setAccountNum(String.valueOf(priceEq.getAccountNumber()));
eqDto.setInventoryId(Long.valueOf(req.getOrderId())); eqDto.setInventoryId(Long.valueOf(req.getOrderId()));
eqDto.setUpdateTime(DateTimeUtil.getCurrentDateTime()); eqDto.setUpdateTime(DateTimeUtil.getCurrentDateTime());
eqDto.setCreateTime(DateTimeUtil.getCurrentDateTime()); eqDto.setCreateTime(DateTimeUtil.getCurrentDateTime());
if (String.valueOf(priceEq.getAccountNumber()).equals("0"))
{
eqDto.setHasCount(1);
}
else
{
eqDto.setHasCount(0);
}
Bussinessdetails.add(eqDto); Bussinessdetails.add(eqDto);
} }
...@@ -559,11 +575,16 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor ...@@ -559,11 +575,16 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor
BeanPlusUtil.copyProperties(eqInfo,Bcd); BeanPlusUtil.copyProperties(eqInfo,Bcd);
Bcd.setInvDetailId(req.getDetailId()); Bcd.setInvDetailId(req.getDetailId());
Bcd.setPrice(bd.getPrice()); Bcd.setPrice(bd.getPrice());
Bcd.setTotalPrice(bd.getStockPrice()); Integer num= Integer.valueOf(bd.getAccountNum());
// 计算总价并设置
BigDecimal totalPrice = bd.getPrice().multiply(BigDecimal.valueOf(num));
Bcd.setTotalPrice(totalPrice);
Bcd.setUpdateTime(DateTimeUtil.getCurrentDateTime()); Bcd.setUpdateTime(DateTimeUtil.getCurrentDateTime());
Bcd.setCreateTime(DateTimeUtil.getCurrentDateTime()); Bcd.setCreateTime(DateTimeUtil.getCurrentDateTime());
AddChildrenDetail.add(Bcd); AddChildrenDetail.add(Bcd);
} }
bd.setHasCount(1);
bussinessInventoryDetailService.updateById(bd);
return bussinessInventoryChildrenDetailService.saveBatch(AddChildrenDetail); return bussinessInventoryChildrenDetailService.saveBatch(AddChildrenDetail);
...@@ -588,7 +609,13 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor ...@@ -588,7 +609,13 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor
List<BussinessDetail> bussinessDetail = bussinessInventoryDetailService.list( List<BussinessDetail> bussinessDetail = bussinessInventoryDetailService.list(
new LambdaQueryWrapper<BussinessDetail>().eq(BussinessDetail::getInventoryId, req.getOrderId()) new LambdaQueryWrapper<BussinessDetail>().eq(BussinessDetail::getInventoryId, req.getOrderId())
); );
long countZeroOrNull = bussinessDetail.stream()
.filter(p -> p.getHasCount() == null || p.getHasCount() == 0)
.count();
if (countZeroOrNull>0)
{
throw new ServiceException(InventoryExceptionEnum.ACCOUNT_ERROR);
}
InventorySumReq sumreq=new InventorySumReq(); InventorySumReq sumreq=new InventorySumReq();
sumreq.setLocationType("0"); sumreq.setLocationType("0");
sumreq.setLocationId(BI.getWarehouseId()); sumreq.setLocationId(BI.getWarehouseId());
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论