user block 처리 수정
dynamodb UserBase 변경부분으로 교체
This commit is contained in:
@@ -47,8 +47,8 @@ public class BlackList {
|
||||
|
||||
public enum STATUSTYPE {
|
||||
WAIT,
|
||||
EXPIRATION,
|
||||
INPROGRESS,
|
||||
EXPIRATION, // 제재 종료
|
||||
INPROGRESS, // 제재 중
|
||||
FAIL
|
||||
;
|
||||
}
|
||||
|
||||
@@ -6,6 +6,7 @@ import com.caliverse.admin.domain.entity.BlackList;
|
||||
import com.caliverse.admin.domain.entity.HISTORYTYPE;
|
||||
import com.caliverse.admin.domain.request.BlackListRequest;
|
||||
import com.caliverse.admin.domain.response.BlackListResponse;
|
||||
import com.caliverse.admin.dynamodb.service.DynamodbUserService;
|
||||
import com.caliverse.admin.global.common.code.CommonCode;
|
||||
import com.caliverse.admin.global.common.code.ErrorCode;
|
||||
import com.caliverse.admin.global.common.code.SuccessCode;
|
||||
@@ -37,6 +38,7 @@ public class BlackListService {
|
||||
private final HistoryMapper historyMapper;
|
||||
private final HistoryService historyService;
|
||||
private final DynamoDBService dynamoDBService;
|
||||
private final DynamodbUserService dynamodbUserService;
|
||||
@Value("${caliverse.file}")
|
||||
private String excelPath;
|
||||
private final ResourceLoader resourceLoader;
|
||||
@@ -104,7 +106,8 @@ public class BlackListService {
|
||||
//adminDB 에 데이터 있는지 체크
|
||||
int cnt = blackListMapper.getCountByGuid(item);
|
||||
//gameDB isWhiteUser 값 체크
|
||||
boolean isBlackUser = dynamoDBService.isWhiteOrBlackUser(item);
|
||||
// boolean isBlackUser = dynamoDBService.isWhiteOrBlackUser(item);
|
||||
boolean isBlackUser = dynamodbUserService.isBlockUser(item);
|
||||
boolean isGuid = dynamoDBService.isGuidChecked(item);
|
||||
|
||||
// //guid 검증
|
||||
@@ -157,7 +160,8 @@ public class BlackListService {
|
||||
if(dynamoDBService.isGuidChecked(guid)){
|
||||
throw new RestApiException(CommonCode.ERROR.getHttpStatus(), ErrorCode.GUID_CHECK.getMessage());
|
||||
}
|
||||
boolean isBlackUser = dynamoDBService.isWhiteOrBlackUser(guid);
|
||||
// boolean isBlackUser = dynamoDBService.isWhiteOrBlackUser(guid);
|
||||
boolean isBlackUser = dynamodbUserService.isBlockUser(guid);
|
||||
if(isBlackUser){
|
||||
throw new RestApiException(CommonCode.ERROR.getHttpStatus(), ErrorCode.DYNAMODB_EXIT_ERROR.getMessage());
|
||||
}
|
||||
@@ -181,7 +185,8 @@ public class BlackListService {
|
||||
if(dynamoDBService.isGuidChecked(item.getGuid())){
|
||||
throw new RestApiException(CommonCode.ERROR.getHttpStatus(), ErrorCode.GUID_CHECK.getMessage());
|
||||
}
|
||||
boolean isBlackUser = dynamoDBService.isWhiteOrBlackUser(item.getGuid());
|
||||
// boolean isBlackUser = dynamoDBService.isWhiteOrBlackUser(item.getGuid());
|
||||
boolean isBlackUser = dynamodbUserService.isBlockUser(item.getGuid());
|
||||
if(isBlackUser){
|
||||
throw new RestApiException(CommonCode.ERROR.getHttpStatus(), ErrorCode.DYNAMODB_EXIT_ERROR.getMessage());
|
||||
}
|
||||
@@ -256,11 +261,12 @@ public class BlackListService {
|
||||
return blackListMapper.getScheduleBlackList();
|
||||
}
|
||||
|
||||
public void updateScheduleBlockUser(BlackList blockUser, String type){
|
||||
if(type.equals("start")){
|
||||
dynamoDBService.updateBlockUserStart(blockUser);
|
||||
}else{
|
||||
dynamoDBService.updateBlockUserEnd(blockUser.getGuid());
|
||||
}
|
||||
public void updateScheduleBlockUser(BlackList blockUser, BlackList.STATUSTYPE status){
|
||||
// if(status.equals(BlackList.STATUSTYPE.INPROGRESS)){
|
||||
// dynamoDBService.updateBlockUserStart(blockUser);
|
||||
// }else{
|
||||
// dynamoDBService.updateBlockUserEnd(blockUser.getGuid());
|
||||
// }
|
||||
dynamodbUserService.updateBlockUser(status, blockUser);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,34 +1,22 @@
|
||||
package com.caliverse.admin.dynamodb.service;
|
||||
|
||||
import com.caliverse.admin.Indicators.entity.MoneyLogInfo;
|
||||
import com.caliverse.admin.domain.entity.BlackList;
|
||||
import com.caliverse.admin.domain.entity.Event;
|
||||
import com.caliverse.admin.dynamodb.domain.atrrib.MoneyAttrib;
|
||||
import com.caliverse.admin.dynamodb.domain.atrrib.UserNicknameRegistryAttrib;
|
||||
import com.caliverse.admin.dynamodb.repository.AccountBaseRepository;
|
||||
import com.caliverse.admin.dynamodb.repository.MoneyRepository;
|
||||
import com.caliverse.admin.dynamodb.repository.SystemMetaMailRepository;
|
||||
import com.caliverse.admin.dynamodb.repository.UserNicknameRegistryRepository;
|
||||
import com.caliverse.admin.dynamodb.domain.atrrib.UserBaseAttrib;
|
||||
import com.caliverse.admin.dynamodb.repository.*;
|
||||
import com.caliverse.admin.global.common.annotation.DynamoDBTransaction;
|
||||
import com.caliverse.admin.global.common.constants.AdminConstants;
|
||||
import com.caliverse.admin.logs.Indicatordomain.StartEndTime;
|
||||
import com.caliverse.admin.logs.logservice.LogServiceHelper;
|
||||
import com.caliverse.admin.logs.logservice.indicators.IndicatorsMoneyService;
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Slf4j
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class DynamodbUserService {
|
||||
private final DynamoDBOperations DynamoDBOperations;
|
||||
private final AccountBaseRepository accountBaseRepository;
|
||||
|
||||
private final IndicatorsMoneyService moneyService;
|
||||
private final UserBaseRepository userBaseRepository;
|
||||
|
||||
private final ObjectMapper mapper = new ObjectMapper();
|
||||
|
||||
@@ -36,4 +24,27 @@ public class DynamodbUserService {
|
||||
return accountBaseRepository.isBlockUser(account_id);
|
||||
}
|
||||
|
||||
@DynamoDBTransaction
|
||||
public void updateBlockUser(BlackList.STATUSTYPE status, BlackList blackList){
|
||||
String guid = blackList.getGuid();
|
||||
UserBaseAttrib userBaseAttrib = userBaseRepository.findUser(guid);
|
||||
if(userBaseAttrib == null){
|
||||
try {
|
||||
log.error("updateBlockUser UserBase Null blackList: {}", mapper.writeValueAsString(blackList));
|
||||
}catch (JsonProcessingException e){
|
||||
log.error("updateBlockUser BlackList JsonProcessingException");
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
String account_id = userBaseAttrib.getAccountId();
|
||||
|
||||
if(status.equals(BlackList.STATUSTYPE.INPROGRESS)){
|
||||
accountBaseRepository.updateBlockUserStart(account_id, blackList);
|
||||
}
|
||||
else{
|
||||
accountBaseRepository.updateBlockUserEnd(account_id);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -195,13 +195,13 @@ public class DynamicScheduler {
|
||||
if(!nowDate.isBefore(startTime) && blockUser.getStatus().equals(BlackList.STATUSTYPE.WAIT)){
|
||||
// user kick 처리
|
||||
userGameSessionService.kickUserSession(blockUser.getGuid());
|
||||
blackListService.updateScheduleBlockUser(blockUser, "start");
|
||||
blackListService.updateScheduleBlockUser(blockUser, BlackList.STATUSTYPE.INPROGRESS);
|
||||
blackListService.updateBlackListStatus(blockUser.getId(), BlackList.STATUSTYPE.INPROGRESS);
|
||||
log.info("blackListJob blackListSchedule block start : {}", blockUser);
|
||||
}
|
||||
|
||||
if(!nowDate.isBefore(endTime) && blockUser.getStatus().equals(BlackList.STATUSTYPE.INPROGRESS)){
|
||||
blackListService.updateScheduleBlockUser(blockUser, "end");
|
||||
blackListService.updateScheduleBlockUser(blockUser, BlackList.STATUSTYPE.EXPIRATION);
|
||||
blackListService.updateBlackListStatus(blockUser.getId(), BlackList.STATUSTYPE.EXPIRATION);
|
||||
log.info("blackListJob blackListSchedule block end : {}", blockUser);
|
||||
}
|
||||
|
||||
@@ -69,14 +69,14 @@ public class BlackListScheduler implements Scheduler {
|
||||
if(!nowDate.isBefore(startTime) && blackList.getStatus().equals(BlackList.STATUSTYPE.WAIT)) {
|
||||
// user kick 처리
|
||||
userGameSessionService.kickUserSession(blackList.getGuid());
|
||||
blackListService.updateScheduleBlockUser(blackList, "start");
|
||||
blackListService.updateScheduleBlockUser(blackList, BlackList.STATUSTYPE.INPROGRESS);
|
||||
blackListService.updateBlackListStatus(blackList.getId(), BlackList.STATUSTYPE.INPROGRESS);
|
||||
log.info("blackListJob blackListSchedule block start : {}", blackList);
|
||||
}
|
||||
|
||||
// 종료시간 지났으면 만료 처리
|
||||
if(!nowDate.isBefore(endTime) && blackList.getStatus().equals(BlackList.STATUSTYPE.INPROGRESS)) {
|
||||
blackListService.updateScheduleBlockUser(blackList, "end");
|
||||
blackListService.updateScheduleBlockUser(blackList, BlackList.STATUSTYPE.EXPIRATION);
|
||||
blackListService.updateBlackListStatus(blackList.getId(), BlackList.STATUSTYPE.EXPIRATION);
|
||||
log.info("blackListJob blackListSchedule block end : {}", blackList);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user