diff --git a/src/main/java/com/itn/mjonApi/cmn/aop/LogAspect.java b/src/main/java/com/itn/mjonApi/cmn/aop/LogAspect.java index 7dce295..250f27b 100644 --- a/src/main/java/com/itn/mjonApi/cmn/aop/LogAspect.java +++ b/src/main/java/com/itn/mjonApi/cmn/aop/LogAspect.java @@ -2,14 +2,15 @@ package com.itn.mjonApi.cmn.aop; import com.fasterxml.jackson.core.JsonProcessingException; import com.itn.mjonApi.cmn.idgen.service.IdgenService; -import com.itn.mjonApi.cmn.msg.RestResponse; import com.itn.mjonApi.cmn.msg.FailRestResponse; -import com.itn.mjonApi.mjon.api.send.mapper.domain.SendSucRestResponse; +import com.itn.mjonApi.cmn.msg.RestResponse; import com.itn.mjonApi.mjon.api.access.mapper.domain.AccessKeyVO; import com.itn.mjonApi.mjon.api.send.mapper.domain.MsgRequestVO; import com.itn.mjonApi.mjon.api.send.mapper.domain.MsgsRequestVO; +import com.itn.mjonApi.mjon.api.send.mapper.domain.SendSucRestResponse; import com.itn.mjonApi.mjon.log.service.mapper.LettnAccessLogMapper; import com.itn.mjonApi.mjon.log.service.mapper.LettnApiSendMsgLogMapper; +import com.itn.mjonApi.mjon.log.service.mapper.MjMsgGroupDataMapper; import com.itn.mjonApi.mjon.log.service.mapper.domain.LettnAccessLogVO; import com.itn.mjonApi.mjon.log.service.mapper.domain.LettnApiSendMsgLogVO; import com.itn.mjonApi.util.ApiObjectUtil; @@ -55,6 +56,9 @@ public class LogAspect { @Autowired LettnApiSendMsgLogMapper lettnApiSendMsgLogMapper; + + @Autowired + MjMsgGroupDataMapper mjMsgGroupDataMapper; @Resource(name = "apiAccessLog") private IdgenService idgenApiAccessLogId; @@ -142,15 +146,38 @@ public class LogAspect { lettnAccessLogMapper.update(lettnAccessLogVO); String methodNm = getMethodSignature(joinPoint); + + // 메세지 보낸 데이터만 저장 if("sendMsgData".equals(methodNm) || "sendMsgsData".equals(methodNm)){ + // lettngnrlmber_api_send_msg_log 테이블에 저장하기 위한 데이터 만들기 LettnApiSendMsgLogVO apiSendMsgLogVO = this.makeApiSendMsgLogVO(returnValue, logId, methodNm); lettnApiSendMsgLogMapper.insert(apiSendMsgLogVO); + // 메세지 그룹 테이블에 발송 구분 업데이트 + updateMsgGroupTbSendKind(apiSendMsgLogVO); + } } + /** + * @description 메세지 그룹 테이블에 발송 구분 업데이트 + * @param apiSendMsgLogVO + */ + private void updateMsgGroupTbSendKind(LettnApiSendMsgLogVO apiSendMsgLogVO) { + if(StringUtils.isNotEmpty(apiSendMsgLogVO.getMsgGroupId())) + { + String[] msgGroupIds = null; + if(apiSendMsgLogVO.getMsgGroupId().indexOf(",") > -1){ + msgGroupIds = apiSendMsgLogVO.getMsgGroupId().split(","); + }else{ + msgGroupIds = new String[]{apiSendMsgLogVO.getMsgGroupId()}; + } + mjMsgGroupDataMapper.update(msgGroupIds); + } + } + /** * @description lettngnrlmber_api_send_msg_log 테이블에 저장할 데이터 만들기 * @param returnValue @@ -192,7 +219,7 @@ public class LogAspect { // ApiObjectUtil.getAccessKeyVOToJsonString(sendSucRestResponse); } // 실패일때 CLASS - else if("SendFailRestResponse".equals(classNm)) { + else if("FailRestResponse".equals(classNm)) { FailRestResponse failRestResponse = (FailRestResponse) dataObject; test_yn = failRestResponse.getTest_yn(); @@ -200,10 +227,6 @@ public class LogAspect { } - - - - String msgSendType = null; if("sendMsgData".equals(methodNm)){msgSendType = "msg";} else if("sendMsgsData".equals(methodNm)){msgSendType = "msgs";} diff --git a/src/main/java/com/itn/mjonApi/mjon/log/service/mapper/MjMsgGroupDataMapper.java b/src/main/java/com/itn/mjonApi/mjon/log/service/mapper/MjMsgGroupDataMapper.java new file mode 100644 index 0000000..787f485 --- /dev/null +++ b/src/main/java/com/itn/mjonApi/mjon/log/service/mapper/MjMsgGroupDataMapper.java @@ -0,0 +1,12 @@ +package com.itn.mjonApi.mjon.log.service.mapper; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +@Mapper +public interface MjMsgGroupDataMapper { + + void update(@Param("msgGroupIds") String[] msgGroupIds); + + +} diff --git a/src/main/resources/application-dev.properties b/src/main/resources/application-dev.properties index b6f70d4..8a694dc 100644 --- a/src/main/resources/application-dev.properties +++ b/src/main/resources/application-dev.properties @@ -1,9 +1,6 @@ # DB INFO -#spring.datasource.driver-class-name=org.mariadb.jdbc.Driver -#spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver -#spring.datasource.url=jdbc:mysql://192.168.0.125:3306/mjon?serverTimezone=Asia/Seoul spring.datasource.driverClassName=net.sf.log4jdbc.sql.jdbcapi.DriverSpy spring.datasource.url=jdbc:log4jdbc:mysql://192.168.0.125:3306/mjon?serverTimezone=Asia/Seoul #spring.datasource.url=jdbc:log4jdbc:mysql://139.150.72.157:3306/mjon?serverTimezone=Asia/Seoul diff --git a/src/main/resources/mapper/log/MjMsgGroupData.xml b/src/main/resources/mapper/log/MjMsgGroupData.xml new file mode 100644 index 0000000..f9ba96d --- /dev/null +++ b/src/main/resources/mapper/log/MjMsgGroupData.xml @@ -0,0 +1,24 @@ + + + + + + + + + mj_msg_group_data + + + + + + UPDATE + SET SEND_KIND = 'A' + WHERE MSG_GROUP_ID IN + + #{item} + + + + \ No newline at end of file