From 7e389247b3b2877c12f1eaae6e33c9c33e91d2dd Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 08 一月 2021 18:41:59 +0800 Subject: [PATCH] 活动添加后台完善 --- service-lucky/src/main/java/com/ks/lucky/service/impl/LuckyActivityAwardManager.java | 44 ++++++++++++++++++++++++++++++++++++++------ 1 files changed, 38 insertions(+), 6 deletions(-) diff --git a/service-lucky/src/main/java/com/ks/lucky/service/impl/LuckyActivityAwardManager.java b/service-lucky/src/main/java/com/ks/lucky/service/impl/LuckyActivityAwardManager.java index a15f83e..063399b 100644 --- a/service-lucky/src/main/java/com/ks/lucky/service/impl/LuckyActivityAwardManager.java +++ b/service-lucky/src/main/java/com/ks/lucky/service/impl/LuckyActivityAwardManager.java @@ -1,10 +1,16 @@ package com.ks.lucky.service.impl; +import com.ks.lib.common.exception.ParamsException; +import com.ks.lucky.dao.LuckyActivityAwardMaterialDao; import com.ks.lucky.exception.LuckyActivityAwardException; +import com.ks.lucky.exception.LuckyActivityAwardMaterialException; import com.ks.lucky.mapper.LuckyActivityAwardsMapper; import com.ks.lucky.pojo.DO.LuckyActivityAwardMaterial; import com.ks.lucky.pojo.DO.LuckyActivityAwards; import com.ks.lucky.query.ActivityAwardQuery; +import com.ks.lucky.remote.service.LuckyActivityAwardMaterialService; +import com.ks.lucky.util.annotation.RedisCache; +import com.ks.lucky.util.annotation.RedisCacheEvict; import org.springframework.stereotype.Component; import org.springframework.validation.annotation.Validated; import org.yeshi.utils.StringUtil; @@ -23,7 +29,10 @@ private LuckyActivityAwardsMapper luckyActivityAwardsMapper; @Resource - private LuckyActivityAwardMaterialManager luckyActivityAwardMaterialManager; + private LuckyActivityAwardMaterialDao luckyActivityAwardMaterialDao; + + @Resource + private LuckyActivityAwardMaterialService luckyActivityAwardMaterialService; /** * 娣诲姞濂栭」 @@ -32,10 +41,25 @@ * @throws LuckyActivityAwardException */ @Validated - public void addAward(LuckyActivityAwards award) throws LuckyActivityAwardException { + public void addAward(LuckyActivityAwards award) throws LuckyActivityAwardException, LuckyActivityAwardMaterialException, ParamsException { if (award.getCreateTime() == null) { award.setCreateTime(new Date()); } + ActivityAwardQuery query = new ActivityAwardQuery(); + query.activityId = award.getActivityId(); + query.level = award.getLevel(); + query.count = 1; + List<LuckyActivityAwards> list = luckyActivityAwardsMapper.list(query); + if (list != null && list.size() > 0) { + throw new LuckyActivityAwardException(LuckyActivityAwardException.CODE_EXIST, "鍚岀瓑绾х殑濂栭」宸茬粡瀛樺湪"); + } + + if (award.getMaterial() != null && award.getMaterial().getId() == null) { + String id = luckyActivityAwardMaterialService.addAwardMaterial(award.getMaterial()); + award.getMaterial().setId(id); + award.setMaterialId(id); + } + luckyActivityAwardsMapper.insertSelective(award); } @@ -46,7 +70,10 @@ * @param award * @throws LuckyActivityAwardException */ - public void updateAward(LuckyActivityAwards award) throws LuckyActivityAwardException { + @RedisCacheEvict(cate = "activity", key = "'activity-detail-'+#activityId") + @RedisCacheEvict(cate = "activity-awards", key = "'getAwardList-'+#activityId") + @RedisCacheEvict(cate = "activity-awards", key = "'getAwardDetail-'+#award.id") + public void updateAward(LuckyActivityAwards award, Long activityId) throws LuckyActivityAwardException { if (award.getId() == null) { throw new LuckyActivityAwardException(LuckyActivityAwardException.CODE_PARAMS_NOT_ENOUGH, "鍙傛暟涓嶅畬鏁�"); } @@ -64,6 +91,7 @@ * @param activityId * @return */ + @RedisCache(cate = "activity-awards", key = "'getAwardList-'+#activityId", second = 3600) public List<LuckyActivityAwards> getAwardList(Long activityId) { ActivityAwardQuery query = new ActivityAwardQuery(); query.activityId = activityId; @@ -78,10 +106,11 @@ * @param id * @return */ + @RedisCache(cate = "activity-awards", key = "'getAwardDetail-'+#id", second = 3600) public LuckyActivityAwards getAwardDetail(Long id) { LuckyActivityAwards awards = luckyActivityAwardsMapper.selectByPrimaryKey(id); if (!StringUtil.isNullOrEmpty(awards.getMaterialId())) { - LuckyActivityAwardMaterial material = luckyActivityAwardMaterialManager.getAwardMaterialDetail(awards.getMaterialId()); + LuckyActivityAwardMaterial material = luckyActivityAwardMaterialDao.get(awards.getMaterialId()); if (material != null) { awards.setMaterial(material); } @@ -95,10 +124,13 @@ * @param id */ - public void deleteAward(Long id) { + @RedisCacheEvict(cate = "activity", key = "'activity-detail-'+#activityId") + @RedisCacheEvict(cate = "activity-awards", key = "'getAwardList-'+#activityId") + @RedisCacheEvict(cate = "activity-awards", key = "'getAwardDetail-'+#id") + public void deleteAward(Long id, Long activityId) { LuckyActivityAwards awards = getAwardDetail(id); if (awards.getMaterial() != null) { - luckyActivityAwardMaterialManager.deleteAwardMaterial(awards.getMaterial().getId()); + luckyActivityAwardMaterialDao.delete(awards.getMaterial().getId()); } luckyActivityAwardsMapper.deleteByPrimaryKey(id); } -- Gitblit v1.8.0