From 02ce226e13055ed7eac6bb699aeb35a561f827fa Mon Sep 17 00:00:00 2001 From: kjh Date: Thu, 26 Oct 2023 18:30:37 +0900 Subject: [PATCH] feat: batch KT-BC make --- .../xit/biz/ens/mapper/IEnsBatchMapper.java | 13 +- .../xit/biz/ens/service/EnsBatchService.java | 9 +- .../mapper/biz/ens-mysql-mapper.xml | 172 ++++++++++-------- 3 files changed, 111 insertions(+), 83 deletions(-) diff --git a/mens-batch/src/main/java/kr/xit/biz/ens/mapper/IEnsBatchMapper.java b/mens-batch/src/main/java/kr/xit/biz/ens/mapper/IEnsBatchMapper.java index 972835b..ed3b75e 100644 --- a/mens-batch/src/main/java/kr/xit/biz/ens/mapper/IEnsBatchMapper.java +++ b/mens-batch/src/main/java/kr/xit/biz/ens/mapper/IEnsBatchMapper.java @@ -161,14 +161,23 @@ public interface IEnsBatchMapper { /** *
-     * Kt 공공알림문자 데이터 생성
+     * Kt 공공알림문자 마스타 데이터 생성
      * - tb_ens_kt_bc
      * @param t T
      * @return int
      * 
*/ - int insertKtBc(final T t); + int insertKtBcMastr(final T t); + /** + *
+     * Kt 공공알림문자 디테일 데이터 생성
+     * - tb_ens_kt_bc
+     * @param t T
+     * @return int
+     * 
+ */ + int insertKtBcDetail(final T t); /** *
diff --git a/mens-batch/src/main/java/kr/xit/biz/ens/service/EnsBatchService.java b/mens-batch/src/main/java/kr/xit/biz/ens/service/EnsBatchService.java
index 6bc529a..eeb9110 100644
--- a/mens-batch/src/main/java/kr/xit/biz/ens/service/EnsBatchService.java
+++ b/mens-batch/src/main/java/kr/xit/biz/ens/service/EnsBatchService.java
@@ -664,8 +664,10 @@ public class EnsBatchService extends EgovAbstractServiceImpl implements IEnsBatc
      *         - tb_ens_post_sndng
      * SMS     - {@link IEnsBatchMapper#insertSmsSndng(Object) insertSmsSndng}
      *         - tb_ens_sms_sndng
-     * KT_BC   - {@link IEnsBatchMapper#insertKtBc(Object) insertKtBc}
-     *         - tb_ens_kt_bc FIXME::처리 필요
+     * KT_BC   - {@link IEnsBatchMapper#insertKtBcMastr(Object) insertKtBcMastr}
+     *         - tb_ens_kt_bc_mastr FIXME::운영 전환 시 처리 필요
+     *         - {@link IEnsBatchMapper#insertKtBcDetail(Object) insertKtBcDetail}
+     *         - tb_ens_kt_bc_detail FIXME::운영 전환 시 처리 필요
      * PPLUS   - {@link IEnsBatchMapper#insertPplus(Object) insertPplus}
      *         - tb_ens_ FIXME::처리 필요
      * @param dto SndngMssageParam
@@ -693,7 +695,8 @@ public class EnsBatchService extends EgovAbstractServiceImpl implements IEnsBatc
                 if(SignguCode.FUNERAL.getCode().equals(dto.getSignguCode())){
                     dto.setUrl(ME_CALLBACK_URL);
                 }
-                makeCnt = mapper.insertKtBc(dto);
+                mapper.insertKtBcMastr(dto);
+                makeCnt = mapper.insertKtBcDetail(dto);
             }
             // FIXME::처리 필요
             case PPLUS -> makeCnt = mapper.insertPplus(dto);
diff --git a/mens-batch/src/main/resources/egovframework/mapper/biz/ens-mysql-mapper.xml b/mens-batch/src/main/resources/egovframework/mapper/biz/ens-mysql-mapper.xml
index 76789a5..6c9abb6 100644
--- a/mens-batch/src/main/resources/egovframework/mapper/biz/ens-mysql-mapper.xml
+++ b/mens-batch/src/main/resources/egovframework/mapper/biz/ens-mysql-mapper.xml
@@ -378,96 +378,112 @@
 		   AND teusm.sndng_process_sttus = #{sndngProcessSttus}
 	
 
-	
-		/** ens-mysql-mapper|insertKtBc-KT 공공 알림문자 데이터 생성|julim  */
+	
+		/** ens-mysql-mapper|insertKtBcMastr 공공 알림문자 마스타 데이터 생성|julim  */
 		INSERT
-			INTO tb_ens_kt_bc (
-				sndng_detail_id,				/* 발송상세 id */
-				unity_sndng_detail_id,	/* 통합발송상세 id */
-				sndng_mastr_id,					/* 발송마스터 id */
-				signgu_code,						/* 시군구 코드 */
-				ffnlg_code,							/* 과태료 코드 */
-				service_cd,							/* 서비스 코드 */
-				service_key,						/* 서비스 인증키 */
-
-				regist_dt,
-				register
+				test_sndn_yn,				/* 테스트 발송여부 */
+				rcv_rfrl_yn,				/* 수신 거부 해제 여부 */
+				regist_dt,					/* 등록 일시 */
+				register					/* 등록자 */
 			)
-			SELECT LPAD(NEXTVAL(sndng_detail_id_seq), 20, '0')
-					 , teusd.unity_sndng_detail_id
-					 , #{sndngMastrId}
-					 , teusm.signgu_code
-					 , teusm.ffnlg_code
-					 , term.kt_service_code
-					 , IF(#{profile} = 'prod', term.kt_prod_service_cerf_key, term.kt_dev_service_cerf_key)
-					 
-					 , now()
-					 , 'batch'
+			SELECT #{sndngMastrId}
+		         , teusm.signgu_code            /* TODO :: 운영 시 kt_service_code, kt_dev_service_cerf_key, 다회선 사용자 처리 구분, 테스트 발송여부 변경 필요 */
+		         , teusm.ffnlg_code
+                 , term.kt_service_code
+			     , term.kt_dev_service_cerf_key
+			     , teusm.tmplat_id
+			     , '2'							/* RCS/xMS (RCS :1, xMS: 2) */
+                 , teusm.sndng_dt_1
+			     , teusm.clos_dt
+			     , teusm.clos_dt
+			     , '4'							/* 3: LMS 4: MMS 6: RCS*/
+			     , '1' 							/* 1: default 3: 하이브리드 */
+			     , ''
+			     , ''
+			     , teusm.sndng_co
+			     , 'N'
+			     , '3'							/* 2 : 다회선 발송 제외(default) (NULL 일경우 동일취급) 3 : 다회선 중 임의 1회선 발송 */
+				 , 'Y'
+			     , 'N'
+				 , now()
+				 , 'batch'
 				FROM tb_ens_unity_sndng_mastr teusm
 				LEFT JOIN tb_ens_tmplat_manage tetm
 					ON teusm.tmplat_id = tetm.tmplat_id
-				LEFT JOIN tb_ens_unity_sndng_detail teusd
-					ON teusm.unity_sndng_mastr_id = teusd.unity_sndng_mastr_id
 				LEFT JOIN tb_ens_rlaybsnm_manage term
 					ON teusm.signgu_code = term.signgu_code AND teusm.ffnlg_code = term.ffnlg_code
-				LEFT JOIN tb_ens_cntc_data tecd
-					ON teusd.unity_sndng_detail_id = tecd.unity_sndng_detail_id
 			 WHERE teusm.unity_sndng_mastr_id = #{unitySndngMastrId}
 				 AND teusm.sndng_process_sttus = #{sndngProcessSttus}
 	
 
+	
+		/** ens-mysql-mapper|insertKtBcDetail 공공 알림문자 디테일 데이터 생성|julim  */
+		INSERT
+			INTO tb_ens_kt_bc_detail (
+				sndng_mastr_id,				/* 발송 마스터 id */
+				sndng_detail_id,			/* 발송 상세 id */
+				unity_sndng_detail_id,		/* 통합 발송 상세 id */
+				src_key,					/* 관리키 */
+				src_seq,			        /* 리스트 순번 */
+				ci,							/* ci */
+				mms_dtl_cnts,				/* MMS 상세 내용 */
+				mms_title,					/* MMS 제목 */
+				url,						/* 연결 URL */
+				doc_hash,				    /* 문서 해시 */
+				mdn,						/* 개인 휴대 전화 번호 */
+				dist_info_crt_yn,			/* 유통 정보 미생성 여부 */
+				info_cfrm_str,				/* 안내문 확인하기 치환 문구 */
+				rcve_rf_str,				/* 수신 거부 치환 문구 */
+				regist_dt,					/* 등록 일시 */
+				register					/* 등록자 */
+			)
+			SELECT #{sndngMastrId}					/* TODO :: 운영 시 mdn 삭제 */
+			     , LPAD(NEXTVAL(sndng_detail_id_seq), 20, '0')
+				 , teusd.unity_sndng_detail_id
+				 , teusd.unity_sndng_detail_id
+                 , row_number() over ()
+                 , tec.ci
+				 , tetm.tmplat_cn
+			     , tetm.tmplat_sj
+				 , #{url}
+			     , SHA2(teusd.unity_sndng_detail_id, 256)
+                 , '01093414345'
+			     , 'N'
+			     , '○ 안내문 확인하기 :'
+			     , '○ 수신거부 및 수신 휴대폰 지정하기 : '
+				 , now()
+				 , 'batch'
+			  FROM tb_ens_unity_sndng_mastr teusm
+			  LEFT JOIN tb_ens_tmplat_manage tetm
+				   ON teusm.tmplat_id = tetm.tmplat_id
+			  LEFT JOIN tb_ens_unity_sndng_detail teusd
+				    ON teusm.unity_sndng_mastr_id = teusd.unity_sndng_mastr_id
+			  LEFT JOIN tb_ens_rlaybsnm_manage term
+			       ON teusm.signgu_code = term.signgu_code AND teusm.ffnlg_code = term.ffnlg_code
+			  LEFT JOIN tb_ens_ci tec
+				   ON teusd.unity_sndng_detail_id = tec.unity_sndng_detail_id
+			WHERE teusm.unity_sndng_mastr_id = #{unitySndngMastrId}
+			  AND teusm.sndng_process_sttus = #{sndngProcessSttus}
+	
+
 	
 		/** ens-mysql-mapper|insertPplus Post plus 데이터 생성|julim  */