|
|
|
@@ -8,7 +8,9 @@ import java.io.InputStream;
|
|
|
|
import java.io.OutputStream;
|
|
|
|
import java.io.OutputStream;
|
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.Date;
|
|
|
|
import java.util.Date;
|
|
|
|
|
|
|
|
import java.util.HashMap;
|
|
|
|
import java.util.List;
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
import java.util.Map;
|
|
|
|
|
|
|
|
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
|
@@ -16,6 +18,8 @@ import javax.servlet.http.HttpServletResponse;
|
|
|
|
import org.apache.commons.io.FilenameUtils;
|
|
|
|
import org.apache.commons.io.FilenameUtils;
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
|
import org.mybatis.spring.SqlSessionTemplate;
|
|
|
|
import org.mybatis.spring.SqlSessionTemplate;
|
|
|
|
|
|
|
|
import org.slf4j.Logger;
|
|
|
|
|
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
import org.springframework.beans.factory.annotation.Qualifier;
|
|
|
|
import org.springframework.beans.factory.annotation.Qualifier;
|
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
|
@@ -26,6 +30,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
import org.springframework.web.multipart.MultipartHttpServletRequest;
|
|
|
|
import org.springframework.web.multipart.MultipartHttpServletRequest;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import kr.co.uplus.ez.api.custMgt.CustMgtService;
|
|
|
|
import kr.co.uplus.ez.api.sendNumMgt.dto.DeleteNumberReqDto;
|
|
|
|
import kr.co.uplus.ez.api.sendNumMgt.dto.DeleteNumberReqDto;
|
|
|
|
import kr.co.uplus.ez.api.sendNumMgt.dto.DeleteNumberResDto;
|
|
|
|
import kr.co.uplus.ez.api.sendNumMgt.dto.DeleteNumberResDto;
|
|
|
|
import kr.co.uplus.ez.api.sendNumMgt.dto.DetailNumber;
|
|
|
|
import kr.co.uplus.ez.api.sendNumMgt.dto.DetailNumber;
|
|
|
|
@@ -60,6 +65,7 @@ import kr.co.uplus.ez.api.sendNumMgt.dto.SendNumberListResDto;
|
|
|
|
import kr.co.uplus.ez.api.sendNumMgt.dto.UpdateApprReqDto;
|
|
|
|
import kr.co.uplus.ez.api.sendNumMgt.dto.UpdateApprReqDto;
|
|
|
|
import kr.co.uplus.ez.api.sendNumMgt.dto.UpdateApprResDto;
|
|
|
|
import kr.co.uplus.ez.api.sendNumMgt.dto.UpdateApprResDto;
|
|
|
|
import kr.co.uplus.ez.api.sendNumMgt.dto.UpdateApprSendNumber;
|
|
|
|
import kr.co.uplus.ez.api.sendNumMgt.dto.UpdateApprSendNumber;
|
|
|
|
|
|
|
|
import kr.co.uplus.ez.common.components.HubeasyApiComponents;
|
|
|
|
import kr.co.uplus.ez.common.data.ApiResponseCode;
|
|
|
|
import kr.co.uplus.ez.common.data.ApiResponseCode;
|
|
|
|
import kr.co.uplus.ez.common.data.Const;
|
|
|
|
import kr.co.uplus.ez.common.data.Const;
|
|
|
|
import kr.co.uplus.ez.common.data.Paging;
|
|
|
|
import kr.co.uplus.ez.common.data.Paging;
|
|
|
|
@@ -70,6 +76,8 @@ import kr.co.uplus.ez.common.utils.FileUtil;
|
|
|
|
@Service
|
|
|
|
@Service
|
|
|
|
public class SendNumMgtService {
|
|
|
|
public class SendNumMgtService {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private static final Logger logger = LoggerFactory.getLogger(CustMgtService.class);
|
|
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
@Autowired
|
|
|
|
@Qualifier("sqlSessionTemplateDb1")
|
|
|
|
@Qualifier("sqlSessionTemplateDb1")
|
|
|
|
private SqlSessionTemplate sqlSessionMaster;
|
|
|
|
private SqlSessionTemplate sqlSessionMaster;
|
|
|
|
@@ -78,9 +86,24 @@ public class SendNumMgtService {
|
|
|
|
@Qualifier("sqlSessionTemplateDb2")
|
|
|
|
@Qualifier("sqlSessionTemplateDb2")
|
|
|
|
private SqlSessionTemplate sqlSessionSlave;
|
|
|
|
private SqlSessionTemplate sqlSessionSlave;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
|
|
|
private HubeasyApiComponents hubeasyApi;
|
|
|
|
|
|
|
|
|
|
|
|
@Value("${file-resource.info.sendNumber.path:/efs/admin/sendNumber/}")
|
|
|
|
@Value("${file-resource.info.sendNumber.path:/efs/admin/sendNumber/}")
|
|
|
|
private String sendNumUploadPath;
|
|
|
|
private String sendNumUploadPath;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Value("${msghubez.applicationId:EZ_ADMIN}")
|
|
|
|
|
|
|
|
private String apiApplicationId;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Value("${mail.senrNoRejTempleteCode:E0007}")
|
|
|
|
|
|
|
|
private String templeteCode;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Value("${msghubez.homepage-url:https://mhez.uplus.co.kr}")
|
|
|
|
|
|
|
|
private String mailTempleteHomeUrl;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Value("${mail.from:msghubez@lguplus.co.kr}")
|
|
|
|
|
|
|
|
private String fromEmail;
|
|
|
|
|
|
|
|
|
|
|
|
private static int BUFFERSIZE = 1024;
|
|
|
|
private static int BUFFERSIZE = 1024;
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* date : 2022. 4. 25.
|
|
|
|
* date : 2022. 4. 25.
|
|
|
|
@@ -597,6 +620,9 @@ public class SendNumMgtService {
|
|
|
|
Object principal = SecurityContextHolder.getContext().getAuthentication().getPrincipal();
|
|
|
|
Object principal = SecurityContextHolder.getContext().getAuthentication().getPrincipal();
|
|
|
|
UserDetails userDetails = (UserDetails) principal;
|
|
|
|
UserDetails userDetails = (UserDetails) principal;
|
|
|
|
String regId = userDetails.getUsername();
|
|
|
|
String regId = userDetails.getUsername();
|
|
|
|
|
|
|
|
Map<Object, Object> mailReqMap = new HashMap<Object,Object>();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<String> sndrNoList = new ArrayList<String>();
|
|
|
|
|
|
|
|
|
|
|
|
// 발신번호 메모 업데이트. upddateSndrnoReg
|
|
|
|
// 발신번호 메모 업데이트. upddateSndrnoReg
|
|
|
|
int totalCnt = updateApprReqDto.getList().size();
|
|
|
|
int totalCnt = updateApprReqDto.getList().size();
|
|
|
|
@@ -605,15 +631,63 @@ public class SendNumMgtService {
|
|
|
|
for(UpdateApprSendNumber updateApprSendNumber: updateApprReqDto.getList()){
|
|
|
|
for(UpdateApprSendNumber updateApprSendNumber: updateApprReqDto.getList()){
|
|
|
|
if(StringUtils.equals(Const.SNDRNO_STTUS_CD_COMPLETED, updateApprSendNumber.getSttusCd())){
|
|
|
|
if(StringUtils.equals(Const.SNDRNO_STTUS_CD_COMPLETED, updateApprSendNumber.getSttusCd())){
|
|
|
|
apvCnt++;
|
|
|
|
apvCnt++;
|
|
|
|
|
|
|
|
logger.info("발신번호 승인, 건수 ={}",apvCnt);
|
|
|
|
updateApprSendNumber.setUseYn(Const.COMM_YES); // 사용여부 : 승인완료 시 자동으로 Y 값으로 되며 승인대기, 반려, 관리자 변경 값은 N으로 표기
|
|
|
|
updateApprSendNumber.setUseYn(Const.COMM_YES); // 사용여부 : 승인완료 시 자동으로 Y 값으로 되며 승인대기, 반려, 관리자 변경 값은 N으로 표기
|
|
|
|
}else if(StringUtils.equals(Const.SNDRNO_STTUS_CD_REJECT, updateApprSendNumber.getSttusCd())){
|
|
|
|
}else if(StringUtils.equals(Const.SNDRNO_STTUS_CD_REJECT, updateApprSendNumber.getSttusCd())){
|
|
|
|
rejtCnt++;
|
|
|
|
rejtCnt++;
|
|
|
|
|
|
|
|
logger.info("발신번호 반려, 건수 ={}",rejtCnt);
|
|
|
|
updateApprSendNumber.setUseYn(Const.COMM_NO); // 사용여부 : 승인완료 시 자동으로 Y 값으로 되며 승인대기, 반려, 관리자 변경 값은 N으로 표기
|
|
|
|
updateApprSendNumber.setUseYn(Const.COMM_NO); // 사용여부 : 승인완료 시 자동으로 Y 값으로 되며 승인대기, 반려, 관리자 변경 값은 N으로 표기
|
|
|
|
|
|
|
|
logger.info("************************반려 값 오는지 확인 ********************");
|
|
|
|
|
|
|
|
logger.info("발신번호={}",updateApprSendNumber.getSndrno());
|
|
|
|
|
|
|
|
// ** 발신번호 반려 시에는 사용자에게 반려 메일 전송 **
|
|
|
|
|
|
|
|
//1. for문 안에서는 반려 발신번호 리스트에 셋팅
|
|
|
|
|
|
|
|
sndrNoList.add(updateApprSendNumber.getSndrno());
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
updateApprSendNumber.setAdminId(regId);
|
|
|
|
updateApprSendNumber.setAdminId(regId);
|
|
|
|
sendNumMgtMapper.updateSndrno(updateApprSendNumber);
|
|
|
|
sendNumMgtMapper.updateSndrno(updateApprSendNumber);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//2. 반려 발신번호 리스트에 값이 있을 경우 메일을 보냄
|
|
|
|
|
|
|
|
if(sndrNoList.size()>0) {
|
|
|
|
|
|
|
|
//try catch 처리하기
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
|
|
|
String testEmail = "lmh3294@naver.com";
|
|
|
|
|
|
|
|
Map<Object, Object> mailResultMap = new HashMap<Object, Object>();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// API authToken 조회
|
|
|
|
|
|
|
|
String apiAuthToken = sendNumMgtMapper.selectApiAuthToken(apiApplicationId);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//3. 메일에 담을 내용 셋팅
|
|
|
|
|
|
|
|
mailReqMap.put("applicationId", apiApplicationId);
|
|
|
|
|
|
|
|
mailReqMap.put("apiAuthToken", apiAuthToken);
|
|
|
|
|
|
|
|
mailReqMap.put("rejectListSndrNo", sndrNoList);
|
|
|
|
|
|
|
|
mailReqMap.put("memo", updateApprReqDto.getMemo());
|
|
|
|
|
|
|
|
//이메일 수신자 가져오는 쿼리
|
|
|
|
|
|
|
|
mailReqMap.put("toEmail", testEmail);
|
|
|
|
|
|
|
|
mailReqMap.put("fromEmail", fromEmail);
|
|
|
|
|
|
|
|
mailReqMap.put("templeteCode", templeteCode);
|
|
|
|
|
|
|
|
mailReqMap.put("homeUrl", mailTempleteHomeUrl);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
logger.debug("############## [Email Send Start] ###############");
|
|
|
|
|
|
|
|
logger.debug("[Email Send Request - applicationId : {}]", mailReqMap.get("applicationId"));
|
|
|
|
|
|
|
|
logger.debug("[Email Send Request - authToken : {}]", mailReqMap.get("authToken"));
|
|
|
|
|
|
|
|
logger.debug("[Email Send Request - userId : {}]", mailReqMap.get("rejectListSndrNo"));
|
|
|
|
|
|
|
|
logger.debug("[Email Send Request - tmpPwd : {}]", mailReqMap.get("memo"));
|
|
|
|
|
|
|
|
logger.debug("[Email Send Request - toEmail : {}]", mailReqMap.get("toEmail"));
|
|
|
|
|
|
|
|
logger.debug("[Email Send Request - fromEmail : {}]", mailReqMap.get("fromEmail"));
|
|
|
|
|
|
|
|
logger.debug("[Email Send Request - templeteCode : {}]", mailReqMap.get("templeteCode"));
|
|
|
|
|
|
|
|
logger.debug("[Email Send Request - homeUrl : {}]", mailReqMap.get("homeUrl"));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mailResultMap = hubeasyApi.sendTemplateMailApi(mailReqMap);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
|
|
|
// TODO: handle exception
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
updateApprReqDto.setApvCnt(apvCnt);
|
|
|
|
updateApprReqDto.setApvCnt(apvCnt);
|
|
|
|
updateApprReqDto.setRejtCnt(rejtCnt);
|
|
|
|
updateApprReqDto.setRejtCnt(rejtCnt);
|
|
|
|
|
|
|
|
|
|
|
|
|