feat: aop 수정
This commit is contained in:
parent
a0860369a2
commit
143a3981f2
6
pom.xml
6
pom.xml
@ -147,6 +147,12 @@
|
|||||||
<artifactId>jsoup</artifactId>
|
<artifactId>jsoup</artifactId>
|
||||||
<version>1.15.3</version>
|
<version>1.15.3</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.apache.commons</groupId>
|
||||||
|
<artifactId>commons-lang3</artifactId>
|
||||||
|
<version>3.12.0</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
|
|||||||
@ -6,6 +6,7 @@ import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
|
|||||||
import com.itn.mjonApi.cmn.idgen.service.IdgenService;
|
import com.itn.mjonApi.cmn.idgen.service.IdgenService;
|
||||||
import com.itn.mjonApi.cmn.msg.RestResponse;
|
import com.itn.mjonApi.cmn.msg.RestResponse;
|
||||||
import com.itn.mjonApi.mjon.api.access.mapper.domain.AccessKeyVO;
|
import com.itn.mjonApi.mjon.api.access.mapper.domain.AccessKeyVO;
|
||||||
|
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryResponse;
|
||||||
import com.itn.mjonApi.mjon.log.service.mapper.LettnAccessLogMapper;
|
import com.itn.mjonApi.mjon.log.service.mapper.LettnAccessLogMapper;
|
||||||
import com.itn.mjonApi.mjon.log.service.mapper.domain.LettnAccessLogVO;
|
import com.itn.mjonApi.mjon.log.service.mapper.domain.LettnAccessLogVO;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
@ -15,6 +16,7 @@ import org.aspectj.lang.annotation.Aspect;
|
|||||||
import org.aspectj.lang.annotation.Before;
|
import org.aspectj.lang.annotation.Before;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
import org.springframework.util.ObjectUtils;
|
||||||
import org.springframework.web.context.request.RequestContextHolder;
|
import org.springframework.web.context.request.RequestContextHolder;
|
||||||
import org.springframework.web.context.request.ServletRequestAttributes;
|
import org.springframework.web.context.request.ServletRequestAttributes;
|
||||||
|
|
||||||
@ -128,20 +130,27 @@ public class LogAspect {
|
|||||||
*/
|
*/
|
||||||
private String getJsonToString(Object returnValue) throws JsonProcessingException {
|
private String getJsonToString(Object returnValue) throws JsonProcessingException {
|
||||||
|
|
||||||
|
if(ObjectUtils.isEmpty(returnValue)){
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
String classNmTemp = returnValue.getClass().getName();
|
String classNmTemp = returnValue.getClass().getName();
|
||||||
String classNm = classNmTemp.substring(classNmTemp.lastIndexOf(".")+1, classNmTemp.length());
|
String classNm = classNmTemp.substring(classNmTemp.lastIndexOf(".")+1, classNmTemp.length());
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @description : return Class가 추가되면 여기에 추가
|
* @description : return Class가 추가되면 여기에 추가
|
||||||
*/
|
*/
|
||||||
if("AccessKeyVO".equals(classNm)){
|
if("AccessKeyVO".equals(classNm)) {
|
||||||
AccessKeyVO accessKeyVO = (AccessKeyVO) returnValue;
|
AccessKeyVO accessKeyVO = (AccessKeyVO) returnValue;
|
||||||
return this.getAccessKeyVOToJsonString(accessKeyVO);
|
return this.getAccessKeyVOToJsonString(accessKeyVO);
|
||||||
}else{
|
}else if("RestResponse".equals(classNm)){
|
||||||
RestResponse restResponse = (RestResponse) returnValue;
|
RestResponse restResponse = (RestResponse) returnValue;
|
||||||
return this.getRestResponseToJsonString(restResponse);
|
return this.getRestResponseToJsonString(restResponse);
|
||||||
|
}else{
|
||||||
|
return "데이터를 추가해 주세요";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -158,6 +167,11 @@ public class LogAspect {
|
|||||||
// .registerModule(new JavaTimeModule()) : LocalDateTime을 json으로 변환하기 위함
|
// .registerModule(new JavaTimeModule()) : LocalDateTime을 json으로 변환하기 위함
|
||||||
return objectMapper.registerModule(new JavaTimeModule()).writeValueAsString(restResponse);
|
return objectMapper.registerModule(new JavaTimeModule()).writeValueAsString(restResponse);
|
||||||
}
|
}
|
||||||
|
private static String getHstryResponseVOToJsonString(HstryResponse hstryResponse) throws JsonProcessingException {
|
||||||
|
ObjectMapper objectMapper = new ObjectMapper();
|
||||||
|
// .registerModule(new JavaTimeModule()) : LocalDateTime을 json으로 변환하기 위함
|
||||||
|
return objectMapper.registerModule(new JavaTimeModule()).writeValueAsString(hstryResponse);
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* @description : VO를 json으로 변환
|
* @description : VO를 json으로 변환
|
||||||
* @param accessKeyVO
|
* @param accessKeyVO
|
||||||
|
|||||||
@ -35,33 +35,6 @@ public class RestResponse{
|
|||||||
this.resultCode=StatMsg.valueOf(STAT_CODE).getCode();
|
this.resultCode=StatMsg.valueOf(STAT_CODE).getCode();
|
||||||
this.data=StatMsg.valueOf(STAT_CODE).getMsg();
|
this.data=StatMsg.valueOf(STAT_CODE).getMsg();
|
||||||
}
|
}
|
||||||
/*
|
|
||||||
public RestResponse(HttpStatus status, String message, LocalDateTime timestamp) {
|
|
||||||
|
|
||||||
this.resultCode = status.value();
|
|
||||||
checkMessage(status, message);
|
|
||||||
this.localDateTime = timestamp;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
public RestResponse(HttpStatus status, String message, LocalDateTime timestamp, Object object) {
|
|
||||||
this.resultCode = status.value();
|
|
||||||
checkMessage(status, message);
|
|
||||||
this.data = object;
|
|
||||||
this.localDateTime = timestamp;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* public RestResponse(HttpStatus status, String message, LocalDateTime timestamp, List<?> objectList) {
|
|
||||||
this.resultCode = status.value();
|
|
||||||
checkMessage(status, message);
|
|
||||||
|
|
||||||
this.localDateTime = timestamp;
|
|
||||||
}*/
|
|
||||||
|
|
||||||
/*private void checkMessage(HttpStatus status, String message) {
|
|
||||||
if ("".equals(message)){ this.message = status.name();
|
|
||||||
}else { this.message = message; }
|
|
||||||
}*/
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,12 +1,11 @@
|
|||||||
package com.itn.mjonApi.mjon.api.inqry.mapper;
|
package com.itn.mjonApi.mjon.api.inqry.mapper;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
|
||||||
|
|
||||||
import com.itn.mjonApi.mjon.api.access.mapper.domain.AccessKeyVO;
|
|
||||||
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryDetailVO;
|
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryDetailVO;
|
||||||
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryVO;
|
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryVO;
|
||||||
|
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.MjonResponseVO;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @packageName : com.itn.mjonApi.mjon.api.inqry.service.mapper
|
* @packageName : com.itn.mjonApi.mjon.api.inqry.service.mapper
|
||||||
@ -32,8 +31,8 @@ public interface HstryMapper {
|
|||||||
*/
|
*/
|
||||||
//double selectUserMoney(String mberId);
|
//double selectUserMoney(String mberId);
|
||||||
|
|
||||||
List<AccessKeyVO> selectApiInqryHstry(HstryVO hstryVO);
|
List<MjonResponseVO> selectApiInqryHstry(HstryVO hstryVO);
|
||||||
|
|
||||||
List<AccessKeyVO> selectApiInqryHstryDetail(HstryDetailVO hstryDetailVO);
|
List<MjonResponseVO> selectApiInqryHstryDetail(HstryDetailVO hstryDetailVO);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2,7 +2,6 @@ package com.itn.mjonApi.mjon.api.inqry.service;
|
|||||||
|
|
||||||
import com.itn.mjonApi.cmn.msg.RestResponse;
|
import com.itn.mjonApi.cmn.msg.RestResponse;
|
||||||
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryDetailVO;
|
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryDetailVO;
|
||||||
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryResponseVO;
|
|
||||||
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryVO;
|
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryVO;
|
||||||
|
|
||||||
public interface HstryService {
|
public interface HstryService {
|
||||||
|
|||||||
@ -1,27 +1,22 @@
|
|||||||
package com.itn.mjonApi.mjon.api.inqry.service.impl;
|
package com.itn.mjonApi.mjon.api.inqry.service.impl;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import com.itn.mjonApi.cmn.apiServer.ApiService;
|
||||||
import java.util.HashMap;
|
import com.itn.mjonApi.cmn.msg.RestResponse;
|
||||||
import java.util.List;
|
import com.itn.mjonApi.mjon.api.inqry.mapper.HstryMapper;
|
||||||
import java.util.Map;
|
import com.itn.mjonApi.mjon.api.inqry.service.HstryService;
|
||||||
|
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryDetailVO;
|
||||||
|
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryResponse;
|
||||||
|
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryVO;
|
||||||
|
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.MjonResponseVO;
|
||||||
|
import com.itn.mjonApi.mjon.api.send.mapper.SendMapper;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.catalina.connector.Response;
|
import org.apache.catalina.connector.Response;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import com.itn.mjonApi.cmn.apiServer.ApiService;
|
import java.util.ArrayList;
|
||||||
import com.itn.mjonApi.cmn.msg.RestResponse;
|
import java.util.List;
|
||||||
import com.itn.mjonApi.cmn.msg.StatMsg;
|
|
||||||
import com.itn.mjonApi.mjon.api.access.mapper.domain.AccessKeyVO;
|
|
||||||
import com.itn.mjonApi.mjon.api.inqry.mapper.HstryMapper;
|
|
||||||
import com.itn.mjonApi.mjon.api.inqry.service.HstryService;
|
|
||||||
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryDetailVO;
|
|
||||||
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryResponseVO;
|
|
||||||
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryVO;
|
|
||||||
import com.itn.mjonApi.mjon.api.send.mapper.SendMapper;
|
|
||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
|
||||||
|
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@ -41,8 +36,6 @@ public class HstryServiceImpl implements HstryService {
|
|||||||
this.apiService = apiService;
|
this.apiService = apiService;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static final String replaseStrList = "[*이름*],[*1*],[*2*],[*3*],[*4*]";
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public RestResponse hstryList(HstryVO hstryVO) throws Exception {
|
public RestResponse hstryList(HstryVO hstryVO) throws Exception {
|
||||||
@ -53,10 +46,10 @@ public class HstryServiceImpl implements HstryService {
|
|||||||
|
|
||||||
if(StringUtils.isNotEmpty(hstryVO.getTest_yn())){
|
if(StringUtils.isNotEmpty(hstryVO.getTest_yn())){
|
||||||
// YF => 실패 테스트 데이터
|
// YF => 실패 테스트 데이터
|
||||||
return this._getTestReturnData(hstryVO.getTest_yn());
|
return this._getTestHstryListReturnData(hstryVO.getTest_yn());
|
||||||
}
|
}
|
||||||
|
|
||||||
HstryResponseVO hstryResponseVO = new HstryResponseVO();
|
HstryResponse hstryResponse = new HstryResponse();
|
||||||
|
|
||||||
try {
|
try {
|
||||||
//page size계산
|
//page size계산
|
||||||
@ -65,12 +58,9 @@ public class HstryServiceImpl implements HstryService {
|
|||||||
//page 계산
|
//page 계산
|
||||||
hstryVO.setPage(_calcPage(hstryVO.getPage(), hstryVO.getPageSize()));
|
hstryVO.setPage(_calcPage(hstryVO.getPage(), hstryVO.getPageSize()));
|
||||||
|
|
||||||
//
|
// 전체 발송 이력 가져오기
|
||||||
List<AccessKeyVO> accessKeyVOList= hstryMapper.selectApiInqryHstry(hstryVO);
|
List<MjonResponseVO> accessKeyVOList= hstryMapper.selectApiInqryHstry(hstryVO);
|
||||||
|
|
||||||
System.out.println("accessKeyVOList");
|
|
||||||
System.out.println(accessKeyVOList);
|
|
||||||
System.out.println(accessKeyVOList.size());
|
|
||||||
|
|
||||||
//다음페이지 여부
|
//다음페이지 여부
|
||||||
String s_next_yn = "N";
|
String s_next_yn = "N";
|
||||||
@ -88,20 +78,22 @@ public class HstryServiceImpl implements HstryService {
|
|||||||
System.out.println("accessKeyVOList3");
|
System.out.println("accessKeyVOList3");
|
||||||
System.out.println(s_next_yn);
|
System.out.println(s_next_yn);
|
||||||
System.out.println(s_next_yn);
|
System.out.println(s_next_yn);
|
||||||
|
|
||||||
//전체 발송 이력 가져오기
|
//전체 발송 이력 가져오기
|
||||||
hstryResponseVO = HstryResponseVO.builder()
|
hstryResponse = HstryResponse.builder()
|
||||||
.objectList(accessKeyVOList)
|
.objectList(accessKeyVOList)
|
||||||
.next_yn(s_next_yn)
|
.next_yn(s_next_yn)
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.info("selectPrice Error [{}]", e.getMessage());
|
log.info("selectPrice Error [{}]", e.getMessage());
|
||||||
|
e.printStackTrace();
|
||||||
return new RestResponse("STAT_3099");
|
return new RestResponse("STAT_3099");
|
||||||
}
|
}
|
||||||
|
|
||||||
return new RestResponse(hstryResponseVO);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
return new RestResponse(hstryResponse);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -110,7 +102,13 @@ public class HstryServiceImpl implements HstryService {
|
|||||||
//전체 발송 이력
|
//전체 발송 이력
|
||||||
log.info(" :: hstryList ::");
|
log.info(" :: hstryList ::");
|
||||||
|
|
||||||
HstryResponseVO hstryResponseVO = new HstryResponseVO();
|
|
||||||
|
if(StringUtils.isNotEmpty(hstryDetailVO.getTest_yn())){
|
||||||
|
// YF => 실패 테스트 데이터
|
||||||
|
return this._getTestHstryDetailListReturnData(hstryDetailVO.getTest_yn());
|
||||||
|
}
|
||||||
|
|
||||||
|
HstryResponse hstryResponse = new HstryResponse();
|
||||||
|
|
||||||
try {
|
try {
|
||||||
//page size 계산
|
//page size 계산
|
||||||
@ -118,10 +116,12 @@ public class HstryServiceImpl implements HstryService {
|
|||||||
|
|
||||||
//page 계산
|
//page 계산
|
||||||
hstryDetailVO.setPage(_calcPage(hstryDetailVO.getPage(), hstryDetailVO.getPageSize()));
|
hstryDetailVO.setPage(_calcPage(hstryDetailVO.getPage(), hstryDetailVO.getPageSize()));
|
||||||
|
|
||||||
|
|
||||||
hstryResponseVO = HstryResponseVO.builder()
|
List<MjonResponseVO> hstryDetailList = hstryMapper.selectApiInqryHstryDetail(hstryDetailVO);
|
||||||
.objectList(hstryMapper.selectApiInqryHstryDetail(hstryDetailVO))
|
|
||||||
|
hstryResponse = HstryResponse.builder()
|
||||||
|
.objectList(hstryDetailList)
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
@ -129,12 +129,13 @@ public class HstryServiceImpl implements HstryService {
|
|||||||
return new RestResponse("STAT_4099");
|
return new RestResponse("STAT_4099");
|
||||||
}
|
}
|
||||||
|
|
||||||
return new RestResponse(hstryResponseVO);
|
return new RestResponse(hstryResponse);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////
|
|
||||||
|
///////////////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// private function
|
// private function
|
||||||
@ -183,35 +184,59 @@ public class HstryServiceImpl implements HstryService {
|
|||||||
|
|
||||||
return Integer.toString(i_pageSize);
|
return Integer.toString(i_pageSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
private RestResponse _getTestReturnData(String testYn)
|
private RestResponse _getTestHstryDetailListReturnData(String testYn) {
|
||||||
|
|
||||||
|
|
||||||
|
// YF => 실패 테스트 데이터
|
||||||
|
if("YS".equals(testYn))
|
||||||
|
{
|
||||||
|
|
||||||
|
List<MjonResponseVO> mjonResponseVOList = new ArrayList<>();
|
||||||
|
|
||||||
|
mjonResponseVOList.add(MjonResponseVO.builder().msgId("MSGID_00000001400199").msgTypeName("그림(MMS)").msgType(6).callFrom("01045971589").callTo("01000000007").msgResult("F").reqdate("2023-04-05 10:12:09").reqdate("2023-04-05 10:12:08").remainMsgCnt(0).build());
|
||||||
|
mjonResponseVOList.add(MjonResponseVO.builder().msgId("MSGID_00000001400198").msgTypeName("그림(MMS)").msgType(6).callFrom("01045971589").callTo("01000000006").msgResult("F").reqdate("2023-04-05 10:12:09").reqdate("2023-04-05 10:12:08").remainMsgCnt(0).build());
|
||||||
|
mjonResponseVOList.add(MjonResponseVO.builder().msgId("MSGID_00000001400197").msgTypeName("단문(SMS)").msgType(4).callFrom("01045971589").callTo("01000000005").msgResult("W").reqdate("2023-04-05 10:12:09").reqdate("2023-04-05 10:13:08").remainMsgCnt(0).build());
|
||||||
|
|
||||||
|
return new RestResponse(
|
||||||
|
HstryResponse.builder()
|
||||||
|
.resultCode(0)
|
||||||
|
.next_yn("N")
|
||||||
|
.objectList(mjonResponseVOList)
|
||||||
|
.build()
|
||||||
|
);
|
||||||
|
|
||||||
|
}else{
|
||||||
|
// 실패 코드 중 랜덤으로 리턴
|
||||||
|
// return new RestResponse(StatMsg.randomErrorStatCode());
|
||||||
|
return new RestResponse("STAT_3099");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
private RestResponse _getTestHstryListReturnData(String testYn)
|
||||||
{
|
{
|
||||||
|
|
||||||
// YF => 실패 테스트 데이터
|
// YF => 실패 테스트 데이터
|
||||||
if("YS".equals(testYn))
|
if("YS".equals(testYn))
|
||||||
{
|
{
|
||||||
List<Map> List = new ArrayList<Map>();
|
|
||||||
|
List<MjonResponseVO> mjonResponseVOList = new ArrayList<>();
|
||||||
Map<String, Object> map = new HashMap<>();
|
|
||||||
map.put("name", "junho85");
|
mjonResponseVOList.add(MjonResponseVO.builder().msgGroupId("MSGGID_0000000011431").msgTypeName("그림(MMS)").msgType(6).callFrom("01045971589").msgGroupCnt(1).sCnt("0").fCnt("1").wCnt("0").msgResult("F").smsTxt("").subject("").reqdate("2023-04-05 00:00:00").curState(3).userId("goodgkdus").regdate("2023-04-04 16:20:45").reserveCYn("N").ttlCnt("1").remainMsgCnt(0).totMsgCnt("3").build());
|
||||||
map.put("nickname", "June Kim");
|
mjonResponseVOList.add(MjonResponseVO.builder().msgGroupId("MSGGID_0000000011430").msgTypeName("장문(LMS)").msgType(6).callFrom("01045971589").msgGroupCnt(4).sCnt("0").fCnt("4").wCnt("0").msgResult("F").smsTxt("[*1*]안녕하세요" + "[*2*]그리니까요" + "[*3*]그리니까요" + "[*4*]그리니까요").subject("").reqdate("2023-04-05 00:00:00").curState(3).userId("goodgkdus").regdate("2023-04-04 16:10:19").reserveCYn("N").ttlCnt("4").remainMsgCnt(0).totMsgCnt("3").build());
|
||||||
|
mjonResponseVOList.add(MjonResponseVO.builder().msgGroupId("MSGGID_0000000011429").msgTypeName("단문(SMS)").msgType(4).callFrom("01045971589").msgGroupCnt(2).sCnt("2").fCnt("0").wCnt("0").msgResult("S").smsTxt("단문 내용").subject("").reqdate("2023-04-05 00:00:00").curState(3).userId("goodgkdus").regdate("2023-04-04 16:10:19").reserveCYn("N").ttlCnt("4").remainMsgCnt(0).totMsgCnt("3").build());
|
||||||
List.add(map);
|
|
||||||
|
|
||||||
return new RestResponse(
|
return new RestResponse(
|
||||||
HstryResponseVO.builder()
|
HstryResponse.builder()
|
||||||
.resultCode(0)
|
.resultCode(0)
|
||||||
.next_yn("N")
|
.next_yn("N")
|
||||||
.objectList((java.util.List<?>) map)
|
.objectList(mjonResponseVOList)
|
||||||
.build()
|
.build()
|
||||||
/*
|
|
||||||
[{"totMsgCnt":4,"msgResult":"F","msgType":4,"sCnt":0,"msgGroupCnt":3,"smsTxt":"문자 테스트~![*이름*]","wCnt":0,"callFrom":"01035520132","msgTypeName":"단문(SMS)","msgGroupId":"MSGGID_0000000013200","reqdate":"2023-06-01 18:20:07","curState":3,"fCnt":3,"userId":"goodgkdus","remainMsgCnt":0,"regdate":"2023-06-01 18:20:08","reserveCYn":"N","ttlCnt":3},{"totMsgCnt":4,"msgResult":"F","msgType":4,"sCnt":0,"msgGroupCnt":3,"smsTxt":"문자 테스트~![*이름*]","wCnt":0,"callFrom":"01035520132","msgTypeName":"단문(SMS)","msgGroupId":"MSGGID_0000000013190","reqdate":"2023-06-01 17:50:07","curState":3,"fCnt":3,"userId":"goodgkdus","remainMsgCnt":0,"regdate":"2023-06-01 17:50:07","reserveCYn":"N","ttlCnt":3},{"totMsgCnt":4,"msgResult":"F","msgType":4,"sCnt":0,"msgGroupCnt":3,"smsTxt":"문자 테스트~![*이름*]","wCnt":0,"callFrom":"01035520132","msgTypeName":"단문(SMS)","msgGroupId":"MSGGID_0000000013161","reqdate":"2023-06-01 16:40:57","curState":3,"fCnt":3,"userId":"goodgkdus","remainMsgCnt":0,"regdate":"2023-06-01 16:40:57","reserveCYn":"N","ttlCnt":3},{"totMsgCnt":4,"msgResult":"F","msgType":4,"sCnt":0,"msgGroupCnt":3,"smsTxt":"문자 테스트~","wCnt":0,"callFrom":"01035520132","msgTypeName":"단문(SMS)","msgGroupId":"MSGGID_0000000013160","reqdate":"2023-06-01 16:21:49","curState":3,"fCnt":3,"userId":"goodgkdus","remainMsgCnt":0,"regdate":"2023-06-01 16:21:50","reserveCYn":"N","ttlCnt":3}]
|
|
||||||
*/
|
|
||||||
);
|
);
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
// 실패 코드 중 랜덤으로 리턴
|
// 실패 코드 중 랜덤으로 리턴
|
||||||
return new RestResponse(StatMsg.randomErrorStatCode());
|
// return new RestResponse(StatMsg.randomErrorStatCode());
|
||||||
|
return new RestResponse("STAT_3099");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,7 +1,5 @@
|
|||||||
package com.itn.mjonApi.mjon.api.inqry.service.mapper.domain;
|
package com.itn.mjonApi.mjon.api.inqry.service.mapper.domain;
|
||||||
|
|
||||||
import java.io.Serializable;
|
|
||||||
|
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
@ -9,6 +7,8 @@ import lombok.Getter;
|
|||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@ -32,10 +32,15 @@ public class HstryDetailVO implements Serializable{
|
|||||||
|
|
||||||
@ApiModelProperty(value = "page 당 출력갯수 30~500", example = "30")
|
@ApiModelProperty(value = "page 당 출력갯수 30~500", example = "30")
|
||||||
private String pageSize;
|
private String pageSize;
|
||||||
|
|
||||||
|
public String test_yn;
|
||||||
|
|
||||||
//private String mberId; // 사용자 ID
|
public void setTest_yn(String testYn) {
|
||||||
|
this.test_yn = testYn;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//private String mberId; // 사용자 ID
|
||||||
|
|
||||||
// private double shortPrice; // 단문 이용단가
|
// private double shortPrice; // 단문 이용단가
|
||||||
// private double longPrice; // 장문 이용단가
|
// private double longPrice; // 장문 이용단가
|
||||||
|
|||||||
@ -1,16 +1,10 @@
|
|||||||
package com.itn.mjonApi.mjon.api.inqry.service.mapper.domain;
|
package com.itn.mjonApi.mjon.api.inqry.service.mapper.domain;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import lombok.*;
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import org.springframework.http.HttpStatus;
|
import org.springframework.http.HttpStatus;
|
||||||
|
|
||||||
import lombok.AllArgsConstructor;
|
import java.time.LocalDateTime;
|
||||||
import lombok.Builder;
|
import java.util.List;
|
||||||
import lombok.Getter;
|
|
||||||
import lombok.NoArgsConstructor;
|
|
||||||
import lombok.Setter;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* packageName : com.itn.mjonApi.cmn.msg
|
* packageName : com.itn.mjonApi.cmn.msg
|
||||||
@ -28,7 +22,7 @@ import lombok.Setter;
|
|||||||
@Builder
|
@Builder
|
||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
public class HstryResponseVO {
|
public class HstryResponse {
|
||||||
|
|
||||||
//private HttpStatus status;
|
//private HttpStatus status;
|
||||||
private int resultCode;
|
private int resultCode;
|
||||||
@ -58,7 +52,7 @@ public class HstryResponseVO {
|
|||||||
*
|
*
|
||||||
* */
|
* */
|
||||||
|
|
||||||
public HstryResponseVO(HttpStatus status, String message, LocalDateTime timestamp) {
|
public HstryResponse(HttpStatus status, String message, LocalDateTime timestamp) {
|
||||||
this.resultCode = status.value();
|
this.resultCode = status.value();
|
||||||
checkMessage(status, message);
|
checkMessage(status, message);
|
||||||
this.localDateTime = timestamp;
|
this.localDateTime = timestamp;
|
||||||
@ -1,16 +1,13 @@
|
|||||||
package com.itn.mjonApi.mjon.api.inqry.service.mapper.domain;
|
package com.itn.mjonApi.mjon.api.inqry.service.mapper.domain;
|
||||||
|
|
||||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
|
||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
import org.springframework.http.ResponseEntity;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* packageName : com.itn.mjonApi.cmn.msg
|
* packageName : com.itn.mjonApi.cmn.msg
|
||||||
* fileName : mjonResponse
|
* fileName : mjonResponse
|
||||||
* author : hylee
|
* author : hylee
|
||||||
* date : 2023-05-12
|
* date : 2023-05-12
|
||||||
* description : 문자온 프로젝트에서 받은 리턴값
|
* description : [내역 조회]문자온 프로젝트에서 받은 리턴값
|
||||||
* ===========================================================
|
* ===========================================================
|
||||||
* DATE AUTHOR NOTE
|
* DATE AUTHOR NOTE
|
||||||
* -----------------------------------------------------------
|
* -----------------------------------------------------------
|
||||||
@ -23,27 +20,28 @@ import org.springframework.http.ResponseEntity;
|
|||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
public class MjonResponseVO {
|
public class MjonResponseVO {
|
||||||
|
|
||||||
private String result;
|
|
||||||
private String message;
|
|
||||||
private String resultSts; // 전송결과 갯수
|
|
||||||
private String resultBlockSts; // 수신거부 갯수
|
|
||||||
private String msgGroupId;
|
|
||||||
private String afterCash;
|
|
||||||
|
|
||||||
|
|
||||||
|
private String msgGroupId; // 메세지 그룹 ID
|
||||||
|
private String msgId; // 메세지 ID
|
||||||
/**
|
private String totMsgCnt; // 전체 전송문자 갯수
|
||||||
*
|
private int msgType; // 문자 종류 - 4 : 단문 , 6 장문
|
||||||
* @param stringResponseEntity
|
private String msgTypeName; // 문자 구분명
|
||||||
* @return ResponseEntity vo convert
|
private String msgResult; // 발송결과 성공, 실패 건수
|
||||||
* @throws JsonProcessingException
|
private String sCnt; // 성공 카운트
|
||||||
*/
|
private String fCnt; // 실패 카운트
|
||||||
public static MjonResponseVO getMjonResponse(ResponseEntity<String> stringResponseEntity) throws JsonProcessingException {
|
private String wCnt; // 대기 카운트
|
||||||
ObjectMapper objectMapper = new ObjectMapper();
|
private int msgGroupCnt; // 문자 발송 건수
|
||||||
|
private String smsTxt; // 문자 내용
|
||||||
MjonResponseVO mjonResponseVO = objectMapper.readValue(stringResponseEntity.getBody(), MjonResponseVO.class);
|
private String callFrom; // 발신자 번호
|
||||||
return mjonResponseVO;
|
private String callTo; // 수신자 번호
|
||||||
}
|
private int curState; // 전송 처리 결과값
|
||||||
|
private String userId; // 사용자 ID
|
||||||
|
private int remainMsgCnt; // ???
|
||||||
|
private String reqdate; // 등록 일시
|
||||||
|
private String regdate; //
|
||||||
|
private String reserveCYn; // 예약 취소 여부
|
||||||
|
private String ttlCnt; // 전체 요청 수
|
||||||
|
private String subject; // 제목
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -10,7 +10,6 @@ import org.springframework.web.client.RestTemplate;
|
|||||||
import com.itn.mjonApi.cmn.msg.RestResponse;
|
import com.itn.mjonApi.cmn.msg.RestResponse;
|
||||||
import com.itn.mjonApi.mjon.api.inqry.service.HstryService;
|
import com.itn.mjonApi.mjon.api.inqry.service.HstryService;
|
||||||
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryDetailVO;
|
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryDetailVO;
|
||||||
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryResponseVO;
|
|
||||||
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryVO;
|
import com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.HstryVO;
|
||||||
|
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
|||||||
@ -14,7 +14,6 @@ import lombok.extern.slf4j.Slf4j;
|
|||||||
import org.apache.catalina.connector.Response;
|
import org.apache.catalina.connector.Response;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.io.UnsupportedEncodingException;
|
import java.io.UnsupportedEncodingException;
|
||||||
@ -38,9 +37,6 @@ public class SendServiceImpl implements SendService {
|
|||||||
this.apiService = apiService;
|
this.apiService = apiService;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 성공 stat_code
|
|
||||||
@Value("${respone.status.success}")
|
|
||||||
private String STAT_CODE;
|
|
||||||
private static final String replaseStrList = "[*이름*],[*1*],[*2*],[*3*],[*4*]";
|
private static final String replaseStrList = "[*이름*],[*1*],[*2*],[*3*],[*4*]";
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -48,7 +44,7 @@ public class SendServiceImpl implements SendService {
|
|||||||
|
|
||||||
if(StringUtils.isNotEmpty(msgRequestVO.getTest_yn())){
|
if(StringUtils.isNotEmpty(msgRequestVO.getTest_yn())){
|
||||||
// YF => 실패 테스트 데이터
|
// YF => 실패 테스트 데이터
|
||||||
return this._getTestReturnData(msgRequestVO.getTest_yn());
|
return this._getTestMsgReturnData(msgRequestVO.getTest_yn());
|
||||||
}
|
}
|
||||||
//sendMsg 문자 발송 전 체크 사항
|
//sendMsg 문자 발송 전 체크 사항
|
||||||
|
|
||||||
@ -116,7 +112,7 @@ public class SendServiceImpl implements SendService {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private RestResponse _getTestReturnData(String testYn)
|
private RestResponse _getTestMsgReturnData(String testYn)
|
||||||
{
|
{
|
||||||
// YF => 실패 테스트 데이터
|
// YF => 실패 테스트 데이터
|
||||||
if("YF".equals(testYn))
|
if("YF".equals(testYn))
|
||||||
@ -136,11 +132,30 @@ public class SendServiceImpl implements SendService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private RestResponse _getTestMsgsReturnData(String testYn)
|
||||||
|
{
|
||||||
|
// YF => 실패 테스트 데이터
|
||||||
|
if("YF".equals(testYn))
|
||||||
|
{
|
||||||
|
// 실패 코드 중 랜덤으로 리턴
|
||||||
|
return new RestResponse(StatMsg.randomErrorStatCode());
|
||||||
|
}else{
|
||||||
|
return new RestResponse(
|
||||||
|
SendSuccessRestResponse.builder()
|
||||||
|
.msgGroupId("MSGGID_0000000000000") // 전송 메세지 그룹 ID
|
||||||
|
.successCnt("5") // 성공 건수
|
||||||
|
.blockCnt("2") // 수신거부 건수
|
||||||
|
.msgType("LMS")
|
||||||
|
.failCnt("0")
|
||||||
|
.build()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
@Override
|
@Override
|
||||||
public RestResponse sendMsgsData(MsgsRequestVO msgsRequestVO) throws Exception {
|
public RestResponse sendMsgsData(MsgsRequestVO msgsRequestVO) throws Exception {
|
||||||
|
|
||||||
if(StringUtils.isNotEmpty(msgsRequestVO.getTest_yn())){
|
if(StringUtils.isNotEmpty(msgsRequestVO.getTest_yn())){
|
||||||
return this._getTestReturnData(msgsRequestVO.getTest_yn());
|
return this._getTestMsgsReturnData(msgsRequestVO.getTest_yn());
|
||||||
}
|
}
|
||||||
// msgsVO -> msgVO List로 변환
|
// msgsVO -> msgVO List로 변환
|
||||||
List<MsgRequestVO> msgRequestVOList = this.getDataCleaning(msgsRequestVO);
|
List<MsgRequestVO> msgRequestVOList = this.getDataCleaning(msgsRequestVO);
|
||||||
|
|||||||
@ -15,4 +15,6 @@ server.port=8088
|
|||||||
logging.level.root=info
|
logging.level.root=info
|
||||||
|
|
||||||
#api.root.url=http://192.168.0.125:8095/
|
#api.root.url=http://192.168.0.125:8095/
|
||||||
api.root.url=http://localhost:8080/
|
api.root.url=http://localhost:8080/
|
||||||
|
|
||||||
|
Ganpandaup.receiver.email=hylee250@kakao.com
|
||||||
@ -15,3 +15,5 @@ server.port=9100
|
|||||||
logging.level.root=info
|
logging.level.root=info
|
||||||
|
|
||||||
api.root.url=http://192.168.0.125:8095/
|
api.root.url=http://192.168.0.125:8095/
|
||||||
|
|
||||||
|
Ganpandaup.receiver.email=ganpan9882@kakao.com
|
||||||
@ -26,5 +26,4 @@ respone.status.success=STAT_0
|
|||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
Ganpandaup.estimate.template.url=https://www.munjaon.co.kr/publish/email_form_ganpandaum_contact.html
|
Ganpandaup.estimate.template.url=https://www.munjaon.co.kr/publish/email_form_ganpandaum_contact.html
|
||||||
Ganpandaup.receiver.email=ganpan9882@kakao.com
|
|
||||||
@ -3,11 +3,9 @@
|
|||||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
|
||||||
<mapper namespace="com.itn.mjonApi.mjon.api.inqry.mapper.HstryMapper">
|
<mapper namespace="com.itn.mjonApi.mjon.api.inqry.mapper.HstryMapper">
|
||||||
|
|
||||||
<select id="selectApiInqryHstry"
|
<select id="selectApiInqryHstry" resultType="com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.MjonResponseVO">
|
||||||
resultType="hashmap"
|
|
||||||
>
|
|
||||||
|
|
||||||
/* 문자온 발송결과 페이지 쿼리를 그대로 사용함 - http://localhost:9080/web/mjon/msgsent/selectMsgSentView.do */
|
/* 문자온 발송결과 페이지 쿼리를 그대로 사용함 - http://localhost:9080/web/mjon/msgsent/selectMsgSentView.do */
|
||||||
SELECT
|
SELECT
|
||||||
@ -28,9 +26,9 @@
|
|||||||
, AAA.msgTypeName
|
, AAA.msgTypeName
|
||||||
, AAA.msgResult
|
, AAA.msgResult
|
||||||
|
|
||||||
, SUM(if(bbb.msgresultSts='W',bbb.msgResultCnt, 0)) wCnt
|
, SUM(if(bbb.msgresultSts='W',bbb.msgResultCnt, 0)) as wCnt
|
||||||
, SUM(if(bbb.msgresultSts='S',bbb.msgResultCnt, 0)) sCnt
|
, SUM(if(bbb.msgresultSts='S',bbb.msgResultCnt, 0)) as sCnt
|
||||||
, SUM(if(bbb.msgresultSts='F',bbb.msgResultCnt, 0)) fCnt
|
, SUM(if(bbb.msgresultSts='F',bbb.msgResultCnt, 0)) as fCnt
|
||||||
|
|
||||||
, SUM(if(bbb.msgresultSts='W',bbb.msgResultCnt, 0))
|
, SUM(if(bbb.msgresultSts='W',bbb.msgResultCnt, 0))
|
||||||
+ SUM(if(bbb.msgresultSts='S',bbb.msgResultCnt, 0))
|
+ SUM(if(bbb.msgresultSts='S',bbb.msgResultCnt, 0))
|
||||||
@ -338,7 +336,7 @@
|
|||||||
|
|
||||||
|
|
||||||
<select id="selectApiInqryHstryDetail"
|
<select id="selectApiInqryHstryDetail"
|
||||||
resultType="hashmap"
|
resultType="com.itn.mjonApi.mjon.api.inqry.service.mapper.domain.MjonResponseVO"
|
||||||
>
|
>
|
||||||
|
|
||||||
/* 문자온 발송결과 페이지 실패 건수 팝업을 변형해서 사용함 - http://localhost:9080/web/mjon/msgsent/selectMsgSFDetailListAjax.do */
|
/* 문자온 발송결과 페이지 실패 건수 팝업을 변형해서 사용함 - http://localhost:9080/web/mjon/msgsent/selectMsgSFDetailListAjax.do */
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user