Ver Fonte

自动更新解析状态

suochencheng há 6 anos atrás
pai
commit
38228638f4

+ 2 - 1
src/main/java/com/izouma/awesomeadmin/dao/PlayerInfoMapper.java

@@ -49,5 +49,6 @@ public interface PlayerInfoMapper {
     List<PlayerInfo> querySettlementPlayer(PlayerInfo record);
 
     PlayerInfo queryErrorPlayerInfo(Integer userId);
-}
 
+    List<PlayerInfo> queryNoAnalysisList(PlayerInfo record);
+}

+ 15 - 0
src/main/java/com/izouma/awesomeadmin/dao/PlayerInfoMapper.xml

@@ -1552,6 +1552,21 @@
     </select>
 
 
+    <select id="queryNoAnalysisList" parameterType="java.util.Map" resultType="com.izouma.awesomeadmin.model.PlayerInfo">
+        SELECT
+                *
+            FROM
+                player_info
+            WHERE
+                del_flag = 'N'
+            AND status_flag = 3
+            AND DATE_SUB(
+                    CURRENT_TIMESTAMP (),
+                    INTERVAL 60 MINUTE
+                ) <![CDATA[ >= ]]>  create_time
+
+    </select>
+
     <select id="queryNoStartPlayer" parameterType="java.util.Map" resultType="com.izouma.awesomeadmin.model.PlayerInfo">
         SELECT
                 *

+ 2 - 0
src/main/java/com/izouma/awesomeadmin/service/PlayerInfoService.java

@@ -48,5 +48,7 @@ public interface PlayerInfoService {
     PlayerInfo getErrorPlayerInfo(Integer id);
 
     boolean gameOver(PlayerInfo record);
+
+    Result updateNoAnalysis(PlayerInfo record);
 }
 

+ 4 - 0
src/main/java/com/izouma/awesomeadmin/service/impl/HouseInfoServiceImpl.java

@@ -937,8 +937,12 @@ public class HouseInfoServiceImpl implements HouseInfoService {
         logger.info("updateToAnalysis");
         try {
 
+            //更新玩家解析状态
+            playerInfoService.updateNoAnalysis(null);
+
             int updates = houseInfoMapper.updateToAnalysis(record);
 
+
             if (updates > 0) {
 
                 return new Result(true, "更新成功");

+ 27 - 0
src/main/java/com/izouma/awesomeadmin/service/impl/PlayerInfoServiceImpl.java

@@ -398,6 +398,33 @@ public class PlayerInfoServiceImpl implements PlayerInfoService {
         return new Result(false, "领取失败");
     }
 
+    @Override
+    public Result updateNoAnalysis(PlayerInfo record) {
+
+        logger.info("updateNoAnalysis");
+        try {
+
+            List<PlayerInfo> playerInfoList = playerInfoMapper.queryNoAnalysisList(record);
+
+            for (PlayerInfo playerInfo : playerInfoList) {
+                playerInfo.setKill3time(99999999L);
+                playerInfo.setKillNumber(0);
+                playerInfo.setStatusFlag(AppConstant.PlayerStatus.PROCESSED);
+                playerInfo.setRemark("长时间未解析,系统自动解析");
+
+                playerInfoMapper.updateByPrimaryKeySelective(playerInfo);
+            }
+
+            return new Result(true, "成功");
+
+        } catch (Exception e) {
+            logger.error("updateNoAnalysis", e);
+        }
+
+        return new Result(false, "失败");
+    }
+
+
     @Override
     public PlayerInfo getErrorPlayerInfo(Integer userId) {
         logger.info("getErrorPlayerInfo");