From ec3c3292e9b01ea65eeb78f61fbb4b711a1251f6 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Tue, 29 Jun 2021 18:58:51 +0800
Subject: [PATCH] modify
---
gc-shop/src/main/java/com/xzx/gc/shop/service/GoodsService.java | 83 +++++++++++++++++++++++++++++++++++------
1 files changed, 71 insertions(+), 12 deletions(-)
diff --git a/gc-shop/src/main/java/com/xzx/gc/shop/service/GoodsService.java b/gc-shop/src/main/java/com/xzx/gc/shop/service/GoodsService.java
index b8408e6..69b54b3 100644
--- a/gc-shop/src/main/java/com/xzx/gc/shop/service/GoodsService.java
+++ b/gc-shop/src/main/java/com/xzx/gc/shop/service/GoodsService.java
@@ -1,10 +1,13 @@
package com.xzx.gc.shop.service;
+import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.convert.Convert;
+import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.github.pagehelper.PageHelper;
@@ -41,6 +44,8 @@
ScoreGoodsImagesMapper scoreGoodsImagesMapper;
@Resource
ScoreGoodsStyleMapper scoreGoodsStyleMapper;
+ @Resource
+ ScoreGoodsSearchMapper scoreGoodsSearchMapper;
@Autowired
private MqUtil mqUtil;
@@ -68,7 +73,7 @@
scoreGoodsCategory.setParentId(model.getParentId());
scoreGoodsCategory.setCreatedBy(model.getCreatedBy());
scoreGoodsCategory.setCreatedTime(model.getCreatedTime());
- scoreGoodsCategoryMapper.insert(scoreGoodsCategory);
+ scoreGoodsCategoryMapper.insertSelective(scoreGoodsCategory);
return scoreGoodsCategory.getId();
}
@@ -116,15 +121,15 @@
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
ScoreGoods scoreGoods = objectMapper.convertValue(model, ScoreGoods.class);
scoreGoods.setDelFlag(Convert.toShort(Constants.DEL_NOT_FLAG));
- scoreGoodsMapper.insert(scoreGoods);
+ scoreGoodsMapper.insertSelective(scoreGoods);
//样式信息
- List<ScoreGoodsStyleDto> scoreGoodsStyleDtos = model.getScoreGoodsStyleDtos();
+ List<ScoreGoodsStyleDto> scoreGoodsStyleDtos = model.getScoreGoodsStyles();
if(CollUtil.isNotEmpty(scoreGoodsStyleDtos)){
for(ScoreGoodsStyleDto scoreGoodsStyleDto : scoreGoodsStyleDtos){
ScoreGoodsStyle scoreGoodsStyle = objectMapper.convertValue(scoreGoodsStyleDto, ScoreGoodsStyle.class);
scoreGoodsStyle.setGoodsId(scoreGoods.getId());
scoreGoodsStyle.setDelFlag(Convert.toShort(Constants.DEL_NOT_FLAG));
- scoreGoodsStyleMapper.insert(scoreGoodsStyle);
+ scoreGoodsStyleMapper.insertSelective(scoreGoodsStyle);
//规格信息
List<ScoreGoodsSkuDto> scoreGoodsSkuDtos = scoreGoodsStyleDto.getScoreGoodsSkus();
if(CollUtil.isNotEmpty(scoreGoodsSkuDtos)){
@@ -133,7 +138,7 @@
scoreGoodsSku.setGoodsId(scoreGoods.getId());
scoreGoodsSku.setStyleId(scoreGoodsStyle.getId());
scoreGoodsSku.setDelFlag(Convert.toShort(Constants.DEL_NOT_FLAG));
- scoreGoodsSkuMapper.insert(scoreGoodsSku);
+ scoreGoodsSkuMapper.insertSelective(scoreGoodsSku);
}
}
}
@@ -184,6 +189,7 @@
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
viewGoodsVo = objectMapper.convertValue(scoreGoods, ViewGoodsVo.class);
+// viewGoodsVo.setCreateTime(scoreGoods.getCreatedTime().toString());
//轮播图
List<String> goodsImages = scoreGoodsImagesMapper.selectScoreGoodsImagesByGoodsId(id);
viewGoodsVo.setGoodsImages(goodsImages);
@@ -208,7 +214,9 @@
public void updateGoods(UpdateGoodsDto model) {
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
- ScoreGoods scoreGoods = objectMapper.convertValue(model, ScoreGoods.class);
+// ScoreGoods scoreGoods = objectMapper.convertValue(model, ScoreGoods.class);
+ ScoreGoods scoreGoods = BeanUtil.copyProperties(model, ScoreGoods.class);
+ log.info("抢购时间:{}, {}", scoreGoods.getQgStartTime(), scoreGoods.getQgEndTime());
scoreGoodsMapper.updateByPrimaryKey(scoreGoods);
//轮播图
@@ -223,24 +231,36 @@
scoreGoodsImages.setImageUrl(goodImage);
scoreGoodsImages.setGoodsId(scoreGoods.getId());
scoreGoodsImages.setDelFlag(Convert.toShort(Constants.DEL_NOT_FLAG));
- scoreGoodsImagesMapper.insert(scoreGoodsImages);
+ scoreGoodsImagesMapper.insertSelective(scoreGoodsImages);
}
}
List<ScoreGoodsStyleDto> scoreGoodsStyleDtos = model.getScoreGoodsStyles();
if(CollUtil.isNotEmpty(scoreGoodsStyleDtos)){
+ Example exampleStyle = new Example(ScoreGoodsStyle.class);
+ Example.Criteria criteriaStyle = exampleStyle.createCriteria();
+ criteriaStyle.andEqualTo("goodsId",scoreGoods.getId());
+ scoreGoodsStyleMapper.deleteByExample(exampleImages);
+
+ Example exampleSku = new Example(ScoreGoodsSku.class);
+ Example.Criteria criteriaSku = exampleSku.createCriteria();
+ criteriaSku.andEqualTo("goodsId",scoreGoods.getId());
+ scoreGoodsSkuMapper.deleteByExample(exampleImages);
+
for(ScoreGoodsStyleDto scoreGoodsStyleDto : scoreGoodsStyleDtos){
ScoreGoodsStyle scoreGoodsStyle = new ScoreGoodsStyle();
scoreGoodsStyle.setId(scoreGoodsStyleDto.getId());
scoreGoodsStyle.setName(scoreGoodsStyleDto.getName());
scoreGoodsStyle.setGoodsId(scoreGoods.getId());
- scoreGoodsStyleMapper.updateByPrimaryKeySelective(scoreGoodsStyle);
+ scoreGoodsStyleMapper.insertSelective(scoreGoodsStyle);
//规格
List<ScoreGoodsSkuDto> scoreGoodsSkuDtos = scoreGoodsStyleDto.getScoreGoodsSkus();
if(CollUtil.isNotEmpty(scoreGoodsSkuDtos)){
for(ScoreGoodsSkuDto scoreGoodsSkuDto : scoreGoodsSkuDtos){
ScoreGoodsSku scoreGoodsSku = objectMapper.convertValue(scoreGoodsSkuDto, ScoreGoodsSku.class);
- scoreGoodsSkuMapper.updateByPrimaryKey(scoreGoodsSku);
+ scoreGoodsSku.setGoodsId(scoreGoods.getId());
+ scoreGoodsSku.setStyleId(scoreGoodsStyle.getId());
+ scoreGoodsSkuMapper.insertSelective(scoreGoodsSku);
}
}
}
@@ -271,6 +291,8 @@
}else{
ScoreGoods scoreGoods = new ScoreGoods();
scoreGoods.setIsQg(ScoreGoods.ISQG_NO);
+ scoreGoods.setQgEndTime(null);
+ scoreGoods.setQgStartTime(null);
Example exampleGoods = new Example(ScoreGoods.class);
Example.Criteria criteriaGoods = exampleGoods.createCriteria();
criteriaGoods.andEqualTo("id",id);
@@ -296,7 +318,20 @@
PageHelper.startPage(xcxGoodsListDto.getPageNo(), xcxGoodsListDto.getPageSize());
List<XcxGoodsListVo> data = scoreGoodsMapper.selectXcxGoodsList(xcxGoodsListDto);
-
+ if(StrUtil.isNotEmpty(xcxGoodsListDto.getName())){
+ Example exampleSearch = new Example(ScoreGoodsSearch.class);
+ Example.Criteria criteriaSearch = exampleSearch.createCriteria();
+ criteriaSearch.andEqualTo("contents",xcxGoodsListDto.getName());
+ criteriaSearch.andEqualTo("userId",xcxGoodsListDto.getUserId());
+ List<ScoreGoodsSearch> scoreGoodsSearches = scoreGoodsSearchMapper.selectByExample(exampleSearch);
+ if(CollUtil.isEmpty(scoreGoodsSearches)){
+ ScoreGoodsSearch scoreGoodsSearch = new ScoreGoodsSearch();
+ scoreGoodsSearch.setUserId(xcxGoodsListDto.getUserId());
+ scoreGoodsSearch.setContents(xcxGoodsListDto.getName());
+ scoreGoodsSearch.setCreatedTime(new Date());
+ scoreGoodsSearchMapper.insert(scoreGoodsSearch);
+ }
+ }
return new PageInfo<>(data);
}
@@ -314,9 +349,33 @@
}
if (ScoreGoods.ISQG_YES.equals(data.getIsQg())) {
- Long remain = DateUtil.between(new Date(), data.getQgEndTime(), DateUnit.SECOND, false);
- data.setRemainTime(remain);
+ if (new Date().before(data.getQgStartTime())) {
+ data.setIsStartQg(2);
+ } else {
+ data.setIsStartQg(1);
+ Long remain = DateUtil.between(new Date(), data.getQgEndTime(), DateUnit.SECOND, false);
+ data.setRemainTime(remain);
+ }
}
return data;
}
+
+ public List<GoodsSearchVo> goodsSearch(GoodsSearchDto goodsSearchDto) {
+ return scoreGoodsSearchMapper.goodsSearch(goodsSearchDto);
+ }
+
+ public void delGoodsSearch(Long id, String userId) {
+ Example exampleSearch = new Example(ScoreGoodsSearch.class);
+ Example.Criteria criteriaSearch = exampleSearch.createCriteria();
+ criteriaSearch.andEqualTo("id",id);
+ criteriaSearch.andEqualTo("userId",userId);
+ scoreGoodsSearchMapper.deleteByExample(exampleSearch);
+ }
+
+ public void delAllSearch(String userId) {
+ Example exampleSearch = new Example(ScoreGoodsSearch.class);
+ Example.Criteria criteriaSearch = exampleSearch.createCriteria();
+ criteriaSearch.andEqualTo("userId",userId);
+ scoreGoodsSearchMapper.deleteByExample(exampleSearch);
+ }
}
--
Gitblit v1.9.1