초기소스
This commit is contained in:
51
src/main/webapp/WEB-INF/views/comm/itrnt/Header.jsp
Normal file
51
src/main/webapp/WEB-INF/views/comm/itrnt/Header.jsp
Normal file
@@ -0,0 +1,51 @@
|
||||
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
|
||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
|
||||
<header class="header">
|
||||
<div class="header__top">
|
||||
<div class="header-left">
|
||||
<div class="header__logo">
|
||||
<a href="/itrnt">
|
||||
<img src="<c:url value="/itrnt/images/logo_default.png"/>" alt="GC ONE 관리자">
|
||||
<span class="header__logo-title">인트라넷</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="header-right">
|
||||
<button class="header-right__user-info">
|
||||
<i class="icon icon_user-info"></i>
|
||||
<c:out value="${userNm}"/>님
|
||||
</button>
|
||||
<button class="header-right__logout" onclick="location.href='/logout'">
|
||||
<i class="icon icon_logout"></i>
|
||||
로그아웃
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="header__bottom">
|
||||
<nav class="header-nav">
|
||||
<div class="header-nav__right">
|
||||
<ul>
|
||||
<c:if test="${!empty topMenuList}">
|
||||
<c:forEach var="topMenuList" items="${topMenuList.menuList}" varStatus="status">
|
||||
<c:set var="topMenuCd" value="${sessionScope.topMenuCd}" />
|
||||
<li <c:if test="${topMenuCd eq topMenuList.menuCd}"> class="current" </c:if>>
|
||||
<a href="javascript:void(0)" onclick="setTopMenuCode('<c:out value="${topMenuList.menuCd}"/>','<c:out value="${topMenuList.url}"/>')"><c:out value ="${topMenuList.menuNm}"/></a>
|
||||
</li>
|
||||
</c:forEach>
|
||||
</c:if>
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
function setTopMenuCode(topMenuCd, topMenuUrl) {
|
||||
document.cookie = "topMenuCd=" + topMenuCd + "; path=/itrnt";
|
||||
document.cookie = "leftMenuCd=" + "" + "; path=/itrnt";
|
||||
document.cookie = "upperMenuCd=" + "" + "; path=/itrnt";
|
||||
document.cookie = "topMenuUrl=" + topMenuUrl + "; path=/itrnt";
|
||||
document.cookie = "checkMenu=Y" + "; path=/itrnt";
|
||||
window.location.href = topMenuUrl;
|
||||
}
|
||||
</script>
|
||||
225
src/main/webapp/WEB-INF/views/comm/itrnt/Include.jsp
Normal file
225
src/main/webapp/WEB-INF/views/comm/itrnt/Include.jsp
Normal file
@@ -0,0 +1,225 @@
|
||||
<%@ 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 : 인트라넷 CSS 및 JS 공통 include
|
||||
Modification Information
|
||||
|
||||
수정일 수정자 수정내용
|
||||
------- -------- ---------------------------
|
||||
2024-03-18 유재현 최초 생성
|
||||
--%>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>GC ONE 인트라넷</title>
|
||||
|
||||
<%--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>
|
||||
<!-- CK editor -->
|
||||
<script src='/ckeditor/ckeditor.js' data-cke-editor="editor"></script>
|
||||
<script src='/ckeditor/uploadAdapter.js' data-cke-editor="editor"></script>
|
||||
<link rel="stylesheet" href="/ckeditor/content.css">
|
||||
<%-- CK editor 적용 시 width 설정 --%>
|
||||
|
||||
<%--파비콘--%>
|
||||
<link rel="icon" type="image/png" href="\assets\favicon\gcone.ico">
|
||||
|
||||
<!-- CSS -->
|
||||
<link rel="stylesheet" href="/itrnt/css/style.css">
|
||||
<link rel="stylesheet" href="/itrnt/vendor/jquery-nice-select/nice-select.css">
|
||||
<link rel="stylesheet" href="/itrnt/vendor/jquery-ui/jquery-ui.min.css">
|
||||
<link rel="stylesheet" href="/itrnt/vendor/jquery-ui/jquery-ui.structure.css">
|
||||
<link rel="stylesheet" href="/itrnt/vendor/jquery-modal/jquery.modal.min.css">
|
||||
<link rel="stylesheet" href="<c:url value='/itrnt/vendor/time-picker/timepicker.css'/>">
|
||||
<link rel="stylesheet" href="<c:url value='/itrnt/vendor/dropzone/dropzone.min.css'/>">
|
||||
<link rel="stylesheet" href="<c:url value='/itrnt/vendor/jstree/themes/default/style.min.css'/>">
|
||||
|
||||
<!-- JS -->
|
||||
<script src="/itrnt/vendor/jquery-3.7.1.min.js"></script>
|
||||
<script src="/itrnt/vendor/jquery-nice-select/jquery.nice-select.min.js"></script>
|
||||
<script src="/itrnt/vendor/jquery-ui/jquery-ui.min.js"></script>
|
||||
<script src="/itrnt/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='/js/fileupload_comm.js'/>"></script>
|
||||
<script src="<c:url value='/itrnt/vendor/tablednd/jquery.tablednd.1.0.5.min.js'/>"></script>
|
||||
<script src="<c:url value='/itrnt/vendor/time-picker/timepicker.min.js'/>"></script>
|
||||
<script src="<c:url value='/itrnt/vendor/tablednd/jquery.tablednd.1.0.5.min.js'/>"></script>
|
||||
<script src="<c:url value='/itrnt/vendor/dropzone/dropzone.min.js'/>"></script>
|
||||
<script src="<c:url value='/itrnt/vendor/jstree/jstree.min.js'/>"></script>
|
||||
<script src="<c:url value='/itrnt/vendor/chart.js/chart.umd.min.js'/>"></script>
|
||||
<script src="<c:url value='/itrnt/vendor/emoji-mart/browser.js'/>"></script>
|
||||
<script src="<c:url value='/jchartfx/js/jchartfx.system.js'/>"></script>
|
||||
<script src="<c:url value='/jchartfx/js/jchartfx.coreVector.js'/>"></script>
|
||||
|
||||
|
||||
<script src="<c:url value='/itrnt/js/script.js'/>" defer></script> <!-- itrnt 스크립트 함수 -->
|
||||
<script src="<c:url value='/js/gcone.js'/>"></script> <!-- 공통 스크립트 함수 -->
|
||||
|
||||
<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();
|
||||
loding(false);
|
||||
}, 500);
|
||||
},
|
||||
error: function (data) {
|
||||
$("#overlay").fadeOut();
|
||||
loding(false);
|
||||
|
||||
console.log("data");
|
||||
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); //vo 에러메시지 띄움
|
||||
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 {
|
||||
console.log("here 1");
|
||||
if (data.responseJSON.resBody.result) {
|
||||
alert(data.responseJSON.resBody.result);
|
||||
} else {
|
||||
alert('<spring:message code="error.ajax"/>');
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
console.log("here 2");
|
||||
alert('<spring:message code="error.ajax"/>');
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
<script>
|
||||
/*****************************************************************
|
||||
* 로딩이미지
|
||||
****************************************************************/
|
||||
$(document).on("click", '.loading', function(){
|
||||
loding(true);
|
||||
});
|
||||
|
||||
const loding = function(isShow) {
|
||||
if(isShow){
|
||||
$('.loadingImg').show();
|
||||
}else{
|
||||
$('.loadingImg').hide();
|
||||
}
|
||||
};
|
||||
|
||||
/**********************************************************************
|
||||
* 회원 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='/itrnt/crm/mbr/selectMbrCrmInfoPopupForm'/>",
|
||||
data: {
|
||||
mbrDvCd : mbrDvCd,
|
||||
mbrInnb : mbrInnb
|
||||
},
|
||||
success : function(html) {
|
||||
fn_close_modal(info);
|
||||
$(modalDiv).html(html);
|
||||
|
||||
const modal = $("#" + info);
|
||||
const modalWidth = modal.outerWidth(); // 모달 너비
|
||||
const buttonWidth = element.outerWidth(); // 버튼 너비
|
||||
const buttonHeight = element.outerHeight(); // 버튼 높이
|
||||
const viewportWidth = $(window).width(); // 화면 너비
|
||||
|
||||
// 모달의 기본 위치: 버튼 아래, 버튼 오른쪽 끝 정렬
|
||||
let leftPosition = offset.left + buttonWidth - modalWidth;
|
||||
let topPosition = offset.top + buttonHeight; // 버튼 바로 아래
|
||||
|
||||
// 화면 경계를 넘어가면 조정
|
||||
if (leftPosition < 0) {
|
||||
leftPosition = offset.left; // 화면 왼쪽으로 넘어가면 버튼 왼쪽 정렬
|
||||
} else if (leftPosition + modalWidth > viewportWidth) {
|
||||
leftPosition = offset.left + buttonWidth - modalWidth; // 화면 오른쪽 경계
|
||||
}
|
||||
|
||||
modal.css({
|
||||
top: topPosition, // 버튼 아래로 위치
|
||||
left: leftPosition, // 오른쪽 끝에 맞추거나 화면 경계에 조정
|
||||
position: 'absolute', // 화면 기준 고정 위치
|
||||
zIndex: 9998 // 화면 위로 표시
|
||||
});
|
||||
|
||||
modal.show();
|
||||
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**********************************************************************
|
||||
* 회원 crm정보 모달 호출(공통)
|
||||
* 파라미터 설명 {
|
||||
* obj : 호출버튼 객체
|
||||
* mbrInnb : 회원 고유번호
|
||||
* mbrDvCd : 회원 구분코드
|
||||
* modalDiv : 모달 selector
|
||||
* }
|
||||
**********************************************************************/
|
||||
const fn_move_crm = function(mbrInnb, mbrDvCd){
|
||||
let form = $('<form></form>');
|
||||
$(form).append($('<input/>', {type: 'hidden', name: 'mbrInnb', value: mbrInnb}));
|
||||
$(form).append($('<input/>', {type: 'hidden', name: 'mbrDvCd', value: mbrDvCd}));
|
||||
|
||||
$(form).attr('method', 'post');
|
||||
$(form).attr('action', '/itrnt/crm/mbr/selectCstmrInfoInqire');
|
||||
|
||||
$(form).appendTo('body');
|
||||
|
||||
$(form).submit();
|
||||
$(form).remove();
|
||||
};
|
||||
</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>
|
||||
82
src/main/webapp/WEB-INF/views/comm/itrnt/Left.jsp
Normal file
82
src/main/webapp/WEB-INF/views/comm/itrnt/Left.jsp
Normal file
@@ -0,0 +1,82 @@
|
||||
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
|
||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
|
||||
<aside class="side-nav">
|
||||
<nav class="side-nav__inner">
|
||||
<ul class="depth2">
|
||||
|
||||
<c:if test="${!empty leftMenuList}">
|
||||
<c:forEach var="leftMenuList" items="${leftMenuList.menuList}" varStatus="status">
|
||||
<!-- 선택한 TOP메뉴코드 -->
|
||||
<c:set var="topMenuCd" value="${sessionScope.topMenuCd}" />
|
||||
<!-- 선택한 LEFT메뉴코드 -->
|
||||
<c:set var="leftMenuCd" value="${sessionScope.leftMenuCd}" />
|
||||
<!-- 선택한 LEFT메뉴의 상위 코드 -->
|
||||
<c:set var="upperMenuCd" value="${sessionScope.upperMenuCd}" />
|
||||
|
||||
<!-- 2뎁스의 메뉴 조회 -->
|
||||
<c:if test="${'2' eq leftMenuList.menuDepth}">
|
||||
<c:choose>
|
||||
<%-- 2뎁스 밑에 3뎁스가 있는 경우 Sample --%>
|
||||
<c:when test="${'1' eq leftMenuList.nextDepth3}">
|
||||
<c:set var="depth2MenuCd" value="${leftMenuList.menuCd}" />
|
||||
<c:choose>
|
||||
<c:when test="${depth2MenuCd eq upperMenuCd || (status.index eq 0 && empty leftMenuCd)}">
|
||||
<li class="has-sub opened">
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<li class="has-sub">
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
<div class="depth2-title"><c:out value ="${leftMenuList.menuNm}"/></div>
|
||||
<ul class="depth3">
|
||||
</c:when>
|
||||
<%-- 2뎁스 밑에 3뎁스가 없는 경우 Sample --%>
|
||||
<c:otherwise>
|
||||
<c:choose>
|
||||
<c:when test="${leftMenuCd eq leftMenuList.menuCd || (status.index eq 0 && empty leftMenuCd)}">
|
||||
<li class="current">
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<li>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
<a class="depth2-title" href="javascript:void(0)" onclick="fn_select_left('<c:out value="${topMenuCd}"/>','<c:out value="${leftMenuList.menuCd}"/>','<c:out value="${leftMenuList.upperMenuCd}"/>', '<c:out value="${leftMenuList.url}"/>')"><c:out value ="${leftMenuList.menuNm}"/></a>
|
||||
</li>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</c:if>
|
||||
|
||||
<!-- 3뎁스의 메뉴 조회 -->
|
||||
<c:if test="${'3' eq leftMenuList.menuDepth}">
|
||||
<c:choose>
|
||||
<c:when test="${leftMenuCd eq leftMenuList.menuCd || (status.index eq 1 && empty leftMenuCd)}">
|
||||
<li class="current">
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<li>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
<a href="javascript:void(0)" onclick="fn_select_left('<c:out value="${topMenuCd}"/>','<c:out value="${leftMenuList.menuCd}"/>','<c:out value="${leftMenuList.upperMenuCd}"/>', '<c:out value="${leftMenuList.url}"/>')"><c:out value ="${leftMenuList.menuNm}"/></a>
|
||||
</li>
|
||||
</c:if>
|
||||
|
||||
<!-- 3뎁스가 끝나고 새로운 2뎁스가 시작되면 태그를 닫아준다-->
|
||||
<c:if test="${'1' eq leftMenuList.nextDepth2}">
|
||||
</ul>
|
||||
</li>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
</c:if>
|
||||
</ul>
|
||||
</nav>
|
||||
</aside>
|
||||
<script>
|
||||
function fn_select_left(topMenuCd, leftMenuCd, upperMenuCd, leftMenuUrl) {
|
||||
document.cookie = "topMenuCd=" + topMenuCd + "; path=/itrnt";
|
||||
document.cookie = "leftMenuCd=" + leftMenuCd + "; path=/itrnt";
|
||||
document.cookie = "upperMenuCd=" + upperMenuCd + "; path=/itrnt";
|
||||
document.cookie = "leftMenuUrl=" + leftMenuUrl + "; path=/itrnt";
|
||||
document.cookie = "checkMenu=Y" + "; path=/itrnt";
|
||||
window.location.href = leftMenuUrl;
|
||||
}
|
||||
</script>
|
||||
47
src/main/webapp/WEB-INF/views/comm/itrnt/crm/Header.jsp
Normal file
47
src/main/webapp/WEB-INF/views/comm/itrnt/crm/Header.jsp
Normal file
@@ -0,0 +1,47 @@
|
||||
<%@ 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="spring" uri="http://www.springframework.org/tags" %>
|
||||
<!DOCTYPE html>
|
||||
<html lang="ko">
|
||||
<spring:eval expression="@environment.getProperty('mngrfo.common.fileupload.cdnurl')" var="cdnurl"/>
|
||||
<script>
|
||||
// 현재 창의 이름을 'crmWin'로 설정
|
||||
window.onload = function() {
|
||||
if (!window.name) {
|
||||
window.name = 'crmWin';
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<header class="header">
|
||||
<div class="header__top">
|
||||
<div class="header-left">
|
||||
<div class="header__logo">
|
||||
<a href="/itrnt">
|
||||
<img src="/itrnt/images/logo_default.png" alt="GC ONE 인트라넷" id="crmMainLogo">
|
||||
<span class="header__logo-title">인트라넷CRM</span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="header-searchBar">
|
||||
</div>
|
||||
<ul class="header-crmLink">
|
||||
</ul>
|
||||
</div>
|
||||
<div class="header-right">
|
||||
<div class="header-right__linkContainer">
|
||||
<a class="btn outline xsm" href="/itrnt" title="인트라넷 바로가기" target="itrntWin">
|
||||
<i class="icon icon_headerLaptop"></i>
|
||||
인트라넷 바로가기
|
||||
</a>
|
||||
</div>
|
||||
<div class="header-right__user-info">
|
||||
<c:out value="${userNm}"/>님
|
||||
</div>
|
||||
<button class="header-right__logout" onclick="location.href='/logout'">
|
||||
<i class="icon icon_logout-white"></i>
|
||||
로그아웃
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div id = 'popupDiv'></div>
|
||||
</header>
|
||||
</html>
|
||||
81
src/main/webapp/WEB-INF/views/comm/itrnt/crm/Left.jsp
Normal file
81
src/main/webapp/WEB-INF/views/comm/itrnt/crm/Left.jsp
Normal file
@@ -0,0 +1,81 @@
|
||||
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
|
||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
|
||||
<script>
|
||||
// 메뉴 이동
|
||||
const fn_move_menu = (target) => {
|
||||
let url = $(target).attr("url");
|
||||
if (url) {
|
||||
$("#leftForm").attr("method", "post");
|
||||
$("#leftForm").attr("action", url);
|
||||
$("#leftForm").submit();
|
||||
}
|
||||
};
|
||||
$(document).ready(function () {
|
||||
const accessUri= '<c:out value="${accessUri}"/>';
|
||||
$(".url").each(function (){
|
||||
const url = $(this).attr("url");
|
||||
if(url === accessUri){
|
||||
$(this).closest("li").addClass("current");
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<style>
|
||||
.url{
|
||||
cursor:pointer;
|
||||
}
|
||||
</style>
|
||||
<aside class="side-nav">
|
||||
<div class="header-fixed">
|
||||
<div class="header-fixed__logo">
|
||||
<a href="/itrnt/index">
|
||||
<span id = "sopmalLogo"><img src="/itrnt/images/logo_default.png" alt="GC ONE 인트라넷"></span>
|
||||
<span class="header__logo-title">GC ONE 인트라넷</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<nav class="side-nav__inner">
|
||||
<ul class="depth2">
|
||||
<li>
|
||||
<a class="depth2-title url" url="/itrnt/crm/mbr/selectCstmrInfoInqire" onclick="fn_move_menu(this);">회원정보</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="depth2-title url" url="/itrnt/crm/ordr/selectMbrOrdrListInqireForm" onclick="fn_move_menu(this);">주문</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="depth2-title url" url="/itrnt/crm/coupon/selectHoldCouponDtlsForm" onclick="fn_move_menu(this);">쿠폰
|
||||
<div class="depth2__number-container">
|
||||
<span class="depth2__number comma" id="couponCnt" title="사용가능 쿠폰 수">0</span>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="depth2-title url" url="/itrnt/crm/cnslt/selectCnsltDtlsForm" onclick="fn_move_menu(this);">상담</a>
|
||||
</li>
|
||||
<li class="upper-line">
|
||||
<a class="depth2-title url" url="/itrnt/crm/mlg/selectMlgDtlsForm" id="mlgBtn" onclick="fn_move_menu(this);">마일리지 내역
|
||||
<div class="depth2__number-container">
|
||||
<span class="depth2__number comma" id="totMlg">0</span>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="depth2-title url" url="/itrnt/crm/mlg/selectCashDtlsForm"
|
||||
onclick="fn_move_menu(this);">GC 머니 내역
|
||||
<div class="depth2__number-container">
|
||||
<span class="depth2__number comma" id="cashAmt">0</span>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="side-nav__crmBtn-container">
|
||||
<a class="side-nav__crm-btn light url" url="/itrnt/crm/mbr/selectMbrInfoUpdtInqire" onclick="fn_move_menu(this);">회원정보 수정</a>
|
||||
</div>
|
||||
</nav>
|
||||
</aside>
|
||||
<form id = "leftForm">
|
||||
<input type="hidden" id="leftMbrInnb" name="mbrInnb" value="<c:out value="${cnsltVO.mbrInnb}"/>"/>
|
||||
<input type="hidden" id="leftMbrDvCd" name="mbrDvCd" value="<c:out value="${cnsltVO.mbrDvCd}"/>"/>
|
||||
<input type="hidden" id="leftMbtlnb" name="mbtlnb" value="<c:out value="${cnsltVO.mbtlnb}"/>"/>
|
||||
<input type="hidden" id="leftSopmalCd" name="sopmalCd" value="<c:out value="${cnsltVO.sopmalCd}"/>"/>
|
||||
</form>
|
||||
147
src/main/webapp/WEB-INF/views/comm/itrnt/crm/Right.jsp
Normal file
147
src/main/webapp/WEB-INF/views/comm/itrnt/crm/Right.jsp
Normal file
@@ -0,0 +1,147 @@
|
||||
<%@ page import="java.util.Date" %>
|
||||
<%@ 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"%>
|
||||
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
|
||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
||||
<%@ taglib prefix="ui" uri="http://www.winbit.kr/ctl/ui"%>
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function() {
|
||||
|
||||
let mbrInnb = '${cnsltVO.mbrInnb}';
|
||||
let mbrDvCd = '${cnsltVO.mbrDvCd}';
|
||||
|
||||
fn_regist_crm_cnslt_form(mbrInnb, mbrDvCd);
|
||||
});
|
||||
|
||||
/******************************************************
|
||||
* CRM 상담 등록 폼
|
||||
*******************************************************/
|
||||
const fn_regist_crm_cnslt_form = function(mbrInnb, mbrDvCd) {
|
||||
console.log("상담 등록 폼");
|
||||
let dataStr;
|
||||
$.ajax({
|
||||
type: "post",
|
||||
url : "<c:url value="/itrnt/crm/cnslt/selectCnsltRegistPopupForm"/>",
|
||||
data : {
|
||||
mbrInnb : mbrInnb,
|
||||
mbrDvCd : mbrDvCd
|
||||
},
|
||||
success:function(resultHtml) {
|
||||
$('#crmRegistPopupFormDiv').html(resultHtml);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
|
||||
/* ********************************************************
|
||||
* 대분류 선태값에 따른 중분류 생성
|
||||
******************************************************** */
|
||||
const fn_select_lrgeClCd = function(cdValue, target) {
|
||||
console.log("cdValue : ", cdValue);
|
||||
let dataStr;
|
||||
$.ajax({
|
||||
type: "post",
|
||||
url : "<c:url value="/itrnt/crm/cnslt/selectCnsltRegistPopupFormCmmnCdArray"/>",
|
||||
data : dataStr,
|
||||
success:function(data) {
|
||||
console.log("data : ", data);
|
||||
let jsonData;
|
||||
|
||||
switch (cdValue) {
|
||||
case '01':
|
||||
jsonData = JSON.parse(data.resBody.result).middlClCdList01;
|
||||
break;
|
||||
case '02':
|
||||
jsonData = JSON.parse(data.resBody.result).middlClCdList02;
|
||||
break;
|
||||
case '03':
|
||||
jsonData = JSON.parse(data.resBody.result).middlClCdList03;
|
||||
break;
|
||||
case '04':
|
||||
jsonData = JSON.parse(data.resBody.result).middlClCdList04;
|
||||
break;
|
||||
case '05':
|
||||
jsonData = JSON.parse(data.resBody.result).middlClCdList05;
|
||||
break;
|
||||
case '06':
|
||||
jsonData = JSON.parse(data.resBody.result).middlClCdList06;
|
||||
break;
|
||||
case '07':
|
||||
jsonData = JSON.parse(data.resBody.result).middlClCdList07;
|
||||
break;
|
||||
case '08':
|
||||
jsonData = JSON.parse(data.resBody.result).middlClCdList08;
|
||||
break;
|
||||
}
|
||||
console.log("jsonData : ", jsonData);
|
||||
|
||||
fn_create_selectBox(jsonData, target);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
/* ********************************************************
|
||||
* 중분류 셀렉트 생성
|
||||
******************************************************** */
|
||||
function fn_create_selectBox(jsonData, tartget) {
|
||||
$('#middlClCdDiv').empty();
|
||||
console.log("jsonData f : ", jsonData);
|
||||
let trClone = '';
|
||||
trClone = '<select name="middlCl" title="중분류">'
|
||||
+ '<option value="" selected disabled>선택</option>'
|
||||
|
||||
for (let i = 0; i < jsonData.length; i++) {
|
||||
trClone +=' <option value="' + jsonData[i].cd + '">' + jsonData[i].cdNm + '</option>';
|
||||
}
|
||||
|
||||
trClone += '</select>';
|
||||
|
||||
$('#middlClCdDiv').append(trClone);
|
||||
$('#middlClCdDiv > select').niceSelect();
|
||||
}
|
||||
|
||||
|
||||
/* ********************************************************
|
||||
* 상담 등록
|
||||
******************************************************** */
|
||||
const fn_regist = function() {
|
||||
const data = $('#registForm').serialize();
|
||||
console.log("data : ", data);
|
||||
if (confirm('상담을 <spring:message code="confirm.common.insert"/>')) {
|
||||
$.ajax({
|
||||
type: 'post',
|
||||
url: '<c:url value="/itrnt/crm/cnslt/insertCnsltRegist"/>',
|
||||
data: data,
|
||||
success: function (result) {
|
||||
result = JSON.parse(result.resBody.result);
|
||||
console.log(result);
|
||||
if(result.result > 0){
|
||||
alert('<spring:message code="success.common.insert"/>');
|
||||
$(".url").each(function () {//상담 폼으로 이동
|
||||
if ($(this).attr("url") === '/itrnt/crm/cnslt/selectCnsltDtlsForm') {
|
||||
$(this).click();
|
||||
}
|
||||
});
|
||||
}else{
|
||||
alert('<spring:message code="fail.common.insert"/>');
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
const fn_only_num = function(target) {
|
||||
//숫자만 허용
|
||||
target.val(target.val().replace(/[^0-9]/g, ''));
|
||||
}
|
||||
</script>
|
||||
|
||||
<div id="crmRegistPopupFormDiv">
|
||||
|
||||
</div>
|
||||
Reference in New Issue
Block a user