From bcad3fe1b888ae11d437f6558b7974cfa30cfb2e Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期二, 13 一月 2026 18:24:07 +0800
Subject: [PATCH] 经销商管理
---
server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsServiceImpl.java | 38 ++++++++++++++++++++++++--------------
1 files changed, 24 insertions(+), 14 deletions(-)
diff --git a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsServiceImpl.java b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsServiceImpl.java
index 3559a14..4378754 100644
--- a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsServiceImpl.java
+++ b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsServiceImpl.java
@@ -156,7 +156,7 @@
goodsSku.setGoodsId(goods.getId());
goodsSku.setName(goods.getName());
goodsSku.setPrice(goods.getSkuPrice());
- goodsSku.setShowPrice(goods.getPrice());
+ goodsSku.setShowPrice(goods.getShowPrice());
goodsSku.setStock(goods.getStockNum());
goodsSku.setIntegralRate(goods.getDeductRata());
goodsSku.setUnitName(goods.getUnitName());
@@ -211,6 +211,7 @@
|| goods.getBrandList() == null
|| goods.getBrandList().size() == 0
|| goods.getWeight() == null
+ || goods.getDeductRata() == null
|| goods.getPrice() == null
|| goods.getSkuPrice() == null
|| StringUtils.isBlank(goods.getImgurl())
@@ -218,6 +219,10 @@
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), ResponseStatus.BAD_REQUEST.getMessage());
}
+ if(goods.getDeductRata().compareTo(new BigDecimal(0.1)) <Constants.ZERO ||
+ goods.getDeductRata().compareTo(new BigDecimal(100)) >Constants.ZERO){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝绉垎鍙姷鎵i噾棰濇瘮渚嬭璁剧疆[0.1,100]涔嬮棿~");
+ }
//鏌ヨ鍒嗙被
Labels cate = labelsMapper.selectById(goods.getCategoryId());
if(cate == null || Constants.equalsInteger(cate.getIsdeleted(),Constants.ONE)
@@ -225,7 +230,7 @@
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝鍒嗙被淇℃伅涓嶅瓨鍦�");
}
if(goods.getBrandId()!=null){
- Labels brand = labelsMapper.selectById(goods.getCategoryId());
+ Labels brand = labelsMapper.selectById(goods.getBrandId());
if(brand == null || Constants.equalsInteger(brand.getIsdeleted(),Constants.ONE)
||! Constants.equalsInteger(brand.getType(),Constants.LabelsType.GOODSBRAND.getKey())){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝鍝佺墝淇℃伅涓嶅瓨鍦�");
@@ -234,7 +239,7 @@
List<Integer> bIds = new ArrayList<>();
for(Labels b : goods.getBrandList()){
bIds.add(b.getId());
- if(b.getChildIdList() == null || b.getChildIdList().size() ==0){
+ if(b.getChildIdList() != null && b.getChildIdList().size() >=0){
bIds.addAll(b.getChildIdList());
}
}
@@ -251,9 +256,9 @@
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝璇烽�夋嫨姝g‘鐨勯�傜敤鍝佺墝");
}
idsBrand.add("["+b.getId()+"]");
- if(b.getChildIdList() == null || b.getChildIdList().size() ==0){
+ if(b.getChildIdList()!= null && b.getChildIdList().size() >=0){
for(Integer c :b.getChildIdList()){
- Labels cb = findLabelFromListByid(allBrands,b.getId(),Constants.LabelsType.SERIES_BRAND.getKey(),b.getId());
+ Labels cb = findLabelFromListByid(allBrands,c,Constants.LabelsType.SERIES_BRAND.getKey(),b.getId());
if(cb == null){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝鍝佺墝銆�"+tb.getName() +"銆戜笅鎵�灞炵郴鍒椾笉姝g‘");
}
@@ -265,7 +270,6 @@
if(idsSerial.size()>0){
goods.setSerialIds(String.join(",",idsSerial));
}
-
}
private Labels findLabelFromListByid(List<Labels> allBrands, Integer id, int type,Integer parentId) {
@@ -274,13 +278,13 @@
}
for(Labels labels:allBrands){
if(!Constants.equalsInteger(id,labels.getId())){
- return null;
+ continue;
}
if(!Constants.equalsInteger(type,labels.getType())){
- return null;
+ continue;
}
if(parentId !=null && !Constants.equalsInteger(parentId,labels.getParentId())){
- return null;
+ continue;
}
return labels;
}
@@ -364,11 +368,11 @@
skuMapper.update(null,new UpdateWrapper<Sku>().lambda()
.set(Sku::getIsdeleted,Constants.ONE)
.eq(Sku::getIsdeleted,Constants.ZERO)
- .eq(Sku::getGoodsId,goods.getSkuId()));
+ .eq(Sku::getGoodsId,goods.getId()));
goodsSkuMapper.update(null,new UpdateWrapper<GoodsSku>().lambda()
.set(GoodsSku::getIsdeleted,Constants.ONE)
.eq(GoodsSku::getIsdeleted,Constants.ZERO)
- .eq(GoodsSku::getGoodsId,goods.getSkuId()));
+ .eq(GoodsSku::getGoodsId,goods.getId()));
dealDefaultGoodsSku(goods);//鏂板缓sku淇℃伅
dealBatchMultiFiles(goods, goods.getFileList(), user,true);
}
@@ -526,7 +530,8 @@
@Override
public Goods findById(Integer id) {
MPJLambdaWrapper<Goods> queryWrapper = new MPJLambdaWrapper<>();
- String path = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode() + systemDictDataBiz.queryByCode(Constants.OSS, Constants.ACTIVITY_FILE).getCode();
+ String path = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode()
+ + systemDictDataBiz.queryByCode(Constants.OSS, Constants.GOODS_FILE).getCode();
queryWrapper.eq(Goods::getId,id);
queryWrapper.selectAll(Goods.class);
@@ -554,6 +559,7 @@
//榛樿sku淇℃伅
GoodsSku goodsSku = goodsSkuList.get(0);
goods.setSkuPrice(goodsSku.getPrice());
+ goods.setShowPrice(goodsSku.getShowPrice());
goods.setWeight(goodsSku.getWeight());
goods.setStockNum(goodsSku.getStock());
goods.setUnitName(goodsSku.getUnitName());
@@ -592,6 +598,7 @@
}
}
}
+ goods.setBrandList(brandList);
}
}
@@ -721,7 +728,7 @@
queryWrapper.leftJoin(Labels.class,Labels::getId,Goods::getBrandId);
queryWrapper.leftJoin(Labels.class,Labels::getId,Goods::getParentCategoryId);
//搴撳瓨閲�
- queryWrapper.select("(select sum(STOCK) from goods_sku where ISDELETED=0 and GOODS_ID=t.id) as stockNum ");
+ queryWrapper.select("(select sum(STOCK) from goods_sku where ISDELETED=0 and GOODS_ID=t.id) as stockNum ");
//瀹為檯閿�閲�
queryWrapper.select("(select sum(gd.GOODS_NUM) from goodsorder_detail gd" +
" inner join goods_sku gs on gs.id=gd.GOODS_SKU_ID" +
@@ -773,7 +780,8 @@
if (list == null || list.size() == 0) {
return;
}
- String path = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode() + systemDictDataBiz.queryByCode(Constants.OSS, Constants.GOODS_FILE).getCode();
+ String path = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode()
+ + systemDictDataBiz.queryByCode(Constants.OSS, Constants.GOODS_FILE).getCode();
for (Goods goods : list) {
goods.setResourcePath(path);
//鏌ヨsku
@@ -788,9 +796,11 @@
//榛樿sku淇℃伅
goods.setSkuPrice(goodsSku.getPrice());
goods.setWeight(goodsSku.getWeight());
+ goods.setShowPrice(goodsSku.getShowPrice());
goods.setStockNum(goodsSku.getStock());
goods.setUnitName(goodsSku.getUnitName());
}
+// initGoodsApplyBrandAndSerial(goods);
}
}
--
Gitblit v1.9.3