LAPTOP-K22HLJIH\hurixing 2 роки тому
батько
коміт
83fe6f451d

+ 50 - 0
hcp-core/src/main/java/com/yingyangfly/core/domain/GamePastRecords.java

@@ -0,0 +1,50 @@
+package com.yingyangfly.core.domain;
+
+import com.yingyangfly.common.domain.BaseEntity;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+/**
+ * 历史游戏表
+ */
+@Data
+@Accessors(chain = true)
+public class GamePastRecords extends BaseEntity {
+
+    private Long id;
+    @ApiModelProperty(value = "游戏编码")
+    private String gameCode;
+    @ApiModelProperty(value = "游戏类型(字典维护)")
+    private String gameType;
+    @ApiModelProperty(value = "游戏url")
+    private String gameUrl;
+    @ApiModelProperty(value = "游戏名字")
+    private String gameName;
+    @ApiModelProperty(value = "游戏时长(分钟)")
+    private Integer gameDuration;
+    @ApiModelProperty(value = "游戏简易程度")
+    private String gameDifficulty;
+    @ApiModelProperty(value = "游戏简易程度速率")
+    private String gameDifficultyRate;
+    @ApiModelProperty(value = "游戏视频介绍url")
+    private String gameVideoUrl;
+    @ApiModelProperty(value = "机构名字")
+    private String orgName;
+    @ApiModelProperty(value = "描述")
+    private String desn;
+    @ApiModelProperty(value = "封面图")
+    private String gameCoverImage;
+    @ApiModelProperty(value = "总关卡")
+    private Integer totalNum;
+    @ApiModelProperty(value = "背景图片")
+    private String gameBackgroundImage;
+    @ApiModelProperty(value = "游戏插画")
+    private String gameInbetweenImage;
+    @ApiModelProperty(value = "游戏简短玩法")
+    private String gameShortDesn;
+    @ApiModelProperty(value = "是否支持全屏  0 是支持,1 是非支持")
+    private String fullFlag;
+    @ApiModelProperty(value = "边框地址")
+    private String frameImg;
+}

+ 12 - 0
hcp-core/src/main/java/com/yingyangfly/core/mapper/GamePastRecordsMapper.java

@@ -0,0 +1,12 @@
+package com.yingyangfly.core.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.yingyangfly.core.domain.GamePastRecords;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 历史游戏表 表数据库访问层
+ */
+@Mapper
+public interface GamePastRecordsMapper extends BaseMapper<GamePastRecords> {
+}

+ 16 - 0
hcp-core/src/main/java/com/yingyangfly/core/service/GamePastRecordsService.java

@@ -0,0 +1,16 @@
+package com.yingyangfly.core.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.yingyangfly.core.domain.GamePastRecords;
+
+/**
+ * 历史游戏
+ */
+public interface GamePastRecordsService extends IService<GamePastRecords> {
+
+    /**
+     * 恢复游戏
+     * @return
+     */
+     void recoverGame(GamePastRecords gamePastRecords);
+}

+ 7 - 0
hcp-core/src/main/java/com/yingyangfly/core/service/GameService.java

@@ -27,5 +27,12 @@ public interface GameService extends IService<Game> {
      * @return
      */
     boolean saveGame(Game game);
+
+    /**
+     * 删除游戏
+     * @param GameId
+     * @return
+     */
+    boolean delGame(Long GameId);
 }
 

+ 40 - 0
hcp-core/src/main/java/com/yingyangfly/core/service/impl/GamePastRecordsServiceImpl.java

@@ -0,0 +1,40 @@
+package com.yingyangfly.core.service.impl;
+
+import com.baomidou.mybatisplus.core.toolkit.IdWorker;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.yingyangfly.core.domain.Game;
+import com.yingyangfly.core.domain.GamePastRecords;
+import com.yingyangfly.core.mapper.GamePastRecordsMapper;
+import com.yingyangfly.core.service.GamePastRecordsService;
+import com.yingyangfly.core.service.GameService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import javax.annotation.Resource;
+
+
+@Service
+@Slf4j
+public class GamePastRecordsServiceImpl extends ServiceImpl<GamePastRecordsMapper, GamePastRecords> implements GamePastRecordsService {
+
+    @Resource
+    private GameService gameService;
+
+    /**
+     * 恢复游戏
+     * @return
+     */
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public void recoverGame(GamePastRecords gamePastRecords) {
+        // 新增进游戏表中
+        Game game = new Game();
+        BeanUtils.copyProperties(gamePastRecords,game);
+        game.setId(IdWorker.getId());
+        gameService.saveGame(game);
+        // 历史游戏表中删除
+        int result = baseMapper.deleteById(gamePastRecords.getId());
+    }
+}

+ 20 - 4
hcp-core/src/main/java/com/yingyangfly/core/service/impl/GameServiceImpl.java

@@ -3,18 +3,16 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.yingyangfly.core.domain.GameTaskDetail;
-import com.yingyangfly.core.domain.GameUser;
-import com.yingyangfly.core.domain.SysDictData;
+import com.yingyangfly.core.domain.*;
 import com.yingyangfly.core.dto.AppCurrentLoginUser;
 import com.yingyangfly.core.dto.CurrentLoginUser;
 import com.yingyangfly.core.dto.GameDto;
 import com.yingyangfly.core.enums.StatusEnums;
 import com.yingyangfly.core.mapper.GameMapper;
-import com.yingyangfly.core.domain.Game;
 import com.yingyangfly.core.mapper.GameTaskDetailMapper;
 import com.yingyangfly.core.mapper.GameUserMapper;
 import com.yingyangfly.core.security.util.TokenUtil;
+import com.yingyangfly.core.service.GamePastRecordsService;
 import com.yingyangfly.core.service.GamePlayRecordService;
 import com.yingyangfly.core.service.GameService;
 import com.yingyangfly.redis.client.RedisClient;
@@ -22,7 +20,9 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
+import javax.annotation.Resource;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -50,6 +50,9 @@ public class GameServiceImpl extends ServiceImpl<GameMapper, Game> implements Ga
     @Autowired
     private GameTaskDetailMapper gameTaskDetailMapper;
 
+    @Resource
+    private GamePastRecordsService gamePastRecordsService;
+
     @Override
     public Game selectByGameCode(String gameCode) {
         CurrentLoginUser currentUser = tokenUtil.getCurrentUser();
@@ -136,6 +139,19 @@ public class GameServiceImpl extends ServiceImpl<GameMapper, Game> implements Ga
         return saveOrUpdate(game);
     }
 
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public boolean delGame(Long gameId) {
+        Game game = getById(gameId);
+        // 新增历史游戏
+        GamePastRecords gamePastRecords = new GamePastRecords();
+        BeanUtils.copyProperties(game,gamePastRecords);
+        gamePastRecords.setId(IdWorker.getId());
+        gamePastRecordsService.save(gamePastRecords);
+        // 删除游戏
+        return removeById(gameId);
+    }
+
 }
 
 

+ 2 - 1
hcp-core/src/main/java/com/yingyangfly/core/service/impl/SysUserService.java

@@ -219,7 +219,8 @@ public class SysUserService extends  ServiceImpl<SysUserMapper,SysUser> {
             queryWrapper.like("user_name", user.getUserName());
         }
         if (!StringUtils.isEmpty(user.getMobile())) {
-            queryWrapper.eq("mobile", user.getMobile());
+            String encrypt = Sm4Util.encrypt(user.getMobile());
+            queryWrapper.eq("mobile", encrypt);
         }
         if (!StringUtils.isEmpty(user.getStatus())) {
             queryWrapper.eq("status", user.getStatus());

+ 1 - 2
hcp-platform/src/main/java/com/yingyangfly/platform/controller/GameController.java

@@ -101,8 +101,7 @@ public class GameController {
     @ApiOperation("删除")
     @TraceLog
     public ResultResponse<Boolean> delete(@RequestBody IdDto dto) {
-        Game game = new Game().setId(dto.getId()).setStatus(StatusEnums.DELETED.getIntCode());
-        return ResultResponse.success(gameService.saveOrUpdate(game));
+        return ResultResponse.success(gameService.delGame(dto.getId()));
     }
 
     @PostMapping("/recommend")

+ 59 - 0
hcp-platform/src/main/java/com/yingyangfly/platform/controller/GamePastRecordsController.java

@@ -0,0 +1,59 @@
+package com.yingyangfly.platform.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.yingyangfly.common.dto.ResultResponse;
+import com.yingyangfly.common.log.annotation.TraceLog;
+import com.yingyangfly.core.domain.Game;
+import com.yingyangfly.core.domain.GamePastRecords;
+import com.yingyangfly.core.dto.IdDto;
+import com.yingyangfly.core.service.GamePastRecordsService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+
+@RestController
+@RequestMapping("/game/past/records")
+@Api(tags = "历史游戏")
+@Slf4j
+public class GamePastRecordsController {
+
+
+    @Resource
+    private GamePastRecordsService gamePastRecordsService;
+
+
+    @PostMapping("/list")
+    @ApiOperation("列表")
+    @TraceLog
+    public ResultResponse<IPage<GamePastRecords>> selectAll(@RequestBody GamePastRecords gamePastRecords) {
+        QueryWrapper<GamePastRecords> queryWrapper = new QueryWrapper<>();
+        if(!StringUtils.isEmpty(gamePastRecords.getGameName())){
+            queryWrapper.like("game_name","%"+gamePastRecords.getGameName()+"%");
+        }
+        if(!StringUtils.isEmpty(gamePastRecords.getGameType())){
+            queryWrapper.eq("game_type",gamePastRecords.getGameType());
+        }
+        return ResultResponse.success(gamePastRecordsService.page(new Page<>(gamePastRecords.getPage(),gamePastRecords.getLimit())
+                , queryWrapper));
+    }
+
+
+    @PostMapping("/recover")
+    @ApiOperation("恢复游戏")
+    @TraceLog
+    public ResultResponse recoverGame(@RequestBody IdDto dto){
+        GamePastRecords gamePastRecords = gamePastRecordsService.getById(dto.getId());
+        gamePastRecordsService.recoverGame(gamePastRecords);
+        return ResultResponse.success();
+    }
+
+}

+ 3 - 0
hcp-platform/src/main/java/com/yingyangfly/platform/controller/GameVoiceController.java

@@ -52,6 +52,9 @@ public class GameVoiceController{
         if(!StringUtils.isEmpty(gameVoice.getVoiceName())){
             queryWrapper.eq("voice_name",gameVoice.getVoiceName());
         }
+        if(!StringUtils.isEmpty(gameVoice.getVoiceType())){
+            queryWrapper.eq("voice_type",gameVoice.getVoiceType());
+        }
         queryWrapper.eq("org_code",currentUser.getOrgCode());
         return ResultResponse.success(gameVoiceService.list(queryWrapper));
     }

+ 1 - 3
hcp-platform/src/main/java/com/yingyangfly/platform/sys/job/controller/SysJobController.java

@@ -30,9 +30,7 @@ public class SysJobController {
     @TraceLog
     public ResultResponse list(@RequestBody SysJob sysJob) {
 
-        IPage<SysJob> page = jobService.selectSysJobPage(sysJob);
-
-        return ResultResponse.success(page);
+        return  jobService.selectSysJobPage(sysJob);
     }
 
 

+ 20 - 4
hcp-platform/src/main/java/com/yingyangfly/platform/sys/job/service/SysJobService.java

@@ -1,7 +1,9 @@
 package com.yingyangfly.platform.sys.job.service;
+import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.yingyangfly.common.dto.ResultResponse;
 import com.yingyangfly.core.security.util.TokenUtil;
 import com.yingyangfly.platform.sys.job.util.ScheduleUtils;
 import com.yingyangfly.platform.sys.job.constant.ScheduleConstants;
@@ -191,16 +193,30 @@ public class SysJobService {
         return rows;
     }
 
-    public IPage<SysJob> selectSysJobPage(SysJob sysJob) {
+    public ResultResponse selectSysJobPage(SysJob sysJob) {
         CurrentLoginUser currentUser = tokenUtil.getCurrentUser();
         Page<SysJob> rowPage = new Page(sysJob.getPage(), sysJob.getLimit());
         QueryWrapper<SysJob> queryWrapper = new QueryWrapper<>();
+        // 名称
+        if (StrUtil.isNotEmpty(sysJob.getJobName())){
+            queryWrapper.eq("job_name",sysJob.getJobName());
+        }
         //查询系统定时任务加商户自己的定时任务
-        queryWrapper.eq("org_code",currentUser.getOrgCode());
+        if ("system".equals(currentUser.getOrgCode())){
+            if (StrUtil.isNotEmpty(sysJob.getOrgCode())){
+                queryWrapper.eq("org_code",sysJob.getOrgCode());
+            }
+        }else {
+            if (StrUtil.isNotEmpty(sysJob.getOrgCode())){
+                return ResultResponse.fail("无权限查询其他机构的定时任务");
+            }
+            queryWrapper.eq("org_code",currentUser.getOrgCode());
+        }
+
         if(!StringUtils.isEmpty(sysJob.getStatus())){
             queryWrapper.eq("status",sysJob.getStatus());
         }
-        return jobMapper.selectPage(rowPage, queryWrapper);
+        return ResultResponse.success(jobMapper.selectPage(rowPage, queryWrapper));
 
     }
-}
+}