Forráskód Böngészése

获取工具剩余时常

呵呵哒 3 éve
szülő
commit
1c55ff7afa

+ 2 - 2
src/main/java/com/td/boss/game/complayersattri/controller/ComPlayersLuckyController.java

@@ -22,8 +22,8 @@ public class ComPlayersLuckyController {
      * @return
      */
     @GetMapping("/tools")
-    public Result<?> getLandTools() {
-        return Result.of(service.getLandTools(), true, "查询成功");
+    public Result<?> getLandTools(String userId) {
+        return Result.of(service.getLandTools(userId), true, "查询成功");
     }
 
     /**

+ 1 - 1
src/main/java/com/td/boss/game/complayersattri/service/ComPlayersLuckyService.java

@@ -44,7 +44,7 @@ public interface ComPlayersLuckyService extends CommonService<ComPlayersLuckyVo,
      *
      * @return
      */
-    List<ComPlayersLuckyToolsVo> getLandTools();
+    List<ComPlayersLuckyToolsVo> getLandTools(String userId);
 
     /**
      * 获取土地升级列表

+ 15 - 3
src/main/java/com/td/boss/game/complayersattri/service/ComPlayersLuckyServiceImpl.java

@@ -72,7 +72,7 @@ public class ComPlayersLuckyServiceImpl extends CommonServiceImpl<ComPlayersLuck
     @Transactional(rollbackFor = Exception.class)
     public Result useLuckyTools(String userId, Integer toolId, Integer landId) {
         //验证工具是否存在
-        ComPlayersLuckyToolsVo tools = getLandTools().stream().filter(a -> a.getId().equals(toolId)).findFirst().orElse(null);
+        ComPlayersLuckyToolsVo tools = getLandTools(userId).stream().filter(a -> a.getId().equals(toolId)).findFirst().orElse(null);
         if (tools == null || tools.isEnable() == false) {
             return Result.of(null, false, "无效工具");
         }
@@ -302,9 +302,21 @@ public class ComPlayersLuckyServiceImpl extends CommonServiceImpl<ComPlayersLuck
      * @return
      */
     @Override
-    public List<ComPlayersLuckyToolsVo> getLandTools() {
+    public List<ComPlayersLuckyToolsVo> getLandTools(String userId) {
         String land_tools = comConfigService.selectByKey(toolskey);
-        return JSONUtil.toList(land_tools, ComPlayersLuckyToolsVo.class);
+        List<ComPlayersLuckyToolsVo> comPlayersLuckyToolsVos = JSONUtil.toList(land_tools, ComPlayersLuckyToolsVo.class);
+        Optional<ComPlayersLucky> firstByUserIdOrderByCreateTimeDesc = repository.findFirstByUserIdOrderByCreateTimeDesc(userId);
+        for (ComPlayersLuckyToolsVo comPlayersLuckyToolsVo : comPlayersLuckyToolsVos) {
+            long canUseTime = 0;
+            if (firstByUserIdOrderByCreateTimeDesc.isPresent()) {
+                DateTime offset = DateUtil.offset(firstByUserIdOrderByCreateTimeDesc.get().getCreateTime(), DateField.HOUR, comPlayersLuckyToolsVo.getUseHour());
+                if (offset.after(new Date())) {
+                    canUseTime = DateUtil.betweenMs(offset, new Date());
+                }
+            }
+            comPlayersLuckyToolsVo.setActivtyTime(canUseTime);
+        }
+        return comPlayersLuckyToolsVos;
     }
 
     /**

+ 2 - 0
src/main/java/com/td/boss/game/complayersattri/vo/ComPlayersLuckyToolsVo.java

@@ -24,4 +24,6 @@ public class ComPlayersLuckyToolsVo {
      */
     private Date createTime;
     private boolean isEnable;
+
+    private Long activtyTime;
 }

+ 1 - 1
src/test/java/com/td/boss/ComPlayerLuckyTests.java

@@ -32,7 +32,7 @@ public class ComPlayerLuckyTests {
 
     @Test
     public void getLandTools() {
-        Result<?> landTools = comPlayersLuckyController.getLandTools();
+        Result<?> landTools = comPlayersLuckyController.getLandTools(userId);
         System.out.println(JSONUtil.toJsonStr(landTools));
     }