/** ens-mysql-mapper|insertUnitySndngMst-통합발송마스터 생성|julim */ INSERT INTO tb_ens_unity_sndng_mastr ( unity_sndng_mastr_id, /* 통합발송마스터 ID */ signgu_code, /* 시군구 코드 */ ffnlg_code, /* 과태료 코드 */ tmplat_id, /* 템플릿 Id */ sndng_ty_code, /* 발송유형 코드 */ sndng_co, /* 발송건수 */ sndng_process_sttus, /* 발송처리 상태 */ sndng_dt_1, /* 발송 일시 */ sndng_dt_2, /* 발송 일시2 */ sndng_dt_3, /* 발송 일시3 */ try1, try2, try3, try_cnt, clos_dt, /* 마감일시 */ regist_dt, register ) SELECT tcsm.unity_sndng_mastr_id /* 통합발송마스터 ID */ , tcsm.signgu_code /* 시군구 코드 */ , tcsm.ffnlg_code /* 과태료 코드 */ , tcsm.tmplat_id /* 템플릿 Id */ , tetm.sndng_ty_code /* 발송유형 코드 */ , tcsm.sndng_co /* 발송건수 */ , 'accept-ok' /* 발송처리 상태 */ , tcsm.sndng_dt , #{sndngDt2} , #{sndngDt3} , tetm.try1 , tetm.try2 , tetm.try3 , CASE WHEN IFNULL(tetm.try3, '') != '' THEN 3 ELSE IF(IFNULL(tetm.try2, '') != '', 2, 1) END /* try3 값이 있으면 3, try2 값이 있으면 2, try1 */ , clos_dt /* 마감일시 */ , now() , 'batch' FROM tb_cntc_sndng_mastr tcsm JOIN tb_ens_tmplat_manage tetm ON tcsm.tmplat_id = tetm.tmplat_id WHERE tcsm.unity_sndng_mastr_id = #{unitySndngMastrId} AND tcsm.sndng_process_sttus = #{sndngProcessSttus} /** ens-mysql-mapper|insertUnitySndngDtls-통합발송상세 생성|julim */ INSERT INTO tb_ens_unity_sndng_detail ( unity_sndng_detail_id, /* 통합발송상세 ID*/ unity_sndng_mastr_id, /* 통합발송마스터 ID */ signgu_code, /* 시군구 코드 */ ffnlg_code, /* 과태료 코드 */ main_code, vhcle_no, /* 차량번호 */ ihidnum, /* 주민번호 */ moblphon_no, /* 전화번호 */ nm, /* 이름 */ adres, /* 주소 */ detail_adres, /* 상세주소 */ zip, /* 우편번호 */ tmplt_msg_data, /* 템플릿메세지 데이타 */ mobile_page_cn, /* 모바일페이지내용 */ use_instt_idntfc_id, /* 이용기관식별Id*/ regist_dt, register ) SELECT tcsd.unity_sndng_detail_id /* 통합발송상세 ID*/ , tcsd.unity_sndng_mastr_id /* 통합발송마스터 ID */ , tcsd.signgu_code /* 시군구 코드 */ , tcsd.ffnlg_code /* 과태료 코드 */ , tcsd.main_code , tcsd.vhcle_no /* 차량번호 */ , tcsd.ihidnum /* 주민번호 */ , tcsd.moblphon_no /* 전화번호 */ , tcsd.nm /* 이름 */ , tcsd.adres /* 주소 */ , tcsd.detail_adres /* 상세주소 */ , tcsd.zip /* 우편번호 */ , tcsd.tmplt_msg_data /* 템플릿메세지 데이타 */ , tcsd.mobile_page_cn /* 모바일페이지내용 */ , tcsd.use_instt_idntfc_id /* 이용기관식별Id*/ , now() , 'batch' FROM tb_cntc_sndng_mastr tcsm JOIN tb_cntc_sndng_detail tcsd ON tcsm.unity_sndng_mastr_id = tcsd.unity_sndng_mastr_id WHERE tcsm.unity_sndng_mastr_id = #{unitySndngMastrId} AND tcsm.sndng_process_sttus = #{sndngProcessSttus} /** ens-mysql-mapper|updateProcessSttusCntcSndngMst-연계발송마스터 상태 변경|julim */ UPDATE tb_cntc_sndng_mastr SET sndng_process_sttus = #{newSndngProcessSttus} , error_code = #{errorCode} , error_mssage = #{errorMssage} , updt_dt = now() , updusr = 'batch' WHERE unity_sndng_mastr_id = #{unitySndngMastrId} /** ens-mysql-mapper|insertSndngMst-발송마스터 생성|julim */ SELECT concat(date_format(now(), '%Y%m%d'), LPAD(NEXTVAL(tb_ens_sndng_mastr_seq), 12, '0')) FROM dual INSERT INTO tb_ens_sndng_mastr ( sndng_mastr_id, /* 발송마스터 ID*/ unity_sndng_mastr_id, /* 통합발송마스터 ID */ signgu_code, /* 시군구 코드 */ ffnlg_code, /* 과태료 코드 */ tmplat_id, /* 템플릿 Id */ sndng_ty_code, /* 발송유형 코드 */ sndng_se_code, /* 발송구분 코드 */ sndng_co, /* 발송건수 */ try_seq, try_cnt, sndng_process_sttus, /* 발송처리 상태 */ sndng_dt, /* 발송일시 */ clos_dt, /* 마감일시 */ regist_dt, register ) SELECT #{sndngMastrId} , teusm.unity_sndng_mastr_id /* 통합발송마스터 ID */ , teusm.signgu_code /* 시군구 코드 */ , teusm.ffnlg_code /* 과태료 코드 */ , teusm.tmplat_id /* 템플릿 Id */ , teusm.sndng_ty_code /* 발송유형 코드 */ , #{sndngSeCode} /* 발송구분 코드 */ , #{sndngCo} /* 발송건수 */ , #{trySeq} , teusm.try_cnt , 'make-ok' /* 발송처리 상태 */ , CASE WHEN #{trySeq}=3 THEN teusm.sndng_dt_3 WHEN #{trySeq}=2 THEN teusm.sndng_dt_2 ELSE teusm.sndng_dt_1 END /* 1차, 2차, 3차에 따른 발송일시 */ , teusm.clos_dt /* 마감일시 */ , now() , 'batch' FROM tb_ens_unity_sndng_mastr teusm WHERE teusm.unity_sndng_mastr_id = #{unitySndngMastrId} AND teusm.sndng_process_sttus = #{sndngProcessSttus} /** ens-mysql-mapper|insertKakaoMyDocs-카카오내문서함 생성|julim */ INSERT INTO tb_ens_kakao_my_doc ( sndng_detail_id, /* 발송상세ID */ unity_sndng_detail_id, /* 통합발송상세ID */ sndng_mastr_id, /* 발송마스터ID */ signgu_code, /* 시군구코드 */ ffnlg_code, /* 과태료코드 */ title, /* 제목 */ hash, common_categories, read_expired_at, /* 처리마감시간 */ -- recv_ci, /* 받는이 CI */ recv_phone_number, /* 받는이 전화번호 */ recv_name, /* 받는이 이름 */ recv_birthday, /* 받는이 생년월일 */ recv_is_required_verify_name,/* 성명검증옵션 */ prop_link, /* 모바일페이지 URL */ prop_payload, prop_message, prop_cs_number, /* 고객센터 전화번호 */ prop_cs_name, /* 고객센터 명 */ -- external_document_uuid,/* 외부문서 식별번호 */ regist_dt, register ) SELECT LPAD(NEXTVAL(sndng_detail_id_seq), 20, '0') , teusd.unity_sndng_detail_id , #{sndngMastrId} , teusm.signgu_code , teusm.ffnlg_code , tetm.tmplat_nm , SHA2(teusd.unity_sndng_detail_id, 256) , '[NOTICE]' , unix_timestamp(teusm.clos_dt) -- , NULL , teusd.moblphon_no , teusd.nm , teusd.ihidnum , 'false' , tetm.redirect_url , tetm.tmplat_sj , CASE WHEN teusm.sndng_ty_code='PNI' THEN teusd.tmplt_msg_data ELSE tetm.tmplat_cn END , tetm.cstmr_cnter_tlphon_no , '콜센터' -- , null , 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 WHERE teusm.unity_sndng_mastr_id = #{unitySndngMastrId} AND teusm.sndng_process_sttus = #{sndngProcessSttus} /** ens-mysql-mapper|insertSmsSndng-문자발송 데이터 생성|julim */ INSERT INTO tb_ens_sms_sndng ( sndng_detail_id, /* 발송 상세 id */ unity_sndng_detail_id, /* 통합 발송 상세 id */ sndng_mastr_id, /* 발송 마스터 id */ signgu_code, /* 시군구 코드 */ ffnlg_code, /* 과태료 코드 */ vhcle_no, /* 차량 번호 */ sms_sndng_dt, /* 문자 발송 일시 */ sms_trnsmis_stle, /* 문자 전송 형태 */ sms_trnsmit_tlphon_no, /* 문자 송신 전화 번호 */ sms_recptn_tlphon_no, /* 문자 수신 전화 번호 */ sms_mssage, /* 문자 메시지 */ sms_sndng_sttus, /* 문자 발송 상태 */ sms_sndng_process_sttus, /* 문자 발송 처리 상태 */ regist_dt, register ) SELECT LPAD(NEXTVAL(sndng_detail_id_seq), 20, '0') , teusd.unity_sndng_detail_id , #{sndngMastrId} , teusm.signgu_code , teusm.ffnlg_code , teusd.vhcle_no , date_format(now(), '%Y%m%d%H%i%S') , '0' , REPLACE(tetm.cstmr_cnter_tlphon_no, '-', '') , teusd.moblphon_no , teusd.tmplt_msg_data , '2' , '06' , 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 WHERE teusm.unity_sndng_mastr_id = #{unitySndngMastrId} AND teusm.sndng_process_sttus = #{sndngProcessSttus} INSERT INTO tb_ens_post_sndng ( sndng_detail_id, /* 발송 상세 id */ unity_sndng_detail_id, /* 통합 발송 상세 id */ sndng_mastr_id, /* 발송 마스터 id */ signgu_code, /* 시군구 코드 */ ffnlg_code, /* 과태료 코드 */ service_cd, /* 서비스 코드 */ con_key, /* 연계 식별 키 */ sender_nm, /* 발송인 명 */ sender_zip_no, /* 발송인 우편번호 */ sender_addr, /* 발송인 주소 */ sender_detail_addr, /* 발송인 상세 주소 */ receiver_send_no, /* 수취인 일련 번호 */ receiver_nm, /* 수취인 명 */ receiver_zip_no, /* 수취인 우편번호 */ receiver_addr, /* 수취인 주소 */ receiver_detail_addr, /* 수취인 상세 주소 */ sschnge_1, /* 가변 1 */ sschnge_2, /* 가변 2 */ sschnge_3, /* 가변 3 */ regist_dt, register ) SELECT LPAD(NEXTVAL(sndng_detail_id_seq), 20, '0') , teusd.unity_sndng_detail_id , #{sndngMastrId} , teusm.signgu_code , teusm.ffnlg_code , 'PST' , (SELECT CONCAT('0009900112Z1',date_format(now(), '%Y%m%d%H%i%S')) from dual) , term.sender_nm , term.sender_zip_no , term.sender_addr , term.sender_detail_addr , row_number() over(order by teusd.unity_sndng_detail_id) , teusd.nm , teusd.zip , teusd.adres , teusd.detail_adres , CONCAT(teusd.vhcle_no, '|', tecd.spt_nm) , CONCAT(tecd.reglt_dt, '|', date_format(date_add(now(), interval + 20 day), '%Y%m%d')) , '32000' , 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 INNER JOIN tb_ens_kakao_my_doc tekmd ON teusd.unity_sndng_detail_id = tekmd.unity_sndng_detail_id AND (NOT (tekmd.doc_box_status = 'READ' AND tekmd.error_code IS NULL) OR (tekmd.doc_box_status IS NULL and tekmd.error_code IS NULL)) WHERE teusm.unity_sndng_mastr_id = #{unitySndngMastrId} AND teusm.sndng_process_sttus = #{sndngProcessSttus} /** ens-mysql-mapper|updateProcessSttusUntySndngMst-통합발송마스터 상태 변경|julim */ UPDATE tb_ens_unity_sndng_mastr SET sndng_process_sttus = #{newSndngProcessSttus} , error_code = #{errorCode} , error_mssage = #{errorMssage} , updt_dt = now() , updusr = 'batch' WHERE unity_sndng_mastr_id = #{unitySndngMastrId} /** ens-mysql-mapper|updateKakaoSendBulksResult-카카오페이 문서요청 결과 반영|julim */ UPDATE tb_ens_kakao_my_doc SET external_document_uuid = #{external_document_uuid} , document_binder_uuid = #{document_binder_uuid} , error_code = #{error_code} , error_message = #{error_message} , updt_dt = now() , updusr = 'batch' WHERE unity_sndng_detail_id = #{external_document_uuid} /** ens-mysql-mapper|insertMobilePageManage-모바일페이지관리 데이타 생성|julim */ INSERT INTO tb_ens_mobile_page_manage ( sndng_detail_id, /* 발송상세 ID*/ sndng_se_code, /* 발송 구분 코드 */ mobile_page_cn, /* 모바일 페이지 내용 */ regist_dt, register ) SELECT tekmd.sndng_detail_id , 'KKO-MY-DOC' , teusd.mobile_page_cn , date_format(now(), '%Y%m%d%H%i%s') , 'batch' FROM tb_ens_kakao_my_doc tekmd JOIN tb_ens_unity_sndng_detail teusd ON tekmd.unity_sndng_detail_id = teusd.unity_sndng_detail_id WHERE teusd.unity_sndng_detail_id = #{unitySndngDetailId} /** ens-mysql-mapper|updateProcessSttusSndngMst-발송마스터 상태 변경|julim */ UPDATE tb_ens_sndng_mastr SET sndng_process_sttus = #{newSndngProcessSttus} , error_code = #{errorCode} , error_mssage = #{errorMssage} , updt_dt = now() , updusr = 'batch' WHERE sndng_mastr_id = #{sndngMastrId} /** ens-mysql-mapper|updateProcessSttusBulkSndngMst-발송마스터 상태 다건 변경|julim */ UPDATE tb_ens_sndng_mastr SET sndng_process_sttus = #{newSndngProcessSttus} , updt_dt = now() , updusr = 'batch' WHERE unity_sndng_mastr_id = #{unitySndngMastrId} /** ens-mysql-mapper|updateKakaoStatusInfo-카카오 문서 상태 조회 결과 반영|julim */ UPDATE tb_ens_kakao_my_doc SET doc_box_status = #{status_data.doc_box_status} /* 진행상태 */ , doc_box_sent_at = #{status_data.doc_box_sent_at} /* 송신시간 */ , doc_box_received_at = #{status_data.doc_box_received_at} /* 수신시간 */ , doc_box_read_at = #{status_data.doc_box_read_at} /* 최초열람시간 */ , authenticated_at = #{status_data.authenticated_at} /* 최초열람인증시간 */ , token_used_at = #{status_data.token_used_at} /* 최초OTT 검증시간 */ , user_notified_at = #{status_data.user_notified_at} /* 알림톡 수신시간 */ , updt_dt = now() , updusr = 'batch' WHERE unity_sndng_detail_id = (SELECT tekmd.unity_sndng_detail_id FROM tb_ens_kakao_my_doc tekmd WHERE tekmd.document_binder_uuid = #{document_binder_uuid}) /** ens-mysql-mapper|insertCntcSndngResult-연계발송결과반영|julim */ INSERT INTO tb_cntc_sndng_result ( unity_sndng_detail_id, /* 통합 발송 상세 ID*/ sndng_se_code, /* 발송구분코드 */ signgu_code, /* 시군구코드 */ ffnlg_code, /* 과태료코드 */ sndng_result_sttus, requst_dt, /* 송신(요청) 일시 */ inqire_dt, /* 수신(조회) 일시 */ readng_dt, /* 최초열람일시 */ error_cn, /* 에러내용 */ regist_dt, register ) SELECT unity_sndng_detail_id/* 통합 발송 상세 ID*/ , #{sndngSeCode} /* 발송구분코드 - KAKAO-MY-DOC */ , signgu_code /* 시군구코드 */ , ffnlg_code /* 과태료코드 */ , #{sndngResultSttus} , from_unixtime(#{requstDt}, '%Y%m%d%H%i%s') /* 송신(요청) 일시 */ , from_unixtime(#{inqireDt}, '%Y%m%d%H%i%s') /* 수신(조회) 일시 */ , from_unixtime(#{readngDt}, '%Y%m%d%H%i%s') /* 최초열람일시 */ , #{errorCn} /* 에러내용 */ , now() , 'batch' FROM tb_ens_unity_sndng_detail WHERE unity_sndng_detail_id = #{unitySndngDetailId} /** ens-mysql-mapper|updateCntcSndngResult-연계발송결과반영|julim */ UPDATE tb_cntc_sndng_result SET sndng_result_sttus = #{sndngResultSttus} , requst_dt = from_unixtime(#{requstDt}, '%Y%m%d%H%i%s') /* 송신(요청) 일시 */ , inqire_dt = from_unixtime(#{inqireDt}, '%Y%m%d%H%i%s') /* 수신(조회) 일시 */ , readng_dt = from_unixtime(#{readngDt}, '%Y%m%d%H%i%s') /* 최초열람일시 */ , error_cn = #{errorCn} , updt_dt = now() , updusr = 'batch' WHERE unity_sndng_detail_id = (SELECT tekmd.unity_sndng_detail_id FROM tb_ens_kakao_my_doc tekmd WHERE tekmd.document_binder_uuid = #{documentBinderUuid})