From b82493b0c083ed6bd5c0013bf21b8cb651a32eec Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 26 十二月 2020 17:21:40 +0800 Subject: [PATCH] 活动图片添加,自动生成代码框架初步搭建 --- service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityOpenServiceImpl.java | 56 ++++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 46 insertions(+), 10 deletions(-) diff --git a/service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityOpenServiceImpl.java b/service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityOpenServiceImpl.java index 52ade23..c2ee244 100644 --- a/service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityOpenServiceImpl.java +++ b/service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityOpenServiceImpl.java @@ -2,16 +2,17 @@ import com.ks.lucky.exception.LuckyActivityAwardException; import com.ks.lucky.exception.LuckyActivityException; +import com.ks.lucky.exception.LuckyActivityOpenException; +import com.ks.lucky.exception.LuckyMQException; import com.ks.lucky.mapper.LuckyActivityMapper; import com.ks.lucky.pojo.DO.LuckyActivity; import com.ks.lucky.pojo.DO.LuckyActivityAwards; import com.ks.lucky.pojo.DO.LuckyActivityOpenInfo; +import com.ks.lucky.pojo.DTO.ActivityMQMsg; import com.ks.lucky.remote.service.LuckyActivityOpenService; -import com.ks.lucky.service.impl.LuckyActivityAwardManager; -import com.ks.lucky.service.impl.LuckyActivityAwardResultManager; -import com.ks.lucky.service.impl.LuckyActivityJoinManager; -import com.ks.lucky.service.impl.LuckyActivityOpenInfoManager; +import com.ks.lucky.service.impl.*; import com.ks.lucky.util.LuckyRunUtil; +import com.ks.lucky.util.mq.CMQManager; import org.apache.dubbo.config.annotation.Service; import org.springframework.transaction.annotation.Transactional; @@ -21,7 +22,7 @@ import java.util.Map; import java.util.Set; -@Service(version = "1.0") +@Service(version = "1.0.0") public class LuckyActivityOpenServiceImpl implements LuckyActivityOpenService { @Resource @@ -39,6 +40,9 @@ @Resource private LuckyActivityAwardResultManager luckyActivityAwardResultManager; + @Resource + private LuckyActivityManager luckyActivityManager; + /** * 鏄惁鍙互寮�濂栦簡 @@ -48,7 +52,6 @@ */ private boolean canOpen(LuckyActivity activity) throws LuckyActivityException { long now = System.currentTimeMillis(); - if (activity.getState() != LuckyActivity.STATE_FINISH) { throw new LuckyActivityException(1, "娲诲姩灏氭湭缁撴潫"); } @@ -72,16 +75,19 @@ @Transactional(rollbackFor = Exception.class) @Override - public void preOpenAward(Long activityId) throws LuckyActivityException, LuckyActivityAwardException { + public void preOpenAward(Long activityId) throws LuckyActivityException, LuckyActivityOpenException, LuckyActivityAwardException { //鍒ゆ柇娲诲姩鐘舵�� LuckyActivity activity = luckyActivityMapper.selectByPrimaryKeyForUpdate(activityId); if (activity == null) { throw new LuckyActivityException(LuckyActivityException.CODE_NOT_EXIST, "娲诲姩涓嶅瓨鍦�"); } - //鍒ゆ柇鏄惁杈惧埌寮�濂栨潯浠� - canOpen(activity); + try { + canOpen(activity); + } catch (LuckyActivityException e) { + throw new LuckyActivityOpenException(1, "灏氭湭杈惧埌寮�濂栨潯浠�"); + } //------------璁$畻寮�濂�------------- //鑾峰彇濂栭」鏁版嵁 @@ -107,6 +113,8 @@ update.setStateRemarks("棰勫紑濂栨垚鍔�"); update.setUpdateTime(new Date()); luckyActivityMapper.updateByPrimaryKeySelective(update); + //娣诲姞娑堟伅 + CMQManager.getInstance().addActivityMsg(new ActivityMQMsg(activityId, ActivityMQMsg.TYPE_OPEN_SHOW, new Date())); } @Transactional(rollbackFor = Exception.class) @@ -123,7 +131,35 @@ update.setState(LuckyActivity.STATE_OPENED); update.setStateRemarks("宸插紑濂�"); luckyActivityMapper.updateByPrimaryKeySelective(update); - luckyActivityAwardResultManager.setResultShow(activityId); + + //鍏堣缃墍鏈夎褰曟湭涓 + luckyActivityJoinManager.setActivityAllJoinerUnDraw(activityId); + //璁剧疆涓鐢ㄦ埛鐘舵�佷负涓 + luckyActivityJoinManager.setActivityDrawnJoinerState(activityId); + + try { + luckyActivityAwardResultManager.setResultShow(activityId); + } catch (LuckyMQException e) { + throw new LuckyActivityException(10, "娣诲姞MQ鍑洪敊"); + } + } + + @Override + public void reachMinPerson(Long activityId) throws LuckyActivityException { + LuckyActivity activity = luckyActivityMapper.selectByPrimaryKey(activityId); + if (activity == null) { + throw new LuckyActivityException(LuckyActivityException.CODE_NOT_EXIST, "娲诲姩涓嶅瓨鍦�"); + } + //濡傛灉鏈缃紑濂栨椂闂达紝涓旀椿鍔ㄦ鍦ㄨ繘琛岋紝灏卞垽鏂槸鍚﹁揪鍒版渶浣庝汉鏁� + if (activity.getPreOpenTime() == null) { + if (activity.getState() == LuckyActivity.STATE_STARTED) { + try { + luckyActivityManager.finishActivity(activityId, false, "杈惧埌鏈�浣庡紑濂栦汉鏁�"); + } catch (LuckyMQException e) { + throw new LuckyActivityException(1, e.getMsg()); + } + } + } } -- Gitblit v1.8.0