refactor(game): 重构游戏平台不支持的方法
- 在 ErrorCode枚举中添加 PLATFORM_NOT_METHODS 错误码 - 修改 GamesFCServiceImpl、GamesSAServiceImpl 和 GamesXKServiceImpl 中不支持的方法,统一抛出 PLATFORM_NOT_METHODS异常 - 优化 SAClient 中的 kickMember 方法,返回 String 类型 - 新增 SAKickUserResponse 类用于处理踢出用户请求的返回main-sa
parent
8332c4fdcd
commit
871b31555b
|
@ -29,6 +29,7 @@ public enum ErrorCode {
|
|||
KICK_OUT_AILED(1013, "玩家踢出失败"),
|
||||
ACCOUNT_NOT_ONLINE(1014, "账号不在线"),
|
||||
FREQUENT_BALANCE_TRANSFER(1015, "当前游戏账号余额转移频繁"),
|
||||
PLATFORM_NOT_METHODS(1016, "游戏平台不支持的方法"),
|
||||
;
|
||||
|
||||
// 获取错误码
|
||||
|
|
|
@ -446,8 +446,7 @@ public class GamesFCServiceImpl implements IGamesService {
|
|||
*/
|
||||
@Override
|
||||
public Boolean exchangeTransferStatus(ExchangeTransferStatusRequestDTO exchangeTransferMoneyRequestDTO) {
|
||||
|
||||
return Boolean.TRUE;
|
||||
throw new ApiException(ErrorCode.PLATFORM_NOT_METHODS.getCode());
|
||||
|
||||
}
|
||||
|
||||
|
@ -537,9 +536,7 @@ public class GamesFCServiceImpl implements IGamesService {
|
|||
*/
|
||||
@Override
|
||||
public Boolean createFreeSpin(CreateFreeSpinRequestDTO createFreeSpinRequest) {
|
||||
|
||||
|
||||
return null;
|
||||
throw new ApiException(ErrorCode.PLATFORM_NOT_METHODS.getCode());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -550,14 +547,7 @@ public class GamesFCServiceImpl implements IGamesService {
|
|||
*/
|
||||
@Override
|
||||
public GetGameDetailResponseDTO getGameDetail(GetGameDetailRequestDTO getGameDetailRequestDTO) {
|
||||
|
||||
List<GameBettingDetails> gameBettingDetails = gameBettingDetailsService.selectGameBettingDetailsList(GameBettingDetailsDTO.builder().wagersId(getGameDetailRequestDTO.getWagersId()).build());
|
||||
if (!CollectionUtils.isEmpty(gameBettingDetails)) {
|
||||
GetGameDetailResponseDTO getGameDetailResponseDTO = new GetGameDetailResponseDTO();
|
||||
getGameDetailResponseDTO.setUrl(gameBettingDetails.get(0).getBetContent());
|
||||
return getGameDetailResponseDTO;
|
||||
}
|
||||
return null;
|
||||
throw new ApiException(ErrorCode.PLATFORM_NOT_METHODS.getCode());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -607,9 +597,7 @@ public class GamesFCServiceImpl implements IGamesService {
|
|||
*/
|
||||
@Override
|
||||
public List<GameFreeRecord> getFreeSpinDashflow(GetFreeSpinDashflowRequestDTO getFreeSpinDashflowRequestDTO) {
|
||||
|
||||
|
||||
return Collections.emptyList();
|
||||
throw new ApiException(ErrorCode.PLATFORM_NOT_METHODS.getCode());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -620,8 +608,7 @@ public class GamesFCServiceImpl implements IGamesService {
|
|||
*/
|
||||
@Override
|
||||
public Boolean cancelFreeSpin(CancelFreeSpinRequestDTO cancelFreeSpinRequestDTO) {
|
||||
|
||||
return Boolean.FALSE;
|
||||
throw new ApiException(ErrorCode.PLATFORM_NOT_METHODS.getCode());
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -49,14 +49,7 @@ public interface SAClient {
|
|||
})
|
||||
String loginWithoutRedirect(@Body String params);
|
||||
|
||||
/**
|
||||
* 获取游戏列表
|
||||
*
|
||||
* @param params 参数
|
||||
* @return {@link JILIGamesDTO }
|
||||
*/
|
||||
@Post("/getGameList")
|
||||
XKGamesDTO getGameList(@JSONBody Map<String, Object> params);
|
||||
|
||||
|
||||
|
||||
/**
|
||||
|
@ -102,19 +95,14 @@ public interface SAClient {
|
|||
* 踢出队员
|
||||
*
|
||||
* @param params 参数
|
||||
* @return {@link JILIKickMemberDTO }
|
||||
* @return {@link String }
|
||||
*/
|
||||
@Post("/kickMember")
|
||||
XKKickMemberDTO kickMember(@JSONBody Map<String, Object> params);
|
||||
@Post( url ="/api.aspx/KickUser",
|
||||
headers = {
|
||||
"Content-type: application/x-www-form-urlencoded"
|
||||
})
|
||||
String kickMember( @Body String params);
|
||||
|
||||
/**
|
||||
* 踢出所有队员
|
||||
*
|
||||
* @param params 参数
|
||||
* @return {@link JILIKickMemberAllDTO }
|
||||
*/
|
||||
@Get("/kickMemberAll")
|
||||
XKKickMemberAllDTO kickMemberAll(@JSONBody Map<String, Object> params);
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,34 @@
|
|||
package com.ff.game.api.sa.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import javax.xml.bind.annotation.XmlAccessType;
|
||||
import javax.xml.bind.annotation.XmlAccessorType;
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
/**
|
||||
* 响应类,用于踢出用户的请求返回。
|
||||
*
|
||||
* @author shi
|
||||
* @date 2025/03/26
|
||||
*/
|
||||
@XmlAccessorType(XmlAccessType.FIELD)
|
||||
@Data
|
||||
@XmlRootElement(name = "KickUserResponse")
|
||||
public class SAKickUserResponse {
|
||||
|
||||
/**
|
||||
* 错误信息ID。
|
||||
*/
|
||||
@XmlElement(name = "ErrorMsgId")
|
||||
private int errorMsgId;
|
||||
|
||||
/**
|
||||
* 错误信息描述。
|
||||
*/
|
||||
@XmlElement(name = "ErrorMsg")
|
||||
private String errorMsg;
|
||||
|
||||
|
||||
}
|
|
@ -388,7 +388,7 @@ public class GamesSAServiceImpl implements IGamesService {
|
|||
*/
|
||||
@Override
|
||||
public Boolean exchangeTransferStatus(ExchangeTransferStatusRequestDTO exchangeTransferMoneyRequestDTO) {
|
||||
return Boolean.TRUE;
|
||||
throw new ApiException(ErrorCode.PLATFORM_NOT_METHODS.getCode());
|
||||
}
|
||||
|
||||
|
||||
|
@ -407,7 +407,7 @@ public class GamesSAServiceImpl implements IGamesService {
|
|||
log.info("GamesSAServiceImpl [getBetRecordByTime] 请求参数 {}", betRecordByTimeDTO);
|
||||
Map<String, Object> params = new LinkedHashMap<>();
|
||||
params.put("FromTime", startTime);
|
||||
params.put("ToTime",endTime);
|
||||
params.put("ToTime", endTime);
|
||||
String query = JsonUtil.mapToQueryString(params);
|
||||
betRecordByTimeDTO.setQuery(query);
|
||||
String key = this.getKey(betRecordByTimeDTO, "GetAllBetDetailsForTimeIntervalDV");
|
||||
|
@ -448,7 +448,7 @@ public class GamesSAServiceImpl implements IGamesService {
|
|||
*/
|
||||
@Override
|
||||
public Boolean createFreeSpin(CreateFreeSpinRequestDTO createFreeSpinRequest) {
|
||||
throw new BaseException("当前平台不支持");
|
||||
throw new ApiException(ErrorCode.PLATFORM_NOT_METHODS.getCode());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -459,7 +459,7 @@ public class GamesSAServiceImpl implements IGamesService {
|
|||
*/
|
||||
@Override
|
||||
public GetGameDetailResponseDTO getGameDetail(GetGameDetailRequestDTO getGameDetailRequestDTO) {
|
||||
throw new BaseException("当前平台不支持");
|
||||
throw new ApiException(ErrorCode.PLATFORM_NOT_METHODS.getCode());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -470,20 +470,20 @@ public class GamesSAServiceImpl implements IGamesService {
|
|||
*/
|
||||
@Override
|
||||
public Boolean kickMember(KickMemberRequestDTO kickMemberRequestDTO) {
|
||||
log.info("GamesXKServiceImpl [kickMember] 请求参数 {}", kickMemberRequestDTO);
|
||||
log.info("GamesSAServiceImpl [kickMember] 请求参数 {}", kickMemberRequestDTO);
|
||||
Map<String, Object> params = new LinkedHashMap<>();
|
||||
params.put("account", kickMemberRequestDTO.getAccount());
|
||||
params.put("agentId", kickMemberRequestDTO.getAgentId());
|
||||
params.put("Username", kickMemberRequestDTO.getAccount());
|
||||
String query = JsonUtil.mapToQueryString(params);
|
||||
kickMemberRequestDTO.setQuery(query);
|
||||
String key = this.getKey(kickMemberRequestDTO, null);
|
||||
params.put("key", key);
|
||||
XKKickMemberDTO xkKickMemberDTO = SAClient.kickMember(params);
|
||||
String key = this.getKey(kickMemberRequestDTO, "KickUser");
|
||||
String result = SAClient.kickMember(key);
|
||||
SAKickUserResponse saKickUserResponse = XmlUtils.xmlDecrypt(result, SAKickUserResponse.class);
|
||||
Integer errorCode = saKickUserResponse.getErrorMsgId();
|
||||
//判断是否获取成功
|
||||
if (this.getIsSuccess(xkKickMemberDTO.getCode())) {
|
||||
if (this.getIsSuccess(errorCode)) {
|
||||
return Boolean.TRUE;
|
||||
} else {
|
||||
throw new BaseException(xkKickMemberDTO.getMsg());
|
||||
throw new ApiException(ErrorCode.KICK_OUT_AILED.getCode());
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -495,7 +495,7 @@ public class GamesSAServiceImpl implements IGamesService {
|
|||
*/
|
||||
@Override
|
||||
public Boolean kickMemberAll(KickMemberAllDTO kickMemberAllDTO) {
|
||||
throw new BaseException("当前平台不支持");
|
||||
throw new ApiException(ErrorCode.PLATFORM_NOT_METHODS.getCode());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -506,7 +506,7 @@ public class GamesSAServiceImpl implements IGamesService {
|
|||
*/
|
||||
@Override
|
||||
public List<GameFreeRecord> getFreeSpinDashflow(GetFreeSpinDashflowRequestDTO getFreeSpinDashflowRequestDTO) {
|
||||
throw new BaseException("当前平台不支持");
|
||||
throw new ApiException(ErrorCode.PLATFORM_NOT_METHODS.getCode());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -517,7 +517,7 @@ public class GamesSAServiceImpl implements IGamesService {
|
|||
*/
|
||||
@Override
|
||||
public Boolean cancelFreeSpin(CancelFreeSpinRequestDTO cancelFreeSpinRequestDTO) {
|
||||
throw new BaseException("当前平台不支持");
|
||||
throw new ApiException(ErrorCode.PLATFORM_NOT_METHODS.getCode());
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -463,7 +463,7 @@ public class GamesXKServiceImpl implements IGamesService {
|
|||
*/
|
||||
@Override
|
||||
public Boolean createFreeSpin(CreateFreeSpinRequestDTO createFreeSpinRequest) {
|
||||
throw new BaseException("当前平台不支持");
|
||||
throw new ApiException(ErrorCode.PLATFORM_NOT_METHODS.getCode());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -474,7 +474,7 @@ public class GamesXKServiceImpl implements IGamesService {
|
|||
*/
|
||||
@Override
|
||||
public GetGameDetailResponseDTO getGameDetail(GetGameDetailRequestDTO getGameDetailRequestDTO) {
|
||||
throw new BaseException("当前平台不支持");
|
||||
throw new ApiException(ErrorCode.PLATFORM_NOT_METHODS.getCode());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -510,7 +510,7 @@ public class GamesXKServiceImpl implements IGamesService {
|
|||
*/
|
||||
@Override
|
||||
public Boolean kickMemberAll(KickMemberAllDTO kickMemberAllDTO) {
|
||||
throw new BaseException("当前平台不支持");
|
||||
throw new ApiException(ErrorCode.PLATFORM_NOT_METHODS.getCode());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -521,7 +521,7 @@ public class GamesXKServiceImpl implements IGamesService {
|
|||
*/
|
||||
@Override
|
||||
public List<GameFreeRecord> getFreeSpinDashflow(GetFreeSpinDashflowRequestDTO getFreeSpinDashflowRequestDTO) {
|
||||
throw new BaseException("当前平台不支持");
|
||||
throw new ApiException(ErrorCode.PLATFORM_NOT_METHODS.getCode());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -532,7 +532,7 @@ public class GamesXKServiceImpl implements IGamesService {
|
|||
*/
|
||||
@Override
|
||||
public Boolean cancelFreeSpin(CancelFreeSpinRequestDTO cancelFreeSpinRequestDTO) {
|
||||
throw new BaseException("当前平台不支持");
|
||||
throw new ApiException(ErrorCode.PLATFORM_NOT_METHODS.getCode());
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue