From c0b565cf340fb38d4cf62b920cadbd9b6f992641 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 13 十月 2023 17:26:35 +0800
Subject: [PATCH] 开发
---
server/service/src/main/java/com/doumee/service/business/impl/GoodsServiceImpl.java | 81 ++++++++++++++++++++++++----------------
1 files changed, 49 insertions(+), 32 deletions(-)
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/GoodsServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/GoodsServiceImpl.java
index 0f972e2..9c42266 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/GoodsServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/GoodsServiceImpl.java
@@ -18,6 +18,8 @@
import com.doumee.dao.business.join.GoodsJoinMapper;
import com.doumee.dao.business.model.*;
import com.doumee.dao.business.model.dto.*;
+import com.doumee.dao.system.model.SystemDepartment;
+import com.doumee.service.CateParamSelectService;
import com.doumee.service.business.BaseDataService;
import com.doumee.service.business.GoodsService;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
@@ -45,6 +47,7 @@
import java.net.URLEncoder;
import java.nio.charset.Charset;
import java.util.*;
+import java.util.stream.Collectors;
/**
* 鍟嗗搧淇℃伅琛⊿ervice瀹炵幇
@@ -83,8 +86,10 @@
@Autowired
private GoodsJoinMapper goodsJoinMapper;
+
+ @Lazy
@Autowired
- private CateParamSelectMapper cateParamSelectMapper;
+ private CateParamSelectService cateParamSelectService;
@Autowired
private RedisTemplate redisTemplate;
@@ -211,6 +216,7 @@
if(goodsParamList.size()>0){
goodsParamMapper.insertBatch(goodsParamList);
}
+ cateParamSelectService.dealCateParamSelect();
}catch (Exception e){
e.printStackTrace();
}finally {
@@ -288,7 +294,9 @@
private void dealPlatMultifule(Integer id, LoginUserInfo user, BaseGoods model,List<Multifile> fileList ) {
Multifile f = new Multifile();
f.setObjId(model.getId());
+ f.setObjType(Constants.ONE);
f.setIsdeleted(Constants.ZERO);
+ f.setObjType(Constants.ONE);
List<Multifile> multifileList =multifileMapper.selectList(new QueryWrapper<>(f));
if(!Objects.isNull(multifileList)&&multifileList.size()>Constants.ZERO){
for (int i = 0; i < multifileList.size(); i++) {
@@ -353,6 +361,9 @@
if(!Objects.isNull(multifileList)&&multifileList.size()>Constants.ZERO){
for (int i = 0; i < multifileList.size(); i++) {
Multifile multifile = multifileList.get(i);
+ if(StringUtils.isBlank(multifile.getFileurl())){
+ continue;
+ }
multifile.setCreator(user.getId());
multifile.setCreateDate(new Date());
multifile.setIsdeleted(Constants.ZERO);
@@ -613,7 +624,7 @@
if(!Objects.isNull(category)){
goods.setCategoryName(category.getName());
}
- goods.setMultifileList(multifileMapper.selectList(new QueryWrapper<Multifile>().eq("OBJ_ID",id)));
+ goods.setMultifileList(multifileMapper.selectList(new QueryWrapper<Multifile>().eq("OBJ_TYPE",Constants.ZERO).eq("OBJ_ID",id)));
return goods;
}
@@ -646,13 +657,9 @@
Goods::getPrice,goods.getSPrice(),goods.getEPrice());
queryWrapper.orderByDesc(Goods::getId);
List<Goods> goodsList = goodsJoinMapper.selectJoinList(Goods.class,queryWrapper);
- String prefixUrl = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode()
- + systemDictDataBiz.queryByCode(Constants.OSS, Constants.GOODS_IMG).getCode();
- goodsList.forEach(i->{
- i.setPrefixUrl(prefixUrl);
- i.setMultifileList(multifileMapper.selectList(new QueryWrapper<Multifile>().eq("OBJ_ID",i.getId()).orderByAsc(" SORTNUM ")));
- i.setGoodsParamList(goodsParamMapper.selectList(new QueryWrapper<GoodsParam>().eq("GOODS_ID",i.getId()).orderByAsc(" SORTNUM ")));
- });
+ if(!Objects.isNull(goodsList)&&goodsList.size()>Constants.ZERO){
+ this.dealGoodsMsg(goodsList);
+ }
return goodsList;
}
@@ -703,6 +710,9 @@
+ systemDictDataBiz.queryByCode(Constants.OSS, Constants.GOODS_IMG).getCode();
goodsIPage.getRecords().forEach(i->{
i.setPrefixUrl(prefixUrl);
+ if(i.getType().equals(Constants.ONE)){
+ i.setBasePrice(Constants.formatBigdecimal(i.getBasePrice()).multiply(Constants.formatBigdecimal(i.getBasePriceRate())).setScale(0,BigDecimal.ROUND_CEILING));
+ }
});
return PageData.from(goodsIPage);
}
@@ -1093,20 +1103,36 @@
.apply(!Objects.isNull(pageWrap.getModel()) && !Objects.isNull(pageWrap.getModel().getEPrice()), " t.PRICE <= "+pageWrap.getModel().getEPrice()+" ");
queryWrapper.orderByDesc(Goods::getId);
IPage<Goods> goodsIPage = goodsJoinMapper.selectJoinPage(page, Goods.class, queryWrapper);
- String prefixUrl = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode()
- + systemDictDataBiz.queryByCode(Constants.OSS, Constants.GOODS_IMG).getCode();
- goodsIPage.getRecords().forEach(i->{
- i.setCategoryImgurl(systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode()
- + systemDictDataBiz.queryByCode(Constants.OSS, Constants.CATEGORY_IMG).getCode() + i.getCategoryImgurl());
- i.setPrefixUrl(prefixUrl);
- i.setMultifileList(multifileMapper.selectList(new QueryWrapper<Multifile>().eq("OBJ_ID",i.getId()).orderByAsc(" SORTNUM ")));
- i.setGoodsParamList(goodsParamMapper.selectList(new QueryWrapper<GoodsParam>()
- .eq("GOODS_ID",i.getId())
- .orderByAsc(" SORTNUM ")));
- });
+ if(!Objects.isNull(goodsIPage.getRecords())&&goodsIPage.getRecords().size()>Constants.ZERO){
+ this.dealGoodsMsg(goodsIPage.getRecords());
+ }
return PageData.from(goodsIPage);
}
+
+
+ public void dealGoodsMsg(List<Goods> goodsList){
+ String prefixUrl = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode()
+ + systemDictDataBiz.queryByCode(Constants.OSS, Constants.GOODS_IMG).getCode();
+ String prefixUrlCategory = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode()
+ + systemDictDataBiz.queryByCode(Constants.OSS, Constants.CATEGORY_IMG).getCode();
+ List<Integer> integerList = goodsList.stream().map(Goods::getId).collect(Collectors.toList());
+
+ List<Multifile> mFileList = multifileMapper.selectList(new QueryWrapper<Multifile>()
+ .lambda().in(Multifile::getObjId,integerList)
+ .eq(Multifile::getType,Constants.ZERO)
+ .eq(Multifile::getIsdeleted,Constants.ZERO)
+ .eq(Multifile::getObjType,Constants.ZERO));
+ List<GoodsParam> goodsParamList = goodsParamMapper.selectList(new QueryWrapper<GoodsParam>()
+ .in("GOODS_ID",integerList)
+ .orderByAsc(" SORTNUM "));
+ goodsList.forEach(i->{
+ i.setCategoryImgurl(prefixUrlCategory + i.getCategoryImgurl());
+ i.setPrefixUrl(prefixUrl);
+ i.setMultifileList(mFileList.stream().filter(s -> s.getObjId().equals(i.getId())).collect(Collectors.toList()));
+ i.setGoodsParamList(goodsParamList.stream().filter(s -> s.getGoodsId().equals(i.getId())).collect(Collectors.toList()));
+ });
+ }
@Override
public List<Goods> findListForH5(GoodsRequest goodsRequest) {
@@ -1139,18 +1165,9 @@
.apply(!Objects.isNull(goodsRequest) && !Objects.isNull(goodsRequest.getEPrice()), " t.PRICE <= "+goodsRequest.getEPrice()+" ");
queryWrapper.orderByDesc(Goods::getId);
List<Goods> goodsList = goodsJoinMapper.selectJoinList(Goods.class,queryWrapper);
- String prefixUrl = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode()
- + systemDictDataBiz.queryByCode(Constants.OSS, Constants.GOODS_IMG).getCode();
- goodsList.forEach(i->{
- i.setCategoryImgurl(systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode()
- + systemDictDataBiz.queryByCode(Constants.OSS, Constants.CATEGORY_IMG).getCode() + i.getCategoryImgurl());
- i.setPrefixUrl(prefixUrl);
- i.setMultifileList(multifileMapper.selectList(new QueryWrapper<Multifile>().eq("OBJ_ID",i.getId()).orderByAsc(" SORTNUM ")));
- i.setGoodsParamList(goodsParamMapper.selectList(
- new QueryWrapper<GoodsParam>().eq("GOODS_ID",i.getId())
- .apply(" name in ( select cp.NAME from cate_param cp where cp.CATEGORY_ID = "+i.getCategoryId()+" and cp.ISSHOW = 1 and cp.ISDELETED = 0 and cp.STATUS = 0 ) ")
- .orderByAsc(" SORTNUM ")));
- });
+ if(!Objects.isNull(goodsList)&&goodsList.size()>Constants.ZERO){
+ this.dealGoodsMsg(goodsList);
+ }
return goodsList;
}
--
Gitblit v1.9.3