TC 수정건 적용 (디자인 및 기능)

This commit is contained in:
kimre
2022-07-18 19:34:34 +09:00
parent 2bfa07c17f
commit a6c6db6f22
40 changed files with 1783 additions and 1170 deletions

View File

@@ -90,6 +90,15 @@ public class AttractMgtService {
public ChannelListExcelResDto channelListExcel(ChannelListExcelReqDto channelListExcelReqDto) {
AttractMgtMapper attractMgtMapper = sqlSessionSlave.getMapper(AttractMgtMapper.class);
Object principal = SecurityContextHolder.getContext().getAuthentication().getPrincipal();
UserDetails userDetails = (UserDetails) principal;
String attrctorId = userDetails.getUsername();
ArrayList auth = (ArrayList) userDetails.getAuthorities();
if(StringUtils.equals(Const.AUTH_CD_AGENCY, auth.get(0).toString())){
channelListExcelReqDto.setAttrctorId(attrctorId);
}
List<ChannelInfo> channelInfos = attractMgtMapper.selectAttractExcelList(channelListExcelReqDto);
ChannelListExcelRes channelListExcelRes = new ChannelListExcelRes();
channelListExcelRes.setList(channelInfos);

View File

@@ -27,4 +27,6 @@ public class ChannelListExcelReqDto implements Serializable {
private String norgNm;
@ApiModelProperty(example = "01", name = "고객유형", dataType = "String")
private String custTyCd;
@ApiModelProperty(name = "유치자ID", dataType = "String", hidden = true)
private String attrctorId;
}

View File

@@ -87,5 +87,17 @@ public interface CustMgtMapper {
String getSubId();
String getEntrNo();
/** 청약 상태 이력 저장 */
int insertSbscstHst(SbscstHstDto sbscstHstDto);
/** 상품정보 조회 */
ProdInfo getProdAmt(String userSeq);
/** 한도 - 오더 채번 */
String getOrder();
/** 한도 - 오더 저장 */
int insertOrder(OrderDto orderDto);
/** 차감 상세 저장 */
int insertLmtdctDtl(LmtdctDtlDto lmtdctDtlDto);
/** 한도 초기화 저장 */
int insertUserLmt(UserLmtDto lmtdctDtlDto);
}

View File

@@ -3,6 +3,7 @@ package kr.co.uplus.ez.api.custMgt;
import kr.co.uplus.ez.api.custMgt.dto.*;
import kr.co.uplus.ez.common.components.HubeasyApiComponents;
import kr.co.uplus.ez.common.data.*;
import kr.co.uplus.ez.common.utils.DateUtils;
import kr.co.uplus.ez.common.utils.EncryptionUtil;
import org.apache.commons.lang3.RandomStringUtils;
import org.apache.commons.lang3.StringUtils;
@@ -12,11 +13,14 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -404,6 +408,10 @@ public class CustMgtService {
int checkCustInfo = custMgtMapper.selectCustInfoCount(brno);
String custSeq = custMgtMapper.getCustSeq(brno);
Object principal = SecurityContextHolder.getContext().getAuthentication().getPrincipal();
UserDetails userDetails = (UserDetails) principal;
String regId = userDetails.getUsername();
if (checkCustInfo < 1) {
// 1-2. 사업자 번호로 미존재시 : 고객정보 등록.
CustInfo custInfo = new CustInfo();
@@ -417,8 +425,8 @@ public class CustMgtService {
custInfo.setZipcd(zipCd);
custInfo.setAddr1(badr);
custInfo.setAddr2(dadr);
custInfo.setRegId(insertTestIdReqDto.getUserId());
custInfo.setChgId(insertTestIdReqDto.getUserId());
custInfo.setRegId(regId);
custInfo.setChgId(regId);
// 고객정보 등록.
custMgtMapper.insertCustInfo(custInfo);
}
@@ -439,9 +447,9 @@ public class CustMgtService {
svcUserInfo.setHpNo(insertTestIdReqDto.getMdn());
svcUserInfo.setEmail(insertTestIdReqDto.getUserEmail());
svcUserInfo.setAuthcd080(custMgtMapper.getAuth080());
svcUserInfo.setAutCd(Const.USER_AUTCD_USR);
svcUserInfo.setRegId(insertTestIdReqDto.getUserId());
svcUserInfo.setChgId(insertTestIdReqDto.getUserId());
svcUserInfo.setAutCd(Const.USER_AUTCD_TESTER);
svcUserInfo.setRegId(regId);
svcUserInfo.setChgId(regId);
// 서비스 이용자 등록.
custMgtMapper.insertSvcUserInfo(svcUserInfo);
@@ -457,12 +465,71 @@ public class CustMgtService {
subsInfo.setSubsSttusCd(Const.SUBS_STTUS_CD_NORMAL);
subsInfo.setProdCd(prodCd);
subsInfo.setBindDcYn(Const.COMM_NO);
subsInfo.setRegId(insertTestIdReqDto.getUserId());
subsInfo.setChgId(insertTestIdReqDto.getUserId());
subsInfo.setRegId(regId);
subsInfo.setChgId(regId);
// 청약정보 등록.
custMgtMapper.insertSubsInfo(subsInfo);
// 청약상태_이력 테이블 개통 이력 insert
Date now = new Date();
String subsDt = DateUtils.dateToStr(now, "yyyyMMddHHmmss");
SbscstHstDto newSbscstHst = new SbscstHstDto();
newSbscstHst.setSubsId(subId); // 청약ID
newSbscstHst.setEfctStDt(subsDt); // 유효 종료 일시
newSbscstHst.setProdCd(prodCd); // 상품 코드
newSbscstHst.setSubsSttusCd(Const.SUBS_STTUS_CD_NORMAL); // 청약 상태 코드
newSbscstHst.setRegId(regId); // 변경 ID
// 청약 이력 등록
custMgtMapper.insertSbscstHst(newSbscstHst);
// 1. 한도 초기화
// 1-1. 상품금액 조회
ProdInfo prodInfo = new ProdInfo();
prodInfo = custMgtMapper.getProdAmt(userSeq);
String prodAmt = prodInfo.getProdAmt();
// 1-2. 오더 채번
String order = custMgtMapper.getOrder();
String orderCretDt = order.substring(0,12);
// 1-3. 오더 추가
OrderDto orderDto = new OrderDto();
orderDto.setOrderId(order);
orderDto.setOrderCretDt(orderCretDt);
orderDto.setOrderTyCd(Const.ORDER_TYPE_CD_03); // 한도초기화 하기 위한 주문 유형 코드 (01:발송차감, 02:차감결과처리, 03:한도초기화, 04:이월금소멸)
orderDto.setRegId(regId);
custMgtMapper.insertOrder(orderDto);
// 1-4. 차감 상세 INSERT
LmtdctDtlDto lmtdctDtlDto = new LmtdctDtlDto();
lmtdctDtlDto.setOrderCretDt(orderCretDt); // 오더 생성일시
lmtdctDtlDto.setUserSeq(userSeq); // 이용자 일련번호
String lmtYm = subsDt.substring(0,6);
lmtdctDtlDto.setLmtYm(lmtYm); // 한도 년월
lmtdctDtlDto.setUseYm(lmtYm); // 사용 년월
lmtdctDtlDto.setLmtTpCd(Const.LMTDCT_DTL_TYPE_CD_01); // 한도 유형 코드
lmtdctDtlDto.setDdctTpcd(Const.LMTDCT_DTL_DDCT_TYPE_CD_04); // 차감 유형 코드
lmtdctDtlDto.setDdctAmt(prodAmt); // 차감 금액
lmtdctDtlDto.setExeOrderId(order); // 실행 오더 ID
lmtdctDtlDto.setSnddctOrderId(order); // 발송 차감 오더 ID
lmtdctDtlDto.setRegId(regId); // 등록 ID
custMgtMapper.insertLmtdctDtl(lmtdctDtlDto);
// 1-5. 한도 INSERT
UserLmtDto userLmtDto = new UserLmtDto();
userLmtDto.setUserSeq(userSeq); // 이용자 일련번호
userLmtDto.setLmtYm(lmtYm); // 한도 년월
userLmtDto.setFxLmtAmt(prodAmt); // 정액 한도 금액
userLmtDto.setMrtLmtAmt(prodAmt); // 종량 한도 금액
userLmtDto.setFxBlnc(prodAmt); // 정액 잔액
userLmtDto.setRegId(regId); // 등록자ID
userLmtDto.setChgId(regId); // 변경자ID
custMgtMapper.insertUserLmt(userLmtDto);
return new InsertTestIdResDto(ApiResponseCode.SUCCESS);
}
@@ -746,14 +813,14 @@ public class CustMgtService {
logger.debug("[Email Send Request - templeteCode : {}]", mailReqMap.get("templeteCode"));
logger.debug("[Email Send Request - homeUrl : {}]", mailReqMap.get("homeUrl"));
mailResultMap = hubeasyApi.sendTemplateMailApi(mailReqMap);
if (mailResultMap != null) {
logger.debug("[Email Send API RESULT : {}]", mailResultMap.get("API_RSLT"));
if ("F".equals(mailResultMap.get("API_RSLT"))) {
logger.debug("[Email Send API ERROR : {}]", mailResultMap.get("API_RSLT_MSG"));
}
}
// mailResultMap = hubeasyApi.sendTemplateMailApi(mailReqMap);
//
// if (mailResultMap != null) {
// logger.debug("[Email Send API RESULT : {}]", mailResultMap.get("API_RSLT"));
// if ("F".equals(mailResultMap.get("API_RSLT"))) {
// logger.debug("[Email Send API ERROR : {}]", mailResultMap.get("API_RSLT_MSG"));
// }
// }
logger.debug("############## [Email Send End] ###############");
} catch (Exception e) {
@@ -762,7 +829,8 @@ public class CustMgtService {
}
// 요청건수.
insertMassUserRes.setTotalCnt(String.valueOf(insertMassUsers.size()));
// insertMassUserRes.setTotalCnt(String.valueOf(insertMassUsers.size()));
insertMassUserRes.setTotalCnt(String.valueOf(orgInsertMassUsers.size()));
// 성공건수.
insertMassUserRes.setSuccessCnt(String.valueOf(successCnt));
// 실패건수.

View File

@@ -0,0 +1,25 @@
package kr.co.uplus.ez.api.custMgt.dto;
import java.io.Serializable;
import lombok.Data;
// 한도 차감 상세
@SuppressWarnings("serial")
@Data
public class LmtdctDtlDto implements Serializable{
private String seqNo; // 일련번호
private String orderCretDt; // Order 생성 일시
private String userSeq; // 이용자 일련번호
private String lmtYm; // 한도 년월
private String useYm; // 사용 년월
private String lmtTpCd; // 한도 유형 코드
private String ddctTpcd; // 차감 유형 코드
private String ddctAmt; // 차감 금액
private String exeOrderId; // 실행 OrderID
private String snddctOrderId; // 발송차감 OrderID
private String regId; // 등록 ID
private String regDt; // 등록 일시
}

View File

@@ -0,0 +1,16 @@
package kr.co.uplus.ez.api.custMgt.dto;
import java.io.Serializable;
import lombok.Data;
@SuppressWarnings("serial")
@Data
public class OrderDto implements Serializable{
private String orderId; // ORDER ID
private String orderCretDt; // ORDER 생성 일시
private String orderTyCd; // ORDER 유형 코드 (01:발송차감, 02:차감결과처리, 03:한도초기화, 04:이월금소멸)
private String regId; // 등록 ID
}

View File

@@ -0,0 +1,14 @@
package kr.co.uplus.ez.api.custMgt.dto;
import java.io.Serializable;
import lombok.Data;
@SuppressWarnings("serial")
@Data
public class ProdInfo implements Serializable{
private String prodCd;
private String prodNm;
private String prodAmt;
}

View File

@@ -0,0 +1,21 @@
package kr.co.uplus.ez.api.custMgt.dto;
import java.io.Serializable;
import lombok.Data;
@SuppressWarnings("serial")
@Data
public class SbscstHstDto implements Serializable {
private String subsId; // 청약ID
private String efctStDt; // 유효 시작 일시
private String efctFnsDt; // 유효 종료 일시
private String prodCd; // 상품 코드
private String subsSttusCd; // 청약 상태 코드
private String regId; // 등록 ID
private String regDt; // 등록 일시
private String chgId; // 변경 ID
private String chgDt; // 변경일시
}

View File

@@ -0,0 +1,33 @@
package kr.co.uplus.ez.api.custMgt.dto;
import java.io.Serializable;
import lombok.Data;
@SuppressWarnings("serial")
@Data
public class UserLmtDto implements Serializable{
private String userSeq; // 이용자 일련 번호
private String lmtYm; // 한도 년월
private String fxLmtAmt; // 정액 한도 금액
private String mrtLmtAmt; // 종량 한도 금액
private String cfwdAmt; // 이월 금액
private String extncAmt; // 소멸 처리 금액
private String cfwdRstrtBlnc; // 이월 복원 잔액
private String fxBlnc; // 정액 잔액
private String mrtUseAmt; // 종량 사용 금액
private String smsUseAmt; // sms 사용 금액
private String mmsUseAmt; // mms 사용 금액
private String lmsUseAmt; // lms 사용 금액
private String atlkUseAmt; // 알림톡 사용 금액
private String smsUseCnt; // sms 사용 건수
private String lmsUseCnt; // lms 사용 건수
private String mmsUseCnt; // mms 사용 건수
private String atlkUseCnt; // 알림톧 사용 건수
private String regId; // 등록 ID
private String regDt; // 등록 일시
private String chgId; // 변경 ID
private String chgDt; // 변경 일시
}

View File

@@ -88,7 +88,13 @@ public class LoginService {
// 로그인 실패카운트 초기화
loginMapper.setLoginInfo(user.getOprtrId());
}
// 로그인 임시 비밀번호 여부
String tmpPwdYn = user.getTmpPwdYn();
if(tmpPwdYn.equals(Const.COMM_YES)) {
return new LoginResDto(ApiResponseCode.LOGIN_UPDATE_PWD, new LoginRes(SecurityConfig.LOGIN_UPDATE_PWD_URL));
}
return new LoginResDto(ApiResponseCode.SUCCESS, new LoginRes(SecurityConfig.LOGIN_SUCC_URL));
}
@@ -245,6 +251,7 @@ public class LoginService {
authUser.setPwd(EncryptionUtil.getCustomSHA512(resetPasswordReqDto.getUserId(), randomPw));
authUser.setPwdChgDt(Const.COMM_YES);
authUser.setAuthchrFailCnt(0);
authUser.setLoginFailCnt(0);
int reslut = loginMapper.updateAdmUser(authUser);
@@ -296,6 +303,7 @@ public class LoginService {
authUser.setPwd(newPw);
authUser.setPwdChgDt(Const.COMM_YES);
authUser.setAuthchrFailCnt(0);
authUser.setTmpPwdYn(Const.COMM_NO);
int reslut = loginMapper.updateAdmUser(authUser);

View File

@@ -22,7 +22,6 @@ import org.springframework.web.multipart.MultipartHttpServletRequest;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
@Service
public class SendNumMgtService {
@@ -161,17 +160,33 @@ public class SendNumMgtService {
String regId = userDetails.getUsername();
// 2. 중복 발신번호 체크를 위한 조회.
List<InsertNumber> sendNumbers = sendNumMgtMapper.selectSndrnoList(insertNumberReqDto);
List<InsertNumber> dbSendNumbers = insertNumberReqDto.getList();
List<InsertNumber> dbSendNumbers = sendNumMgtMapper.selectSndrnoList(insertNumberReqDto);
List<InsertNumber> sendNumbers = insertNumberReqDto.getList();
List<InsertNumber> allSendNumbers = insertNumberReqDto.getList();
// 실패 항목 응답.
if(sendNumbers.size() > 0){
allSendNumbers.addAll(sendNumbers);
List<InsertNumber> duplicateSendNumList = new ArrayList<>();
for (int i=0; i<dbSendNumbers.size(); i++){
for (int j=0; j<sendNumbers.size(); j++){
String dbSendNum = dbSendNumbers.get(i).getSendNum();
String getSendNum = sendNumbers.get(j).getSendNum();
if(StringUtils.equals(dbSendNum, getSendNum)){
// sendNumbers.remove(j);
allSendNumbers.remove(j);
InsertNumber insertNumber = new InsertNumber();
insertNumber.setSendNum(getSendNum);
duplicateSendNumList.add(insertNumber);
}
}
}
dbSendNumbers = allSendNumbers.stream().distinct().collect(Collectors.toList());
if(allSendNumbers.size() == 0){
InsertNumberRes insertNumberRes = new InsertNumberRes();
if(duplicateSendNumList.size() > 0){
// 발신번호 중복건 응답 처리.
insertNumberRes.setList(duplicateSendNumList);
}
return new InsertNumberResDto(ApiResponseCode.CE_SENDMGT_DUPLICATE_SENDNUM, insertNumberRes);
}
// 1. 발신번호 SEQ 채번
String regReqNo = sendNumMgtMapper.selectRegReqNo();
@@ -193,18 +208,20 @@ public class SendNumMgtService {
dir.mkdirs();
}
for (InsertNumber dbInsertNumber : dbSendNumbers){
dbInsertNumber.setCustSeq(insertNumberReqDto.getCustSeq());
dbInsertNumber.setRegReqNo(regReqNo);
dbInsertNumber.setNmineeDivCd(insertNumberReqDto.getNmineeDivCd());
dbInsertNumber.setInchDivCd(Const.INCH_DIV_CD_ADM);
if(StringUtils.equals(Const.COMM_YES, insertNumberReqDto.getBizrAuthYn())){
dbInsertNumber.setNmineeDivCd(Const.NMINEE_DIV_CD);
}else{
for (InsertNumber dbInsertNumber : allSendNumbers){
if(StringUtils.isNotBlank(dbInsertNumber.getSendNum())){
dbInsertNumber.setCustSeq(insertNumberReqDto.getCustSeq());
dbInsertNumber.setRegReqNo(regReqNo);
dbInsertNumber.setNmineeDivCd(insertNumberReqDto.getNmineeDivCd());
dbInsertNumber.setInchDivCd(Const.INCH_DIV_CD_ADM);
if(StringUtils.equals(Const.COMM_YES, insertNumberReqDto.getBizrAuthYn())){
dbInsertNumber.setNmineeDivCd(Const.NMINEE_DIV_CD);
}else{
dbInsertNumber.setNmineeDivCd(insertNumberReqDto.getNmineeDivCd());
}
dbInsertNumber.setRegId(regId);
sendNumMgtMapper.insertNumberList(dbInsertNumber);
}
dbInsertNumber.setRegId(regId);
sendNumMgtMapper.insertNumberList(dbInsertNumber);
}
// 사업자 인증이 안된 경우 파일업로드...
@@ -280,9 +297,9 @@ public class SendNumMgtService {
}
InsertNumberRes insertNumberRes = new InsertNumberRes();
if(sendNumbers.size() > 0){
// 발신번호 중복건 응답 처리.
insertNumberRes.setList(sendNumbers);
if(duplicateSendNumList.size() > 0){
// 발신번호 중복건 응답 처리.
insertNumberRes.setList(duplicateSendNumList);
}
return new InsertNumberResDto(ApiResponseCode.SUCCESS, insertNumberRes);

View File

@@ -19,7 +19,7 @@ public class InsertNumberReqDto implements Serializable{
private String custNm;
@ApiModelProperty(example = "사업자번호", name = "사업자번호", dataType = "String")
private String bRegNo;
private String bregno;
@ApiModelProperty(example = "사업자인증여부", name = "사업자인증여부", dataType = "String")
private String bizrAuthYn;

View File

@@ -19,6 +19,8 @@ public enum ApiResponseCode {
,CM_DB_QUERY_ERR("1009", "데이터를 처리하는 동안 오류가 발생했습니다.")
// 어드민.
/** 비밀번호 변경. */
,LOGIN_UPDATE_PWD("1001", "비밀번호 변경")
/** 인증토큰 만료. */
,CE_AUTH_TOKEN_EXPIRE("4001", "인증토큰 만료")
/** Refresh 토큰 만료. */
@@ -59,6 +61,8 @@ public enum ApiResponseCode {
,CE_SENDINGLIMT_ERROR("4019", "발송한도금액이 정액한도금액보다 작습니다.")
/** 해당 권한코드에 해당하는 어드민 사용자가 존재함. */
,CE_SYSMGT_AUTHCODE_EXISTS_USER("4020", "해당 권한코드에 해당하는 어드민 사용자가 존재함.")
/** 이미 등록된 발신번호로 저장 불가. */
,CE_SENDMGT_DUPLICATE_SENDNUM("4021", "이미 등록된 발신번호로 저장 불가.")
// 시스템
/** 알 수 없는 에러. */
,SE_UNKNOWN("9999", "알 수 없는 에러");

View File

@@ -72,7 +72,9 @@ public class Const {
public static final String USER_AUTCD_USR = "H001";
/** 사용자 권한 (H003 비로그인).*/
public static final String USER_AUTCD_NO_LOGIN = "H003";
/** 사용자 권한 (H004 테스트ID).*/
public static final String USER_AUTCD_TESTER = "H004";
// 가입 상태 코드(01:대기, 02:정상, 03:일시정지, 04:미납정지, 98:취소, 99:해지)
/** 가입 상태 코드(01:대기) */
public static final String SUBS_STTUS_CD_WAIT = "01";
@@ -110,4 +112,13 @@ public class Const {
public static final String SNDRNO_STTUS_CD_APPR = "01";
public static final String SNDRNO_STTUS_CD_COMPLETED = "02";
public static final String SNDRNO_STTUS_CD_REJECT = "03";
/** 한도초기화 하기 위한 주문 유형 코드 (01:발송차감, 02:차감결과처리, 03:한도초기화, 04:이월금소멸) */
public static final String ORDER_TYPE_CD_03 = "03";
/** 한도 차감 상세 - 한도유형 코드(01:정액, 02:종량) */
public static final String LMTDCT_DTL_TYPE_CD_01 = "01";
/** 한도 차감 상세 - 차감 유형 코드 (01:차감, 02:소멸, 03:복원, 04:충전) */
public static final String LMTDCT_DTL_DDCT_TYPE_CD_04 = "04";
}

View File

@@ -34,6 +34,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter {
public static final String LOGIN_API_URL = "/api/v1/bo/login";
public static final String LOGIN_FAIL_URL = "/login?error=true";
public static final String LOGIN_SUCC_URL = "/";
public static final String LOGIN_UPDATE_PWD_URL = "/view/login/updatePassword";
private static final String API_URL = "/api/**";
public static final String TEST_PERMIT_URL = "/api/**/**";
public static final String PUBLIC_API_URL = "/api/v1/bo/**"; // 내부에서 인증없이 호출하는 API

View File

@@ -35,7 +35,7 @@ schedule:
# 2차인증 제외 ID목록.
authentication:
without:
id: superadminuser,jambler01,jambler02,jambler03,jambler04,jambler05,jambler06
id: superadminuser,hacktestadmin,jambler01,jambler02,jambler03,jambler04,jambler05,jambler06
mail:
from: msghubez@lguplus.co.kr

View File

@@ -35,7 +35,7 @@ schedule:
# 2차인증 제외 ID목록.
authentication:
without:
id: superadminuser,jambler01,jambler02,jambler03,jambler04,jambler05,jambler06
id: superadminuser,hacktestadmin,jambler01,jambler02,jambler03,jambler04,jambler05,jambler06
mail:
from: msghubez@lguplus.co.kr

View File

@@ -3,516 +3,471 @@
<mapper namespace="kr.co.uplus.ez.api.attractMgt.AttractMgtMapper">
<select id="selectAttractListTotalCnt" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelListReqDto" resultType="int">
<select id="selectAttractListTotalCnt" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelListReqDto"
resultType="int">
/* attractMgt-mapper.xml(selectAttractListTotalCnt) */
SELECT
COUNT(*) AS totalCnt
COUNT(*) AS totalCnt
FROM
hubez_common.EZ_SUBS_INFO esi
INNER JOIN hubez_common.EZ_CUST_INFO eci
ON eci.CUST_SEQ = esi.CUST_SEQ
INNER JOIN hubez_common.EZ_SVC_USER esu
ON esu.USER_SEQ = esi.USER_SEQ
INNER JOIN hubez_imdb.EZ_IM_USER eiu
ON eiu.LOGIN_ID = esi.ATTRCTOR_ID
INNER JOIN hubez_imdb.EZ_IM_GROUP eig
ON eiu.EX_DEPT_CD = eig.NORG_CD
hubez_common.EZ_SUBS_INFO esi
INNER JOIN hubez_common.EZ_CUST_INFO eci
ON eci.CUST_SEQ = esi.CUST_SEQ
INNER JOIN hubez_common.EZ_SVC_USER esu
ON esu.USER_SEQ = esi.USER_SEQ
INNER JOIN hubez_imdb.EZ_IM_USER eiu
ON eiu.LOGIN_ID = esi.ATTRCTOR_ID
INNER JOIN hubez_imdb.EZ_IM_GROUP eig
ON eiu.EX_DEPT_CD = eig.NORG_CD
WHERE 1 = 1
<include refid="attractListCondition"/>
</select>
<select id="selectAttractList" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelListReqDto" resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelInfo">
<select id="selectAttractList" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelListReqDto"
resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelInfo">
/* attractMgt-mapper.xml(selectAttractList) */
SELECT
@ROWNUM := @ROWNUM + 1 AS NO
, A.SUBS_DT
, A.NORG_NM
, A.USER_SEQ
, A.LOGIN_ID
, A.CUST_NM
, A.BIZRNO
, A.USER_NM
, A.SUBS_STTUS_CD
, (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'SUBS_STTUS_CD' AND DTL_CD = A.SUBS_STTUS_CD) as SUBS_STTUS_NM
, A.CUST_TY_CD
, (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'CUST_KD_CD' AND DTL_CD = A.CUST_TY_CD) as CUST_TY_NM
, (
SELECT
sum(IFNULL(ecm.SND_CNT,0) + IFNULL(ecm.FBACK_CNT,0))
FROM
hubez_common.EZ_CUST_MSTAT ecm
WHERE
ecm.USER_SEQ = A.USER_SEQ
AND ecm.SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
) AS SND_CNT
FROM
(
SELECT
DATE_FORMAT(esi.SUBS_DT , '%Y-%m-%d') AS SUBS_DT
, eig.NORG_NM
, esi.USER_SEQ
, eiu.LOGIN_ID
, eci.CUST_NM
, eci.BIZRNO
, esu.USER_NM
, esi.SUBS_STTUS_CD
, eci.CUST_TY_CD
FROM
hubez_common.EZ_SUBS_INFO esi
INNER JOIN hubez_common.EZ_CUST_INFO eci
ON eci.CUST_SEQ = esi.CUST_SEQ
INNER JOIN hubez_common.EZ_SVC_USER esu
ON esu.USER_SEQ = esi.USER_SEQ
INNER JOIN hubez_imdb.EZ_IM_USER eiu
ON eiu.LOGIN_ID = esi.ATTRCTOR_ID
INNER JOIN hubez_imdb.EZ_IM_GROUP eig
ON eiu.EX_DEPT_CD = eig.NORG_CD
WHERE 1 = 1
<include refid="attractListCondition"/>
ORDER BY esi.SUBS_DT DESC
LIMIT #{page}, #{pagePerRows}
) A , ( SELECT @ROWNUM := #{page} ) AS R
@ROWNUM := @ROWNUM + 1 AS NO
, A.SUBS_DT
, A.NORG_NM
, A.USER_SEQ
, A.LOGIN_ID
, A.CUST_NM
, A.BIZRNO
, A.USER_NM
, A.SUBS_STTUS_CD
, (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'SUBS_STTUS_CD' AND DTL_CD = A.SUBS_STTUS_CD) as
SUBS_STTUS_NM
, A.CUST_TY_CD
, (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'CUST_KD_CD' AND DTL_CD = A.CUST_TY_CD) as
CUST_TY_NM
, (
SELECT
sum(IFNULL(ecm.SND_CNT,0) + IFNULL(ecm.FBACK_CNT,0))
FROM
hubez_common.EZ_CUST_MSTAT ecm
WHERE
ecm.USER_SEQ = A.USER_SEQ
AND ecm.SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
) AS SND_CNT
FROM
(
SELECT
DATE_FORMAT(esi.SUBS_DT , '%Y-%m-%d') AS SUBS_DT
, eig.NORG_NM
, esi.USER_SEQ
, eiu.LOGIN_ID
, eci.CUST_NM
, eci.BIZRNO
, esu.USER_NM
, esi.SUBS_STTUS_CD
, eci.CUST_TY_CD
FROM
hubez_common.EZ_SUBS_INFO esi
INNER JOIN hubez_common.EZ_CUST_INFO eci
ON eci.CUST_SEQ = esi.CUST_SEQ
INNER JOIN hubez_common.EZ_SVC_USER esu
ON esu.USER_SEQ = esi.USER_SEQ
INNER JOIN hubez_imdb.EZ_IM_USER eiu
ON eiu.LOGIN_ID = esi.ATTRCTOR_ID
INNER JOIN hubez_imdb.EZ_IM_GROUP eig
ON eiu.EX_DEPT_CD = eig.NORG_CD
WHERE 1 = 1
<include refid="attractListCondition"/>
ORDER BY esi.SUBS_DT DESC
LIMIT #{page}, #{pagePerRows}
) A , ( SELECT @ROWNUM := #{page} ) AS R
</select>
<select id="selectAttractExcelList" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelListExcelReqDto" resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelInfo">
<select id="selectAttractExcelList" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelListExcelReqDto"
resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelInfo">
/* attractMgt-mapper.xml(selectAttractExcelList) */
SELECT
@ROWNUM := @ROWNUM + 1 AS NO
, A.SUBS_DT
, A.NORG_NM
, A.USER_SEQ
, A.LOGIN_ID
, A.CUST_NM
, A.BIZRNO
, A.USER_NM
, (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'SUBS_STTUS_CD' AND DTL_CD = A.SUBS_STTUS_CD) as SUBS_STTUS_NM
, (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'CUST_KD_CD' AND DTL_CD = A.CUST_TY_CD) as CUST_TY_NM
, (
SELECT
sum(IFNULL(ecm.SND_CNT,0) + IFNULL(ecm.FBACK_CNT,0))
FROM
hubez_common.EZ_CUST_MSTAT ecm
WHERE
ecm.USER_SEQ = A.USER_SEQ
AND ecm.SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
) AS SND_CNT
FROM
(
SELECT
DATE_FORMAT(esi.SUBS_DT , '%Y-%m-%d') AS SUBS_DT
, eig.NORG_NM
, esi.USER_SEQ
, eiu.LOGIN_ID
, eci.CUST_NM
, eci.BIZRNO
, esu.USER_NM
, esi.SUBS_STTUS_CD
, eci.CUST_TY_CD
FROM
hubez_common.EZ_SUBS_INFO esi
INNER JOIN hubez_common.EZ_CUST_INFO eci
ON eci.CUST_SEQ = esi.CUST_SEQ
INNER JOIN hubez_common.EZ_SVC_USER esu
ON esu.USER_SEQ = esi.USER_SEQ
INNER JOIN hubez_imdb.EZ_IM_USER eiu
ON eiu.LOGIN_ID = esi.ATTRCTOR_ID
INNER JOIN hubez_imdb.EZ_IM_GROUP eig
ON eiu.EX_DEPT_CD = eig.NORG_CD
WHERE 1 = 1
<include refid="attractListCondition"/>
ORDER BY esi.SUBS_DT DESC) A ,
( SELECT @ROWNUM := 0 ) AS R
@ROWNUM := @ROWNUM + 1 AS NO
, A.SUBS_DT
, A.NORG_NM
, A.USER_SEQ
, A.LOGIN_ID
, A.CUST_NM
, A.BIZRNO
, A.USER_NM
, (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'SUBS_STTUS_CD' AND DTL_CD = A.SUBS_STTUS_CD) as
SUBS_STTUS_NM
, (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'CUST_KD_CD' AND DTL_CD = A.CUST_TY_CD) as
CUST_TY_NM
, (
SELECT
sum(IFNULL(ecm.SND_CNT,0) + IFNULL(ecm.FBACK_CNT,0))
FROM
hubez_common.EZ_CUST_MSTAT ecm
WHERE
ecm.USER_SEQ = A.USER_SEQ
AND ecm.SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
) AS SND_CNT
FROM
(
SELECT
DATE_FORMAT(esi.SUBS_DT , '%Y-%m-%d') AS SUBS_DT
, eig.NORG_NM
, esi.USER_SEQ
, eiu.LOGIN_ID
, eci.CUST_NM
, eci.BIZRNO
, esu.USER_NM
, esi.SUBS_STTUS_CD
, eci.CUST_TY_CD
FROM
hubez_common.EZ_SUBS_INFO esi
INNER JOIN hubez_common.EZ_CUST_INFO eci
ON eci.CUST_SEQ = esi.CUST_SEQ
INNER JOIN hubez_common.EZ_SVC_USER esu
ON esu.USER_SEQ = esi.USER_SEQ
INNER JOIN hubez_imdb.EZ_IM_USER eiu
ON eiu.LOGIN_ID = esi.ATTRCTOR_ID
INNER JOIN hubez_imdb.EZ_IM_GROUP eig
ON eiu.EX_DEPT_CD = eig.NORG_CD
WHERE 1 = 1
<include refid="attractListCondition"/>
ORDER BY esi.SUBS_DT DESC) A ,
( SELECT @ROWNUM := 0 ) AS R
</select>
<sql id="attractListCondition">
<if test="subsStDt != null and subsStDt != '' and subsEdDt != null and subsEdDt != ''">
AND esi.SUBS_DT >= #{subsStDt} AND esi.SUBS_DT <![CDATA[ < ]]> DATE_ADD(#{subsEdDt}, interval 1 day)
AND esi.SUBS_DT >= #{subsStDt} AND esi.SUBS_DT <![CDATA[ < ]]> DATE_ADD(#{subsEdDt}, interval 1 day)
</if>
<if test="subsSttusCd != null and subsSttusCd != ''">
AND esi.SUBS_STTUS_CD = #{subsSttusCd}
AND esi.SUBS_STTUS_CD = #{subsSttusCd}
</if>
<if test="custTyCd != null and custTyCd != ''">
AND eci.CUST_TY_CD = #{custTyCd}
AND eci.CUST_TY_CD = #{custTyCd}
</if>
<if test="loginId != null and loginId != ''">
AND eiu.LOGIN_ID = #{loginId}
AND eiu.LOGIN_ID LIKE CONCAT('%', #{loginId}, '%')
</if>
<if test="norgNm != null and norgNm != ''">
AND eig.NORG_NM = #{norgNm}
AND eig.NORG_NM LIKE CONCAT('%', #{norgNm}, '%')
</if>
<if test="searchType != null and searchType != ''">
<if test="searchType == '01' and searchText != null and searchText != ''">
AND eci.CUST_NM LIKE CONCAT('%', #{searchText}, '%')
AND eci.CUST_NM LIKE CONCAT('%', #{searchText}, '%')
</if>
<if test="searchType == '02' and searchText != null and searchText != ''">
AND esu.USER_NM LIKE CONCAT('%', #{searchText}, '%')
AND esu.USER_NM LIKE CONCAT('%', #{searchText}, '%')
</if>
<if test="searchType == '03' and searchText != null and searchText != ''">
AND eci.BIZRNO LIKE CONCAT('%', #{searchText}, '%')
</if>
</if>
<if test="attrctorId != null and attrctorId != ''">
and esi.ATTRCTOR_ID LIKE CONCAT('%', #{attrctorId}, '%')
</if>
<if test="attrctorId != null and attrctorId != ''">
and esi.ATTRCTOR_ID LIKE CONCAT('%', #{attrctorId}, '%')
</if>
</sql>
<select id="selectAttractDetail" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailReqDto" resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailRes">
<select id="selectAttractDetail" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailReqDto"
resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailRes">
/* attractMgt-mapper.xml(selectAttractDetail) */
SELECT
DATE_FORMAT(esi.SUBS_DT, '%Y-%m-%d') AS SUBS_DT
SELECT DATE_FORMAT(esi.SUBS_DT, '%Y-%m-%d') AS SUBS_DT
, esi.SUBS_STTUS_CD
,(SELECT
T2.DTL_CD_NM AS codeNm
FROM hubez_common.EZ_CD_GRP T1
LEFT JOIN hubez_common.EZ_CD_DTL T2
ON T1.GRP_CD = T2.GRP_CD
WHERE T1.GRP_CD = 'SUBS_STTUS_CD'
AND T2.DTL_CD = esi.SUBS_STTUS_CD) AS SUBS_STTUS_NM
, (SELECT T2.DTL_CD_NM AS codeNm
FROM hubez_common.EZ_CD_GRP T1
LEFT JOIN hubez_common.EZ_CD_DTL T2
ON T1.GRP_CD = T2.GRP_CD
WHERE T1.GRP_CD = 'SUBS_STTUS_CD'
AND T2.DTL_CD = esi.SUBS_STTUS_CD) AS SUBS_STTUS_NM
, eci.CUST_NM
, esi.PROD_CD
, eci.REPR_NM
, eci.CUST_TY_CD
,(SELECT
T2.DTL_CD_NM AS codeNm
FROM hubez_common.EZ_CD_GRP T1
LEFT JOIN hubez_common.EZ_CD_DTL T2
ON T1.GRP_CD = T2.GRP_CD
WHERE T1.GRP_CD = 'CUST_KD_CD'
AND T2.DTL_CD = eci.CUST_TY_CD) AS CUST_TY_NM
, (SELECT T2.DTL_CD_NM AS codeNm
FROM hubez_common.EZ_CD_GRP T1
LEFT JOIN hubez_common.EZ_CD_DTL T2
ON T1.GRP_CD = T2.GRP_CD
WHERE T1.GRP_CD = 'CUST_KD_CD'
AND T2.DTL_CD = eci.CUST_TY_CD) AS CUST_TY_NM
, eci.BIZRNO
, eci.CORPNO AS CPR_REG_NO
, eci.ZIPCD AS ADR1
, eci.ADDR1 AS ADR2
, eci.ADDR2 AS ADR3
, esi.ATTRCTOR_ID AS CHANNEL_ID
, esi.ATTRCTOR_NM AS CHANNEL_NM
, esi.SUBSMNGR_ID AS ADMIN_ID
, esi.SUBSMNGR_NM AS ADMIN_NM
, eci.CORPNO AS CPR_REG_NO
, eci.ZIPCD AS ADR1
, eci.ADDR1 AS ADR2
, eci.ADDR2 AS ADR3
, esi.ATTRCTOR_ID AS CHANNEL_ID
, esi.ATTRCTOR_NM AS CHANNEL_NM
, esi.SUBSMNGR_ID AS ADMIN_ID
, esi.SUBSMNGR_NM AS ADMIN_NM
, esu.USER_ID
,(
SELECT
PROD_NM
FROM
hubez_common.EZ_PROD_INFO
WHERE
PROD_CD = esi.PROD_CD) AS PLAN
FROM
hubez_common.EZ_SUBS_INFO esi
INNER JOIN hubez_common.EZ_CUST_INFO eci
ON eci.CUST_SEQ = esi.CUST_SEQ
INNER JOIN hubez_common.EZ_SVC_USER esu
ON esu.USER_SEQ = esi.USER_SEQ
INNER JOIN hubez_imdb.EZ_IM_USER eiu
ON eiu.LOGIN_ID = esi.ATTRCTOR_ID
INNER JOIN hubez_imdb.EZ_IM_GROUP eig
ON eiu.EX_DEPT_CD = eig.NORG_CD
, (
SELECT PROD_NM
FROM hubez_common.EZ_PROD_INFO
WHERE PROD_CD = esi.PROD_CD) AS PLAN
FROM hubez_common.EZ_SUBS_INFO esi
INNER JOIN hubez_common.EZ_CUST_INFO eci
ON eci.CUST_SEQ = esi.CUST_SEQ
INNER JOIN hubez_common.EZ_SVC_USER esu
ON esu.USER_SEQ = esi.USER_SEQ
INNER JOIN hubez_imdb.EZ_IM_USER eiu
ON eiu.LOGIN_ID = esi.ATTRCTOR_ID
INNER JOIN hubez_imdb.EZ_IM_GROUP eig
ON eiu.EX_DEPT_CD = eig.NORG_CD
WHERE 1 = 1
AND esu.USER_SEQ = #{userSeq}
</select>
<select id="selectSndCountList" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailReqDto" resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetail">
SELECT
DATE_FORMAT(ecm.SUM_YM, '%Y-%m') AS sumYm
, ecm.SND_CNT
, ecm.SUCC_CNT
, S.SND_CNT AS SND_CNT_S
, S.SUCC_CNT AS SUCC_CNT_S
, L.SND_CNT AS SND_CNT_L
, L.SUCC_CNT AS SUCC_CNT_L
, M.SND_CNT AS SND_CNT_M
, M.SUCC_CNT AS SUCC_CNT_M
, A.SND_CNT AS SND_CNT_A
, A.SUCC_CNT AS SUCC_CNT_A
FROM
(
SELECT
SUM_YM
,USER_SEQ
,SUM(IFNULL(SND_CNT,0) + IFNULL(FBACK_CNT,0)) AS SND_CNT
,SUM(IFNULL(SUCC_CNT,0) + IFNULL(FBACK_SUCC_CNT,0)) AS SUCC_CNT
FROM
hubez_common.EZ_CUST_MSTAT
WHERE 1=1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ
) ecm,
(
SELECT
S1.SUM_YM
,S1.USER_SEQ
,SUM(IFNULL(S1.SND_CNT,0) + IFNULL(S2.FBACK_CNT,0)) AS SND_CNT
,SUM(IFNULL(S1.SUCC_CNT,0) + IFNULL(S2.FBACK_SUCC_CNT,0)) AS SUCC_CNT
FROM
(SELECT
SUM_YM
,USER_SEQ
,SUM(SND_CNT) AS SND_CNT
,SUM(SUCC_CNT) AS SUCC_CNT
FROM
hubez_common.EZ_CUST_MSTAT
WHERE 1=1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'SMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S1
LEFT OUTER JOIN
(SELECT
SUM_YM
,USER_SEQ
,SUM(FBACK_CNT) AS FBACK_CNT
,SUM(FBACK_SUCC_CNT) AS FBACK_SUCC_CNT
FROM
hubez_common.EZ_CUST_MSTAT
WHERE 1=1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'ALIMTALK'
AND RPLCSND_CH_CD = 'SMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S2
ON S1.SUM_YM = S2.SUM_YM
AND S1.USER_SEQ = S2.USER_SEQ
GROUP BY S1.SUM_YM, S1.USER_SEQ ) S,
(
SELECT
S1.SUM_YM
,S1.USER_SEQ
,SUM(IFNULL(S1.SND_CNT,0) + IFNULL(S2.FBACK_CNT,0)) AS SND_CNT
,SUM(IFNULL(S1.SUCC_CNT,0) + IFNULL(S2.FBACK_SUCC_CNT,0)) AS SUCC_CNT
FROM
(SELECT
SUM_YM
,USER_SEQ
,SUM(SND_CNT) AS SND_CNT
,SUM(SUCC_CNT) AS SUCC_CNT
FROM
hubez_common.EZ_CUST_MSTAT
WHERE 1=1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'LMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S1
LEFT OUTER JOIN
(SELECT
SUM_YM
,USER_SEQ
,SUM(FBACK_CNT) AS FBACK_CNT
,SUM(FBACK_SUCC_CNT) AS FBACK_SUCC_CNT
FROM
hubez_common.EZ_CUST_MSTAT
WHERE 1=1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'ALIMTALK'
AND RPLCSND_CH_CD = 'LMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S2
ON S1.SUM_YM = S2.SUM_YM
AND S1.USER_SEQ = S2.USER_SEQ
GROUP BY S1.SUM_YM, S1.USER_SEQ ) AS L,
(
SELECT
S1.SUM_YM
,S1.USER_SEQ
,SUM(IFNULL(S1.SND_CNT,0) + IFNULL(S2.FBACK_CNT,0)) AS SND_CNT
,SUM(IFNULL(S1.SUCC_CNT,0) + IFNULL(S2.FBACK_SUCC_CNT,0)) AS SUCC_CNT
FROM
(SELECT
SUM_YM
,USER_SEQ
,SUM(SND_CNT) AS SND_CNT
,SUM(SUCC_CNT) AS SUCC_CNT
FROM
hubez_common.EZ_CUST_MSTAT
WHERE 1=1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'MMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S1
LEFT OUTER JOIN
(SELECT
SUM_YM
,USER_SEQ
,SUM(FBACK_CNT) AS FBACK_CNT
,SUM(FBACK_SUCC_CNT) AS FBACK_SUCC_CNT
FROM
hubez_common.EZ_CUST_MSTAT
WHERE 1=1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'ALIMTALK'
AND RPLCSND_CH_CD = 'MMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S2
ON S1.SUM_YM = S2.SUM_YM
AND S1.USER_SEQ = S2.USER_SEQ
GROUP BY S1.SUM_YM, S1.USER_SEQ ) AS M,
(
SELECT
SUM_YM
,USER_SEQ
,SUM(SND_CNT) AS SND_CNT
,SUM(SUCC_CNT) AS SUCC_CNT
FROM
hubez_common.EZ_CUST_MSTAT
WHERE 1=1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'ALIMTALK'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ ) AS A
WHERE 1=1
AND ecm.SUM_YM = S.SUM_YM
AND ecm.SUM_YM = L.SUM_YM
AND ecm.SUM_YM = M.SUM_YM
AND ecm.SUM_YM = A.SUM_YM
AND ecm.USER_SEQ = S.USER_SEQ
AND ecm.USER_SEQ = L.USER_SEQ
AND ecm.USER_SEQ = M.USER_SEQ
AND ecm.USER_SEQ = A.USER_SEQ
ORDER BY ecm.SUM_YM DESC
<select id="selectSndCountList" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailReqDto"
resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetail">
SELECT DATE_FORMAT(ecm.SUM_YM, '%Y-%m') AS sumYm
, ecm.SND_CNT
, ecm.SUCC_CNT
, S.SND_CNT AS SND_CNT_S
, S.SUCC_CNT AS SUCC_CNT_S
, L.SND_CNT AS SND_CNT_L
, L.SUCC_CNT AS SUCC_CNT_L
, M.SND_CNT AS SND_CNT_M
, M.SUCC_CNT AS SUCC_CNT_M
, A.SND_CNT AS SND_CNT_A
, A.SUCC_CNT AS SUCC_CNT_A
FROM (
SELECT SUM_YM
, USER_SEQ
, SUM(IFNULL(SND_CNT, 0) + IFNULL(FBACK_CNT, 0)) AS SND_CNT
, SUM(IFNULL(SUCC_CNT, 0) + IFNULL(FBACK_SUCC_CNT, 0)) AS SUCC_CNT
FROM hubez_common.EZ_CUST_MSTAT
WHERE 1 = 1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ
) ecm,
(
SELECT S1.SUM_YM
, S1.USER_SEQ
, SUM(IFNULL(S1.SND_CNT, 0) + IFNULL(S2.FBACK_CNT, 0)) AS SND_CNT
, SUM(IFNULL(S1.SUCC_CNT, 0) + IFNULL(S2.FBACK_SUCC_CNT, 0)) AS SUCC_CNT
FROM (SELECT SUM_YM
, USER_SEQ
, SUM(SND_CNT) AS SND_CNT
, SUM(SUCC_CNT) AS SUCC_CNT
FROM hubez_common.EZ_CUST_MSTAT
WHERE 1 = 1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'SMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S1
LEFT OUTER JOIN
(SELECT SUM_YM
, USER_SEQ
, SUM(FBACK_CNT) AS FBACK_CNT
, SUM(FBACK_SUCC_CNT) AS FBACK_SUCC_CNT
FROM hubez_common.EZ_CUST_MSTAT
WHERE 1 = 1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'ALIMTALK'
AND RPLCSND_CH_CD = 'SMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S2
ON S1.SUM_YM = S2.SUM_YM
AND S1.USER_SEQ = S2.USER_SEQ
GROUP BY S1.SUM_YM, S1.USER_SEQ) S,
(
SELECT S1.SUM_YM
, S1.USER_SEQ
, SUM(IFNULL(S1.SND_CNT, 0) + IFNULL(S2.FBACK_CNT, 0)) AS SND_CNT
, SUM(IFNULL(S1.SUCC_CNT, 0) + IFNULL(S2.FBACK_SUCC_CNT, 0)) AS SUCC_CNT
FROM (SELECT SUM_YM
, USER_SEQ
, SUM(SND_CNT) AS SND_CNT
, SUM(SUCC_CNT) AS SUCC_CNT
FROM hubez_common.EZ_CUST_MSTAT
WHERE 1 = 1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'LMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S1
LEFT OUTER JOIN
(SELECT SUM_YM
, USER_SEQ
, SUM(FBACK_CNT) AS FBACK_CNT
, SUM(FBACK_SUCC_CNT) AS FBACK_SUCC_CNT
FROM hubez_common.EZ_CUST_MSTAT
WHERE 1 = 1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'ALIMTALK'
AND RPLCSND_CH_CD = 'LMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S2
ON S1.SUM_YM = S2.SUM_YM
AND S1.USER_SEQ = S2.USER_SEQ
GROUP BY S1.SUM_YM, S1.USER_SEQ) AS L,
(
SELECT S1.SUM_YM
, S1.USER_SEQ
, SUM(IFNULL(S1.SND_CNT, 0) + IFNULL(S2.FBACK_CNT, 0)) AS SND_CNT
, SUM(IFNULL(S1.SUCC_CNT, 0) + IFNULL(S2.FBACK_SUCC_CNT, 0)) AS SUCC_CNT
FROM (SELECT SUM_YM
, USER_SEQ
, SUM(SND_CNT) AS SND_CNT
, SUM(SUCC_CNT) AS SUCC_CNT
FROM hubez_common.EZ_CUST_MSTAT
WHERE 1 = 1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'MMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S1
LEFT OUTER JOIN
(SELECT SUM_YM
, USER_SEQ
, SUM(FBACK_CNT) AS FBACK_CNT
, SUM(FBACK_SUCC_CNT) AS FBACK_SUCC_CNT
FROM hubez_common.EZ_CUST_MSTAT
WHERE 1 = 1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'ALIMTALK'
AND RPLCSND_CH_CD = 'MMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S2
ON S1.SUM_YM = S2.SUM_YM
AND S1.USER_SEQ = S2.USER_SEQ
GROUP BY S1.SUM_YM, S1.USER_SEQ) AS M,
(
SELECT SUM_YM
, USER_SEQ
, SUM(SND_CNT) AS SND_CNT
, SUM(SUCC_CNT) AS SUCC_CNT
FROM hubez_common.EZ_CUST_MSTAT
WHERE 1 = 1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'ALIMTALK'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) AS A
WHERE 1 = 1
AND ecm.SUM_YM = S.SUM_YM
AND ecm.SUM_YM = L.SUM_YM
AND ecm.SUM_YM = M.SUM_YM
AND ecm.SUM_YM = A.SUM_YM
AND ecm.USER_SEQ = S.USER_SEQ
AND ecm.USER_SEQ = L.USER_SEQ
AND ecm.USER_SEQ = M.USER_SEQ
AND ecm.USER_SEQ = A.USER_SEQ
ORDER BY ecm.SUM_YM DESC
</select>
<select id="sendNumberListExcel" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailReqDto" resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetail">
SELECT
DATE_FORMAT(ecm.SUM_YM, '%Y-%m') AS SUM_YM
, ecm.SND_CNT
, S.SND_CNT AS SND_CNT_S
, L.SND_CNT AS SND_CNT_L
, M.SND_CNT AS SND_CNT_M
, A.SND_CNT AS SND_CNT_A
FROM
(
SELECT
SUM_YM
,USER_SEQ
,SUM(IFNULL(SND_CNT,0) + IFNULL(FBACK_CNT,0)) AS SND_CNT
FROM
hubez_common.EZ_CUST_MSTAT
WHERE 1=1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ
) ecm,
(
SELECT
S1.SUM_YM
,S1.USER_SEQ
,SUM(IFNULL(S1.SND_CNT,0) + IFNULL(S2.FBACK_CNT,0)) AS SND_CNT
FROM
(SELECT
SUM_YM
,USER_SEQ
,SUM(SND_CNT) AS SND_CNT
FROM
hubez_common.EZ_CUST_MSTAT
WHERE 1=1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'SMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S1
LEFT OUTER JOIN
(SELECT
SUM_YM
,USER_SEQ
,SUM(FBACK_CNT) AS FBACK_CNT
FROM
hubez_common.EZ_CUST_MSTAT
WHERE 1=1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'ALIMTALK'
AND RPLCSND_CH_CD = 'SMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S2
ON S1.SUM_YM = S2.SUM_YM
AND S1.USER_SEQ = S2.USER_SEQ
GROUP BY S1.SUM_YM, S1.USER_SEQ ) S,
(
SELECT
S1.SUM_YM
,S1.USER_SEQ
,SUM(IFNULL(S1.SND_CNT,0) + IFNULL(S2.FBACK_CNT,0)) AS SND_CNT
FROM
(SELECT
SUM_YM
,USER_SEQ
,SUM(SND_CNT) AS SND_CNT
FROM
hubez_common.EZ_CUST_MSTAT
WHERE 1=1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'LMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S1
LEFT OUTER JOIN
(SELECT
SUM_YM
,USER_SEQ
,SUM(FBACK_CNT) AS FBACK_CNT
FROM
hubez_common.EZ_CUST_MSTAT
WHERE 1=1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'ALIMTALK'
AND RPLCSND_CH_CD = 'LMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S2
ON S1.SUM_YM = S2.SUM_YM
AND S1.USER_SEQ = S2.USER_SEQ
GROUP BY S1.SUM_YM, S1.USER_SEQ ) AS L,
(
SELECT
S1.SUM_YM
,S1.USER_SEQ
,SUM(IFNULL(S1.SND_CNT,0) + IFNULL(S2.FBACK_CNT,0)) AS SND_CNT
FROM
(SELECT
SUM_YM
,USER_SEQ
,SUM(SND_CNT) AS SND_CNT
FROM
hubez_common.EZ_CUST_MSTAT
WHERE 1=1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'MMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S1
LEFT OUTER JOIN
(SELECT
SUM_YM
,USER_SEQ
,SUM(FBACK_CNT) AS FBACK_CNT
FROM
hubez_common.EZ_CUST_MSTAT
WHERE 1=1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'ALIMTALK'
AND RPLCSND_CH_CD = 'MMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S2
ON S1.SUM_YM = S2.SUM_YM
AND S1.USER_SEQ = S2.USER_SEQ
GROUP BY S1.SUM_YM, S1.USER_SEQ ) AS M,
(
SELECT
SUM_YM
,USER_SEQ
,SUM(SND_CNT) AS SND_CNT
FROM
hubez_common.EZ_CUST_MSTAT
WHERE 1=1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'ALIMTALK'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ ) AS A
WHERE 1=1
AND ecm.SUM_YM = S.SUM_YM
AND ecm.SUM_YM = L.SUM_YM
AND ecm.SUM_YM = M.SUM_YM
AND ecm.SUM_YM = A.SUM_YM
AND ecm.USER_SEQ = S.USER_SEQ
AND ecm.USER_SEQ = L.USER_SEQ
AND ecm.USER_SEQ = M.USER_SEQ
AND ecm.USER_SEQ = A.USER_SEQ
ORDER BY ecm.SUM_YM DESC
<select id="sendNumberListExcel" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailReqDto"
resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetail">
SELECT DATE_FORMAT(ecm.SUM_YM, '%Y-%m') AS SUM_YM
, ecm.SND_CNT
, S.SND_CNT AS SND_CNT_S
, L.SND_CNT AS SND_CNT_L
, M.SND_CNT AS SND_CNT_M
, A.SND_CNT AS SND_CNT_A
FROM (
SELECT SUM_YM
, USER_SEQ
, SUM(IFNULL(SND_CNT, 0) + IFNULL(FBACK_CNT, 0)) AS SND_CNT
FROM hubez_common.EZ_CUST_MSTAT
WHERE 1 = 1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ
) ecm,
(
SELECT S1.SUM_YM
, S1.USER_SEQ
, SUM(IFNULL(S1.SND_CNT, 0) + IFNULL(S2.FBACK_CNT, 0)) AS SND_CNT
FROM (SELECT SUM_YM
, USER_SEQ
, SUM(SND_CNT) AS SND_CNT
FROM hubez_common.EZ_CUST_MSTAT
WHERE 1 = 1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'SMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S1
LEFT OUTER JOIN
(SELECT SUM_YM
, USER_SEQ
, SUM(FBACK_CNT) AS FBACK_CNT
FROM hubez_common.EZ_CUST_MSTAT
WHERE 1 = 1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'ALIMTALK'
AND RPLCSND_CH_CD = 'SMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S2
ON S1.SUM_YM = S2.SUM_YM
AND S1.USER_SEQ = S2.USER_SEQ
GROUP BY S1.SUM_YM, S1.USER_SEQ) S,
(
SELECT S1.SUM_YM
, S1.USER_SEQ
, SUM(IFNULL(S1.SND_CNT, 0) + IFNULL(S2.FBACK_CNT, 0)) AS SND_CNT
FROM (SELECT SUM_YM
, USER_SEQ
, SUM(SND_CNT) AS SND_CNT
FROM hubez_common.EZ_CUST_MSTAT
WHERE 1 = 1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'LMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S1
LEFT OUTER JOIN
(SELECT SUM_YM
, USER_SEQ
, SUM(FBACK_CNT) AS FBACK_CNT
FROM hubez_common.EZ_CUST_MSTAT
WHERE 1 = 1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'ALIMTALK'
AND RPLCSND_CH_CD = 'LMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S2
ON S1.SUM_YM = S2.SUM_YM
AND S1.USER_SEQ = S2.USER_SEQ
GROUP BY S1.SUM_YM, S1.USER_SEQ) AS L,
(
SELECT S1.SUM_YM
, S1.USER_SEQ
, SUM(IFNULL(S1.SND_CNT, 0) + IFNULL(S2.FBACK_CNT, 0)) AS SND_CNT
FROM (SELECT SUM_YM
, USER_SEQ
, SUM(SND_CNT) AS SND_CNT
FROM hubez_common.EZ_CUST_MSTAT
WHERE 1 = 1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'MMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S1
LEFT OUTER JOIN
(SELECT SUM_YM
, USER_SEQ
, SUM(FBACK_CNT) AS FBACK_CNT
FROM hubez_common.EZ_CUST_MSTAT
WHERE 1 = 1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'ALIMTALK'
AND RPLCSND_CH_CD = 'MMS'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) S2
ON S1.SUM_YM = S2.SUM_YM
AND S1.USER_SEQ = S2.USER_SEQ
GROUP BY S1.SUM_YM, S1.USER_SEQ) AS M,
(
SELECT SUM_YM
, USER_SEQ
, SUM(SND_CNT) AS SND_CNT
FROM hubez_common.EZ_CUST_MSTAT
WHERE 1 = 1
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
AND SND_CH_CD = 'ALIMTALK'
AND USER_SEQ = #{userSeq}
GROUP BY SUM_YM, USER_SEQ) AS A
WHERE 1 = 1
AND ecm.SUM_YM = S.SUM_YM
AND ecm.SUM_YM = L.SUM_YM
AND ecm.SUM_YM = M.SUM_YM
AND ecm.SUM_YM = A.SUM_YM
AND ecm.USER_SEQ = S.USER_SEQ
AND ecm.USER_SEQ = L.USER_SEQ
AND ecm.USER_SEQ = M.USER_SEQ
AND ecm.USER_SEQ = A.USER_SEQ
ORDER BY ecm.SUM_YM DESC
</select>
</mapper>

View File

@@ -61,7 +61,7 @@
and UPPER(eci.CUST_NM) LIKE CONCAT('%' , UPPER(#{searchText1}) , '%')
</when>
<when test='searchType2 == "bizNo"'><!-- 검색조건 - 사업자번호 -->
AND eci.BIZRNO LIKE CONCAT('%', #{searchText}, '%')
AND eci.BIZRNO LIKE CONCAT('%', #{searchText1}, '%')
</when>
<when test='searchType2 == "tmpltNm"'><!-- 검색조건 - 인증코드 -->
and UPPER(eat.TMPLT_NM) LIKE CONCAT('%' , UPPER(#{searchText1}) , '%')

View File

@@ -545,7 +545,7 @@
AND UPPER(esu.USER_NM) LIKE UPPER(CONCAT('%', #{searchText1}, '%'))
</if>
<if test="searchType3 == '03' and searchText1 != null and searchText1 != ''">
AND esu.USER_SEQ = (SELECT PRNTS_USER_SEQ FROM hubez_common.EZ_SVC_USER WHERE USER_ID = #{searchText1} AND USER_TP_CD ='01')
AND esu.USER_SEQ IN (SELECT PRNTS_USER_SEQ FROM hubez_common.EZ_SVC_USER WHERE USER_ID LIKE CONCAT('%', #{searchText1}, '%') AND USER_TP_CD ='01')
</if>
</if>
</sql>
@@ -950,6 +950,147 @@
<select id="getEntrNo" resultType="String">
SELECT CONCAT('TESTENTRN', LPAD(hubez_common.FUN_NEXT_SEQ('TEST_SUBS_SEQ'), 11, 0)) as ENTR_NO
</select>
<!-- 청약 상태 이력 저장 -->
<insert id="insertSbscstHst" parameterType="kr.co.uplus.ez.api.custMgt.dto.SbscstHstDto">
/* custMgt-mapper.xml(insertSbscstHst) */
INSERT INTO hubez_common.EZ_SBSCST_HST(
SUBS_ID
,EFCT_ST_DT
<if test="subsSttusCd != null and subsSttusCd != ''">
,EFCT_FNS_DT
</if>
,PROD_CD
,SUBS_STTUS_CD
,REG_ID
,REG_DT
,CHG_ID
,CHG_DT
)VALUES(
#{subsId}
, #{efctStDt}
<if test="subsSttusCd != null and subsSttusCd != ''">
, STR_TO_DATE('9999-12-31', '%Y-%m-%d')
</if>
, #{prodCd}
, #{subsSttusCd}
, #{regId}
, now()
, #{regId}
, now()
)
</insert>
<!-- 상품 정보 조회 -->
<select id="getProdAmt" parameterType="String" resultType="kr.co.uplus.ez.api.custMgt.dto.ProdInfo">
/* custMgt-mapper.xml(getProdAmt) */
SELECT EPI.PROD_AMT
FROM hubez_common.EZ_SUBS_INFO ESI
INNER JOIN hubez_common.EZ_PROD_INFO EPI
ON EPI.PROD_CD = ESI.PROD_CD
WHERE USER_SEQ = #{userSeq}
</select>
<!-- 주문 번호 채번 -->
<select id="getOrder" resultType="String">
/* custMgt-mapper.xml(getOrder) */
SELECT hubez_admin.FUN_GET_ORDER();
</select>
<!-- 오더 저장 -->
<insert id="insertOrder" parameterType="kr.co.uplus.ez.api.custMgt.dto.OrderDto">
/* custMgt-mapper.xml(insertOrder) */
INSERT INTO hubez_admin.EZ_ORDER(
ORDER_ID
,ORDER_CRET_DT
,ORDER_TY_CD
,REG_ID
)VALUES(
#{orderId}
, STR_TO_DATE(#{orderCretDt}, '%y%m%d%H%i%s')
, #{orderTyCd}
, #{regId}
)
</insert>
<!-- 차감 상세 저장 -->
<insert id="insertLmtdctDtl" parameterType="kr.co.uplus.ez.api.custMgt.dto.LmtdctDtlDto">
/* custMgt-mapper.xml(insertLmtdctDtl) */
INSERT INTO hubez_admin.EZ_LMTDCT_DTL(
ORDER_CRET_DT
,USER_SEQ
,LMT_YM
,USE_YM
,LMT_TP_CD
,DDCT_TP_CD
,DDCT_AMT
,EXE_ORDER_ID
,SNDDCT_ORDER_ID
,REG_ID
,REG_DT
)VALUES(
#{orderCretDt}
, #{userSeq}
, #{lmtYm}
, #{useYm}
, #{lmtTpCd}
, #{ddctTpcd}
, #{ddctAmt}
, #{exeOrderId}
, #{snddctOrderId}
, #{regId}
, now()
)
</insert>
<!-- 한도초기화 추가 -->
<insert id="insertUserLmt" parameterType="kr.co.uplus.ez.api.custMgt.dto.UserLmtDto">
/* custMgt-mapper.xml(insertUserLmt) */
INSERT INTO hubez_admin.EZ_USER_LMT(
USER_SEQ
,LMT_YM
,FX_LMT_AMT
,MRT_LMT_AMT
,CFWD_AMT
,EXTNC_AMT
,CFWD_RSTRT_BLNC
,FX_BLNC
,MRT_USE_AMT
,SMS_USE_AMT
,MMS_USE_AMT
,LMS_USE_AMT
,ATLK_USE_AMT
,SMS_USE_CNT
,LMS_USE_CNT
,MMS_USE_CNT
,ATLK_USE_CNT
,REG_ID
,REG_DT
,CHG_ID
,CHG_DT
)VALUES(
#{userSeq}
, #{lmtYm}
, #{fxLmtAmt}
, #{mrtLmtAmt}
, 0
, 0
, 0
, #{fxBlnc}
, 0
, 0
, 0
, 0
, 0
, 0
, 0
, 0
, 0
, #{regId}
,now()
, #{chgId}
,now()
)
</insert>
</mapper>

View File

@@ -84,6 +84,7 @@
ELSE 'N'
END AS PW_CHANGE_CHECK
, T1.AUT_CD
, T1.TMP_PWD_YN
FROM
hubez_admin.EZ_ADM_USER T1
LEFT JOIN hubez_imdb.EZ_IM_USER T2 ON T1.OPRTR_ID = T2.LOGIN_ID
@@ -218,13 +219,13 @@
<if test="autCd != null and autCd != ''">
, AUT_CD = #{autCd}
</if>
<if test="authchrFailCnt != null and authchrFailCnt != ''">
<if test="authchrFailCnt != null">
, AUTHCHR_FAIL_CNT = #{authchrFailCnt}
</if>
<if test="lastLoginDt != null and lastLoginDt != ''">
, LAST_LOGIN_DT = NOW()
</if>
<if test="loginFailCnt != null and loginFailCnt != ''">
<if test="loginFailCnt != null">
, LOGIN_FAIL_CNT = #{loginFailCnt}
</if>
<if test="pwdChgDt != null and pwdChgDt != ''">

View File

@@ -238,8 +238,10 @@
ess.SNDRNO AS sendNum
FROM
hubez_common.EZ_SVC_SNDRNO ess
WHERE
ess.CUST_SEQ = #{custSeq}
INNER JOIN hubez_common.EZ_CUST_INFO eci
ON
ess.CUST_SEQ = eci.CUST_SEQ
WHERE eci.BIZRNO = #{bregno}
AND ess.SNDRNO IN
<foreach collection="list" item="item" index="i" open="(" separator="," close=")">
#{item.sendNum}

View File

@@ -83,11 +83,10 @@
AND T1.STTUS_CD = #{searchType2}
</if>
<if test="searchText1 != null and searchText1 != ''">
AND T1.OPRTR_ID = #{searchText1}
AND T1.OPRTR_ID LIKE CONCAT('%', #{searchText1}, '%')
</if>
<if test="searchText2 != null and searchText2 != ''">
AND UPPER(T1.OPRTR_NM) LIKE UPPER('%' + #{searchText2} +
'%')
AND T1.OPRTR_NM LIKE CONCAT('%', #{searchText2}, '%')
</if>
</sql>