From a2fe11f549f52e887937dbdb63d967a09d3a3f21 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 02 十二月 2020 18:54:38 +0800
Subject: [PATCH] 抽奖核心服务完善,天天抽奖服务基本搭建

---
 service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityServiceImpl.java |   33 ++++++++++++++++++++++++---------
 1 files changed, 24 insertions(+), 9 deletions(-)

diff --git a/service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityServiceImpl.java b/service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityServiceImpl.java
index ff16ad1..818d6be 100644
--- a/service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityServiceImpl.java
+++ b/service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityServiceImpl.java
@@ -185,29 +185,25 @@
             throw new LuckyActivityException(2, "娲诲姩灏氭湭澶勪簬宸插彂甯冪姸鎬�");
         }
 
-        luckyActivityManager.startUpActivity(activityId);
-
-        //灏濊瘯鍒犻櫎娑堟伅
         try {
-            LuckyMQ mq = LuckyMQFactory.createStartUpActivity(activity);
-            luckyMQService.removeUnSendMsg(mq.getTaskId());
+            luckyActivityManager.startUpActivity(activityId);
         } catch (LuckyMQException e) {
-            e.printStackTrace();
+            throw new LuckyActivityException(e.getCode(), e.getMsg());
         }
-
     }
 
     @Transactional(rollbackFor = Exception.class)
     @Override
     public void verifyActivity(Long activityId, boolean pass, String remarks) throws LuckyActivityException {
         LuckyActivity activity = luckyActivityMapper.selectByPrimaryKeyForUpdate(activityId);
+        notNull(activity);
         if (activity.getState() != LuckyActivity.STATE_WAITING_VERIFY) {
             throw new LuckyActivityException(2, "娲诲姩灏氭湭澶勪簬瀹℃牳鐘舵��");
         }
 
         //瀹℃牳娲诲姩
-        //瀹℃牳閫氳繃
         if (pass) {
+            //瀹℃牳閫氳繃
             luckyActivityManager.setState(activityId, LuckyActivity.STATE_NOT_PUBLISH, remarks);
         } else {
             //瀹℃牳鏈�氳繃
@@ -220,7 +216,11 @@
     public void forceFinishActivity(Long activityId, String remarks) throws LuckyActivityException {
         LuckyActivity activity = luckyActivityMapper.selectByPrimaryKey(activityId);
         notNull(activity);
-        luckyActivityManager.finishActivity(activityId, true, remarks);
+        try {
+            luckyActivityManager.finishActivity(activityId, true, remarks);
+        } catch (LuckyMQException e) {
+            throw new LuckyActivityException(e.getCode(), e.getMsg());
+        }
     }
 
     @Transactional(rollbackFor = Exception.class)
@@ -244,6 +244,17 @@
             throw new LuckyActivityException(2, e.getMsg());
         }
 
+    }
+
+    @Override
+    public void cancelVerify(Long activityId) throws LuckyActivityException {
+        LuckyActivity activity = luckyActivityMapper.selectByPrimaryKeyForUpdate(activityId);
+        notNull(activity);
+        if (activity.getState() != LuckyActivity.STATE_WAITING_VERIFY) {
+            throw new LuckyActivityException(1, "娲诲姩鏈浜庣瓑寰呭鏍哥姸鎬�");
+        }
+
+        luckyActivityManager.setState(activityId, LuckyActivity.STATE_NOT_SUBMIT_VERIFY, "涓诲姩鍙栨秷瀹℃牳");
     }
 
     @Override
@@ -275,6 +286,10 @@
         if (activity.getState() != null) {
             throw new LuckyActivityException(1, "涓嶈兘鏇存敼娲诲姩鐘舵��");
         }
+        if (!luckyActivityManager.canUpdate(activity.getId())) {
+            throw new LuckyActivityException(1, "褰撳墠娲诲姩涓嶈兘淇敼");
+        }
+
         activity.setUpdateTime(new Date());
         luckyActivityMapper.updateByPrimaryKeySelective(activity);
     }

--
Gitblit v1.8.0