共享库存修改

This commit is contained in:
GYJ
2024-06-24 15:25:06 +08:00
parent b9b35849c3
commit 063d5731f3
4 changed files with 19 additions and 13 deletions

View File

@@ -54,7 +54,7 @@ public interface TbProductSkuRepository extends JpaRepository<TbProductSku, Inte
Page<StockVo> searchProStock(@Param("shopId") String shopId, @Param("proName") String proName, @Param("isStock")Integer isStock,@Param("num")Double num, Pageable pageable); Page<StockVo> searchProStock(@Param("shopId") String shopId, @Param("proName") String proName, @Param("isStock")Integer isStock,@Param("num")Double num, Pageable pageable);
@Query("SELECT new cn.ysk.cashier.vo.StockV2Vo(" + @Query("SELECT new cn.ysk.cashier.vo.StockV2Vo(" +
"sku.id,pro.id,pro.coverImg,pro.name,unit.name,pro.typeEnum,sku.specSnap,pro.isStock, " + "0,pro.id,pro.coverImg,pro.name,unit.name,pro.typeEnum,sku.specSnap,pro.isStock, " +
"CASE " + "CASE " +
" WHEN pro.isDistribute = 1 THEN pro.stockNumber " + " WHEN pro.isDistribute = 1 THEN pro.stockNumber " +
" ELSE SUM(sku.stockNumber) " + " ELSE SUM(sku.stockNumber) " +
@@ -75,7 +75,7 @@ public interface TbProductSkuRepository extends JpaRepository<TbProductSku, Inte
Page<StockV2Vo> searchProStockV2(@Param("shopId") String shopId, @Param("proName") String proName, @Param("isStock")Integer isStock, Pageable pageable); Page<StockV2Vo> searchProStockV2(@Param("shopId") String shopId, @Param("proName") String proName, @Param("isStock")Integer isStock, Pageable pageable);
@Query("SELECT new cn.ysk.cashier.vo.StockV2Vo(" + @Query("SELECT new cn.ysk.cashier.vo.StockV2Vo(" +
"sku.id,pro.id,pro.coverImg,pro.name,unit.name,pro.typeEnum,sku.specSnap,pro.isStock, " + "sku.id,0,pro.coverImg,pro.name,unit.name,pro.typeEnum,sku.specSnap,pro.isStock, " +
"CASE " + "CASE " +
" WHEN pro.isDistribute = 1 THEN pro.stockNumber " + " WHEN pro.isDistribute = 1 THEN pro.stockNumber " +
" ELSE SUM(sku.stockNumber) " + " ELSE SUM(sku.stockNumber) " +

View File

@@ -248,11 +248,11 @@ public class StockServiceImpl implements StockService {
Map<Integer, Double> idStockMap = new HashMap<>(); Map<Integer, Double> idStockMap = new HashMap<>();
for (StockV2Vo stockVo : list) { for (StockV2Vo stockVo : list) {
if (stockVo.getProId() == 0) { if (stockVo.getProId() == 0) {
tbProductSkuRepository.updateStockNumber2(stockVo.getId(), shopId, Double.parseDouble(stockVo.getNumber().toString())); tbProductSkuRepository.updateStockNumber2(stockVo.getSkuId(), shopId, Double.parseDouble(stockVo.getNumber().toString()));
} else { } else {
productService.updateStockNumber(stockVo.getProId(), Double.parseDouble(stockVo.getNumber().toString())); productService.updateStockNumber(stockVo.getProId(), Double.parseDouble(stockVo.getNumber().toString()));
} }
idStockMap.put(stockVo.getId(), Double.parseDouble(stockVo.getNumber().toString())); idStockMap.put(stockVo.getSkuId(), Double.parseDouble(stockVo.getNumber().toString()));
} }
redisUtils.redisUp(2, shopId, idStockMap); redisUtils.redisUp(2, shopId, idStockMap);
} }

View File

@@ -126,12 +126,16 @@ public class TbProductServiceImpl implements TbProductService {
List<TbProductSku> skuList = new ArrayList<>(); List<TbProductSku> skuList = new ArrayList<>();
TbProductVo tbProductVo = new TbProductVo(); TbProductVo tbProductVo = new TbProductVo();
//sku,并且计算销量以及库存 //sku,并且计算销量以及库存
Double stockNumber = 0.00; double stockNumber = 0.00;
for (TbProductSku sku : tbProductSkus) { if (product.getIsDistribute() == 1) {
//sku stockNumber = Double.valueOf(product.getStockNumber());
if (sku.getProductId().equals(product.getId().toString())) { } else {
skuList.add(sku); for (TbProductSku sku : tbProductSkus) {
stockNumber = stockNumber + sku.getStockNumber(); //sku
if (sku.getProductId().equals(product.getId().toString())) {
skuList.add(sku);
stockNumber = stockNumber + sku.getStockNumber();
}
} }
} }
tbProductVo.setStockNumber(stockNumber); tbProductVo.setStockNumber(stockNumber);

View File

@@ -9,7 +9,8 @@ import java.util.List;
*/ */
@Data @Data
public class StockV2Vo { public class StockV2Vo {
private Integer id; private String id;
private Integer skuId;
private Integer proId; private Integer proId;
private String img; private String img;
private String name; private String name;
@@ -24,7 +25,7 @@ public class StockV2Vo {
public StockV2Vo(Integer proId, Integer skuId, String name, String unitName,String specSnap, Object number,Object stockNumber, Integer isDistribute) { public StockV2Vo(Integer proId, Integer skuId, String name, String unitName,String specSnap, Object number,Object stockNumber, Integer isDistribute) {
this.proId = proId; this.proId = proId;
this.id = skuId; this.skuId = skuId;
this.name = name; this.name = name;
this.unitName = unitName; this.unitName = unitName;
this.specSnap = specSnap; this.specSnap = specSnap;
@@ -35,7 +36,8 @@ public class StockV2Vo {
public StockV2Vo(Integer id, Integer proId,String img,String name,String unitName, String type, String specSnap, public StockV2Vo(Integer id, Integer proId,String img,String name,String unitName, String type, String specSnap,
Object isStock, Object number, Integer isDistribute, Integer isPauseSale) { Object isStock, Object number, Integer isDistribute, Integer isPauseSale) {
this.id = id; this.id = id.toString() + "-" + proId.toString();
this.skuId = id;
this.proId = proId; this.proId = proId;
this.img = img; this.img = img;
this.name = name; this.name = name;