웹취약점, 모의해킹 조치

This commit is contained in:
USER
2022-08-24 14:04:30 +09:00
parent d0e0ef7020
commit a2273154d1
92 changed files with 1193 additions and 1246 deletions

View File

@@ -1807,3 +1807,84 @@ textarea:focus{
.datepicker .datepicker-calender .disabled a{color:#c9c9c9 !important;} .datepicker .datepicker-calender .disabled a{color:#c9c9c9 !important;}
/*# sourceMappingURL=style.css.map */ /*# sourceMappingURL=style.css.map */
/* loadingPage */
.loadingDimmed {
width: 100vw;
height: 100vh;
position: fixed;
top: 0;
left: 0;
background: rgba(0, 0, 0, 0.2);
z-index: 400;
}
.sp-3balls,
.sp-3balls:before,
.sp-3balls:after {
display: inline-block;
width: 18px;
height: 18px;
background: #946dc2;
border-radius: 100%;
}
.sp-3balls {
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
z-index: 1000;
opacity: 1;
animation: spScaleAlpha 2s infinite linear;
}
.sp-3balls:before,
.sp-3balls:after {
content: "";
position: absolute;
opacity: 0.25;
}
.sp-3balls:before {
right: 30px;
animation: spScaleAlphaBefore 2s infinite linear;
}
.sp-3balls:after {
left: 30px;
animation: spScaleAlphaAfter 2s infinite linear;
}
@keyframes spScaleAlpha {
0% {
opacity: 1;
}
33% {
opacity: 0.25;
}
66% {
opacity: 0.25;
}
100% {
opacity: 1;
}
}
@keyframes spScaleAlphaBefore {
33% {
opacity: 0.25;
}
66% {
opacity: 1;
}
100% {
opacity: 0.25;
}
}
@keyframes spScaleAlphaAfter {
0% {
opacity: 0.25;
}
33% {
opacity: 1;
}
66% {
opacity: 0.25;
}
}

View File

@@ -7,7 +7,8 @@ const consts = {
tokenPart1: 'JwtPart1', tokenPart1: 'JwtPart1',
tokenPart2: 'JwtPart2', tokenPart2: 'JwtPart2',
tokenPart3: 'JwtPart3', tokenPart3: 'JwtPart3',
tokenPart4: 'JwtPart4' tokenPart4: 'JwtPart4',
authToken: null
} }
export { environment, testProp, consts }; export { environment, testProp, consts };

View File

@@ -20,7 +20,8 @@ const authInterceptor = config => {
// cookie, header 등에 자격정보 설정이 필요한 api는 true 설정으로 호출해야 하고 // cookie, header 등에 자격정보 설정이 필요한 api는 true 설정으로 호출해야 하고
// 자격정보 설정이 필요없는 api는 withCredentials=false 설정으로 호출해야 한다. // 자격정보 설정이 필요없는 api는 withCredentials=false 설정으로 호출해야 한다.
// config.withCredentials = !config.url.startsWith('/api/public/'); // config.withCredentials = !config.url.startsWith('/api/public/');
console.log("Test Url : "+ config.url); // console.log("Test Url : "+ config.url);
/*if(config.url == '/api/auth/login'){ /*if(config.url == '/api/auth/login'){
config.baseURL = "http://localhost:3000"; config.baseURL = "http://localhost:3000";
}*/ }*/
@@ -28,17 +29,27 @@ const authInterceptor = config => {
}; };
const tokenInterceptor = config => { const tokenInterceptor = config => {
if(tokenSvc.getAuthorization(consts.tokenPart1) != null){ // var authToken = tokenSvc.getAuthToken();
config.headers.Authorization = tokenSvc.getAuthorization(consts.tokenPart1); // console.log(this.$store);
//console.log("getToken : "+config.headers.Authorization); // alert('tokenInterceptor'+authToken);
//config.headers.Authorization = tokenSvc.getToken();
// if(tokenSvc.getAuthorization(consts.tokenPart1) != null){
// //config.headers.Authorization = tokenSvc.getAuthorization(consts.tokenPart1);
// //console.log("getToken : "+config.headers.Authorization);
// //config.headers.Authorization = tokenSvc.getToken();
// }
console.log('http : ',sessionStorage.authToken);
if(sessionStorage.authToken != null) {
config.headers.Authorization = 'Bearer '+ sessionStorage.authToken;
} }
return config; return config;
} }
const loggerInterceptor = config => { const loggerInterceptor = config => {
//console.log('testProp:', testProp); //console.log('testProp:', testProp);
//console.log('request url:', config.url, 'params:', config.data); console.log('request url:', config.url, 'params:', config.data, 'config: ', config);
return config; return config;
}; };
@@ -48,46 +59,65 @@ const loadingLayer = (type, config) => {
get: httpClient.get(url, { params: { ... }, headers: {"show-layer": "Yes"} }) // in 2nd property get: httpClient.get(url, { params: { ... }, headers: {"show-layer": "Yes"} }) // in 2nd property
post: httpClient.post(url, params, { headers: {"show-layer": "Yes"} }) // 3rd property post: httpClient.post(url, params, { headers: {"show-layer": "Yes"} }) // 3rd property
*/ */
if (config.headers['Show-Layer'] == 'Yes') {
if (type) {
loadOverlap.push('add');
} else {
loadOverlap.pop();
}
if (loadOverlap.length > 0) { // if (config.headers['Show-Layer'] == 'Yes') {
// if (type) {
// loadOverlap.push('add');
// } else {
// loadOverlap.pop();
// }
// if (loadOverlap.length > 0) {
// document.querySelector('html > body').style.overflow = 'hidden'; // 스크롤 block
// document.getElementsByClassName('loading_layer')[0].style.display = 'block';
// } else {
// document.querySelector('html > body').style.removeProperty('overflow'); // 스크롤 allow
// document.getElementsByClassName('loading_layer')[0].style.display = 'none';
// }
// }
if(type){
document.querySelector('html > body').style.overflow = 'hidden'; // 스크롤 block document.querySelector('html > body').style.overflow = 'hidden'; // 스크롤 block
document.getElementsByClassName('loading_layer')[0].style.display = 'block'; document.getElementsByClassName('loadingDimmed')[0].style.display = 'block';
} else { document.getElementsByClassName('sp-3balls')[0].style.display = 'block';
}else{
document.querySelector('html > body').style.removeProperty('overflow'); // 스크롤 allow document.querySelector('html > body').style.removeProperty('overflow'); // 스크롤 allow
document.getElementsByClassName('loading_layer')[0].style.display = 'none'; document.getElementsByClassName('loadingDimmed')[0].style.display = 'none';
} document.getElementsByClassName('sp-3balls')[0].style.display = 'none';
} }
}; };
/*const loadingLayerInterceptor = config => { const urlInterceptor = config => {
if(sessionStorage.fromUrl != null){
config.params.fromUrl = sessionStorage.fromUrl;
}
return config;
}
const loadingLayerInterceptor = config => {
loadingLayer(true, config); loadingLayer(true, config);
return config; return config;
};*/ };
/** Adding the request interceptors */ /** Adding the request interceptors */
httpClient.interceptors.request.use(authInterceptor); httpClient.interceptors.request.use(authInterceptor);
httpClient.interceptors.request.use(tokenInterceptor); httpClient.interceptors.request.use(tokenInterceptor);
httpClient.interceptors.request.use(urlInterceptor);
httpClient.interceptors.request.use(loggerInterceptor); httpClient.interceptors.request.use(loggerInterceptor);
//httpClient.interceptors.request.use(loadingLayerInterceptor); httpClient.interceptors.request.use(loadingLayerInterceptor);
/** Adding the response interceptors */ /** Adding the response interceptors */
httpClient.interceptors.response.use( httpClient.interceptors.response.use(
response => { response => {
//loadingLayer(false, response.config); loadingLayer(false, response.config);
console.log('response status:', response.status, 'data:', response.data); console.log('response status:', response.status, 'data:', response.data);
return response; return response;
}, },
error => { error => {
console.log(error); console.log(error);
//alert(error);
delete sessionStorage.authToken;
if(error.message === 'Network Error'){ if(error.message === 'Network Error'){
alert('네트워크 오류가 발생했습니다. 잠시 후 다시 시도해주세요.'); alert('네트워크 오류가 발생했습니다. 잠시 후 다시 시도해주세요.');
tokenSvc.removeToken(); // tokenSvc.removeToken();
window.top.location.href = '/login'; window.top.location.href = '/login';
} }
if (error.response != undefined && error.response != null) loadingLayer(false, error.response.config); if (error.response != undefined && error.response != null) loadingLayer(false, error.response.config);
@@ -98,17 +128,18 @@ httpClient.interceptors.response.use(
return Promise.reject(error); return Promise.reject(error);
}else if(error.response.status == 401){ }else if(error.response.status == 401){
alert('세션이 만료되었습니다.'); alert('세션이 만료되었습니다.');
tokenSvc.removeToken(); // tokenSvc.removeToken();
window.top.location.href = '/login'; window.top.location.href = '/login';
} else if (error.response.status == 418) { } else if (error.response.status == 418) {
tokenSvc.removeToken(); // tokenSvc.removeToken();
alert('세션이 만료되었습니다.');
window.top.location.href = '/login'; window.top.location.href = '/login';
}else if (error.response.status == 500) { }else if (error.response.status == 500) {
if (error.response.data != null && error.response.data.message == '511 NETWORK_AUTHENTICATION_REQUIRED') { if (error.response.data != null && error.response.data.message == '511 NETWORK_AUTHENTICATION_REQUIRED') {
alert('웹템플릿 IP가 브랜드포털에 등록이 필요합니다. 기술지원에 문의해주세요.'); alert('웹템플릿 IP가 브랜드포털에 등록이 필요합니다. 기술지원에 문의해주세요.');
return Promise.reject(error); return Promise.reject(error);
} else { } else {
tokenSvc.removeToken(); // tokenSvc.removeToken();
window.top.location.href = '/login'; window.top.location.href = '/login';
} }
} else if (error.response.status == 511) { } else if (error.response.status == 511) {
@@ -120,7 +151,7 @@ httpClient.interceptors.response.use(
// return Promise.reject(error); // return Promise.reject(error);
// } // }
else { else {
alert("else"); // alert("else");
console.log('response error:', error); console.log('response error:', error);
return Promise.reject(error); return Promise.reject(error);
} }

View File

@@ -1,53 +1,28 @@
import * as utils from './utils'; import * as utils from './utils';
import { consts } from './config';
// const KEY_TOKEN = 'access_token';
const tokenSvc = { const tokenSvc = {
getToken() { getToken() {
// return store.getters['login/getToken']; var authToken = sessionStorage.getItem('authToken');
// var payload = sessionStorage.getItem(KEY_TOKEN); if(authToken == null){
var jwtPart1 = utils.getCookie(consts.tokenPart1);
if (!jwtPart1)
return null;
var payload = utils.base64decode(jwtPart1.split('.').pop());
return JSON.parse(payload);
},
removeToken() {
var tokenNm1 = consts.tokenPart1;
var tokenNm2 = consts.tokenPart2;
var tokenNm3 = consts.tokenPart3;
var tokenNm4 = consts.tokenPart4;
document.cookie = tokenNm1+'=; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
document.cookie = tokenNm2+'=; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
document.cookie = tokenNm3+'=; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
document.cookie = tokenNm4+'=; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
},
getAuthorization(tokenKey){
var jwtPart = utils.getCookie(tokenKey);
if(!jwtPart){
return null; return null;
} }
return jwtPart;
var tokenArr = authToken.split('.');
var jwtToken = utils.base64decode(tokenArr[1]);
return JSON.parse(jwtToken);
},
removeToken() {
delete sessionStorage.authToken;
}, },
// saveToken(jwtPart1) { setAuthToken(token){
// if (!jwtPart1) sessionStorage.authToken = token;
// return; },
getAuthToken(){
// var payload = utils.base64decode(jwtPart1.split('.').pop()); var authToken = sessionStorage.authToken;
// console.log('save token:', payload); return authToken;
// // store.commit('login/saveToken', token); }
// sessionStorage.setItem(KEY_TOKEN, payload);
// },
// removeToken() {
// // store.commit('login/removeToken');
// sessionStorage.removeItem(KEY_TOKEN);
// }
}; };
export default tokenSvc; export default tokenSvc;

View File

@@ -46,7 +46,7 @@ const coreUiMixin = {
*/ */
openLayer: function(layerId) { openLayer: function(layerId) {
if (layerId == undefined || layerId == null || layerId == '') { if (layerId == undefined || layerId == null || layerId == '') {
alert('layerId를 설정해 주세요.'); // alert('layerId를 설정해 주세요.');
} else { } else {
this.$emit('changeLayerId', layerId); this.$emit('changeLayerId', layerId);
} }

View File

@@ -33,7 +33,8 @@ export default {
'addTableStyle', // 추가되는 그리드 style 'addTableStyle', // 추가되는 그리드 style
'addTbCls', // 추가되는 테이블 클래스 'addTbCls', // 추가되는 테이블 클래스
'addCls', // 추가되는 클래스 'addCls', // 추가되는 클래스
'totalItems' // 부모창에 표시할 총 컨텐츠 개수 변수 명 (더 좋은 방법 있으면 알려주세요.) 'totalItems', // 부모창에 표시할 총 컨텐츠 개수 변수 명 (더 좋은 방법 있으면 알려주세요.)
'pageRange', // next or pre 이동할 페이지 단위
], ],
components: { components: {
VRuntimeTemplate VRuntimeTemplate
@@ -57,7 +58,9 @@ export default {
colsData: '', colsData: '',
headerData: '', headerData: '',
bodyData: '', bodyData: '',
pagingData: '' pagingData: '',
nextPageRange: 1
}; };
}, },
created() { created() {
@@ -105,6 +108,7 @@ export default {
this.headerData = ''; this.headerData = '';
this.bodyData = ''; this.bodyData = '';
this.pagingData = ''; this.pagingData = '';
this.nextPageRange = 1;
}, },
readData(isKeep) { readData(isKeep) {
if (typeof this.url != undefined && this.url != null && this.url != '') { if (typeof this.url != undefined && this.url != null && this.url != '') {
@@ -126,13 +130,11 @@ export default {
let pageStr = ''; let pageStr = '';
var vm = this; var vm = this;
console.log("grid url >> " + this.url);
httpClient httpClient
//.get(this.url, { params: this.getParams, headers: { 'Show-Layer': 'Yes' }}) //.get(this.url, { params: this.getParams, headers: { 'Show-Layer': 'Yes' }})
.post(this.url, this.getParams, {headers: { 'Show-Layer': 'Yes' }}) .post(this.url, this.getParams, {headers: { 'Show-Layer': 'Yes' }})
.then(response => { .then(response => {
let resp = response.data; let resp = response.data;
console.log(resp);
//if (resp != null && resp.result == true) { //if (resp != null && resp.result == true) {
if (resp != null && resp.retCode == '0000') { if (resp != null && resp.retCode == '0000') {
let data = resp.data; let data = resp.data;
@@ -153,6 +155,9 @@ export default {
vm.currentIndex = data.paging.page == 0 ? 1 : data.paging.page; vm.currentIndex = data.paging.page == 0 ? 1 : data.paging.page;
vm.totalCount = data.paging.totalCnt; vm.totalCount = data.paging.totalCnt;
pageStr = vm.makePagingView(); pageStr = vm.makePagingView();
if(typeof this.pageRange != 'undefined'){
vm.nextPageRange = this.pageRange;
}
} }
// 조회결과 없음. // 조회결과 없음.
}else if(resp != null && resp.retCode == '1004'){ }else if(resp != null && resp.retCode == '1004'){
@@ -537,53 +542,7 @@ export default {
} }
return str; return str;
}, },
/*
makePagingView() {
let pData = '<div class="paging">';
let totalPage = Math.ceil(this.totalCount / this.curPerPage);
if (totalPage < 1) {
totalPage = 1;
}
let pageGroup = Math.ceil(this.currentIndex / this.pageCount);
let last = pageGroup * this.pageCount;
if (last > totalPage) {
last = totalPage;
}
let first = last - (this.pageCount - 1);
if (first < 1) {
first = 1;
}
let prev = first - 1;
if (prev < 1) {
prev = 1;
}
let next = last + 1;
if (next > totalPage) {
next = totalPage;
}
pData += '<a href="javascript:void(0);" @click="movePage(1)" class="btn_arrow first">처음으로</a>';
pData += '<a href="javascript:void(0);" @click="movePage(' + prev + ')" class="btn_arrow prev">이전으로</a>';
for (var i = first; i <= last; i++) {
let actCls = '';
if (i == this.currentIndex) {
actCls = "class='active'";
}
pData += '<a href="javascript:void(0);" @click="movePage(' + i + ')" ' + actCls + '>' + i + '</a>';
}
pData += '<a href="javascript:void(0);" @click="movePage(' + next + ')" class="btn_arrow next">다음으로</a>';
pData +=
'<a href="javascript:void(0);" @click="movePage(' + totalPage + ')" class="btn_arrow last">마지막으로</a>';
pData += '</div>';
return pData;
},
*/
makePagingView() { makePagingView() {
let pData = '<div class="pagination">'; let pData = '<div class="pagination">';
@@ -592,8 +551,8 @@ export default {
totalPage = 1; totalPage = 1;
} }
let pageGroup = Math.ceil(this.currentIndex / this.pageCount); let pageGroup = Math.ceil(this.currentIndex / this.pageCount);
let last = pageGroup * this.pageCount; let last = pageGroup * this.pageCount;
// let last = 1;
if (last > totalPage) { if (last > totalPage) {
last = totalPage; last = totalPage;
} }
@@ -602,11 +561,15 @@ export default {
if (first < 1) { if (first < 1) {
first = 1; first = 1;
} }
let prev = first - 1; // let prev = first - 1;
let prev = parseInt(this.currentIndex) - this.nextPageRange;
if (prev < 1) { if (prev < 1) {
prev = 1; prev = 1;
} }
let next = last + 1;
// let next = last + 1;
let next = parseInt(this.currentIndex) + this.nextPageRange;
if (next > totalPage) { if (next > totalPage) {
next = totalPage; next = totalPage;
} }

View File

@@ -36,8 +36,6 @@ export default {
} }
}, },
created() { created() {
// console.log(this.$store["login/isLogin"])
// this.$store.getters.getCounter
const loggedIn = !!tokenSvc.getToken(); const loggedIn = !!tokenSvc.getToken();
if(!loggedIn){ if(!loggedIn){
window.top.location.href = '/login'; window.top.location.href = '/login';

View File

@@ -48,9 +48,7 @@
} }
}, },
created() { created() {
console.log('created Lnb');
console.log('node[0]:', this.tree.nodes[0].label);
console.log('role:', tokenSvc.getToken().principal.authorities[0].authority);
} }
}; };
</script> </script>

View File

@@ -252,7 +252,6 @@ export default {
methods: { methods: {
//모달 켜기 //모달 켜기
ModalOpen(target){ ModalOpen(target){
console.log("ModalOpen");
var dimmed = document.getElementsByClassName('dimmed'); var dimmed = document.getElementsByClassName('dimmed');
var wrap = document.getElementsByClassName('popup-wrap'); var wrap = document.getElementsByClassName('popup-wrap');
var obj = document.getElementsByClassName(target); var obj = document.getElementsByClassName(target);

View File

@@ -82,16 +82,13 @@ export default {
setMenuData() { setMenuData() {
api.menus().then(response => { api.menus().then(response => {
const rootMenu = response.data.data; const rootMenu = response.data.data;
// console.log(rootMenu);
if (rootMenu != null && rootMenu.children != null && rootMenu.children.length > 0) { if (rootMenu != null && rootMenu.children != null && rootMenu.children.length > 0) {
this.tempList = rootMenu.children; this.tempList = rootMenu.children;
var nowUrl = this.$route.fullPath; var nowUrl = this.$route.fullPath;
// console.log('path : '+nowUrl);
for(var i=0; i<this.tempList.length; i++){ for(var i=0; i<this.tempList.length; i++){
var menuNo = this.tempList[i].menuNo; var menuNo = this.tempList[i].menuNo;
// console.log('menuNo : '+menuNo);
var classNm = ''; var classNm = '';
switch(menuNo){ switch(menuNo){
case 1001 : classNm = 'customer'; case 1001 : classNm = 'customer';
@@ -148,19 +145,15 @@ export default {
classNm += ' is-current'; classNm += ' is-current';
} }
// console.log('classNm : '+classNm);
this.tempList[i].classNm = classNm; this.tempList[i].classNm = classNm;
//console.log(classNm);
} }
this.menuList = rootMenu.children; this.menuList = rootMenu.children;
} else { } else {
window.top.location.href = '/'; window.top.location.href = '/';
// this.isLogin = false;
this.menuList = null; this.menuList = null;
} }
}).catch(rsponse => { }).catch(rsponse => {
// this.isLogin = false;
this.menuList = null; this.menuList = null;
}) })
@@ -175,7 +168,6 @@ export default {
}, },
reload(){ reload(){
var location = this.$route.fullPath; var location = this.$route.fullPath;
// console.log('reload() >> ' + location)
if (location == "/" || location == "") { if (location == "/" || location == "") {
// nothing // nothing
} else { } else {
@@ -186,7 +178,6 @@ export default {
actionMenu(e){ actionMenu(e){
const menuList = document.querySelectorAll('.main_menu .is-current'); const menuList = document.querySelectorAll('.main_menu .is-current');
console.log(menuList);
if(e.target.classList.contains('menu_target') || e.target.classList.contains('menu_btn')){ if(e.target.classList.contains('menu_target') || e.target.classList.contains('menu_btn')){
const menuListCheck = e.target.parentNode; const menuListCheck = e.target.parentNode;
if(menuListCheck.classList.contains('is-current')){ if(menuListCheck.classList.contains('is-current')){

View File

@@ -180,7 +180,7 @@ export default {
} }
} }
} else if (statusCode == 401 || statusCode == 418) { } else if (statusCode == 401 || statusCode == 418) {
alert('세션이 만료되었습니다.'); // alert('세션이 만료되었습니다.');
window.top.location.href = '/login'; window.top.location.href = '/login';
} else { } else {
window.top.location.href = '/view/error/' + statusCode; window.top.location.href = '/view/error/' + statusCode;

View File

@@ -105,7 +105,7 @@
}, },
clicked: function(v) { clicked: function(v) {
var data = this.$refs.tuiGrid.invoke("getRow", v.rowKey); var data = this.$refs.tuiGrid.invoke("getRow", v.rowKey);
alert("브랜드 아이디(" + data.brId + ") 클릭"); //alert("브랜드 아이디(" + data.brId + ") 클릭");
} }
} }
} }

View File

@@ -48,6 +48,9 @@ export default {
if(response.data.retCode == '0000'){ if(response.data.retCode == '0000'){
this.$store.commit("login/isLogin", false); this.$store.commit("login/isLogin", false);
this.$store.commit("login/isAuthChk", false); this.$store.commit("login/isAuthChk", false);
//loginApi.setToken(null);
this.$store.commit("login/getMenuUrls",[]);
delete sessionStorage.authToken;
this.$router.push({ this.$router.push({
path: "/login" path: "/login"
}); });

View File

@@ -0,0 +1,140 @@
<template>
<!-- <div class="dimmed" @click="calendarCancel();"></div>-->
<div class="datepicker">
<div class="datepicker-head">
<div class="datepicker-btn">
<a href="#" class="datepicker-prev" @click="calendarData(-1)"><span></span></a>
<a href="#" class="datepicker-next" @click="calendarData(1)"><span></span></a></div>
<div class="datepicker-title">
<span>{{ year }}.</span>
<span>{{ month }}</span>
</div>
</div>
<table class="datepicker-calender">
<tbody>
<tr v-for="(date, idx) in dates" :key="idx">
<td v-for="(day, secondIdx) in date"
:key="secondIdx"
:class="{
'disabled': idx === 0 && day >= lastMonthStart || dates.length - 1 === idx && nextMonthStart > day,
'today': day === today && month === currentMonth && year === currentYear
}"
>
<a href="#" @click="selectDay(day)">{{ day }}</a>
</td>
</tr>
</tbody>
</table>
</div>
</template>
<script>
export default {
data() {
return {
dates: [],
currentYear: 0,
currentMonth: 0,
year: 0,
month: 0,
lastMonthStart: 0,
nextMonthStart: 0,
today: 0,
};
},
created() { // 데이터에 접근이 가능한 첫 번째 라이프 사이클
const date = new Date();
this.currentYear = date.getFullYear(); // 이하 현재 년, 월 가지고 있기
this.currentMonth = date.getMonth() + 1;
this.year = this.currentYear;
this.month = this.currentMonth;
this.today = date.getDate(); // 오늘 날짜
this.calendarData();
},
methods: {
calendarData(arg) { // 인자를 추가
if (arg < 0) { // -1이 들어오면 지난 달 달력으로 이동
this.month -= 1;
} else if (arg === 1) { // 1이 들어오면 다음 달 달력으로 이동
this.month += 1;
}
if (this.month === 0) { // 작년 12월
this.year -= 1;
this.month = 12;
} else if (this.month > 12) { // 내년 1월
this.year += 1;
this.month = 1;
}
const [
monthFirstDay,
monthLastDate,
lastMonthLastDate,
] = this.getFirstDayLastDate(this.year, this.month);
this.dates = this.getMonthOfDays(
monthFirstDay,
monthLastDate,
lastMonthLastDate,
);
},
getFirstDayLastDate(year, month) {
const firstDay = new Date(year, month - 1, 1).getDay(); // 이번 달 시작 요일
const lastDate = new Date(year, month, 0).getDate(); // 이번 달 마지막 날짜
let lastYear = year;
let lastMonth = month - 1;
if (month === 1) {
lastMonth = 12;
lastYear -= 1;
}
const prevLastDate = new Date(lastYear, lastMonth, 0).getDate(); // 지난 달 마지막 날짜
return [firstDay, lastDate, prevLastDate];
},
getMonthOfDays(
monthFirstDay,
monthLastDate,
prevMonthLastDate,
) {
let day = 1;
let prevDay = (prevMonthLastDate - monthFirstDay) + 1;
const dates = [];
let weekOfDays = [];
while (day <= monthLastDate) {
if (day === 1) {
// 1일이 어느 요일인지에 따라 테이블에 그리기 위한 지난 셀의 날짜들을 구할 필요가 있다.
for (let j = 0; j < monthFirstDay; j += 1) {
if (j === 0) this.lastMonthStart = prevDay; // 지난 달에서 제일 작은 날짜
weekOfDays.push(prevDay);
prevDay += 1;
}
}
weekOfDays.push(day);
if (weekOfDays.length === 7) {
// 일주일 채우면
dates.push(weekOfDays);
weekOfDays = []; // 초기화
}
day += 1;
}
const len = weekOfDays.length;
if (len > 0 && len < 7) {
for (let k = 1; k <= 7 - len; k += 1) {
weekOfDays.push(k);
}
}
if (weekOfDays.length > 0) dates.push(weekOfDays); // 남은 날짜 추가
this.nextMonthStart = weekOfDays[0]; // 이번 달 마지막 주에서 제일 작은 날짜
return dates;
},
selectDay(day){
const year = this.year
const month = this.month.toString().length < 2 ? '0'+ this.month : this.month
const dd = day.toString().length < 2 ? '0' + day : day;
const getDate = year + '-' + month + '-' + dd
this.$parent.calendarCalbackFnc(getDate);
},
calendarCancel(){
this.$parent.openEndPicker= false
this.$parent.openStartPicker= false
}
},
};
</script>

View File

@@ -99,7 +99,6 @@ export default {
}, },
methods: { methods: {
alertModalOpen(props) { alertModalOpen(props) {
console.log(props)
var dimmed = document.getElementsByClassName('alertCommon'); var dimmed = document.getElementsByClassName('alertCommon');
for (var i = 0; i < dimmed.length; i++) { for (var i = 0; i < dimmed.length; i++) {
dimmed[i].style.display = 'block'; dimmed[i].style.display = 'block';

View File

@@ -86,12 +86,9 @@ export default {
try { try {
const response = await api.subsDetail(this.row); const response = await api.subsDetail(this.row);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
console.log(result.data);
} }
} catch (error) { } catch (error) {
alert("실패 하였습니다.");
} }
}, },
// ID 검색 모달 오픈 // ID 검색 모달 오픈

View File

@@ -221,8 +221,6 @@ export default {
AdminNmPop, AdminNmPop,
}, },
created() { created() {
console.log(this.$route.params.userSeq);
//this.$store.commit("login/isLogin", true);
this.getExcelHeader(); this.getExcelHeader();
if(this.$route.params.userSeq != null){ //리스트에서 상세 호출 if(this.$route.params.userSeq != null){ //리스트에서 상세 호출
this.loginId = this.$route.params.loginId; this.loginId = this.$route.params.loginId;
@@ -246,7 +244,6 @@ export default {
try { try {
const response = await channelMgtApi.channelDetail(this.row); const response = await channelMgtApi.channelDetail(this.row);
const result = response.data; const result = response.data;
console.log(result);
var sndCntTotal = 0; var sndCntTotal = 0;
var sndCntSTotal = 0; var sndCntSTotal = 0;
var sndCntLTotal = 0; var sndCntLTotal = 0;
@@ -256,7 +253,6 @@ export default {
//데이터값이 널이면 오류처리 //데이터값이 널이면 오류처리
for (var i = 0; i < result.data.list.length; i++) { for (var i = 0; i < result.data.list.length; i++) {
console.log('[succCnt]:' + result.data.list[i].succCnt);
sndCntTotal = sndCntTotal + Number(result.data.list[i].sndCnt); sndCntTotal = sndCntTotal + Number(result.data.list[i].sndCnt);
sndCntSTotal = sndCntSTotal + Number(result.data.list[i].sndCntS) sndCntSTotal = sndCntSTotal + Number(result.data.list[i].sndCntS)
sndCntLTotal = sndCntLTotal + Number(result.data.list[i].sndCntL) sndCntLTotal = sndCntLTotal + Number(result.data.list[i].sndCntL)
@@ -324,14 +320,13 @@ export default {
return false; return false;
} }
let today = moment().format('YYYYMMDDHHmmss'); let today = moment().format('YYYYMMDDHHmmss');
const saveFileName = `유치고객발송건수_${today}.xlsx`; const saveFileName = `유치고객발송건수_${today}.xls`;
const data = await this.getExcelDataDown(); const data = await this.getExcelDataDown();
let options = { let options = {
header: this.excelHeader, header: this.excelHeader,
dataOrder: 'header' dataOrder: 'header'
}; };
// console.log(data);
xlsx.export(data.list, saveFileName, options).then(() => { xlsx.export(data.list, saveFileName, options).then(() => {
}); });
}, },
@@ -364,7 +359,6 @@ export default {
this.$router.push({name: 'channelList'}); this.$router.push({name: 'channelList'});
}, },
searchIDPopOpen: function () { searchIDPopOpen: function () {
console.log('>>> serviceId:' + this.serviceId);
var params = { var params = {
"serviceId": this.serviceId, "serviceId": this.serviceId,
"serviceSeq": this.row.userSeq, "serviceSeq": this.row.userSeq,

View File

@@ -248,12 +248,10 @@ export default {
let page = 1; let page = 1;
// 페이지 정보 및 검색 조건 // 페이지 정보 및 검색 조건
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log('getCondition : ' + getCondition);
// store에 저장된 페이지 정보 및 검색 조건을 불러오기 // store에 저장된 페이지 정보 및 검색 조건을 불러오기
let isKeep = false; let isKeep = false;
if (getCondition) { if (getCondition) {
console.log(getCondition.perPage);
this.grid.pagePerRows = getCondition.perPage; this.grid.pagePerRows = getCondition.perPage;
this.grid.params = getCondition.params; this.grid.params = getCondition.params;
page = getCondition.page; page = getCondition.page;
@@ -263,9 +261,6 @@ export default {
}, },
methods: { methods: {
search: function (isKeep) { search: function (isKeep) {
console.log('this.perPageCnt' + this.perPageCnt);
console.log(this.grid.params);
this.grid.params.subsStDt = this.startDate; this.grid.params.subsStDt = this.startDate;
this.grid.params.subsEdDt = this.endDate; this.grid.params.subsEdDt = this.endDate;
this.grid.params.searchType = this.searchType this.grid.params.searchType = this.searchType
@@ -278,7 +273,6 @@ export default {
}, },
sendStoreData: function () { sendStoreData: function () {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -286,7 +280,6 @@ export default {
}); });
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log("getCondition : " + getCondition.perPage);
}, },
async getExcelDataDown() { async getExcelDataDown() {
try { try {
@@ -326,13 +319,10 @@ export default {
const saveFileName = `유치채널현황_${today}.xls`; const saveFileName = `유치채널현황_${today}.xls`;
const data = await this.getExcelDataDown(); const data = await this.getExcelDataDown();
console.log('-------------------------');
console.log(data);
let options = { let options = {
header: this.excelHeader, header: this.excelHeader,
dataOrder: 'header' dataOrder: 'header'
}; };
// console.log(data);
xlsx.export(data.list, saveFileName, options).then(() => { xlsx.export(data.list, saveFileName, options).then(() => {
}); });
}, },
@@ -343,7 +333,6 @@ export default {
}); });
}, },
channelDetail(props) { channelDetail(props) {
console.log(props);
this.row.userId = props.loginId; this.row.userId = props.loginId;
this.row.userSeq = props.userSeq; this.row.userSeq = props.userSeq;
this.$router.push({name: 'channelDetail', params: this.row}); this.$router.push({name: 'channelDetail', params: this.row});
@@ -379,8 +368,6 @@ export default {
if (this.startDate > this.endDate) { if (this.startDate > this.endDate) {
this.startDate = this.endDate; this.startDate = this.endDate;
} }
console.log(this.disabledSDate)
// this.grid.params.startDt = day
}, },
selectedEndDate(day) { selectedEndDate(day) {
if (day != undefined && day != null) { if (day != undefined && day != null) {
@@ -411,13 +398,11 @@ export default {
let setYear = Number(moment(new Date()).format('YYYY')); let setYear = Number(moment(new Date()).format('YYYY'));
let initStartDate = new Date(setYear, 0, 1); let initStartDate = new Date(setYear, 0, 1);
this.startDate = initStartDate; this.startDate = initStartDate;
console.log(moment(this.startDate).format('YYYY-MM-DD'));
}, },
}, },
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,

View File

@@ -285,7 +285,6 @@ export default {
let page = 1; let page = 1;
// 페이지 정보 및 검색 조건 // 페이지 정보 및 검색 조건
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log('getCondition : ' + getCondition);
// store에 저장된 페이지 정보 및 검색 조건을 불러오기 // store에 저장된 페이지 정보 및 검색 조건을 불러오기
let isKeep = false; let isKeep = false;
@@ -300,7 +299,6 @@ export default {
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -311,7 +309,6 @@ export default {
}, },
methods: { methods: {
search: function (isKeep) { search: function (isKeep) {
console.log('>>>>>>> search Start >>>>>>');
this.$refs.table.search(this.grid.params, isKeep); this.$refs.table.search(this.grid.params, isKeep);
this.grid.params = { this.grid.params = {
startMonth: moment(this.startDate).format('YYYYMM'), startMonth: moment(this.startDate).format('YYYYMM'),
@@ -319,29 +316,6 @@ export default {
custNm: this.grid.params.custNm, custNm: this.grid.params.custNm,
bizrno: this.grid.params.bizrno bizrno: this.grid.params.bizrno
}; };
console.log('this.perPageCnt' + this.perPageCnt);
console.log(this.grid.params);
/*
var currentDate = new Date();
var currentMonth = moment(currentDate).format('YYYYMM');
console.log('[currentMonth]:'+currentMonth);
if(moment(this.grid.params.startMonth).isBefore(moment(currentMonth).subtract(0, 'months').format('YYYYMM')) ||
moment(this.grid.params.endMonth).isBefore(moment(currentMonth).subtract(0, 'months').format('YYYYMM'))){
this.row.title = '발송통계';
this.row.msg1 = '검색 기간은 전월만 선택 가능 합니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
return false
}
*/
// if (moment(this.grid.params.startMonth).isBefore(moment(this.grid.params.endMonth).subtract(2, 'months').format('YYYYMM'))) {
// //alert('검색 기간은 전월 최대 3개월까지 선택 가능 합니다.');
// this.row.title = '발송통계';
// this.row.msg1 = '검색 기간은 전월 최대 3개월까지 선택 가능 합니다.';
// this.$refs.commmonModal.alertModalOpen(this.row);
// return false
// }
this.$refs.table.search(this.grid.params, isKeep); this.$refs.table.search(this.grid.params, isKeep);
this.sendStoreData(); this.sendStoreData();
@@ -349,16 +323,8 @@ export default {
setPeriodDay(day) { setPeriodDay(day) {
this.periodDay = day; this.periodDay = day;
this.endDate = new Date(); this.endDate = new Date();
// this.startDate = moment(this.endDate)
// .subtract(day, 'month')
// .toDate();
console.log(this.startDt)
this.initSetStartDate(); this.initSetStartDate();
this.initSetEndDate(); this.initSetEndDate();
// this.disabledStDate(this.startDate)
// this.disabledEndDate(this.endDate)
this.closeDate('start'); this.closeDate('start');
this.closeDate('end'); this.closeDate('end');
}, },
@@ -370,8 +336,6 @@ export default {
if (this.startDate > this.endDate) { if (this.startDate > this.endDate) {
this.startDate = this.endDate; this.startDate = this.endDate;
} }
// console.log(this.disabledSDate)
// this.grid.params.startDt = day
}, },
selectedEndDate(day) { selectedEndDate(day) {
if (day != undefined && day != null) { if (day != undefined && day != null) {
@@ -402,7 +366,6 @@ export default {
} }
}, },
customFormatter: function (date) { customFormatter: function (date) {
// console.log(this.sDateDiv)
if (this.sDateDiv == 'month') { if (this.sDateDiv == 'month') {
return moment(date).format('YYYY-MM'); return moment(date).format('YYYY-MM');
} else if (this.sDateDiv == 'year') { } else if (this.sDateDiv == 'year') {
@@ -417,7 +380,6 @@ export default {
}, },
sendStoreData: function () { sendStoreData: function () {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
// console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -425,7 +387,6 @@ export default {
}); });
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
// console.log("getCondition : " + getCondition.perPage);
}, },
gridParamSet() { gridParamSet() {
this.grid.params = { this.grid.params = {
@@ -435,7 +396,6 @@ export default {
bizrno: this.grid.params.bizrno bizrno: this.grid.params.bizrno
} }
// console.log("gridParamSet()-startMonth : " + this.grid.params.startMonth);
}, },
getExcelHeader() { getExcelHeader() {
// 헤더를 mockup으로 관리한다. // 헤더를 mockup으로 관리한다.
@@ -452,14 +412,13 @@ export default {
} }
let today = moment().format('YYYYMMDDHHmmss'); let today = moment().format('YYYYMMDDHHmmss');
const saveFileName = `정산이력_${today}.xlsx`; const saveFileName = `정산이력_${today}.xls`;
const data = await this.getExcelDataDown(); const data = await this.getExcelDataDown();
let options = { let options = {
header: this.excelHeader, header: this.excelHeader,
dataOrder: 'header' dataOrder: 'header'
}; };
// console.log(data);
xlsx.export(data.list, saveFileName, options).then(() => { xlsx.export(data.list, saveFileName, options).then(() => {
}); });
}, },
@@ -483,13 +442,11 @@ export default {
let initStartDate = new Date(); let initStartDate = new Date();
initStartDate.setMonth(Number(moment(initStartDate).format('MM')) - 4); initStartDate.setMonth(Number(moment(initStartDate).format('MM')) - 4);
this.startDate = initStartDate; this.startDate = initStartDate;
// console.log(moment(this.startDate).format('YYYY-MM-DD'));
}, },
initSetEndDate() { initSetEndDate() {
let initEndDate = new Date(); let initEndDate = new Date();
initEndDate.setMonth(Number(moment(initEndDate).format('MM')) - 2); initEndDate.setMonth(Number(moment(initEndDate).format('MM')) - 2);
this.endDate = initEndDate; this.endDate = initEndDate;
// console.log(moment(this.endDate).format('YYYY-MM-DD'));
}, },
} }
} }

View File

@@ -228,7 +228,6 @@ export default {
header: this.excelHeader, header: this.excelHeader,
dataOrder: 'header' dataOrder: 'header'
}; };
// console.log(data);
xlsx.export(data.list, saveFileName, options).then(() => { xlsx.export(data.list, saveFileName, options).then(() => {
}); });
}, },
@@ -253,7 +252,6 @@ export default {
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,

View File

@@ -81,12 +81,10 @@ export default {
var params = { var params = {
"adminId": this.madangId "adminId": this.madangId
} }
console.log(this.madangId);
try { try {
const response = await custMgtApi.selectSearchMadangId(params); const response = await custMgtApi.selectSearchMadangId(params);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.madangId = result.data.adminId; this.madangId = result.data.adminId;
this.userNm = result.data.adminNm; this.userNm = result.data.adminNm;
@@ -95,10 +93,8 @@ export default {
// 마당ID조회 성공 팝업노출 // 마당ID조회 성공 팝업노출
this.searchIdPop(); this.searchIdPop();
//console.log(this.userNm);
this.idCheck = true; this.idCheck = true;
//this.$refs._pwd1.focus();
}else if(result.retCode == '1004'){ }else if(result.retCode == '1004'){
//alert('마당ID 정보가 없습니다.'); //alert('마당ID 정보가 없습니다.');
@@ -147,13 +143,10 @@ export default {
"adminNm": this.userNm, "adminNm": this.userNm,
"serviceId": this.serviceId "serviceId": this.serviceId
} }
console.log(params);
try { try {
const response = await custMgtApi.updateAdminInfo(params); const response = await custMgtApi.updateAdminInfo(params);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
console.log('adminNm modal close');
//alert('관리자정보 수정에 성공하였습니다.'); //alert('관리자정보 수정에 성공하였습니다.');
// adminNm modal close // adminNm modal close
var dimmed = document.getElementsByClassName('modal26'); var dimmed = document.getElementsByClassName('modal26');
@@ -197,7 +190,6 @@ export default {
}, },
// 모달 띄우기 // 모달 띄우기
ModalOpen(target){ ModalOpen(target){
console.log(target);
this.formReset(); this.formReset();
var dimmed = document.getElementsByClassName('modal26'); var dimmed = document.getElementsByClassName('modal26');
for(var i = 0; i < dimmed.length; i++){ for(var i = 0; i < dimmed.length; i++){
@@ -209,7 +201,6 @@ export default {
}, },
// 모달 끄기 // 모달 끄기
ModalClose(){ ModalClose(){
console.log('adminNm modal close');
var dimmed = document.getElementsByClassName('modal26'); var dimmed = document.getElementsByClassName('modal26');
for(var i = 0; i < dimmed.length; i++){ for(var i = 0; i < dimmed.length; i++){
dimmed[i].style.display = 'none'; dimmed[i].style.display = 'none';

View File

@@ -71,12 +71,10 @@ export default {
// 모달 띄우기 // 모달 띄우기
async carryOverListPopOpen(serviceId) { async carryOverListPopOpen(serviceId) {
console.log(serviceId);
this.row.serviceId = serviceId; this.row.serviceId = serviceId;
try { try {
const response = await custMgtApi.carryOverList(this.row); const response = await custMgtApi.carryOverList(this.row);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.list = result.data.list; this.list = result.data.list;
this.totalCnt = result.data.list.length; this.totalCnt = result.data.list.length;
@@ -103,7 +101,6 @@ export default {
this.ModalClose(); this.ModalClose();
}, },
excelDown() { excelDown() {
console.log(this.list.length)
if (this.list.length <= 0) { if (this.list.length <= 0) {
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '조회된 데이터가 없습니다.'; this.row.msg1 = '조회된 데이터가 없습니다.';
@@ -113,13 +110,12 @@ export default {
} }
let today = moment().format('YYYYMMDDHHmmss'); let today = moment().format('YYYYMMDDHHmmss');
const saveFileName = `이월금액_${today}.xlsx`; const saveFileName = `이월금액_${today}.xls`;
let options = { let options = {
header: this.excelHeader, header: this.excelHeader,
dataOrder: 'header' dataOrder: 'header'
}; };
// console.log(data);
xlsx.export(this.list, saveFileName, options).then(() => { xlsx.export(this.list, saveFileName, options).then(() => {
}); });
}, },

View File

@@ -85,7 +85,6 @@ export default {
excelPopOpen(adminId, totalItems) { excelPopOpen(adminId, totalItems) {
this.adminId = adminId; this.adminId = adminId;
this.totalItems = totalItems; this.totalItems = totalItems;
console.log(totalItems);
var excelPop = document.getElementsByClassName('modal33'); var excelPop = document.getElementsByClassName('modal33');
for (var i = 0; i < excelPop.length; i++) { for (var i = 0; i < excelPop.length; i++) {
excelPop[i].style.display = 'block'; excelPop[i].style.display = 'block';
@@ -139,8 +138,6 @@ export default {
header: this.excelHeader, header: this.excelHeader,
dataOrder: 'header', dataOrder: 'header',
}; };
console.log('============');
console.log(this.sampleList);
xlsx.export(this.sampleList, saveFileName, options).then(() => { xlsx.export(this.sampleList, saveFileName, options).then(() => {
}); });
}, },
@@ -175,7 +172,6 @@ export default {
element.removeChild(element.firstChild); element.removeChild(element.firstChild);
} }
} }
console.log(file.name);
// 파일 이름 체크 // 파일 이름 체크
var fileName = file.name; var fileName = file.name;
var fileExpend = fileName .slice(fileName .indexOf(".") + 1).toLowerCase(); var fileExpend = fileName .slice(fileName .indexOf(".") + 1).toLowerCase();
@@ -217,13 +213,11 @@ export default {
let workbook = XLSX.read(data, {type: 'binary'}); let workbook = XLSX.read(data, {type: 'binary'});
workbook.SheetNames.forEach((sheetName) => { workbook.SheetNames.forEach((sheetName) => {
const rowObj = XLSX.utils.sheet_to_json(workbook.Sheets[sheetName], {raw: true}); const rowObj = XLSX.utils.sheet_to_json(workbook.Sheets[sheetName], {raw: true});
console.log(rowObj);
tmpResult = rowObj; tmpResult = rowObj;
const limitCnt = 100; const limitCnt = 100;
this.totalCnt = Number(this.totalItems) + rowObj.length; this.totalCnt = Number(this.totalItems) + rowObj.length;
this.insertRowCnt = rowObj.length; this.insertRowCnt = rowObj.length;
console.log('totalCnt : '+this.totalCnt +' limitCnt : '+limitCnt);
if (this.totalCnt > limitCnt) { if (this.totalCnt > limitCnt) {
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '100건이상은 등록되지 않습니다.'; this.row.msg1 = '100건이상은 등록되지 않습니다.';
@@ -268,10 +262,6 @@ export default {
} }
} }
}); });
console.log(vm.nData);
console.log(vm.nData.length);
console.log(vm.oData);
console.log(vm.oData.length);
}; };
reader.readAsBinaryString(file); reader.readAsBinaryString(file);
}, },
@@ -307,8 +297,6 @@ export default {
}, },
delFile(event) { delFile(event) {
const file = event.target.files[0]; const file = event.target.files[0];
console.log(file.name);
//this.$refs.file.reset();
this.$refs.file.value = null; this.$refs.file.value = null;
let element = document.getElementById('uploadFile'); let element = document.getElementById('uploadFile');
while (element.firstChild) { while (element.firstChild) {
@@ -325,13 +313,9 @@ export default {
try { try {
const response = await custMgtApi.insertMassUser(this.row); const response = await custMgtApi.insertMassUser(this.row);
//console.log(response);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == '0000') { if (result != null && result.retCode == '0000') {
//this.totalCnt = result.data.totalCnt;
this.successCnt = result.data.successCnt; this.successCnt = result.data.successCnt;
console.log(this.oData.length);
this.failCnt = Number(this.oData.length) + Number(result.data.failCnt); this.failCnt = Number(this.oData.length) + Number(result.data.failCnt);
if (result.data.failCnt > 0) { if (result.data.failCnt > 0) {
@@ -350,20 +334,12 @@ export default {
} }
} }
} catch (error) { } catch (error) {
console.log(error);
// 팝업으로 교체 예정 // 팝업으로 교체 예정
var title = '청약고객 관리\n'; var title = '청약고객 관리\n';
var msg1 = '실패 하였습니다.'; var msg1 = '실패 하였습니다.';
// alert(title + msg1);
// this.row.title = '청약고객관리';
// this.row.msg1 = '실패 하였습니다.';
// this.$refs.validationConfirmPop.failFileuploadOpen(this.row);
} }
// 오류건수.
console.log(this.oData.length);
}, },
failFileuploadOk(result) { failFileuploadOk(result) {
console.log(result)
if (result) { if (result) {
this.excelPopClose(); this.excelPopClose();
this.$parent.memberDetail(this.adminId); this.$parent.memberDetail(this.adminId);

View File

@@ -66,7 +66,6 @@ export default {
}, },
created() { created() {
console.log(this.$route.params.serviceId);
this.grid.params.searchText=this.$route.params.searchText; this.grid.params.searchText=this.$route.params.searchText;
}, },
mounted() { mounted() {

View File

@@ -79,7 +79,7 @@ export default {
mixins: [utils_mixin, chkPattern2], mixins: [utils_mixin, chkPattern2],
watch: { watch: {
stat() { stat() {
console.log('watch : ', this.stat)
} }
}, },
components: { components: {
@@ -88,13 +88,8 @@ export default {
commonModal, commonModal,
}, },
model: { model: {
//prop: 'sendData',
//event: 'event-data'
}, },
//props: ['sendData'],
created() { created() {
// this.setAuthData();
// this.formReset();
}, },
data() { data() {
return { return {
@@ -122,7 +117,6 @@ export default {
try { try {
const response = await custMgtApi.memberDetail(this.row); const response = await custMgtApi.memberDetail(this.row);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.userId = result.data.userId; this.userId = result.data.userId;
this.userNm = result.data.userNm; this.userNm = result.data.userNm;
@@ -163,13 +157,8 @@ export default {
try { try {
const response = await custMgtApi.updateUser(this.row); const response = await custMgtApi.updateUser(this.row);
const result = response.data; const result = response.data;
console.log(result);
this.row = {} this.row = {}
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
// this.row.title = '청약고객관리';
// this.row.msg1 = '수정 완료하였습니다.';
// this.$refs.commmonModal.alertModalOpen(this.row);
// this.memberUpdateModalClose();
this.toComplete(); this.toComplete();
} else { } else {

View File

@@ -67,20 +67,14 @@ export default {
mixins: [utils_mixin, chkPattern2], mixins: [utils_mixin, chkPattern2],
watch: { watch: {
stat() { stat() {
console.log('watch : ', this.stat)
} }
}, },
components: { components: {
validationConfirmModalPop, validationConfirmModalPop,
// commonModal,
}, },
model: { model: {
//prop: 'sendData',
//event: 'event-data'
}, },
//props: ['sendData'],
created() { created() {
// this.setAuthData();
this.formReset(); this.formReset();
}, },
data() { data() {
@@ -129,7 +123,6 @@ export default {
try { try {
const response = await custMgtApi.insertUser(this.row); const response = await custMgtApi.insertUser(this.row);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '사용자 생성 완료하였습니다.'; this.row.msg1 = '사용자 생성 완료하였습니다.';
@@ -177,7 +170,6 @@ export default {
this.adminId = targetAdminId; this.adminId = targetAdminId;
}, },
doValidate() { doValidate() {
console.log(this.userTotalCnt)
if (this.userTotalCnt >= 100) { if (this.userTotalCnt >= 100) {
// 사용자등록제한_최대100개까지 // 사용자등록제한_최대100개까지
this.$parent.$refs.validationConfirmPopModal.validationMaxlimitOpen(); this.$parent.$refs.validationConfirmPopModal.validationMaxlimitOpen();

View File

@@ -121,30 +121,12 @@ export default {
created(){ created(){
}, },
// mounted() {
// let pageMemo = 1;
// // 페이지 정보 및 검색 조건
// const getCondition_memo = this.$store.getters['searchcondition/getSearchCondition'];
// console.log('getCondition_memo : '+getCondition_memo);
//
// // store에 저장된 페이지 정보 및 검색 조건을 불러오기
// let isKeepMemo = false;
// if (getCondition_memo) {
// this.grid.pagePerRows = getCondition_memo.perPage;
// this.grid.params = getCondition_memo.params;
// pageMemo = getCondition_memo.page;
// isKeepMemo = true;
// }
//
// // this.search(isKeep);
// },
mounted() { mounted() {
// 달력 세팅 // 달력 세팅
let page = 1; let page = 1;
// 페이지 정보 및 검색 조건 // 페이지 정보 및 검색 조건
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log('getCondition : '+getCondition);
// store에 저장된 페이지 정보 및 검색 조건을 불러오기 // store에 저장된 페이지 정보 및 검색 조건을 불러오기
let isKeep = false; let isKeep = false;
@@ -158,8 +140,6 @@ export default {
}, },
methods :{ methods :{
search: function(isKeep) { search: function(isKeep) {
console.log('this.perPageCnt:'+this.perPageCnt);
console.log(this.grid.params);
this.$refs.table.search(this.grid.params, isKeep); this.$refs.table.search(this.grid.params, isKeep);
this.sendStoreData(); this.sendStoreData();
}, },
@@ -172,14 +152,12 @@ export default {
}); });
const getCondition_memo = this.$store.getters['searchcondition/getSearchCondition']; const getCondition_memo = this.$store.getters['searchcondition/getSearchCondition'];
console.log("getCondition_memo : "+ getCondition_memo.perPage);
}, },
//메모전체 모달 Open //메모전체 모달 Open
async memoTotalModalOpen(props){ async memoTotalModalOpen(props){
this.grid.params.userId = props.adminId; this.grid.params.userId = props.adminId;
this.userId = props.adminId; this.userId = props.adminId;
console.log(props.adminId);
// 메모 모달팝업 오픈 // 메모 모달팝업 오픈
var dimmed = document.getElementsByClassName('memoTotal'); var dimmed = document.getElementsByClassName('memoTotal');
@@ -190,7 +168,6 @@ export default {
let page = 1; let page = 1;
// 페이지 정보 및 검색 조건 // 페이지 정보 및 검색 조건
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log('momo getCondition : '+getCondition);
// store에 저장된 페이지 정보 및 검색 조건을 불러오기 // store에 저장된 페이지 정보 및 검색 조건을 불러오기
let isKeep = false; let isKeep = false;
@@ -218,7 +195,6 @@ export default {
this.$parent.memberDetail(this.adminId); this.$parent.memberDetail(this.adminId);
}, },
deleteMemo: function(props) { deleteMemo: function(props) {
console.log(props);
this.seqNo=props.seqNo; this.seqNo=props.seqNo;
this.memorow = {} this.memorow = {}
this.memorow.title = '메모'; this.memorow.title = '메모';
@@ -229,15 +205,12 @@ export default {
try { try {
const response = await custMgtApi.deleteMemo(target); const response = await custMgtApi.deleteMemo(target);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
// alert('삭제 성공');
// 그리드 reload // 그리드 reload
// 리스트 그리드 오픈 // 리스트 그리드 오픈
let page = 1; let page = 1;
// 페이지 정보 및 검색 조건 // 페이지 정보 및 검색 조건
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log('getCondition : '+getCondition);
// store에 저장된 페이지 정보 및 검색 조건을 불러오기 // store에 저장된 페이지 정보 및 검색 조건을 불러오기
let isKeep = false; let isKeep = false;
@@ -254,14 +227,12 @@ export default {
this.$refs.commmonMemoModal.alertModalOpen(this.memorow); this.$refs.commmonMemoModal.alertModalOpen(this.memorow);
} }
} catch (error) { } catch (error) {
console.log(error);
this.memorow.title = '메모 삭제'; this.memorow.title = '메모 삭제';
this.memorow.msg1 = '실패 하였습니다.'; this.memorow.msg1 = '실패 하였습니다.';
this.$refs.commmonMemoModal.alertModalOpen(this.memorow); this.$refs.commmonMemoModal.alertModalOpen(this.memorow);
} }
}, },
confirmCalbackFnc(props){ confirmCalbackFnc(props){
console.log(props)
if(props.result){ if(props.result){
this.memorow = {} this.memorow = {}
this.memorow.seqNo = this.seqNo; this.memorow.seqNo = this.seqNo;

View File

@@ -45,9 +45,6 @@
</template> </template>
<script> <script>
import custMgtApi from "../service/custMgtApi.js";
export default { export default {
data(){ data(){
return{ return{
@@ -67,7 +64,6 @@ export default {
methods :{ methods :{
// 모달 띄우기(성공모달) // 모달 띄우기(성공모달)
searchIdModalOpen(target){ searchIdModalOpen(target){
console.log("SearchIdModalOpen");
var dimmed = document.getElementsByClassName('dimmed modal28'); var dimmed = document.getElementsByClassName('dimmed modal28');
var wrap = document.getElementsByClassName('popup-wrap modal28'); var wrap = document.getElementsByClassName('popup-wrap modal28');
var obj = document.getElementsByClassName(target); var obj = document.getElementsByClassName(target);
@@ -94,7 +90,6 @@ export default {
}, },
// 모달 띄우기(실패모달) // 모달 띄우기(실패모달)
searchIdFailModalOpen(target){ searchIdFailModalOpen(target){
console.log("SearchIdFailModalOpen");
var dimmed = document.getElementsByClassName('dimmed modal27'); var dimmed = document.getElementsByClassName('dimmed modal27');
var wrap = document.getElementsByClassName('popup-wrap modal27'); var wrap = document.getElementsByClassName('popup-wrap modal27');
var obj = document.getElementsByClassName(target); var obj = document.getElementsByClassName(target);
@@ -117,15 +112,12 @@ export default {
this.code = params.code; this.code = params.code;
this.agencyNm = params.agencyNm; this.agencyNm = params.agencyNm;
//alert( userName + ': 조회 성공');
var dimmed = document.getElementsByClassName('modal28'); var dimmed = document.getElementsByClassName('modal28');
for(var i = 0; i < dimmed.length; i++){ for(var i = 0; i < dimmed.length; i++){
dimmed[i].style.display = 'block'; dimmed[i].style.display = 'block';
} }
//this.searchIdModalModalOpen('modal18');
}, },
searchIdFailPop(){ searchIdFailPop(){
//alert( '조회 실패');
var dimmed = document.getElementsByClassName('modal27'); var dimmed = document.getElementsByClassName('modal27');
for(var i = 0; i < dimmed.length; i++){ for(var i = 0; i < dimmed.length; i++){
dimmed[i].style.display = 'block'; dimmed[i].style.display = 'block';
@@ -133,10 +125,4 @@ export default {
}, },
} }
} }
// import '../../../assets/css/layout.css?ver=02';
// import '../../../assets/css/contents.css?ver=01';
// import '../../../assets/css/common.css?ver=02';
// import '../../../assets/css/style.css';
</script> </script>

View File

@@ -58,19 +58,16 @@
</template> </template>
<script> <script>
import api from '@/service/api';
import custMgtApi from "../service/custMgtApi.js"; import custMgtApi from "../service/custMgtApi.js";
import { utils_mixin, chkPattern2 } from '../service/mixins'; import { utils_mixin, chkPattern2 } from '../service/mixins';
import lodash from "lodash"; import lodash from "lodash";
import commonModal from "@/components/modal/commonModal"; import commonModal from "@/components/modal/commonModal";
import ValidationConfirmPop from "@/modules/custMgt/components/ValidationConfirmPop";
export default { export default {
name: "subsRegPop", name: "subsRegPop",
mixins: [utils_mixin, chkPattern2], mixins: [utils_mixin, chkPattern2],
watch:{ watch:{
stat(){ stat(){
console.log('watch : ', this.stat)
} }
}, },
data(){ data(){

View File

@@ -76,7 +76,6 @@ export default {
mixins: [utils_mixin, chkPattern2], mixins: [utils_mixin, chkPattern2],
watch: { watch: {
stat() { stat() {
console.log('watch : ', this.stat)
} }
}, },
data() { data() {
@@ -244,7 +243,6 @@ export default {
}, },
async doInsert() { async doInsert() {
if (this.doValidate()) { if (this.doValidate()) {
console.log(this.row)
try { try {
const response = await custMgtApi.insertTestId(this.row); const response = await custMgtApi.insertTestId(this.row);

View File

@@ -145,7 +145,6 @@ export default {
for (var i = 0; i < dimmed.length; i++) { for (var i = 0; i < dimmed.length; i++) {
dimmed[i].style.display = 'none'; dimmed[i].style.display = 'none';
} }
console.log("this.$parent.memberInsert() ~~~~~~")
this.$parent.memberInsert(); this.$parent.memberInsert();
}, },
//사용자등록 - 최초등록 Close //사용자등록 - 최초등록 Close

View File

@@ -101,13 +101,11 @@ export default {
}, },
methods: { methods: {
alertModalOpen(props) { alertModalOpen(props) {
console.log(props.msg1);
this.title = props.title; this.title = props.title;
this.msg1 = props.msg1; this.msg1 = props.msg1;
this.msg2 = props.msg2; this.msg2 = props.msg2;
this.msg3 = props.msg3; this.msg3 = props.msg3;
this.msg4 = props.msg4; this.msg4 = props.msg4;
console.log(props)
var dimmed = document.getElementsByClassName('alertModal'); var dimmed = document.getElementsByClassName('alertModal');
for (var i = 0; i < dimmed.length; i++) { for (var i = 0; i < dimmed.length; i++) {
dimmed[i].style.display = 'block'; dimmed[i].style.display = 'block';
@@ -130,7 +128,6 @@ export default {
}, },
// 모달 오픈 // 모달 오픈
confirmModalOpen(props) { confirmModalOpen(props) {
console.log(props)
var dimmed = document.getElementsByClassName('confirm'); var dimmed = document.getElementsByClassName('confirm');
for (var i = 0; i < dimmed.length; i++) { for (var i = 0; i < dimmed.length; i++) {
dimmed[i].style.display = 'block'; dimmed[i].style.display = 'block';

View File

@@ -208,7 +208,6 @@ export default {
mixins: [utils_mixin, chkPattern2], mixins: [utils_mixin, chkPattern2],
watch: { watch: {
stat() { stat() {
console.log('watch : ', this.stat);
}, },
}, },
data() { data() {
@@ -235,7 +234,7 @@ export default {
svcUserId: '', svcUserId: '',
ezSvcUserAuthKey: '', ezSvcUserAuthKey: '',
homePageUrl: '', homePageUrl: '',
isActive: true isActive: true,
//applyTbStyle: 'cursor: default;', //applyTbStyle: 'cursor: default;',
}; };
}, },
@@ -254,12 +253,12 @@ export default {
ValidationConfirmPop, ValidationConfirmPop,
}, },
created() { created() {
if(this.$route.params.serviceId != null){ if (this.$route.params.serviceId != null) {
this.$store.commit('dataStore/updateUserId', this.$route.params.serviceId); this.$store.commit('dataStore/updateUserId', this.$route.params.serviceId);
this.userId = this.$route.params.serviceId; this.userId = this.$route.params.serviceId;
this.memberDetail(this.$route.params.serviceId); this.memberDetail(this.$route.params.serviceId);
}else{ } else {
var userId2 = this.$store.getters["dataStore/getUserId"]; var userId2 = this.$store.getters['dataStore/getUserId'];
this.userId = userId2; this.userId = userId2;
this.memberDetail(this.userId); this.memberDetail(this.userId);
} }
@@ -286,8 +285,6 @@ export default {
const selected = []; const selected = [];
if (value) { if (value) {
this.list.forEach((com) => { this.list.forEach((com) => {
//var chkList = {userId :com.userId};
//console.log(chkList)
selected.push(com.userId); selected.push(com.userId);
}); });
} }
@@ -298,7 +295,6 @@ export default {
}, },
methods: { methods: {
valAlert(props) { valAlert(props) {
//alert("호출됨!");
this.$refs.commmonModal.alertModalOpen(props); this.$refs.commmonModal.alertModalOpen(props);
}, },
valConfirm(props) { valConfirm(props) {
@@ -330,13 +326,11 @@ export default {
this.email = result.data.email; this.email = result.data.email;
this.list = result.data.list; this.list = result.data.list;
this.userTotalCnt = result.data.list.length; this.userTotalCnt = result.data.list.length;
console.log('userTotalCnt:' + result.data.list.length);
this.totalItems = result.data.paging.totalCnt; this.totalItems = result.data.paging.totalCnt;
this.homePageUrl = result.data.homePageUrl; this.homePageUrl = result.data.homePageUrl;
this.ezSvcUserAuthKey = result.data.authKey; this.ezSvcUserAuthKey = result.data.authKey;
} }
} catch (error) { } catch (error) {
console.log(error);
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.'; this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
@@ -350,11 +344,8 @@ export default {
this.row.userStat = this.userStat; this.row.userStat = this.userStat;
this.row.memo = this.memo; this.row.memo = this.memo;
console.log(this.row);
try { try {
const response = await custMgtApi.updateAdminInfoTotal(this.row); const response = await custMgtApi.updateAdminInfoTotal(this.row);
console.log(response);
const result = response.data; const result = response.data;
if (result != null && result.retCode == '0000') { if (result != null && result.retCode == '0000') {
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
@@ -371,7 +362,6 @@ export default {
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
} }
} catch (error) { } catch (error) {
console.log(error);
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.'; this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
@@ -382,13 +372,11 @@ export default {
this.$router.push({ name: 'memberList', params: this.row }); this.$router.push({ name: 'memberList', params: this.row });
}, },
excelPopOpen() { excelPopOpen() {
console.log('memberInsertPopOpen >> ' + this.userTotalCnt);
if (this.userTotalCnt >= 100) { if (this.userTotalCnt >= 100) {
// 사용자등록제한_최대100개까지 // 사용자등록제한_최대100개까지
this.$refs.validationConfirmPopModal.validationMaxlimitOpen(); this.$refs.validationConfirmPopModal.validationMaxlimitOpen();
return false; return false;
} }
console.log(this.adminId);
this.$refs.memberBulkRegPop.excelPopOpen(this.adminId, this.totalItems); this.$refs.memberBulkRegPop.excelPopOpen(this.adminId, this.totalItems);
}, },
memberUpdatePopOpen(target) { memberUpdatePopOpen(target) {
@@ -397,7 +385,6 @@ export default {
this.$refs.memberModifyPop.memberUpdateModalOpen(this.row); this.$refs.memberModifyPop.memberUpdateModalOpen(this.row);
}, },
memberInsertPopOpen() { memberInsertPopOpen() {
console.log('memberInsertPopOpen >> ' + this.userTotalCnt);
if (this.userTotalCnt >= 100) { if (this.userTotalCnt >= 100) {
// 사용자등록제한_최대100개까지 // 사용자등록제한_최대100개까지
this.$refs.validationConfirmPopModal.validationMaxlimitOpen(); this.$refs.validationConfirmPopModal.validationMaxlimitOpen();
@@ -412,7 +399,6 @@ export default {
this.$refs.memoTatalListPop.memoTotalModalOpen(this.row); this.$refs.memoTatalListPop.memoTotalModalOpen(this.row);
}, },
deleteMember() { deleteMember() {
console.log('delete count:' + this.selected.length);
if (this.selected.length === 0) { if (this.selected.length === 0) {
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '삭제대상을 체크해주세요.'; this.row.msg1 = '삭제대상을 체크해주세요.';
@@ -427,7 +413,6 @@ export default {
var serviceId = this.adminId; var serviceId = this.adminId;
this.row.list = this.selected.map((row) => ({ userId: row })); this.row.list = this.selected.map((row) => ({ userId: row }));
this.row.adminId = this.adminId; this.row.adminId = this.adminId;
console.log(this.row);
try { try {
let response = await custMgtApi.deleteUser(this.row); let response = await custMgtApi.deleteUser(this.row);
const result = response.data; const result = response.data;
@@ -440,7 +425,6 @@ export default {
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
} }
} catch (error) { } catch (error) {
console.log(error);
this.row = {}; this.row = {};
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.'; this.row.msg1 = '실패 하였습니다.';
@@ -462,7 +446,6 @@ export default {
this.$refs.form.submit(); this.$refs.form.submit();
}, },
confirmCalbackFnc(props) { confirmCalbackFnc(props) {
console.log(props);
if (props.result) { if (props.result) {
this.memberDelete(); this.memberDelete();
} }

View File

@@ -7,161 +7,147 @@
</div> </div>
<div class="table table_form"> <div class="table table_form">
<form action="" <form action="" target="_blank" method="post" ref="form">
target="_blank" <input type="hidden" name="svcUserId" id="svcUserId" v-model="svcUserId" />
method="post" <input type="hidden" name="ezSvcUserAuthKey" id="ezSvcUserAuthKey" v-model="ezSvcUserAuthKey" />
ref="form">
<input type="hidden" name="svcUserId" id="svcUserId" v-model="svcUserId"/>
<input type="hidden" name="ezSvcUserAuthKey" id="ezSvcUserAuthKey" v-model="ezSvcUserAuthKey"/>
</form> </form>
<table> <table>
<colgroup> <colgroup>
<col style="width:140px"> <col style="width: 140px" />
<col style="width:auto"> <col style="width: auto" />
<col style="width:auto"> <col style="width: auto" />
<col style="width:140px"> <col style="width: 140px" />
<col style="width:auto"> <col style="width: auto" />
<col style="width:auto"> <col style="width: auto" />
</colgroup> </colgroup>
<tbody> <tbody>
<tr class="tr_input"> <tr class="tr_input">
<th>이름</th> <th>이름</th>
<td colspan="2"> <td colspan="2">
<input type="text" v-model="userNm" ref="_userNm"> <input type="text" v-model="userNm" ref="_userNm" />
</td> </td>
</tr> </tr>
<tr> <tr>
<th>등록일</th> <th>등록일</th>
<td colspan="2">{{regDt}}</td> <td colspan="2">{{ regDt }}</td>
<th class="center">관리자 ID</th> <th class="center">관리자 ID</th>
<td colspan="2">{{adminId}}</td> <td colspan="2">{{ adminId }}</td>
</tr> </tr>
<tr> <tr>
<th>ID</th> <th>ID</th>
<td colspan="2"> <td colspan="2">
{{userId}} {{ userId }}
<button type="button" class="button grey btn-a" @click="homeLogin">로그인</button> <button type="button" class="button grey btn-a" @click="homeLogin">로그인</button>
</td> </td>
<th class="center">구분</th> <th class="center">구분</th>
<td colspan="2">{{userType}}</td> <td colspan="2">{{ userType }}</td>
</tr> </tr>
<tr class="tr_input"> <tr class="tr_input">
<th>휴대폰번호</th> <th>휴대폰번호</th>
<td colspan="2"> <td colspan="2">
<input type="text" v-model="mdn" ref="_phone"> <input type="text" v-model="mdn" ref="_phone" />
</td> </td>
<th class="center">이메일</th> <th class="center">이메일</th>
<td colspan="2"> <td colspan="2">
<input type="text" v-model="email" ref="_email"> <input type="text" v-model="email" ref="_email" />
</td> </td>
</tr> </tr>
<tr class="w30"> <tr class="w30">
<th>잠금</th> <th>잠금</th>
<td colspan="2"> <td colspan="2">
<input type="radio" name="userStat" value="01" id="right_radio1" v-model="stat"> <input type="radio" name="userStat" value="01" id="right_radio1" v-model="stat" />
<label for="right_radio1">사용</label> <label for="right_radio1">사용</label>
<input type="radio" name="userStat" value="02" id="right_radio2" v-model="stat"> <input type="radio" name="userStat" value="02" id="right_radio2" v-model="stat" />
<label for="right_radio2">정지</label> <label for="right_radio2">정지</label>
</td> </td>
<th class="center">최종접속일</th> <th class="center">최종접속일</th>
<td colspan="2">{{lastLoginDt}}</td> <td colspan="2">{{ lastLoginDt }}</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
</div> </div>
<div class="pop-btn2"> <div class="pop-btn2">
<button class="btn-default" type="button" @click="toComplete();">취소</button> <button class="btn-default" type="button" @click="toComplete()">취소</button>
<button class="btn-pcolor" type="button" @click="memberUpdate();">저장</button> <button class="btn-pcolor" type="button" @click="memberUpdate()">저장</button>
</div> </div>
<validation-confirm-pop ref="validationConfirmPopModal"> </validation-confirm-pop> <validation-confirm-pop ref="validationConfirmPopModal"> </validation-confirm-pop>
<common-modal ref="commmonModal"></common-modal> <common-modal ref="commmonModal"></common-modal>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import custMgtApi from "../service/custMgtApi.js"; import custMgtApi from '../service/custMgtApi.js';
import { utils_mixin, chkPattern2 } from '../service/mixins'; import { utils_mixin, chkPattern2 } from '../service/mixins';
import ValidationConfirmPop from '../components/ValidationConfirmPop.vue'; import ValidationConfirmPop from '../components/ValidationConfirmPop.vue';
import lodash from "lodash"; import lodash from 'lodash';
import commonModal from "@/components/modal/commonModal"; import commonModal from '@/components/modal/commonModal';
export default { export default {
name: 'memberDetail', name: 'memberDetail',
mixins: [utils_mixin, chkPattern2], mixins: [utils_mixin, chkPattern2],
watch:{ watch: {
stat(){ stat() {
console.log('watch : ', this.stat) },
}
}, },
data() { data() {
return { return {
row:{}, row: {},
userNm:'', userNm: '',
regDt: '', regDt: '',
userType: '', userType: '',
userId: '', userId: '',
adminId:'', adminId: '',
adminNm: '', adminNm: '',
sendingLimit: '', sendingLimit: '',
lineType: '', lineType: '',
userStat: '', userStat: '',
lastLoginDt: '', lastLoginDt: '',
userStat:'', userStat: '',
memo: '', memo: '',
mdn : '', mdn: '',
email: '', email: '',
stat:'', stat: '',
svcUserId:'', svcUserId: '',
ezSvcUserAuthKey:'', ezSvcUserAuthKey: '',
homePageUrl: '' homePageUrl: '',
};
}
}, },
props: { props: {
serviceId: { serviceId: {
type: String, type: String,
default: "", default: '',
}, },
}, },
components: { components: {
commonModal, commonModal,
ValidationConfirmPop, ValidationConfirmPop,
}, },
created(){ created() {
if(this.$route.params.serviceId != null){ if (this.$route.params.serviceId != null) {
this.$store.commit('dataStore/updateUserId', this.$route.params.serviceId); this.$store.commit('dataStore/updateUserId', this.$route.params.serviceId);
this.userId = this.$route.params.serviceId; this.userId = this.$route.params.serviceId;
console.log('created : '+this.userId);
this.memberDetail(this.$route.params.serviceId); this.memberDetail(this.$route.params.serviceId);
}else{ } else {
var userId2 = this.$store.getters["dataStore/getUserId"]; var userId2 = this.$store.getters['dataStore/getUserId'];
this.userId = userId2; this.userId = userId2;
console.log('created2 : '+this.userId);
this.memberDetail(this.userId); this.memberDetail(this.userId);
} }
}, },
destroyed() { destroyed() {
this.$store.commit('dataStore/updateUserId', ''); this.$store.commit('dataStore/updateUserId', '');
}, },
mounted() { mounted() {},
},
methods: { methods: {
async memberDetail(serviceId){ async memberDetail(serviceId) {
this.svcUserId = serviceId; this.svcUserId = serviceId;
this.row.userId = serviceId; this.row.userId = serviceId;
try { try {
const response = await custMgtApi.memberDetail(this.row); const response = await custMgtApi.memberDetail(this.row);
const result = response.data; const result = response.data;
console.log('>>>>>>>>>>>>'); if (result != null && result.retCode == '0000') {
console.log(result);
if (result != null && result.retCode == "0000") {
// isView // isView
this.userNm = result.data.userNm; this.userNm = result.data.userNm;
this.userId = result.data.userId; this.userId = result.data.userId;
@@ -180,15 +166,13 @@ export default {
this.ezSvcUserAuthKey = result.data.authKey; this.ezSvcUserAuthKey = result.data.authKey;
} }
} catch (error) { } catch (error) {
console.log(error);
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.'; this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
} }
}, },
async memberUpdate(){ async memberUpdate() {
if(!this.doValidate()){ if (!this.doValidate()) {
return false; return false;
} }
@@ -200,31 +184,28 @@ export default {
try { try {
const response = await custMgtApi.updateUser(this.row); const response = await custMgtApi.updateUser(this.row);
const result = response.data; const result = response.data;
console.log(result); if (result != null && result.retCode == '0000') {
if (result != null && result.retCode == "0000") {
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '저장 하였습니다.'; this.row.msg1 = '저장 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
this.toComplete(); this.toComplete();
} else { } else {
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.'; this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
} }
} catch(err) { } catch (err) {
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.'; this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
} }
}, },
// 저장 후 부모창 호출. // 저장 후 부모창 호출.
toComplete(){ toComplete() {
this.$router.push({ name: 'memberList', params: this.row }); this.$router.push({ name: 'memberList', params: this.row });
}, },
doValidate(){ doValidate() {
if (this.isNull(this.userNm)) {
if(this.isNull(this.userNm)){
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '이름을 입력해 주세요.'; this.row.msg1 = '이름을 입력해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
@@ -232,7 +213,7 @@ export default {
return false; return false;
} }
if(this.isNull(this.email)){ if (this.isNull(this.email)) {
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '이메일을 입력해주세요.'; this.row.msg1 = '이메일을 입력해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
@@ -240,7 +221,7 @@ export default {
return false; return false;
} }
const email = this.email; const email = this.email;
if(!this.isNull(email) && !lodash.isEqual(email,'@') && !this.emailCheck(email)){ if (!this.isNull(email) && !lodash.isEqual(email, '@') && !this.emailCheck(email)) {
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '이메일 형식이 잘못되었습니다. 확인해 주세요.'; this.row.msg1 = '이메일 형식이 잘못되었습니다. 확인해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
@@ -250,7 +231,7 @@ export default {
return false; return false;
} }
if(this.isNull(this.mdn)){ if (this.isNull(this.mdn)) {
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '휴대폰번호를 입력해주세요.'; this.row.msg1 = '휴대폰번호를 입력해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
@@ -258,7 +239,7 @@ export default {
return false; return false;
} }
const hp = this.mdn; const hp = this.mdn;
if(!this.isNull(hp) && !this.isMobile(hp)){ if (!this.isNull(hp) && !this.isMobile(hp)) {
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '휴대폰 번호 형식이 잘못되었습니다. 확인해 주세요.'; this.row.msg1 = '휴대폰 번호 형식이 잘못되었습니다. 확인해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
@@ -268,7 +249,7 @@ export default {
return false; return false;
} }
if(this.isNull(this.stat)){ if (this.isNull(this.stat)) {
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '상태를 선택 해주세요.'; this.row.msg1 = '상태를 선택 해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
@@ -277,19 +258,17 @@ export default {
return true; return true;
}, },
checkPhoneFocus(){ checkPhoneFocus() {
//this.mdn = ''; //this.mdn = '';
this.$refs._phone.focus(); this.$refs._phone.focus();
}, },
checkEmailFocus(){ checkEmailFocus() {
//this.email = ''; //this.email = '';
this.$refs._email.focus(); this.$refs._email.focus();
}, },
homeLogin(){ homeLogin() {
this.$refs.form.action = this.homePageUrl; this.$refs.form.action = this.homePageUrl;
this.svcUserId = this.userId this.svcUserId = this.userId;
console.log('--------');
console.log(this.svcUserId);
this.$refs.form.submit(); this.$refs.form.submit();
}, },
}, },

View File

@@ -241,7 +241,6 @@ export default {
let page = 1; let page = 1;
// 페이지 정보 및 검색 조건 // 페이지 정보 및 검색 조건
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log('getCondition : ' + getCondition);
// store에 저장된 페이지 정보 및 검색 조건을 불러오기 // store에 저장된 페이지 정보 및 검색 조건을 불러오기
let isKeep = false; let isKeep = false;
@@ -256,7 +255,6 @@ export default {
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -269,8 +267,6 @@ export default {
search: function (isKeep) { search: function (isKeep) {
this.grid.params.startDt = moment(this.startDate).format('YYYYMMDD'); this.grid.params.startDt = moment(this.startDate).format('YYYYMMDD');
this.grid.params.endDt = moment(this.endDate).format('YYYYMMDD'); this.grid.params.endDt = moment(this.endDate).format('YYYYMMDD');
console.log('this.perPageCnt' + this.perPageCnt);
console.log(this.grid.params);
this.grid.params.searchType1 = this.searchType1; this.grid.params.searchType1 = this.searchType1;
this.grid.params.searchType2 = this.searchType2; this.grid.params.searchType2 = this.searchType2;
this.grid.params.searchType3 = this.searchType3; this.grid.params.searchType3 = this.searchType3;
@@ -299,7 +295,6 @@ export default {
}, },
sendStoreData: function () { sendStoreData: function () {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
// console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -307,7 +302,6 @@ export default {
}); });
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
// console.log("getCondition : "+ getCondition.perPage);
}, },
setCodeData() { setCodeData() {
@@ -323,9 +317,6 @@ export default {
setPeriodDay(day) { setPeriodDay(day) {
this.periodDay = day; this.periodDay = day;
this.endDate = new Date(); this.endDate = new Date();
//this.startDate = moment(this.endDate)
// .subtract(day, 'day')
// .toDate();
this.initSetStartDate(); this.initSetStartDate();
this.closeDate('start'); this.closeDate('start');
@@ -339,8 +330,6 @@ export default {
if (this.startDate > this.endDate) { if (this.startDate > this.endDate) {
this.startDate = this.endDate; this.startDate = this.endDate;
} }
console.log(this.disabledSDate)
// this.grid.params.startDt = day
}, },
selectedEndDate(day) { selectedEndDate(day) {
if (day != undefined && day != null) { if (day != undefined && day != null) {
@@ -371,7 +360,6 @@ export default {
let setYear = Number(moment(new Date()).format('YYYY')); let setYear = Number(moment(new Date()).format('YYYY'));
let initStartDate = new Date(setYear, 0, 1); let initStartDate = new Date(setYear, 0, 1);
this.startDate = initStartDate; this.startDate = initStartDate;
console.log(moment(this.startDate).format('YYYY-MM-DD'));
}, },
}, },

View File

@@ -180,7 +180,7 @@ import custMgtApi from "../service/custMgtApi.js";
import CarryOverListPop from '../components/CarryOverListPop'; import CarryOverListPop from '../components/CarryOverListPop';
import ValidationConfirmPop from '../components/ValidationConfirmPop'; import ValidationConfirmPop from '../components/ValidationConfirmPop';
import AdminNmPop from '../components/AdminNmPop'; import AdminNmPop from '../components/AdminNmPop';
import commonModal from "@/components/modal/commonModal"; import commonModal from "../components/commonModal";
//import { mapGetters } from 'vuex'; //import { mapGetters } from 'vuex';
export default { export default {
@@ -228,15 +228,12 @@ export default {
}, },
components: { components: {
CarryOverListPop, CarryOverListPop,
//ConfirmPop,
//SearchIDPop,
ValidationConfirmPop, ValidationConfirmPop,
AdminNmPop, AdminNmPop,
commonModal, commonModal,
}, },
created() { created() {
console.log(this.$route.params.serviceId);
this.$store.commit("login/isLogin", true); this.$store.commit("login/isLogin", true);
if(this.$route.params.serviceId != null){ // 리스트에서 상세 호출시 if(this.$route.params.serviceId != null){ // 리스트에서 상세 호출시
@@ -245,7 +242,6 @@ export default {
this.setMenuActive(); this.setMenuActive();
}else{ // 상세 화면에서 새로고침 호출시 }else{ // 상세 화면에서 새로고침 호출시
var serviceId = this.$store.getters["dataStore/getDataStore"]; var serviceId = this.$store.getters["dataStore/getDataStore"];
console.log('serviceId : '+serviceId);
this.subsDetail(serviceId); this.subsDetail(serviceId);
} }
}, },
@@ -255,15 +251,9 @@ export default {
}, },
methods: { methods: {
callAlert(props) { callAlert(props) {
//alert("호출됨!");
this.$refs.commmonModal.alertModalOpen(props); this.$refs.commmonModal.alertModalOpen(props);
}, },
doValidate() { doValidate() {
// if(this.isNull(this.userId)){
// alert("아이디를 입력해 주세요.");
// this.$refs._userId.focus();
// return false;
// }
return true; return true;
}, },
// 저장 후 부모창 호출. // 저장 후 부모창 호출.
@@ -283,7 +273,6 @@ export default {
try { try {
const response = await custMgtApi.subsDetail(this.row); const response = await custMgtApi.subsDetail(this.row);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
//데이터값이 널이면 오류처리 //데이터값이 널이면 오류처리
this.custNm = result.data.custNm; this.custNm = result.data.custNm;
@@ -319,6 +308,10 @@ export default {
this.cprRegNo1 = this.cprRegNo.substr(0, 6); this.cprRegNo1 = this.cprRegNo.substr(0, 6);
this.cprRegNo2 = this.cprRegNo.substr(6); this.cprRegNo2 = this.cprRegNo.substr(6);
} }
}else{
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
} }
} catch (error) { } catch (error) {
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
@@ -337,7 +330,6 @@ export default {
try { try {
const response = await custMgtApi.updateAdminInfo(this.row); const response = await custMgtApi.updateAdminInfo(this.row);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.row.title = '청약고객관리'; this.row.title = '청약고객관리';
this.row.msg1 = '저장 하였습니다.'; this.row.msg1 = '저장 하였습니다.';
@@ -365,14 +357,11 @@ export default {
}, },
confirmCalbackFnc: function (props) { confirmCalbackFnc: function (props) {
console.log(props);
if (props.result) { if (props.result) {
// this.doInsert(props.result);
} }
}, },
searchIDPopOpen: function () { searchIDPopOpen: function () {
var params = { var params = {
// "serviceId": this.row.serviceId,
"serviceId": this.serviceId, "serviceId": this.serviceId,
"serviceSeq": '', "serviceSeq": '',
"parentDiv": 'subsDetail' "parentDiv": 'subsDetail'
@@ -380,7 +369,6 @@ export default {
this.$refs.adminNmPop.ModalOpen(params); this.$refs.adminNmPop.ModalOpen(params);
}, },
goMemberDetail: function (props) { goMemberDetail: function (props) {
console.log(this.row);
this.$router.push({name: 'memberAdminDetail', params: {serviceId: this.row.serviceId}}); this.$router.push({name: 'memberAdminDetail', params: {serviceId: this.row.serviceId}});
}, },
@@ -392,6 +380,11 @@ export default {
nowMenu[0].classList.add('is-current'); nowMenu[0].classList.add('is-current');
//menuList.classList.add('is-current'); //menuList.classList.add('is-current');
},
// 조회후 모달창 닫기
checkFocus(){
this.$router.go(-1);
} }
} }
} }

View File

@@ -248,7 +248,6 @@ export default {
let page = 1; let page = 1;
// 페이지 정보 및 검색 조건 // 페이지 정보 및 검색 조건
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log('getCondition : ' + getCondition);
// store에 저장된 페이지 정보 및 검색 조건을 불러오기 // store에 저장된 페이지 정보 및 검색 조건을 불러오기
let isKeep = false; let isKeep = false;
@@ -263,7 +262,6 @@ export default {
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -276,8 +274,6 @@ export default {
search: function (isKeep) { search: function (isKeep) {
this.grid.params.startDt = moment(this.startDate).format('YYYYMMDD'); this.grid.params.startDt = moment(this.startDate).format('YYYYMMDD');
this.grid.params.endDt = moment(this.endDate).format('YYYYMMDD'); this.grid.params.endDt = moment(this.endDate).format('YYYYMMDD');
console.log('this.perPageCnt' + this.perPageCnt);
console.log(this.grid.params);
this.grid.params.searchType1 = this.searchType1 this.grid.params.searchType1 = this.searchType1
this.grid.params.searchType2 = this.searchType2 this.grid.params.searchType2 = this.searchType2
@@ -290,7 +286,6 @@ export default {
this.$router.push({name: routeName, params: {page: 1, searchText: ''}}); this.$router.push({name: routeName, params: {page: 1, searchText: ''}});
}, },
custDetail(props) { custDetail(props) {
console.log(props);
this.row.serviceId = props.serviceId; this.row.serviceId = props.serviceId;
this.$router.push({name: 'subsDetail', params: this.row}); this.$router.push({name: 'subsDetail', params: this.row});
}, },
@@ -300,7 +295,6 @@ export default {
}, },
sendStoreData: function () { sendStoreData: function () {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -308,7 +302,6 @@ export default {
}); });
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log("getCondition : " + getCondition.perPage);
}, },
setCodeData() { setCodeData() {
// 상태 옵션 셋팅. // 상태 옵션 셋팅.
@@ -360,7 +353,6 @@ export default {
header: this.excelHeader, header: this.excelHeader,
dataOrder: 'header' dataOrder: 'header'
}; };
// console.log(data);
xlsx.export(data.list, saveFileName, options).then(() => { xlsx.export(data.list, saveFileName, options).then(() => {
}); });
}, },
@@ -373,9 +365,6 @@ export default {
setPeriodDay(day) { setPeriodDay(day) {
this.periodDay = day; this.periodDay = day;
this.endDate = new Date(); this.endDate = new Date();
// this.startDate = moment(this.endDate)
// .subtract(day, 'day')
// .toDate();
this.initSetStartDate(); this.initSetStartDate();
this.closeDate('start'); this.closeDate('start');
@@ -389,8 +378,7 @@ export default {
if (this.startDate > this.endDate) { if (this.startDate > this.endDate) {
this.startDate = this.endDate; this.startDate = this.endDate;
} }
console.log(this.disabledSDate)
// this.grid.params.startDt = day
}, },
selectedEndDate(day) { selectedEndDate(day) {
if (day != undefined && day != null) { if (day != undefined && day != null) {
@@ -421,7 +409,6 @@ export default {
let setYear = Number(moment(new Date()).format('YYYY')); let setYear = Number(moment(new Date()).format('YYYY'));
let initStartDate = new Date(setYear, 0, 1); let initStartDate = new Date(setYear, 0, 1);
this.startDate = initStartDate; this.startDate = initStartDate;
console.log(moment(this.startDate).format('YYYY-MM-DD'));
}, },
}, },
}; };

View File

@@ -90,7 +90,6 @@ export default {
this.msg3 = props.msg3; this.msg3 = props.msg3;
this.msg4 = props.msg4; this.msg4 = props.msg4;
this.callFnc = props.callFnc; this.callFnc = props.callFnc;
console.log(props)
}, },
alertModalClose(){ alertModalClose(){
var dimmed = document.getElementsByClassName('modal01'); var dimmed = document.getElementsByClassName('modal01');

View File

@@ -2,6 +2,7 @@ import LoginMain from '../views/LoginMain'
import LoginAuth from '../views/LoginAuth' import LoginAuth from '../views/LoginAuth'
import ResetPassword from '../views/ResetPassword' import ResetPassword from '../views/ResetPassword'
import UpdatePassword from '../views/UpdatePassword' import UpdatePassword from '../views/UpdatePassword'
// import Error404 from '@/views/ErrorPage404';
export default [ export default [
{ {
@@ -28,4 +29,10 @@ export default [
component: UpdatePassword, component: UpdatePassword,
meta: { public: true } meta: { public: true }
}, },
// {
// path: '/view/error/404',
// name: 'error404',
// component: Error404,
// meta: { public: true }
// },
] ]

View File

@@ -1,26 +1,11 @@
import httpClient from '@/common/http-client'; import httpClient from '@/common/http-client';
import axios from 'axios';
import { consts } from '@/common/config';
const login = (params) => { const login = (params) => {
return httpClient.post('/api/v1/bo/login/login', params, { headers: {"show-layer": "Yes"} },{ withCredentials: false }); return httpClient.post('/api/v1/bo/login/login', params, { headers: {"show-layer": "Yes"} },{ withCredentials: false });
}; };
const chgpwd = (params) => {
return httpClient.post('/api/oper/user/chgpwd', params);
};
const myphone = () => {
return httpClient.get('/api/oper/user/phone/self');
};
const phone = (params) => {
return httpClient.get('/api/public/auth/phone', { params: params });
};
// 삭제 예정
const reqnum = (params) => {
return httpClient.get('/api/public/auth/reqnum', { params: params });
};
const authNum = (params) => { const authNum = (params) => {
return httpClient.post('/api/v1/bo/login/authNum', params); return httpClient.post('/api/v1/bo/login/authNum', params);
}; };
@@ -38,26 +23,31 @@ const updatePassword = (params) => {
return httpClient.post('/api/v1/bo/login/updatePassword', params); return httpClient.post('/api/v1/bo/login/updatePassword', params);
}; };
const newpwd = (params) => {
return httpClient.post('/api/public/auth/newpwd', params);
};
const logout = () => { const logout = () => {
//return httpClient.get('/api/auth/logout', {headers: {"show-layer": "Yes"}}); //return httpClient.get('/api/auth/logout', {headers: {"show-layer": "Yes"}});
return httpClient.post('/api/v1/bo/login/logout', {headers: {"show-layer": "Yes"}}); return httpClient.post('/api/v1/bo/login/logout', {headers: {"show-layer": "Yes"}});
}; };
const loginCheck = (params) => {
return httpClient.post('/api/v1/bo/login/loginCheck', params, { headers: {"show-layer": "Yes"} },{ withCredentials: false });
};
const setToken = (token) => {
consts.authToken = token;
}
const getToken = () => {
return consts.authToken;
}
export default { export default {
login, login,
logout, logout,
chgpwd,
myphone,
phone,
reqnum,
confirmNum, confirmNum,
newpwd,
authNum, authNum,
resetPassword, resetPassword,
updatePassword updatePassword,
loginCheck,
setToken,
getToken
}; };

View File

@@ -6,7 +6,11 @@ const state = {
userId:null, userId:null,
userNm:null, userNm:null,
pwd: null, pwd: null,
rootUrl: null rootUrl: null,
menuUrls: [],
authToken: null,
beforeUrl: null,
isLoading: false,
}; };
const getters = { const getters = {
@@ -17,28 +21,30 @@ const getters = {
userId: state => state.userId, userId: state => state.userId,
userNm: state => state.userNm, userNm: state => state.userNm,
getPwd: state => state.pwd, getPwd: state => state.pwd,
getRootUrl: state => state.rootUrl getRootUrl: state => state.rootUrl,
getMenuUrls: state => state.menuUrls,
getAuthToken: state => state.authToken,
getBeforeUrl: state => state.beforeUrl,
isLoading: state => state.isLoading,
}; };
const mutations = { const mutations = {
saveToken: (state, token) => { saveToken: (state, token) => {
console.log('saveToken:', token);
state.token = token; state.token = token;
}, },
removeToken: (state) => { removeToken: (state) => {
console.log('removeToken:');
state.token = null; state.token = null;
}, },
isLogin: (state, value) => { isLogin: (state, value) => {
console.log("isLogin mutation : " + value); // console.log("isLogin mutation : " + value);
state.isLogin = value; state.isLogin = value;
}, },
isErrorPage: (state, value) => { isErrorPage: (state, value) => {
console.log("isErrorPage mutation : " + value); // console.log("isErrorPage mutation : " + value);
state.isErrorPage = value; state.isErrorPage = value;
}, },
isAuthChk: (state, value) => { isAuthChk: (state, value) => {
console.log("isAuthChk mutation : "+ value); // console.log("isAuthChk mutation : "+ value);
state.isAuthChk = value; state.isAuthChk = value;
}, },
savePwd: (state, value) => { savePwd: (state, value) => {
@@ -52,6 +58,18 @@ const mutations = {
}, },
rootUrl: (state, value) => { rootUrl: (state, value) => {
state.rootUrl = value; state.rootUrl = value;
},
setMenuUrls: (state, value) => {
state.menuUrls = value;
},
saveAuthToken: (state, token) => {
state.authToken = token;
},
saveBeforeUrl: (state, value) => {
state.beforeUrl = value;
},
isLoading: (state, value) => {
state.isLoading = value;
} }
}; };

View File

@@ -45,12 +45,14 @@ import { mapGetters } from 'vuex';
import api from '../service/api'; import api from '../service/api';
import { utils_mixin, chkPattern2 } from '../service/mixins'; import { utils_mixin, chkPattern2 } from '../service/mixins';
import commonModal from "../components/commonModal"; import commonModal from "../components/commonModal";
import tokenSvc from '@/common/token-service';
import axios from 'axios';
export default { export default {
name: 'Params', name: 'Params',
mixins: [utils_mixin, chkPattern2], mixins: [utils_mixin, chkPattern2],
props: { props: {
userId: { userIds: {
type: String, type: String,
default : '' default : ''
} }
@@ -72,26 +74,29 @@ export default {
timer: null, timer: null,
timeCounter: 180, timeCounter: 180,
timerStr: "03:00", timerStr: "03:00",
tempList: [] tempList: [],
accessToken: '',
}; };
}, },
components: { components: {
commonModal commonModal
}, },
created() { created() {
if(!this.getLogin){ // if(!this.getLogin){
this.$router.push({ path: '/login' }); // this.$router.push({ path: '/login' });
} // }
}, },
mounted() { mounted() {
if (localStorage.hubwebUserId) { // if (localStorage.hubwebUserId) {
this.oprtrId = localStorage.hubwebUserId; // this.oprtrId = localStorage.hubwebUserId;
} // }
this.$store.commit("login/isLogin", false); this.$store.commit("login/isLogin", false);
this.isLogin = this.getLogin; this.isLogin = this.getLogin;
this.pwd = this.getPwd; this.pwd = this.getPwd;
this.accessToken = this.getToken;
this.oprtrId = this.userId;
this.ajaxlogin(); this.ajaxlogin();
}, },
computed: { computed: {
@@ -99,7 +104,9 @@ export default {
getLogin: 'login/isLogin', getLogin: 'login/isLogin',
getErrorPage: 'login/isErrorPage', getErrorPage: 'login/isErrorPage',
getAuthChk: 'login/isAuthChk', getAuthChk: 'login/isAuthChk',
getPwd: 'login/getPwd' getPwd: 'login/getPwd',
getToken: 'login/getToken',
userId: 'login/userId',
}), }),
}, },
watch: { watch: {
@@ -121,39 +128,54 @@ export default {
} else { } else {
this.isAuth = false; this.isAuth = false;
} }
},
getToken(data){
if (data != null && data != '') {
this.accessToken = data;
} else {
this.accessToken = '';
} }
}, },
// userId(data){
// if (data != null && data != '') {
// this.oprtrId = data;
// } else {
// this.oprtrId = '';
// }
// }
},
destroyed() { destroyed() {
let cont = document.querySelector(".wrap"); let cont = document.querySelector(".wrap");
cont.classList.remove("bg-wrap"); cont.classList.remove("bg-wrap");
}, },
methods: { methods: {
// 1차 인증
async ajaxlogin() { async ajaxlogin() {
var vm = this; var vm = this;
vm.errors = null; vm.errors = null;
if (!this.oprtrId){
this.$router.push({ path: '/login' });
}
if (!this.pwd){
this.$router.push({ path: '/login' });
}
var params = { var params = {
"oprtrId": this.oprtrId, "oprtrId": this.oprtrId,
"oprtrPw": this.pwd, "accessToken": this.accessToken
} }
try { try {
const response = await api.login(params); const response = await api.loginCheck(params);
const rsp = response.data; const rsp = response.data;
if(rsp.retCode == '0000'){ if(rsp.retCode == '0000'){
var accessToken = rsp.data.accessToken;
if(vm.accessToken == accessToken){
vm.$store.commit("login/isLogin", true); vm.$store.commit("login/isLogin", true);
vm.$store.commit("login/removeToken", true);
}else{
vm.$store.commit("login/isLogin", false);
this.$router.push({ path: '/login' });
}
} else { } else {
vm.$store.commit("login/isLogin", false); vm.$store.commit("login/isLogin", false);
this.$router.push({ path: '/login' }); this.$router.push({ path: '/login' });
} }
} catch(err) { } catch(err) {
vm.$store.commit("login/isLogin", false);
this.$router.push({ path: '/login' }); this.$router.push({ path: '/login' });
} }
}, },
@@ -161,7 +183,8 @@ export default {
// 2차 인증번호 요청 // 2차 인증번호 요청
async authNum(){ async authNum(){
var vm = this; var vm = this;
let userId = vm.$route.params.userId; //let userId = vm.$route.params.userId;
let userId = this.oprtrId;
this.row = {} this.row = {}
if(!this.isLogin){ if(!this.isLogin){
@@ -241,7 +264,8 @@ export default {
// 2차 인증 확인 // 2차 인증 확인
async ajaxAuth(){ async ajaxAuth(){
var vm = this; var vm = this;
let userId = vm.$route.params.userId; let userId = this.oprtrId
this.row = {} this.row = {}
if(!this.mdn){ if(!this.mdn){
this.row.title = '휴대폰번호 확인'; this.row.title = '휴대폰번호 확인';
@@ -282,14 +306,28 @@ export default {
//인증번호 확인 //인증번호 확인
try { try {
const response = await api.confirmNum(params) const response = await api.confirmNum(params)
//const response = await axios.post('/api/v1/bo/login/confirmNum', params);
const rsp = response.data; const rsp = response.data;
if(rsp.retCode == '0000'){ if(rsp.retCode == '0000'){
vm.$store.commit("login/isLogin", true); vm.$store.commit("login/isLogin", true);
vm.$store.commit("login/isAuthChk", true); vm.$store.commit("login/isAuthChk", true);
vm.$store.commit("login/userId", rsp.data.userId) vm.$store.commit("login/userId", rsp.data.userId);
vm.$store.commit("login/userNm", rsp.data.userNm) vm.$store.commit("login/userNm", rsp.data.userNm);
var rootUrl = rsp.data.nextUrl; var rootUrl = rsp.data.nextUrl;
vm.$store.commit("login/rootUrl", rsp.data.nextUrl); vm.$store.commit("login/rootUrl", rsp.data.nextUrl);
var menuUrls = rsp.data.menuUrls;
menuUrls.push('/');
menuUrls.push('/login');
menuUrls.push('/view/login/auth');
menuUrls.push('/view/login/updatePassword');
menuUrls.push('/view/login/resetPassword');
menuUrls.push('/view/error/404');
menuUrls.push('/view/error/500');
vm.$store.commit("login/setMenuUrls", menuUrls);
vm.$store.commit("login/saveAuthToken", rsp.data.authToken);
//localStorage.authToken = rsp.data.authToken;
sessionStorage.setItem('authToken', rsp.data.authToken);
//api.setToken(rsp.data.authToken);
vm.$router.push({ path: rootUrl}); vm.$router.push({ path: rootUrl});
}else if (rsp.retCode == '4008'){ }else if (rsp.retCode == '4008'){
this.row.title = '휴대폰번호 확인'; this.row.title = '휴대폰번호 확인';
@@ -316,7 +354,6 @@ export default {
vm.$router.push({ path: '/'}); vm.$router.push({ path: '/'});
} }
} catch(err) { } catch(err) {
//alert("실패 하였습니다.");
this.row.title = '인증번호'; this.row.title = '인증번호';
this.row.msg1 = '실패 하였습니다.'; this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);

View File

@@ -45,15 +45,16 @@ export default {
}, },
created() { created() {
// 로그인 페이지 진입시 // 로그인 페이지 진입시
if(tokenSvc.getToken()){ // if(!tokenSvc.getToken()){
this.$store.commit("login/isLogin", true); // this.$store.commit("login/isLogin", true);
this.$store.commit("login/isAuthChk", true); // this.$store.commit("login/isAuthChk", true);
this.$router.push({ path: '/' }); // //this.$router.push({ path: '/' });
}else{ // }else{
this.$store.commit("login/isLogin", false); this.$store.commit("login/isLogin", false);
this.$store.commit("login/isAuthChk", false); this.$store.commit("login/isAuthChk", false);
this.$store.commit("login/isErrorPage", false); this.$store.commit("login/isErrorPage", false);
} //delete sessionStorage.authToken;
// }
}, },
mounted() { mounted() {
this.$refs.chkSaveId.checked = true; this.$refs.chkSaveId.checked = true;
@@ -61,6 +62,7 @@ export default {
if (localStorage.hubwebUserId) { if (localStorage.hubwebUserId) {
this.userId = localStorage.hubwebUserId; this.userId = localStorage.hubwebUserId;
} }
//localStorage.authToken = '';
}, },
destroyed() { destroyed() {
let cont = document.querySelector(".wrap"); let cont = document.querySelector(".wrap");
@@ -114,11 +116,19 @@ export default {
const rsp = response.data; const rsp = response.data;
if(rsp.retCode == '0000'){ if(rsp.retCode == '0000'){
vm.chgChkUserId(); vm.chgChkUserId();
//vm.$store.commit("login/savePwd", oprtrPw);
if(rsp.data == null){
vm.$store.commit("login/isLogin", false);
return;
}
vm.$store.commit("login/isLogin", true); vm.$store.commit("login/isLogin", true);
vm.$store.commit("login/savePwd", oprtrPw); var rspToken = rsp.data.accessToken;
vm.$router.push({ name: 'loginAuth',params: {userId : oprtrId}}); vm.$store.commit("login/saveToken", rspToken);
vm.$store.commit("login/userId", this.userId);
vm.$store.commit("login/savePwd", this.userPwd);
vm.$router.push({ path: rsp.data.nextUrl, params: {accessToken : rspToken}});
} else if(rsp.retCode == '1001'){ // 비밀번호 변경 } else if(rsp.retCode == '1001'){ // 비밀번호 변경
vm.chgChkUserId(); vm.chgChkUserId();
this.$store.commit("login/isLogin", true); this.$store.commit("login/isLogin", true);
@@ -127,13 +137,14 @@ export default {
this.row.title = '로그인 실패'; this.row.title = '로그인 실패';
this.row.msg1 = '아이디, 비밀번호를 확인해 주세요.'; this.row.msg1 = '아이디, 비밀번호를 확인해 주세요.';
this.$refs.commonModal.alertModalOpen(this.row); this.$refs.commonModal.alertModalOpen(this.row);
this.$store.commit("login/isLogin", false);
} else if(rsp.retCode == '4004') { // ID/PWD 불일치 } else if(rsp.retCode == '4004') { // ID/PWD 불일치
//this.row.title = '비밀번호 오류';
//this.row.msg1 = '비밀번호를 확인해주세요.';
this.row.title = '로그인 실패'; this.row.title = '로그인 실패';
this.row.msg1 = '아이디, 비밀번호를 확인해 주세요.'; this.row.msg1 = '아이디, 비밀번호를 확인해 주세요.';
this.$refs.commonModal.alertModalOpen(this.row); this.$refs.commonModal.alertModalOpen(this.row);
this.$store.commit("login/isLogin", false);
} else if(rsp.retCode == '4005') { // ID/PWD 불일치 횟수초과로 계정 잠김 4005 } else if(rsp.retCode == '4005') { // ID/PWD 불일치 횟수초과로 계정 잠김 4005
this.$store.commit("login/isLogin", false);
this.row.title = '로그인 실패'; this.row.title = '로그인 실패';
this.row.msg1 = '로그인 5회 실패하였습니다.'; this.row.msg1 = '로그인 5회 실패하였습니다.';
this.row.msg2 = '비밀번호 초기화 후 비밀번호를 변경해 주세요.'; this.row.msg2 = '비밀번호 초기화 후 비밀번호를 변경해 주세요.';
@@ -147,7 +158,9 @@ export default {
this.row.msg3 = '이용 부탁드립니다.'; this.row.msg3 = '이용 부탁드립니다.';
this.row.callFnc = 'updatePassword' this.row.callFnc = 'updatePassword'
this.$refs.commonModal.alertModalOpen(this.row); this.$refs.commonModal.alertModalOpen(this.row);
this.$store.commit("login/isLogin", false);
} else if(rsp.retCode == '4007') { } else if(rsp.retCode == '4007') {
this.$store.commit("login/isLogin", false);
this.row.title = '로그인 실패'; this.row.title = '로그인 실패';
this.row.msg1 = '아이디 상태를 확인해 주세요.'; this.row.msg1 = '아이디 상태를 확인해 주세요.';
this.row.msg2 = '(사용중인 상태만 로그인 가능합니다.)'; this.row.msg2 = '(사용중인 상태만 로그인 가능합니다.)';
@@ -160,6 +173,7 @@ export default {
this.row.title = '로그인'; this.row.title = '로그인';
this.row.msg1 = '실패 하였습니다.'; this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
this.$store.commit("login/isLogin", false);
} }
}, },

View File

@@ -64,7 +64,6 @@ export default {
try { try {
const response = await api.resetPassword(params) const response = await api.resetPassword(params)
const rsp = response.data; const rsp = response.data;
console.log("RESULT_CODE : "+rsp.retCode);
if(rsp.retCode == '0000'){ if(rsp.retCode == '0000'){
this.row.title = '비밀번호 초기화'; this.row.title = '비밀번호 초기화';
@@ -74,7 +73,6 @@ export default {
vm.$store.commit("login/isLogin", false); vm.$store.commit("login/isLogin", false);
vm.$store.commit("login/isAuthChk", false); vm.$store.commit("login/isAuthChk", false);
this.$refs.commonModal.alertModalOpen(this.row); this.$refs.commonModal.alertModalOpen(this.row);
// console.log(this.row)
} else if(rsp.retCode == '4003') { } else if(rsp.retCode == '4003') {
this.row.title = '비밀번호 초기화'; this.row.title = '비밀번호 초기화';
@@ -83,7 +81,6 @@ export default {
this.$refs.commonModal.alertModalOpen(this.row); this.$refs.commonModal.alertModalOpen(this.row);
} }
} catch(err) { } catch(err) {
console.log(err)
this.row.title = '비밀번호 초기화'; this.row.title = '비밀번호 초기화';
this.row.msg1 = '실패 하였습니다.'; this.row.msg1 = '실패 하였습니다.';
this.$refs.commonModal.alertModalOpen(this.row); this.$refs.commonModal.alertModalOpen(this.row);

View File

@@ -39,12 +39,9 @@ export default {
} }
}, },
created() { created() {
console.log('>>>>'+this.getLogin);
if(!this.getLogin){ if(!this.getLogin){
this.$router.push({ path: '/login' }); this.$router.push({ path: '/login' });
} }
// this.$store.commit("login/isLogin", true);
// this.$store.commit("login/isAuthChk", false);
}, },
computed: { computed: {
...mapGetters({ ...mapGetters({
@@ -64,7 +61,6 @@ export default {
commonModal, commonModal,
}, },
mounted() { mounted() {
// this.$refs.chkSaveId.checked = true;
if (localStorage.hubwebUserId) { if (localStorage.hubwebUserId) {
this.userId = localStorage.hubwebUserId; this.userId = localStorage.hubwebUserId;
@@ -88,8 +84,6 @@ export default {
}, },
doPwdValidate(){ doPwdValidate(){
console.log(this.userId)
//debugger;
if(lodash.isNull(this.newPw)){ if(lodash.isNull(this.newPw)){
this.row.title = '비밀번호 변경'; this.row.title = '비밀번호 변경';
this.row.msg1 = '비밀번호 확인을 입력해 주세요.'; this.row.msg1 = '비밀번호 확인을 입력해 주세요.';
@@ -140,7 +134,6 @@ export default {
try { try {
const response = await api.updatePassword(params) const response = await api.updatePassword(params)
const rsp = response.data; const rsp = response.data;
console.log("RESULT_CODE : "+rsp.retCode);
if(rsp.retCode == '0000') { if(rsp.retCode == '0000') {
this.row.title = '비밀번호 변경'; this.row.title = '비밀번호 변경';
this.row.msg1 = '비밀번호가 정상적으로 변경되었습니다.'; this.row.msg1 = '비밀번호가 정상적으로 변경되었습니다.';
@@ -164,8 +157,6 @@ export default {
} }
} catch(err) { } catch(err) {
//alert("실패 하였습니다.");
console.log(err)
this.row.title = '비밀번호 초기화'; this.row.title = '비밀번호 초기화';
this.row.msg1 = '실패 하였습니다.'; this.row.msg1 = '실패 하였습니다.';
this.$refs.commonModal.alertModalOpen(this.row); this.$refs.commonModal.alertModalOpen(this.row);
@@ -193,7 +184,6 @@ export default {
this.$refs.oldPw.focus(target); this.$refs.oldPw.focus(target);
}, },
alertCalbackFnc(callFnc){ alertCalbackFnc(callFnc){
console.log(callFnc);
if(callFnc === 'login'){ if(callFnc === 'login'){
this.$router.push({ name: 'login',params: {}}); this.$router.push({ name: 'login',params: {}});
} }

View File

@@ -80,8 +80,6 @@ export default {
}, },
methods :{ methods :{
alertModalOpen(props){ alertModalOpen(props){
console.log('>>>>>>>>>> alertModalOpen');
console.log(props.msg1);
this.title = props.title; this.title = props.title;
this.msg1 = props.msg1; this.msg1 = props.msg1;
this.msg2 = props.msg2; this.msg2 = props.msg2;

View File

@@ -242,11 +242,9 @@ export default {
}, },
methods: { methods: {
async getLiveSendSttus(){ async getLiveSendSttus(){
console.log('getLiveSendSttus Start');
try { try {
const response = await mntrngApi.liveSendSttus(); const response = await mntrngApi.liveSendSttus();
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.startTimeM = result.data.startTimeM; this.startTimeM = result.data.startTimeM;
@@ -294,15 +292,12 @@ export default {
this.succesCntAlmtD = result.data.succesCntAlmtD; this.succesCntAlmtD = result.data.succesCntAlmtD;
this.succesRtAlmtD = result.data.succesRtAlmtD; this.succesRtAlmtD = result.data.succesRtAlmtD;
} else { } else {
alert("조회정보가 없습니다.");
} }
} catch(err) { } catch(err) {
alert("실패 하였습니다.");
} }
}, },
switchSelect: function(event) { switchSelect: function(event) {
this.selectedKey = event.target.value; this.selectedKey = event.target.value;
console.log('>>>>>>>>>>>> [selectedKey]:'+this.selectedKey)
this.changeAutoUpdate(); this.changeAutoUpdate();
}, },
cancelAutoUpdate () { cancelAutoUpdate () {
@@ -311,7 +306,6 @@ export default {
changeAutoUpdate () { changeAutoUpdate () {
clearInterval(this.timer) clearInterval(this.timer)
this.timer = setInterval(this.getLiveSendSttus, this.selectedKey * 1000 * 60) this.timer = setInterval(this.getLiveSendSttus, this.selectedKey * 1000 * 60)
console.log('>>>>>>>>>>>> [changeAutoUpdate()_selectTime]:'+this.selectedKey * 1000 * 60)
} }
}, },

View File

@@ -223,7 +223,6 @@ export default {
let page = 1; let page = 1;
// 페이지 정보 및 검색 조건 // 페이지 정보 및 검색 조건
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log('getCondition : ' + getCondition);
// store에 저장된 페이지 정보 및 검색 조건을 불러오기 // store에 저장된 페이지 정보 및 검색 조건을 불러오기
let isKeep = false; let isKeep = false;
@@ -238,7 +237,6 @@ export default {
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -259,7 +257,6 @@ export default {
this.grid.params.phone = this.grid.params.searchText1; this.grid.params.phone = this.grid.params.searchText1;
this.grid.params.callbackNumber = this.grid.params.searchText2; this.grid.params.callbackNumber = this.grid.params.searchText2;
this.grid.params.custNm = this.grid.params.searchText3; this.grid.params.custNm = this.grid.params.searchText3;
console.log(this.grid.params);
} }
} }
this.$refs.table.search(this.grid.params, isKeep); this.$refs.table.search(this.grid.params, isKeep);
@@ -283,8 +280,7 @@ export default {
if (this.startDate > this.endDate) { if (this.startDate > this.endDate) {
this.startDate = this.endDate; this.startDate = this.endDate;
} }
// console.log(this.disabledSDate)
// this.grid.params.startDt = day
}, },
selectedEndDate(day) { selectedEndDate(day) {
if (day != undefined && day != null) { if (day != undefined && day != null) {
@@ -317,7 +313,6 @@ export default {
}, },
sendStoreData: function () { sendStoreData: function () {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -325,7 +320,6 @@ export default {
}); });
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log("getCondition : " + getCondition.perPage);
}, },
doValidate() { doValidate() {
// 발송일자 필수입력체크 // 발송일자 필수입력체크

View File

@@ -136,7 +136,6 @@ export default {
this.row.blckRsnCd = this.blckRsnCd; this.row.blckRsnCd = this.blckRsnCd;
this.row.meno = this.meno; this.row.meno = this.meno;
this.regId = 'admin'; this.regId = 'admin';
console.log(this.row);
try { try {
const response = await riskMgtApi.insertIntrcp(this.row); const response = await riskMgtApi.insertIntrcp(this.row);
@@ -153,7 +152,6 @@ export default {
} }
this.toComplete(); this.toComplete();
} catch (err) { } catch (err) {
console.log(err);
this.row.title = '발신번호 차단'; this.row.title = '발신번호 차단';
this.row.msg1 = '실패 하였습니다.'; this.row.msg1 = '실패 하였습니다.';
this.$parent.alertInsert(this.row); this.$parent.alertInsert(this.row);
@@ -222,7 +220,6 @@ export default {
const character = characters[i] const character = characters[i]
const decimal = character.charCodeAt(0) const decimal = character.charCodeAt(0)
const byte = this.getByteLength(decimal) // 글자 한 개가 몇 바이트 길이인지 구해주기 const byte = this.getByteLength(decimal) // 글자 한 개가 몇 바이트 길이인지 구해주기
// console.log(byte)
// 현재까지의 바이트 길이와 더해 최대 바이트 길이를 넘지 않으면 // 현재까지의 바이트 길이와 더해 최대 바이트 길이를 넘지 않으면
if (totalByte + byte <= maxByte) { if (totalByte + byte <= maxByte) {
totalByte += byte // 바이트 길이 값을 더해 현재까지의 총 바이트 길이 값을 구함 totalByte += byte // 바이트 길이 값을 더해 현재까지의 총 바이트 길이 값을 구함

View File

@@ -140,8 +140,6 @@ export default {
this.row.memo = this.memo; this.row.memo = this.memo;
this.row.blckYn = this.blckYn; this.row.blckYn = this.blckYn;
this.row.list = this.msgBlckwordList this.row.list = this.msgBlckwordList
console.log(this.row)
// return false;
try { try {
const response = await riskMgtApi.msgInsertIntrcp(this.row); const response = await riskMgtApi.msgInsertIntrcp(this.row);
const result = response.data; const result = response.data;
@@ -226,7 +224,6 @@ export default {
const character = characters[i] const character = characters[i]
const decimal = character.charCodeAt(0) const decimal = character.charCodeAt(0)
const byte = this.getByteLength(decimal) // 글자 한 개가 몇 바이트 길이인지 구해주기 const byte = this.getByteLength(decimal) // 글자 한 개가 몇 바이트 길이인지 구해주기
// console.log(byte)
// 현재까지의 바이트 길이와 더해 최대 바이트 길이를 넘지 않으면 // 현재까지의 바이트 길이와 더해 최대 바이트 길이를 넘지 않으면
if (totalByte + byte <= maxByte) { if (totalByte + byte <= maxByte) {
totalByte += byte // 바이트 길이 값을 더해 현재까지의 총 바이트 길이 값을 구함 totalByte += byte // 바이트 길이 값을 더해 현재까지의 총 바이트 길이 값을 구함

View File

@@ -106,7 +106,6 @@ export default {
try { try {
const response = await riskMgtApi.intrcpDetail(this.row); const response = await riskMgtApi.intrcpDetail(this.row);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.blckSndrno = result.data.blcksndrno; this.blckSndrno = result.data.blcksndrno;
this.sndblckTpCd = result.data.sndblckTpCd; this.sndblckTpCd = result.data.sndblckTpCd;
@@ -117,7 +116,6 @@ export default {
this.meno = result.data.meno; this.meno = result.data.meno;
} }
} catch(err) { } catch(err) {
alert("실패 하였습니다.");
} }
var dimmed = document.getElementsByClassName('modal53'); var dimmed = document.getElementsByClassName('modal53');
for(var i = 0; i < dimmed.length; i++){ for(var i = 0; i < dimmed.length; i++){
@@ -144,7 +142,6 @@ export default {
//삭제버튼 //삭제버튼
async IntrcpDeleteModal(){ async IntrcpDeleteModal(){
this.setCodeDate(); this.setCodeDate();
// if(window.confirm('삭제 하시겠습니까?')){
try { try {
const response = await riskMgtApi.deleteIntrcp(this.row); const response = await riskMgtApi.deleteIntrcp(this.row);
const result = response.data; const result = response.data;
@@ -152,22 +149,16 @@ export default {
this.row.title = '발신번호 차단'; this.row.title = '발신번호 차단';
this.row.msg1 = '삭제하였습니다.'; this.row.msg1 = '삭제하였습니다.';
this.$parent.alertInsert(this.row); this.$parent.alertInsert(this.row);
// grid.reloadData();
// this.$refs.table.reloadData();
this.toComplete(); this.toComplete();
} }
} catch(err) { } catch(err) {
alert("실패 하였습니다.");
} }
// }
}, },
//수정버튼 //수정버튼
async IntrcpUpdateModal(){ async IntrcpUpdateModal(){
// if(this.doValidate() && window.confirm('수정 하시겠습니까?')){
try { try {
const response = await riskMgtApi.updateIntrcp(this.row); const response = await riskMgtApi.updateIntrcp(this.row);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.row.title = '발신번호 차단'; this.row.title = '발신번호 차단';
this.row.msg1 = '수정 하였습니다.'; this.row.msg1 = '수정 하였습니다.';
@@ -175,7 +166,6 @@ export default {
this.toComplete(); this.toComplete();
} }
} catch(err) { } catch(err) {
alert("실패 하였습니다.");
} }
// } // }
}, },
@@ -216,11 +206,7 @@ export default {
this.$refs.ValidationConfirmPopup.confirmDeleteOpen(); this.$refs.ValidationConfirmPopup.confirmDeleteOpen();
} }
}, },
// formReset(){
// var type= this.insertType;
// Object.assign(this.$data, this.$options.data());
// this.insertType = type;
// },
// 바이트길이 구하기 // 바이트길이 구하기
getByteLength: function (decimal) { getByteLength: function (decimal) {
return (decimal >> 7) || (this.LINE_FEED === decimal) ? 2 : 1 return (decimal >> 7) || (this.LINE_FEED === decimal) ? 2 : 1

View File

@@ -140,29 +140,21 @@ export default {
}, },
async IntrcpMsgDetailModalOpen(props) { async IntrcpMsgDetailModalOpen(props) {
this.setCodeDate(); this.setCodeDate();
// console.log(props);
this.row.seqNo = props.seqNo; this.row.seqNo = props.seqNo;
try { try {
const response = await riskMgtApi.msgIntrcpDetail(this.row); const response = await riskMgtApi.msgIntrcpDetail(this.row);
const result = response.data; const result = response.data;
console.log('----------------');
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.blckContCd = result.data.blckContCd; this.blckContCd = result.data.blckContCd;
this.blckRsnCd = result.data.blckRsnCd; this.blckRsnCd = result.data.blckRsnCd;
this.memo = result.data.memo; this.memo = result.data.memo;
this.blckYn = result.data.blckYn; this.blckYn = result.data.blckYn;
this.msgBlckwordList = result.data.list; this.msgBlckwordList = result.data.list;
// this.row.chgDt = result.data.chgDt;
// this.row.regId = result.data.regId;
// this.row.list = result.data.msgBlckwordList
} }
} catch (err) { } catch (err) {
// alert("실패 하였습니다.");
} }
console.log(this.blckContCd);
console.log('-----------')
console.log(this.row)
var dimmed = document.getElementsByClassName('modal58'); var dimmed = document.getElementsByClassName('modal58');
for (var i = 0; i < dimmed.length; i++) { for (var i = 0; i < dimmed.length; i++) {
dimmed[i].style.display = 'block'; dimmed[i].style.display = 'block';
@@ -314,7 +306,6 @@ export default {
const character = characters[i] const character = characters[i]
const decimal = character.charCodeAt(0) const decimal = character.charCodeAt(0)
const byte = this.getByteLength(decimal) // 글자 한 개가 몇 바이트 길이인지 구해주기 const byte = this.getByteLength(decimal) // 글자 한 개가 몇 바이트 길이인지 구해주기
// console.log(byte)
// 현재까지의 바이트 길이와 더해 최대 바이트 길이를 넘지 않으면 // 현재까지의 바이트 길이와 더해 최대 바이트 길이를 넘지 않으면
if (totalByte + byte <= maxByte) { if (totalByte + byte <= maxByte) {
totalByte += byte // 바이트 길이 값을 더해 현재까지의 총 바이트 길이 값을 구함 totalByte += byte // 바이트 길이 값을 더해 현재까지의 총 바이트 길이 값을 구함

View File

@@ -248,7 +248,6 @@ export default {
}, },
methods: { methods: {
search: function (isKeep) { search: function (isKeep) {
console.log(this.grid.params);
this.grid.params.blckDt = moment(this.startDate).format('YYYYMMDD'); this.grid.params.blckDt = moment(this.startDate).format('YYYYMMDD');
this.grid.params.blckTpCd = this.blckTpCd this.grid.params.blckTpCd = this.blckTpCd
this.grid.params.blckRsnCd = this.blckRsnCd this.grid.params.blckRsnCd = this.blckRsnCd
@@ -258,7 +257,6 @@ export default {
}, },
sendStoreData: function () { sendStoreData: function () {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -266,7 +264,6 @@ export default {
}); });
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
//console.log("getCondition : "+ getCondition.perPage);
}, },
setPeriodDay(day) { setPeriodDay(day) {
this.periodDay = day; this.periodDay = day;
@@ -281,7 +278,6 @@ export default {
if (day != undefined && day != null) { if (day != undefined && day != null) {
this.periodDay = day; this.periodDay = day;
} }
console.log(this.startDate);
}, },
selectedEndDate(day) { selectedEndDate(day) {
if (day != undefined && day != null) { if (day != undefined && day != null) {
@@ -292,7 +288,6 @@ export default {
if (type != undefined && type != null) { if (type != undefined && type != null) {
} }
console.log(this.startDate);
}, },
customFormatter: function (date) { customFormatter: function (date) {
if (this.sDateDiv == 'month') { if (this.sDateDiv == 'month') {
@@ -305,10 +300,6 @@ export default {
}, },
//회원 상세페이지로 이동 //회원 상세페이지로 이동
custDetail(props) { custDetail(props) {
//this.row.custNm = props.serviceId;
console.log('=-==-=-=-=');
console.log(props);
this.row.serviceId = props.serviceId; this.row.serviceId = props.serviceId;
this.$router.push({name: 'subsDetail', params: this.row}); this.$router.push({name: 'subsDetail', params: this.row});
}, },
@@ -350,7 +341,6 @@ export default {
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,

View File

@@ -115,7 +115,6 @@ class CustomATagRenderer {
addEvent(selEl) { addEvent(selEl) {
selEl.addEventListener("click", () => { selEl.addEventListener("click", () => {
const {callback} = this.props["cgrido" + this.props.colName].options; const {callback} = this.props["cgrido" + this.props.colName].options;
console.log(this.props);
callback(this.props); callback(this.props);
}); });
} }
@@ -214,11 +213,9 @@ export default {
}, },
methods: { methods: {
search: function (isKeep) { search: function (isKeep) {
console.log(this.grid.params);
this.grid.params.blckRsnCd = this.blckRsnCd this.grid.params.blckRsnCd = this.blckRsnCd
this.grid.params.blckYn = this.blckYn this.grid.params.blckYn = this.blckYn
this.grid.params.sndblckTpCd = this.sndblckTpCd this.grid.params.sndblckTpCd = this.sndblckTpCd
//this.grid.pagePerRows = this.perPageCnt
this.$refs.table.search(this.grid.params, isKeep); this.$refs.table.search(this.grid.params, isKeep);
this.sendStoreData(); this.sendStoreData();
@@ -229,7 +226,6 @@ export default {
}, },
sendStoreData: function () { sendStoreData: function () {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -237,7 +233,6 @@ export default {
}); });
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log("getCondition : " + getCondition.perPage);
}, },
setCodeData() { setCodeData() {
// 상태 옵션 셋팅. // 상태 옵션 셋팅.
@@ -257,34 +252,22 @@ export default {
this.$refs.insertIntrcpPop.ModalOpen(); this.$refs.insertIntrcpPop.ModalOpen();
}, },
inDetailPop(props) { inDetailPop(props) {
console.log('======');
console.log(props);
this.$refs.intrcpDetailPopup.IntrcpDetailModalOpen(props); this.$refs.intrcpDetailPopup.IntrcpDetailModalOpen(props);
}, },
// formReset(){
// var type= this.insertType;
// Object.assign(this.$data, this.$options.data());
// this.insertType = type;
// },
alertInsert(props) { alertInsert(props) {
console.log(props);
this.$refs.commonModal.alertModalOpen(props); this.$refs.commonModal.alertModalOpen(props);
}, },
confirmInsert(props) { confirmInsert(props) {
this.$refs.commonModal.confirmModalOpen(props); this.$refs.commonModal.confirmModalOpen(props);
}, },
confirmCalbackFnc: function (props) { confirmCalbackFnc: function (props) {
// if(props.result){
// // this.doInsert(props.result);
// }
}, },
}, },
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,

View File

@@ -185,7 +185,6 @@ export default {
}, },
methods: { methods: {
search: function (isKeep) { search: function (isKeep) {
console.log(this.grid.params);
this.grid.params.blckRsnCd = this.blckRsnCd; this.grid.params.blckRsnCd = this.blckRsnCd;
this.grid.pagePerRows = this.perPageCnt this.grid.pagePerRows = this.perPageCnt
@@ -198,7 +197,6 @@ export default {
}, },
sendStoreData: function () { sendStoreData: function () {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -206,13 +204,11 @@ export default {
}); });
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
//console.log("getCondition : "+ getCondition.perPage);
}, },
ModalOpen: function (target) { ModalOpen: function (target) {
this.$refs.InsertMsgPop.ModalOpen(target); this.$refs.InsertMsgPop.ModalOpen(target);
}, },
msgDetailPop(props) { msgDetailPop(props) {
// console.log(props);
this.$refs.IntrcpMsgDetail.IntrcpMsgDetailModalOpen(props); this.$refs.IntrcpMsgDetail.IntrcpMsgDetailModalOpen(props);
}, },
msgAlertModalOpen(props) { msgAlertModalOpen(props) {
@@ -223,7 +219,6 @@ export default {
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,

View File

@@ -193,8 +193,6 @@ export default {
}, },
methods: { methods: {
search: function (isKeep) { search: function (isKeep) {
console.log('this.perPageCnt' + this.perPageCnt);
//console.log(this.grid.params);
this.$refs.table.search(this.grid.params, isKeep); this.$refs.table.search(this.grid.params, isKeep);
this.sendStoreData(); this.sendStoreData();
}, },
@@ -203,7 +201,6 @@ export default {
}, },
sendStoreData: function () { sendStoreData: function () {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -211,11 +208,9 @@ export default {
}); });
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
//console.log("getCondition : "+ getCondition.perPage);
}, },
//회원 상세페이지로 이동 //회원 상세페이지로 이동
memberDetail(props) { memberDetail(props) {
console.log(props);
this.row.serviceId = props.userId; this.row.serviceId = props.userId;
this.$router.push({name: 'subsDetail', params: this.row}); this.$router.push({name: 'subsDetail', params: this.row});
} }
@@ -223,7 +218,6 @@ export default {
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,

View File

@@ -59,10 +59,6 @@ export default {
}, },
setAdminInfo: function(props){ setAdminInfo: function(props){
console.log(props);
// console.log('childData', this.$parent.childData)
// this.getParent('numberRegPop').setAdminInfo(props);
// this.$emit('event-data', changeData)
this.$emit('event-data', props) this.$emit('event-data', props)
this.adminNmPopClose(); this.adminNmPopClose();
}, },
@@ -76,7 +72,6 @@ export default {
}, },
// 모달 끄기 // 모달 끄기
adminNmPopClose(){ adminNmPopClose(){
console.log('adminNm modal close');
var dimmed = document.getElementsByClassName('modal44'); var dimmed = document.getElementsByClassName('modal44');
for(var i = 0; i < dimmed.length; i++){ for(var i = 0; i < dimmed.length; i++){
dimmed[i].style.display = 'none'; dimmed[i].style.display = 'none';
@@ -88,15 +83,11 @@ export default {
this.row.searchText1 = this.searchText1 this.row.searchText1 = this.searchText1
const response = await sendNumMgtApi.adminList(this.row); const response = await sendNumMgtApi.adminList(this.row);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.list = result.data.list this.list = result.data.list
} }
} catch (error) { } catch (error) {
// this.row.title = '청약고객관리';
// this.row.msg1 = '실패 하였습니다.';
// this.$refs.commmonModal.alertModalOpen(this.row);
alert(error);
} }
}, },
formReset(){ formReset(){

View File

@@ -106,10 +106,8 @@ import commonModal from "@/components/modal/commonModal";
export default { export default {
name: "numberRegPop", name: "numberRegPop",
// mixins: [utils_mixin, chkPattern2],
watch:{ watch:{
nmineeDivCd(){ nmineeDivCd(){
console.log('watch : ', this.nmineeDivCd)
} }
}, },
data(){ data(){
@@ -164,19 +162,14 @@ export default {
}, },
async apprDetail(props){ async apprDetail(props){
try { try {
console.log(props)
this.row.regReqNo = props.regReqNo this.row.regReqNo = props.regReqNo
this.row.docNo = props.docNo this.row.docNo = props.docNo
const response = await sendNumMgtApi.apprDetail(this.row); const response = await sendNumMgtApi.apprDetail(this.row);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.regReqNo = result.data.regReqNo this.regReqNo = result.data.regReqNo
this.docNo = result.data.docNo this.docNo = result.data.docNo
// this.reqNo = result.data.regNo
// this.fileNm = result.data.fileNm
// this.filePath = result.data.filePath
this.docTitle = result.data.docTitle this.docTitle = result.data.docTitle
this.regDt = result.data.regDt this.regDt = result.data.regDt
this.custNm = result.data.custNm this.custNm = result.data.custNm
@@ -190,7 +183,6 @@ export default {
this.memo = result.data.memo this.memo = result.data.memo
this.cmpltDt = result.data.cmpltDt this.cmpltDt = result.data.cmpltDt
console.log(this.reqNo)
var apprCnt=0; var apprCnt=0;
var rejtCnt=0; var rejtCnt=0;
this.numList.forEach(function(value, index) { this.numList.forEach(function(value, index) {
@@ -223,7 +215,6 @@ export default {
}, },
allApprSttus(event) { allApprSttus(event) {
var data = event.target.value; var data = event.target.value;
console.log(data);
this.numList.forEach(function(value, index) { this.numList.forEach(function(value, index) {
value.sttusCd = data value.sttusCd = data
}); });
@@ -236,7 +227,6 @@ export default {
var apprCnt=0; var apprCnt=0;
var rejtCnt=0; var rejtCnt=0;
this.numList.forEach(function(value, index) { this.numList.forEach(function(value, index) {
// value.sttusCd = data
if(value.sttusCd == '01' || value.sttusCd == '02' ){ if(value.sttusCd == '01' || value.sttusCd == '02' ){
apprCnt = apprCnt + 1; apprCnt = apprCnt + 1;
}else if(value.sttusCd == '03'){ }else if(value.sttusCd == '03'){
@@ -250,7 +240,6 @@ export default {
} }
}, },
updateSttus(){ updateSttus(){
// 컨펌??
this.doSave() this.doSave()
}, },
async doSave(){ async doSave(){
@@ -259,11 +248,9 @@ export default {
this.row.adminId = this.adminId this.row.adminId = this.adminId
this.row.list = this.numList this.row.list = this.numList
console.log(this.row)
try{ try{
const response = await sendNumMgtApi.updateAppr(this.row); const response = await sendNumMgtApi.updateAppr(this.row);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.apprDetailPopClose() this.apprDetailPopClose()
this.$parent.search() this.$parent.search()

View File

@@ -101,7 +101,7 @@ export default {
// mixins: [utils_mixin, chkPattern2], // mixins: [utils_mixin, chkPattern2],
watch:{ watch:{
nmineeDivCd(){ nmineeDivCd(){
console.log('watch : ', this.nmineeDivCd) // console.log('watch : ', this.nmineeDivCd)
} }
}, },
data(){ data(){
@@ -149,7 +149,6 @@ export default {
numberDetailPopOpen(props){ numberDetailPopOpen(props){
// this.formReset(); // this.formReset();
console.log(props)
var dimmed = document.getElementsByClassName('dimmed'); var dimmed = document.getElementsByClassName('dimmed');
dimmed[0].style.display = 'block'; dimmed[0].style.display = 'block';
var wrap = document.getElementsByClassName('popup-wrap'); var wrap = document.getElementsByClassName('popup-wrap');
@@ -162,13 +161,11 @@ export default {
}, },
async numberDetail(props){ async numberDetail(props){
try { try {
console.log(props)
this.row.regReqNo = props.regReqNo this.row.regReqNo = props.regReqNo
this.row.sndrno = props.sndrno this.row.sndrno = props.sndrno
this.row.seqNo = props.seqNo this.row.seqNo = props.seqNo
const response = await sendNumMgtApi.numberDetail(this.row); const response = await sendNumMgtApi.numberDetail(this.row);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.adminId = result.data.adminId this.adminId = result.data.adminId

View File

@@ -200,7 +200,6 @@ export default {
mixins: [utils_mixin, chkPattern2], mixins: [utils_mixin, chkPattern2],
watch: { watch: {
nmineeDivCd() { nmineeDivCd() {
console.log('watch : ', this.nmineeDivCd)
} }
}, },
data() { data() {
@@ -266,7 +265,6 @@ export default {
this.$refs.admnListPop.adminNmPopOpen(); this.$refs.admnListPop.adminNmPopOpen();
}, },
setChildData(data) { setChildData(data) {
console.log(data)
this.adminId = data.adminId this.adminId = data.adminId
this.custNm = data.custNm this.custNm = data.custNm
this.bRegNo = data.bregNo this.bRegNo = data.bregNo
@@ -284,7 +282,6 @@ export default {
}, },
changeNmineDiv(event) { changeNmineDiv(event) {
var data = event.target.value; var data = event.target.value;
console.log(data)
if (data === '01') { if (data === '01') {
this.fileType = 1 this.fileType = 1
} }
@@ -834,9 +831,6 @@ export default {
const response = await sendNumMgtApi.insertNumber(this.adminId, this.custNm, this.bRegNo, this.nmineeDivCd, this.saveSendNums, this.bizrAuthYn, this.custSeq, this.bRegNo) const response = await sendNumMgtApi.insertNumber(this.adminId, this.custNm, this.bRegNo, this.nmineeDivCd, this.saveSendNums, this.bizrAuthYn, this.custSeq, this.bRegNo)
const result = response.data; const result = response.data;
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
//alert(562);
console.log('---------');
console.log(result);
if(result.data.list != null && result.data.list.length > 0){ if(result.data.list != null && result.data.list.length > 0){
this.row.title = '발신번호 등록'; this.row.title = '발신번호 등록';
var failMsg = ""; var failMsg = "";

View File

@@ -79,8 +79,6 @@ export default {
}, },
methods :{ methods :{
alertModalOpen(props){ alertModalOpen(props){
console.log("@@@@@@@@@@")
console.log(props)
var dimmed = document.getElementsByClassName('alertCommon'); var dimmed = document.getElementsByClassName('alertCommon');
for(var i = 0; i < dimmed.length; i++){ for(var i = 0; i < dimmed.length; i++){
dimmed[i].style.display = 'block'; dimmed[i].style.display = 'block';

View File

@@ -34,7 +34,6 @@ const insertNumber = (adminId, custNm, bRegNo, nmineeDivCd, numberInputs, bizrAu
row.bizrAuthYn = bizrAuthYn row.bizrAuthYn = bizrAuthYn
row.custSeq = custSeq row.custSeq = custSeq
console.log(row)
formData.append('key', new Blob([ JSON.stringify(row) ], {type : "application/json"})); formData.append('key', new Blob([ JSON.stringify(row) ], {type : "application/json"}));
let url = "/api/v1/bo/sendNumMgt/insertNumber"; let url = "/api/v1/bo/sendNumMgt/insertNumber";
@@ -64,7 +63,6 @@ const insertNumber1 = (communicationFile, tenureFile ,businessFile, identificati
row.bizrAuthYn = bizrAuthYn row.bizrAuthYn = bizrAuthYn
row.custSeq = custSeq row.custSeq = custSeq
console.log(row)
formData.append('key', new Blob([ JSON.stringify(row) ], {type : "application/json"})); formData.append('key', new Blob([ JSON.stringify(row) ], {type : "application/json"}));
let url = "/api/v1/bo/sendNumMgt/insertNumber"; let url = "/api/v1/bo/sendNumMgt/insertNumber";
@@ -99,8 +97,6 @@ const insertNumber2 = (communicationFile, delegationFile, attorneyFile, otherBus
row.bizrAuthYn = bizrAuthYn row.bizrAuthYn = bizrAuthYn
row.custSeq = custSeq row.custSeq = custSeq
console.log(row)
formData.append('key', new Blob([ JSON.stringify(row) ], {type : "application/json"})); formData.append('key', new Blob([ JSON.stringify(row) ], {type : "application/json"}));
let url = "/api/v1/bo/sendNumMgt/insertNumber"; let url = "/api/v1/bo/sendNumMgt/insertNumber";
@@ -117,7 +113,6 @@ const updateAppr = (params) => {
} }
const fileDownload = (params) => { const fileDownload = (params) => {
console.log(params)
axios({ axios({
method: 'POST', method: 'POST',
url: '/api/v1/bo/sendNumMgt/filedownload', url: '/api/v1/bo/sendNumMgt/filedownload',
@@ -132,7 +127,6 @@ const fileDownload = (params) => {
if (!data) { if (!data) {
return return
} }
console.log(response)
const url = window.URL.createObjectURL(new Blob([data])) const url = window.URL.createObjectURL(new Blob([data]))
const a = document.createElement('a') const a = document.createElement('a')
a.style.display = 'none' a.style.display = 'none'
@@ -144,8 +138,6 @@ const fileDownload = (params) => {
window.URL.revokeObjectURL(url) window.URL.revokeObjectURL(url)
}) })
.catch(response => { .catch(response => {
console.log(response)
alert(error);
}) })
} }

View File

@@ -184,7 +184,6 @@ export default {
}, },
methods: { methods: {
search: function (isKeep) { search: function (isKeep) {
console.log(this.grid.params);
this.grid.params.searchType1 = this.searchType1 this.grid.params.searchType1 = this.searchType1
this.grid.params.searchType2 = this.searchType2 this.grid.params.searchType2 = this.searchType2
this.grid.perPage = this.perPageCnt this.grid.perPage = this.perPageCnt
@@ -193,7 +192,6 @@ export default {
}, },
sendStoreData: function () { sendStoreData: function () {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -205,10 +203,8 @@ export default {
}); });
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
//console.log("getCondition : "+ getCondition.perPage);
}, },
apprDetail(props) { apprDetail(props) {
console.log(props)
this.$refs.apprDetailPop.apprDetailPopOpen(props) this.$refs.apprDetailPop.apprDetailPopOpen(props)
}, },
changePerPage: function () { // 페이지당 조회할 개수 changePerPage: function () { // 페이지당 조회할 개수
@@ -218,7 +214,6 @@ export default {
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,

View File

@@ -77,6 +77,7 @@
:noDataStr="grid.noDataStr" :noDataStr="grid.noDataStr"
:addCls="grid.addCls" :addCls="grid.addCls"
:header="grid.headder" :header="grid.headder"
:pageRange="grid.pageRange"
></custom-grid> ></custom-grid>
</div> </div>
@@ -141,6 +142,7 @@ export default {
isCheckbox: true, isCheckbox: true,
initialRequest: false, initialRequest: false,
addCls: 'box_OFvis', addCls: 'box_OFvis',
pageRange: 1,
header: [ header: [
[ [
{header: 'NO', childNames: []}, {header: 'NO', childNames: []},
@@ -218,7 +220,6 @@ export default {
let page = 1; let page = 1;
// 페이지 정보 및 검색 조건 // 페이지 정보 및 검색 조건
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log('getCondition : ' + getCondition);
// store에 저장된 페이지 정보 및 검색 조건을 불러오기 // store에 저장된 페이지 정보 및 검색 조건을 불러오기
let isKeep = false; let isKeep = false;
@@ -232,12 +233,10 @@ export default {
}, },
methods: { methods: {
search: function (isKeep) { search: function (isKeep) {
console.log(this.grid.params);
this.grid.params.searchType1 = this.searchType1 this.grid.params.searchType1 = this.searchType1
this.grid.params.searchType2 = this.searchType2 this.grid.params.searchType2 = this.searchType2
this.grid.params.searchType3 = this.searchType3 this.grid.params.searchType3 = this.searchType3
this.grid.params.searchType4 = this.searchType4 this.grid.params.searchType4 = this.searchType4
console.log(this.$data)
if(this.isFirst){ if(this.isFirst){
this.grid.pagePerRows = 50 this.grid.pagePerRows = 50
} }
@@ -247,20 +246,17 @@ export default {
}, },
sendStoreData: function () { sendStoreData: function () {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
params: this.grid.params params: this.grid.params
}); });
// const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
}, },
numberRegPopOpen: function () { numberRegPopOpen: function () {
this.$refs.numberRegPop.numberRegPopopen(); this.$refs.numberRegPop.numberRegPopopen();
}, },
numberDetail(props) { numberDetail(props) {
console.log(props)
this.$refs.numberDetailPop.numberDetailPopOpen(props); this.$refs.numberDetailPop.numberDetailPopOpen(props);
}, },
commonModalOpen(row) { commonModalOpen(row) {
@@ -294,7 +290,6 @@ export default {
}, },
doValidate() { //로우데이터 삭제하도록 수정 doValidate() { //로우데이터 삭제하도록 수정
console.log("totalItems >> " + this.totalItems);
if (this.totalItems == 0) { if (this.totalItems == 0) {
this.row.title = '문자발신번호 관리'; this.row.title = '문자발신번호 관리';
this.row.msg1 = '검색 결과가 없습니다.'; this.row.msg1 = '검색 결과가 없습니다.';
@@ -310,13 +305,10 @@ export default {
} }
//const param = chkList.map((row)=>({regReqNo:row.regReqNo} )); //const param = chkList.map((row)=>({regReqNo:row.regReqNo} ));
const param = chkList.map((row) => ({seqNo: row.seqNo})); const param = chkList.map((row) => ({seqNo: row.seqNo}));
console.log(param)
this.row.list = param; this.row.list = param;
console.log(this.row);
return true; return true;
}, },
confirmCalbackFnc(props) { confirmCalbackFnc(props) {
console.log(props)
if (props.result) { if (props.result) {
this.numberDelete(); this.numberDelete();
} }
@@ -328,7 +320,6 @@ export default {
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,

View File

@@ -143,7 +143,6 @@ export default {
let page = 1; let page = 1;
// 페이지 정보 및 검색 조건 // 페이지 정보 및 검색 조건
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log('getCondition : ' + getCondition);
// store에 저장된 페이지 정보 및 검색 조건을 불러오기 // store에 저장된 페이지 정보 및 검색 조건을 불러오기
let isKeep = false; let isKeep = false;
@@ -164,7 +163,6 @@ export default {
}, },
sendStoreData: function () { sendStoreData: function () {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -172,7 +170,6 @@ export default {
}); });
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log("getCondition : " + getCondition.perPage);
}, },
changePerPage: function () { // 페이지당 조회할 개수 changePerPage: function () { // 페이지당 조회할 개수
this.grid.pagePerRows = this.perPageCnt; this.grid.pagePerRows = this.perPageCnt;
@@ -182,7 +179,6 @@ export default {
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,

View File

@@ -164,7 +164,6 @@ export default {
}, },
methods: { methods: {
search: function (isKeep) { search: function (isKeep) {
console.log(this.grid.params);
this.grid.params.searchType1 = this.searchType1 this.grid.params.searchType1 = this.searchType1
this.grid.params.searchType2 = this.searchType2 this.grid.params.searchType2 = this.searchType2
this.$refs.table.search(this.grid.params, isKeep); this.$refs.table.search(this.grid.params, isKeep);
@@ -172,7 +171,6 @@ export default {
}, },
sendStoreData: function () { sendStoreData: function () {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -183,8 +181,6 @@ export default {
} }
}); });
const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
//console.log("getCondition : "+ getCondition.perPage);
}, },
changePerPage: function () { // 페이지당 조회할 개수 changePerPage: function () { // 페이지당 조회할 개수
this.grid.pagePerRows = this.perPageCnt; this.grid.pagePerRows = this.perPageCnt;
@@ -195,7 +191,6 @@ export default {
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,

View File

@@ -259,7 +259,6 @@ export default {
let page = 1; let page = 1;
// 페이지 정보 및 검색 조건 // 페이지 정보 및 검색 조건
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log('getCondition : ' + getCondition);
// store에 저장된 페이지 정보 및 검색 조건을 불러오기 // store에 저장된 페이지 정보 및 검색 조건을 불러오기
let isKeep = false; let isKeep = false;
@@ -274,7 +273,6 @@ export default {
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -285,18 +283,14 @@ export default {
}, },
methods: { methods: {
search: function (isKeep) { search: function (isKeep) {
console.log('>>>>>>> search Start >>>>>>');
this.grid.params = { this.grid.params = {
startDay: moment(this.startDate).format('YYYYMMDD'), startDay: moment(this.startDate).format('YYYYMMDD'),
endDay: moment(this.endDate).format('YYYYMMDD'), endDay: moment(this.endDate).format('YYYYMMDD'),
custNm: this.grid.params.custNm, custNm: this.grid.params.custNm,
bizrno: this.grid.params.bizrno bizrno: this.grid.params.bizrno
}; };
console.log('this.perPageCnt' + this.perPageCnt);
console.log(this.grid.params);
if (moment(this.grid.params.startDay).isBefore(moment(this.grid.params.endDay).subtract(1, 'months').format('YYYYMMDD'))) { if (moment(this.grid.params.startDay).isBefore(moment(this.grid.params.endDay).subtract(1, 'months').format('YYYYMMDD'))) {
//alert('검색 기간은 최대 1개월까지 선택 가능 합니다.');
this.row.title = '발송통계'; this.row.title = '발송통계';
this.row.msg1 = '검색 기간은 최대 1개월까지 선택 가능 합니다.'; this.row.msg1 = '검색 기간은 최대 1개월까지 선택 가능 합니다.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
@@ -312,9 +306,6 @@ export default {
setPeriodDay(day) { setPeriodDay(day) {
this.periodDay = day; this.periodDay = day;
this.endDate = new Date(); this.endDate = new Date();
// this.startDate = moment(this.endDate)
// .subtract(day, 'day')
// .toDate();
this.initSetStartDate(); this.initSetStartDate();
this.closeDate('start'); this.closeDate('start');
@@ -327,8 +318,7 @@ export default {
if (this.startDate > this.endDate) { if (this.startDate > this.endDate) {
this.startDate = this.endDate; this.startDate = this.endDate;
} }
// console.log(this.disabledSDate)
// this.grid.params.startDt = day
}, },
selectedEndDate(day) { selectedEndDate(day) {
if (day != undefined && day != null) { if (day != undefined && day != null) {
@@ -361,7 +351,6 @@ export default {
}, },
sendStoreData: function () { sendStoreData: function () {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -369,13 +358,11 @@ export default {
}); });
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log("getCondition : " + getCondition.perPage);
}, },
initSetStartDate() { initSetStartDate() {
let initStartDate = new Date(); let initStartDate = new Date();
initStartDate.setMonth(Number(moment(initStartDate).format('MM')) - 2); initStartDate.setMonth(Number(moment(initStartDate).format('MM')) - 2);
this.startDate = initStartDate; this.startDate = initStartDate;
console.log(moment(this.startDate).format('YYYY-MM-DD'));
}, },
async getExcelDataDown() { async getExcelDataDown() {
try { try {
@@ -409,7 +396,6 @@ export default {
header: this.excelHeader, header: this.excelHeader,
dataOrder: 'header' dataOrder: 'header'
}; };
// console.log(data);
xlsx.export(data.list, saveFileName, options).then(() => { xlsx.export(data.list, saveFileName, options).then(() => {
}); });
}, },

View File

@@ -264,7 +264,6 @@ export default {
let page = 1; let page = 1;
// 페이지 정보 및 검색 조건 // 페이지 정보 및 검색 조건
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log('getCondition : ' + getCondition);
// store에 저장된 페이지 정보 및 검색 조건을 불러오기 // store에 저장된 페이지 정보 및 검색 조건을 불러오기
let isKeep = false; let isKeep = false;
@@ -279,7 +278,6 @@ export default {
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -290,18 +288,14 @@ export default {
}, },
methods: { methods: {
search: function (isKeep) { search: function (isKeep) {
console.log('>>>>>>> search Start >>>>>>');
this.grid.params = { this.grid.params = {
startMon: moment(this.startDate).format('YYYYMM'), startMon: moment(this.startDate).format('YYYYMM'),
endMon: moment(this.endDate).format('YYYYMM'), endMon: moment(this.endDate).format('YYYYMM'),
custNm: this.grid.params.custNm, custNm: this.grid.params.custNm,
bizrno: this.grid.params.bizrno bizrno: this.grid.params.bizrno
}; };
console.log('this.perPageCnt' + this.perPageCnt);
console.log(this.grid.params);
if (moment(this.grid.params.startMon).isBefore(moment(this.grid.params.endMon).subtract(2, 'months').format('YYYYMM'))) { if (moment(this.grid.params.startMon).isBefore(moment(this.grid.params.endMon).subtract(2, 'months').format('YYYYMM'))) {
//alert('검색 기간은 최대 3개월까지 선택 가능 합니다.');
this.row.title = '발송통계'; this.row.title = '발송통계';
this.row.msg1 = '검색 기간은 최대 3개월까지 선택 가능 합니다.'; this.row.msg1 = '검색 기간은 최대 3개월까지 선택 가능 합니다.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
@@ -317,9 +311,7 @@ export default {
setPeriodDay(day) { setPeriodDay(day) {
this.periodDay = day; this.periodDay = day;
this.endDate = new Date(); this.endDate = new Date();
// this.startDate = moment(this.endDate)
// .subtract(day, 'day')
// .toDate();
this.initSetStartDate(); this.initSetStartDate();
this.closeDate('start'); this.closeDate('start');
@@ -332,8 +324,7 @@ export default {
if (this.startDate > this.endDate) { if (this.startDate > this.endDate) {
this.startDate = this.endDate; this.startDate = this.endDate;
} }
// console.log(this.disabledSDate)
// this.grid.params.startDt = day
}, },
selectedEndDate(day) { selectedEndDate(day) {
if (day != undefined && day != null) { if (day != undefined && day != null) {
@@ -366,7 +357,6 @@ export default {
}, },
sendStoreData: function () { sendStoreData: function () {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -374,13 +364,11 @@ export default {
}); });
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log("getCondition : " + getCondition.perPage);
}, },
initSetStartDate() { initSetStartDate() {
let initStartDate = new Date(); let initStartDate = new Date();
initStartDate.setMonth(Number(moment(initStartDate).format('MM')) - 3); initStartDate.setMonth(Number(moment(initStartDate).format('MM')) - 3);
this.startDate = initStartDate; this.startDate = initStartDate;
console.log(moment(this.startDate).format('YYYY-MM-DD'));
}, },
getExcelHeader() { getExcelHeader() {
// 헤더를 mockup으로 관리한다. // 헤더를 mockup으로 관리한다.
@@ -395,7 +383,6 @@ export default {
response = await statsApi.bsnmMonthListExcel(this.grid.params); response = await statsApi.bsnmMonthListExcel(this.grid.params);
const result = response.data; const result = response.data;
console.log(result)
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
return result.data; return result.data;
} else { } else {
@@ -421,7 +408,6 @@ export default {
header: this.excelHeader, header: this.excelHeader,
dataOrder: 'header' dataOrder: 'header'
}; };
console.log(data);
xlsx.export(data.list, saveFileName, options).then(() => { xlsx.export(data.list, saveFileName, options).then(() => {
}); });
}, },

View File

@@ -153,13 +153,9 @@ export default {
}, },
methods: { methods: {
async getDayList() { async getDayList() {
console.log('getDayList Start');
this.row.startDay = moment(this.startDate).format('YYYYMMDD'); this.row.startDay = moment(this.startDate).format('YYYYMMDD');
this.row.endDay = moment(this.endDate).format('YYYYMMDD'); this.row.endDay = moment(this.endDate).format('YYYYMMDD');
console.log('검색_시작일시(변환후):' + this.row.startDay);
console.log('검색_종료일시(변환후):' + this.row.endDay);
if (moment(this.row.startDay).isBefore(moment(this.row.endDay).subtract(1, 'months').format('YYYYMMDD'))) { if (moment(this.row.startDay).isBefore(moment(this.row.endDay).subtract(1, 'months').format('YYYYMMDD'))) {
//alert('검색 기간은 최대 1개월까지 선택 가능 합니다.');
this.row.title = '발송통계'; this.row.title = '발송통계';
this.row.msg1 = '검색 기간은 최대 1개월까지 선택 가능 합니다.'; this.row.msg1 = '검색 기간은 최대 1개월까지 선택 가능 합니다.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
@@ -169,61 +165,26 @@ export default {
try { try {
const response = await statsApi.dayList(this.row); const response = await statsApi.dayList(this.row);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
if (result.data.list.length > 0) { if (result.data.list.length > 0) {
this.list = result.data.list; this.list = result.data.list;
} }
this.totalCnt = result.data.list.length; this.totalCnt = result.data.list.length;
} else { } else {
alert("조회정보가 없습니다.");
} }
} catch (err) { } catch (err) {
alert("실패 하였습니다.");
} }
}, },
toMove(routeName) { toMove(routeName) {
this.$router.push({name: routeName, params: {page: 1, searchText: ''}}); this.$router.push({name: routeName, params: {page: 1, searchText: ''}});
}, },
search: function () { search: function () {
console.log('검색_시작일시:' + this.startDt);
console.log('검색_종료일시:' + this.endDt);
this.getDayList(); this.getDayList();
}, },
// calendarCalbackFnc(year, month, day){
// if(this.openStartPicker){
// this.startDate= year +''+ month +''+ day
// if(Number(this.endDate) < Number(this.startDate) && this.endDate !== 0){
// this.row.title = '발송통계';
// this.row.msg1 = '조회 시작일이 종료일보다 큽니다.';
// this.$refs.commmonModal.alertModalOpen(this.row);
// this.openStartPicker = false
// return false
// }
// this.startDt = year + '-' + month + '-' + day
// this.openStartPicker = false
// }
// if(this.openEndPicker){
// this.endDate=year +''+ month +''+ day
// if(Number(this.endDate) < Number(this.startDate) && this.startDate !== 0){
// this.row.title = '발송통계';
// this.row.msg1 = '조회 종료일이 시작일보다 작습니다.';
// this.$refs.commmonModal.alertModalOpen(this.row);
// this.openEndPicker = false
// return false
// }
// this.endDt = year + '-' + month + '-' + day
// this.openEndPicker = false
// }
// },
setPeriodDay(day) { setPeriodDay(day) {
this.periodDay = day; this.periodDay = day;
this.endDate = new Date(); this.endDate = new Date();
// this.startDate = moment(this.endDate)
// .subtract(day, 'day')
// .toDate();
this.initSetStartDate(); this.initSetStartDate();
this.closeDate('start'); this.closeDate('start');
@@ -236,8 +197,6 @@ export default {
if (this.startDate > this.endDate) { if (this.startDate > this.endDate) {
this.startDate = this.endDate; this.startDate = this.endDate;
} }
console.log(this.disabledSDate)
// this.grid.params.startDt = day
}, },
selectedEndDate(day) { selectedEndDate(day) {
if (day != undefined && day != null) { if (day != undefined && day != null) {
@@ -268,7 +227,6 @@ export default {
let initStartDate = new Date(); let initStartDate = new Date();
initStartDate.setMonth(Number(moment(initStartDate).format('MM')) - 2); initStartDate.setMonth(Number(moment(initStartDate).format('MM')) - 2);
this.startDate = initStartDate; this.startDate = initStartDate;
console.log(moment(this.startDate).format('YYYY-MM-DD'));
}, },
excelDown() { excelDown() {
@@ -287,7 +245,6 @@ export default {
header: this.excelHeader, header: this.excelHeader,
dataOrder: 'header' dataOrder: 'header'
}; };
// console.log(data);
xlsx.export(this.list, saveFileName, options).then(() => { xlsx.export(this.list, saveFileName, options).then(() => {
}); });
}, },

View File

@@ -155,15 +155,10 @@ export default {
}, },
methods: { methods: {
async getMonthList() { async getMonthList() {
console.log('getMonthList Start');
this.row.startMon = moment(this.startDate).format('YYYYMM'); this.row.startMon = moment(this.startDate).format('YYYYMM');
this.row.endMon = moment(this.endDate).format('YYYYMM'); this.row.endMon = moment(this.endDate).format('YYYYMM');
console.log('검색_시작년월:' + this.row.startMon);
console.log('검색_종료년월:' + this.row.endMon);
if (moment(this.row.startMon).isBefore(moment(this.row.endMon).subtract(2, 'months').format('YYYYMM'))) { if (moment(this.row.startMon).isBefore(moment(this.row.endMon).subtract(2, 'months').format('YYYYMM'))) {
//alert('검색 기간은 최대 3개월까지 선택 가능 합니다.');
this.row.title = '발송통계'; this.row.title = '발송통계';
this.row.msg1 = '검색 기간은 최대 3개월까지 선택 가능 합니다.'; this.row.msg1 = '검색 기간은 최대 3개월까지 선택 가능 합니다.';
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
@@ -173,30 +168,22 @@ export default {
try { try {
const response = await statsApi.monthList(this.row); const response = await statsApi.monthList(this.row);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.list = result.data.list; this.list = result.data.list;
this.totalCnt = result.data.list.length; this.totalCnt = result.data.list.length;
} else {
alert("조회정보가 없습니다.");
} }
} catch (err) { } catch (err) {
alert("실패 하였습니다.");
} }
}, },
search: function () { search: function () {
this.getMonthList(); this.getMonthList();
}, },
toMove(routeName) { toMove(routeName) {
//this.$router.push({ name: routeName, params: { page: 1, searchText: '' } });
this.$router.push({name: routeName, params: {}}); this.$router.push({name: routeName, params: {}});
}, },
setPeriodDay(day) { setPeriodDay(day) {
this.periodDay = day; this.periodDay = day;
this.endDate = new Date(); this.endDate = new Date();
// this.startDate = moment(this.endDate)
// .subtract(day, 'day')
// .toDate();
this.initSetStartDate(); this.initSetStartDate();
this.closeDate('start'); this.closeDate('start');
@@ -209,8 +196,6 @@ export default {
if (this.startDate > this.endDate) { if (this.startDate > this.endDate) {
this.startDate = this.endDate; this.startDate = this.endDate;
} }
console.log(this.disabledSDate)
// this.grid.params.startDt = day
}, },
selectedEndDate(day) { selectedEndDate(day) {
if (day != undefined && day != null) { if (day != undefined && day != null) {
@@ -241,7 +226,6 @@ export default {
let initStartDate = new Date(); let initStartDate = new Date();
initStartDate.setMonth(Number(moment(initStartDate).format('MM')) - 3); initStartDate.setMonth(Number(moment(initStartDate).format('MM')) - 3);
this.startDate = initStartDate; this.startDate = initStartDate;
console.log(moment(this.startDate).format('YYYY-MM-DD'));
}, },
excelDown() { excelDown() {
if (this.list.length <= 0) { if (this.list.length <= 0) {
@@ -290,7 +274,6 @@ export default {
dataOrder: 'header' dataOrder: 'header'
}; };
// console.log(data);
xlsx.export(this.list, saveFileName, options).then(() => { xlsx.export(this.list, saveFileName, options).then(() => {
}); });
}, },

View File

@@ -89,7 +89,6 @@ export default {
mixins: [utils_mixin, chkPattern2], mixins: [utils_mixin, chkPattern2],
watch: { watch: {
stat() { stat() {
console.log('watch : ', this.stat)
} }
}, },
data() { data() {
@@ -131,7 +130,6 @@ export default {
try { try {
const response = await sysMgtApi.resetPassword(params) const response = await sysMgtApi.resetPassword(params)
const rsp = response.data; const rsp = response.data;
console.log("RESULT_CODE : " + rsp.retCode);
if(rsp.retCode == '0000'){ if(rsp.retCode == '0000'){
this.row.title = '비밀번호 초기화'; this.row.title = '비밀번호 초기화';
@@ -140,7 +138,6 @@ export default {
this.$parent.$refs.commmonModal.alertModalOpen(this.row); this.$parent.$refs.commmonModal.alertModalOpen(this.row);
} }
} catch(err){ } catch(err){
console.log(err)
this.row.title = '비밀번호 초기화'; this.row.title = '비밀번호 초기화';
this.row.msg1 = '실패 하였습니다.'; this.row.msg1 = '실패 하였습니다.';
this.$parent.$refs.commmonModal.alertModalOpen(this.row); this.$parent.$refs.commmonModal.alertModalOpen(this.row);
@@ -151,7 +148,6 @@ export default {
doPwdValidate() { doPwdValidate() {
if (this.isNull(this.userPwd2)) { if (this.isNull(this.userPwd2)) {
// alert("비밀번호 확인을 입력해 주세요.");
this.row.title = '관리자/유치채널 관리'; this.row.title = '관리자/유치채널 관리';
this.row.msg1 = '비밀번호를 입력해 주세요.'; this.row.msg1 = '비밀번호를 입력해 주세요.';
this.$parent.$refs.commmonModal.alertModalOpen(this.row); this.$parent.$refs.commmonModal.alertModalOpen(this.row);
@@ -216,7 +212,6 @@ export default {
try { try {
const response = await sysMgtApi.adminDetail(this.row); const response = await sysMgtApi.adminDetail(this.row);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.madangId = result.data.adminId; this.madangId = result.data.adminId;
this.auth = result.data.auth; this.auth = result.data.auth;
@@ -226,7 +221,6 @@ export default {
this.stat = result.data.stat; this.stat = result.data.stat;
} }
} catch (err) { } catch (err) {
// alert("실패 하였습니다.");
this.row.title = '관리자/유치채널 관리'; this.row.title = '관리자/유치채널 관리';
this.row.msg1 = '실패 하였습니다.'; this.row.msg1 = '실패 하였습니다.';
this.$parent.$refs.commmonModal.alertModalOpen(this.row); this.$parent.$refs.commmonModal.alertModalOpen(this.row);
@@ -238,7 +232,6 @@ export default {
}, },
// 모달 끄기 // 모달 끄기
adminDetailModalClose() { adminDetailModalClose() {
//this.formReset();
var dimmed = document.getElementsByClassName('modal21'); var dimmed = document.getElementsByClassName('modal21');
for (var i = 0; i < dimmed.length; i++) { for (var i = 0; i < dimmed.length; i++) {
dimmed[i].style.display = 'none'; dimmed[i].style.display = 'none';
@@ -255,11 +248,9 @@ export default {
const response = await sysMgtApi.updateAdmin(this.row); const response = await sysMgtApi.updateAdmin(this.row);
const result = response.data; const result = response.data;
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
// alert('저장 하였습니다.');
this.toComplete(); this.toComplete();
} }
} catch (err) { } catch (err) {
alert("실패 하였습니다.");
this.row.title = '관리자/유치채널 관리'; this.row.title = '관리자/유치채널 관리';
this.row.msg1 = '실패 하였습니다.'; this.row.msg1 = '실패 하였습니다.';
this.$parent.$refs.commmonModal.alertModalOpen(this.row); this.$parent.$refs.commmonModal.alertModalOpen(this.row);

View File

@@ -96,7 +96,6 @@ export default {
mixins: [utils_mixin, chkPattern2], mixins: [utils_mixin, chkPattern2],
watch: { watch: {
stat() { stat() {
console.log('watch : ', this.stat)
} }
}, },
data() { data() {
@@ -258,12 +257,10 @@ export default {
var params = { var params = {
"madangId": this.madangId "madangId": this.madangId
} }
console.log(this.madangId);
try { try {
const response = await sysMgtApi.selectSearchMadangId(params); const response = await sysMgtApi.selectSearchMadangId(params);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.madangId = result.data.madangId; this.madangId = result.data.madangId;
this.userNm = result.data.name; this.userNm = result.data.name;
@@ -272,7 +269,6 @@ export default {
this.code = result.data.code; this.code = result.data.code;
// 마당ID조회 성공 팝업노출 // 마당ID조회 성공 팝업노출
this.searchIdPop(); this.searchIdPop();
//console.log(this.userNm);
this.idCheck = true; this.idCheck = true;
this.$refs._pwd1.focus(); this.$refs._pwd1.focus();
@@ -325,7 +321,6 @@ export default {
ModalOpen(insertType) { ModalOpen(insertType) {
this.formReset(); this.formReset();
this.insertType = insertType; this.insertType = insertType;
console.log(insertType)
if (insertType === 2) { if (insertType === 2) {
this.auth = '1002'; this.auth = '1002';
} }

View File

@@ -42,29 +42,7 @@
</div> </div>
</div> </div>
<!-- 시스템관리 팝업 --> <!-- 시스템관리 팝업 -->
<!-- <div class="dimmed alertSysModal1" @click="alertSysModalCancel();"></div>-->
<!-- <div class="popup-wrap alertSysModal1">-->
<!-- &lt;!&ndash; 로그인실패: 확인 &ndash;&gt;-->
<!-- <div class="popup alertSysModal1">-->
<!-- <div class="pop-head">-->
<!-- <h3 class="pop-tit">{{ title }}</h3>-->
<!-- </div>-->
<!-- <div class="pop-cont">-->
<!-- <p>{{ msg1 }}</p>-->
<!-- <p v-if="msg2 !== ''">{{ msg2 }}</p>-->
<!-- <p v-if="msg3 !== ''">{{ msg3 }}</p>-->
<!-- <p v-if="msg4 !== ''">{{ msg4 }}</p>-->
<!-- </div>-->
<!-- <div class="popup-btn1">-->
<!-- <button class="btn-pcolor" @click="alertSysModalClose();">확인</button>-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
</div> </div>
<!-- e: 팝업 -->
</div> </div>
</template> </template>
@@ -95,7 +73,6 @@ export default {
methods: { methods: {
// 모달 띄우기(성공모달) // 모달 띄우기(성공모달)
searchIdModalOpen(target) { searchIdModalOpen(target) {
console.log("SearchIdModalOpen");
var dimmed = document.getElementsByClassName('dimmed modal18'); var dimmed = document.getElementsByClassName('dimmed modal18');
var wrap = document.getElementsByClassName('popup-wrap modal18'); var wrap = document.getElementsByClassName('popup-wrap modal18');
var obj = document.getElementsByClassName(target); var obj = document.getElementsByClassName(target);
@@ -120,7 +97,6 @@ export default {
}, },
// 모달 띄우기(실패모달) // 모달 띄우기(실패모달)
searchIdFailModalOpen(target) { searchIdFailModalOpen(target) {
console.log("SearchIdFailModalOpen");
var dimmed = document.getElementsByClassName('dimmed modal17'); var dimmed = document.getElementsByClassName('dimmed modal17');
var wrap = document.getElementsByClassName('popup-wrap modal17'); var wrap = document.getElementsByClassName('popup-wrap modal17');
var obj = document.getElementsByClassName(target); var obj = document.getElementsByClassName(target);
@@ -143,47 +119,17 @@ export default {
this.email = params.email; this.email = params.email;
this.mdn = params.mdn; this.mdn = params.mdn;
this.code = params.code this.code = params.code
//alert( userName + ': 조회 성공');
var dimmed = document.getElementsByClassName('modal18'); var dimmed = document.getElementsByClassName('modal18');
for (var i = 0; i < dimmed.length; i++) { for (var i = 0; i < dimmed.length; i++) {
dimmed[i].style.display = 'block'; dimmed[i].style.display = 'block';
} }
//this.searchIdModalModalOpen('modal18');
}, },
searchIdFailPop() { searchIdFailPop() {
//alert( '조회 실패');
var dimmed = document.getElementsByClassName('modal17'); var dimmed = document.getElementsByClassName('modal17');
for (var i = 0; i < dimmed.length; i++) { for (var i = 0; i < dimmed.length; i++) {
dimmed[i].style.display = 'block'; dimmed[i].style.display = 'block';
} }
}, },
// alertSysModalOpen(props) {
// console.log(props);
// this.title = props.title;
// this.msg1 = props.msg1;
// this.msg2 = props.msg2;
// this.msg3 = props.msg3;
// this.msg4 = props.msg4;
//
// var dimmed = document.getElementsByClassName('alertSysModal1');
// for (var i = 0; i < dimmed.length; i++) {
// dimmed[i].style.display = 'block';
// }
// },
// alertSysModalClose() {
// var dimmed = document.getElementsByClassName('alertSysModal1');
// for (var i = 0; i < dimmed.length; i++) {
// dimmed[i].style.display = 'none';
// }
// this.$parent.checkFocus();
// },
// alertSysModalCancel() {
// var dimmed = document.getElementsByClassName('alertSysModal1');
// for (var i = 0; i < dimmed.length; i++) {
// dimmed[i].style.display = 'none';
// }
// this.$parent.checkFocus();
// },
} }
} }
</script> </script>

View File

@@ -80,7 +80,6 @@ export default {
}, },
methods: { methods: {
alertSysModalOpen(props) { alertSysModalOpen(props) {
console.log(props.msg1);
this.title = props.title; this.title = props.title;
this.msg1 = props.msg1; this.msg1 = props.msg1;
this.msg2 = props.msg2; this.msg2 = props.msg2;

View File

@@ -163,8 +163,6 @@ export default {
let page = 1; let page = 1;
// 페이지 정보 및 검색 조건 // 페이지 정보 및 검색 조건
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log('getCondition : ' + getCondition);
console.log(getCondition)
// store에 저장된 페이지 정보 및 검색 조건을 불러오기 // store에 저장된 페이지 정보 및 검색 조건을 불러오기
let isKeep = false; let isKeep = false;
if (getCondition) { if (getCondition) {
@@ -177,32 +175,26 @@ export default {
}, },
methods: { methods: {
search: function (isKeep) { search: function (isKeep) {
console.log(isKeep)
console.log('this.perPageCnt' + this.perPageCnt);
//console.log(this.grid.params);
this.grid.params.searchType1 = this.searchType1 this.grid.params.searchType1 = this.searchType1
this.grid.params.searchType2 = this.searchType2 this.grid.params.searchType2 = this.searchType2
this.$refs.table.search(this.grid.params, isKeep); this.$refs.table.search(this.grid.params, isKeep);
this.sendStoreData(); this.sendStoreData();
}, },
detailPop(props) { detailPop(props) {
// this.getMainSlot().popupView(4);
// this.setDtlPpPrm(props);
this.$refs.adminDetailModal.adminDetailModalOpen(props); this.$refs.adminDetailModal.adminDetailModalOpen(props);
}, },
ModalOpen: function (target) { ModalOpen: function (target) {
//this.$refs.systemModal.ModalOpen(target);
}, },
adminRegPopOpen: function () { adminRegPopOpen: function () {
this.$refs.adminRegModal.ModalOpen(1); this.$refs.adminRegModal.ModalOpen(1);
}, },
adminReg2PopOpen: function () { adminReg2PopOpen: function () {
this.$refs.adminRegModal.ModalOpen(2); this.$refs.adminRegModal.ModalOpen(2);
//this.$refs.adminReg2Modal.adminReg2ModalOpen();//
}, },
doValidate() { //로우데이터 삭제하도록 수정 doValidate() { //로우데이터 삭제하도록 수정
console.log("totalItems >> " + this.totalItems);
if (this.totalItems == 0) { if (this.totalItems == 0) {
this.row.title = '관리자/유치채널 관리'; this.row.title = '관리자/유치채널 관리';
this.row.msg1 = '검색 결과가 없습니다.'; this.row.msg1 = '검색 결과가 없습니다.';
@@ -216,18 +208,13 @@ export default {
this.$refs.commmonModal.alertModalOpen(this.row); this.$refs.commmonModal.alertModalOpen(this.row);
return false; return false;
} }
// for(var i = 0; i < chkList.length; i++){
// alert(chkList[i].adminId);
// }
const param = chkList.map((row) => ({adminId: row.adminId})); const param = chkList.map((row) => ({adminId: row.adminId}));
console.log(param)
this.row.list = param; this.row.list = param;
console.log(this.row);
return true; return true;
}, },
sendStoreData: function () { sendStoreData: function () {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,
@@ -235,7 +222,6 @@ export default {
}); });
const getCondition = this.$store.getters['searchcondition/getSearchCondition']; const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
//console.log("getCondition : "+ getCondition.perPage);
}, },
setCodeData() { setCodeData() {
@@ -272,7 +258,6 @@ export default {
} }
}, },
confirmCalbackFnc(props) { confirmCalbackFnc(props) {
console.log(props)
if (props.result) { if (props.result) {
this.deleteRow(); this.deleteRow();
} }
@@ -282,7 +267,6 @@ export default {
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination(); const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', { this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage, page: getP._currentPage,
perPage: this.perPageCnt, perPage: this.perPageCnt,

View File

@@ -222,7 +222,6 @@ export default {
this.row.title = '시스템관리'; this.row.title = '시스템관리';
this.row.msg1 = '권한명을 입력해 주세요.'; this.row.msg1 = '권한명을 입력해 주세요.';
this.row.focusTaget = '1'; this.row.focusTaget = '1';
console.log(this.row)
this.$refs.commmonModal.alertSysModalOpen(this.row); this.$refs.commmonModal.alertSysModalOpen(this.row);
return false; return false;
} }
@@ -296,7 +295,6 @@ export default {
this.row.stat = this.stat; this.row.stat = this.stat;
this.row.list = listArr; this.row.list = listArr;
console.log(this.row);
try { try {
let response = await sysMgtApi.insertAuth(this.row); let response = await sysMgtApi.insertAuth(this.row);

View File

@@ -80,12 +80,9 @@ export default {
}, },
methods: { methods: {
async getAuthList() { async getAuthList() {
console.log('getAuthList Start');
//this.row.serviceId = serviceId;
try { try {
const response = await sysMgtApi.authList(this.row); const response = await sysMgtApi.authList(this.row);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.list = result.data.list; this.list = result.data.list;
this.totalCnt = result.data.list.length; this.totalCnt = result.data.list.length;
@@ -101,11 +98,9 @@ export default {
} }
}, },
insertAuth() { insertAuth() {
//console.log("권한추가 페이지 이동");
this.$router.push({name: 'authAdd'}); this.$router.push({name: 'authAdd'});
}, },
updateAuth(target) { updateAuth(target) {
//console.log("수정페이지로 이동:"+target);
this.$router.push({name: 'authModify', params: {targetAuthCd: target}}); this.$router.push({name: 'authModify', params: {targetAuthCd: target}});
}, },
authDelete(target) { authDelete(target) {
@@ -115,8 +110,6 @@ export default {
this.$refs.commmonModal.confirmModalOpen2(this.row); this.$refs.commmonModal.confirmModalOpen2(this.row);
}, },
async deleteAuth() { async deleteAuth() {
//console.log("삭제처리:"+target);
//this.row.authCd = target;
try { try {
let response = await sysMgtApi.deleteAuth(this.row); let response = await sysMgtApi.deleteAuth(this.row);
const result = response.data; const result = response.data;
@@ -142,7 +135,6 @@ export default {
} }
}, },
confirmCalbackFnc(props) { confirmCalbackFnc(props) {
console.log(props)
if (props.result) { if (props.result) {
this.deleteAuth(); this.deleteAuth();
} }

View File

@@ -273,13 +273,11 @@ export default {
}, },
async authDetail() { async authDetail() {
//console.log(this.$route.params.targetAuthCd);
this.row.authCd = this.$route.params.targetAuthCd; this.row.authCd = this.$route.params.targetAuthCd;
try { try {
const response = await sysMgtApi.authDetail(this.row); const response = await sysMgtApi.authDetail(this.row);
const result = response.data; const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
this.authCd = result.data.authCd; this.authCd = result.data.authCd;
this.authNm = result.data.authNm; this.authNm = result.data.authNm;
@@ -301,7 +299,6 @@ export default {
} }
} else { } else {
//alert("실패 하였습니다.");
this.row.title = '시스템관리'; this.row.title = '시스템관리';
this.row.msg1 = '실패 하였습니다.'; this.row.msg1 = '실패 하였습니다.';
this.row.focusTaget = '0'; this.row.focusTaget = '0';
@@ -309,7 +306,6 @@ export default {
return false; return false;
} }
} catch (err) { } catch (err) {
//alert("처리 실패 하였습니다.");
this.row.title = '시스템관리'; this.row.title = '시스템관리';
this.row.msg1 = '실패 하였습니다.'; this.row.msg1 = '실패 하였습니다.';
this.row.focusTaget = '0'; this.row.focusTaget = '0';
@@ -348,17 +344,13 @@ export default {
this.row.stat = this.stat; this.row.stat = this.stat;
this.row.list = listArr; this.row.list = listArr;
console.log(this.row);
try { try {
let response = await sysMgtApi.updateAuth(this.row); let response = await sysMgtApi.updateAuth(this.row);
const result = response.data; const result = response.data;
if (result != null && result.retCode == "0000") { if (result != null && result.retCode == "0000") {
//alert('저장 하였습니다.');
// 권한리스트 페이지 이동 // 권한리스트 페이지 이동
this.$router.push({name: 'authList'}); this.$router.push({name: 'authList'});
} else { } else {
//alert("실패 하였습니다.");
this.row.title = '시스템관리'; this.row.title = '시스템관리';
this.row.msg1 = '실패 하였습니다.'; this.row.msg1 = '실패 하였습니다.';
this.row.focusTaget = '0'; this.row.focusTaget = '0';
@@ -381,6 +373,8 @@ export default {
this.$refs._authNm.focus(); this.$refs._authNm.focus();
} else if (this.row.focusTaget === '2') { } else if (this.row.focusTaget === '2') {
this.$refs._authCd.focus(); this.$refs._authCd.focus();
}else if(this.row.focusTaget === '0'){
this.$router.push({name: 'authList'});
} }
}, },
confirmCalbackFnc(props) { confirmCalbackFnc(props) {
@@ -396,7 +390,6 @@ export default {
return this.defaultAuthMenu.length === this.checkedAuthMenu.length; return this.defaultAuthMenu.length === this.checkedAuthMenu.length;
}, },
set: function (e) { set: function (e) {
//this.checkedAuthMenu = e ? this.defaultAuthMenu : [];
if (e) { if (e) {
this.checkedAuthMenu = this.defaultAuthMenu; this.checkedAuthMenu = this.defaultAuthMenu;
if (this.channelAuth === '') { if (this.channelAuth === '') {

View File

@@ -1,7 +1,6 @@
import Vue from 'vue'; import Vue from 'vue';
import Router from 'vue-router'; import Router from 'vue-router';
import store from './store' import store from './store'
//import login from '@/modules/login/store/index'
import tokenSvc from '@/common/token-service'; import tokenSvc from '@/common/token-service';
import HubwebLayout from './views/HubwebLayout.vue'; import HubwebLayout from './views/HubwebLayout.vue';
@@ -20,8 +19,6 @@ import profileRoutes from './modules/sendNumMgt/router';
import mntrngRoutes from './modules/mntrng/router'; import mntrngRoutes from './modules/mntrng/router';
import riskmgtRoutes from './modules/riskMgt/router'; import riskmgtRoutes from './modules/riskMgt/router';
import monthRoutes from './modules/stats/router'; import monthRoutes from './modules/stats/router';
// import channelList from './modules/attractMgt/views/ChannelList';
Vue.use(Router) Vue.use(Router)
@@ -37,14 +34,10 @@ const router = new Router({
path: '', path: '',
component: subsList component: subsList
}, },
// {
// path: '/attractMgt/views',
// component: channelList
// },
{ {
path: '/view/error/404', path: '/view/error/404',
component: () => import('./views/ErrorPage404.vue'), component: () => import('./views/ErrorPage404.vue'),
meta: { public: true } meta: { public: false }
}, },
{ {
path: '/view/error/500', path: '/view/error/500',
@@ -62,34 +55,110 @@ const router = new Router({
...mntrngRoutes, ...mntrngRoutes,
...riskmgtRoutes, ...riskmgtRoutes,
...monthRoutes, ...monthRoutes,
//{path: '*', name: 'error404'}
] ]
}, },
{path: '*', redirect: '/view/error/404'} //{path: '*', redirect: '/view/error/404'}
] ]
}); });
router.beforeEach((to, from, next) => { router.beforeEach((to, from, next) => {
const isPublic = to.matched.some(record => record.meta.public); const isPublic = to.matched.some(record => record.meta.public);
const loggedIn = !!tokenSvc.getToken(); const loggedIn = !!tokenSvc.getToken();
if (!isPublic && !loggedIn) { if (!isPublic && !loggedIn) {
return next('/login'); return next('/login');
}else{ }else{
var nextUrl = to.fullPath; var nextUrl = to.fullPath;
var fromUrl = from.fullPath; var fromUrl = from.fullPath;
if(nextUrl == '/'){ var menuUrls = store.getters['login/getMenuUrls'];
console.log(store.getters); if(menuUrls.length > 0){
const rootUrl = store.getters['login/getRootUrl'];
if(rootUrl == null){ var moveFlag = false;
for(var i=0; i<menuUrls.length; i++){
var targetUrl = menuUrls[i];
if(nextUrl == targetUrl){
moveFlag = true;
}
}
if((nextUrl == '/custMgt/memberList') || (nextUrl == '/custMgt/memberDetail')
|| (nextUrl == '/custMgt/subsDetail') || (nextUrl == '/custMgt/memberAdminDetail')){
for(var i=0; i<menuUrls.length; i++){
if(menuUrls[i] == '/custMgt/subsList'){
moveFlag = true;
}
}
}
// url Check 유치채널
if((nextUrl == '/attractMgt/channelDetail')){
for(var i=0; i<menuUrls.length; i++){
if(menuUrls[i] == '/attractMgt/channelList'){
moveFlag = true;
}
}
}
// url Check 날짜별 통계
if((nextUrl == '/stats/dayList')){
for(var i=0; i<menuUrls.length; i++){
if(menuUrls[i] == '/stats/monthList'){
moveFlag = true;
}
}
}
// url Check 사업자별 통계
if((nextUrl == '/stats/bsnmDayList')){
for(var i=0; i<menuUrls.length; i++){
if(menuUrls[i] == '/stats/bsnmMonthList'){
moveFlag = true;
}
}
}
// url Check 권한 관리
if((nextUrl == '/sysMgt/authAdd') || (nextUrl == '/sysMgt/authModify')){
for(var i=0; i<menuUrls.length; i++){
if(menuUrls[i] == '/sysMgt/authList'){
moveFlag = true;
}
}
}
if(!moveFlag){
if((fromUrl == '/login') || (fromUrl == '/view/login/auth') || (fromUrl == '/view/login/resetPassword')
|| (fromUrl == '/view/login/updatePassword')){
return next('/login'); return next('/login');
} }
return next(rootUrl); store.commit("login/saveBeforeUrl", fromUrl);
}else if(nextUrl == '/view/login/auth'){ return next('/view/error/404');
}
if((nextUrl == '/view/login/auth') || (nextUrl == '/view/login/resetPassword')
|| (nextUrl == '/view/login/updatePassword')
){
if(fromUrl != '/login'){ if(fromUrl != '/login'){
return next('/login'); return next('/login');
} }
} }
if(nextUrl == '/'){
console.log(store.getters);
const rootUrl = store.getters['login/getRootUrl'];
console.log('rootUrl ',rootUrl);
if(rootUrl == null){
return next('/login');
}
return next(rootUrl);
}
if(nextUrl == '/login' && loggedIn){
const rootUrl = store.getters['login/getRootUrl'];
if(rootUrl == null){
return next('/login');
}
return next(rootUrl);
}
}
} }
to.matched.some(record => { to.matched.some(record => {
@@ -97,11 +166,9 @@ router.beforeEach((to, from, next) => {
const shareList = record.meta.shareList; const shareList = record.meta.shareList;
if (from.name && shareList && shareList.includes(from.name)) { if (from.name && shareList && shareList.includes(from.name)) {
// shareList에 포함되어 있는 라우터에서 온 경우 검색 조건을 유지한다. // shareList에 포함되어 있는 라우터에서 온 경우 검색 조건을 유지한다.
// console.log("패밀리");
} else { } else {
// 그 외의 경우 검색 조건 초기화 // 그 외의 경우 검색 조건 초기화
store.commit("searchcondition/updateSearchCondition", null); store.commit("searchcondition/updateSearchCondition", null);
// console.log("낫패밀리");
} }
} }
next(); next();

View File

@@ -10,7 +10,7 @@
</span> </span>
<p class="error-btns"> <p class="error-btns">
<a href="#" @click="backGo()">이전 페이지로</a><a href="#" @click="goMain()">메인으로</a> <a href="javascript:void(0);" @click="backGo()">이전 페이지로</a><a href="javascript:void(0);" @click="goMain()">메인으로</a>
</p> </p>
</div> </div>
</template> </template>
@@ -18,6 +18,7 @@
<script> <script>
export default { export default {
name: 'error404',
data: function() { data: function() {
return { return {
@@ -27,7 +28,6 @@
this.$store.commit("login/isErrorPage", true); this.$store.commit("login/isErrorPage", true);
}, },
mounted() { mounted() {
}, },
destroyed() { destroyed() {
this.$store.commit("login/isErrorPage", false); this.$store.commit("login/isErrorPage", false);
@@ -35,13 +35,17 @@
methods: { methods: {
// 이전 페이지 // 이전 페이지
backGo() { backGo() {
const beforeUrl = this.$store.getters['login/getBeforeUrl'];
this.$store.commit("login/isErrorPage", false); this.$store.commit("login/isErrorPage", false);
this.$router.go(-1); this.$router.push({ path: beforeUrl }).catch(()=>{
});
}, },
// 메인 페이지 // 메인 페이지
goMain(){ goMain(){
const rootUrl = this.$store.getters['login/getRootUrl'];
this.$store.commit("login/isErrorPage", false); this.$store.commit("login/isErrorPage", false);
this.$router.push({ path: '/' }); this.$router.push({ path: rootUrl }).catch(()=>{
});;
} }
} }
}; };

View File

@@ -1,15 +1,20 @@
<template> <template>
<body> <body>
<div v-if="!isErrPage" class="wrap" v-bind:class="{'main_wrap': (isAuthChk), 'login-wrap': (!isLogin && !isAuthChk), 'bg-wrap': (isLogin && !isAuthChk) }" > <div v-bind:class="{'wrap main_wrap': (isAuthChk), 'wrap login-wrap': (!isLogin && !isAuthChk), 'wrap bg-wrap': (isLogin && !isAuthChk), 'error-wrap': (isErrPage) }" >
<hub-web-header v-if="isAuthChk == true"></hub-web-header> <hub-web-header v-if="isAuthChk == true && !isErrPage"></hub-web-header>
<nav-bar v-if="isAuthChk == true"></nav-bar> <nav-bar v-if="isAuthChk == true && !isErrPage"></nav-bar>
<router-view :key="$route.fullPath"></router-view> <router-view :key="$route.fullPath"></router-view>
<hub-web-footer v-if="isAuthChk == false"></hub-web-footer> <hub-web-footer v-if="isAuthChk == false && !isErrPage"></hub-web-footer>
</div> </div>
<div v-else class="error-wrap"> <!-- <div v-else class="error-wrap">
<router-view :key="$route.fullPath"></router-view> <router-view :key="$route.fullPath"></router-view>
</div> </div> -->
<div class="loadingDimmed" style="display: none"></div>
<div class="sp-3balls" style="display: none"></div>
</body> </body>
</template> </template>
<script> <script>
@@ -26,7 +31,6 @@ import "../assets/css/common.css";
import "../assets/css/style.css"; import "../assets/css/style.css";
import "../assets/css/error.css"; import "../assets/css/error.css";
import { mapGetters } from 'vuex'; import { mapGetters } from 'vuex';
import tokenSvc from '@/common/token-service';
export default { export default {
name: "hubwebLayout", name: "hubwebLayout",

View File

@@ -143,8 +143,9 @@ public class LoginController {
if (authNumDto.getOprtrId().contains(authenticationWithoutId.get(i).trim())) { if (authNumDto.getOprtrId().contains(authenticationWithoutId.get(i).trim())) {
loginSuccessHandler.process(request, response, authentication); loginSuccessHandler.process(request, response, authentication);
// access 토큰 생성 // Auth 토큰 생성
jwtSvc.generatePrivateToken(response, authentication); String authToken = jwtSvc.generatePrivateToken(response, authentication);
// jwtSvc.generatePrivateToken(response, authentication);
String nextUrl = getReturnUrl(request, response); String nextUrl = getReturnUrl(request, response);
logger.debug("login SUCCESS - nextUrl = [{}]", nextUrl); logger.debug("login SUCCESS - nextUrl = [{}]", nextUrl);
@@ -157,9 +158,26 @@ public class LoginController {
Menu rootMenu = menu.get(0); Menu rootMenu = menu.get(0);
String rootUrl = rootMenu.getChildren().get(0).getMenuUrl(); String rootUrl = rootMenu.getChildren().get(0).getMenuUrl();
ArrayList<String> menuUrls = new ArrayList<String>();
for(int j=0; j< menu.size(); j++) {
Menu parentMenu = menu.get(j);
if(parentMenu.getChildren().size() > 0) {
ArrayList<Menu> childrenMenu = (ArrayList<Menu>)parentMenu.getChildren();
for(int k=0; k< childrenMenu.size(); k++) {
Menu childMenu = childrenMenu.get(k);
String menuUrl = childMenu.getMenuUrl();
menuUrls.add(menuUrl);
}
}
//String menuUrl = rootMenu.getChildren().get(j).getMenuUrl();
// menuUrls.add(menuUrl);
}
LoginRes loginRes = new LoginRes(rootUrl); LoginRes loginRes = new LoginRes(rootUrl);
loginRes.setUserId(authUser.getOprtrId()); loginRes.setUserId(authUser.getOprtrId());
loginRes.setUserNm(authUser.getOprtrNm()); loginRes.setUserNm(authUser.getOprtrNm());
loginRes.setMenuUrls(menuUrls);
loginRes.setAuthToken(authToken);
ChkAuthNumResDto result = new ChkAuthNumResDto(ApiResponseCode.SUCCESS, loginRes); ChkAuthNumResDto result = new ChkAuthNumResDto(ApiResponseCode.SUCCESS, loginRes);
return result; return result;
@@ -173,8 +191,9 @@ public class LoginController {
// 2차인증후 시큐리티 성공핸들러 // 2차인증후 시큐리티 성공핸들러
rCode = loginSuccessHandler.process(request, response, authentication); rCode = loginSuccessHandler.process(request, response, authentication);
// access 토큰 생성 // loginToken
jwtSvc.generatePrivateToken(response, authentication); String authToken = jwtSvc.generatePrivateToken(response, authentication);
// jwtSvc.generatePrivateToken(response, authentication);
String nextUrl = getReturnUrl(request, response); String nextUrl = getReturnUrl(request, response);
logger.debug("login SUCCESS - nextUrl = [{}]", nextUrl); logger.debug("login SUCCESS - nextUrl = [{}]", nextUrl);
@@ -187,10 +206,25 @@ public class LoginController {
Menu rootMenu = menu.get(0); Menu rootMenu = menu.get(0);
String rootUrl = rootMenu.getChildren().get(0).getMenuUrl(); String rootUrl = rootMenu.getChildren().get(0).getMenuUrl();
// 메뉴 url data 생성
ArrayList<String> menuUrls = new ArrayList<String>();
for(int j=0; j< menu.size(); j++) {
Menu parentMenu = menu.get(j);
if(parentMenu.getChildren().size() > 0) {
ArrayList<Menu> childrenMenu = (ArrayList<Menu>)parentMenu.getChildren();
for(int k=0; k< childrenMenu.size(); k++) {
Menu childMenu = childrenMenu.get(k);
String menuUrl = childMenu.getMenuUrl();
menuUrls.add(menuUrl);
}
}
}
LoginRes loginRes = new LoginRes(rootUrl); LoginRes loginRes = new LoginRes(rootUrl);
//LoginRes loginRes = new LoginRes(SecurityConfig.LOGIN_SUCC_URL);
loginRes.setUserId(authUser.getOprtrId()); loginRes.setUserId(authUser.getOprtrId());
loginRes.setUserNm(authUser.getOprtrNm()); loginRes.setUserNm(authUser.getOprtrNm());
loginRes.setAuthToken(authToken);
loginRes.setMenuUrls(menuUrls);
ChkAuthNumResDto result = new ChkAuthNumResDto(rCode, loginRes); ChkAuthNumResDto result = new ChkAuthNumResDto(rCode, loginRes);
return result; return result;
@@ -255,8 +289,24 @@ public class LoginController {
if (auth != null){ if (auth != null){
new SecurityContextLogoutHandler().logout(request, response, auth); new SecurityContextLogoutHandler().logout(request, response, auth);
} }
jwtSvc.destroyPrivateToken(request, response); // jwtSvc.destroyPrivateToken(request, response);
return new LogoutResDto(); return new LogoutResDto();
} }
/**
* date : 2022. 8. 17.
* auth : ckr
* desc : 2차 인증 페이지 진입시 accessToken 체크
* @param loginCheckDto
* @param request
* @param response
* @return LoginResDto
*/
@PostMapping("loginCheck")
@ResponseBody
public LoginResDto loginCheck(@RequestBody LoginReqDto loginCheckDto, HttpServletRequest request, HttpServletResponse response) {
return loginService.loginCheck(loginCheckDto);
}
} }

View File

@@ -1,12 +1,9 @@
package kr.co.uplus.ez.api.login; package kr.co.uplus.ez.api.login;
import kr.co.uplus.ez.api.login.dto.*; import java.util.Date;
import kr.co.uplus.ez.common.data.ApiResponseCode; import java.util.List;
import kr.co.uplus.ez.common.data.Const; import java.util.Map;
import kr.co.uplus.ez.common.utils.DateUtils;
import kr.co.uplus.ez.common.utils.EncryptionUtil;
import kr.co.uplus.ez.common.utils.TextUtils;
import kr.co.uplus.ez.config.SecurityConfig;
import org.apache.commons.codec.binary.StringUtils; import org.apache.commons.codec.binary.StringUtils;
import org.apache.commons.lang3.RandomStringUtils; import org.apache.commons.lang3.RandomStringUtils;
import org.mybatis.spring.SqlSessionTemplate; import org.mybatis.spring.SqlSessionTemplate;
@@ -17,8 +14,27 @@ import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.Date; import io.jsonwebtoken.Claims;
import java.util.List; import kr.co.uplus.ez.api.login.dto.AuthNum;
import kr.co.uplus.ez.api.login.dto.AuthNumReqDto;
import kr.co.uplus.ez.api.login.dto.AuthNumResDto;
import kr.co.uplus.ez.api.login.dto.AuthUser;
import kr.co.uplus.ez.api.login.dto.ChkAuthNumReqDto;
import kr.co.uplus.ez.api.login.dto.LoginReqDto;
import kr.co.uplus.ez.api.login.dto.LoginRes;
import kr.co.uplus.ez.api.login.dto.LoginResDto;
import kr.co.uplus.ez.api.login.dto.ResetPasswordReqDto;
import kr.co.uplus.ez.api.login.dto.ResetPasswordResDto;
import kr.co.uplus.ez.api.login.dto.SendMsgDto;
import kr.co.uplus.ez.api.login.dto.UpdatePasswordReqDto;
import kr.co.uplus.ez.api.login.dto.UpdatePasswordResDto;
import kr.co.uplus.ez.common.data.ApiResponseCode;
import kr.co.uplus.ez.common.data.Const;
import kr.co.uplus.ez.common.jwt.JwtService;
import kr.co.uplus.ez.common.utils.DateUtils;
import kr.co.uplus.ez.common.utils.EncryptionUtil;
import kr.co.uplus.ez.common.utils.TextUtils;
import kr.co.uplus.ez.config.SecurityConfig;
@Service @Service
public class LoginService { public class LoginService {
@@ -49,6 +65,9 @@ public class LoginService {
@Value("${authentication.cntLimit: 10}") @Value("${authentication.cntLimit: 10}")
private int cntLimit; private int cntLimit;
@Autowired
private JwtService jwtSvc;
/** /**
* 1차 로그인 인증 * 1차 로그인 인증
* *
@@ -105,7 +124,13 @@ public class LoginService {
return new LoginResDto(ApiResponseCode.LOGIN_UPDATE_PWD, new LoginRes(SecurityConfig.LOGIN_UPDATE_PWD_URL)); return new LoginResDto(ApiResponseCode.LOGIN_UPDATE_PWD, new LoginRes(SecurityConfig.LOGIN_UPDATE_PWD_URL));
} }
return new LoginResDto(ApiResponseCode.SUCCESS, new LoginRes(SecurityConfig.LOGIN_SUCC_URL)); // access 토큰 생성
LoginRes loginRes = new LoginRes();
String accessToken = jwtSvc.accessToken(user);
loginRes.setAccessToken(accessToken);
loginRes.setNextUrl(SecurityConfig.VUE_URL_ARRY[0].toString());
return new LoginResDto(ApiResponseCode.SUCCESS, loginRes);
} }
/** /**
@@ -434,4 +459,73 @@ public class LoginService {
return authUserMapper.getUser(dbUserParam); return authUserMapper.getUser(dbUserParam);
} }
/**
* access 토큰 확인
*
* @param loginCheckDto
* @return LoginResDto
*/
@SuppressWarnings("unchecked")
public LoginResDto loginCheck(LoginReqDto loginCheckDto){
String accessTokenStr = "";
try {
accessTokenStr = loginCheckDto.getAccessToken();
// validate check
if(accessTokenStr == null || accessTokenStr.equals("")) {
// 에러 코드 처리
return new LoginResDto(ApiResponseCode.CE_AUTH_ERROR);
}
String oprtrId = loginCheckDto.getOprtrId();
if(oprtrId == null || oprtrId.equals("")) {
// 에러 코드 처리
return new LoginResDto(ApiResponseCode.CE_AUTH_ERROR);
}
Claims claims = jwtSvc.parseToken(accessTokenStr);
String tokenId = claims.get("jti").toString();
if(!oprtrId.equals(tokenId)) {
// 에러 코드 처리
return new LoginResDto(ApiResponseCode.CE_AUTH_ERROR);
}
// 토큰 파싱
Map<String, Object> principal = (Map<String, Object>) claims.get("principal");
String parsingOprtrId = principal.get("oprtrId").toString();
String parsingOprtrPwd = principal.get("pwd").toString();
if(!parsingOprtrId.equals(tokenId)) {
// 에러 코드 처리
return new LoginResDto(ApiResponseCode.CE_AUTH_ERROR);
}
// get user info
LoginMapper loginMapper = sqlSessionMaster.getMapper(LoginMapper.class);
String userId = parsingOprtrId;
AuthUser dbUserParam = new AuthUser();
dbUserParam.setOprtrId(userId);
AuthUser user = loginMapper.getUser(dbUserParam);
if(user == null) {
// 사용자 조회 결과 없음
return new LoginResDto(ApiResponseCode.CE_AUTH_ERROR);
}
if(!parsingOprtrPwd.equals(user.getPwd())) {
// 에러 코드 처리
return new LoginResDto(ApiResponseCode.CE_AUTH_ERROR);
}
}catch(Exception e) {
logger.info(e.getMessage());
return null;
}
LoginRes loginRes = new LoginRes();
loginRes.setAccessToken(accessTokenStr);
return new LoginResDto(ApiResponseCode.SUCCESS, loginRes);
}
} }

View File

@@ -13,4 +13,7 @@ public class LoginReqDto implements Serializable {
private String oprtrId; private String oprtrId;
@ApiModelProperty(example = "어드민 사용자 Pw", name = "어드민 사용자 Pw", dataType = "String") @ApiModelProperty(example = "어드민 사용자 Pw", name = "어드민 사용자 Pw", dataType = "String")
private String oprtrPw; private String oprtrPw;
@ApiModelProperty(hidden = true)
private String accessToken;
} }

View File

@@ -1,10 +1,11 @@
package kr.co.uplus.ez.api.login.dto; package kr.co.uplus.ez.api.login.dto;
import java.io.Serializable;
import java.util.ArrayList;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.io.Serializable;
@SuppressWarnings("serial") @SuppressWarnings("serial")
@Data @Data
public class LoginRes implements Serializable { public class LoginRes implements Serializable {
@@ -18,6 +19,12 @@ public class LoginRes implements Serializable {
@ApiModelProperty(name = "사용자명", example = "사용자명", dataType = "String") @ApiModelProperty(name = "사용자명", example = "사용자명", dataType = "String")
private String userNm; private String userNm;
/** 접근 토큰*/
private String accessToken;
/** 권한 토큰*/
private String authToken;
/** 메뉴 url*/
private ArrayList<String> menuUrls;
public LoginRes(String nextUrl) { public LoginRes(String nextUrl) {
super(); super();

View File

@@ -65,6 +65,9 @@ public enum ApiResponseCode {
,CE_SENDMGT_DUPLICATE_SENDNUM("4021", "이미 등록된 발신번호로 저장 불가.") ,CE_SENDMGT_DUPLICATE_SENDNUM("4021", "이미 등록된 발신번호로 저장 불가.")
/** 인증번호 발송 요청 임계값 초과 분당 10회 */ /** 인증번호 발송 요청 임계값 초과 분당 10회 */
,CE_AUTHNUM_STAT_LOCK("4022", "인증요청 제한") ,CE_AUTHNUM_STAT_LOCK("4022", "인증요청 제한")
/** 토큰 인증 에러*/
,CE_AUTH_ERROR("4023", "토큰 인증 에러")
// 시스템 // 시스템
/** 알 수 없는 에러. */ /** 알 수 없는 에러. */
,SE_UNKNOWN("9999", "알 수 없는 에러"); ,SE_UNKNOWN("9999", "알 수 없는 에러");

View File

@@ -1,58 +1,67 @@
package kr.co.uplus.ez.common.jwt; //package kr.co.uplus.ez.common.jwt;
//
import javax.servlet.http.Cookie; //import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest; //import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; //import javax.servlet.http.HttpServletResponse;
//
import org.springframework.beans.factory.annotation.Autowired; //import org.springframework.beans.factory.annotation.Autowired;
//
import io.jsonwebtoken.Claims; //import io.jsonwebtoken.Claims;
import io.jsonwebtoken.ExpiredJwtException; //import io.jsonwebtoken.ExpiredJwtException;
import io.jsonwebtoken.JwtException; //import io.jsonwebtoken.JwtException;
//
public class JwtAuthCookieFilter extends JwtAuthFilter { //public class JwtAuthCookieFilter extends JwtAuthFilter {
@Autowired // @Autowired
private JwtService jwtSvc; // private JwtService jwtSvc;
//
//
public JwtAuthCookieFilter(JwtProperties jwtProps) { // public JwtAuthCookieFilter(JwtProperties jwtProps) {
super(jwtProps); // super(jwtProps);
} // }
//
@Override // @Override
public String getToken(HttpServletRequest request) { // public String getToken(HttpServletRequest request) {
String payload = null, signature = null; //// String payload = null, signature = null;
Cookie[] cookies = request.getCookies(); //// Cookie[] cookies = request.getCookies();
if (cookies != null) { //// if (cookies != null) {
for (Cookie cookie : cookies) { //// for (Cookie cookie : cookies) {
// 1. 쿠키에서 jwt 토큰 header.paload 부분 읽기 //// // 1. 쿠키에서 jwt 토큰 header.paload 부분 읽기
if (jwtProps.getPart1().equals(cookie.getName())) { //// if (jwtProps.getPart1().equals(cookie.getName())) {
payload = cookie.getValue(); //// payload = cookie.getValue();
} //// }
// 2. 쿠키에서 jwt 토큰 signature 부분 읽기 //// // 2. 쿠키에서 jwt 토큰 signature 부분 읽기
else if (jwtProps.getPart2().equals(cookie.getName())) { //// else if (jwtProps.getPart2().equals(cookie.getName())) {
signature = cookie.getValue(); //// signature = cookie.getValue();
} //// }
} //// }
} //// }
if (cookies == null || payload == null || signature == null) { //// if (cookies == null || payload == null || signature == null) {
return null; //// return null;
} //// }
String token = payload + "." + signature; //// String token = payload + "." + signature;
return token; //// return token;
} // // 1. get jwtToken
// String header = request.getHeader(jwtProps.getHeader().toLowerCase());
@Override // // 2. 헤더 값 검사
public void onValidateSuccess(HttpServletRequest request, HttpServletResponse response, Claims claims) { // if(header == null || !header.startsWith(jwtProps.getPrefix())) {
// 토큰 업데이트 - Sliding Sessions // return null;
jwtSvc.updatePrivateToken(response, claims); // }
} //
// // 3. Authorization 헤더에서 토큰 추출
@Override // return header.replace(jwtProps.getPrefix(), "");
public void onValidateException(HttpServletRequest request, HttpServletResponse response, JwtException exception) { // }
if (exception instanceof ExpiredJwtException) { //
jwtSvc.destroyPrivateToken(request, response); // @Override
} // public void onValidateSuccess(HttpServletRequest request, HttpServletResponse response, Claims claims) {
} // // 토큰 업데이트 - Sliding Sessions
// jwtSvc.updatePrivateToken(response, claims);
} // }
//
// @Override
// public void onValidateException(HttpServletRequest request, HttpServletResponse response, JwtException exception) {
// if (exception instanceof ExpiredJwtException) {
// jwtSvc.destroyPrivateToken(request, response);
// }
// }
//
//}

View File

@@ -1,12 +1,22 @@
package kr.co.uplus.ez.common.jwt; package kr.co.uplus.ez.common.jwt;
import java.util.Enumeration;
import java.util.HashMap;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import io.jsonwebtoken.Claims; import org.springframework.beans.factory.annotation.Autowired;
import io.jsonwebtoken.JwtException;
import io.jsonwebtoken.Claims;
import io.jsonwebtoken.ExpiredJwtException;
import io.jsonwebtoken.JwtException;
import lombok.extern.slf4j.Slf4j;
@Slf4j
public class JwtAuthHeaderFilter extends JwtAuthFilter { public class JwtAuthHeaderFilter extends JwtAuthFilter {
@Autowired
private JwtService jwtSvc;
public JwtAuthHeaderFilter(JwtProperties jwtProps) { public JwtAuthHeaderFilter(JwtProperties jwtProps) {
super(jwtProps); super(jwtProps);
@@ -15,9 +25,22 @@ public class JwtAuthHeaderFilter extends JwtAuthFilter {
@Override @Override
public String getToken(HttpServletRequest request) { public String getToken(HttpServletRequest request) {
// 1. access token이 저장된 헤더 읽기 log.info("uri : {}", request.getRequestURI().toString());
String header = request.getHeader(jwtProps.getHeader()); // 1. 공통 헤더 체크
HashMap<String, String> headerMap = new HashMap<String, String>();
Enumeration<String> enumeration = request.getHeaderNames();
if (enumeration != null) {
while (enumeration.hasMoreElements()) {
String name = enumeration.nextElement();
headerMap.put(name.toLowerCase(), request.getHeader(name));
}
}
log.info("headerMap : {}",headerMap.toString());
// 1. access token이 저장된 헤더 읽기
String header = request.getHeader(jwtProps.getHeader().toLowerCase());
log.info("header authToken: {}" , header);
// 2. 헤더 값 검사 // 2. 헤더 값 검사
if(header == null || !header.startsWith(jwtProps.getPrefix())) { if(header == null || !header.startsWith(jwtProps.getPrefix())) {
return null; return null;
@@ -29,10 +52,16 @@ public class JwtAuthHeaderFilter extends JwtAuthFilter {
@Override @Override
public void onValidateSuccess(HttpServletRequest request, HttpServletResponse response, Claims claims) { public void onValidateSuccess(HttpServletRequest request, HttpServletResponse response, Claims claims) {
// jwtSvc.updatePrivateToken(response, claims);
} }
@Override @Override
public void onValidateException(HttpServletRequest request, HttpServletResponse response, JwtException exception) { public void onValidateException(HttpServletRequest request, HttpServletResponse response, JwtException exception) {
if (exception instanceof ExpiredJwtException) {
//jwtSvc.destroyPrivateToken(request, response);
response.setStatus(HttpServletResponse.SC_UNAUTHORIZED);
}
} }
} }

View File

@@ -35,7 +35,7 @@ public class JwtService {
@Qualifier("sqlSessionTemplateDb2") @Qualifier("sqlSessionTemplateDb2")
private SqlSessionTemplate sqlSessionSlave; private SqlSessionTemplate sqlSessionSlave;
public void generatePrivateToken(HttpServletResponse response, Authentication auth) { public String generatePrivateToken(HttpServletResponse response, Authentication auth) {
Claims claims = coreClaims(auth, jwtProps.getPrivateTokenExpiration()); Claims claims = coreClaims(auth, jwtProps.getPrivateTokenExpiration());
// 필요하면 다른 정보 추가 // 필요하면 다른 정보 추가
@@ -45,7 +45,8 @@ public class JwtService {
String token = generateToken(claims); String token = generateToken(claims);
// 쿠키에 토큰 추가 - 보안 강화 // 쿠키에 토큰 추가 - 보안 강화
setTokenToCookie(response, token); //setTokenToCookie(response, token);
return token;
} }
private Claims coreClaims(Authentication auth, int expire) { private Claims coreClaims(Authentication auth, int expire) {
@@ -162,12 +163,28 @@ public class JwtService {
return generateToken(claims); return generateToken(claims);
} }
public String accessToken(AuthUser authUser) {
String setId = authUser.getOprtrId();
DateTime now = DateTime.now();
Date expiration = now.plusSeconds(jwtProps.getAccessTokenExpiration()).toDate();
Claims claims = Jwts.claims()
.setId(setId)
.setIssuedAt(now.toDate())
.setExpiration(expiration);
JwtUser jwtUser = JwtUser.createJwtUser(authUser);
claims.put("principal", jwtUser);
return generateToken(claims);
}
private String refreshToken(Authentication auth) { private String refreshToken(Authentication auth) {
Claims claims = coreClaims(auth, jwtProps.getRefreshTokenExpiration()); Claims claims = coreClaims(auth, jwtProps.getRefreshTokenExpiration());
return generateToken(claims); return generateToken(claims);
} }
private Claims parseToken(String token) { public Claims parseToken(String token) {
try { try {
Claims claims = Jwts.parser() Claims claims = Jwts.parser()
.setSigningKey(TextCodec.BASE64.decode(jwtProps.getKeyString())) .setSigningKey(TextCodec.BASE64.decode(jwtProps.getKeyString()))

View File

@@ -24,6 +24,7 @@ public class JwtUser extends AuthUser {
u.setOprtrNm(user.getUsername()); u.setOprtrNm(user.getUsername());
u.setHpNo(user.getHpNo()); u.setHpNo(user.getHpNo());
u.setAuthorities(user.getAuthorities()); u.setAuthorities(user.getAuthorities());
u.setPwd(user.getPassword());
return u; return u;
} }

View File

@@ -20,7 +20,7 @@ import org.springframework.web.cors.CorsUtils;
import kr.co.uplus.ez.api.login.LoginFailureHandler; import kr.co.uplus.ez.api.login.LoginFailureHandler;
import kr.co.uplus.ez.api.login.LoginSuccessHandler; import kr.co.uplus.ez.api.login.LoginSuccessHandler;
import kr.co.uplus.ez.common.jwt.JwtAuthCookieFilter; //import kr.co.uplus.ez.common.jwt.JwtAuthCookieFilter;
import kr.co.uplus.ez.common.jwt.JwtAuthHeaderFilter; import kr.co.uplus.ez.common.jwt.JwtAuthHeaderFilter;
import kr.co.uplus.ez.common.jwt.JwtExceptionFilter; import kr.co.uplus.ez.common.jwt.JwtExceptionFilter;
import kr.co.uplus.ez.common.jwt.JwtProperties; import kr.co.uplus.ez.common.jwt.JwtProperties;
@@ -31,7 +31,7 @@ import kr.co.uplus.ez.config.filter.VueStaticFilter;
public class SecurityConfig extends WebSecurityConfigurerAdapter { public class SecurityConfig extends WebSecurityConfigurerAdapter {
private static final String LOGIN_FORM_URL = "/login"; private static final String LOGIN_FORM_URL = "/login";
public static final String LOGIN_API_URL = "/api/v1/bo/login"; public static final String LOGIN_API_URL = "/api/v1/bo/login/**";
public static final String LOGIN_FAIL_URL = "/login?error=true"; public static final String LOGIN_FAIL_URL = "/login?error=true";
public static final String LOGIN_SUCC_URL = "/"; public static final String LOGIN_SUCC_URL = "/";
public static final String LOGIN_UPDATE_PWD_URL = "/view/login/updatePassword"; public static final String LOGIN_UPDATE_PWD_URL = "/view/login/updatePassword";
@@ -40,6 +40,15 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter {
public static final String PUBLIC_API_URL = "/api/v1/bo/**"; // 내부에서 인증없이 호출하는 API public static final String PUBLIC_API_URL = "/api/v1/bo/**"; // 내부에서 인증없이 호출하는 API
public static final String[] REST_API_URLS = {API_URL, TEST_PERMIT_URL}; public static final String[] REST_API_URLS = {API_URL, TEST_PERMIT_URL};
public static final String[] VUE_URL_ARRY = {
"/view/login/auth"
,"/custMgt/subsList"
,"/custMgt/memberList"
,"/custMgt/subsDetail"
,"/custMgt/memberDetail"
,"/custMgt/memberAdminDetail"
};
private static final String[] PERMIT_URL_ARRAY = { private static final String[] PERMIT_URL_ARRAY = {
"/login", "/login",
"/api/v1/bo/login/**", "/api/v1/bo/login/**",
@@ -47,7 +56,8 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter {
"/swagger-resources/**", "/swagger-resources/**",
"/v3/api-docs", "/v3/api-docs",
"/v3/api-docs/**", "/v3/api-docs/**",
"/" "/",
"/socket/**"
}; };
private static final String[] AUTH_URL_ARRAY = { private static final String[] AUTH_URL_ARRAY = {
@@ -59,7 +69,8 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter {
"/api/v1/bo/sendNumMgt/**", "/api/v1/bo/sendNumMgt/**",
"/api/v1/bo/mntrng/**", "/api/v1/bo/mntrng/**",
"/api/v1/bo/riskMgt/sendNum/**", "/api/v1/bo/riskMgt/sendNum/**",
"/api/v1/bo/stats/**" "/api/v1/bo/stats/**",
"/view/error/**"
}; };
@@ -78,17 +89,17 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter {
.antMatchers("/static/**", "/assets/**"); .antMatchers("/static/**", "/assets/**");
} }
@Bean // @Bean
public Filter jwtAuthFilter() { // public Filter jwtAuthFilter() {
return new JwtAuthCookieFilter(jwtProps); // return new JwtAuthCookieFilter(jwtProps);
} // }
@Override @Override
public void configure(HttpSecurity http) throws Exception { public void configure(HttpSecurity http) throws Exception {
http http
.addFilterBefore(new VueStaticFilter(), UsernamePasswordAuthenticationFilter.class) // Vue에서 호출시 화면관련 URL은 / forward .addFilterBefore(new VueStaticFilter(), UsernamePasswordAuthenticationFilter.class) // Vue에서 호출시 화면관련 URL은 / forward
.addFilterBefore(new JwtExceptionFilter(), UsernamePasswordAuthenticationFilter.class) .addFilterBefore(new JwtExceptionFilter(), UsernamePasswordAuthenticationFilter.class)
.addFilterBefore(jwtAuthFilter(), UsernamePasswordAuthenticationFilter.class) // .addFilterBefore(jwtAuthFilter(), UsernamePasswordAuthenticationFilter.class)
.addFilterBefore(new JwtAuthHeaderFilter(jwtProps), UsernamePasswordAuthenticationFilter.class); .addFilterBefore(new JwtAuthHeaderFilter(jwtProps), UsernamePasswordAuthenticationFilter.class);
http http