OCT 1. 更新获取游戏详细信息接口
This commit is contained in:
parent
e24e1216f1
commit
751417a2b8
|
@ -0,0 +1,48 @@
|
||||||
|
package com.cmhi.gds.controller;
|
||||||
|
|
||||||
|
import com.cmhi.gds.common.ErrorCode;
|
||||||
|
import com.cmhi.gds.exception.ControllerNotSupportException;
|
||||||
|
import org.springframework.boot.autoconfigure.web.ServerProperties;
|
||||||
|
import org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController;
|
||||||
|
import org.springframework.boot.web.servlet.error.DefaultErrorAttributes;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.http.ResponseEntity;
|
||||||
|
import org.springframework.stereotype.Controller;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The type Error controller.
|
||||||
|
*
|
||||||
|
* @author <huangxin@cmhi.chinamoblie.com>
|
||||||
|
*/
|
||||||
|
@Controller
|
||||||
|
public class ErrorController extends BasicErrorController {
|
||||||
|
/**
|
||||||
|
* Instantiates a new Error controller.
|
||||||
|
*
|
||||||
|
* @param serverProperties the server properties
|
||||||
|
*/
|
||||||
|
public ErrorController(ServerProperties serverProperties) {
|
||||||
|
super(new DefaultErrorAttributes(), serverProperties.getError());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Error response entity.
|
||||||
|
*
|
||||||
|
* @param request the request
|
||||||
|
* @return the response entity
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public ResponseEntity<Map<String, Object>> error(HttpServletRequest request) {
|
||||||
|
HttpStatus status = getStatus(request);
|
||||||
|
|
||||||
|
if (status.value() == HttpServletResponse.SC_NOT_FOUND) {
|
||||||
|
throw new ControllerNotSupportException(ErrorCode.ERR_UNKNOWNINTERFACE);
|
||||||
|
}
|
||||||
|
|
||||||
|
return super.error(request);
|
||||||
|
}
|
||||||
|
}
|
|
@ -11,6 +11,7 @@ import com.cmhi.gds.pojo.dto.protocol.info.GetGameInfoDetailReq;
|
||||||
import com.cmhi.gds.pojo.dto.protocol.info.GetGamesInfoRsp;
|
import com.cmhi.gds.pojo.dto.protocol.info.GetGamesInfoRsp;
|
||||||
import com.cmhi.gds.pojo.dto.protocol.info.GetGamesSummaryRsp;
|
import com.cmhi.gds.pojo.dto.protocol.info.GetGamesSummaryRsp;
|
||||||
import com.cmhi.gds.pojo.dto.protocol.info.ReportGameServerReq;
|
import com.cmhi.gds.pojo.dto.protocol.info.ReportGameServerReq;
|
||||||
|
import com.cmhi.gds.pojo.vo.GameDetail;
|
||||||
import com.cmhi.gds.pojo.vo.GameTableItemsDetail;
|
import com.cmhi.gds.pojo.vo.GameTableItemsDetail;
|
||||||
import com.cmhi.gds.pojo.vo.GameTableItemsSummary;
|
import com.cmhi.gds.pojo.vo.GameTableItemsSummary;
|
||||||
import com.cmhi.gds.security.annotation.Decryption;
|
import com.cmhi.gds.security.annotation.Decryption;
|
||||||
|
@ -85,7 +86,7 @@ public class GameDatabaseInfoController {
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
public ProtocolRespDTO<GetGamesInfoRsp> getGameInfoDetails(@Validated(ValidGroups.AddGameServiceValid.class)
|
public ProtocolRespDTO<GetGamesInfoRsp> getGameInfoDetails(@Validated(ValidGroups.AddGameServiceValid.class)
|
||||||
@RequestBody ProtocolReqDTO<GetGameInfoDetailReq> mr) {
|
@RequestBody ProtocolReqDTO<GetGameInfoDetailReq> mr) {
|
||||||
GetGamesInfoRsp rspInfo = GetGamesInfoRsp.builder().build();
|
GetGamesInfoRsp rspInfo = GetGamesInfoRsp.builder().items(new ArrayList<>()).build();
|
||||||
List<GameInfoContent> gameContent = new ArrayList<>();
|
List<GameInfoContent> gameContent = new ArrayList<>();
|
||||||
|
|
||||||
//获取TaskId列表
|
//获取TaskId列表
|
||||||
|
@ -116,7 +117,10 @@ public class GameDatabaseInfoController {
|
||||||
gi.setStatus(ErrorCode.ERR_OK.getCode());
|
gi.setStatus(ErrorCode.ERR_OK.getCode());
|
||||||
gi.setMessage(new String[]{ErrorCode.ERR_OK.getMsg()});
|
gi.setMessage(new String[]{ErrorCode.ERR_OK.getMsg()});
|
||||||
|
|
||||||
v.getGameDetails().forEach(k -> {
|
v.getGameDetails()
|
||||||
|
.stream()
|
||||||
|
.sorted(Comparator.comparingLong(GameDetail::getGameInfoId))
|
||||||
|
.forEach(k -> {
|
||||||
GameInfoDetail gd = GameInfoDetail.builder()
|
GameInfoDetail gd = GameInfoDetail.builder()
|
||||||
.gameInfoId(k.getGameInfoId())
|
.gameInfoId(k.getGameInfoId())
|
||||||
.version(k.getVersion())
|
.version(k.getVersion())
|
||||||
|
@ -126,7 +130,6 @@ public class GameDatabaseInfoController {
|
||||||
|
|
||||||
gi.getGamesInfo().add(gd);
|
gi.getGamesInfo().add(gd);
|
||||||
});
|
});
|
||||||
|
|
||||||
gameContent.add(gi);
|
gameContent.add(gi);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -24,7 +24,7 @@ public class BaseProtocolDTO<T> {
|
||||||
* 当前协议版本号
|
* 当前协议版本号
|
||||||
*/
|
*/
|
||||||
@NotNull(message = "ver 字段不能为空", groups = ValidGroups.ProtocolCommonValid.class)
|
@NotNull(message = "ver 字段不能为空", groups = ValidGroups.ProtocolCommonValid.class)
|
||||||
@Range(min = 3, max = 9999, message = "ver 字段最小值为 3", groups = ValidGroups.ProtocolCommonValid.class)
|
@Range(min = 1, max = 9999, message = "ver 字段最小值为 1", groups = ValidGroups.ProtocolCommonValid.class)
|
||||||
private Integer ver;
|
private Integer ver;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
<id column="name" property="name"/>
|
<id column="name" property="name"/>
|
||||||
<id column="company" property="company"/>
|
<id column="company" property="company"/>
|
||||||
<collection property="gameDetails" ofType="com.cmhi.gds.pojo.vo.GameDetail">
|
<collection property="gameDetails" ofType="com.cmhi.gds.pojo.vo.GameDetail">
|
||||||
<result column="id" property="gameInfoId"/>
|
<result column="gameInfoId" property="gameInfoId"/>
|
||||||
<result column="filename" property="filename"/>
|
<result column="filename" property="filename"/>
|
||||||
<result column="version" property="version"/>
|
<result column="version" property="version"/>
|
||||||
<result column="md5sum" property="md5sum"/>
|
<result column="md5sum" property="md5sum"/>
|
||||||
|
@ -39,8 +39,8 @@
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="selectAllGameDetailById" resultMap="game_table_detail">
|
<select id="selectAllGameDetailById" resultMap="game_table_detail">
|
||||||
SELECT t.id, t.company, t.name, i.filename, i.version, i.md5sum FROM game_tables t LEFT JOIN game_info i on t.id = i.gameId
|
SELECT t.id, t.company, t.name, i.id as gameInfoId, i.filename, i.version, i.md5sum FROM game_tables t LEFT JOIN game_info i on t.id = i.gameId
|
||||||
WHERE i.id IN
|
WHERE t.id IN
|
||||||
<foreach collection="idList" item="id" index="index" open="(" close=")" separator=",">
|
<foreach collection="idList" item="id" index="index" open="(" close=")" separator=",">
|
||||||
#{id}
|
#{id}
|
||||||
</foreach>
|
</foreach>
|
||||||
|
|
Loading…
Reference in New Issue