mirror of
http://git.mhez-qa.uplus.co.kr/hubez/hubez-admin.git
synced 2025-12-07 01:17:51 +09:00
TC 수정건 적용 (디자인 및 기능)
This commit is contained in:
@@ -560,8 +560,6 @@ header .user_wrap .user_info .logout {
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
/*******************20220715 퍼블 수정*******************/
|
||||
|
||||
.contents .input_box.cal input {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
@@ -570,22 +568,19 @@ header .user_wrap .user_info .logout {
|
||||
background-color:#fff;
|
||||
}
|
||||
|
||||
.contents .input_box.cal .term span:nth-of-type(1){
|
||||
/*******************20220718 퍼블 수정*******************/
|
||||
|
||||
.contents .input_box.cal .term .icon_date:first-of-type{
|
||||
margin-right: 4%;
|
||||
}
|
||||
|
||||
.contents .input_box.cal .term span:nth-of-type(2){
|
||||
.contents .input_box.cal .term .icon_date:nth-of-type(2){
|
||||
margin-left: 4%;
|
||||
}
|
||||
|
||||
/*******************************************/
|
||||
|
||||
|
||||
/***** 20220715 퍼블 삭제
|
||||
.contents .input_box.cal input + input{
|
||||
margin-left: 5%;
|
||||
} **/
|
||||
|
||||
.contents .input_box.cal.one{
|
||||
width: 13.67%;
|
||||
}
|
||||
@@ -604,11 +599,6 @@ header .user_wrap .user_info .logout {
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
/** 20220715 퍼블 삭제
|
||||
.contents .input_box.cal .term input:nth-child(1){
|
||||
margin-right: 4%;
|
||||
} ***********/
|
||||
|
||||
.contents .input_box .search-box {
|
||||
background: #fff url(../images/icon-search.png) no-repeat 6% center/14px auto;
|
||||
padding-left: 43px;
|
||||
@@ -1582,11 +1572,25 @@ header .user_wrap .user_info .logout {
|
||||
background: url(../images/icon-add-b.png) no-repeat center center;
|
||||
}
|
||||
|
||||
.popup.popup_form.register .input_add div:nth-child(2){
|
||||
/********** 20220718 퍼블 수정 ************/
|
||||
|
||||
.popup.popup_form.register .input_add div+div{
|
||||
width: 89%;
|
||||
padding-top: 5px;
|
||||
}
|
||||
|
||||
/********** 20220718 퍼블 추가 ************/
|
||||
|
||||
.popup.popup_inside{
|
||||
max-height: 60vh;
|
||||
}
|
||||
|
||||
.popup.popup_inside .pop-head{
|
||||
left: 0px;
|
||||
}
|
||||
|
||||
/****************************************/
|
||||
|
||||
.popup .button.white{
|
||||
background-color: #fff;
|
||||
border-radius: 6px;
|
||||
@@ -1744,11 +1748,15 @@ header .user_wrap .user_info .logout {
|
||||
align-items: flex-start;
|
||||
}
|
||||
|
||||
.essential span{
|
||||
/*color:#eb008b;*/
|
||||
/*******************20220718 퍼블 수정*******************/
|
||||
|
||||
.essential label span{
|
||||
color:#eb008b;
|
||||
padding-right: 3px;
|
||||
}
|
||||
|
||||
/**************************************/
|
||||
|
||||
textarea{
|
||||
resize: none;
|
||||
min-height: 100px;
|
||||
@@ -1784,7 +1792,7 @@ textarea:focus{
|
||||
.datepicker .datepicker-calender tr td:first-child a{color:#ff2e76;}
|
||||
.datepicker .datepicker-head .datepicker-btn span{position: relative;}
|
||||
.datepicker .datepicker-head .datepicker-prev span::after{position: absolute; left: 70px; top: 10px; content: ''; width: 10px; height: 10px; border-top: 2px solid #5f5f5f; border-right: 2px solid #5f5f5f; transform: rotate(225deg);}
|
||||
.datepicker .datepicker-head .datepicker-next span::after{position: absolute; left: 70px; top: 10px; content: ''; width: 10px; height: 10px; border-top: 2px solid #5f5f5f; border-right: 2px solid #5f5f5f; transform: rotate(45deg);}
|
||||
.datepicker .datepicker-head .datepicker-next span::after{position: absolute; left: 185px; top: 10px; content: ''; width: 10px; height: 10px; border-top: 2px solid #5f5f5f; border-right: 2px solid #5f5f5f; transform: rotate(45deg);}
|
||||
.datepicker .datepicker-calender td:hover:not(.disabled){background-color: #efefef; border-radius: 50%;}
|
||||
.datepicker .datepicker-calender td:hover a{color:#000;}
|
||||
.datepicker .datepicker-calender .today{background-color: #7c7c7c; border-radius: 50%;}
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
<!-- 로그인실패: 확인 -->
|
||||
<div class="popup alertCommon">
|
||||
<div class="pop-head">
|
||||
<h3 class="pop-tit">{{title}}</h3>
|
||||
<h3 class="pop-tit">{{ title }}</h3>
|
||||
</div>
|
||||
<div class="pop-cont">
|
||||
<p>{{ msg1 }}</p>
|
||||
@@ -26,7 +26,7 @@
|
||||
<!-- 수정 확인 -->
|
||||
<div class="popup confirm">
|
||||
<div class="pop-head">
|
||||
<h3 class="pop-tit">{{title}}</h3>
|
||||
<h3 class="pop-tit">{{ title }}</h3>
|
||||
</div>
|
||||
<div class="pop-cont">
|
||||
<p>{{ msg1 }}</p>
|
||||
@@ -46,7 +46,7 @@
|
||||
<!-- 수정 확인 -->
|
||||
<div class="popup confirm2">
|
||||
<div class="pop-head">
|
||||
<h3 class="popup-tit">{{title}}</h3>
|
||||
<h3 class="popup-tit">{{ title }}</h3>
|
||||
</div>
|
||||
<div class="pop-cont">
|
||||
<p>{{ msg1 }}</p>
|
||||
@@ -60,6 +60,25 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 저장 - 중복된 발신번호 -->
|
||||
<div class="dimmed sendNumFailMsg" @click="sendNumFailMsgClose();"></div>
|
||||
<div class="popup-wrap sendNumFailMsg">
|
||||
<div class="popup sendNumFailMsg">
|
||||
<div class="pop-head">
|
||||
<h3 class="pop-tit">중복된 발신번호</h3>
|
||||
</div>
|
||||
<div class="pop-cont">
|
||||
<p>등록된 발신번호가 있습니다.</p>
|
||||
<p v-html="failMsg"></p>
|
||||
</div>
|
||||
<div class="popup-btn2">
|
||||
<button class="btn-pcolor" @click="sendNumFailMsgClose();">확인</button>
|
||||
<!-- <button class="btn-default" @click="sendNumFailMsgCancel();">취소</button>-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -67,21 +86,22 @@
|
||||
|
||||
export default {
|
||||
name: "confirm",
|
||||
data(){
|
||||
return{
|
||||
row:{},
|
||||
title:'',
|
||||
data() {
|
||||
return {
|
||||
row: {},
|
||||
title: '',
|
||||
msg1: '',
|
||||
msg2: '',
|
||||
msg3: '',
|
||||
msg4: '',
|
||||
failMsg:'',
|
||||
}
|
||||
},
|
||||
methods :{
|
||||
alertModalOpen(props){
|
||||
methods: {
|
||||
alertModalOpen(props) {
|
||||
console.log(props)
|
||||
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';
|
||||
}
|
||||
this.title = props.title;
|
||||
@@ -90,22 +110,22 @@ export default {
|
||||
this.msg3 = props.msg3;
|
||||
this.msg4 = props.msg4;
|
||||
},
|
||||
alertModalClose(){
|
||||
alertModalClose() {
|
||||
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 = 'none';
|
||||
}
|
||||
},
|
||||
alertModalCancel(){
|
||||
alertModalCancel() {
|
||||
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 = 'none';
|
||||
}
|
||||
},
|
||||
// 모달 오픈
|
||||
confirmModalOpen(props){
|
||||
confirmModalOpen(props) {
|
||||
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';
|
||||
}
|
||||
|
||||
@@ -115,9 +135,9 @@ export default {
|
||||
this.msg3 = props.msg3;
|
||||
this.msg4 = props.msg4;
|
||||
},
|
||||
confirmModalOpen2(props){
|
||||
confirmModalOpen2(props) {
|
||||
var dimmed = document.getElementsByClassName('confirm2');
|
||||
for(var i = 0; i < dimmed.length; i++){
|
||||
for (var i = 0; i < dimmed.length; i++) {
|
||||
dimmed[i].style.display = 'block';
|
||||
}
|
||||
|
||||
@@ -128,9 +148,9 @@ export default {
|
||||
this.msg4 = props.msg4;
|
||||
},
|
||||
// 모달 끄기(ok)
|
||||
confirmModalClose(){
|
||||
confirmModalClose() {
|
||||
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 = 'none';
|
||||
}
|
||||
|
||||
@@ -139,9 +159,9 @@ export default {
|
||||
this.$parent.confirmCalbackFnc(this.row);
|
||||
},
|
||||
// 모달 끄기(ok)
|
||||
confirmModalClose2(){
|
||||
confirmModalClose2() {
|
||||
var dimmed = document.getElementsByClassName('confirm2');
|
||||
for(var i = 0; i < dimmed.length; i++){
|
||||
for (var i = 0; i < dimmed.length; i++) {
|
||||
dimmed[i].style.display = 'none';
|
||||
}
|
||||
|
||||
@@ -150,9 +170,9 @@ export default {
|
||||
this.$parent.confirmCalbackFnc(this.row);
|
||||
},
|
||||
// 모달 끄기(취소)
|
||||
confirmModalCancel(){
|
||||
confirmModalCancel() {
|
||||
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 = 'none';
|
||||
}
|
||||
|
||||
@@ -161,9 +181,9 @@ export default {
|
||||
this.$parent.confirmCalbackFnc(this.row);
|
||||
},
|
||||
// 모달 끄기(취소)
|
||||
confirmModalCancel2(){
|
||||
confirmModalCancel2() {
|
||||
var dimmed = document.getElementsByClassName('confirm2');
|
||||
for(var i = 0; i < dimmed.length; i++){
|
||||
for (var i = 0; i < dimmed.length; i++) {
|
||||
dimmed[i].style.display = 'none';
|
||||
}
|
||||
|
||||
@@ -171,12 +191,42 @@ export default {
|
||||
// 부모 함수 호출.
|
||||
this.$parent.confirmCalbackFnc(this.row);
|
||||
},
|
||||
sendNumFailMsgOpen(props){
|
||||
this.failMsg = props.failMsg
|
||||
var dimmed = document.getElementsByClassName('sendNumFailMsg');
|
||||
for (var i = 0; i < dimmed.length; i++) {
|
||||
dimmed[i].style.display = 'block';
|
||||
}
|
||||
},
|
||||
sendNumFailMsgClose(){
|
||||
var dimmed = document.getElementsByClassName('sendNumFailMsg');
|
||||
for (var i = 0; i < dimmed.length; i++) {
|
||||
dimmed[i].style.display = 'none';
|
||||
}
|
||||
},
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.popup-btn-wrap {width: 500px; margin: auto; padding: 100px 0;}
|
||||
.popup-btn-wrap button {width: 100%; margin-bottom: 10px; height: 50px; border-radius: 5px; box-shadow: none; border: 1px solid #000; }
|
||||
.popup-btn-wrap button:hover {background: #000; color: #fff;}
|
||||
.popup-btn-wrap {
|
||||
width: 500px;
|
||||
margin: auto;
|
||||
padding: 100px 0;
|
||||
}
|
||||
|
||||
.popup-btn-wrap button {
|
||||
width: 100%;
|
||||
margin-bottom: 10px;
|
||||
height: 50px;
|
||||
border-radius: 5px;
|
||||
box-shadow: none;
|
||||
border: 1px solid #000;
|
||||
}
|
||||
|
||||
.popup-btn-wrap button:hover {
|
||||
background: #000;
|
||||
color: #fff;
|
||||
}
|
||||
</style>
|
||||
@@ -30,11 +30,11 @@
|
||||
"name": "이름"
|
||||
},
|
||||
{
|
||||
"key": "subsSttusCd",
|
||||
"key": "subsSttusNm",
|
||||
"name": "상태"
|
||||
},
|
||||
{
|
||||
"key": "custTyCd",
|
||||
"key": "custTyNm",
|
||||
"name": "구분"
|
||||
},
|
||||
{
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- <validationConfirm-modal ref="validationConfirmPop"></validationConfirm-modal>-->
|
||||
<common-modal ref="commmonModal"></common-modal>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
@@ -49,6 +50,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/commonModal";
|
||||
// import ValidationConfirmPop from "./ValidationConfirmPop";
|
||||
|
||||
export default {
|
||||
@@ -65,10 +67,14 @@ export default {
|
||||
nData: [],
|
||||
oData: [],
|
||||
totalItems: 0,
|
||||
totalCnt: 0,
|
||||
failCnt: 0,
|
||||
insertRowCnt: 0
|
||||
};
|
||||
},
|
||||
components: {
|
||||
// ValidationConfirmPop,
|
||||
commonModal
|
||||
},
|
||||
created() {
|
||||
this.getExcelHeader();
|
||||
@@ -145,8 +151,32 @@ export default {
|
||||
this.nData = [];
|
||||
this.oData = [];
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
const file = event.target.files[0];
|
||||
|
||||
// 파일 개수 제한
|
||||
if(file != null){
|
||||
let element = document.getElementById('uploadFile');
|
||||
while (element.firstChild) {
|
||||
element.removeChild(element.firstChild);
|
||||
}
|
||||
}
|
||||
console.log(file.name);
|
||||
// 파일 이름 체크
|
||||
var fileName = file.name;
|
||||
var fileExpend = fileName .slice(fileName .indexOf(".") + 1).toLowerCase();
|
||||
if(fileExpend != "xlsx"){
|
||||
//alert("파일은 (xlsx) 형식만 등록 가능합니다.");
|
||||
this.row.title = '파일 업로드';
|
||||
this.row.msg1 = '샘플과 동일한 확장자가 아닙니다.';
|
||||
this.row.msg1 = '다시 업로드 해주세요.';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
// inner Html.
|
||||
const button = document.createElement('button');
|
||||
@@ -176,12 +206,14 @@ export default {
|
||||
let workbook = XLSX.read(data, {type: 'binary'});
|
||||
workbook.SheetNames.forEach((sheetName) => {
|
||||
const rowObj = XLSX.utils.sheet_to_json(workbook.Sheets[sheetName], {raw: true});
|
||||
console.log(rowObj);
|
||||
tmpResult = rowObj;
|
||||
const limitCnt = 100;
|
||||
|
||||
const totalCnt = Number(this.totalItems) + rowObj.length;
|
||||
|
||||
if (totalCnt > limitCnt) {
|
||||
this.totalCnt = Number(this.totalItems) + rowObj.length;
|
||||
this.insertRowCnt = rowObj.length;
|
||||
console.log('totalCnt : '+this.totalCnt +' limitCnt : '+limitCnt);
|
||||
if (this.totalCnt > limitCnt) {
|
||||
this.row.title = '청약고객관리';
|
||||
this.row.msg1 = '100건이상은 등록되지 않습니다.';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
@@ -286,12 +318,12 @@ export default {
|
||||
const result = response.data;
|
||||
console.log(result);
|
||||
if (result != null && result.retCode == '0000') {
|
||||
this.totalCnt = result.data.totalCnt;
|
||||
//this.totalCnt = result.data.totalCnt;
|
||||
this.successCnt = result.data.successCnt;
|
||||
this.failCnt = result.data.failCnt;
|
||||
this.failCnt = Number(this.failCnt) + Number(result.data.failCnt);
|
||||
|
||||
if (result.data.failCnt > 0) {
|
||||
this.row.totalCnt = this.totalCnt
|
||||
this.row.totalCnt = this.insertRowCnt
|
||||
this.row.successCnt = this.successCnt
|
||||
this.row.failCnt = this.failCnt
|
||||
this.$parent.$refs.validationConfirmPopModal.failFileuploadOpen(this.row);
|
||||
@@ -319,6 +351,14 @@ export default {
|
||||
this.$parent.memberDetail(this.adminId);
|
||||
}
|
||||
},
|
||||
|
||||
checkFocus() {
|
||||
this.$refs.file.value = null;
|
||||
let element = document.getElementById('uploadFile');
|
||||
while (element.firstChild) {
|
||||
element.removeChild(element.firstChild);
|
||||
}
|
||||
}
|
||||
},
|
||||
};
|
||||
</script>
|
||||
@@ -338,8 +338,8 @@ export default {
|
||||
for (var i = 0; i < dimmed.length; i++) {
|
||||
dimmed[i].style.display = 'none';
|
||||
}
|
||||
// 목록페이지 이동
|
||||
this.$parent.toComplete();
|
||||
// 화면 리로드
|
||||
this.$parent.successFileuploadOk();
|
||||
},
|
||||
// 정상완료 후 목록페이지 이동
|
||||
toComplete() {
|
||||
|
||||
@@ -439,6 +439,20 @@ export default {
|
||||
this.memberDelete();
|
||||
}
|
||||
},
|
||||
|
||||
// 대량 등록후 확인 처리
|
||||
failFileuploadOk(){
|
||||
// 대량등록 팝업 닫기
|
||||
this.$refs.memberBulkRegPop.excelPopClose();
|
||||
// reroad
|
||||
this.memberDetail(this.$route.params.serviceId);
|
||||
}
|
||||
,successFileuploadOk(){
|
||||
// 대량등록 팝업 닫기
|
||||
this.$refs.memberBulkRegPop.excelPopClose();
|
||||
// reroad
|
||||
this.memberDetail(this.$route.params.serviceId);
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
</select>
|
||||
</div>
|
||||
<div class="input_box">
|
||||
<input class="search-box" type="text" id="search" placeholder="검색어 입력" v-model="grid.params.searchText1"
|
||||
<input class="search-box" type="text" id="search" placeholder="검색어 입력" v-model.trim="grid.params.searchText1"
|
||||
maxlength="100" @keyup.enter="search"/>
|
||||
</div>
|
||||
<button type="button" class="button grey" @click="search">조회</button>
|
||||
|
||||
@@ -123,11 +123,17 @@ export default {
|
||||
if(rsp.retCode == '0000'){
|
||||
var path = rsp.data.nextUrl;
|
||||
console.log(path);
|
||||
console.log(rsp.data);
|
||||
vm.chgChkUserId();
|
||||
vm.$store.commit("login/isLogin", true);
|
||||
vm.$store.commit("login/savePwd", oprtrPw);
|
||||
vm.$router.push({ name: 'loginAuth',params: {userId : oprtrId}});
|
||||
} else if(rsp.retCode == '4003') { // ID 조회 없음.
|
||||
} else if(rsp.retCode == '1001'){ // 비밀번호 변경
|
||||
console.log('=-==-=-=-');
|
||||
console.log(this.userId);
|
||||
vm.chgChkUserId();
|
||||
this.$router.push({ name: 'updatePassword',params: {userId : this.userId}});
|
||||
}else if(rsp.retCode == '4003') { // ID 조회 없음.
|
||||
this.row.title = '로그인 실패';
|
||||
this.row.msg1 = '등록되지 않은 아이디입니다.';
|
||||
this.row.msg2 = '아이디를 다시 확인하세요';
|
||||
|
||||
@@ -128,7 +128,7 @@ export default {
|
||||
this.row.title = '비밀번호 변경';
|
||||
this.row.msg1 = '비밀번호가 정상적으로 변경되었습니다.';
|
||||
this.row.msg2 = '변경된 비밀번호로 다시 로그인 해주세요.';
|
||||
this.callFnc = 'login'
|
||||
this.row.callFnc = 'login'
|
||||
this.$refs.commonModal.alertModalOpen(this.row);
|
||||
} else if(rsp.retCode == '4016') {
|
||||
this.row.title = '비밀번호 변경';
|
||||
@@ -176,6 +176,7 @@ export default {
|
||||
this.$refs.oldPw.focus(target);
|
||||
},
|
||||
alertCalbackFnc(callFnc){
|
||||
console.log(callFnc);
|
||||
if(callFnc === 'login'){
|
||||
this.$router.push({ name: 'login',params: {}});
|
||||
}
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
<tr>
|
||||
<th>차단문구</th>
|
||||
<td class="input_add">
|
||||
<input v-model="word" ref="_word">
|
||||
<input v-model="word" ref="_word" maxlength="10" @input="msgLimitByte()">
|
||||
<button type="button" class="button white add" @click="doAdd"></button>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -292,7 +292,40 @@ export default {
|
||||
this.$refs.ValidationConfirmPopup.msgConfirmDeleteOpen();
|
||||
}
|
||||
},
|
||||
// 바이트길이 구하기
|
||||
getByteLength: function (decimal) {
|
||||
return (decimal >> 7) || (this.LINE_FEED === decimal) ? 2 : 1
|
||||
},
|
||||
|
||||
getByte: function (str) {
|
||||
return str
|
||||
.split('')
|
||||
.map((s) => s.charCodeAt(0))
|
||||
.reduce((prev, unicodeDecimalValue) => prev + this.getByteLength(unicodeDecimalValue), 0)
|
||||
},
|
||||
getLimitedByteText: function (inputText, maxByte) {
|
||||
const characters = inputText.split('')
|
||||
let validText = ''
|
||||
let totalByte = 0
|
||||
|
||||
for (let i = 0; i < characters.length; i += 1) {
|
||||
const character = characters[i]
|
||||
const decimal = character.charCodeAt(0)
|
||||
const byte = this.getByteLength(decimal) // 글자 한 개가 몇 바이트 길이인지 구해주기
|
||||
// console.log(byte)
|
||||
// 현재까지의 바이트 길이와 더해 최대 바이트 길이를 넘지 않으면
|
||||
if (totalByte + byte <= maxByte) {
|
||||
totalByte += byte // 바이트 길이 값을 더해 현재까지의 총 바이트 길이 값을 구함
|
||||
validText += character // 글자를 더해 현재까지의 총 문자열 값을 구함
|
||||
} else { // 최대 바이트 길이를 넘으면
|
||||
break // for 루프 종료
|
||||
}
|
||||
}
|
||||
return validText
|
||||
},
|
||||
msgLimitByte(){
|
||||
this.word = this.getLimitedByteText(this.word, 10);
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div>
|
||||
<!-- 관리자ID 조회 -->
|
||||
<div class="popup popup_form modal44">
|
||||
<div class="popup popup_form modal44 popup_inside">
|
||||
<div class="pop-head">
|
||||
<h3 class="pop-tit">관리자ID 조회</h3>
|
||||
</div>
|
||||
|
||||
@@ -125,7 +125,6 @@
|
||||
</div>
|
||||
|
||||
<admin-list-pop ref="admnListPop" :send-data="childData" @event-data="setChildData"/>
|
||||
<!-- <common-modal ref="commmonModal2"></common-modal>-->
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
@@ -133,7 +132,6 @@
|
||||
<script>
|
||||
import AdminListPop from "@/modules/sendNumMgt/components/AdminListPop";
|
||||
import {utils_mixin, chkPattern2} from '../service/mixins';
|
||||
// import commonModal from "@/components/modal/commonModal";
|
||||
import sendNumMgtApi from "@/modules/sendNumMgt/service/sendNumMgtApi";
|
||||
|
||||
export default {
|
||||
@@ -235,11 +233,34 @@ export default {
|
||||
formReset() {
|
||||
Object.assign(this.$data, this.$options.data());
|
||||
},
|
||||
fileExtCheck(file){
|
||||
// 마지막 . 위치를 찾고 + 1 하여 확장자 명을 가져온다.
|
||||
let fileExt = file.name.substring(
|
||||
file.name.lastIndexOf(".") + 1
|
||||
)
|
||||
// 소문자로 변환
|
||||
fileExt = fileExt.toLowerCase()
|
||||
// 이미지 확장자 체크, jpg, png, pdf, tiff
|
||||
if (["jpeg", "png", "pdf", "tiff"].includes(fileExt)) {
|
||||
return true;
|
||||
} else {
|
||||
this.row.title = '발신번호 파일 업로드';
|
||||
this.row.msg1 = '첨부파일을 확인해 주세요.';
|
||||
this.row.msg2 = '파일형식 : jpg, png, pdf, tiff (최대5MB)';
|
||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false
|
||||
}
|
||||
},
|
||||
// 위임-수임
|
||||
readTrustFile(event) {
|
||||
const file = event.target.files[0];
|
||||
console.log(file.name);
|
||||
|
||||
if(this.fileExtCheck(file)) {
|
||||
if (file != null) {
|
||||
this.delTrustFile(event);
|
||||
}
|
||||
|
||||
// inner Html.
|
||||
const button = document.createElement('button');
|
||||
const text = document.createElement('p');
|
||||
@@ -252,6 +273,7 @@ export default {
|
||||
root.appendChild(text);
|
||||
root.appendChild(button);
|
||||
this.trustFile = file;
|
||||
}
|
||||
},
|
||||
delTrustFile(event) {
|
||||
const file = event.target.files[0];
|
||||
@@ -265,6 +287,10 @@ export default {
|
||||
// 위임장
|
||||
readWarrantFile(event) {
|
||||
const file = event.target.files[0];
|
||||
if(this.fileExtCheck(file)) {
|
||||
if (file != null) {
|
||||
this.delWarrantFile(event);
|
||||
}
|
||||
|
||||
// inner Html.
|
||||
const button = document.createElement('button');
|
||||
@@ -278,6 +304,7 @@ export default {
|
||||
root.appendChild(text);
|
||||
root.appendChild(button);
|
||||
this.warrantFile = file;
|
||||
}
|
||||
},
|
||||
delWarrantFile(event) {
|
||||
const file = event.target.files[0];
|
||||
@@ -291,6 +318,10 @@ export default {
|
||||
// 대리인
|
||||
readDeputyFile(event) {
|
||||
const file = event.target.files[0];
|
||||
if(this.fileExtCheck(file)) {
|
||||
if (file != null) {
|
||||
this.delDeputyFile(event);
|
||||
}
|
||||
|
||||
// inner Html.
|
||||
const button = document.createElement('button');
|
||||
@@ -305,7 +336,7 @@ export default {
|
||||
root.appendChild(button);
|
||||
|
||||
this.deputyFile = file
|
||||
|
||||
}
|
||||
},
|
||||
delDeputyFile(event) {
|
||||
const file = event.target.files[0];
|
||||
@@ -319,6 +350,10 @@ export default {
|
||||
// 재직
|
||||
readTenureFile(event) {
|
||||
const file = event.target.files[0];
|
||||
if(this.fileExtCheck(file)) {
|
||||
if (file != null) {
|
||||
this.delTenureFile(event);
|
||||
}
|
||||
|
||||
// inner Html.
|
||||
const button = document.createElement('button');
|
||||
@@ -332,6 +367,7 @@ export default {
|
||||
root.appendChild(text);
|
||||
root.appendChild(button);
|
||||
this.tenureFile = file;
|
||||
}
|
||||
},
|
||||
delTenureFile(event) {
|
||||
const file = event.target.files[0];
|
||||
@@ -345,6 +381,10 @@ export default {
|
||||
//사업자 등록증.
|
||||
readBusinessFile(event) {
|
||||
const file = event.target.files[0];
|
||||
if(this.fileExtCheck(file)) {
|
||||
if (file != null) {
|
||||
this.delBusinessFile(event);
|
||||
}
|
||||
|
||||
// inner Html.
|
||||
const button = document.createElement('button');
|
||||
@@ -358,6 +398,7 @@ export default {
|
||||
root.appendChild(text);
|
||||
root.appendChild(button);
|
||||
this.businessFile = file;
|
||||
}
|
||||
},
|
||||
delBusinessFile(event) {
|
||||
const file = event.target.files[0];
|
||||
@@ -371,6 +412,10 @@ export default {
|
||||
//통신서비스 증명원
|
||||
readCommunicationFile(event) {
|
||||
const file = event.target.files[0];
|
||||
if(this.fileExtCheck(file)) {
|
||||
if (file != null) {
|
||||
this.delCommunicationFile(event);
|
||||
}
|
||||
|
||||
// inner Html.
|
||||
const button = document.createElement('button');
|
||||
@@ -384,6 +429,7 @@ export default {
|
||||
root.appendChild(text);
|
||||
root.appendChild(button);
|
||||
this.communicationFile = file;
|
||||
}
|
||||
},
|
||||
delCommunicationFile(event) {
|
||||
const file = event.target.files[0];
|
||||
@@ -397,6 +443,10 @@ export default {
|
||||
// 타사업자 등록증
|
||||
readOtherBusinessFile(event) {
|
||||
const file = event.target.files[0];
|
||||
if(this.fileExtCheck(file)) {
|
||||
if (file != null) {
|
||||
this.delOtherBusinessFile(event);
|
||||
}
|
||||
|
||||
// inner Html.
|
||||
const button = document.createElement('button');
|
||||
@@ -410,6 +460,7 @@ export default {
|
||||
root.appendChild(text);
|
||||
root.appendChild(button);
|
||||
this.otherBusinessFile = file;
|
||||
}
|
||||
},
|
||||
delOtherBusinessFile(event) {
|
||||
const file = event.target.files[0];
|
||||
@@ -435,32 +486,89 @@ export default {
|
||||
})
|
||||
)
|
||||
}
|
||||
if(this.doValidate()){
|
||||
if (this.doValidate()) {
|
||||
if (this.bizrAuthYn !== 'Y') {
|
||||
if (this.nmineeDivCd === '01') {
|
||||
// 사업자
|
||||
const response = await sendNumMgtApi.insertNumber1(this.tenureFile, this.businessFile, this.communicationFile, this.adminId, this.custNm, this.bRegNo, this.nmineeDivCd, this.saveSendNums, this.bizrAuthYn, this.custSeq)
|
||||
const response = await sendNumMgtApi.insertNumber1(this.tenureFile, this.businessFile, this.communicationFile, this.adminId, this.custNm, this.bRegNo, this.nmineeDivCd, this.saveSendNums, this.bizrAuthYn, this.custSeq, this.bRegNo)
|
||||
const result = response.data;
|
||||
console.log(result)
|
||||
if (result != null && result.retCode == "0000") {
|
||||
if(result.data.list.length > 0){
|
||||
this.row.title = '발신번호 등록';
|
||||
var failMsg = "";
|
||||
for(var i=0; i<result.data.list.length; i++){
|
||||
failMsg += "[" + (i+1) + "] " + result.data.list[i].sendNum + "<br>"
|
||||
}
|
||||
this.row.failMsg = failMsg
|
||||
this.$parent.$refs.commmonModal.sendNumFailMsgOpen(this.row);
|
||||
}
|
||||
this.toComplete()
|
||||
}else if(result != null && result.retCode == "4021") {
|
||||
if(result.data.list.length > 0){
|
||||
this.row.title = '발신번호 등록';
|
||||
var failMsg = "";
|
||||
for(var i=0; i<result.data.list.length; i++){
|
||||
failMsg += "[" + (i+1) + "] " + result.data.list[i].sendNum + "<br>"
|
||||
}
|
||||
this.row.failMsg = failMsg
|
||||
this.$parent.$refs.commmonModal.sendNumFailMsgOpen(this.row);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
} else if (this.nmineeDivCd === '02') {
|
||||
const response = await sendNumMgtApi.insertNumber2(this.trustFile, this.warrantFile, this.deputyFile, this.tenureFile, this.otherBusinessFile, this.businessFile, this.adminId, this.custNm, this.bRegNo, this.nmineeDivCd, this.saveSendNums, this.bizrAuthYn, this.custSeq)
|
||||
const response = await sendNumMgtApi.insertNumber2(this.trustFile, this.warrantFile, this.deputyFile, this.tenureFile, this.otherBusinessFile, this.businessFile, this.adminId, this.custNm, this.bRegNo, this.nmineeDivCd, this.saveSendNums, this.bizrAuthYn, this.custSeq, this.bRegNo)
|
||||
const result = response.data;
|
||||
console.log(result)
|
||||
if (result != null && result.retCode == "0000") {
|
||||
if(result.data.list.length > 0){
|
||||
this.row.title = '발신번호 등록';
|
||||
var failMsg = "";
|
||||
for(var i=0; i<result.data.list.length; i++){
|
||||
failMsg += "[" + (i+1) + "] " + result.data.list[i].sendNum + "<br>"
|
||||
}
|
||||
this.row.failMsg = failMsg
|
||||
this.$parent.$refs.commmonModal.sendNumFailMsgOpen(this.row);
|
||||
}
|
||||
this.toComplete()
|
||||
}else if(result != null && result.retCode == "4021") {
|
||||
if(result.data.list.length > 0){
|
||||
this.row.title = '발신번호 등록';
|
||||
var failMsg = "";
|
||||
for(var i=0; i<result.data.list.length; i++){
|
||||
failMsg += "[" + (i+1) + "] " + result.data.list[i].sendNum + "<br>"
|
||||
}
|
||||
this.row.failMsg = failMsg
|
||||
this.$parent.$refs.commmonModal.sendNumFailMsgOpen(this.row);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
} else {
|
||||
const response = await sendNumMgtApi.insertNumber(this.adminId, this.custNm, this.bRegNo, this.nmineeDivCd, this.saveSendNums, this.bizrAuthYn, this.custSeq)
|
||||
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;
|
||||
console.log(result)
|
||||
if (result != null && result.retCode == "0000") {
|
||||
if(result.data.list.length > 0){
|
||||
this.row.title = '발신번호 등록';
|
||||
var failMsg = "";
|
||||
for(var i=0; i<result.data.list.length; i++){
|
||||
failMsg += "[" + (i+1) + "] " + result.data.list[i].sendNum + "<br>"
|
||||
}
|
||||
this.row.failMsg = failMsg
|
||||
this.$parent.$refs.commmonModal.sendNumFailMsgOpen(this.row);
|
||||
}
|
||||
this.toComplete()
|
||||
}else if(result != null && result.retCode == "4021") {
|
||||
var failMsg = "";
|
||||
for(var i=0; i<result.data.list.length; i++){
|
||||
failMsg += "[" + (i+1) + "] " + result.data.list[i].sendNum + "<br>"
|
||||
}
|
||||
this.row.failMsg = failMsg
|
||||
this.$parent.$refs.commmonModal.sendNumFailMsgOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -479,69 +587,72 @@ export default {
|
||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
if(this.nmineeDivCd == '01'){
|
||||
if(this.communicationFile == null){
|
||||
if (this.bizrAuthYn !== 'Y') {
|
||||
if (this.nmineeDivCd == '01') {
|
||||
if (this.communicationFile == null) {
|
||||
this.row.title = '발신번호 등록';
|
||||
this.row.msg1 = '통신서비스 이용증명원 파일을 업로드 하세요.';
|
||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false
|
||||
}
|
||||
if(this.tenureFile == null){
|
||||
if (this.tenureFile == null) {
|
||||
this.row.title = '발신번호 등록';
|
||||
this.row.msg1 = '재직증명서 파일을 업로드 하세요.';
|
||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false
|
||||
}
|
||||
if(this.businessFile == null){
|
||||
if (this.businessFile == null) {
|
||||
this.row.title = '발신번호 등록';
|
||||
this.row.msg1 = '사업자등록증 파일을 업로드 하세요.';
|
||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false
|
||||
}
|
||||
}else{
|
||||
if(this.trustFile == null){
|
||||
|
||||
} else {
|
||||
if (this.trustFile == null) {
|
||||
this.row.title = '발신번호 등록';
|
||||
this.row.msg1 = '위임-수임관계 확인 서류 파일을 업로드 하세요.';
|
||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false
|
||||
}
|
||||
if(this.warrantFile == null){
|
||||
if (this.warrantFile == null) {
|
||||
this.row.title = '발신번호 등록';
|
||||
this.row.msg1 = '위임장 파일을 업로드 하세요.';
|
||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false
|
||||
}
|
||||
if(this.deputyFile == null){
|
||||
if (this.deputyFile == null) {
|
||||
this.row.title = '발신번호 등록';
|
||||
this.row.msg1 = '대리인 신분증 사본 인증 파일을 업로드 하세요.';
|
||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false
|
||||
}
|
||||
if(this.communicationFile == null){
|
||||
if (this.communicationFile == null) {
|
||||
this.row.title = '발신번호 등록';
|
||||
this.row.msg1 = '통신서비스 이용증명원 파일을 업로드 하세요.';
|
||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false
|
||||
}
|
||||
if(this.tenureFile == null){
|
||||
if (this.tenureFile == null) {
|
||||
this.row.title = '발신번호 등록';
|
||||
this.row.msg1 = '재직증명서 파일을 업로드 하세요.';
|
||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false
|
||||
}
|
||||
if(this.otherBusinessFile == null){
|
||||
if (this.otherBusinessFile == null) {
|
||||
this.row.title = '발신번호 등록';
|
||||
this.row.msg1 = '사업자등록증 파일을 업로드 하세요.';
|
||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false
|
||||
}
|
||||
if(this.businessFile == null){
|
||||
if (this.businessFile == null) {
|
||||
this.row.title = '발신번호 등록';
|
||||
this.row.msg1 = '사업자등록증 파일을 업로드 하세요.';
|
||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
},
|
||||
toComplete() {
|
||||
|
||||
@@ -27,7 +27,8 @@ const insertNumber = (adminId, custNm, bRegNo, nmineeDivCd, numberInputs, bizrAu
|
||||
const row = {}
|
||||
row.adminId = adminId
|
||||
row.custNm = custNm
|
||||
row.bRegNo = bRegNo
|
||||
row.bregno = bRegNo
|
||||
row.nmineeDivCd = nmineeDivCd
|
||||
row.list = numberInputs
|
||||
row.bizrAuthYn = bizrAuthYn
|
||||
row.custSeq = custSeq
|
||||
@@ -54,7 +55,7 @@ const insertNumber1 = (tenureFile, businessFile, communicationFile, adminId, cus
|
||||
const row = {}
|
||||
row.adminId = adminId
|
||||
row.custNm = custNm
|
||||
row.bRegNo = bRegNo
|
||||
row.bregno = bRegNo
|
||||
row.nmineeDivCd = nmineeDivCd
|
||||
row.list = numberInputs
|
||||
row.bizrAuthYn = bizrAuthYn
|
||||
@@ -85,7 +86,7 @@ const insertNumber2 = (trustFile, warrantFile, deputyFile, tenureFile, otherBusi
|
||||
const row = {}
|
||||
row.adminId = adminId
|
||||
row.custNm = custNm
|
||||
row.bRegNo = bRegNo
|
||||
row.bregno = bRegNo
|
||||
row.nmineeDivCd = nmineeDivCd
|
||||
row.list = numberInputs
|
||||
row.bizrAuthYn = bizrAuthYn
|
||||
|
||||
@@ -4,15 +4,15 @@ import '@/modules/mgt/components/eventlisteners.js';
|
||||
|
||||
const filter_mixin = {
|
||||
filters: {
|
||||
_yyyy_mm_dd(val){
|
||||
if(lodash.isNil(val) || lodash.trim(val) == '') return '';
|
||||
_yyyy_mm_dd(val) {
|
||||
if (lodash.isNil(val) || lodash.trim(val) == '') return '';
|
||||
const orgin = val;
|
||||
if(orgin.length < 8) {
|
||||
if (orgin.length < 8) {
|
||||
return orgin;
|
||||
}
|
||||
if(!Number(orgin)) return orgin;
|
||||
const date = orgin.substring(0,8);
|
||||
if(moment(date).isValid()){
|
||||
if (!Number(orgin)) return orgin;
|
||||
const date = orgin.substring(0, 8);
|
||||
if (moment(date).isValid()) {
|
||||
return moment(date).format('YYYY[-]MM[-]DD');
|
||||
}
|
||||
return orgin;
|
||||
@@ -21,24 +21,24 @@ const filter_mixin = {
|
||||
}
|
||||
|
||||
const utils_mixin = {
|
||||
methods:{
|
||||
methods: {
|
||||
/** * 이메일 형식 체크 * * @param 데이터 */
|
||||
emailCheck(email,rtnArrYn) {
|
||||
if(this.isNull(rtnArrYn)){
|
||||
rtnArrYn='N';
|
||||
emailCheck(email, rtnArrYn) {
|
||||
if (this.isNull(rtnArrYn)) {
|
||||
rtnArrYn = 'N';
|
||||
}
|
||||
// var regExp = /(^[A-Za-z0-9_\.\-]+)@([A-Za-z0-9\-]+\.[A-Za-z0-9\-]+)/;
|
||||
var regExp = /^([0-9a-zA-Z_\.\-]([-_.]?[0-9a-zA-Z_\.\-])*)@([0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*.[a-zA-Z]{2,3}$)/i;//이메일 정규식
|
||||
|
||||
if(regExp.test(email) == false) {
|
||||
if (regExp.test(email) == false) {
|
||||
// 이메일 형식이 알파벳+숫자@알파벳+숫자.알파벳+숫자 형식이 아닐경우
|
||||
if(rtnArrYn == 'Y'){
|
||||
if (rtnArrYn == 'Y') {
|
||||
return email;
|
||||
}
|
||||
return false;
|
||||
}else{
|
||||
} else {
|
||||
var myArray = regExp.exec(email);
|
||||
if(rtnArrYn == 'Y'){
|
||||
if (rtnArrYn == 'Y') {
|
||||
return myArray;
|
||||
}
|
||||
return true;
|
||||
@@ -46,30 +46,30 @@ const utils_mixin = {
|
||||
|
||||
},
|
||||
/** * 전화번호 포맷으로 변환 * * @param 데이터 */
|
||||
formatPhone(phoneNum,fmt,rtnArrYn) {
|
||||
if(this.isNull(fmt)){
|
||||
fmt='';
|
||||
formatPhone(phoneNum, fmt, rtnArrYn) {
|
||||
if (this.isNull(fmt)) {
|
||||
fmt = '';
|
||||
}
|
||||
if(this.isNull(rtnArrYn)){
|
||||
fmt='N';
|
||||
if (this.isNull(rtnArrYn)) {
|
||||
fmt = 'N';
|
||||
}
|
||||
if(this.isPhone(phoneNum)) {
|
||||
if (this.isPhone(phoneNum)) {
|
||||
var rtnNum;
|
||||
var regExp =/(02)([0-9]{3,4})([0-9]{4})$/;
|
||||
var regExp = /(02)([0-9]{3,4})([0-9]{4})$/;
|
||||
var myArray;
|
||||
if(regExp.test(phoneNum)){
|
||||
if (regExp.test(phoneNum)) {
|
||||
myArray = regExp.exec(phoneNum);
|
||||
rtnNum = myArray[1]+fmt + myArray[2]+fmt+myArray[3];
|
||||
if(rtnArrYn == 'Y'){
|
||||
rtnNum = myArray[1] + fmt + myArray[2] + fmt + myArray[3];
|
||||
if (rtnArrYn == 'Y') {
|
||||
return myArray;
|
||||
}
|
||||
return rtnNum;
|
||||
} else {
|
||||
regExp =/(0[3-9]{1}[0-9]{1})([0-9]{3,4})([0-9]{4})$/;
|
||||
if(regExp.test(phoneNum)){
|
||||
regExp = /(0[3-9]{1}[0-9]{1})([0-9]{3,4})([0-9]{4})$/;
|
||||
if (regExp.test(phoneNum)) {
|
||||
myArray = regExp.exec(phoneNum);
|
||||
rtnNum = myArray[1]+fmt+myArray[2]+fmt+myArray[3];
|
||||
if(rtnArrYn == 'Y'){
|
||||
rtnNum = myArray[1] + fmt + myArray[2] + fmt + myArray[3];
|
||||
if (rtnArrYn == 'Y') {
|
||||
return myArray;
|
||||
}
|
||||
return rtnNum;
|
||||
@@ -82,25 +82,25 @@ const utils_mixin = {
|
||||
}
|
||||
},
|
||||
/** * 핸드폰번호 포맷으로 변환 * * @param 데이터 */
|
||||
formatMobile(phoneNum,fmt,rtnArrYn) {
|
||||
formatMobile(phoneNum, fmt, rtnArrYn) {
|
||||
|
||||
if(this.isNull(fmt)){
|
||||
fmt='';
|
||||
if (this.isNull(fmt)) {
|
||||
fmt = '';
|
||||
}
|
||||
if(this.isNull(rtnArrYn)){
|
||||
fmt='N';
|
||||
if (this.isNull(rtnArrYn)) {
|
||||
fmt = 'N';
|
||||
}
|
||||
if(this.isMobile(phoneNum)) {
|
||||
if (this.isMobile(phoneNum)) {
|
||||
|
||||
var rtnNum;
|
||||
var regExp =/(01[016789])([0-9]{3,4})([0-9]{4})$/;
|
||||
var regExp = /(01[016789])([0-9]{3,4})([0-9]{4})$/;
|
||||
var myArray;
|
||||
|
||||
if(regExp.test(phoneNum)){
|
||||
if (regExp.test(phoneNum)) {
|
||||
|
||||
myArray = regExp.exec(phoneNum);
|
||||
rtnNum = myArray[1]+fmt+myArray[2]+fmt+myArray[3];
|
||||
if(rtnArrYn == 'Y'){
|
||||
rtnNum = myArray[1] + fmt + myArray[2] + fmt + myArray[3];
|
||||
if (rtnArrYn == 'Y') {
|
||||
return myArray;
|
||||
}
|
||||
return rtnNum;
|
||||
@@ -114,12 +114,12 @@ const utils_mixin = {
|
||||
|
||||
/** * 전화번호 형식 체크 * * @param 데이터 */
|
||||
isPhone(phoneNum) {
|
||||
var regExp =/(02)([0-9]{3,4})([0-9]{4})$/;
|
||||
if(regExp.test(phoneNum)){
|
||||
var regExp = /(02)([0-9]{3,4})([0-9]{4})$/;
|
||||
if (regExp.test(phoneNum)) {
|
||||
return true;
|
||||
} else {
|
||||
regExp =/(0[3-9]{1}[0-9]{1})([0-9]{3,4})([0-9]{4})$/;
|
||||
if(regExp.test(phoneNum)){
|
||||
regExp = /(0[3-9]{1}[0-9]{1})([0-9]{3,4})([0-9]{4})$/;
|
||||
if (regExp.test(phoneNum)) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
@@ -129,9 +129,9 @@ const utils_mixin = {
|
||||
|
||||
/** * 핸드폰번호 형식 체크 * * @param 데이터 */
|
||||
isMobile(phoneNum) {
|
||||
var regExp =/(01[016789])([0-9]{3,4})([0-9]{4})$/;
|
||||
var regExp = /(01[016789])([0-9]{3,4})([0-9]{4})$/;
|
||||
var myArray;
|
||||
if(regExp.test(phoneNum)){
|
||||
if (regExp.test(phoneNum)) {
|
||||
myArray = regExp.exec(phoneNum);
|
||||
return true;
|
||||
} else {
|
||||
@@ -139,9 +139,9 @@ const utils_mixin = {
|
||||
}
|
||||
},
|
||||
isMobile2(phoneNum) {
|
||||
var regExp =/(1[016789])([0-9]{3,4})([0-9]{4})$/;
|
||||
var regExp = /(1[016789])([0-9]{3,4})([0-9]{4})$/;
|
||||
var myArray;
|
||||
if(regExp.test(phoneNum)){
|
||||
if (regExp.test(phoneNum)) {
|
||||
myArray = regExp.exec(phoneNum);
|
||||
return true;
|
||||
} else {
|
||||
@@ -149,24 +149,24 @@ const utils_mixin = {
|
||||
}
|
||||
},
|
||||
|
||||
isNull(obj){
|
||||
if(lodash.isNil(obj) || lodash.trim(obj) == ''){
|
||||
isNull(obj) {
|
||||
if (lodash.isNil(obj) || lodash.trim(obj) == '') {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
},
|
||||
getParent(name){
|
||||
getParent(name) {
|
||||
let p = this.$parent;
|
||||
while(typeof p !== 'undefined'){
|
||||
if(p.$options.name == name) {
|
||||
while (typeof p !== 'undefined') {
|
||||
if (p.$options.name == name) {
|
||||
return p;
|
||||
}else {
|
||||
} else {
|
||||
p = p.$parent;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
},
|
||||
getJsonObj(str){
|
||||
getJsonObj(str) {
|
||||
return JSON.parse(JSON.stringify(str));
|
||||
},
|
||||
}
|
||||
@@ -174,23 +174,22 @@ const utils_mixin = {
|
||||
|
||||
var chkPattern2 = {
|
||||
data: function () {
|
||||
return {
|
||||
}
|
||||
return {}
|
||||
},
|
||||
methods: {
|
||||
selSesStorage(keyLike){
|
||||
if(this.isNull(keyLike)){
|
||||
selSesStorage(keyLike) {
|
||||
if (this.isNull(keyLike)) {
|
||||
return null;
|
||||
}
|
||||
if(sessionStorage.length > 0){
|
||||
if (sessionStorage.length > 0) {
|
||||
let keyList = [];
|
||||
for(let i=0;i<sessionStorage.length;i++){
|
||||
for (let i = 0; i < sessionStorage.length; i++) {
|
||||
const keyNm = sessionStorage.key(i);
|
||||
if(keyNm.indexOf(keyLike) > -1){
|
||||
keyList.push({name : keyNm, value : sessionStorage.getItem(keyNm)});
|
||||
if (keyNm.indexOf(keyLike) > -1) {
|
||||
keyList.push({name: keyNm, value: sessionStorage.getItem(keyNm)});
|
||||
}
|
||||
}
|
||||
if(keyList.length > 0){
|
||||
if (keyList.length > 0) {
|
||||
return keyList;
|
||||
}
|
||||
return null;
|
||||
@@ -198,46 +197,46 @@ var chkPattern2 = {
|
||||
return null;
|
||||
},
|
||||
|
||||
delSesStorage(keyList){
|
||||
if(this.isNull(keyList)){
|
||||
delSesStorage(keyList) {
|
||||
if (this.isNull(keyList)) {
|
||||
return null;
|
||||
}
|
||||
if(keyList.length > 0){
|
||||
if (keyList.length > 0) {
|
||||
keyList.map((o) => (sessionStorage.removeItem(o.name)));
|
||||
return true;
|
||||
}
|
||||
},
|
||||
|
||||
setGridMouseDownActive(){
|
||||
setGridMouseDownActive() {
|
||||
const ele = document.querySelector(`div.tui-grid-container.tui-grid-show-lside-area`);
|
||||
if(window.getEventListeners(ele).mousedown){
|
||||
ele.removeEventListener('mousedown',window.getEventListeners(ele).mousedown[0].listener);
|
||||
if (window.getEventListeners(ele).mousedown) {
|
||||
ele.removeEventListener('mousedown', window.getEventListeners(ele).mousedown[0].listener);
|
||||
}
|
||||
},
|
||||
restrictChars : function($event,regExp,hanYn){
|
||||
restrictChars: function ($event, regExp, hanYn) {
|
||||
|
||||
if(this.isNull(hanYn)){
|
||||
hanYn='N';
|
||||
if (this.isNull(hanYn)) {
|
||||
hanYn = 'N';
|
||||
}
|
||||
if(hanYn === 'N' && $event.type === 'keydown'){
|
||||
if($event.keyCode === 229){
|
||||
if (hanYn === 'N' && $event.type === 'keydown') {
|
||||
if ($event.keyCode === 229) {
|
||||
$event.preventDefault();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if($event.type === 'keypress'){
|
||||
if ($event.type === 'keypress') {
|
||||
//한글 처리 불가
|
||||
if(regExp.test(String.fromCharCode($event.charCode))) {
|
||||
if (regExp.test(String.fromCharCode($event.charCode))) {
|
||||
return true;
|
||||
}else{
|
||||
} else {
|
||||
$event.preventDefault();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if(hanYn === 'N' && ( $event.type === 'keyup' || $event.type === 'input' || $event.type === 'change' || $event.type === 'blur')){
|
||||
$event.target.value = $event.target.value.replace(/[ㄱ-ㅎㅏ-ㅣ가-힣]/g,'');
|
||||
if (hanYn === 'N' && ($event.type === 'keyup' || $event.type === 'input' || $event.type === 'change' || $event.type === 'blur')) {
|
||||
$event.target.value = $event.target.value.replace(/[ㄱ-ㅎㅏ-ㅣ가-힣]/g, '');
|
||||
$event.preventDefault();
|
||||
return false;
|
||||
}
|
||||
@@ -246,24 +245,24 @@ var chkPattern2 = {
|
||||
setLenth: function (e, len) {
|
||||
this.cut(e, len);
|
||||
},
|
||||
onlyCustom: function (e,strRegExp,hanYn) {
|
||||
var regExp_g = new RegExp(strRegExp,'g');
|
||||
onlyCustom: function (e, strRegExp, hanYn) {
|
||||
var regExp_g = new RegExp(strRegExp, 'g');
|
||||
this.cut(e);
|
||||
return this.restrictChars(e,regExp_g,hanYn);
|
||||
return this.restrictChars(e, regExp_g, hanYn);
|
||||
},
|
||||
onlyCommon: function(strRegExp, e, len, isEventCall, hanYn) {
|
||||
var regExp_g = new RegExp(strRegExp,'g');
|
||||
if(isEventCall === 'N'){
|
||||
if(!this.cut(e, len, isEventCall)){
|
||||
onlyCommon: function (strRegExp, e, len, isEventCall, hanYn) {
|
||||
var regExp_g = new RegExp(strRegExp, 'g');
|
||||
if (isEventCall === 'N') {
|
||||
if (!this.cut(e, len, isEventCall)) {
|
||||
return false;
|
||||
}
|
||||
if(!regExp_g.test(e.value)){
|
||||
if (!regExp_g.test(e.value)) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
this.cut(e, len);
|
||||
return this.restrictChars(e,regExp_g,hanYn);
|
||||
return this.restrictChars(e, regExp_g, hanYn);
|
||||
},
|
||||
onlyNum: function (e, len, isEventCall) {
|
||||
var strRegExp = '^[0-9]*$';
|
||||
@@ -287,15 +286,15 @@ var chkPattern2 = {
|
||||
},
|
||||
onlyName: function (e, len, isEventCall) {
|
||||
var strRegExp = '^[ㄱ-ㅎㅏ-ㅣ가-힣a-zA-Z]*$';
|
||||
return this.onlyCommon(strRegExp, e, len, isEventCall,'Y');
|
||||
return this.onlyCommon(strRegExp, e, len, isEventCall, 'Y');
|
||||
},
|
||||
onlyTitle: function (e, len, isEventCall) {
|
||||
var strRegExp = '^[ㄱ-ㅎㅏ-ㅣ가-힣a-zA-Z0-9]*$';
|
||||
return this.onlyCommon(strRegExp, e, len, isEventCall,'Y');
|
||||
return this.onlyCommon(strRegExp, e, len, isEventCall, 'Y');
|
||||
},
|
||||
onlyText: function (e, len, isEventCall) {
|
||||
var strRegExp = '^[ㄱ-ㅎㅏ-ㅣ가-힣a-zA-Z0-9_-]*$';
|
||||
return this.onlyCommon(strRegExp, e, len, isEventCall,'Y');
|
||||
return this.onlyCommon(strRegExp, e, len, isEventCall, 'Y');
|
||||
},
|
||||
onlyPassword: function (e, len, isEventCall) {
|
||||
var strRegExp = '^[A-Za-z0-9!@#$%^&*]*$';
|
||||
@@ -311,22 +310,22 @@ var chkPattern2 = {
|
||||
},
|
||||
onlyRoleNm_Space: function (e, len, isEventCall) {
|
||||
var strRegExp = '^[ㄱ-ㅎㅏ-ㅣ가-힣a-zA-Z0-9]*$';
|
||||
return this.onlyCommon(strRegExp, e, len, isEventCall,'Y');
|
||||
return this.onlyCommon(strRegExp, e, len, isEventCall, 'Y');
|
||||
},
|
||||
onlyRoleId_UnderBar: function (e, len, isEventCall) {
|
||||
var strRegExp = '^[a-zA-Z0-9_]*$';
|
||||
return this.onlyCommon(strRegExp, e, len, isEventCall);
|
||||
},
|
||||
cut: function (ele, len, isValidChk) {
|
||||
let e=ele;
|
||||
let e = ele;
|
||||
if (typeof ele.target != "undefined") {
|
||||
e=ele.target;
|
||||
e = ele.target;
|
||||
}
|
||||
let max = this.isNull(len) ? e.attributes.maxlength.value : len;
|
||||
let str = e.value;
|
||||
|
||||
if (this.bytes(str) > max) {
|
||||
if(this.isNull(isValidChk)){
|
||||
if (this.isNull(isValidChk)) {
|
||||
e.value = this.cutBytes(str, max);
|
||||
}
|
||||
return false;
|
||||
@@ -334,19 +333,19 @@ var chkPattern2 = {
|
||||
return true;
|
||||
},
|
||||
cutBytes: function (str, len) {
|
||||
while(1 === 1){
|
||||
if(this.bytes(str) <= len){
|
||||
while (1 === 1) {
|
||||
if (this.bytes(str) <= len) {
|
||||
return str;
|
||||
}
|
||||
str = str.slice(0,-1);
|
||||
str = str.slice(0, -1);
|
||||
}
|
||||
},
|
||||
bytes: function (str) {
|
||||
var length = ((s,b,i,c) => {
|
||||
var length = ((s, b, i, c) => {
|
||||
// for(b=i=0;c=s.charCodeAt(i++);b+=c>>11?3:c>>7?2:1); // 한글 3바이트
|
||||
// for(b=i=0;c=s.charCodeAt(i++);b+=c>>11?2:c>>7?1:1); //한글 2바이트
|
||||
b=0,i=0;
|
||||
while(1 === 1){
|
||||
b = 0, i = 0;
|
||||
while (1 === 1) {
|
||||
c = s.charCodeAt(i++);
|
||||
if (isNaN(c)) {
|
||||
break;
|
||||
@@ -357,17 +356,23 @@ var chkPattern2 = {
|
||||
})(str);
|
||||
return length;
|
||||
},
|
||||
checkPhone: function(str) {
|
||||
checkPhone: function (str) {
|
||||
str = str.replace(/[-\s]+/g, '');
|
||||
if (str.charAt(0)!="0"){
|
||||
str = "0"+str;
|
||||
if (str.charAt(0) != "0") {
|
||||
str = "0" + str;
|
||||
}
|
||||
if (str.length < 10 || str.length > 12) {
|
||||
return "";
|
||||
}
|
||||
if (isNaN(str)) {
|
||||
return "";
|
||||
}
|
||||
if (str.substr(0, 2) != "01" && str.substr(0, 3) != "070" && str.substr(0, 4) != "0505" && str.substr(0, 4) != "0503") {
|
||||
return "";
|
||||
}
|
||||
if (str.length<10||str.length>12){return "";}
|
||||
if (isNaN(str)){return ""; }
|
||||
if (str.substr(0,2)!="01" && str.substr(0,3)!="070" && str.substr(0,4)!="0505" && str.substr(0,4)!="0503"){return ""; }
|
||||
return str;
|
||||
|
||||
},
|
||||
}
|
||||
};
|
||||
export { utils_mixin, chkPattern2, filter_mixin };
|
||||
export {utils_mixin, chkPattern2, filter_mixin};
|
||||
@@ -311,7 +311,12 @@ export default {
|
||||
this.$refs.searchIdPopModal.searchIdFailPop();
|
||||
},
|
||||
resetRegPop() {
|
||||
this.formReset();
|
||||
// this.formReset();
|
||||
this.madangId = '';
|
||||
this.userNm = '';
|
||||
this.email = '';
|
||||
this.mdn = '';
|
||||
this.code = '';
|
||||
this.$refs.madangId.focus();
|
||||
},
|
||||
|
||||
@@ -321,7 +326,7 @@ export default {
|
||||
this.formReset();
|
||||
this.insertType = insertType;
|
||||
console.log(insertType)
|
||||
if(insertType === 2){
|
||||
if (insertType === 2) {
|
||||
this.auth = '1002';
|
||||
}
|
||||
var dimmed = document.getElementsByClassName('modal20');
|
||||
@@ -353,7 +358,7 @@ export default {
|
||||
this.row.msg1 = '저장 하였습니다.';
|
||||
this.$refs.commmonSysModal.alertSysModalOpen(this.row);
|
||||
this.toComplete();
|
||||
}else if (result != null && result.retCode == "4018") {
|
||||
} else if (result != null && result.retCode == "4018") {
|
||||
this.row.title = '관리자/유치채널 관리';
|
||||
this.row.msg1 = '이미 사용중인 아이디입니다.';
|
||||
this.$refs.commmonSysModal.alertSysModalOpen(this.row);
|
||||
|
||||
@@ -13,11 +13,11 @@
|
||||
<tbody>
|
||||
<tr class="tr_input w30">
|
||||
<th>권한명</th>
|
||||
<td colspan="5"><input type="text" v-model.trim="authNm" ref="_authNm"></td>
|
||||
<td colspan="5"><input type="text" v-model.trim="authNm" ref="_authNm" maxlength="100"></td>
|
||||
</tr>
|
||||
<tr class="tr_input w75">
|
||||
<th>권한 코드</th>
|
||||
<td colspan="2"><input type="text" v-model.trim="authCd" ref="_authCd"></td>
|
||||
<td colspan="2"><input type="text" v-model.trim="authCd" ref="_authCd" maxlength="4"></td>
|
||||
<th class="center">상태</th>
|
||||
<td class="td_radio" colspan="2">
|
||||
<input type="radio" name="state" value="01" id="right_radio1" v-model="stat" checked>
|
||||
@@ -28,7 +28,7 @@
|
||||
</tr>
|
||||
<tr class="tr_input w100">
|
||||
<th>권한 설명</th>
|
||||
<td colspan="5"><input type="text" v-model="authDesc"></td>
|
||||
<td colspan="5"><input type="text" v-model.trim="authDesc" maxlength="100"></td>
|
||||
</tr>
|
||||
<tr class="tr_checkbox">
|
||||
<td class="check" rowspan="2">
|
||||
@@ -184,7 +184,6 @@
|
||||
|
||||
import sysMgtApi from "../service/sysMgtApi.js";
|
||||
import {utils_mixin, chkPattern2} from '../service/mixins';
|
||||
//import commonModal from "@/components/modal/commonModal";
|
||||
import commonModal from "../components/commonModal";
|
||||
|
||||
export default {
|
||||
@@ -223,7 +222,8 @@ export default {
|
||||
this.row.title = '시스템관리';
|
||||
this.row.msg1 = '권한명을 입력해 주세요.';
|
||||
this.row.focusTaget = '1';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
console.log(this.row)
|
||||
this.$refs.commmonModal.alertSysModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -231,7 +231,7 @@ export default {
|
||||
this.row.title = '시스템관리';
|
||||
this.row.msg1 = '권한 코드를 입력해 주세요.';
|
||||
this.row.focusTaget = '2';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
this.$refs.commmonModal.alertSysModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -246,14 +246,14 @@ export default {
|
||||
if (this.isNull(this.stat)) {
|
||||
this.row.title = '시스템관리';
|
||||
this.row.msg1 = '상태를 체크해 주세요.';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
this.$refs.commmonModal.alertSysModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (this.checkedAuthMenu.length == 0) {
|
||||
this.row.title = '시스템관리';
|
||||
this.row.msg1 = '메뉴 권한 체크를 해주세요.';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
this.$refs.commmonModal.alertSysModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -312,7 +312,7 @@ export default {
|
||||
this.row.title = '시스템관리';
|
||||
this.row.msg1 = '권한코드가 이미 존재합니다.';
|
||||
this.row.focusTaget = '2';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
this.$refs.commmonModal.alertSysModalOpen(this.row);
|
||||
return false;
|
||||
|
||||
} else {
|
||||
@@ -320,7 +320,7 @@ export default {
|
||||
this.row.title = '시스템관리';
|
||||
this.row.msg1 = '실패 하였습니다.';
|
||||
this.row.focusTaget = '0';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
this.$refs.commmonModal.alertSysModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -329,7 +329,7 @@ export default {
|
||||
this.row.title = '시스템관리';
|
||||
this.row.msg1 = '실패 하였습니다.';
|
||||
this.row.focusTaget = '0';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
this.$refs.commmonModal.alertSysModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<tbody>
|
||||
<tr class="tr_input w30">
|
||||
<th>권한명</th>
|
||||
<td colspan="5"><input type="text" v-model.trim="authNm" ref="_authNm"></td>
|
||||
<td colspan="5"><input type="text" v-model.trim="authNm" ref="_authNm" maxlength="100"></td>
|
||||
</tr>
|
||||
<tr class="tr_input w75">
|
||||
<th>권한 코드</th>
|
||||
@@ -28,7 +28,7 @@
|
||||
</tr>
|
||||
<tr class="tr_input w100">
|
||||
<th>권한 설명</th>
|
||||
<td colspan="5"><input type="text" v-model="authDesc"></td>
|
||||
<td colspan="5"><input type="text" v-model="authDesc" maxlength="100"></td>
|
||||
</tr>
|
||||
<tr class="tr_checkbox">
|
||||
<td class="check" rowspan="2">
|
||||
@@ -229,7 +229,7 @@ export default {
|
||||
this.row.title = '시스템관리';
|
||||
this.row.msg1 = '권한명을 입력해 주세요.';
|
||||
this.row.focusTaget = '1';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
this.$refs.commmonModal.alertSysModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -237,7 +237,7 @@ export default {
|
||||
this.row.title = '시스템관리';
|
||||
this.row.msg1 = '권한 코드를 입력해 주세요.';
|
||||
this.row.focusTaget = '2';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
this.$refs.commmonModal.alertSysModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -245,21 +245,21 @@ export default {
|
||||
this.row.title = '시스템관리';
|
||||
this.row.msg1 = '권한코드는 영문과 숫자포함 최대4자리까지 입력해주세요.';
|
||||
this.row.focusTaget = '2';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
this.$refs.commmonModal.alertSysModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (this.isNull(this.stat)) {
|
||||
this.row.title = '시스템관리';
|
||||
this.row.msg1 = '상태를 체크해 주세요.';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
this.$refs.commmonModal.alertSysModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (this.checkedAuthMenu.length == 0) {
|
||||
this.row.title = '시스템관리';
|
||||
this.row.msg1 = '메뉴 권한 체크를 해주세요.';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
this.$refs.commmonModal.alertSysModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -305,7 +305,7 @@ export default {
|
||||
this.row.title = '시스템관리';
|
||||
this.row.msg1 = '실패 하였습니다.';
|
||||
this.row.focusTaget = '0';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
this.$refs.commmonModal.alertSysModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
} catch (err) {
|
||||
@@ -313,7 +313,7 @@ export default {
|
||||
this.row.title = '시스템관리';
|
||||
this.row.msg1 = '실패 하였습니다.';
|
||||
this.row.focusTaget = '0';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
this.$refs.commmonModal.alertSysModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -362,7 +362,7 @@ export default {
|
||||
this.row.title = '시스템관리';
|
||||
this.row.msg1 = '실패 하였습니다.';
|
||||
this.row.focusTaget = '0';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
this.$refs.commmonModal.alertSysModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -371,7 +371,7 @@ export default {
|
||||
this.row.title = '시스템관리';
|
||||
this.row.msg1 = '실패 하였습니다.';
|
||||
this.row.focusTaget = '0';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
this.$refs.commmonModal.alertSysModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@@ -90,6 +90,15 @@ public class AttractMgtService {
|
||||
public ChannelListExcelResDto channelListExcel(ChannelListExcelReqDto channelListExcelReqDto) {
|
||||
AttractMgtMapper attractMgtMapper = sqlSessionSlave.getMapper(AttractMgtMapper.class);
|
||||
|
||||
Object principal = SecurityContextHolder.getContext().getAuthentication().getPrincipal();
|
||||
UserDetails userDetails = (UserDetails) principal;
|
||||
String attrctorId = userDetails.getUsername();
|
||||
ArrayList auth = (ArrayList) userDetails.getAuthorities();
|
||||
|
||||
if(StringUtils.equals(Const.AUTH_CD_AGENCY, auth.get(0).toString())){
|
||||
channelListExcelReqDto.setAttrctorId(attrctorId);
|
||||
}
|
||||
|
||||
List<ChannelInfo> channelInfos = attractMgtMapper.selectAttractExcelList(channelListExcelReqDto);
|
||||
ChannelListExcelRes channelListExcelRes = new ChannelListExcelRes();
|
||||
channelListExcelRes.setList(channelInfos);
|
||||
|
||||
@@ -27,4 +27,6 @@ public class ChannelListExcelReqDto implements Serializable {
|
||||
private String norgNm;
|
||||
@ApiModelProperty(example = "01", name = "고객유형", dataType = "String")
|
||||
private String custTyCd;
|
||||
@ApiModelProperty(name = "유치자ID", dataType = "String", hidden = true)
|
||||
private String attrctorId;
|
||||
}
|
||||
|
||||
@@ -88,4 +88,16 @@ public interface CustMgtMapper {
|
||||
|
||||
String getEntrNo();
|
||||
|
||||
/** 청약 상태 이력 저장 */
|
||||
int insertSbscstHst(SbscstHstDto sbscstHstDto);
|
||||
/** 상품정보 조회 */
|
||||
ProdInfo getProdAmt(String userSeq);
|
||||
/** 한도 - 오더 채번 */
|
||||
String getOrder();
|
||||
/** 한도 - 오더 저장 */
|
||||
int insertOrder(OrderDto orderDto);
|
||||
/** 차감 상세 저장 */
|
||||
int insertLmtdctDtl(LmtdctDtlDto lmtdctDtlDto);
|
||||
/** 한도 초기화 저장 */
|
||||
int insertUserLmt(UserLmtDto lmtdctDtlDto);
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ package kr.co.uplus.ez.api.custMgt;
|
||||
import kr.co.uplus.ez.api.custMgt.dto.*;
|
||||
import kr.co.uplus.ez.common.components.HubeasyApiComponents;
|
||||
import kr.co.uplus.ez.common.data.*;
|
||||
import kr.co.uplus.ez.common.utils.DateUtils;
|
||||
import kr.co.uplus.ez.common.utils.EncryptionUtil;
|
||||
import org.apache.commons.lang3.RandomStringUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
@@ -12,11 +13,14 @@ import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Qualifier;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.security.core.context.SecurityContextHolder;
|
||||
import org.springframework.security.core.userdetails.UserDetails;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -404,6 +408,10 @@ public class CustMgtService {
|
||||
int checkCustInfo = custMgtMapper.selectCustInfoCount(brno);
|
||||
String custSeq = custMgtMapper.getCustSeq(brno);
|
||||
|
||||
Object principal = SecurityContextHolder.getContext().getAuthentication().getPrincipal();
|
||||
UserDetails userDetails = (UserDetails) principal;
|
||||
String regId = userDetails.getUsername();
|
||||
|
||||
if (checkCustInfo < 1) {
|
||||
// 1-2. 사업자 번호로 미존재시 : 고객정보 등록.
|
||||
CustInfo custInfo = new CustInfo();
|
||||
@@ -417,8 +425,8 @@ public class CustMgtService {
|
||||
custInfo.setZipcd(zipCd);
|
||||
custInfo.setAddr1(badr);
|
||||
custInfo.setAddr2(dadr);
|
||||
custInfo.setRegId(insertTestIdReqDto.getUserId());
|
||||
custInfo.setChgId(insertTestIdReqDto.getUserId());
|
||||
custInfo.setRegId(regId);
|
||||
custInfo.setChgId(regId);
|
||||
// 고객정보 등록.
|
||||
custMgtMapper.insertCustInfo(custInfo);
|
||||
}
|
||||
@@ -439,9 +447,9 @@ public class CustMgtService {
|
||||
svcUserInfo.setHpNo(insertTestIdReqDto.getMdn());
|
||||
svcUserInfo.setEmail(insertTestIdReqDto.getUserEmail());
|
||||
svcUserInfo.setAuthcd080(custMgtMapper.getAuth080());
|
||||
svcUserInfo.setAutCd(Const.USER_AUTCD_USR);
|
||||
svcUserInfo.setRegId(insertTestIdReqDto.getUserId());
|
||||
svcUserInfo.setChgId(insertTestIdReqDto.getUserId());
|
||||
svcUserInfo.setAutCd(Const.USER_AUTCD_TESTER);
|
||||
svcUserInfo.setRegId(regId);
|
||||
svcUserInfo.setChgId(regId);
|
||||
|
||||
// 서비스 이용자 등록.
|
||||
custMgtMapper.insertSvcUserInfo(svcUserInfo);
|
||||
@@ -457,12 +465,71 @@ public class CustMgtService {
|
||||
subsInfo.setSubsSttusCd(Const.SUBS_STTUS_CD_NORMAL);
|
||||
subsInfo.setProdCd(prodCd);
|
||||
subsInfo.setBindDcYn(Const.COMM_NO);
|
||||
subsInfo.setRegId(insertTestIdReqDto.getUserId());
|
||||
subsInfo.setChgId(insertTestIdReqDto.getUserId());
|
||||
subsInfo.setRegId(regId);
|
||||
subsInfo.setChgId(regId);
|
||||
|
||||
// 청약정보 등록.
|
||||
custMgtMapper.insertSubsInfo(subsInfo);
|
||||
|
||||
// 청약상태_이력 테이블 개통 이력 insert
|
||||
Date now = new Date();
|
||||
String subsDt = DateUtils.dateToStr(now, "yyyyMMddHHmmss");
|
||||
SbscstHstDto newSbscstHst = new SbscstHstDto();
|
||||
newSbscstHst.setSubsId(subId); // 청약ID
|
||||
newSbscstHst.setEfctStDt(subsDt); // 유효 종료 일시
|
||||
newSbscstHst.setProdCd(prodCd); // 상품 코드
|
||||
newSbscstHst.setSubsSttusCd(Const.SUBS_STTUS_CD_NORMAL); // 청약 상태 코드
|
||||
newSbscstHst.setRegId(regId); // 변경 ID
|
||||
// 청약 이력 등록
|
||||
custMgtMapper.insertSbscstHst(newSbscstHst);
|
||||
|
||||
// 1. 한도 초기화
|
||||
// 1-1. 상품금액 조회
|
||||
ProdInfo prodInfo = new ProdInfo();
|
||||
prodInfo = custMgtMapper.getProdAmt(userSeq);
|
||||
String prodAmt = prodInfo.getProdAmt();
|
||||
|
||||
|
||||
// 1-2. 오더 채번
|
||||
String order = custMgtMapper.getOrder();
|
||||
String orderCretDt = order.substring(0,12);
|
||||
|
||||
// 1-3. 오더 추가
|
||||
OrderDto orderDto = new OrderDto();
|
||||
orderDto.setOrderId(order);
|
||||
orderDto.setOrderCretDt(orderCretDt);
|
||||
orderDto.setOrderTyCd(Const.ORDER_TYPE_CD_03); // 한도초기화 하기 위한 주문 유형 코드 (01:발송차감, 02:차감결과처리, 03:한도초기화, 04:이월금소멸)
|
||||
orderDto.setRegId(regId);
|
||||
custMgtMapper.insertOrder(orderDto);
|
||||
|
||||
// 1-4. 차감 상세 INSERT
|
||||
LmtdctDtlDto lmtdctDtlDto = new LmtdctDtlDto();
|
||||
lmtdctDtlDto.setOrderCretDt(orderCretDt); // 오더 생성일시
|
||||
lmtdctDtlDto.setUserSeq(userSeq); // 이용자 일련번호
|
||||
String lmtYm = subsDt.substring(0,6);
|
||||
lmtdctDtlDto.setLmtYm(lmtYm); // 한도 년월
|
||||
lmtdctDtlDto.setUseYm(lmtYm); // 사용 년월
|
||||
lmtdctDtlDto.setLmtTpCd(Const.LMTDCT_DTL_TYPE_CD_01); // 한도 유형 코드
|
||||
lmtdctDtlDto.setDdctTpcd(Const.LMTDCT_DTL_DDCT_TYPE_CD_04); // 차감 유형 코드
|
||||
lmtdctDtlDto.setDdctAmt(prodAmt); // 차감 금액
|
||||
lmtdctDtlDto.setExeOrderId(order); // 실행 오더 ID
|
||||
lmtdctDtlDto.setSnddctOrderId(order); // 발송 차감 오더 ID
|
||||
lmtdctDtlDto.setRegId(regId); // 등록 ID
|
||||
|
||||
custMgtMapper.insertLmtdctDtl(lmtdctDtlDto);
|
||||
|
||||
// 1-5. 한도 INSERT
|
||||
UserLmtDto userLmtDto = new UserLmtDto();
|
||||
userLmtDto.setUserSeq(userSeq); // 이용자 일련번호
|
||||
userLmtDto.setLmtYm(lmtYm); // 한도 년월
|
||||
userLmtDto.setFxLmtAmt(prodAmt); // 정액 한도 금액
|
||||
userLmtDto.setMrtLmtAmt(prodAmt); // 종량 한도 금액
|
||||
userLmtDto.setFxBlnc(prodAmt); // 정액 잔액
|
||||
userLmtDto.setRegId(regId); // 등록자ID
|
||||
userLmtDto.setChgId(regId); // 변경자ID
|
||||
|
||||
custMgtMapper.insertUserLmt(userLmtDto);
|
||||
|
||||
return new InsertTestIdResDto(ApiResponseCode.SUCCESS);
|
||||
}
|
||||
|
||||
@@ -746,14 +813,14 @@ public class CustMgtService {
|
||||
logger.debug("[Email Send Request - templeteCode : {}]", mailReqMap.get("templeteCode"));
|
||||
logger.debug("[Email Send Request - homeUrl : {}]", mailReqMap.get("homeUrl"));
|
||||
|
||||
mailResultMap = hubeasyApi.sendTemplateMailApi(mailReqMap);
|
||||
|
||||
if (mailResultMap != null) {
|
||||
logger.debug("[Email Send API RESULT : {}]", mailResultMap.get("API_RSLT"));
|
||||
if ("F".equals(mailResultMap.get("API_RSLT"))) {
|
||||
logger.debug("[Email Send API ERROR : {}]", mailResultMap.get("API_RSLT_MSG"));
|
||||
}
|
||||
}
|
||||
// mailResultMap = hubeasyApi.sendTemplateMailApi(mailReqMap);
|
||||
//
|
||||
// if (mailResultMap != null) {
|
||||
// logger.debug("[Email Send API RESULT : {}]", mailResultMap.get("API_RSLT"));
|
||||
// if ("F".equals(mailResultMap.get("API_RSLT"))) {
|
||||
// logger.debug("[Email Send API ERROR : {}]", mailResultMap.get("API_RSLT_MSG"));
|
||||
// }
|
||||
// }
|
||||
logger.debug("############## [Email Send End] ###############");
|
||||
|
||||
} catch (Exception e) {
|
||||
@@ -762,7 +829,8 @@ public class CustMgtService {
|
||||
}
|
||||
|
||||
// 요청건수.
|
||||
insertMassUserRes.setTotalCnt(String.valueOf(insertMassUsers.size()));
|
||||
// insertMassUserRes.setTotalCnt(String.valueOf(insertMassUsers.size()));
|
||||
insertMassUserRes.setTotalCnt(String.valueOf(orgInsertMassUsers.size()));
|
||||
// 성공건수.
|
||||
insertMassUserRes.setSuccessCnt(String.valueOf(successCnt));
|
||||
// 실패건수.
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
package kr.co.uplus.ez.api.custMgt.dto;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
// 한도 차감 상세
|
||||
@SuppressWarnings("serial")
|
||||
@Data
|
||||
public class LmtdctDtlDto implements Serializable{
|
||||
|
||||
private String seqNo; // 일련번호
|
||||
private String orderCretDt; // Order 생성 일시
|
||||
private String userSeq; // 이용자 일련번호
|
||||
private String lmtYm; // 한도 년월
|
||||
private String useYm; // 사용 년월
|
||||
private String lmtTpCd; // 한도 유형 코드
|
||||
private String ddctTpcd; // 차감 유형 코드
|
||||
private String ddctAmt; // 차감 금액
|
||||
private String exeOrderId; // 실행 OrderID
|
||||
private String snddctOrderId; // 발송차감 OrderID
|
||||
private String regId; // 등록 ID
|
||||
private String regDt; // 등록 일시
|
||||
|
||||
}
|
||||
16
src/main/java/kr/co/uplus/ez/api/custMgt/dto/OrderDto.java
Normal file
16
src/main/java/kr/co/uplus/ez/api/custMgt/dto/OrderDto.java
Normal file
@@ -0,0 +1,16 @@
|
||||
package kr.co.uplus.ez.api.custMgt.dto;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@SuppressWarnings("serial")
|
||||
@Data
|
||||
public class OrderDto implements Serializable{
|
||||
|
||||
private String orderId; // ORDER ID
|
||||
private String orderCretDt; // ORDER 생성 일시
|
||||
private String orderTyCd; // ORDER 유형 코드 (01:발송차감, 02:차감결과처리, 03:한도초기화, 04:이월금소멸)
|
||||
private String regId; // 등록 ID
|
||||
|
||||
}
|
||||
14
src/main/java/kr/co/uplus/ez/api/custMgt/dto/ProdInfo.java
Normal file
14
src/main/java/kr/co/uplus/ez/api/custMgt/dto/ProdInfo.java
Normal file
@@ -0,0 +1,14 @@
|
||||
package kr.co.uplus.ez.api.custMgt.dto;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@SuppressWarnings("serial")
|
||||
@Data
|
||||
public class ProdInfo implements Serializable{
|
||||
|
||||
private String prodCd;
|
||||
private String prodNm;
|
||||
private String prodAmt;
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package kr.co.uplus.ez.api.custMgt.dto;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@SuppressWarnings("serial")
|
||||
@Data
|
||||
public class SbscstHstDto implements Serializable {
|
||||
|
||||
private String subsId; // 청약ID
|
||||
private String efctStDt; // 유효 시작 일시
|
||||
private String efctFnsDt; // 유효 종료 일시
|
||||
private String prodCd; // 상품 코드
|
||||
private String subsSttusCd; // 청약 상태 코드
|
||||
private String regId; // 등록 ID
|
||||
private String regDt; // 등록 일시
|
||||
private String chgId; // 변경 ID
|
||||
private String chgDt; // 변경일시
|
||||
|
||||
}
|
||||
33
src/main/java/kr/co/uplus/ez/api/custMgt/dto/UserLmtDto.java
Normal file
33
src/main/java/kr/co/uplus/ez/api/custMgt/dto/UserLmtDto.java
Normal file
@@ -0,0 +1,33 @@
|
||||
package kr.co.uplus.ez.api.custMgt.dto;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@SuppressWarnings("serial")
|
||||
@Data
|
||||
public class UserLmtDto implements Serializable{
|
||||
|
||||
private String userSeq; // 이용자 일련 번호
|
||||
private String lmtYm; // 한도 년월
|
||||
private String fxLmtAmt; // 정액 한도 금액
|
||||
private String mrtLmtAmt; // 종량 한도 금액
|
||||
private String cfwdAmt; // 이월 금액
|
||||
private String extncAmt; // 소멸 처리 금액
|
||||
private String cfwdRstrtBlnc; // 이월 복원 잔액
|
||||
private String fxBlnc; // 정액 잔액
|
||||
private String mrtUseAmt; // 종량 사용 금액
|
||||
private String smsUseAmt; // sms 사용 금액
|
||||
private String mmsUseAmt; // mms 사용 금액
|
||||
private String lmsUseAmt; // lms 사용 금액
|
||||
private String atlkUseAmt; // 알림톡 사용 금액
|
||||
private String smsUseCnt; // sms 사용 건수
|
||||
private String lmsUseCnt; // lms 사용 건수
|
||||
private String mmsUseCnt; // mms 사용 건수
|
||||
private String atlkUseCnt; // 알림톧 사용 건수
|
||||
private String regId; // 등록 ID
|
||||
private String regDt; // 등록 일시
|
||||
private String chgId; // 변경 ID
|
||||
private String chgDt; // 변경 일시
|
||||
|
||||
}
|
||||
@@ -89,6 +89,12 @@ public class LoginService {
|
||||
loginMapper.setLoginInfo(user.getOprtrId());
|
||||
}
|
||||
|
||||
// 로그인 임시 비밀번호 여부
|
||||
String tmpPwdYn = user.getTmpPwdYn();
|
||||
if(tmpPwdYn.equals(Const.COMM_YES)) {
|
||||
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));
|
||||
}
|
||||
|
||||
@@ -245,6 +251,7 @@ public class LoginService {
|
||||
authUser.setPwd(EncryptionUtil.getCustomSHA512(resetPasswordReqDto.getUserId(), randomPw));
|
||||
authUser.setPwdChgDt(Const.COMM_YES);
|
||||
authUser.setAuthchrFailCnt(0);
|
||||
authUser.setLoginFailCnt(0);
|
||||
|
||||
int reslut = loginMapper.updateAdmUser(authUser);
|
||||
|
||||
@@ -296,6 +303,7 @@ public class LoginService {
|
||||
authUser.setPwd(newPw);
|
||||
authUser.setPwdChgDt(Const.COMM_YES);
|
||||
authUser.setAuthchrFailCnt(0);
|
||||
authUser.setTmpPwdYn(Const.COMM_NO);
|
||||
|
||||
int reslut = loginMapper.updateAdmUser(authUser);
|
||||
|
||||
|
||||
@@ -22,7 +22,6 @@ import org.springframework.web.multipart.MultipartHttpServletRequest;
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
public class SendNumMgtService {
|
||||
@@ -161,17 +160,33 @@ public class SendNumMgtService {
|
||||
String regId = userDetails.getUsername();
|
||||
|
||||
// 2. 중복 발신번호 체크를 위한 조회.
|
||||
List<InsertNumber> sendNumbers = sendNumMgtMapper.selectSndrnoList(insertNumberReqDto);
|
||||
List<InsertNumber> dbSendNumbers = insertNumberReqDto.getList();
|
||||
List<InsertNumber> dbSendNumbers = sendNumMgtMapper.selectSndrnoList(insertNumberReqDto);
|
||||
List<InsertNumber> sendNumbers = insertNumberReqDto.getList();
|
||||
|
||||
List<InsertNumber> allSendNumbers = insertNumberReqDto.getList();
|
||||
|
||||
// 실패 항목 응답.
|
||||
if(sendNumbers.size() > 0){
|
||||
allSendNumbers.addAll(sendNumbers);
|
||||
List<InsertNumber> duplicateSendNumList = new ArrayList<>();
|
||||
for (int i=0; i<dbSendNumbers.size(); i++){
|
||||
for (int j=0; j<sendNumbers.size(); j++){
|
||||
String dbSendNum = dbSendNumbers.get(i).getSendNum();
|
||||
String getSendNum = sendNumbers.get(j).getSendNum();
|
||||
if(StringUtils.equals(dbSendNum, getSendNum)){
|
||||
// sendNumbers.remove(j);
|
||||
allSendNumbers.remove(j);
|
||||
InsertNumber insertNumber = new InsertNumber();
|
||||
insertNumber.setSendNum(getSendNum);
|
||||
duplicateSendNumList.add(insertNumber);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
dbSendNumbers = allSendNumbers.stream().distinct().collect(Collectors.toList());
|
||||
if(allSendNumbers.size() == 0){
|
||||
InsertNumberRes insertNumberRes = new InsertNumberRes();
|
||||
if(duplicateSendNumList.size() > 0){
|
||||
// 발신번호 중복건 응답 처리.
|
||||
insertNumberRes.setList(duplicateSendNumList);
|
||||
}
|
||||
return new InsertNumberResDto(ApiResponseCode.CE_SENDMGT_DUPLICATE_SENDNUM, insertNumberRes);
|
||||
}
|
||||
|
||||
// 1. 발신번호 SEQ 채번
|
||||
String regReqNo = sendNumMgtMapper.selectRegReqNo();
|
||||
@@ -193,7 +208,8 @@ public class SendNumMgtService {
|
||||
dir.mkdirs();
|
||||
}
|
||||
|
||||
for (InsertNumber dbInsertNumber : dbSendNumbers){
|
||||
for (InsertNumber dbInsertNumber : allSendNumbers){
|
||||
if(StringUtils.isNotBlank(dbInsertNumber.getSendNum())){
|
||||
dbInsertNumber.setCustSeq(insertNumberReqDto.getCustSeq());
|
||||
dbInsertNumber.setRegReqNo(regReqNo);
|
||||
dbInsertNumber.setNmineeDivCd(insertNumberReqDto.getNmineeDivCd());
|
||||
@@ -206,6 +222,7 @@ public class SendNumMgtService {
|
||||
dbInsertNumber.setRegId(regId);
|
||||
sendNumMgtMapper.insertNumberList(dbInsertNumber);
|
||||
}
|
||||
}
|
||||
|
||||
// 사업자 인증이 안된 경우 파일업로드...
|
||||
if(!StringUtils.equals(Const.COMM_YES, insertNumberReqDto.getBizrAuthYn())){
|
||||
@@ -280,9 +297,9 @@ public class SendNumMgtService {
|
||||
}
|
||||
|
||||
InsertNumberRes insertNumberRes = new InsertNumberRes();
|
||||
if(sendNumbers.size() > 0){
|
||||
if(duplicateSendNumList.size() > 0){
|
||||
// 발신번호 중복건 응답 처리.
|
||||
insertNumberRes.setList(sendNumbers);
|
||||
insertNumberRes.setList(duplicateSendNumList);
|
||||
}
|
||||
|
||||
return new InsertNumberResDto(ApiResponseCode.SUCCESS, insertNumberRes);
|
||||
|
||||
@@ -19,7 +19,7 @@ public class InsertNumberReqDto implements Serializable{
|
||||
private String custNm;
|
||||
|
||||
@ApiModelProperty(example = "사업자번호", name = "사업자번호", dataType = "String")
|
||||
private String bRegNo;
|
||||
private String bregno;
|
||||
|
||||
@ApiModelProperty(example = "사업자인증여부", name = "사업자인증여부", dataType = "String")
|
||||
private String bizrAuthYn;
|
||||
|
||||
@@ -19,6 +19,8 @@ public enum ApiResponseCode {
|
||||
,CM_DB_QUERY_ERR("1009", "데이터를 처리하는 동안 오류가 발생했습니다.")
|
||||
|
||||
// 어드민.
|
||||
/** 비밀번호 변경. */
|
||||
,LOGIN_UPDATE_PWD("1001", "비밀번호 변경")
|
||||
/** 인증토큰 만료. */
|
||||
,CE_AUTH_TOKEN_EXPIRE("4001", "인증토큰 만료")
|
||||
/** Refresh 토큰 만료. */
|
||||
@@ -59,6 +61,8 @@ public enum ApiResponseCode {
|
||||
,CE_SENDINGLIMT_ERROR("4019", "발송한도금액이 정액한도금액보다 작습니다.")
|
||||
/** 해당 권한코드에 해당하는 어드민 사용자가 존재함. */
|
||||
,CE_SYSMGT_AUTHCODE_EXISTS_USER("4020", "해당 권한코드에 해당하는 어드민 사용자가 존재함.")
|
||||
/** 이미 등록된 발신번호로 저장 불가. */
|
||||
,CE_SENDMGT_DUPLICATE_SENDNUM("4021", "이미 등록된 발신번호로 저장 불가.")
|
||||
// 시스템
|
||||
/** 알 수 없는 에러. */
|
||||
,SE_UNKNOWN("9999", "알 수 없는 에러");
|
||||
|
||||
@@ -72,6 +72,8 @@ public class Const {
|
||||
public static final String USER_AUTCD_USR = "H001";
|
||||
/** 사용자 권한 (H003 비로그인).*/
|
||||
public static final String USER_AUTCD_NO_LOGIN = "H003";
|
||||
/** 사용자 권한 (H004 테스트ID).*/
|
||||
public static final String USER_AUTCD_TESTER = "H004";
|
||||
|
||||
// 가입 상태 코드(01:대기, 02:정상, 03:일시정지, 04:미납정지, 98:취소, 99:해지)
|
||||
/** 가입 상태 코드(01:대기) */
|
||||
@@ -110,4 +112,13 @@ public class Const {
|
||||
public static final String SNDRNO_STTUS_CD_APPR = "01";
|
||||
public static final String SNDRNO_STTUS_CD_COMPLETED = "02";
|
||||
public static final String SNDRNO_STTUS_CD_REJECT = "03";
|
||||
|
||||
/** 한도초기화 하기 위한 주문 유형 코드 (01:발송차감, 02:차감결과처리, 03:한도초기화, 04:이월금소멸) */
|
||||
public static final String ORDER_TYPE_CD_03 = "03";
|
||||
|
||||
/** 한도 차감 상세 - 한도유형 코드(01:정액, 02:종량) */
|
||||
public static final String LMTDCT_DTL_TYPE_CD_01 = "01";
|
||||
/** 한도 차감 상세 - 차감 유형 코드 (01:차감, 02:소멸, 03:복원, 04:충전) */
|
||||
public static final String LMTDCT_DTL_DDCT_TYPE_CD_04 = "04";
|
||||
|
||||
}
|
||||
|
||||
@@ -34,6 +34,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter {
|
||||
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_SUCC_URL = "/";
|
||||
public static final String LOGIN_UPDATE_PWD_URL = "/view/login/updatePassword";
|
||||
private static final String API_URL = "/api/**";
|
||||
public static final String TEST_PERMIT_URL = "/api/**/**";
|
||||
public static final String PUBLIC_API_URL = "/api/v1/bo/**"; // 내부에서 인증없이 호출하는 API
|
||||
|
||||
@@ -35,7 +35,7 @@ schedule:
|
||||
# 2차인증 제외 ID목록.
|
||||
authentication:
|
||||
without:
|
||||
id: superadminuser,jambler01,jambler02,jambler03,jambler04,jambler05,jambler06
|
||||
id: superadminuser,hacktestadmin,jambler01,jambler02,jambler03,jambler04,jambler05,jambler06
|
||||
|
||||
mail:
|
||||
from: msghubez@lguplus.co.kr
|
||||
|
||||
@@ -35,7 +35,7 @@ schedule:
|
||||
# 2차인증 제외 ID목록.
|
||||
authentication:
|
||||
without:
|
||||
id: superadminuser,jambler01,jambler02,jambler03,jambler04,jambler05,jambler06
|
||||
id: superadminuser,hacktestadmin,jambler01,jambler02,jambler03,jambler04,jambler05,jambler06
|
||||
|
||||
mail:
|
||||
from: msghubez@lguplus.co.kr
|
||||
|
||||
@@ -3,7 +3,8 @@
|
||||
|
||||
<mapper namespace="kr.co.uplus.ez.api.attractMgt.AttractMgtMapper">
|
||||
|
||||
<select id="selectAttractListTotalCnt" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelListReqDto" resultType="int">
|
||||
<select id="selectAttractListTotalCnt" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelListReqDto"
|
||||
resultType="int">
|
||||
/* attractMgt-mapper.xml(selectAttractListTotalCnt) */
|
||||
SELECT
|
||||
COUNT(*) AS totalCnt
|
||||
@@ -21,7 +22,8 @@
|
||||
<include refid="attractListCondition"/>
|
||||
</select>
|
||||
|
||||
<select id="selectAttractList" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelListReqDto" resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelInfo">
|
||||
<select id="selectAttractList" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelListReqDto"
|
||||
resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelInfo">
|
||||
/* attractMgt-mapper.xml(selectAttractList) */
|
||||
SELECT
|
||||
@ROWNUM := @ROWNUM + 1 AS NO
|
||||
@@ -33,9 +35,11 @@
|
||||
, A.BIZRNO
|
||||
, A.USER_NM
|
||||
, A.SUBS_STTUS_CD
|
||||
, (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'SUBS_STTUS_CD' AND DTL_CD = A.SUBS_STTUS_CD) as SUBS_STTUS_NM
|
||||
, (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'SUBS_STTUS_CD' AND DTL_CD = A.SUBS_STTUS_CD) as
|
||||
SUBS_STTUS_NM
|
||||
, A.CUST_TY_CD
|
||||
, (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'CUST_KD_CD' AND DTL_CD = A.CUST_TY_CD) as CUST_TY_NM
|
||||
, (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'CUST_KD_CD' AND DTL_CD = A.CUST_TY_CD) as
|
||||
CUST_TY_NM
|
||||
, (
|
||||
SELECT
|
||||
sum(IFNULL(ecm.SND_CNT,0) + IFNULL(ecm.FBACK_CNT,0))
|
||||
@@ -74,7 +78,8 @@
|
||||
) A , ( SELECT @ROWNUM := #{page} ) AS R
|
||||
</select>
|
||||
|
||||
<select id="selectAttractExcelList" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelListExcelReqDto" resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelInfo">
|
||||
<select id="selectAttractExcelList" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelListExcelReqDto"
|
||||
resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelInfo">
|
||||
/* attractMgt-mapper.xml(selectAttractExcelList) */
|
||||
SELECT
|
||||
@ROWNUM := @ROWNUM + 1 AS NO
|
||||
@@ -85,8 +90,10 @@
|
||||
, A.CUST_NM
|
||||
, A.BIZRNO
|
||||
, A.USER_NM
|
||||
, (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'SUBS_STTUS_CD' AND DTL_CD = A.SUBS_STTUS_CD) as SUBS_STTUS_NM
|
||||
, (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'CUST_KD_CD' AND DTL_CD = A.CUST_TY_CD) as CUST_TY_NM
|
||||
, (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'SUBS_STTUS_CD' AND DTL_CD = A.SUBS_STTUS_CD) as
|
||||
SUBS_STTUS_NM
|
||||
, (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'CUST_KD_CD' AND DTL_CD = A.CUST_TY_CD) as
|
||||
CUST_TY_NM
|
||||
, (
|
||||
SELECT
|
||||
sum(IFNULL(ecm.SND_CNT,0) + IFNULL(ecm.FBACK_CNT,0))
|
||||
@@ -136,10 +143,10 @@
|
||||
AND eci.CUST_TY_CD = #{custTyCd}
|
||||
</if>
|
||||
<if test="loginId != null and loginId != ''">
|
||||
AND eiu.LOGIN_ID = #{loginId}
|
||||
AND eiu.LOGIN_ID LIKE CONCAT('%', #{loginId}, '%')
|
||||
</if>
|
||||
<if test="norgNm != null and norgNm != ''">
|
||||
AND eig.NORG_NM = #{norgNm}
|
||||
AND eig.NORG_NM LIKE CONCAT('%', #{norgNm}, '%')
|
||||
</if>
|
||||
<if test="searchType != null and searchType != ''">
|
||||
<if test="searchType == '01' and searchText != null and searchText != ''">
|
||||
@@ -157,13 +164,12 @@
|
||||
</if>
|
||||
</sql>
|
||||
|
||||
<select id="selectAttractDetail" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailReqDto" resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailRes">
|
||||
<select id="selectAttractDetail" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailReqDto"
|
||||
resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailRes">
|
||||
/* attractMgt-mapper.xml(selectAttractDetail) */
|
||||
SELECT
|
||||
DATE_FORMAT(esi.SUBS_DT, '%Y-%m-%d') AS SUBS_DT
|
||||
SELECT DATE_FORMAT(esi.SUBS_DT, '%Y-%m-%d') AS SUBS_DT
|
||||
, esi.SUBS_STTUS_CD
|
||||
,(SELECT
|
||||
T2.DTL_CD_NM AS codeNm
|
||||
, (SELECT T2.DTL_CD_NM AS codeNm
|
||||
FROM hubez_common.EZ_CD_GRP T1
|
||||
LEFT JOIN hubez_common.EZ_CD_DTL T2
|
||||
ON T1.GRP_CD = T2.GRP_CD
|
||||
@@ -173,8 +179,7 @@
|
||||
, esi.PROD_CD
|
||||
, eci.REPR_NM
|
||||
, eci.CUST_TY_CD
|
||||
,(SELECT
|
||||
T2.DTL_CD_NM AS codeNm
|
||||
, (SELECT T2.DTL_CD_NM AS codeNm
|
||||
FROM hubez_common.EZ_CD_GRP T1
|
||||
LEFT JOIN hubez_common.EZ_CD_DTL T2
|
||||
ON T1.GRP_CD = T2.GRP_CD
|
||||
@@ -190,15 +195,11 @@
|
||||
, esi.SUBSMNGR_ID AS ADMIN_ID
|
||||
, esi.SUBSMNGR_NM AS ADMIN_NM
|
||||
, esu.USER_ID
|
||||
,(
|
||||
SELECT
|
||||
PROD_NM
|
||||
FROM
|
||||
hubez_common.EZ_PROD_INFO
|
||||
WHERE
|
||||
PROD_CD = esi.PROD_CD) AS PLAN
|
||||
FROM
|
||||
hubez_common.EZ_SUBS_INFO esi
|
||||
, (
|
||||
SELECT PROD_NM
|
||||
FROM hubez_common.EZ_PROD_INFO
|
||||
WHERE PROD_CD = esi.PROD_CD) AS PLAN
|
||||
FROM hubez_common.EZ_SUBS_INFO esi
|
||||
INNER JOIN hubez_common.EZ_CUST_INFO eci
|
||||
ON eci.CUST_SEQ = esi.CUST_SEQ
|
||||
INNER JOIN hubez_common.EZ_SVC_USER esu
|
||||
@@ -211,9 +212,9 @@
|
||||
AND esu.USER_SEQ = #{userSeq}
|
||||
</select>
|
||||
|
||||
<select id="selectSndCountList" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailReqDto" resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetail">
|
||||
SELECT
|
||||
DATE_FORMAT(ecm.SUM_YM, '%Y-%m') AS sumYm
|
||||
<select id="selectSndCountList" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailReqDto"
|
||||
resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetail">
|
||||
SELECT DATE_FORMAT(ecm.SUM_YM, '%Y-%m') AS sumYm
|
||||
, ecm.SND_CNT
|
||||
, ecm.SUCC_CNT
|
||||
, S.SND_CNT AS SND_CNT_S
|
||||
@@ -224,48 +225,39 @@
|
||||
, M.SUCC_CNT AS SUCC_CNT_M
|
||||
, A.SND_CNT AS SND_CNT_A
|
||||
, A.SUCC_CNT AS SUCC_CNT_A
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
SUM_YM
|
||||
,USER_SEQ
|
||||
,SUM(IFNULL(SND_CNT,0) + IFNULL(FBACK_CNT,0)) AS SND_CNT
|
||||
,SUM(IFNULL(SUCC_CNT,0) + IFNULL(FBACK_SUCC_CNT,0)) AS SUCC_CNT
|
||||
FROM
|
||||
hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1=1
|
||||
FROM (
|
||||
SELECT SUM_YM
|
||||
, USER_SEQ
|
||||
, SUM(IFNULL(SND_CNT, 0) + IFNULL(FBACK_CNT, 0)) AS SND_CNT
|
||||
, SUM(IFNULL(SUCC_CNT, 0) + IFNULL(FBACK_SUCC_CNT, 0)) AS SUCC_CNT
|
||||
FROM hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1 = 1
|
||||
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
|
||||
AND USER_SEQ = #{userSeq}
|
||||
GROUP BY SUM_YM, USER_SEQ
|
||||
) ecm,
|
||||
(
|
||||
SELECT
|
||||
S1.SUM_YM
|
||||
,S1.USER_SEQ
|
||||
,SUM(IFNULL(S1.SND_CNT,0) + IFNULL(S2.FBACK_CNT,0)) AS SND_CNT
|
||||
,SUM(IFNULL(S1.SUCC_CNT,0) + IFNULL(S2.FBACK_SUCC_CNT,0)) AS SUCC_CNT
|
||||
FROM
|
||||
(SELECT
|
||||
SUM_YM
|
||||
,USER_SEQ
|
||||
,SUM(SND_CNT) AS SND_CNT
|
||||
,SUM(SUCC_CNT) AS SUCC_CNT
|
||||
FROM
|
||||
hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1=1
|
||||
SELECT S1.SUM_YM
|
||||
, S1.USER_SEQ
|
||||
, SUM(IFNULL(S1.SND_CNT, 0) + IFNULL(S2.FBACK_CNT, 0)) AS SND_CNT
|
||||
, SUM(IFNULL(S1.SUCC_CNT, 0) + IFNULL(S2.FBACK_SUCC_CNT, 0)) AS SUCC_CNT
|
||||
FROM (SELECT SUM_YM
|
||||
, USER_SEQ
|
||||
, SUM(SND_CNT) AS SND_CNT
|
||||
, SUM(SUCC_CNT) AS SUCC_CNT
|
||||
FROM hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1 = 1
|
||||
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
|
||||
AND SND_CH_CD = 'SMS'
|
||||
AND USER_SEQ = #{userSeq}
|
||||
GROUP BY SUM_YM, USER_SEQ) S1
|
||||
LEFT OUTER JOIN
|
||||
(SELECT
|
||||
SUM_YM
|
||||
,USER_SEQ
|
||||
,SUM(FBACK_CNT) AS FBACK_CNT
|
||||
,SUM(FBACK_SUCC_CNT) AS FBACK_SUCC_CNT
|
||||
FROM
|
||||
hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1=1
|
||||
(SELECT SUM_YM
|
||||
, USER_SEQ
|
||||
, SUM(FBACK_CNT) AS FBACK_CNT
|
||||
, SUM(FBACK_SUCC_CNT) AS FBACK_SUCC_CNT
|
||||
FROM hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1 = 1
|
||||
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
|
||||
AND SND_CH_CD = 'ALIMTALK'
|
||||
AND RPLCSND_CH_CD = 'SMS'
|
||||
@@ -273,35 +265,29 @@
|
||||
GROUP BY SUM_YM, USER_SEQ) S2
|
||||
ON S1.SUM_YM = S2.SUM_YM
|
||||
AND S1.USER_SEQ = S2.USER_SEQ
|
||||
GROUP BY S1.SUM_YM, S1.USER_SEQ ) S,
|
||||
GROUP BY S1.SUM_YM, S1.USER_SEQ) S,
|
||||
(
|
||||
SELECT
|
||||
S1.SUM_YM
|
||||
,S1.USER_SEQ
|
||||
,SUM(IFNULL(S1.SND_CNT,0) + IFNULL(S2.FBACK_CNT,0)) AS SND_CNT
|
||||
,SUM(IFNULL(S1.SUCC_CNT,0) + IFNULL(S2.FBACK_SUCC_CNT,0)) AS SUCC_CNT
|
||||
FROM
|
||||
(SELECT
|
||||
SUM_YM
|
||||
,USER_SEQ
|
||||
,SUM(SND_CNT) AS SND_CNT
|
||||
,SUM(SUCC_CNT) AS SUCC_CNT
|
||||
FROM
|
||||
hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1=1
|
||||
SELECT S1.SUM_YM
|
||||
, S1.USER_SEQ
|
||||
, SUM(IFNULL(S1.SND_CNT, 0) + IFNULL(S2.FBACK_CNT, 0)) AS SND_CNT
|
||||
, SUM(IFNULL(S1.SUCC_CNT, 0) + IFNULL(S2.FBACK_SUCC_CNT, 0)) AS SUCC_CNT
|
||||
FROM (SELECT SUM_YM
|
||||
, USER_SEQ
|
||||
, SUM(SND_CNT) AS SND_CNT
|
||||
, SUM(SUCC_CNT) AS SUCC_CNT
|
||||
FROM hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1 = 1
|
||||
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
|
||||
AND SND_CH_CD = 'LMS'
|
||||
AND USER_SEQ = #{userSeq}
|
||||
GROUP BY SUM_YM, USER_SEQ) S1
|
||||
LEFT OUTER JOIN
|
||||
(SELECT
|
||||
SUM_YM
|
||||
,USER_SEQ
|
||||
,SUM(FBACK_CNT) AS FBACK_CNT
|
||||
,SUM(FBACK_SUCC_CNT) AS FBACK_SUCC_CNT
|
||||
FROM
|
||||
hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1=1
|
||||
(SELECT SUM_YM
|
||||
, USER_SEQ
|
||||
, SUM(FBACK_CNT) AS FBACK_CNT
|
||||
, SUM(FBACK_SUCC_CNT) AS FBACK_SUCC_CNT
|
||||
FROM hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1 = 1
|
||||
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
|
||||
AND SND_CH_CD = 'ALIMTALK'
|
||||
AND RPLCSND_CH_CD = 'LMS'
|
||||
@@ -309,35 +295,29 @@
|
||||
GROUP BY SUM_YM, USER_SEQ) S2
|
||||
ON S1.SUM_YM = S2.SUM_YM
|
||||
AND S1.USER_SEQ = S2.USER_SEQ
|
||||
GROUP BY S1.SUM_YM, S1.USER_SEQ ) AS L,
|
||||
GROUP BY S1.SUM_YM, S1.USER_SEQ) AS L,
|
||||
(
|
||||
SELECT
|
||||
S1.SUM_YM
|
||||
,S1.USER_SEQ
|
||||
,SUM(IFNULL(S1.SND_CNT,0) + IFNULL(S2.FBACK_CNT,0)) AS SND_CNT
|
||||
,SUM(IFNULL(S1.SUCC_CNT,0) + IFNULL(S2.FBACK_SUCC_CNT,0)) AS SUCC_CNT
|
||||
FROM
|
||||
(SELECT
|
||||
SUM_YM
|
||||
,USER_SEQ
|
||||
,SUM(SND_CNT) AS SND_CNT
|
||||
,SUM(SUCC_CNT) AS SUCC_CNT
|
||||
FROM
|
||||
hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1=1
|
||||
SELECT S1.SUM_YM
|
||||
, S1.USER_SEQ
|
||||
, SUM(IFNULL(S1.SND_CNT, 0) + IFNULL(S2.FBACK_CNT, 0)) AS SND_CNT
|
||||
, SUM(IFNULL(S1.SUCC_CNT, 0) + IFNULL(S2.FBACK_SUCC_CNT, 0)) AS SUCC_CNT
|
||||
FROM (SELECT SUM_YM
|
||||
, USER_SEQ
|
||||
, SUM(SND_CNT) AS SND_CNT
|
||||
, SUM(SUCC_CNT) AS SUCC_CNT
|
||||
FROM hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1 = 1
|
||||
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
|
||||
AND SND_CH_CD = 'MMS'
|
||||
AND USER_SEQ = #{userSeq}
|
||||
GROUP BY SUM_YM, USER_SEQ) S1
|
||||
LEFT OUTER JOIN
|
||||
(SELECT
|
||||
SUM_YM
|
||||
,USER_SEQ
|
||||
,SUM(FBACK_CNT) AS FBACK_CNT
|
||||
,SUM(FBACK_SUCC_CNT) AS FBACK_SUCC_CNT
|
||||
FROM
|
||||
hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1=1
|
||||
(SELECT SUM_YM
|
||||
, USER_SEQ
|
||||
, SUM(FBACK_CNT) AS FBACK_CNT
|
||||
, SUM(FBACK_SUCC_CNT) AS FBACK_SUCC_CNT
|
||||
FROM hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1 = 1
|
||||
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
|
||||
AND SND_CH_CD = 'ALIMTALK'
|
||||
AND RPLCSND_CH_CD = 'MMS'
|
||||
@@ -345,21 +325,19 @@
|
||||
GROUP BY SUM_YM, USER_SEQ) S2
|
||||
ON S1.SUM_YM = S2.SUM_YM
|
||||
AND S1.USER_SEQ = S2.USER_SEQ
|
||||
GROUP BY S1.SUM_YM, S1.USER_SEQ ) AS M,
|
||||
GROUP BY S1.SUM_YM, S1.USER_SEQ) AS M,
|
||||
(
|
||||
SELECT
|
||||
SUM_YM
|
||||
,USER_SEQ
|
||||
,SUM(SND_CNT) AS SND_CNT
|
||||
,SUM(SUCC_CNT) AS SUCC_CNT
|
||||
FROM
|
||||
hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1=1
|
||||
SELECT SUM_YM
|
||||
, USER_SEQ
|
||||
, SUM(SND_CNT) AS SND_CNT
|
||||
, SUM(SUCC_CNT) AS SUCC_CNT
|
||||
FROM hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1 = 1
|
||||
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
|
||||
AND SND_CH_CD = 'ALIMTALK'
|
||||
AND USER_SEQ = #{userSeq}
|
||||
GROUP BY SUM_YM, USER_SEQ ) AS A
|
||||
WHERE 1=1
|
||||
GROUP BY SUM_YM, USER_SEQ) AS A
|
||||
WHERE 1 = 1
|
||||
AND ecm.SUM_YM = S.SUM_YM
|
||||
AND ecm.SUM_YM = L.SUM_YM
|
||||
AND ecm.SUM_YM = M.SUM_YM
|
||||
@@ -371,52 +349,43 @@
|
||||
ORDER BY ecm.SUM_YM DESC
|
||||
</select>
|
||||
|
||||
<select id="sendNumberListExcel" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailReqDto" resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetail">
|
||||
SELECT
|
||||
DATE_FORMAT(ecm.SUM_YM, '%Y-%m') AS SUM_YM
|
||||
<select id="sendNumberListExcel" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailReqDto"
|
||||
resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetail">
|
||||
SELECT DATE_FORMAT(ecm.SUM_YM, '%Y-%m') AS SUM_YM
|
||||
, ecm.SND_CNT
|
||||
, S.SND_CNT AS SND_CNT_S
|
||||
, L.SND_CNT AS SND_CNT_L
|
||||
, M.SND_CNT AS SND_CNT_M
|
||||
, A.SND_CNT AS SND_CNT_A
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
SUM_YM
|
||||
,USER_SEQ
|
||||
,SUM(IFNULL(SND_CNT,0) + IFNULL(FBACK_CNT,0)) AS SND_CNT
|
||||
FROM
|
||||
hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1=1
|
||||
FROM (
|
||||
SELECT SUM_YM
|
||||
, USER_SEQ
|
||||
, SUM(IFNULL(SND_CNT, 0) + IFNULL(FBACK_CNT, 0)) AS SND_CNT
|
||||
FROM hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1 = 1
|
||||
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
|
||||
AND USER_SEQ = #{userSeq}
|
||||
GROUP BY SUM_YM, USER_SEQ
|
||||
) ecm,
|
||||
(
|
||||
SELECT
|
||||
S1.SUM_YM
|
||||
,S1.USER_SEQ
|
||||
,SUM(IFNULL(S1.SND_CNT,0) + IFNULL(S2.FBACK_CNT,0)) AS SND_CNT
|
||||
FROM
|
||||
(SELECT
|
||||
SUM_YM
|
||||
,USER_SEQ
|
||||
,SUM(SND_CNT) AS SND_CNT
|
||||
FROM
|
||||
hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1=1
|
||||
SELECT S1.SUM_YM
|
||||
, S1.USER_SEQ
|
||||
, SUM(IFNULL(S1.SND_CNT, 0) + IFNULL(S2.FBACK_CNT, 0)) AS SND_CNT
|
||||
FROM (SELECT SUM_YM
|
||||
, USER_SEQ
|
||||
, SUM(SND_CNT) AS SND_CNT
|
||||
FROM hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1 = 1
|
||||
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
|
||||
AND SND_CH_CD = 'SMS'
|
||||
AND USER_SEQ = #{userSeq}
|
||||
GROUP BY SUM_YM, USER_SEQ) S1
|
||||
LEFT OUTER JOIN
|
||||
(SELECT
|
||||
SUM_YM
|
||||
,USER_SEQ
|
||||
,SUM(FBACK_CNT) AS FBACK_CNT
|
||||
FROM
|
||||
hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1=1
|
||||
(SELECT SUM_YM
|
||||
, USER_SEQ
|
||||
, SUM(FBACK_CNT) AS FBACK_CNT
|
||||
FROM hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1 = 1
|
||||
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
|
||||
AND SND_CH_CD = 'ALIMTALK'
|
||||
AND RPLCSND_CH_CD = 'SMS'
|
||||
@@ -424,32 +393,26 @@
|
||||
GROUP BY SUM_YM, USER_SEQ) S2
|
||||
ON S1.SUM_YM = S2.SUM_YM
|
||||
AND S1.USER_SEQ = S2.USER_SEQ
|
||||
GROUP BY S1.SUM_YM, S1.USER_SEQ ) S,
|
||||
GROUP BY S1.SUM_YM, S1.USER_SEQ) S,
|
||||
(
|
||||
SELECT
|
||||
S1.SUM_YM
|
||||
,S1.USER_SEQ
|
||||
,SUM(IFNULL(S1.SND_CNT,0) + IFNULL(S2.FBACK_CNT,0)) AS SND_CNT
|
||||
FROM
|
||||
(SELECT
|
||||
SUM_YM
|
||||
,USER_SEQ
|
||||
,SUM(SND_CNT) AS SND_CNT
|
||||
FROM
|
||||
hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1=1
|
||||
SELECT S1.SUM_YM
|
||||
, S1.USER_SEQ
|
||||
, SUM(IFNULL(S1.SND_CNT, 0) + IFNULL(S2.FBACK_CNT, 0)) AS SND_CNT
|
||||
FROM (SELECT SUM_YM
|
||||
, USER_SEQ
|
||||
, SUM(SND_CNT) AS SND_CNT
|
||||
FROM hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1 = 1
|
||||
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
|
||||
AND SND_CH_CD = 'LMS'
|
||||
AND USER_SEQ = #{userSeq}
|
||||
GROUP BY SUM_YM, USER_SEQ) S1
|
||||
LEFT OUTER JOIN
|
||||
(SELECT
|
||||
SUM_YM
|
||||
,USER_SEQ
|
||||
,SUM(FBACK_CNT) AS FBACK_CNT
|
||||
FROM
|
||||
hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1=1
|
||||
(SELECT SUM_YM
|
||||
, USER_SEQ
|
||||
, SUM(FBACK_CNT) AS FBACK_CNT
|
||||
FROM hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1 = 1
|
||||
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
|
||||
AND SND_CH_CD = 'ALIMTALK'
|
||||
AND RPLCSND_CH_CD = 'LMS'
|
||||
@@ -457,32 +420,26 @@
|
||||
GROUP BY SUM_YM, USER_SEQ) S2
|
||||
ON S1.SUM_YM = S2.SUM_YM
|
||||
AND S1.USER_SEQ = S2.USER_SEQ
|
||||
GROUP BY S1.SUM_YM, S1.USER_SEQ ) AS L,
|
||||
GROUP BY S1.SUM_YM, S1.USER_SEQ) AS L,
|
||||
(
|
||||
SELECT
|
||||
S1.SUM_YM
|
||||
,S1.USER_SEQ
|
||||
,SUM(IFNULL(S1.SND_CNT,0) + IFNULL(S2.FBACK_CNT,0)) AS SND_CNT
|
||||
FROM
|
||||
(SELECT
|
||||
SUM_YM
|
||||
,USER_SEQ
|
||||
,SUM(SND_CNT) AS SND_CNT
|
||||
FROM
|
||||
hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1=1
|
||||
SELECT S1.SUM_YM
|
||||
, S1.USER_SEQ
|
||||
, SUM(IFNULL(S1.SND_CNT, 0) + IFNULL(S2.FBACK_CNT, 0)) AS SND_CNT
|
||||
FROM (SELECT SUM_YM
|
||||
, USER_SEQ
|
||||
, SUM(SND_CNT) AS SND_CNT
|
||||
FROM hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1 = 1
|
||||
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
|
||||
AND SND_CH_CD = 'MMS'
|
||||
AND USER_SEQ = #{userSeq}
|
||||
GROUP BY SUM_YM, USER_SEQ) S1
|
||||
LEFT OUTER JOIN
|
||||
(SELECT
|
||||
SUM_YM
|
||||
,USER_SEQ
|
||||
,SUM(FBACK_CNT) AS FBACK_CNT
|
||||
FROM
|
||||
hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1=1
|
||||
(SELECT SUM_YM
|
||||
, USER_SEQ
|
||||
, SUM(FBACK_CNT) AS FBACK_CNT
|
||||
FROM hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1 = 1
|
||||
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
|
||||
AND SND_CH_CD = 'ALIMTALK'
|
||||
AND RPLCSND_CH_CD = 'MMS'
|
||||
@@ -490,20 +447,18 @@
|
||||
GROUP BY SUM_YM, USER_SEQ) S2
|
||||
ON S1.SUM_YM = S2.SUM_YM
|
||||
AND S1.USER_SEQ = S2.USER_SEQ
|
||||
GROUP BY S1.SUM_YM, S1.USER_SEQ ) AS M,
|
||||
GROUP BY S1.SUM_YM, S1.USER_SEQ) AS M,
|
||||
(
|
||||
SELECT
|
||||
SUM_YM
|
||||
,USER_SEQ
|
||||
,SUM(SND_CNT) AS SND_CNT
|
||||
FROM
|
||||
hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1=1
|
||||
SELECT SUM_YM
|
||||
, USER_SEQ
|
||||
, SUM(SND_CNT) AS SND_CNT
|
||||
FROM hubez_common.EZ_CUST_MSTAT
|
||||
WHERE 1 = 1
|
||||
AND SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH)
|
||||
AND SND_CH_CD = 'ALIMTALK'
|
||||
AND USER_SEQ = #{userSeq}
|
||||
GROUP BY SUM_YM, USER_SEQ ) AS A
|
||||
WHERE 1=1
|
||||
GROUP BY SUM_YM, USER_SEQ) AS A
|
||||
WHERE 1 = 1
|
||||
AND ecm.SUM_YM = S.SUM_YM
|
||||
AND ecm.SUM_YM = L.SUM_YM
|
||||
AND ecm.SUM_YM = M.SUM_YM
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
and UPPER(eci.CUST_NM) LIKE CONCAT('%' , UPPER(#{searchText1}) , '%')
|
||||
</when>
|
||||
<when test='searchType2 == "bizNo"'><!-- 검색조건 - 사업자번호 -->
|
||||
AND eci.BIZRNO LIKE CONCAT('%', #{searchText}, '%')
|
||||
AND eci.BIZRNO LIKE CONCAT('%', #{searchText1}, '%')
|
||||
</when>
|
||||
<when test='searchType2 == "tmpltNm"'><!-- 검색조건 - 인증코드 -->
|
||||
and UPPER(eat.TMPLT_NM) LIKE CONCAT('%' , UPPER(#{searchText1}) , '%')
|
||||
|
||||
@@ -545,7 +545,7 @@
|
||||
AND UPPER(esu.USER_NM) LIKE UPPER(CONCAT('%', #{searchText1}, '%'))
|
||||
</if>
|
||||
<if test="searchType3 == '03' and searchText1 != null and searchText1 != ''">
|
||||
AND esu.USER_SEQ = (SELECT PRNTS_USER_SEQ FROM hubez_common.EZ_SVC_USER WHERE USER_ID = #{searchText1} AND USER_TP_CD ='01')
|
||||
AND esu.USER_SEQ IN (SELECT PRNTS_USER_SEQ FROM hubez_common.EZ_SVC_USER WHERE USER_ID LIKE CONCAT('%', #{searchText1}, '%') AND USER_TP_CD ='01')
|
||||
</if>
|
||||
</if>
|
||||
</sql>
|
||||
@@ -952,4 +952,145 @@
|
||||
SELECT CONCAT('TESTENTRN', LPAD(hubez_common.FUN_NEXT_SEQ('TEST_SUBS_SEQ'), 11, 0)) as ENTR_NO
|
||||
</select>
|
||||
|
||||
<!-- 청약 상태 이력 저장 -->
|
||||
<insert id="insertSbscstHst" parameterType="kr.co.uplus.ez.api.custMgt.dto.SbscstHstDto">
|
||||
/* custMgt-mapper.xml(insertSbscstHst) */
|
||||
INSERT INTO hubez_common.EZ_SBSCST_HST(
|
||||
SUBS_ID
|
||||
,EFCT_ST_DT
|
||||
<if test="subsSttusCd != null and subsSttusCd != ''">
|
||||
,EFCT_FNS_DT
|
||||
</if>
|
||||
,PROD_CD
|
||||
,SUBS_STTUS_CD
|
||||
,REG_ID
|
||||
,REG_DT
|
||||
,CHG_ID
|
||||
,CHG_DT
|
||||
)VALUES(
|
||||
#{subsId}
|
||||
, #{efctStDt}
|
||||
<if test="subsSttusCd != null and subsSttusCd != ''">
|
||||
, STR_TO_DATE('9999-12-31', '%Y-%m-%d')
|
||||
</if>
|
||||
, #{prodCd}
|
||||
, #{subsSttusCd}
|
||||
, #{regId}
|
||||
, now()
|
||||
, #{regId}
|
||||
, now()
|
||||
)
|
||||
</insert>
|
||||
|
||||
<!-- 상품 정보 조회 -->
|
||||
<select id="getProdAmt" parameterType="String" resultType="kr.co.uplus.ez.api.custMgt.dto.ProdInfo">
|
||||
/* custMgt-mapper.xml(getProdAmt) */
|
||||
SELECT EPI.PROD_AMT
|
||||
FROM hubez_common.EZ_SUBS_INFO ESI
|
||||
INNER JOIN hubez_common.EZ_PROD_INFO EPI
|
||||
ON EPI.PROD_CD = ESI.PROD_CD
|
||||
WHERE USER_SEQ = #{userSeq}
|
||||
</select>
|
||||
|
||||
<!-- 주문 번호 채번 -->
|
||||
<select id="getOrder" resultType="String">
|
||||
/* custMgt-mapper.xml(getOrder) */
|
||||
SELECT hubez_admin.FUN_GET_ORDER();
|
||||
</select>
|
||||
|
||||
<!-- 오더 저장 -->
|
||||
<insert id="insertOrder" parameterType="kr.co.uplus.ez.api.custMgt.dto.OrderDto">
|
||||
/* custMgt-mapper.xml(insertOrder) */
|
||||
INSERT INTO hubez_admin.EZ_ORDER(
|
||||
ORDER_ID
|
||||
,ORDER_CRET_DT
|
||||
,ORDER_TY_CD
|
||||
,REG_ID
|
||||
)VALUES(
|
||||
#{orderId}
|
||||
, STR_TO_DATE(#{orderCretDt}, '%y%m%d%H%i%s')
|
||||
, #{orderTyCd}
|
||||
, #{regId}
|
||||
)
|
||||
</insert>
|
||||
|
||||
<!-- 차감 상세 저장 -->
|
||||
<insert id="insertLmtdctDtl" parameterType="kr.co.uplus.ez.api.custMgt.dto.LmtdctDtlDto">
|
||||
/* custMgt-mapper.xml(insertLmtdctDtl) */
|
||||
INSERT INTO hubez_admin.EZ_LMTDCT_DTL(
|
||||
ORDER_CRET_DT
|
||||
,USER_SEQ
|
||||
,LMT_YM
|
||||
,USE_YM
|
||||
,LMT_TP_CD
|
||||
,DDCT_TP_CD
|
||||
,DDCT_AMT
|
||||
,EXE_ORDER_ID
|
||||
,SNDDCT_ORDER_ID
|
||||
,REG_ID
|
||||
,REG_DT
|
||||
)VALUES(
|
||||
#{orderCretDt}
|
||||
, #{userSeq}
|
||||
, #{lmtYm}
|
||||
, #{useYm}
|
||||
, #{lmtTpCd}
|
||||
, #{ddctTpcd}
|
||||
, #{ddctAmt}
|
||||
, #{exeOrderId}
|
||||
, #{snddctOrderId}
|
||||
, #{regId}
|
||||
, now()
|
||||
)
|
||||
</insert>
|
||||
|
||||
<!-- 한도초기화 추가 -->
|
||||
<insert id="insertUserLmt" parameterType="kr.co.uplus.ez.api.custMgt.dto.UserLmtDto">
|
||||
/* custMgt-mapper.xml(insertUserLmt) */
|
||||
INSERT INTO hubez_admin.EZ_USER_LMT(
|
||||
USER_SEQ
|
||||
,LMT_YM
|
||||
,FX_LMT_AMT
|
||||
,MRT_LMT_AMT
|
||||
,CFWD_AMT
|
||||
,EXTNC_AMT
|
||||
,CFWD_RSTRT_BLNC
|
||||
,FX_BLNC
|
||||
,MRT_USE_AMT
|
||||
,SMS_USE_AMT
|
||||
,MMS_USE_AMT
|
||||
,LMS_USE_AMT
|
||||
,ATLK_USE_AMT
|
||||
,SMS_USE_CNT
|
||||
,LMS_USE_CNT
|
||||
,MMS_USE_CNT
|
||||
,ATLK_USE_CNT
|
||||
,REG_ID
|
||||
,REG_DT
|
||||
,CHG_ID
|
||||
,CHG_DT
|
||||
)VALUES(
|
||||
#{userSeq}
|
||||
, #{lmtYm}
|
||||
, #{fxLmtAmt}
|
||||
, #{mrtLmtAmt}
|
||||
, 0
|
||||
, 0
|
||||
, 0
|
||||
, #{fxBlnc}
|
||||
, 0
|
||||
, 0
|
||||
, 0
|
||||
, 0
|
||||
, 0
|
||||
, 0
|
||||
, 0
|
||||
, 0
|
||||
, 0
|
||||
, #{regId}
|
||||
,now()
|
||||
, #{chgId}
|
||||
,now()
|
||||
)
|
||||
</insert>
|
||||
</mapper>
|
||||
@@ -84,6 +84,7 @@
|
||||
ELSE 'N'
|
||||
END AS PW_CHANGE_CHECK
|
||||
, T1.AUT_CD
|
||||
, T1.TMP_PWD_YN
|
||||
FROM
|
||||
hubez_admin.EZ_ADM_USER T1
|
||||
LEFT JOIN hubez_imdb.EZ_IM_USER T2 ON T1.OPRTR_ID = T2.LOGIN_ID
|
||||
@@ -218,13 +219,13 @@
|
||||
<if test="autCd != null and autCd != ''">
|
||||
, AUT_CD = #{autCd}
|
||||
</if>
|
||||
<if test="authchrFailCnt != null and authchrFailCnt != ''">
|
||||
<if test="authchrFailCnt != null">
|
||||
, AUTHCHR_FAIL_CNT = #{authchrFailCnt}
|
||||
</if>
|
||||
<if test="lastLoginDt != null and lastLoginDt != ''">
|
||||
, LAST_LOGIN_DT = NOW()
|
||||
</if>
|
||||
<if test="loginFailCnt != null and loginFailCnt != ''">
|
||||
<if test="loginFailCnt != null">
|
||||
, LOGIN_FAIL_CNT = #{loginFailCnt}
|
||||
</if>
|
||||
<if test="pwdChgDt != null and pwdChgDt != ''">
|
||||
|
||||
@@ -238,8 +238,10 @@
|
||||
ess.SNDRNO AS sendNum
|
||||
FROM
|
||||
hubez_common.EZ_SVC_SNDRNO ess
|
||||
WHERE
|
||||
ess.CUST_SEQ = #{custSeq}
|
||||
INNER JOIN hubez_common.EZ_CUST_INFO eci
|
||||
ON
|
||||
ess.CUST_SEQ = eci.CUST_SEQ
|
||||
WHERE eci.BIZRNO = #{bregno}
|
||||
AND ess.SNDRNO IN
|
||||
<foreach collection="list" item="item" index="i" open="(" separator="," close=")">
|
||||
#{item.sendNum}
|
||||
|
||||
@@ -83,11 +83,10 @@
|
||||
AND T1.STTUS_CD = #{searchType2}
|
||||
</if>
|
||||
<if test="searchText1 != null and searchText1 != ''">
|
||||
AND T1.OPRTR_ID = #{searchText1}
|
||||
AND T1.OPRTR_ID LIKE CONCAT('%', #{searchText1}, '%')
|
||||
</if>
|
||||
<if test="searchText2 != null and searchText2 != ''">
|
||||
AND UPPER(T1.OPRTR_NM) LIKE UPPER('%' + #{searchText2} +
|
||||
'%')
|
||||
AND T1.OPRTR_NM LIKE CONCAT('%', #{searchText2}, '%')
|
||||
</if>
|
||||
</sql>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user