出库库存修改
This commit is contained in:
parent
6f9488928c
commit
f51fcece8e
|
|
@ -1,6 +1,8 @@
|
|||
package cn.ysk.cashier.service.impl.productimpl;
|
||||
|
||||
import cn.ysk.cashier.pojo.product.TbProduct;
|
||||
import cn.ysk.cashier.pojo.shop.TbShopPurveyor;
|
||||
import cn.ysk.cashier.repository.product.TbProductRepository;
|
||||
import cn.ysk.cashier.repository.shop.TbShopPurveyorRepository;
|
||||
import cn.ysk.cashier.utils.*;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
|
|
@ -60,6 +62,7 @@ public class TbProductStockOperateServiceImpl implements TbProductStockOperateSe
|
|||
private final EntityManager entityManager;
|
||||
|
||||
private final RedisUtils redisUtils;
|
||||
private final TbProductRepository tbProductRepository;
|
||||
|
||||
|
||||
@Override
|
||||
|
|
@ -205,12 +208,20 @@ public class TbProductStockOperateServiceImpl implements TbProductStockOperateSe
|
|||
continue;
|
||||
}
|
||||
TbProductSku tbProductSku = tbProductSkuRepository.findById(productListDto.getId()).orElseGet(TbProductSku::new);
|
||||
|
||||
TbProduct product = tbProductRepository.findById(Integer.valueOf(productListDto.getProductId())).orElseGet(TbProduct::new);
|
||||
if (product.getId() == null) {
|
||||
throw new BadRequestException("商品有误");
|
||||
}
|
||||
|
||||
boolean isDistribute = product.getIsDistribute() == 1;
|
||||
|
||||
TbProductStockDetail productStockDetail = new TbProductStockDetail();
|
||||
productStockDetail.setBatchNumber(resources.getBatchNumber());
|
||||
productStockDetail.setCreatedAt(times);
|
||||
productStockDetail.setUpdatedAt(times);
|
||||
productStockDetail.setIsStock(1);
|
||||
Integer round = (int) Math.floor(tbProductSku.getStockNumber());
|
||||
Integer round = (int) Math.floor(isDistribute ? product.getStockNumber() : tbProductSku.getStockNumber());
|
||||
productStockDetail.setLeftNumber(round);
|
||||
productStockDetail.setProductId(productListDto.getProductId());
|
||||
productStockDetail.setProductName(productListDto.getName());
|
||||
|
|
@ -251,9 +262,14 @@ public class TbProductStockOperateServiceImpl implements TbProductStockOperateSe
|
|||
productStockDetail.setType(resources.getType());
|
||||
productStockDetail.setUnitName(productListDto.getUnitName());
|
||||
entityManager.persist(productStockDetail);
|
||||
//sku数量
|
||||
tbProductSku.setStockNumber(tbProductSku.getStockNumber() + productStockDetail.getStockNumber());
|
||||
productSkuService.update(tbProductSku);
|
||||
if (isDistribute) {
|
||||
product.setStockNumber(product.getStockNumber() + productStockDetail.getStockNumber().intValue());
|
||||
tbProductRepository.save(product);
|
||||
} else {
|
||||
//sku数量
|
||||
tbProductSku.setStockNumber(tbProductSku.getStockNumber() + productStockDetail.getStockNumber());
|
||||
productSkuService.update(tbProductSku);
|
||||
}
|
||||
idStockMap.put(productListDto.getId(), productStockDetail.getStockNumber());
|
||||
}
|
||||
redisUtils.redisUp(2, resources.getShopId(), idStockMap);
|
||||
|
|
@ -316,4 +332,4 @@ public class TbProductStockOperateServiceImpl implements TbProductStockOperateSe
|
|||
}
|
||||
FileUtil.downloadExcel(list, response);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue