리스크관리 / 유치채널현황 관리 / 채널관리 추가

This commit is contained in:
kimre
2022-06-24 18:14:06 +09:00
parent 2a073eca83
commit 056ccf20e1
87 changed files with 5931 additions and 2114 deletions

View File

@@ -1,6 +1,6 @@
<template>
<!--<div>-->
<!-- <div class="dimmed modal26" @click="ModalClose();"></div>-->
<div>
<div class="dimmed modal26" @click="ModalClose();"></div>
<div class="popup-wrap modal26">
<div class="popup modal26">
<div class="pop-head">
@@ -22,16 +22,17 @@
</div>
<search-id-popup ref="searchIdPopModal"> </search-id-popup>
<common-modal ref="commmonModal"></common-modal>
</div>
<!--</div>-->
</div>
</template>
<script>
import api from '@/service/api';
import custMgtApi from "../service/custMgtApi.js";
import SearchIdPopup from '../components/SearchIdPopup.vue';
import commonModal from "@/components/modal/commonModal";
export default {
name: "adminNmPop",
@@ -56,7 +57,8 @@ export default {
}
},
components: {
SearchIdPopup,
SearchIdPopup,
commonModal,
},
model: {
//prop: 'sendData',
@@ -69,11 +71,13 @@ export default {
},
methods : {
// 마당ID 조회
async searchMadangId(){
if(!this.madangId){
alert('마당ID를 입력해주세요');
this.$refs.madangId.focus();
return false;
async searchMadangId(){
if(!this.madangId){
this.row.title = '청약고객관리';
this.row.msg1 = '마당ID를 입력해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs.madangId.focus();
return false;
}
var params = {
"adminId": this.madangId

View File

@@ -40,6 +40,9 @@
<button class="btn-pcolor download" @click="excelDown();">엑셀 다운로드</button>
</div>
</div>
<common-modal ref="commmonModal"></common-modal>
</div>
</div>
</template>
@@ -49,6 +52,7 @@
import custMgtApi from "../service/custMgtApi.js";
import xlsx from '@/common/excel';
import moment from 'moment';
import commonModal from "@/components/modal/commonModal";
export default {
name: "carryOverListPop",
@@ -60,6 +64,9 @@ export default {
pageType: 'CARRY',
}
},
components: {
commonModal,
},
created(){
this.getExcelHeader();
},
@@ -78,7 +85,9 @@ export default {
this.totalCnt = result.data.totalCnt;
}
} catch(err) {
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
var dimmed = document.getElementsByClassName('modal25');
for(var i = 0; i < dimmed.length; i++){
@@ -98,8 +107,11 @@ export default {
},
excelDown() {
if (this.list.length <= 0) {
alert('조회된 데이터가 없습니다.');
return false;
this.row.title = '청약고객관리';
this.row.msg1 = '조회된 데이터가 없습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
return false;
}
let today = moment().format('YYYYMMDDHHmmss');

View File

@@ -33,6 +33,7 @@
<button class="btn-default" @click="excelPopClose">취소</button>
</div>
</div>
<common-modal ref="commmonModal"></common-modal>
</div>
</div>
</template>
@@ -44,6 +45,7 @@ import { utils_mixin, chkPattern2 } from '../service/mixins';
import xlsx from '@/common/excel';
import moment from 'moment';
import XLSX from 'xlsx';
import commonModal from "@/components/modal/commonModal";
export default {
name: "memberBulkRegPop",
@@ -61,7 +63,9 @@ export default {
totalItems: 0,
}
},
components: {
commonModal,
},
created(){
this.getExcelHeader();
},
@@ -96,11 +100,15 @@ export default {
const response = await custMgtApi.insertTestId(this.row);
const result = response.data;
if (result != null && result.retCode == "0000") {
alert('저장 하였습니다.');
this.row.title = '청약고객관리';
this.row.msg1 = '저장 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.toComplete();
}
} catch(err) {
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
}
},
@@ -145,10 +153,12 @@ export default {
let tmpResult = {};
const vm = this;
reader.onerror = (e) => {
alert('파일을 읽는 동안 에러가 발생 했습니다.');
}
reader.onloadend = (e) => {
}
this.row.title = '청약고객관리';
this.row.msg1 = '파일을 읽는 동안 에러가 발생 했습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
reader.onloadend = (e) => {
}
reader.onload = (e) => {
@@ -163,7 +173,9 @@ export default {
const totalCnt = Number(this.totalItems) + rowObj.length;
if(totalCnt > limitCnt){
alert('100건이상은 등록되지 않습니다.');
this.row.title = '청약고객관리';
this.row.msg1 = '100건이상은 등록되지 않습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
return false;
}
@@ -270,7 +282,9 @@ export default {
}
} catch (error) {
console.log(error);
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
// 오류건수.

View File

@@ -58,6 +58,7 @@
</div>
<validation-confirm-pop ref="validationConfirmPopModal"> </validation-confirm-pop>
<common-modal ref="commmonModal"></common-modal>
</div>
</div>
@@ -69,6 +70,7 @@ import custMgtApi from "../service/custMgtApi.js";
import { utils_mixin, chkPattern2 } from '../service/mixins';
import ValidationConfirmPop from '../components/ValidationConfirmPop.vue';
import lodash from "lodash";
import commonModal from "@/components/modal/commonModal";
export default {
name: "memberModifyPop",
@@ -79,7 +81,8 @@ export default {
}
},
components: {
ValidationConfirmPop,
ValidationConfirmPop,
commonModal,
},
model: {
//prop: 'sendData',
@@ -91,23 +94,23 @@ export default {
// this.formReset();
},
data(){
return{
row:{},
return{
row:{},
madangId:'',
name:'',
mdn:'',
email:'',
auth:'',
stat: "",
userId: "",
adminId: "",
userId: "",
adminId: "",
userNm:"",
userPwd1:"",
userPwd2:"",
userPwd1:"",
userPwd2:"",
code:"",
userStat:"",
}
},
userStat:"",
}
},
methods :{
//사용자ID 수정 모달 Open
async memberUpdateModalOpen(props){
@@ -124,10 +127,14 @@ export default {
this.mdn = result.data.mdn;
this.userStat = result.data.userStat;
} else {
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
} catch(err) {
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
// 모달 오픈
var dimmed = document.getElementsByClassName('memberUpdate');
@@ -155,14 +162,20 @@ export default {
const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") {
alert('수정 완료하였습니다.');
this.toComplete();
this.row.title = '청약고객관리';
this.row.msg1 = '수정 완료하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.toComplete();
} else {
alert("실패 하였습니다.");
}
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
} catch(err) {
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
},
//사용자ID 수정 모달 Close
@@ -179,18 +192,24 @@ export default {
},
doPwdValidate(){
if(this.isNull(this.userPwd2)){
alert("비밀번호 확인을 입력해 주세요.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호 확인을 입력해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd2.focus();
return false;
}
if(!lodash.isEqual(this.userPwd1, this.userPwd2)){
alert("비밀번호가 일치하지 않습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호가 일치하지 않습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd2.focus();
return false;
}
const pwdLen = this.bytes(this.userPwd1);
if(!(pwdLen >= 8 && pwdLen <= 16)){
alert("비밀번호는 8~16자의 영문, 숫자, 특수문자(!,@, $, %, ^, &, *) 조합이 필요합니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호는 8~16자의 영문, 숫자, 특수문자(!,@, $, %, ^, &, *) 조합이 필요합니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd1.focus();
return false;
}
@@ -198,7 +217,9 @@ export default {
const pNum = /[0-9]/g; // 숫자
const pSpc = /[!@$%^&*]/g; // 특수문자
if(!(pEng.test(this.userPwd1) && pNum.test(this.userPwd1) && pSpc.test(this.userPwd1))) {
alert("비밀번호는 8~16자의 영문, 숫자, 특수문자(!,@, $, %, ^, &, *) 조합이 필요합니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호는 8~16자의 영문, 숫자, 특수문자(!,@, $, %, ^, &, *) 조합이 필요합니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd1.focus();
return false;
}
@@ -212,14 +233,18 @@ export default {
}
}
if(this.isNull(this.userNm)){
alert("이름을 입력해 주세요");
if(this.isNull(this.userNm)){
this.row.title = '청약고객관리';
this.row.msg1 = '이름을 입력해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._userNm.focus();
return false;
}
if(this.isNull(this.email)){
alert('이메일을 입력해주세요.');
if(this.isNull(this.email)){
this.row.title = '청약고객관리';
this.row.msg1 = '이메일을 입력해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._email.focus();
return false;
}
@@ -232,8 +257,10 @@ export default {
return false;
}
if(this.isNull(this.mdn)){
alert('휴대폰번호를 입력해주세요.');
if(this.isNull(this.mdn)){
this.row.title = '청약고객관리';
this.row.msg1 = '휴대폰번호를 입력해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._phone.focus();
return false;
}
@@ -241,26 +268,28 @@ export default {
if(!this.isNull(hp) && !this.isMobile(hp)){
//alert("휴대폰 번호 형식이 잘못되었습니다. 확인해 주세요");
//this.$refs._phone.focus();
this.$refs.validationConfirmPopModal.validationPhonenumberOpen();
this.$refs.validationConfirmPopModal.validationPhonenumberOpen();
return false;
}
if(this.isNull(this.userStat)){
alert('상태를 선택 해주세요.');
if(this.isNull(this.userStat)){
this.row.title = '청약고객관리';
this.row.msg1 = '상태를 선택 해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
return false;
}
return true;
},
checkPhoneFocus(){
//this.mdn = '';
this.$refs._phone.focus();
},
checkEmailFocus(){
//this.email = '';
this.$refs._email.focus();
},
checkPhoneFocus(){
//this.mdn = '';
this.$refs._phone.focus();
},
checkEmailFocus(){
//this.email = '';
this.$refs._email.focus();
},
}
}

View File

@@ -58,7 +58,7 @@
</div>
<validation-confirm-pop ref="validationConfirmPopModal"> </validation-confirm-pop>
<common-modal ref="commmonModal"></common-modal>
</div>
</div>
</template>
@@ -69,6 +69,7 @@ import custMgtApi from "../service/custMgtApi.js";
import { utils_mixin, chkPattern2 } from '../service/mixins';
import ValidationConfirmPop from '../components/ValidationConfirmPop.vue';
import lodash from "lodash";
import commonModal from "@/components/modal/commonModal";
export default {
name: "memberRegPop",
@@ -79,7 +80,8 @@ export default {
}
},
components: {
ValidationConfirmPop,
ValidationConfirmPop,
commonModal,
},
model: {
//prop: 'sendData',
@@ -94,20 +96,20 @@ export default {
return{
row:{},
madangId:'',
adminId:'',
adminId:'',
name:'',
mdn:'',
email:'',
auth:'',
stat: "",
userId:"",
userId:"",
userNm:"",
userPwd1:"",
userPwd2:"",
userPwd1:"",
userPwd2:"",
code:"",
userTotalCnt:0,
}
},
userTotalCnt:0,
}
},
methods :{
//사용자ID 생성 모달 Open
async memberInsertModalOpen(props){
@@ -141,16 +143,22 @@ export default {
const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") {
alert('사용자 생성 완료하였습니다.');
this.toComplete();
} else if(result != null && result.retCode == "4018"){
// 이미 사용중인 ID
this.$refs.validationConfirmPopModal.validationIdDuplicateOpen();
this.row.title = '청약고객관리';
this.row.msg1 = '사용자 생성 완료하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.toComplete();
} else if(result != null && result.retCode == "4018"){
// 이미 사용중인 ID
this.$refs.validationConfirmPopModal.validationIdDuplicateOpen();
} else {
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
} catch(err) {
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
},
//사용자ID 생성 모달 Close
@@ -180,18 +188,24 @@ export default {
doPwdValidate(){
if(this.isNull(this.userPwd2)){
alert("비밀번호 확인을 입력해 주세요.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호 확인을 입력해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd2.focus();
return false;
}
if(!lodash.isEqual(this.userPwd1, this.userPwd2)){
alert("비밀번호가 일치하지 않습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호가 일치하지 않습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd2.focus();
return false;
}
const pwdLen = this.bytes(this.userPwd1);
if(!(pwdLen >= 8 && pwdLen <= 16)){
alert("비밀번호는 8~16자의 영문, 숫자, 특수문자(!,@, $, %, ^, &, *) 조합이 필요합니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호는 8~16자의 영문, 숫자, 특수문자(!,@, $, %, ^, &, *) 조합이 필요합니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd1.focus();
return false;
}
@@ -199,7 +213,9 @@ export default {
const pNum = /[0-9]/g; // 숫자
const pSpc = /[!@$%^&*]/g; // 특수문자
if(!(pEng.test(this.userPwd1) && pNum.test(this.userPwd1) && pSpc.test(this.userPwd1))) {
alert("비밀번호는 8~16자의 영문, 숫자, 특수문자(!,@, $, %, ^, &, *) 조합이 필요합니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호는 8~16자의 영문, 숫자, 특수문자(!,@, $, %, ^, &, *) 조합이 필요합니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd1.focus();
return false;
}
@@ -207,89 +223,101 @@ export default {
return true;
},
doValidate(){
if(this.userTotalCnt >= 100){
// 사용자등록제한_최대100개까지
this.$refs.validationConfirmPopModal.validationMaxlimitOpen();
return false;
}
if(this.userTotalCnt >= 100){
// 사용자등록제한_최대100개까지
this.$refs.validationConfirmPopModal.validationMaxlimitOpen();
return false;
}
if(this.isNull(this.userId)){
alert("ID를 입력해 주세요");
if(this.isNull(this.userId)){
this.row.title = '청약고객관리';
this.row.msg1 = 'ID를 입력해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._userId.focus();
return false;
}
if(this.isNull(this.userPwd1)){
alert("비밀번호를 입력해 주세요");
if(this.isNull(this.userPwd1)){
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호를 입력해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs.__pwd1.focus();
return false;
}
if(this.isNull(this.userPwd2)){
alert("비밀번호 확인을 입력해 주세요");
if(this.isNull(this.userPwd2)){
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호 확인을 입력해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs.__pwd2.focus();
return false;
}
if(!this.isNull(this.userPwd1)){
if(!this.isNull(this.userPwd1)){
if(!this.doPwdValidate()){
return false;
}
}
if(this.isNull(this.userNm)){
alert("이름을 입력해 주세요");
if(this.isNull(this.userNm)){
this.row.title = '청약고객관리';
this.row.msg1 = '이름을 입력해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._userNm.focus();
return false;
}
if(this.isNull(this.email)){
alert('이메일을 입력해주세요.');
if(this.isNull(this.email)){
this.row.title = '청약고객관리';
this.row.msg1 = '이메일을 입력해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._email.focus();
return false;
}
const email = this.email;
if(!this.isNull(email) && !lodash.isEqual(email,'@') && !this.emailCheck(email)){
// alert("이메일 형식이 잘못되었습니다. 확인해 주세요");
// this.$refs._email.focus();
this.$refs.validationConfirmPopModal.validationEmailOpen();
this.$refs.validationConfirmPopModal.validationEmailOpen();
return false;
}
if(this.isNull(this.mdn)){
alert('휴대폰번호를 입력해주세요.');
if(this.isNull(this.mdn)){
this.row.title = '청약고객관리';
this.row.msg1 = '휴대폰번호를 입력해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._phone.focus();
return false;
}
const hp = this.mdn;
if(!this.isNull(hp) && !this.isMobile(hp)){
//alert("휴대폰 번호 형식이 잘못되었습니다. 확인해 주세요");
//this.$refs._phone.focus();
this.$refs.validationConfirmPopModal.validationPhonenumberOpen();
this.$refs.validationConfirmPopModal.validationPhonenumberOpen();
return false;
}
if(this.isNull(this.stat)){
alert('상태를 선택 해주세요.');
if(this.isNull(this.stat)){
this.row.title = '청약고객관리';
this.row.msg1 = '상태를 선택 해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
return false;
}
return true;
},
checkPhoneFocus(){
//this.mdn = '';
this.$refs._phone.focus();
},
checkEmailFocus(){
//this.email = '';
this.$refs._email.focus();
},
checkIdDupFocus(){
//this.email = '';
this.$refs._userId.focus();
},
checkPhoneFocus(){
//this.mdn = '';
this.$refs._phone.focus();
},
checkEmailFocus(){
//this.email = '';
this.$refs._email.focus();
},
checkIdDupFocus(){
//this.email = '';
this.$refs._userId.focus();
},
}
}

View File

@@ -51,6 +51,8 @@
<button class="btn-default" @click="memoTotalModalClose();">닫기</button>
</div>
<common-modal ref="commmonModal"></common-modal>
</div>
</div>
@@ -61,6 +63,7 @@
import customGrid from "@/components/CustomGrid";
import api from '@/service/api';
import custMgtApi from "../service/custMgtApi.js";
import commonModal from "@/components/modal/commonModal";
class CustomATagRenderer {
constructor(props) {
@@ -95,18 +98,14 @@ export default {
},
//props: ['sendData'],
// props: [],
created(){
// this.setAuthData();
// this.formReset();
},
data(){
return{
memorow: {},
totalItems: 0,
// 테이블 리스트 데이터
perPageCnt: 10,
userId: '',
grid: {
return{
memorow: {},
totalItems: 0,
// 테이블 리스트 데이터
perPageCnt: 10,
userId: '',
grid: {
url: '/api/v1/bo/custMgt/allMemoList',
pagePerRows: 10,
pagination: true,
@@ -136,7 +135,8 @@ export default {
}
},
components:{
customGrid: customGrid,
customGrid: customGrid,
commonModal,
},
created(){
@@ -239,26 +239,30 @@ export default {
// alert('삭제 성공');
// 그리드 reload
// 리스트 그리드 오픈
let page = 1;
// 페이지 정보 및 검색 조건
const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log('getCondition : '+getCondition);
let page = 1;
// 페이지 정보 및 검색 조건
const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
console.log('getCondition : '+getCondition);
// store에 저장된 페이지 정보 및 검색 조건을 불러오기
let isKeep = false;
if (getCondition) {
this.grid.pagePerRows = getCondition.perPage;
this.grid.params = getCondition.params;
page = getCondition.page;
isKeep = true;
}
this.search(isKeep);
// store에 저장된 페이지 정보 및 검색 조건을 불러오기
let isKeep = false;
if (getCondition) {
this.grid.pagePerRows = getCondition.perPage;
this.grid.params = getCondition.params;
page = getCondition.page;
isKeep = true;
}
this.search(isKeep);
} else {
alert("실패 하였습니다.");
}
this.memorow.title = '청약고객관리';
this.memorow.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.memorow);
}
} catch (error) {
console.log(error);
alert("실패 하였습니다.");
this.memorow.title = '청약고객관리';
this.memorow.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.memorow);
}
}
}

View File

@@ -51,6 +51,7 @@
<button class="btn-default" @click="ModalClose();">취소</button>
<button class="btn-pcolor" @click="doInsert">저장</button>
</div>
<common-modal ref="commmonModal"></common-modal>
</div>
</div>
</div>
@@ -61,6 +62,8 @@ import api from '@/service/api';
import custMgtApi from "../service/custMgtApi.js";
import { utils_mixin, chkPattern2 } from '../service/mixins';
import lodash from "lodash";
import commonModal from "@/components/modal/commonModal";
import ValidationConfirmPop from "@/modules/custMgt/components/ValidationConfirmPop";
export default {
name: "subsRegPop",
@@ -89,29 +92,40 @@ export default {
event: 'event-data'
},
props: ['sendData'],
components: {
commonModal,
},
created(){
this.formReset();
},
methods :{
doPwdValidate(){
if(this.isNull(this.userPwd1)){
alert("비밀번호를 입력해 주세요.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호를 입력해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd1.focus();
return false;
}
if(this.isNull(this.userPwd2)){
alert("비밀번호 확인을 입력해 주세요.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호 확인을 입력해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd2.focus();
return false;
}
if(!lodash.isEqual(this.userPwd1, this.userPwd2)){
alert("비밀번호가 일치하지 않습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호가 일치하지 않습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd2.focus();
return false;
}
const pwdLen = this.bytes(this.userPwd1);
if(!(pwdLen >= 8 && pwdLen <= 16)){
alert("비밀번호는 8~16자의 영문, 숫자, 특수문자(!,@, $, %, ^, &, *) 조합이 필요합니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호는 8~16자의 영문, 숫자, 특수문자(!,@, $, %, ^, &, *) 조합이 필요합니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd1.focus();
return false;
}
@@ -119,7 +133,9 @@ export default {
const pNum = /[0-9]/g; // 숫자
const pSpc = /[!@$%^&*]/g; // 특수문자
if(!(pEng.test(this.userPwd1) && pNum.test(this.userPwd1) && pSpc.test(this.userPwd1))) {
alert("비밀번호는 8~16자의 영문, 숫자, 특수문자(!,@, $, %, ^, &, *) 조합이 필요합니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호는 8~16자의 영문, 숫자, 특수문자(!,@, $, %, ^, &, *) 조합이 필요합니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd1.focus();
return;
}
@@ -128,7 +144,9 @@ export default {
},
doValidate(){
if(this.isNull(this.userId)){
alert("아이디를 입력해 주세요.");
this.row.title = '청약고객관리';
this.row.msg1 = '아이디를 입력해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._userId.focus();
return false;
}
@@ -136,34 +154,46 @@ export default {
return false;
}
if(this.isNull(this.userNm)){
alert("이름을 입력해 주세요");
this.row.title = '청약고객관리';
this.row.msg1 = '이름을 입력해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._userNm.focus();
return false;
}
if(this.isNull(this.mdn)){
alert('휴대폰번호를 입력해주세요.');
this.row.title = '청약고객관리';
this.row.msg1 = '휴대폰번호를 입력해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._phone.focus();
return false;
}
const hp = this.mdn;
if(!this.isNull(hp) && !this.isMobile(hp)){
alert("휴대폰 번호 형식이 잘못되었습니다. 확인해 주세요");
this.row.title = '청약고객관리';
this.row.msg1 = '휴대폰 번호 형식이 잘못되었습니다. 확인해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._phone.focus();
return false;
}
if(this.isNull(this.email)){
alert('이메일을 입력해주세요.');
this.row.title = '청약고객관리';
this.row.msg1 = '이메일을 입력해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._email.focus();
return false;
}
const email = this.email;
if(!this.isNull(email) && !lodash.isEqual(email,'@') && !this.emailCheck(email)){
alert("이메일 형식이 잘못되었습니다. 확인해 주세요");
this.row.title = '청약고객관리';
this.row.msg1 = '이메일 형식이 잘못되었습니다. 확인해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._email.focus();
return false;
}
if(this.isNull(this.userStat)){
alert('상태를 선택 해주세요.');
this.row.title = '청약고객관리';
this.row.msg1 = '상태를 선택 해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
// this.$refs._auth.focus();
return false;
}
@@ -200,19 +230,23 @@ export default {
this.ModalClose();
},
async doInsert(){
if(this.doValidate() && window.confirm('등록 하시겠습니까?')){
try {
if(this.doValidate() && window.confirm('등록 하시겠습니까?')){
try {
const response = await custMgtApi.insertTestId(this.row);
const result = response.data;
if (result != null && result.retCode == "0000") {
alert('저장 하였습니다.');
this.row.title = '청약고객관리';
this.row.msg1 = '저장 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.toComplete();
}
} catch(err) {
alert("실패 하였습니다.");
}
}
},
} catch(err) {
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
}
},
formReset(){
//this.$refs.adminRegForm.reset();
},

View File

@@ -51,6 +51,9 @@
<button class="btn-default" @click="ModalClose();">취소</button>
<button class="btn-pcolor" @click="doInsert">저장</button>
</div>
<common-modal ref="commmonModal"></common-modal>
</div>
</div>
</div>
@@ -61,6 +64,8 @@ import api from '@/service/api';
import custMgtApi from "../service/custMgtApi.js";
import { utils_mixin, chkPattern2 } from '../service/mixins';
import lodash from "lodash";
import commonModal from "@/components/modal/commonModal";
import ValidationConfirmPop from "@/modules/custMgt/components/ValidationConfirmPop";
export default {
name: "subsRegPop",
@@ -71,7 +76,7 @@ export default {
}
},
data(){
return{
return{
row: {},
userId:'',
name:'',
@@ -79,39 +84,50 @@ export default {
email:'',
userStat: '',
userNm:"",
userPwd1:"",
userPwd2:"",
userPwd1:"",
userPwd2:"",
code:"",
}
},
}
},
model: {
prop: 'sendData',
event: 'event-data'
},
props: ['sendData'],
components: {
commonModal,
},
created(){
this.formReset();
},
methods :{
doPwdValidate(){
if(this.isNull(this.userPwd1)){
alert("비밀번호를 입력해 주세요.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호를 입력해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd1.focus();
return false;
}
if(this.isNull(this.userPwd2)){
alert("비밀번호 확인을 입력해 주세요.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호 확인을 입력해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd2.focus();
return false;
}
if(!lodash.isEqual(this.userPwd1, this.userPwd2)){
alert("비밀번호가 일치하지 않습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호가 일치하지 않습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd2.focus();
return false;
}
const pwdLen = this.bytes(this.userPwd1);
if(!(pwdLen >= 8 && pwdLen <= 16)){
alert("비밀번호는 8~16자의 영문, 숫자, 특수문자(!,@, $, %, ^, &, *) 조합이 필요합니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호는 8~16자의 영문, 숫자, 특수문자(!,@, $, %, ^, &, *) 조합이 필요합니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd1.focus();
return false;
}
@@ -119,7 +135,9 @@ export default {
const pNum = /[0-9]/g; // 숫자
const pSpc = /[!@$%^&*]/g; // 특수문자
if(!(pEng.test(this.userPwd1) && pNum.test(this.userPwd1) && pSpc.test(this.userPwd1))) {
alert("비밀번호는 8~16자의 영문, 숫자, 특수문자(!,@, $, %, ^, &, *) 조합이 필요합니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '비밀번호는 8~16자의 영문, 숫자, 특수문자(!,@, $, %, ^, &, *) 조합이 필요합니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._pwd1.focus();
return;
}
@@ -128,7 +146,9 @@ export default {
},
doValidate(){
if(this.isNull(this.userId)){
alert("아이디를 입력해 주세요.");
this.row.title = '청약고객관리';
this.row.msg1 = '아이디를 입력해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._userId.focus();
return false;
}
@@ -136,34 +156,46 @@ export default {
return false;
}
if(this.isNull(this.userNm)){
alert("이름을 입력해 주세요");
this.row.title = '청약고객관리';
this.row.msg1 = '이름을 입력해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._userNm.focus();
return false;
}
if(this.isNull(this.mdn)){
alert('휴대폰번호를 입력해주세요.');
this.row.title = '청약고객관리';
this.row.msg1 = '휴대폰번호를 입력해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._phone.focus();
return false;
}
const hp = this.mdn;
if(!this.isNull(hp) && !this.isMobile(hp)){
alert("휴대폰 번호 형식이 잘못되었습니다. 확인해 주세요");
this.row.title = '청약고객관리';
this.row.msg1 = '휴대폰 번호 형식이 잘못되었습니다. 확인해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._phone.focus();
return false;
}
if(this.isNull(this.email)){
alert('이메일을 입력해주세요.');
this.row.title = '청약고객관리';
this.row.msg1 = '이메일을 입력해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._email.focus();
return false;
}
const email = this.email;
if(!this.isNull(email) && !lodash.isEqual(email,'@') && !this.emailCheck(email)){
alert("이메일 형식이 잘못되었습니다. 확인해 주세요");
this.row.title = '청약고객관리';
this.row.msg1 = '이메일 형식이 잘못되었습니다. 확인해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._email.focus();
return false;
}
if(this.isNull(this.userStat)){
alert('상태를 선택 해주세요.');
this.row.title = '청약고객관리';
this.row.msg1 = '상태를 선택 해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
// this.$refs._auth.focus();
return false;
}
@@ -200,19 +232,23 @@ export default {
this.ModalClose();
},
async doInsert(){
if(this.doValidate() && window.confirm('등록 하시겠습니까?')){
try {
if(this.doValidate() && window.confirm('등록 하시겠습니까?')){
try {
const response = await custMgtApi.insertTestId(this.row);
const result = response.data;
if (result != null && result.retCode == "0000") {
alert('저장 하였습니다.');
this.row.title = '청약고객관리';
this.row.msg1 = '저장 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.toComplete();
}
} catch(err) {
alert("실패 하였습니다.");
}
}
},
} catch(err) {
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
}
},
formReset(){
//this.$refs.adminRegForm.reset();
},

View File

@@ -145,6 +145,7 @@
<member-reg-pop ref="memberRegPop"> </member-reg-pop>
<member-modify-pop ref="memberModifyPop"> </member-modify-pop>
<memo-total-pop ref="memoTatalListPop"> </memo-total-pop>
<common-modal ref="commmonModal"></common-modal>
</div>
</div>
@@ -157,6 +158,7 @@ import MemberBulkRegPop from '../components/MemberBulkRegPop';
import MemberRegPop from '../components/MemberRegPop';
import MemberModifyPop from '../components/MemberModifyPop';
import MemoTotalPop from '../components/MemoTotalPop';
import commonModal from "@/components/modal/commonModal";
export default {
name: 'memberAdminDetail',
@@ -196,10 +198,11 @@ export default {
},
},
components: {
MemberBulkRegPop,
MemberRegPop,
MemberModifyPop,
MemoTotalPop,
MemberBulkRegPop,
MemberRegPop,
MemberModifyPop,
MemoTotalPop,
commonModal,
},
created(){
this.memberDetail(this.$route.params.serviceId);
@@ -240,6 +243,13 @@ export default {
},
},
methods: {
valAlert(props){
//alert("호출됨!");
this.$refs.commmonModal.alertModalOpen(props);
},
valConfirm(props){
this.$refs.commmonModal.confirmModalOpen(props);
},
async memberDetail(serviceId){
this.row.userId = serviceId;
try {
@@ -267,7 +277,9 @@ export default {
}
} catch (error) {
console.log(error);
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
},
@@ -286,17 +298,24 @@ export default {
const result = response.data;
if (result != null && result.retCode == "0000") {
alert("저장 완료하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '저장 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}else if(result != null && result.retCode == "4019"){
alert("발송한도금액이 정액한도금액보다 작습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '발송한도금액이 정액한도금액보다 작습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}else {
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
} catch (error) {
console.log(error);
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
},
@@ -333,12 +352,16 @@ export default {
let response = await custMgtApi.deleteUser(this.row);
const result = response.data;
if (result != null && result.retCode == "0000") {
alert("저장 완료하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '저장 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.memberDetail(serviceId);
}
} catch (error) {
console.log(error);
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
}
},

View File

@@ -71,6 +71,7 @@
</div>
<validation-confirm-pop ref="validationConfirmPopModal"> </validation-confirm-pop>
<common-modal ref="commmonModal"></common-modal>
</div>
@@ -83,6 +84,7 @@ import custMgtApi from "../service/custMgtApi.js";
import { utils_mixin, chkPattern2 } from '../service/mixins';
import ValidationConfirmPop from '../components/ValidationConfirmPop.vue';
import lodash from "lodash";
import commonModal from "@/components/modal/commonModal";
export default {
name: 'memberDetail',
@@ -92,10 +94,7 @@ export default {
console.log('watch : ', this.stat)
}
},
components: {
ValidationConfirmPop,
},
data() {
data() {
return {
row:{},
userNm:'',
@@ -123,6 +122,8 @@ export default {
},
},
components: {
commonModal,
ValidationConfirmPop,
},
created(){
this.memberDetail(this.$route.params.serviceId);
@@ -161,7 +162,9 @@ export default {
}
} catch (error) {
console.log(error);
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
},
@@ -180,14 +183,20 @@ export default {
const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") {
alert('저장 완료하였습니다.');
this.toComplete();
this.row.title = '청약고객관리';
this.row.msg1 = '저장 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.toComplete();
} else {
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
} catch(err) {
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
},
// 저장 후 부모창 호출.
@@ -196,55 +205,67 @@ export default {
},
doValidate(){
if(this.isNull(this.userNm)){
alert("이름을 입력해 주세요");
if(this.isNull(this.userNm)){
this.row.title = '청약고객관리';
this.row.msg1 = '이름을 입력해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._userNm.focus();
return false;
}
if(this.isNull(this.email)){
alert('이메일을 입력해주세요.');
if(this.isNull(this.email)){
this.row.title = '청약고객관리';
this.row.msg1 = '이메일을 입력해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._email.focus();
return false;
}
const email = this.email;
if(!this.isNull(email) && !lodash.isEqual(email,'@') && !this.emailCheck(email)){
alert("이메일 형식이 잘못되었습니다. 확인해 주세요");
this.$refs._email.focus();
//this.$refs.validationConfirmPopModal.validationEmailOpen();
this.row.title = '청약고객관리';
this.row.msg1 = '이메일 형식이 잘못되었습니다. 확인해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._email.focus();
//this.$refs.validationConfirmPopModal.validationEmailOpen();
return false;
}
if(this.isNull(this.mdn)){
alert('휴대폰번호를 입력해주세요.');
if(this.isNull(this.mdn)){
this.row.title = '청약고객관리';
this.row.msg1 = '휴대폰번호를 입력해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._phone.focus();
return false;
}
const hp = this.mdn;
if(!this.isNull(hp) && !this.isMobile(hp)){
alert("휴대폰 번호 형식이 잘못되었습니다. 확인해 주세요");
this.$refs._phone.focus();
//this.$refs.validationConfirmPopModal.validationPhonenumberOpen();
this.row.title = '청약고객관리';
this.row.msg1 = '휴대폰 번호 형식이 잘못되었습니다. 확인해 주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.$refs._phone.focus();
//this.$refs.validationConfirmPopModal.validationPhonenumberOpen();
return false;
}
if(this.isNull(this.stat)){
alert('상태를 선택 해주세요.');
if(this.isNull(this.stat)){
this.row.title = '청약고객관리';
this.row.msg1 = '상태를 선택 해주세요.';
this.$refs.commmonModal.alertModalOpen(this.row);
return false;
}
return true;
},
checkPhoneFocus(){
//this.mdn = '';
this.$refs._phone.focus();
},
checkEmailFocus(){
//this.email = '';
this.$refs._email.focus();
},
checkPhoneFocus(){
//this.mdn = '';
this.$refs._phone.focus();
},
checkEmailFocus(){
//this.email = '';
this.$refs._email.focus();
},
},
};
</script>

View File

@@ -17,8 +17,28 @@
<div class="group">
<div class="input_box cal">
<label for="right" class="label">조회기간</label>
<input class="" type="text" id="" v-model="grid.params.startDt"/>
<input class="" type="text" id="" v-model="grid.params.endDt"/>
<div class="term">
<span class="custom_input icon_date">
<vuejs-datepicker
:language="ko"
:format="customFormatter"
:disabled-dates="disabledSDate"
v-model="startDate"
@selected="selectedStartDate(0)"
@closed="closeDate('start')"
></vuejs-datepicker>
</span>~
<span class="custom_input icon_date">
<vuejs-datepicker
:language="ko"
:format="customFormatter"
:disabled-dates="disabledEDate"
v-model="endDate"
@selected="selectedEndDate(0)"
@closed="closeDate('end')"
></vuejs-datepicker>
</span>
</div>
</div>
<div class="select_box id">
<label for="right" class="label">상태</label>
@@ -87,6 +107,7 @@
</div>
<testId-reg-pop ref="testIdRegPop"> </testId-reg-pop>
<common-modal ref="commmonModal"></common-modal>
</div>
</div>
@@ -98,6 +119,7 @@ import customGrid from '@/components/CustomGrid';
import TestIdRegPop from '../components/TestIdRegPop';
import moment from 'moment';
import api from '@/service/api.js';
import commonModal from "@/components/modal/commonModal";
class CustomATagRenderer {
constructor(props) {
@@ -126,12 +148,12 @@ export default {
data() {
return {
// 달력 데이터
ko: vdp_translation_ko.js,
periodDay: 7,
sDateDiv: 'day',
eDateDiv: 'year',
startDate: null,
endDate: null,
disabledSDate: { from: new Date()},
disabledEDate: { to: new Date()},
startDate: new Date(),
endDate: new Date(),
statType: [],
userType: [],
@@ -184,11 +206,14 @@ export default {
components: {
customGrid: customGrid,
TestIdRegPop,
commonModal,
vuejsDatepicker,
},
created(){
this.$store.commit("login/isLogin", true);
this.$store.commit("login/isAuthChk", true);
this.setCodeData();
this.setCodeData();
this.setPeriodDay(0);
},
destroyed() {
this.$store.commit('searchcondition/updateSearchCondition', {
@@ -274,6 +299,52 @@ export default {
this.userType = response.data.data.list;
});
},
setPeriodDay(day) {
this.periodDay = day;
this.endDate = new Date();
this.startDate = moment(this.endDate)
.subtract(day, 'day')
.toDate();
this.closeDate('start');
this.closeDate('end');
},
selectedStartDate(day) {
if (day != undefined && day != null) {
this.periodDay = day;
}
if (this.startDate > this.endDate) {
this.startDate = this.endDate;
}
console.log(this.disabledSDate)
// this.grid.params.startDt = day
},
selectedEndDate(day) {
if (day != undefined && day != null) {
this.periodDay = day;
}
},
closeDate(type) {
if (type != undefined && type != null) {
if (type == 'start') {
this.disabledSDate = { from: this.endDate };
this.disabledEDate = { to: this.startDate, from: this.endDate };
} else if (type == 'end') {
this.disabledSDate = { from: this.endDate };
this.disabledEDate = { to: this.startDate, from: new Date() };
}
}
},
customFormatter: function(date) {
if (this.sDateDiv == 'month') {
return moment(date).format('YYYY-MM');
} else if (this.sDateDiv == 'year') {
return moment(date).format('YYYY');
} else {
return moment(date).format('YYYY-MM-DD');
}
},
},
beforeRouteLeave(to, from, next) {

View File

@@ -169,6 +169,7 @@
<!--수정 확인 모달-->
<validation-confirm-pop ref="validationConfirmPop"></validation-confirm-pop>
<!--관리자명 조회 모달-->
<common-modal ref="commmonModal"></common-modal>
</div>
<admin-nm-pop ref="adminNmPop"></admin-nm-pop>
@@ -184,6 +185,7 @@ import CarryOverListPop from '../components/CarryOverListPop';
import ValidationConfirmPop from '../components/ValidationConfirmPop';
//import SearchIDPop from '@/components/modal/searchID';
import AdminNmPop from '../components/AdminNmPop';
import commonModal from "@/components/modal/commonModal";
export default {
name: "subsDetail",
@@ -234,15 +236,20 @@ export default {
//SearchIDPop,
ValidationConfirmPop,
AdminNmPop,
commonModal,
},
created(){
this.$store.commit("login/isLogin", true);
this.$store.commit("login/isAuthChk", true);
this.$store.commit("login/isAuthChk", true);
console.log(this.$route.params.serviceId);
this.subsDetail(this.$route.params.serviceId);
// checkVaildBizNum
},
},
methods :{
callAlert(props){
//alert("호출됨!");
this.$refs.commmonModal.alertModalOpen(props);
},
doValidate(){
// if(this.isNull(this.userId)){
// alert("아이디를 입력해 주세요.");
@@ -320,7 +327,9 @@ export default {
}
}
} catch (error) {
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
},
@@ -335,13 +344,19 @@ export default {
const result = response.data;
console.log(result);
if (result != null && result.retCode == "0000") {
alert('저장 하였습니다.');
this.row.title = '청약고객관리';
this.row.msg1 = '저장 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
this.toComplete();
} else {
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
} catch (error) {
alert("실패 하였습니다.");
this.row.title = '청약고객관리';
this.row.msg1 = '실패 하였습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
}
},
@@ -355,13 +370,14 @@ export default {
// console.log(this.row);
// this.$refs.confirmPop.confirmModalOpen(this.row);
this.$refs.validationConfirmPop.confirmUpdateSubOpen();
// this.$refs.commmonModal.confirmModalOpen(this.row);
}
},
confirmCalbackFnc: function(props){
console.log(props);
if(props.result){
this.doInsert(props.result);
// this.doInsert(props.result);
}
},
searchIDPopOpen: function(){

View File

@@ -17,8 +17,28 @@
<div class="group">
<div class="input_box cal">
<label for="right" class="label">조회기간</label>
<input class="" type="text" id="" v-model="grid.params.startDt"/>
<input class="" type="text" id="" v-model="grid.params.endDt"/>
<div class="term">
<span class="custom_input icon_date">
<vuejs-datepicker
:language="ko"
:format="customFormatter"
:disabled-dates="disabledSDate"
v-model="startDate"
@selected="selectedStartDate(0)"
@closed="closeDate('start')"
></vuejs-datepicker>
</span>~
<span class="custom_input icon_date">
<vuejs-datepicker
:language="ko"
:format="customFormatter"
:disabled-dates="disabledEDate"
v-model="endDate"
@selected="selectedEndDate(0)"
@closed="closeDate('end')"
></vuejs-datepicker>
</span>
</div>
</div>
<div class="select_box id">
<label for="right" class="label">상태</label>
@@ -93,7 +113,9 @@
:header="grid.headder"
></custom-grid>
</div>
<common-modal ref="commmonModal"></common-modal>
</div>
</div>
</template>
@@ -104,6 +126,7 @@ import moment from 'moment';
import api from '@/service/api.js';
import custMgtApi from "../service/custMgtApi.js";
import xlsx from '@/common/excel';
import commonModal from "@/components/modal/commonModal";
class CustomATagRenderer {
constructor(props) {
@@ -132,13 +155,12 @@ export default {
data() {
return {
// 달력 데이터
ko: vdp_translation_ko.js,
periodDay: 7,
sDateDiv: 'day',
eDateDiv: 'year',
startDate: null,
endDate: null,
disabledSDate: { from: new Date()},
disabledEDate: { to: new Date()},
startDate: new Date(),
endDate: new Date(),
statType: [],
userType: [],
row:{},
@@ -192,13 +214,16 @@ export default {
};
},
components: {
customGrid: customGrid
customGrid: customGrid,
commonModal,
vuejsDatepicker,
},
created(){
this.$store.commit("login/isLogin", true);
this.$store.commit("login/isAuthChk", true);
this.setCodeData();
this.getExcelHeader();
this.setPeriodDay(0);
},
destroyed() {
@@ -221,6 +246,18 @@ export default {
}
this.search(isKeep);
},
beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage,
perPage: this.perPageCnt,
params: this.grid.params
});
// 라우트 하기전 실행
next();
},
methods: {
search: function(isKeep) {
console.log('this.perPageCnt'+this.perPageCnt);
@@ -243,8 +280,8 @@ export default {
const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage,
perPage: this.perPageCnt,
page: getP._currentPage,
perPage: this.perPageCnt,
params: this.grid.params
});
@@ -287,7 +324,9 @@ export default {
}, // end of getExcelDataDown
async excelDown() {
if (this.$refs.table.getData().length <= 0) {
alert('조회된 데이터가 없습니다.');
this.row.title = '청약고객관리';
this.row.msg1 = '조회된 데이터가 없습니다.';
this.$refs.commmonModal.alertModalOpen(this.row);
return false;
}
@@ -308,18 +347,52 @@ export default {
this.excelHeader = res;
});
},
},
beforeRouteLeave(to, from, next) {
setPeriodDay(day) {
this.periodDay = day;
this.endDate = new Date();
this.startDate = moment(this.endDate)
.subtract(day, 'day')
.toDate();
const getP = this.$refs.table.getPagination();
console.log("==========getP : " + getP._currentPage);
this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage,
perPage: this.perPageCnt,
params: this.grid.params
});
// 라우트 하기전 실행
next();
this.closeDate('start');
this.closeDate('end');
},
selectedStartDate(day) {
if (day != undefined && day != null) {
this.periodDay = day;
}
if (this.startDate > this.endDate) {
this.startDate = this.endDate;
}
console.log(this.disabledSDate)
// this.grid.params.startDt = day
},
selectedEndDate(day) {
if (day != undefined && day != null) {
this.periodDay = day;
}
},
closeDate(type) {
if (type != undefined && type != null) {
if (type == 'start') {
this.disabledSDate = { from: this.endDate };
this.disabledEDate = { to: this.startDate, from: this.endDate };
} else if (type == 'end') {
this.disabledSDate = { from: this.endDate };
this.disabledEDate = { to: this.startDate, from: new Date() };
}
}
},
customFormatter: function(date) {
if (this.sDateDiv == 'month') {
return moment(date).format('YYYY-MM');
} else if (this.sDateDiv == 'year') {
return moment(date).format('YYYY');
} else {
return moment(date).format('YYYY-MM-DD');
}
},
},
};
</script>