退单增加库存记录
This commit is contained in:
@@ -92,6 +92,12 @@ public class PayService {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private TbProductMapper productMapper;
|
private TbProductMapper productMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private TbShopUnitMapper shopUnitMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private TbProductStockDetailMapper productStockDetailMapper;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private RedisUtils redisUtil;
|
private RedisUtils redisUtil;
|
||||||
|
|
||||||
@@ -924,17 +930,46 @@ public class PayService {
|
|||||||
|
|
||||||
TbProductSku productSku = productSkuMapper.selectByPrimaryKey(detail.getProductSkuId());
|
TbProductSku productSku = productSkuMapper.selectByPrimaryKey(detail.getProductSkuId());
|
||||||
TbProductWithBLOBs product = productMapper.selectByPrimaryKey(detail.getProductId());
|
TbProductWithBLOBs product = productMapper.selectByPrimaryKey(detail.getProductId());
|
||||||
|
|
||||||
|
TbProductStockDetail tbProductStockDetail = new TbProductStockDetail();
|
||||||
|
tbProductStockDetail.setCreatedAt(System.currentTimeMillis());
|
||||||
|
tbProductStockDetail.setUpdatedAt(System.currentTimeMillis());
|
||||||
|
tbProductStockDetail.setShopId(detail.getShopId().toString());
|
||||||
|
tbProductStockDetail.setSourcePath("NORMAL");
|
||||||
|
tbProductStockDetail.setType("退单");
|
||||||
|
tbProductStockDetail.setSubType((byte) 1);
|
||||||
|
tbProductStockDetail.setRemark("退单: " + detail.getOrderId());
|
||||||
|
tbProductStockDetail.setOrderId(String.valueOf(detail.getOrderId()));
|
||||||
|
|
||||||
if (ObjectUtil.isNotEmpty(product)) {
|
if (ObjectUtil.isNotEmpty(product)) {
|
||||||
|
TbShopUnit shopUnit = shopUnitMapper.selectByPrimaryKey(Integer.valueOf(product.getUnitId()));
|
||||||
|
|
||||||
|
tbProductStockDetail.setProductName(product.getName());
|
||||||
|
tbProductStockDetail.setIsStock(product.getIsStock());
|
||||||
|
tbProductStockDetail.setStockSnap(product.getSelectSpec());
|
||||||
|
tbProductStockDetail.setUnitName(shopUnit.getName());
|
||||||
|
|
||||||
if (product.getIsDistribute() == 1) {
|
if (product.getIsDistribute() == 1) {
|
||||||
redisUtil.seckill(RedisCst.PRODUCT + shopId.toString() + ":product" + product.getId().toString(), String.valueOf(detail.getReturnNum() + product.getStockNumber().intValue()));
|
// redisUtil.seckill(RedisCst.PRODUCT + shopId.toString() + ":product" + product.getId().toString(), String.valueOf(detail.getReturnNum() + product.getStockNumber().intValue()));
|
||||||
productMapper.updateStockById(product.getId(), detail.getReturnNum() * -1);
|
productMapper.updateStockById(product.getId(), detail.getReturnNum() * -1);
|
||||||
|
|
||||||
|
tbProductStockDetail.setProductId(product.getId().toString());
|
||||||
|
tbProductStockDetail.setUnitName(product.getUnitId());
|
||||||
|
tbProductStockDetail.setLeftNumber(product.getStockNumber());
|
||||||
|
tbProductStockDetail.setStockNumber(Double.valueOf(detail.getReturnNum()));
|
||||||
} else {
|
} else {
|
||||||
if (ObjectUtil.isNotEmpty(productSku)) {
|
if (ObjectUtil.isNotEmpty(productSku)) {
|
||||||
redisUtil.seckill(RedisCst.PRODUCT + shopId.toString() + ":" + productSku.getId().toString(), String.valueOf(detail.getReturnNum() + productSku.getStockNumber().intValue()));
|
// redisUtil.seckill(RedisCst.PRODUCT + shopId.toString() + ":" + productSku.getId().toString(), String.valueOf(detail.getReturnNum() + productSku.getStockNumber().intValue()));
|
||||||
productSkuMapper.updateByskuIdSub(productSku.getId(), detail.getReturnNum() * -1);
|
productSkuMapper.updateByskuIdSub(productSku.getId(), detail.getReturnNum() * -1);
|
||||||
|
|
||||||
|
tbProductStockDetail.setSkuId(productSku.getId().toString());
|
||||||
|
tbProductStockDetail.setLeftNumber(productSku.getStockNumber().intValue());
|
||||||
|
tbProductStockDetail.setStockNumber(Double.valueOf(detail.getReturnNum()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
productStockDetailMapper.insert(tbProductStockDetail);
|
||||||
}
|
}
|
||||||
|
|
||||||
return Result.success(CodeEnum.SUCCESS);
|
return Result.success(CodeEnum.SUCCESS);
|
||||||
|
|||||||
Reference in New Issue
Block a user