초기소스
This commit is contained in:
218
src/main/webapp/WEB-INF/views/comm/crm/Include.jsp
Normal file
218
src/main/webapp/WEB-INF/views/comm/crm/Include.jsp
Normal file
@@ -0,0 +1,218 @@
|
||||
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
|
||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
|
||||
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
|
||||
|
||||
<%--
|
||||
Class Name : include.jsp
|
||||
Description : CRM CSS 및 JS 공통 include
|
||||
Modification Information
|
||||
|
||||
수정일 수정자 수정내용
|
||||
------- -------- ---------------------------
|
||||
2024-01-25 김혜인 최초 생성
|
||||
--%>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
|
||||
<%--mixed Contents 대응--%>
|
||||
<spring:eval expression="@environment.getProperty('spring.profiles.active')" var="profiles"/>
|
||||
<c:if test="${profiles eq 'stage'}">
|
||||
<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
|
||||
</c:if>
|
||||
|
||||
<%-- CSS --%>
|
||||
<link rel="stylesheet" href="<c:url value='/crm/css/style.css'/>">
|
||||
<link rel="stylesheet" href="/mngr/vendor/jquery-nice-select/nice-select.css">
|
||||
<link rel="stylesheet" href="/mngr/vendor/jquery-ui/jquery-ui.min.css">
|
||||
<link rel="stylesheet" href="/mngr/vendor/jquery-ui/jquery-ui.structure.css">
|
||||
<link rel="stylesheet" href="/mngr/vendor/jquery-modal/jquery.modal.min.css">
|
||||
<link rel="stylesheet" href="<c:url value='/mngr/vendor/time-picker/timepicker.css'/>">
|
||||
<link rel="stylesheet" href="<c:url value='/mngr/vendor/dropzone/dropzone.min.css'/>">
|
||||
<link rel="stylesheet" href="<c:url value='/mngr/vendor/jstree/themes/default/style.min.css'/>">
|
||||
<link rel="stylesheet" href="<c:url value='/ckeditor/content.css'/>">
|
||||
|
||||
<%-- CK editor 적용 시 width 설정 --%>
|
||||
<style type="text/css">
|
||||
.ck.ck-editor{
|
||||
width:100%;
|
||||
}
|
||||
</style>
|
||||
|
||||
<%-- JS --%>
|
||||
<script src="/mngr/vendor/jquery-3.7.1.min.js"></script>
|
||||
<script src="/mngr/vendor/jquery-nice-select/jquery.nice-select.min.js"></script>
|
||||
<script src="/mngr/vendor/jquery-ui/jquery-ui.min.js"></script>
|
||||
<script src="/mngr/vendor/jquery-modal/jquery.modal.min.js"></script>
|
||||
<script src="//t1.daumcdn.net/mapjsapi/bundle/postcode/prod/postcode.v2.js"></script>
|
||||
<script src="<c:url value='/mngr/vendor/tablednd/jquery.tablednd.1.0.5.min.js'/>"></script>
|
||||
<script src="<c:url value='/mngr/vendor/time-picker/timepicker.min.js'/>"></script>
|
||||
<script src="<c:url value='/mngr/vendor/dropzone/dropzone.min.js'/>"></script>
|
||||
<script src="<c:url value='/crm/js/script.js'/>" defer></script>
|
||||
<script src="<c:url value='/js/gcone.js'/>"></script>
|
||||
<script src="<c:url value='/js/fileupload_comm.js'/>"></script>
|
||||
<script src="<c:url value='/ckeditor/ckeditor.js'/>"></script>
|
||||
<script src="<c:url value='/mngr/vendor/chart.js/chart.umd.min.js'/>"></script>
|
||||
<script src="<c:url value='/admin/vendor/jstree/jstree.min.js'/>"></script>
|
||||
|
||||
<%--파비콘--%>
|
||||
<link rel="icon" type="image/png" href="\assets\favicon\gcone.ico">
|
||||
<meta name="robots" content="noindex,nofollow">
|
||||
<title>GC ONE 고객CRM</title>
|
||||
<script type="text/javascript">
|
||||
$.ajaxSetup({
|
||||
beforeSend : function(jqXhr, settins) {
|
||||
jqXhr.setRequestHeader('AJAX',true);
|
||||
$("#overlay").fadeIn();
|
||||
loding(true);
|
||||
},
|
||||
complete : function() {
|
||||
//동시에 여러개의 AJAX가 수행될 경우를 대비하여 delay를 설정
|
||||
setTimeout(function(){
|
||||
$("#overlay").fadeOut();
|
||||
},500);
|
||||
loding(false);
|
||||
},
|
||||
error: function(data){
|
||||
$("#overlay").fadeOut();
|
||||
loding(false);
|
||||
console.log(data);
|
||||
if (data?.responseJSON?.resBody?.result != null) {
|
||||
if (!data.responseJSON.resBody.result) {
|
||||
alert('<spring:message code="error.internal-server"/>');
|
||||
} else {
|
||||
if (fn_check_json(data.responseJSON.resBody.result)) {
|
||||
const errorObject = JSON.parse(data.responseJSON.resBody.result);
|
||||
if (!errorObject) {
|
||||
alert('<spring:message code="error.internal-server"/>');
|
||||
} else {
|
||||
if (!errorObject.errorMsg) {
|
||||
alert('<spring:message code="error.internal-server"/>');
|
||||
} else {
|
||||
alert(errorObject.errorMsg);
|
||||
let isMtched = false;
|
||||
$('.main').eq(0).find('input,select,textarea').each(function () {
|
||||
for (let idx = 0; idx < errorObject.errorFields.length; idx++) {
|
||||
if (errorObject.errorFields[idx].indexOf($(this).attr('name')) >= 0) {
|
||||
isMtched = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (isMtched) {
|
||||
$(this).focus();
|
||||
return false;
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (data.responseJSON.resBody.result) {
|
||||
alert(data.responseJSON.resBody.result);
|
||||
} else {
|
||||
alert('<spring:message code="error.ajax"/>');
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
alert('<spring:message code="error.ajax"/>');
|
||||
}
|
||||
}
|
||||
});
|
||||
/**********************************************************************
|
||||
* 회원 crm정보 모달 호출(공통)
|
||||
* 파라미터 설명 {
|
||||
* obj : 호출버튼 객체
|
||||
* mbrInnb : 회원 고유번호
|
||||
* mbrDvCd : 회원 구분코드
|
||||
* modalDiv : 모달 selector
|
||||
* }
|
||||
**********************************************************************/
|
||||
const fn_select_crm_mini_info = function(obj, mbrInnb, mbrDvCd, modalDiv){
|
||||
const element = $(obj); // 클릭된 요소
|
||||
let offset = element.offset();
|
||||
const info = $(obj).attr("data-info");
|
||||
$.ajax({
|
||||
type : 'POST',
|
||||
url : "<c:url value='/crm/mbr/selectMbrCrmInfoPopupForm'/>",
|
||||
data: {
|
||||
mbrDvCd : mbrDvCd,
|
||||
mbrInnb : mbrInnb
|
||||
},
|
||||
success : function(html) {
|
||||
fn_close_modal(info);
|
||||
$(modalDiv).html(html);
|
||||
|
||||
$("#" + info).css({
|
||||
top: offset.top + element.outerHeight(), // 첫 번째 모달의 아래로 설정
|
||||
left: offset.left-150,
|
||||
width: $("#" + info).width() + 50,
|
||||
zIndex: 9998 // 첫 번째 모달보다 위에 표시되도록 설정
|
||||
});
|
||||
$("#" + info).show();
|
||||
}
|
||||
});
|
||||
};
|
||||
/**********************************************************************
|
||||
* CMR 레이어 팝업 닫기 버튼 클릭 이벤트
|
||||
**********************************************************************/
|
||||
$(document).on('click', '.mini-info-content__close', function(e) {
|
||||
e.preventDefault();
|
||||
$(this).closest(".mini-info-content").hide();
|
||||
});
|
||||
|
||||
|
||||
/*****************************************************************
|
||||
* 회원 crm정보 모달 : 상담 등록 이동
|
||||
****************************************************************/
|
||||
const fn_move_crm_cnslt = function(mbrInnb, mbrDvCd, nmbrMbtlnb, customer_record_key) {
|
||||
console.log("param 확인 : ", mbrInnb, mbrDvCd, customer_record_key);
|
||||
|
||||
let form = $('<form></form>');
|
||||
if(fn_is_empty(mbrDvCd)){//비회원
|
||||
$(form).append($('<input/>', {type:'hidden', name:'mbtlnb', value:nmbrMbtlnb}));
|
||||
$(form).append($('<input/>', {type:'hidden', name:'mbrTyCd', value:'02'}));
|
||||
}else{//회원
|
||||
$(form).append($('<input/>', {type: 'hidden', name: 'mbrInnb', value: mbrInnb}));
|
||||
$(form).append($('<input/>', {type: 'hidden', name: 'mbrDvCd', value: mbrDvCd}));
|
||||
}
|
||||
|
||||
//$(form).append($('<input/>', {type:'hidden', name:'customer_record_key', value:customer_record_key}));
|
||||
|
||||
|
||||
if (window.parent !== window) {
|
||||
console.log("부모 프레임이 있습니다.");
|
||||
|
||||
var uRecordKey = parent.document.ValidForm.Customer_CRecFile.value;
|
||||
console.log('uRecordKey : ' + uRecordKey);
|
||||
$(form).append($('<input/>', {type:'hidden', name:'customer_record_key', value:uRecordKey}));
|
||||
|
||||
} else {
|
||||
console.log("부모 프레임이 없습니다.");
|
||||
}
|
||||
|
||||
|
||||
|
||||
$(form).attr('method', 'post');
|
||||
$(form).attr('action', '<c:url value="/crm/cnslt/selectCnsltDtlsForm"/>');
|
||||
|
||||
$(form).appendTo('body');
|
||||
|
||||
$(form).submit();
|
||||
$(form).remove();
|
||||
};
|
||||
|
||||
const loding = function(isShow) {
|
||||
if(isShow){
|
||||
$('.loadingImg').show();
|
||||
}else{
|
||||
$('.loadingImg').hide();
|
||||
}
|
||||
};
|
||||
/*****************************************************************
|
||||
* 로딩이미지
|
||||
****************************************************************/
|
||||
|
||||
</script>
|
||||
<!--로딩영역-->
|
||||
<div class="loadingImg" style="display:none; position: relative; z-index: 1010;">
|
||||
<div class="loding_popup_wrap"><img src="/mngr/images/loding.gif" alt="loading"></div>
|
||||
</div>
|
||||
Reference in New Issue
Block a user