kk 4 週間 前
コミット
02e9bc1ccc

+ 1 - 0
game-business/src/main/java/com/game/business/controller/AppGameLotteryController.java

@@ -70,6 +70,7 @@ public class AppGameLotteryController extends BaseController{
         if(StringUtils.isNotBlank(strDate)){
             queryLotteryWrapper.between(AppGameLottery::getGameRecordDate, strDate + " 00:00:00", strDate + " 23:59:59");
         }
+        queryLotteryWrapper.eq(AppGameLottery::getIsLottery, 1);
         queryLotteryWrapper.orderByDesc(AppGameLottery::getGameRecordDate);
         List<AppGameLottery> list = appGameLotteryService.list(queryLotteryWrapper);
         List<AppGameLotteryVO> resultList = new ArrayList<>();

+ 7 - 0
game-business/src/main/java/com/game/business/service/IAppGameService.java

@@ -74,6 +74,13 @@ public interface IAppGameService extends IService<AppGame> {
      */
     AppGame selectAppGameByClassIdAndCode(Long classId, String code);
 
+    /**
+     * 根据编码查询游戏
+     * @param code
+     * @return
+     */
+    AppGame selectAppGameByCode(String code);
+
     /**
      * 根据id查询游戏
      * @param ids

+ 8 - 0
game-business/src/main/java/com/game/business/service/impl/AppGameServiceImpl.java

@@ -117,6 +117,14 @@ public class AppGameServiceImpl extends ServiceImpl<AppGameMapper, AppGame> impl
         return appGameMapper.selectOne(queryGameWrapper);
     }
 
+    @Override
+    @DataSource(DataSourceType.SLAVE)
+    public AppGame selectAppGameByCode(String code) {
+        LambdaQueryWrapper<AppGame> queryGameWrapper = Wrappers.lambdaQuery();;
+        queryGameWrapper.eq(AppGame::getCode, code);
+        return appGameMapper.selectOne(queryGameWrapper);
+    }
+
     @Override
     @DataSource(DataSourceType.SLAVE)
     public List<AppGame> selectByIds(List<Long> ids) {

+ 82 - 58
game-business/src/main/java/com/game/business/task/AppGameBettingTask.java

@@ -81,6 +81,88 @@ public class AppGameBettingTask {
             return;
         }
 
+        // 修改倍数
+        if(type == 4){
+
+            String gameCode = null;
+            String gameDate = null;
+            String gameLotteryBet = null;
+            for (int i = 0; i < dataArry.size(); i++) {
+                JSONObject jsonObject = dataArry.getJSONObject(i);
+                if(jsonObject.containsKey("id")){
+                    gameCode = jsonObject.getString("id");
+                }
+                if(jsonObject.containsKey("gameDate")){
+                    gameDate = jsonObject.getString("gameDate");
+                }
+                if(jsonObject.containsKey("gameLotteryBet")){
+                    gameLotteryBet = jsonObject.getString("gameLotteryBet");
+                }
+            }
+
+            if(StringUtils.isBlank(gameCode)){
+                return;
+            }
+
+            if(StringUtils.isBlank(gameDate)){
+                return;
+            }
+
+            if(StringUtils.isBlank(gameLotteryBet)){
+                return;
+            }
+
+            AppGame appGame = appGameService.selectAppGameByCode(gameCode);
+            if(appGame == null){
+                return;
+            }
+
+            String redisKey = CacheConstants.GAME_LOTTERY_ITEM_MULTIPLE.concat(appGame.getId() + ":" + gameCode);
+            if(!redisCache.redisTemplate.opsForValue().setIfAbsent(redisKey, 1)){
+                return;
+            }
+            try {
+
+                gameLotteryBet = gameLotteryBet.replace(" ", "").trim();
+                JSONArray items = JSONArray.parseArray(gameLotteryBet);
+                if(items == null || items.isEmpty()){
+                    return;
+                }
+
+                AppGameItem appGameItem = new AppGameItem();
+                appGameItem.setGameId(appGame.getId());
+                List<AppGameItem> itemList = appGameItemService.selectAppGameItemList(appGameItem);
+
+                if(itemList == null || itemList.isEmpty()){
+                    return;
+                }
+
+                if(itemList.size() != items.size()){
+                    return;
+                }
+
+                AppGameItemMultiple appGameItemMultiple = new AppGameItemMultiple();
+                appGameItemMultiple.setGameId(appGame.getId());
+                appGameItemMultiple.setGameDate(gameDate);
+                appGameItemMultiple.setItemMultiple(gameLotteryBet.substring(1, gameLotteryBet.length() - 1));
+                appGameItemMultipleService.save(appGameItemMultiple);
+
+                // 升序排序
+                itemList.stream().sorted(Comparator.comparing(AppGameItem::getItemLocation));
+
+                for (int j = 0; j < itemList.size(); j++) {
+                    AppGameItem gameItem = itemList.get(j);
+                    gameItem.setItemMultiple(items.getDouble(j));
+                    appGameItemService.updateAppGameItem(gameItem);
+                }
+            }catch (Exception e){
+                e.printStackTrace();
+            }finally {
+                redisCache.redisTemplate.delete(redisKey);
+            }
+            return;
+        }
+
         // 更新倒计时
         if(type == 1){
 
@@ -218,64 +300,6 @@ public class AppGameBettingTask {
                 continue;
             }
 
-            // 修改倍数
-            if(type == 4){
-
-                String redisKey = CacheConstants.GAME_LOTTERY_ITEM_MULTIPLE.concat(appGame.getId() + ":" + gameCode);
-                if(!redisCache.redisTemplate.opsForValue().setIfAbsent(redisKey, 1)){
-                    continue;
-                }
-                try {
-
-                    if(gameCode.equals(Common.GAME_ONE_CODE)){
-
-                        String gameLotteryBet = gameLotteryObject.getString("gameLotteryBet");
-                        if(StringUtils.isBlank(gameLotteryBet)){
-                            continue;
-                        }
-
-                        gameLotteryBet = gameLotteryBet.replace(" ", "").trim();
-                        JSONArray items = JSONArray.parseArray(gameLotteryBet);
-                        if(items == null || items.isEmpty()){
-                            continue;
-                        }
-
-                        AppGameItem appGameItem = new AppGameItem();
-                        appGameItem.setGameId(appGame.getId());
-                        List<AppGameItem> itemList = appGameItemService.selectAppGameItemList(appGameItem);
-
-                        if(itemList == null || itemList.isEmpty()){
-                            continue;
-                        }
-
-                        if(itemList.size() != items.size()){
-                            continue;
-                        }
-
-                        AppGameItemMultiple appGameItemMultiple = new AppGameItemMultiple();
-                        appGameItemMultiple.setGameId(appGame.getId());
-                        appGameItemMultiple.setGameDate(gameDate);
-                        appGameItemMultiple.setItemMultiple(gameLotteryBet.substring(1, gameLotteryBet.length() - 1));
-                        appGameItemMultipleService.save(appGameItemMultiple);
-
-                        // 升序排序
-                        itemList.stream().sorted(Comparator.comparing(AppGameItem::getItemLocation));
-
-                        for (int j = 0; j < itemList.size(); j++) {
-                            AppGameItem gameItem = itemList.get(j);
-                            gameItem.setItemMultiple(items.getDouble(j));
-                            appGameItemService.updateAppGameItem(gameItem);
-                        }
-                    }
-                }catch (Exception e){
-                    e.printStackTrace();
-                }finally {
-                    redisCache.redisTemplate.delete(redisKey);
-                }
-
-                continue;
-            }
-
             if(type == 3){
 
                 String redisKey = CacheConstants.GAME_LOTTERY_TASK_CREATE.concat(appGame.getId() + ":" + gameCode);