로그 일자 시간 추가
메타데이터 api 추가 사용이력 조회 조건 수정 s3 비즈니스로그 수정 유저 조회 수정
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
package com.caliverse.admin.domain.api;
|
||||
|
||||
import com.caliverse.admin.domain.request.LogGenericRequest;
|
||||
import com.caliverse.admin.domain.response.DictionaryResponse;
|
||||
import com.caliverse.admin.domain.service.MetaDataService;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
@@ -11,7 +10,7 @@ import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
@Tag(name = "백과사전", description = "백과사전 api")
|
||||
@Tag(name = "메타데이터", description = "백과사전 api")
|
||||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
@RequestMapping("/api/v1/dictionary")
|
||||
@@ -23,6 +22,31 @@ public class DictionaryController {
|
||||
return ResponseEntity.ok().body( metaDataService.getBrandList());
|
||||
}
|
||||
|
||||
@GetMapping("/ranking/list")
|
||||
public ResponseEntity<DictionaryResponse> rankingList(){
|
||||
return ResponseEntity.ok().body( metaDataService.getRankingList());
|
||||
}
|
||||
|
||||
@GetMapping("/battle-config/list")
|
||||
public ResponseEntity<DictionaryResponse> battleConfigList(){
|
||||
return ResponseEntity.ok().body( metaDataService.getBattleConfigList());
|
||||
}
|
||||
|
||||
@GetMapping("/battle-reward/list")
|
||||
public ResponseEntity<DictionaryResponse> battleRewardList(){
|
||||
return ResponseEntity.ok().body( metaDataService.getBattleRewardList());
|
||||
}
|
||||
|
||||
@GetMapping("/game-mode/list")
|
||||
public ResponseEntity<DictionaryResponse> gameModeList(){
|
||||
return ResponseEntity.ok().body( metaDataService.getGameModeList());
|
||||
}
|
||||
|
||||
@GetMapping("/event-action/list")
|
||||
public ResponseEntity<DictionaryResponse> eventActionList(){
|
||||
return ResponseEntity.ok().body( metaDataService.getEventActionList());
|
||||
}
|
||||
|
||||
@GetMapping("/item/list")
|
||||
public ResponseEntity<DictionaryResponse> itemList(
|
||||
@RequestParam Map<String, String> requestParams){
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
package com.caliverse.admin.domain.api;
|
||||
|
||||
import com.caliverse.admin.domain.request.EventRequest;
|
||||
import com.caliverse.admin.domain.request.LandRequest;
|
||||
import com.caliverse.admin.domain.response.EventResponse;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
|
||||
@@ -45,21 +45,23 @@ public class HistoryService {
|
||||
HistoryRequest historyRequest = new HistoryRequest();
|
||||
historyRequest.setStartDt(startDt);
|
||||
historyRequest.setEndDt(endDt);
|
||||
if(searchType.equals("NAME")){
|
||||
Optional<Admin> admin = adminMapper.findByEmail(searchData);
|
||||
if(admin.isPresent()){
|
||||
if(searchData != null && !searchData.isEmpty()) {
|
||||
if (searchType.equals("NAME")) {
|
||||
Optional<Admin> admin = adminMapper.findByEmail(searchData);
|
||||
if (admin.isPresent()) {
|
||||
historyRequest.setUserMail(searchData);
|
||||
} else {
|
||||
return HistoryResponse.builder()
|
||||
.resultData(HistoryResponse.ResultData.builder()
|
||||
.message(ErrorCode.NOT_USER.toString())
|
||||
.build())
|
||||
.status(CommonCode.ERROR.getHttpStatus())
|
||||
.result(CommonCode.ERROR.getResult())
|
||||
.build();
|
||||
}
|
||||
} else {
|
||||
historyRequest.setUserMail(searchData);
|
||||
}else{
|
||||
return HistoryResponse.builder()
|
||||
.resultData(HistoryResponse.ResultData.builder()
|
||||
.message(ErrorCode.NOT_USER.toString())
|
||||
.build())
|
||||
.status(CommonCode.ERROR.getHttpStatus())
|
||||
.result(CommonCode.ERROR.getResult())
|
||||
.build();
|
||||
}
|
||||
}else{
|
||||
historyRequest.setUserMail(searchData);
|
||||
}
|
||||
|
||||
List<BusinessLog> logList = historyLogService.loadHistoryData(historyRequest, BusinessLog.class);
|
||||
@@ -67,6 +69,8 @@ public class HistoryService {
|
||||
return HistoryResponse.builder()
|
||||
.resultData(HistoryResponse.ResultData.builder()
|
||||
.list(logList)
|
||||
.total(logList.size())
|
||||
.totalAll(logList.size())
|
||||
.build())
|
||||
.status(CommonCode.SUCCESS.getHttpStatus())
|
||||
.result(CommonCode.SUCCESS.getResult())
|
||||
|
||||
@@ -56,7 +56,7 @@ public class LogService {
|
||||
int size = logGenericRequest.getPageSize();
|
||||
|
||||
LocalDateTime startDt = logGenericRequest.getStartDt().plusHours(9);
|
||||
LocalDateTime endDt = logGenericRequest.getEndDt().plusHours(9).plusDays(1);
|
||||
LocalDateTime endDt = logGenericRequest.getEndDt().plusHours(9);
|
||||
logGenericRequest.setStartDt(startDt);
|
||||
logGenericRequest.setEndDt(endDt);
|
||||
|
||||
@@ -270,7 +270,7 @@ public class LogService {
|
||||
excelService.generateExcelToResponse(
|
||||
response,
|
||||
excelList,
|
||||
"비즈니스 로그 데이터",
|
||||
"Business Log Data",
|
||||
"sheet1",
|
||||
taskId
|
||||
);
|
||||
@@ -416,7 +416,7 @@ public class LogService {
|
||||
excelService.generateExcelToResponse(
|
||||
response,
|
||||
currencyList,
|
||||
"재화 지표 데이터",
|
||||
"Currency Index Data",
|
||||
"sheet1",
|
||||
taskId
|
||||
);
|
||||
@@ -520,7 +520,7 @@ public class LogService {
|
||||
excelService.generateExcelToResponse(
|
||||
response,
|
||||
currencyLogList,
|
||||
"게임 재화 로그 데이터",
|
||||
"Game Currency Log Data",
|
||||
"sheet1",
|
||||
taskId
|
||||
);
|
||||
@@ -537,6 +537,7 @@ public class LogService {
|
||||
String searchType = requestParams.get("search_type");
|
||||
String searchData = requestParams.get("search_data");
|
||||
String tranId = requestParams.get("tran_id");
|
||||
String itemId = requestParams.get("item_id");
|
||||
String logAction = requestParams.get("log_action");
|
||||
String itemLargeType = requestParams.get("item_large_type");
|
||||
String itemSmallType = requestParams.get("item_small_type");
|
||||
@@ -550,6 +551,7 @@ public class LogService {
|
||||
searchType,
|
||||
searchData,
|
||||
tranId,
|
||||
itemId,
|
||||
logAction,
|
||||
itemLargeType,
|
||||
itemSmallType,
|
||||
@@ -593,6 +595,7 @@ public class LogService {
|
||||
logGameRequest.getSearchType().toString(),
|
||||
logGameRequest.getSearchData(),
|
||||
logGameRequest.getTranId(),
|
||||
logGameRequest.getItemId(),
|
||||
logGameRequest.getLogAction().name(),
|
||||
logGameRequest.getItemTypeLarge(),
|
||||
logGameRequest.getItemTypeSmall(),
|
||||
@@ -627,7 +630,7 @@ public class LogService {
|
||||
excelService.generateExcelToResponse(
|
||||
response,
|
||||
currencyLogList,
|
||||
"게임 아이템 로그 데이터",
|
||||
"Game Item Log Data",
|
||||
"sheet1",
|
||||
taskId
|
||||
);
|
||||
@@ -652,6 +655,7 @@ public class LogService {
|
||||
String orderBy = requestParams.get("orderby");
|
||||
int pageNo = Integer.parseInt(requestParams.get("page_no"));
|
||||
int pageSize = Integer.parseInt(requestParams.get("page_size"));
|
||||
|
||||
MongoPageResult<CurrencyItemLogInfo> result = indicatorsCurrencyService.getCurrencyItemLogData(
|
||||
searchType,
|
||||
searchData,
|
||||
@@ -667,6 +671,19 @@ public class LogService {
|
||||
CurrencyItemLogInfo.class
|
||||
);
|
||||
|
||||
Set<String> tranIds = result.getItems().stream()
|
||||
.map(CurrencyItemLogInfo::getTranId)
|
||||
.collect(Collectors.toSet());
|
||||
|
||||
Map<String, String> items = indicatorsItemService.getCurrencyItemLogData(tranIds, startDt.toString().substring(0, 10), endDt.toString().substring(0, 10));
|
||||
|
||||
result.getItems().forEach(item -> {
|
||||
String itemTranId = item.getTranId();
|
||||
String itemIDs = items.getOrDefault(itemTranId, "");
|
||||
|
||||
item.setItemIDs(itemIDs);
|
||||
});
|
||||
|
||||
List<CurrencyItemLogInfo> currencyItemLogList = result.getItems();
|
||||
int totalCount = result.getTotalCount();
|
||||
|
||||
@@ -708,6 +725,19 @@ public class LogService {
|
||||
logGameRequest.getPageSize(),
|
||||
CurrencyItemLogInfo.class
|
||||
);
|
||||
|
||||
Set<String> tranIds = result.getItems().stream()
|
||||
.map(CurrencyItemLogInfo::getTranId)
|
||||
.collect(Collectors.toSet());
|
||||
|
||||
Map<String, String> items = indicatorsItemService.getCurrencyItemLogData(tranIds, startDt.toString().substring(0, 10), endDt.toString().substring(0, 10));
|
||||
|
||||
result.getItems().forEach(item -> {
|
||||
String itemTranId = item.getTranId();
|
||||
String itemIDs = items.getOrDefault(itemTranId, "");
|
||||
|
||||
item.setItemIDs(itemIDs);
|
||||
});
|
||||
progressTracker.updateProgress(taskId, 20, 100, "데이터 생성완료");
|
||||
}catch(UncategorizedMongoDbException e){
|
||||
if (e.getMessage().contains("Sort exceeded memory limit")) {
|
||||
@@ -731,7 +761,7 @@ public class LogService {
|
||||
excelService.generateExcelToResponse(
|
||||
response,
|
||||
currencyLogList,
|
||||
"게임 재화(아이템) 로그 데이터",
|
||||
"Game CurrencyItem Log Data",
|
||||
"sheet1",
|
||||
taskId
|
||||
);
|
||||
@@ -823,7 +853,7 @@ public class LogService {
|
||||
excelService.generateExcelToResponse(
|
||||
response,
|
||||
logList,
|
||||
"유저 생성 로그 데이터",
|
||||
"User Create Log Data",
|
||||
"sheet1",
|
||||
taskId
|
||||
);
|
||||
@@ -918,7 +948,7 @@ public class LogService {
|
||||
excelService.generateExcelToResponse(
|
||||
response,
|
||||
logList,
|
||||
"유저 로그인 로그 데이터",
|
||||
"User Login Log Data",
|
||||
"sheet1",
|
||||
taskId
|
||||
);
|
||||
@@ -1009,7 +1039,7 @@ public class LogService {
|
||||
excelService.generateExcelToResponse(
|
||||
response,
|
||||
logList,
|
||||
"유저 스냅샷 로그 데이터",
|
||||
"User Snapshot Log Data",
|
||||
"sheet1",
|
||||
taskId
|
||||
);
|
||||
|
||||
@@ -4,9 +4,7 @@ import com.caliverse.admin.domain.datacomponent.MetaDataHandler;
|
||||
import com.caliverse.admin.domain.entity.*;
|
||||
import com.caliverse.admin.domain.entity.excel.ExcelBusinessLog;
|
||||
import com.caliverse.admin.domain.entity.log.GenericLog;
|
||||
import com.caliverse.admin.domain.entity.metadata.MetaBattleConfigData;
|
||||
import com.caliverse.admin.domain.entity.metadata.MetaBrandData;
|
||||
import com.caliverse.admin.domain.entity.metadata.MetaItemData;
|
||||
import com.caliverse.admin.domain.entity.metadata.*;
|
||||
import com.caliverse.admin.domain.request.LogGenericRequest;
|
||||
import com.caliverse.admin.domain.response.BattleEventResponse;
|
||||
import com.caliverse.admin.domain.response.DictionaryResponse;
|
||||
@@ -37,6 +35,7 @@ public class MetaDataService {
|
||||
private final ExcelService excelService;
|
||||
private final ExcelProgressTracker progressTracker;
|
||||
|
||||
//브랜드 데이터
|
||||
public DictionaryResponse getBrandList(){
|
||||
|
||||
List<MetaBrandData> list = metaDataHandler.getMetaBrandListData();
|
||||
@@ -57,6 +56,81 @@ public class MetaDataService {
|
||||
.build();
|
||||
}
|
||||
|
||||
//랭킹 데이터
|
||||
public DictionaryResponse getRankingList(){
|
||||
|
||||
List<MetaRankingData> list = metaDataHandler.getMetaRankingListData();
|
||||
|
||||
return DictionaryResponse.builder()
|
||||
.status(CommonCode.SUCCESS.getHttpStatus())
|
||||
.result(CommonCode.SUCCESS.getResult())
|
||||
.resultData(DictionaryResponse.ResultData.builder()
|
||||
.rankingList(list)
|
||||
.build()
|
||||
)
|
||||
.build();
|
||||
}
|
||||
|
||||
//전투시스템 설정 데이터
|
||||
public DictionaryResponse getBattleConfigList(){
|
||||
|
||||
List<MetaBattleConfigData> list = metaDataHandler.getMetaBattleConfigsListData();
|
||||
|
||||
return DictionaryResponse.builder()
|
||||
.status(CommonCode.SUCCESS.getHttpStatus())
|
||||
.result(CommonCode.SUCCESS.getResult())
|
||||
.resultData(DictionaryResponse.ResultData.builder()
|
||||
.battleConfigList(list)
|
||||
.build()
|
||||
)
|
||||
.build();
|
||||
}
|
||||
|
||||
//전투시스템 보상 데이터
|
||||
public DictionaryResponse getBattleRewardList(){
|
||||
|
||||
List<MetaBattleRewardData> list = metaDataHandler.getMetaBattleRewardsListData();
|
||||
|
||||
return DictionaryResponse.builder()
|
||||
.status(CommonCode.SUCCESS.getHttpStatus())
|
||||
.result(CommonCode.SUCCESS.getResult())
|
||||
.resultData(DictionaryResponse.ResultData.builder()
|
||||
.battleRewardList(list)
|
||||
.build()
|
||||
)
|
||||
.build();
|
||||
}
|
||||
|
||||
//전투시스템 게임모드 데이터
|
||||
public DictionaryResponse getGameModeList(){
|
||||
|
||||
List<MetaGameModeData> list = metaDataHandler.getMetaGameModeListData();
|
||||
|
||||
return DictionaryResponse.builder()
|
||||
.status(CommonCode.SUCCESS.getHttpStatus())
|
||||
.result(CommonCode.SUCCESS.getResult())
|
||||
.resultData(DictionaryResponse.ResultData.builder()
|
||||
.gameModeList(list)
|
||||
.build()
|
||||
)
|
||||
.build();
|
||||
}
|
||||
|
||||
//이벤트 액션 데이터
|
||||
public DictionaryResponse getEventActionList(){
|
||||
|
||||
List<MetaEventActionScoreData> list = metaDataHandler.getMetaEventActionScoreListData();
|
||||
|
||||
return DictionaryResponse.builder()
|
||||
.status(CommonCode.SUCCESS.getHttpStatus())
|
||||
.result(CommonCode.SUCCESS.getResult())
|
||||
.resultData(DictionaryResponse.ResultData.builder()
|
||||
.eventActionList(list)
|
||||
.build()
|
||||
)
|
||||
.build();
|
||||
}
|
||||
|
||||
//아이템 백과사전
|
||||
@RequestLog
|
||||
public DictionaryResponse getItemDictList(@RequestParam Map<String, String> requestParam){
|
||||
|
||||
@@ -85,7 +85,7 @@ public class S3Service {
|
||||
businessLogService.logS3(
|
||||
LogStatus.SUCCESS,
|
||||
"",
|
||||
CommonUtils.getAdmin().getId().toString(),
|
||||
CommonUtils.getAdmin().getEmail(),
|
||||
CommonUtils.getClientIp(),
|
||||
bucketName,
|
||||
objectKey,
|
||||
|
||||
@@ -11,6 +11,7 @@ import com.caliverse.admin.domain.RabbitMq.MessageHandlerService;
|
||||
import com.caliverse.admin.domain.entity.EReqType;
|
||||
import com.caliverse.admin.domain.entity.FriendRequest;
|
||||
import com.caliverse.admin.domain.entity.SEARCHTYPE;
|
||||
import com.caliverse.admin.domain.entity.common.SearchUserType;
|
||||
import com.caliverse.admin.domain.entity.log.LogAction;
|
||||
import com.caliverse.admin.domain.request.MailRequest;
|
||||
import com.caliverse.admin.dynamodb.domain.atrrib.AccountBaseAttrib;
|
||||
@@ -141,23 +142,38 @@ public class UsersService {
|
||||
String searchKey = requestParam.get("search_key").toString();
|
||||
|
||||
Map<String,String> resultMap = new HashMap<>();
|
||||
if(searchType.equals(SEARCHTYPE.NAME.name())){
|
||||
if(searchType.equals(SEARCHTYPE.NAME.name()) || searchType.equals(SearchUserType.NICKNAME.name())){
|
||||
String name_guid = dynamodbUserService.getNameByGuid(searchKey.toLowerCase());
|
||||
if(!name_guid.isEmpty()){
|
||||
resultMap.put("guid", name_guid); //nickname은 무조건 소문자
|
||||
resultMap.put("nickname", searchKey);
|
||||
}else{
|
||||
return UsersResponse.builder()
|
||||
.status(CommonCode.ERROR.getHttpStatus())
|
||||
.result(ErrorCode.NOT_USER.name())
|
||||
.build();
|
||||
}
|
||||
}else if(searchType.equals(SEARCHTYPE.GUID.name())){
|
||||
String guid_name = dynamodbUserService.getGuidByName(searchKey);
|
||||
if(!guid_name.isEmpty()){
|
||||
resultMap.put("guid", searchKey);
|
||||
resultMap.put("nickname", guid_name);
|
||||
}else{
|
||||
return UsersResponse.builder()
|
||||
.status(CommonCode.ERROR.getHttpStatus())
|
||||
.result(ErrorCode.NOT_USER.name())
|
||||
.build();
|
||||
}
|
||||
}else if(searchType.equals(SEARCHTYPE.ACCOUNT.name())){
|
||||
String account_guid = dynamodbUserService.getAccountIdByGuid(searchKey);
|
||||
if(!account_guid.isEmpty()){
|
||||
resultMap.put("guid", account_guid);
|
||||
resultMap.put("nickname", dynamodbUserService.getAccountIdByName(searchKey));
|
||||
}else{
|
||||
return UsersResponse.builder()
|
||||
.status(CommonCode.ERROR.getHttpStatus())
|
||||
.result(ErrorCode.NOT_USER.name())
|
||||
.build();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user