refactor(ff-game): 优化游戏结果状态处理逻辑
- 新增游戏状态判断逻辑,根据结算金额确定游戏结果 - 修改 gameStatus 字段赋值方式,提高代码可读性和维护性main-p
parent
1affb42367
commit
c3f21c9b49
|
@ -159,7 +159,7 @@ public class ApiGameController extends BaseController {
|
|||
ApiException.notNull(gameSecretKeyLangDTO, ErrorCode.LANG_NOT_EXIST.getCode());
|
||||
|
||||
|
||||
Member member = memberService.selectMemberByGameAccount(StringUtils.addSuffix(memberCreateApiRequest.getAccount(), memberCreateApiRequest.getCurrencyCode() + tenantSecretKey.getTenantSn()));
|
||||
Member member = memberService.selectMemberByAccount(memberCreateApiRequest.getAccount(), memberCreateApiRequest.getCurrencyCode(), gamePlatform.getPlatformCode());
|
||||
ApiException.notNull(member, ErrorCode.ACCOUNT_NOT_EXIST.getCode());
|
||||
|
||||
GamesLogin gamesLogin = GamesLogin.builder()
|
||||
|
@ -214,7 +214,8 @@ public class ApiGameController extends BaseController {
|
|||
.build());
|
||||
|
||||
// 获取用户信息
|
||||
Member member = memberService.selectMemberByGameAccount(StringUtils.addSuffix(gameExchangeBalanceRequest.getAccount(), gameExchangeBalanceRequest.getCurrencyCode() + tenantSecretKey.getTenantSn()));
|
||||
Member member = memberService.selectMemberByAccount(gameExchangeBalanceRequest.getAccount(), gameExchangeBalanceRequest.getCurrencyCode(), gameExchangeBalanceRequest.getPlatformCode());
|
||||
ApiException.notNull(member, ErrorCode.ACCOUNT_NOT_EXIST.getCode());
|
||||
|
||||
|
||||
//操作第三方额度接口
|
||||
|
@ -280,8 +281,11 @@ public class ApiGameController extends BaseController {
|
|||
.systemCurrency(gameCreateFreeSpinRequest.getCurrencyCode()).build());
|
||||
ApiException.notNull(gameSecretKey, ErrorCode.CURRENCY_NOT_EXIST.getCode());
|
||||
|
||||
Member member = memberService.selectMemberByGameAccount(StringUtils.addSuffix(gameCreateFreeSpinRequest.getAccount(), gameCreateFreeSpinRequest.getCurrencyCode() + tenantSecretKey.getTenantSn()));
|
||||
|
||||
Member member = memberService.selectMemberByAccount(gameCreateFreeSpinRequest.getAccount(), gameCreateFreeSpinRequest.getCurrencyCode(), gameCreateFreeSpinRequest.getPlatformCode());
|
||||
ApiException.notNull(member, ErrorCode.ACCOUNT_NOT_EXIST.getCode());
|
||||
|
||||
|
||||
CreateFreeSpinRequestDTO createFreeSpinRequestDTO = CreateFreeSpinRequestDTO.builder()
|
||||
.account(member.getGameAccount())
|
||||
.currency(gameCreateFreeSpinRequest.getCurrencyCode())
|
||||
|
@ -390,10 +394,12 @@ public class ApiGameController extends BaseController {
|
|||
.systemCurrency(gameKickMemeberRequest.getCurrencyCode()).build());
|
||||
ApiException.notNull(gameSecretKey, ErrorCode.CURRENCY_NOT_EXIST.getCode());
|
||||
|
||||
TenantSecretKey tenantSecretKey = keyConfig.get();
|
||||
Member member = memberService.selectMemberByGameAccount(StringUtils.addSuffix(gameKickMemeberRequest.getAccount(), gameKickMemeberRequest.getCurrencyCode() + tenantSecretKey.getTenantSn()));
|
||||
|
||||
|
||||
Member member = memberService.selectMemberByAccount(gameKickMemeberRequest.getAccount(), gameKickMemeberRequest.getCurrencyCode(), gameKickMemeberRequest.getPlatformCode());
|
||||
ApiException.notNull(member, ErrorCode.ACCOUNT_NOT_EXIST.getCode());
|
||||
|
||||
|
||||
IGamesService iGamesService = gamesService.get(gameKickMemeberRequest.getPlatformCode() + Constants.SERVICE);
|
||||
ApiException.notNull(iGamesService, ErrorCode.PLATFORM_NOT_EXIST.getCode());
|
||||
|
||||
|
@ -498,8 +504,9 @@ public class ApiGameController extends BaseController {
|
|||
public AjaxResult exchangeBalanceAll(@Validated @RequestBody GameExchangeBalanceAllRequest gameExchangeBalanceAllRequest) {
|
||||
|
||||
TenantSecretKey tenantSecretKey = keyConfig.get();
|
||||
Member member = memberService.selectMemberByGameAccount(StringUtils.addSuffix(gameExchangeBalanceAllRequest.getAccount(), gameExchangeBalanceAllRequest.getCurrencyCode() + tenantSecretKey.getTenantSn()));
|
||||
ApiException.notNull(member, ErrorCode.ACCOUNT_NOT_EXIST.getCode());
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
List<GameSecretKeyCurrencyDTO> gameSecretKeys = gameSecretKeyCurrencyService.findByGameSecretKeyCurrencyDTOList(GameSecretKeyCurrencyDTO.builder()
|
||||
|
@ -519,6 +526,10 @@ public class ApiGameController extends BaseController {
|
|||
try {
|
||||
|
||||
IGamesService iGamesService = gamesService.get(gameSecretKeyCurrencyDTO.getPlatformCode() + Constants.SERVICE);
|
||||
|
||||
Member member = memberService.selectMemberByAccount(gameExchangeBalanceAllRequest.getAccount(), gameExchangeBalanceAllRequest.getCurrencyCode(), gameSecretKeyCurrencyDTO.getPlatformCode());
|
||||
ApiException.notNull(member, ErrorCode.ACCOUNT_NOT_EXIST.getCode());
|
||||
|
||||
//操作第三方钱包
|
||||
ExchangeTransferMoneyRequestDTO exchangeTransferMoneyRequestDTO = ExchangeTransferMoneyRequestDTO.builder()
|
||||
.agentId(gameSecretKeyCurrencyDTO.getCode())
|
||||
|
@ -553,6 +564,7 @@ public class ApiGameController extends BaseController {
|
|||
if (ObjectUtils.isEmpty(gameExchangeMoney)) {
|
||||
continue;
|
||||
}
|
||||
Member member = memberService.selectMemberById(gameExchangeMoney.getMemberId());
|
||||
balanceMap.put(gameExchangeMoney.getPlatformCode(), gameExchangeMoney.getBalance());
|
||||
BigDecimal balance = gameExchangeMoney.getBalance();
|
||||
balanceAll = NumberUtil.add(balanceAll, balance);
|
||||
|
|
|
@ -2,6 +2,7 @@ package com.ff.member.mapper;
|
|||
|
||||
import java.util.List;
|
||||
import com.ff.member.domain.Member;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
/**
|
||||
* 会员Mapper接口
|
||||
|
@ -69,4 +70,15 @@ public interface MemberMapper
|
|||
* @return {@link Member }
|
||||
*/
|
||||
Member selectMemberByGameAccount(String gameAccount);
|
||||
|
||||
|
||||
/**
|
||||
* 按帐户选择成员
|
||||
*
|
||||
* @param account 账户
|
||||
* @param currencyCode 货币代码
|
||||
* @param platformCode 平台代码
|
||||
* @return {@link Member }
|
||||
*/
|
||||
Member selectMemberByAccount(@Param("account") String account,@Param("currencyCode") String currencyCode,@Param("platformCode") String platformCode);
|
||||
}
|
||||
|
|
|
@ -74,4 +74,14 @@ public interface IMemberService
|
|||
* @return {@link Member }
|
||||
*/
|
||||
Member selectMemberByGameAccount(String gameAccount);
|
||||
|
||||
/**
|
||||
* 按帐户选择成员
|
||||
*
|
||||
* @param account 账户
|
||||
* @param currencyCode 货币代码
|
||||
* @param platformCode 平台代码
|
||||
* @return {@link Member }
|
||||
*/
|
||||
Member selectMemberByAccount(String account,String currencyCode,String platformCode);
|
||||
}
|
||||
|
|
|
@ -126,4 +126,17 @@ public class MemberServiceImpl implements IMemberService
|
|||
public Member selectMemberByGameAccount(String gameAccount) {
|
||||
return memberMapper.selectMemberByGameAccount(gameAccount);
|
||||
}
|
||||
|
||||
/**
|
||||
* 按帐户选择成员
|
||||
*
|
||||
* @param account 账户
|
||||
* @param currencyCode 货币代码
|
||||
* @param platformCode 平台代码
|
||||
* @return {@link Member }
|
||||
*/
|
||||
@Override
|
||||
public Member selectMemberByAccount(String account, String currencyCode, String platformCode) {
|
||||
return memberMapper.selectMemberByAccount(account,currencyCode,platformCode);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -96,4 +96,9 @@
|
|||
<include refid="selectMemberVo"/>
|
||||
where game_account = #{gameAccount}
|
||||
</select>
|
||||
|
||||
<select id="selectMemberByAccount" parameterType="String" resultMap="MemberResult">
|
||||
<include refid="selectMemberVo"/>
|
||||
where game_account = #{gameAccount} and platform_code = #{platformCode} and currency_code = #{currencyCode}
|
||||
</select>
|
||||
</mapper>
|
Loading…
Reference in New Issue