From 9319c42fe02d041cee260ca0db8df67bcdf1ea0a Mon Sep 17 00:00:00 2001 From: yujian <yujian@123.com> Date: 星期一, 28 十月 2019 13:53:16 +0800 Subject: [PATCH] 免单券激活方式调整 --- fanli/src/main/java/com/yeshi/fanli/service/impl/brand/BrandInfoServiceImpl.java | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 57 insertions(+), 3 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/brand/BrandInfoServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/brand/BrandInfoServiceImpl.java index 513f76e..48c7fdb 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/brand/BrandInfoServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/brand/BrandInfoServiceImpl.java @@ -10,6 +10,7 @@ import javax.annotation.Resource; import org.springframework.cache.annotation.Cacheable; +import org.springframework.core.task.TaskExecutor; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; import org.yeshi.utils.tencentcloud.COSManager; @@ -68,12 +69,20 @@ @Resource private BrandShopCaheService brandShopCaheService; + @Resource(name = "taskExecutor") + private TaskExecutor executor; + + @Override public void saveObject(MultipartFile file, BrandInfo record) throws BrandInfoException { String name = record.getName(); - if (name == null || name.trim().length() == 0) + if (StringUtil.isNullOrEmpty(name)) throw new BrandInfoException(1, "鍚嶇О涓嶈兘涓虹┖"); + String searchKey = record.getSearchKey(); + if (StringUtil.isNullOrEmpty(searchKey)) + record.setSearchKey(name); + Integer state = record.getState(); if (state == null) record.setState(0); @@ -113,6 +122,28 @@ record.setCreateTime(resultObj.getCreateTime()); record.setUpdateTime(new Date()); brandInfoMapper.updateByPrimaryKey(record); + + + if (state == 0){ + executor.execute(new Runnable() { + @Override + public void run() { + brandGoodsCaheService.removeByBrandId(id); + brandShopCaheService.removeByBrandId(id); + } + }); + } + } + + if (state == 1) { + executor.execute(new Runnable() { + @Override + public void run() { + int goodsTotal = brandGoodsCaheService.addBrandGoods(record); + record.setGoodsTotal(goodsTotal); + brandInfoMapper.updateByPrimaryKeySelective(record); + } + }); } } @@ -140,6 +171,16 @@ @Override public int deleteBatchByPrimaryKey(List<Long> list) { + executor.execute(new Runnable() { + @Override + public void run() { + for (Long id: list) { + brandGoodsCaheService.removeByBrandId(id); + brandShopCaheService.removeByBrandId(id); + } + } + }); + return brandInfoMapper.deleteBatchByPrimaryKey(list); } @@ -205,6 +246,18 @@ return brandClassShopService.countBrandShopinfo(cid); } + + @Override + public void removeAgoByDate(Date date) { + // 鍒犻櫎鍟嗗搧 + brandGoodsCaheService.removeAgoByDate(date); + + // 鍒犻櫎搴楅摵 + brandShopCaheService.removeAgoByDate(date); + } + + + @Override public void addShopAndGoods(long start, int count) { List<BrandInfo> list = brandInfoMapper.listValidAll(start, count); @@ -212,8 +265,9 @@ return; for (BrandInfo brandInfo : list) { - String key = brandInfo.getName(); - if (StringUtil.isNullOrEmpty(key)) + String name = brandInfo.getName(); + String searchKey = brandInfo.getSearchKey(); + if (StringUtil.isNullOrEmpty(name) && StringUtil.isNullOrEmpty(searchKey)) continue; // 娣诲姞鍟嗗搧 -- Gitblit v1.8.0