
/* ##############################################################
	설  명 : [Modal]고객 등록 팝업
	작성일 : 2024. 03. 14.
	작성자 : NTsoft
	수정일 	        수정자 	 수정내용
	-------         -------- ---------------------------
	2024. 03. 14.	NTsoft 	 최초 생성
*/
let	marketingSmsInsertModal = {
    callback : null,
    reqParam : null,
    dataList : null,
    /* 모달 초기화 작업 */
    init : function () {
        $('#marketingSmsInsertModal').remove();
        $('body').append(this.HtmlTemplate);
        //그리드 이벤트
        this.setEvent();
    },
    /* 그리드 이벤트 설정 */
    setEvent:function() {
        $('#marketingSmsInsertModal .btnCancle').on("click", function(){
            marketingSmsInsertModal.close();
        });

        $('#marketingSmsInsertModal .btnSave').on("click", function(){
            marketingSmsInsertModal.save();
        });

        $('#marketingSmsInsertModal #modal_smsContent').on("keyup", function(){
            fn_getByteText(this, 2000);
        });
    },
    /* 데이터 선택 */
    setSelect:function(selectNumber) {
        var checkedData = dataList[selectNumber];
        if(dataList==null||checkedData==undefined){
            return ;
        }

        if( marketingSmsInsertModal.callback )  {
            marketingSmsInsertModal.callback(checkedData);
        }
        marketingSmsInsertModal.close();
    },
    /****************************************************************************
     * 고객 정보 등록
     ****************************************************************************/
    //저장
    save:function() {
        let smsType = $("#smsTypeCheck").val();
        let smsContent = $("#modal_smsContent").val();
        // 사용자 정보
        let userArr = selectedRows;

        if ("Y" != insertUseYn) {
            modalEvent.warning("등록", "등록 권한이 없습니다.");
            return false;
        }

        if(true != fn_emptyCheck(smsType)){
            modalEvent.warning("등록", "SMS 타입 정보가 없습니다.");
            return;
        }

        if(true != fn_emptyCheck(smsContent)){
            modalEvent.warning("등록", "내용 정보가 없습니다.");
            return;
        }

        if(true != fn_emptyCheck(userArr)){
            modalEvent.warning("등록", "발송대상 정보가 없습니다.");
            return;
        }

        //object 선언 후 데이터 등록
        let itemData = new Object();
        itemData.itemArr = userArr;

        //json 변경
        let userArrData = JSON.stringify(itemData);

        modalEvent.info("등록", "알림톡 발송대상을 등록하시겠습니까?", function(){
            let formData = new FormData();
            // formData.append("muUserId", muUserId);
            formData.append("menuClass", menuClass);
            formData.append("smsType", smsType);
            formData.append("smsContent", smsContent);
            formData.append("userArrData", userArrData);

            $.ajax({
                url: encodeURI('/websms/insertSms.do'),
                data: formData,
                dataType: "json",
                processData: false,
                contentType: false,
                type: 'POST',
                async:true,
                success: function(data){
                    if(data.msgCode=='0'){
                        modalEvent.success("성공", data.msgDesc, function(){
                            fn_leftFormAction2('070103','/webmarketing/selectListMarketingSmsIntro.do');
                        });

                    }else{
                        modalEvent.danger("오류", data.msgDesc);
                    }
                },
                error : function(xhr, status, error) {
                    modalEvent.danger("등록 오류", "고객 등록 중 오류가 발생하였습니다. 잠시후 다시시도하십시오.");
                },
                beforeSend: function () {
                },
                complete: function () {
                }
            });
        });
    },
    /*
     * 팝업
     * callback : 콜백함수, reqParam: 팝업파라미터
     */
    popup:function(callback, reqParam) {
        // 초기화 후 열기
        marketingSmsInsertModal.init();

        //콜백함수 지정.
        marketingSmsInsertModal.callback = callback;
        marketingSmsInsertModal.reqParam = reqParam;
        marketingSmsInsertModal.dataList = null;

        setTimeout(function(){
            $("#marketingSmsPopTotalCount").text(fn_numberFormat(selectedRows.length)+'명');

            $('#marketingSmsInsertModal').modal('show')
        }, 200);

    },
    /*
     * 팝업 닫기
     */
    close:function() {
        $('#marketingSmsInsertModal').modal('hide');

		setTimeout(function(){
			$('#marketingSmsInsertModal').remove();
		},500);
    },
    HtmlTemplate :`
    <div class="modal send_modal fade" id="marketingSmsInsertModal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="">
        <div class="modal-dialog">
            <div class="modal-content">
                <div class="modal-body">
                    <div class="left_box">
                        <p class="title">광고문자 전송 유의사항</p>
                        <img src="/image/web/message.png" alt="유의사항"/>
                        <p>
                            광고성 메시지는 야간 전송이 제한되도록 설정하셔야 합니다.<br/>
                            한국은 08:00~20:00 전송 가능.<br/><br/>
                            광고성 메시지 발송을 하려면, 
                            정보통신망법 제50조에 따라 수신자(고객)의 명시적인 
                            사전동의를 받아야 하며 발송 표기 의무 사항을 반드시 준수하셔야 합니다.
                        </p>
                    </div>
                    <div class="right_box">
                        <div class="title_box">
                            <p class="title">문자 발송대상</p>
                            <p class="total" id="marketingSmsPopTotalCount">0명</p>
                        </div>
                        <div class="textarea_box">
                            <textarea placeholder="내용을 입력하세요." id="modal_smsContent"></textarea>
                        </div>
                        <p><span id="smsContentByteCheck">0</span> / 2000byte</p>
                        <input type="hidden" id="smsTypeCheck" value="S">

                        <div class="btn_box">
                            <button type="button" class="cancel_btn btnCancle">취소</button>
                            <button type="button" class="registration_bth btnSave">전송</button>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <script>
        $(document).ready(function() {
            fn_clickEvent();
        });
    </script>`
};






