1.sku售出记录不保存问题

2.库存条目数不一致
This commit is contained in:
2024-07-20 17:00:39 +08:00
parent 4c153a2bfb
commit 2a6dcf563b
2 changed files with 151 additions and 2 deletions

View File

@@ -63,7 +63,7 @@ public interface TbProductSkuRepository extends JpaRepository<TbProductSku, Inte
@Query("SELECT new cn.ysk.cashier.vo.StockV2Vo(" +
"sku.id,pro.id,pro.coverImg,pro.name,unit.name,pro.typeEnum,sku.specSnap,pro.isStock, " +
"CASE WHEN pro.isDistribute = 1 THEN IFNULL(pro.stockNumber, 0) ELSE SUM(sku.stockNumber) END as number" +
", pro.isDistribute, pro.isPauseSale, true, sku.warnLine, pro.lowPrice) " +
", pro.isDistribute, pro.isPauseSale, true, sku.warnLine, pro.lowPrice, CASE WHEN sku.isGrounding=1 THEN true ELSE false END as isGrounding) " +
"from " +
"TbProduct pro " +
"LEFT JOIN TbProductSku sku on pro.id = sku.productId " +

View File

@@ -8,7 +8,6 @@ import java.util.List;
/**
* @author GYJ
*/
@Data
public class StockV2Vo {
private String id;
private Integer skuId;
@@ -25,6 +24,7 @@ public class StockV2Vo {
private Object number;
private Integer warnLine;
private BigDecimal salePrice;
private boolean isGrounding;
public StockV2Vo(Integer proId, Integer skuId, String name, String unitName,String specSnap, Object number,Object stockNumber, Integer isDistribute) {
this.proId = proId;
@@ -80,6 +80,7 @@ public class StockV2Vo {
this.warnLine = warnLine;
}
public StockV2Vo(Integer id, Integer proId,String img,String name,String unitName, String type, String specSnap,
Object isStock, Object number, Integer isDistribute, Integer isPauseSale, boolean isPro, Integer warnLine, BigDecimal sellPrice) {
this.id = id.toString() + "-" + proId.toString();
@@ -103,6 +104,154 @@ public class StockV2Vo {
this.salePrice = sellPrice;
}
public StockV2Vo(Integer id, Integer proId,String img,String name,String unitName, String type, String specSnap,
Object isStock, Object number, Integer isDistribute, Integer isPauseSale, boolean isPro, Integer warnLine, BigDecimal sellPrice, boolean isGrounding) {
this.id = id.toString() + "-" + proId.toString();
if (isPro) {
this.id += proId;
} else {
this.id += id;
}
this.skuId = id;
this.proId = proId;
this.img = img;
this.name = name;
this.unitName = unitName;
setType(type);
this.specSnap = specSnap;
this.isStock = isStock;
this.stockNumber = number;
this.isDistribute = isDistribute;
this.isPauseSale = isPauseSale;
this.warnLine = warnLine;
this.salePrice = sellPrice;
this.isGrounding = isGrounding;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public Integer getSkuId() {
return skuId;
}
public void setSkuId(Integer skuId) {
this.skuId = skuId;
}
public Integer getProId() {
return proId;
}
public void setProId(Integer proId) {
this.proId = proId;
}
public String getImg() {
return img;
}
public void setImg(String img) {
this.img = img;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getUnitName() {
return unitName;
}
public void setUnitName(String unitName) {
this.unitName = unitName;
}
public String getType() {
return type;
}
public String getSpecSnap() {
return specSnap;
}
public void setSpecSnap(String specSnap) {
this.specSnap = specSnap;
}
public Object getIsStock() {
return isStock;
}
public void setIsStock(Object isStock) {
this.isStock = isStock;
}
public Object getStockNumber() {
return stockNumber;
}
public void setStockNumber(Object stockNumber) {
this.stockNumber = stockNumber;
}
public Integer getIsDistribute() {
return isDistribute;
}
public void setIsDistribute(Integer isDistribute) {
this.isDistribute = isDistribute;
}
public Integer getIsPauseSale() {
return isPauseSale;
}
public void setIsPauseSale(Integer isPauseSale) {
this.isPauseSale = isPauseSale;
}
public Object getNumber() {
return number;
}
public void setNumber(Object number) {
this.number = number;
}
public Integer getWarnLine() {
return warnLine;
}
public void setWarnLine(Integer warnLine) {
this.warnLine = warnLine;
}
public BigDecimal getSalePrice() {
return salePrice;
}
public void setSalePrice(BigDecimal salePrice) {
this.salePrice = salePrice;
}
public boolean getIsGrounding() {
return isGrounding;
}
public void setIsGrounding(boolean grounding) {
isGrounding = grounding;
}
public void setType(String type) {
switch (type) {
case "normal":