mirror of
http://git.mhez-qa.uplus.co.kr/hubez/hubez-admin.git
synced 2025-12-07 01:04:20 +09:00
발신번호 등록 수정
This commit is contained in:
@@ -67,7 +67,7 @@ header .user_wrap .user {
|
|||||||
display: -webkit-box;
|
display: -webkit-box;
|
||||||
display: -ms-flexbox;
|
display: -ms-flexbox;
|
||||||
display: flex;
|
display: flex;
|
||||||
width: 258px;
|
width: 308px; /*20220811 퍼블리싱 수정*/
|
||||||
height: 63px;
|
height: 63px;
|
||||||
background: url(../images/user-bg.png) no-repeat center/100% auto;
|
background: url(../images/user-bg.png) no-repeat center/100% auto;
|
||||||
}
|
}
|
||||||
@@ -405,7 +405,7 @@ header .user_wrap .user_info .logout {
|
|||||||
-ms-flex-align: end;
|
-ms-flex-align: end;
|
||||||
align-items: flex-end;
|
align-items: flex-end;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
margin-bottom: 50px;
|
margin: 0 40px 50px 40px; /*20220811 퍼블리싱 수정*/
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -844,7 +844,7 @@ header .user_wrap .user_info .logout {
|
|||||||
.pagination {
|
.pagination {
|
||||||
display:flex;
|
display:flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
margin-bottom: 50px;
|
margin: 65px 0 50px 0; /*20220811 퍼블리싱 수정*/
|
||||||
}
|
}
|
||||||
|
|
||||||
.pagination ul{
|
.pagination ul{
|
||||||
@@ -1373,6 +1373,10 @@ header .user_wrap .user_info .logout {
|
|||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.popup .button.Ty02 {
|
||||||
|
margin-left: 0px; padding: 0 20px;
|
||||||
|
}
|
||||||
|
|
||||||
/*customer popup*/
|
/*customer popup*/
|
||||||
|
|
||||||
.popup.b-popup{
|
.popup.b-popup{
|
||||||
@@ -1702,9 +1706,11 @@ header .user_wrap .user_info .logout {
|
|||||||
margin-bottom: 2%;
|
margin-bottom: 2%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* --- 삭제
|
||||||
.popup.popup_form table .registration ul li:nth-child(3n){
|
.popup.popup_form table .registration ul li:nth-child(3n){
|
||||||
margin-right: 0;
|
margin-right: 0;
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
.popup.popup_form table .registration ul li span{
|
.popup.popup_form table .registration ul li span{
|
||||||
min-height: 30px;
|
min-height: 30px;
|
||||||
|
|||||||
@@ -226,7 +226,8 @@ export default {
|
|||||||
let colGroup = '';
|
let colGroup = '';
|
||||||
colGroup += '<colgroup>';
|
colGroup += '<colgroup>';
|
||||||
if (this.isCheckbox == true) {
|
if (this.isCheckbox == true) {
|
||||||
colGroup += '<col style="width: 60px">';
|
//colGroup += '<col style="width: 60px">';
|
||||||
|
colGroup += '<col style="width: 4%">';
|
||||||
this.colsLen++;
|
this.colsLen++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -32,7 +32,7 @@
|
|||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="select_box id">
|
<div class="select_box">
|
||||||
<label for="subsSttusCd" class="label">상태</label>
|
<label for="subsSttusCd" class="label">상태</label>
|
||||||
<select name="subsSttusCd" id="subsSttusCd" v-model="grid.params.subsSttusCd" @keyup.enter="search">
|
<select name="subsSttusCd" id="subsSttusCd" v-model="grid.params.subsSttusCd" @keyup.enter="search">
|
||||||
<option value="" selected>전체</option>
|
<option value="" selected>전체</option>
|
||||||
@@ -266,6 +266,8 @@ export default {
|
|||||||
|
|
||||||
console.log('this.perPageCnt' + this.perPageCnt);
|
console.log('this.perPageCnt' + this.perPageCnt);
|
||||||
console.log(this.grid.params);
|
console.log(this.grid.params);
|
||||||
|
this.grid.params.subsStDt = this.startDate;
|
||||||
|
this.grid.params.subsEdDt = this.endDate;
|
||||||
this.grid.params.searchType = this.searchType
|
this.grid.params.searchType = this.searchType
|
||||||
this.$refs.table.search(this.grid.params, isKeep);
|
this.$refs.table.search(this.grid.params, isKeep);
|
||||||
this.sendStoreData();
|
this.sendStoreData();
|
||||||
@@ -321,7 +323,7 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
let today = moment().format('YYYYMMDDHHmmss');
|
let today = moment().format('YYYYMMDDHHmmss');
|
||||||
const saveFileName = `유치채널현황_${today}.xlsx`;
|
const saveFileName = `유치채널현황_${today}.xls`;
|
||||||
|
|
||||||
const data = await this.getExcelDataDown();
|
const data = await this.getExcelDataDown();
|
||||||
console.log('-------------------------');
|
console.log('-------------------------');
|
||||||
|
|||||||
@@ -24,7 +24,7 @@
|
|||||||
<option value="tmpltNm">템플릿명</option>
|
<option value="tmpltNm">템플릿명</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="input_box id">
|
<div class="input_box">
|
||||||
<label for="search" class="label">검색어</label>
|
<label for="search" class="label">검색어</label>
|
||||||
<input type="text" id="id1" placeholder="검색어 입력" v-model.trim="grid.params.searchText1"
|
<input type="text" id="id1" placeholder="검색어 입력" v-model.trim="grid.params.searchText1"
|
||||||
@keyup.enter="search" maxlength="100"/>
|
@keyup.enter="search" maxlength="100"/>
|
||||||
@@ -221,7 +221,7 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
let today = moment().format('YYYYMMDDHHmmss');
|
let today = moment().format('YYYYMMDDHHmmss');
|
||||||
const saveFileName = `알림톡템플릿목록_${today}.xlsx`;
|
const saveFileName = `알림톡템플릿목록_${today}.xls`;
|
||||||
|
|
||||||
const data = await this.getExcelDataDown();
|
const data = await this.getExcelDataDown();
|
||||||
let options = {
|
let options = {
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
<a href="javascript:void(0);" class="on">회원관리</a>
|
<a href="javascript:void(0);" class="on">회원관리</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="search_form">
|
<!-- <div class="search_form">-->
|
||||||
<div class="search_wrap">
|
<div class="search_wrap">
|
||||||
<div class="group">
|
<div class="group">
|
||||||
<div class="input_box cal">
|
<div class="input_box cal">
|
||||||
@@ -75,7 +75,7 @@
|
|||||||
<button type="button" class="button grey" @click="search">조회</button>
|
<button type="button" class="button grey" @click="search">조회</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<!-- </div>-->
|
||||||
|
|
||||||
<div class="info">
|
<div class="info">
|
||||||
<div class="count">총 <span>{{ totalItems.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }}</span>건
|
<div class="count">총 <span>{{ totalItems.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }}</span>건
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
<a href="javascript:void(0);" @click="toMove('memberList')">회원관리</a>
|
<a href="javascript:void(0);" @click="toMove('memberList')">회원관리</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="search_form">
|
<!-- <div class="search_form">-->
|
||||||
<div class="search_wrap">
|
<div class="search_wrap">
|
||||||
<div class="group">
|
<div class="group">
|
||||||
<div class="input_box cal">
|
<div class="input_box cal">
|
||||||
@@ -40,7 +40,7 @@
|
|||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="select_box id">
|
<div class="select_box">
|
||||||
<label for="right" class="label">상태</label>
|
<label for="right" class="label">상태</label>
|
||||||
<select name="" id="" v-model="searchType1" @keyup.enter="search">
|
<select name="" id="" v-model="searchType1" @keyup.enter="search">
|
||||||
<option value="" selected>전체</option>
|
<option value="" selected>전체</option>
|
||||||
@@ -79,7 +79,7 @@
|
|||||||
<button type="button" class="button grey" @click="search">조회</button>
|
<button type="button" class="button grey" @click="search">조회</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<!-- </div>-->
|
||||||
|
|
||||||
<div class="info">
|
<div class="info">
|
||||||
<div class="count">총 <span>{{ totalItems.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }}</span>건
|
<div class="count">총 <span>{{ totalItems.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }}</span>건
|
||||||
@@ -353,7 +353,7 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
let today = moment().format('YYYYMMDDHHmmss');
|
let today = moment().format('YYYYMMDDHHmmss');
|
||||||
const saveFileName = `청약고객정보_${today}.xlsx`;
|
const saveFileName = `청약고객정보_${today}.xls`;
|
||||||
|
|
||||||
const data = await this.getExcelDataDown();
|
const data = await this.getExcelDataDown();
|
||||||
let options = {
|
let options = {
|
||||||
|
|||||||
@@ -3,8 +3,8 @@
|
|||||||
<div class="contents">
|
<div class="contents">
|
||||||
<div class="contents_wrap">
|
<div class="contents_wrap">
|
||||||
<div class="top_wrap">
|
<div class="top_wrap">
|
||||||
<h3 class="title">실시간발송현황</h3>
|
<h3 class="title">실시간발송내역</h3>
|
||||||
<p class="breadcrumb">모니터링 > 실시간발송현황</p>
|
<p class="breadcrumb">모니터링 > 실시간발송내역</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="title_wrap">
|
<div class="title_wrap">
|
||||||
<h3>발송집계</h3>
|
<h3>발송집계</h3>
|
||||||
|
|||||||
@@ -21,7 +21,7 @@
|
|||||||
></vuejs-datepicker>
|
></vuejs-datepicker>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="select_box id">
|
<div class="select_box">
|
||||||
<label for="right" class="label">요청채널</label>
|
<label for="right" class="label">요청채널</label>
|
||||||
<select name="" id="" v-model="grid.params.searchType1" @keyup.enter="search">
|
<select name="" id="" v-model="grid.params.searchType1" @keyup.enter="search">
|
||||||
<option value="" selected>전체</option>
|
<option value="" selected>전체</option>
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
></vuejs-datepicker>
|
></vuejs-datepicker>
|
||||||
</div>
|
</div>
|
||||||
<button type="button" class="button grey btn-a" @click="todayDate">오늘</button>
|
<button type="button" class="button grey btn-a" @click="todayDate">오늘</button>
|
||||||
<div class="select_box id">
|
<div class="select_box">
|
||||||
<label for="right" class="label">차단사유</label>
|
<label for="right" class="label">차단사유</label>
|
||||||
<select name="" id="" v-model="blckRsnCd">
|
<select name="" id="" v-model="blckRsnCd">
|
||||||
<option value="" selected>전체</option>
|
<option value="" selected>전체</option>
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<h3 class="title">메시지 차단</h3>
|
<h3 class="title">메시지 차단</h3>
|
||||||
<p class="breadcrumb">리스크관리 > 메시지 차단</p>
|
<p class="breadcrumb">리스크관리 > 메시지 차단</p>
|
||||||
</div>
|
</div>
|
||||||
<form autocomplete="off" class="search_form">
|
<!-- <form autocomplete="off" class="search_form">-->
|
||||||
<div class="search_wrap">
|
<div class="search_wrap">
|
||||||
<div class="input_box">
|
<div class="input_box">
|
||||||
<label for="regId" class="label">등록자</label>
|
<label for="regId" class="label">등록자</label>
|
||||||
@@ -32,7 +32,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<button type="button" class="button grey" @click="search">조회</button>
|
<button type="button" class="button grey" @click="search">조회</button>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
<!-- </form>-->
|
||||||
<div class="info">
|
<div class="info">
|
||||||
<div class="count">총 <span> {{ totalItems.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }} </span>건
|
<div class="count">총 <span> {{ totalItems.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }} </span>건
|
||||||
<div class="select_box NumberSe">
|
<div class="select_box NumberSe">
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<h3 class="title">080 수신번호 차단</h3>
|
<h3 class="title">080 수신번호 차단</h3>
|
||||||
<p class="breadcrumb">리스크관리 > 080 수신번호 차단</p>
|
<p class="breadcrumb">리스크관리 > 080 수신번호 차단</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="search_form">
|
<!-- <div class="search_form">-->
|
||||||
<div class="search_wrap">
|
<div class="search_wrap">
|
||||||
<div class="input_box">
|
<div class="input_box">
|
||||||
<label for="search" class="label">고객사</label>
|
<label for="search" class="label">고객사</label>
|
||||||
@@ -27,7 +27,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<button type="button" class="button grey" @click="search">조회</button>
|
<button type="button" class="button grey" @click="search">조회</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<!-- </div>-->
|
||||||
<div class="info">
|
<div class="info">
|
||||||
<div class="count">총 <span> {{ totalItems.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }} </span>건
|
<div class="count">총 <span> {{ totalItems.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }} </span>건
|
||||||
<div class="select_box NumberSe">
|
<div class="select_box NumberSe">
|
||||||
|
|||||||
@@ -65,13 +65,21 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<th>제출서류</th>
|
<th>제출서류</th>
|
||||||
<td class="sender">
|
<td class="sender">
|
||||||
<a v-for="(item, idx) in docList" v-if="item.docTpCd !== '06'">{{ item.docTitle }}</a>
|
<a href="javascript:void(0);" @click="download(item.filePath, item.fileNm, item.docTitle)" v-for="(item, idx) in docList" v-if="item.docTpCd !== '06' && item.docTpCd !== '07' && item.docTpCd !== '13' && item.docTpCd !== '14'">{{ item.docTitle }} <br></a>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th>사업자등록증</th>
|
<th>사업자등록증</th>
|
||||||
<td class="sender">
|
<td class="sender">
|
||||||
<p v-for="(item, idx) in docList" v-if="item.docTpCd === '06'">{{ item.docTitle }}</p>
|
<a href="javascript:void(0);" @click="download(item.filePath, item.fileNm, item.docTitle)" v-for="(item, idx) in docList" v-if="item.docTpCd === '06'">{{ item.docTitle }}<br></a>
|
||||||
|
<a href="javascript:void(0);" @click="download(item.filePath, item.fileNm, item.docTitle)" v-for="(item, idx) in docList" v-if="item.docTpCd === '07'">{{ item.docTitle }}<br></a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>본인확인</th>
|
||||||
|
<td class="sender">
|
||||||
|
<a href="javascript:void(0);" @click="download(item.filePath, item.fileNm, item.docTitle)" v-for="(item, idx) in docList" v-if="item.docTpCd === '13'">{{ item.docTitle }}<br></a>
|
||||||
|
<a href="javascript:void(0);" @click="download(item.filePath, item.fileNm, item.docTitle)" v-for="(item, idx) in docList" v-if="item.docTpCd === '14'">{{ item.docTitle }}<br></a>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
@@ -108,6 +116,7 @@ export default {
|
|||||||
return{
|
return{
|
||||||
row: {},
|
row: {},
|
||||||
regReqNo:'',
|
regReqNo:'',
|
||||||
|
docNo:'',
|
||||||
reqNo:'',
|
reqNo:'',
|
||||||
seqNo:'',
|
seqNo:'',
|
||||||
cmpltDt:'',
|
cmpltDt:'',
|
||||||
@@ -120,6 +129,7 @@ export default {
|
|||||||
memo:'',
|
memo:'',
|
||||||
docList: [],
|
docList: [],
|
||||||
numList: [],
|
numList: [],
|
||||||
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
components: {
|
components: {
|
||||||
@@ -134,6 +144,14 @@ export default {
|
|||||||
this.formReset();
|
this.formReset();
|
||||||
},
|
},
|
||||||
methods :{
|
methods :{
|
||||||
|
//파일 다운로드
|
||||||
|
download(filePath, fileName, docTitle){
|
||||||
|
this.row = {}
|
||||||
|
this.row.docTitle = docTitle
|
||||||
|
this.row.filePath = filePath
|
||||||
|
this.row.fileNm = fileName
|
||||||
|
sendNumMgtApi.fileDownload(this.row);
|
||||||
|
},
|
||||||
// 모달 띄우기
|
// 모달 띄우기
|
||||||
apprDetailPopOpen(props){
|
apprDetailPopOpen(props){
|
||||||
|
|
||||||
@@ -148,20 +166,24 @@ export default {
|
|||||||
try {
|
try {
|
||||||
console.log(props)
|
console.log(props)
|
||||||
this.row.regReqNo = props.regReqNo
|
this.row.regReqNo = props.regReqNo
|
||||||
|
this.row.docNo = props.docNo
|
||||||
const response = await sendNumMgtApi.apprDetail(this.row);
|
const response = await sendNumMgtApi.apprDetail(this.row);
|
||||||
const result = response.data;
|
const result = response.data;
|
||||||
console.log(result);
|
console.log(result);
|
||||||
if (result != null && result.retCode == "0000") {
|
if (result != null && result.retCode == "0000") {
|
||||||
|
|
||||||
this.regRegNo = result.data.regReqNo
|
this.regReqNo = result.data.regReqNo
|
||||||
this.reqNo = result.data.regReqNo
|
this.docNo = result.data.docNo
|
||||||
|
// this.reqNo = result.data.regNo
|
||||||
|
// this.fileNm = result.data.fileNm
|
||||||
|
// this.filePath = result.data.filePath
|
||||||
|
this.docTitle = result.data.docTitle
|
||||||
this.regDt = result.data.regDt
|
this.regDt = result.data.regDt
|
||||||
this.custNm = result.data.custNm
|
this.custNm = result.data.custNm
|
||||||
this.adminId = result.data.adminId
|
this.adminId = result.data.adminId
|
||||||
this.chgDt = result.data.chgDt
|
this.chgDt = result.data.chgDt
|
||||||
this.bizrno = result.data.bizrno.substring(0,3)+'-'+result.data.bizrno.substring(3,5)+'-'+result.data.bizrno.substring(5,10)
|
this.bizrno = result.data.bizrno.substring(0,3)+'-'+result.data.bizrno.substring(3,5)+'-'+result.data.bizrno.substring(5,10)
|
||||||
this.nmineeDivCd = result.data.nmineeDivCd
|
this.nmineeDivCd = result.data.nmineeDivCd
|
||||||
this.regRegNo = result.data.regRegNo
|
|
||||||
this.slfAuthHp = result.data.slfAuthHp
|
this.slfAuthHp = result.data.slfAuthHp
|
||||||
this.docList = result.data.docList
|
this.docList = result.data.docList
|
||||||
this.numList = result.data.numList
|
this.numList = result.data.numList
|
||||||
|
|||||||
@@ -57,7 +57,7 @@
|
|||||||
<th>제출서류</th>
|
<th>제출서류</th>
|
||||||
<td>
|
<td>
|
||||||
<div class="sender">
|
<div class="sender">
|
||||||
<p v-for="(item, idx) in list" v-if="item.docTpcd !== '06'">{{ item.docTitle }} ({{ item.fileSize }}KB)</p>
|
<p v-for="(item, idx) in docList" v-if="item.docTpCd !== '06' && item.docTpCd !== '07' && item.docTpCd !== '13' && item.docTpCd !== '14'">{{ item.docTitle }} ({{ formatFileSize(item.fileSize) }})</p>
|
||||||
</div>
|
</div>
|
||||||
<p class="file">파일형식 : jpg, png, pdf, tiff (최대 5MB)</p>
|
<p class="file">파일형식 : jpg, png, pdf, tiff (최대 5MB)</p>
|
||||||
</td>
|
</td>
|
||||||
@@ -66,8 +66,18 @@
|
|||||||
<th>사업자등록증</th>
|
<th>사업자등록증</th>
|
||||||
<td>
|
<td>
|
||||||
<div class="sender">
|
<div class="sender">
|
||||||
<!-- <p>사업자등록증.jpg (00KB)</p>-->
|
<p v-for="(item, idx) in docList" v-if="item.docTpCd === '06'">{{ item.docTitle }} ({{ formatFileSize(item.fileSize) }}) <br></p>
|
||||||
<p v-for="(item, idx) in list" v-if="item.docTpCd === '06'">{{ item.docTitle }} ({{ item.fileSize }}KB)</p>
|
<p v-for="(item, idx) in docList" v-if="item.docTpCd === '07'">{{ item.docTitle }} ({{ formatFileSize(item.fileSize) }})</p>
|
||||||
|
</div>
|
||||||
|
<p class="file">파일형식 : jpg, png, pdf, tiff (최대 5MB)</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>본인 확인</th>
|
||||||
|
<td>
|
||||||
|
<div class="sender">
|
||||||
|
<p v-for="(item, idx) in docList" v-if="item.docTpCd === '13'">{{ item.docTitle }} ({{ formatFileSize(item.fileSize) }}) <br></p>
|
||||||
|
<p v-for="(item, idx) in docList" v-if="item.docTpCd === '14'">{{ item.docTitle }} ({{ formatFileSize(item.fileSize) }})</p>
|
||||||
</div>
|
</div>
|
||||||
<p class="file">파일형식 : jpg, png, pdf, tiff (최대 5MB)</p>
|
<p class="file">파일형식 : jpg, png, pdf, tiff (최대 5MB)</p>
|
||||||
</td>
|
</td>
|
||||||
@@ -107,8 +117,9 @@ export default {
|
|||||||
sndrno:'',
|
sndrno:'',
|
||||||
sttusCd:'',
|
sttusCd:'',
|
||||||
regDt:'',
|
regDt:'',
|
||||||
list: [],
|
docList: [],
|
||||||
regRegNo:'',
|
regRegNo:'',
|
||||||
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
components: {
|
components: {
|
||||||
@@ -125,6 +136,15 @@ export default {
|
|||||||
|
|
||||||
},
|
},
|
||||||
methods :{
|
methods :{
|
||||||
|
formatFileSize(bytes,decimalPoint) {
|
||||||
|
if(bytes == 0) return '0 Bytes';
|
||||||
|
var k = 1000,
|
||||||
|
dm = decimalPoint || 2,
|
||||||
|
sizes = ['Bytes', 'KB', 'MB'],
|
||||||
|
i = Math.floor(Math.log(bytes) / Math.log(k));
|
||||||
|
return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + ' ' + sizes[i];
|
||||||
|
},
|
||||||
|
|
||||||
// 모달 띄우기
|
// 모달 띄우기
|
||||||
numberDetailPopOpen(props){
|
numberDetailPopOpen(props){
|
||||||
|
|
||||||
@@ -162,7 +182,7 @@ export default {
|
|||||||
this.sttusCd = result.data.sttusCd
|
this.sttusCd = result.data.sttusCd
|
||||||
this.regDt = result.data.regDt
|
this.regDt = result.data.regDt
|
||||||
// result.data.list.forEach()
|
// result.data.list.forEach()
|
||||||
this.list = result.data.list
|
this.docList = result.data.list
|
||||||
this.regRegNo = result.data.regRegNo
|
this.regRegNo = result.data.regRegNo
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
|||||||
@@ -58,41 +58,94 @@
|
|||||||
<tr v-show="bizrAuthYn !== 'Y'">
|
<tr v-show="bizrAuthYn !== 'Y'">
|
||||||
<th>제출서류</th>
|
<th>제출서류</th>
|
||||||
<td>
|
<td>
|
||||||
|
<p class="file">파일형식 : jpg, png, pdf, tiff (최대 5MB)</p>
|
||||||
<div class="attach" v-show="fileType === 2">
|
<div class="attach" v-show="fileType === 2">
|
||||||
<p class="essential list"><span>*</span>위임-수임관계 확인 서류</p>
|
<p class="essential list"><span>*</span>위임-수임사간 관계 확인 문서</p>
|
||||||
<input type="file" ref="trustFile" style="display: none" @change="readTrustFile"
|
<input type="file" ref="delegationFile" style="display: none" @change="readDelegationFile"
|
||||||
accept=".jpg,.png,.pdf,.tiff"/>
|
accept=".jpg,.png,.pdf,.tiff"/>
|
||||||
<button class="button btn-p2color" @click="$refs.trustFile.click()">파일업로드</button>
|
<button class="button btn-p2color" @click="$refs.delegationFile.click()">파일업로드</button>
|
||||||
<p class="file" id="trustNm"></p>
|
<p class="file" id="delegationNm"></p>
|
||||||
</div>
|
</div>
|
||||||
<div class="attach" v-show="fileType === 2">
|
<div class="attach" v-show="fileType === 2">
|
||||||
<p class="essential list"><span>*</span>위임장</p>
|
<p class="essential list"><span>*</span>위임장</p>
|
||||||
<input type="file" ref="warrantFile" style="display: none" @change="readWarrantFile"
|
<input type="file" ref="attorneyFile" style="display: none" @change="readAttorneyFile"
|
||||||
accept=".jpg,.png,.pdf,.tiff"/>
|
accept=".jpg,.png,.pdf,.tiff"/>
|
||||||
<button class="button btn-p2color" @click="$refs.warrantFile.click()">파일업로드</button>
|
<button class="button btn-p2color" @click="$refs.attorneyFile.click()">파일업로드</button>
|
||||||
<p class="file" id="warrantNm"></p>
|
<p class="file" id="attorneyNm"></p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="attach" v-show="fileType === 2">
|
<div class="attach" v-show="fileType === 2">
|
||||||
<p class="essential list"><span>*</span>대리인 신분증 사본 인증</p>
|
<p class="essential list"><span>*</span>법인인감증명서</p>
|
||||||
<input type="file" ref="deputyFile" style="display: none" @change="readDeputyFile"
|
<input type="file" ref="corporateCertificateFile" style="display: none" @change="readCorporateCertificateFile"
|
||||||
accept=".jpg,.png,.pdf,.tiff"/>
|
accept=".jpg,.png,.pdf,.tiff"/>
|
||||||
<button class="button btn-p2color" @click="$refs.deputyFile.click()">파일업로드</button>
|
<button class="button btn-p2color" @click="$refs.corporateCertificateFile.click()">파일업로드</button>
|
||||||
<p class="file" id="deputyNm"></p>
|
<p class="file" id="corporateCertificateNm"></p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="attach" v-show="fileType === 2">
|
||||||
|
<p class="essential list"><span>*</span>위임사 사업자등록증</p>
|
||||||
|
<input type="file" ref="delegatedBusinessFile" style="display: none" @change="readDelegatedBusinessFile"
|
||||||
|
accept=".jpg,.png,.pdf,.tiff"/>
|
||||||
|
<button class="button btn-p2color" @click="$refs.delegatedBusinessFile.click()">파일업로드</button>
|
||||||
|
<p class="file" id="delegatedBusinessNm"></p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="attach" v-show="fileType === 2">
|
||||||
|
<p class="essential list"><span>*</span>수임사 사업자등록증</p>
|
||||||
|
<input type="file" ref="authorizedBusinessFile" style="display: none" @change="readAuthorizedBusinessFile"
|
||||||
|
accept=".jpg,.png,.pdf,.tiff"/>
|
||||||
|
<button class="button btn-p2color" @click="$refs.authorizedBusinessFile.click()">파일업로드</button>
|
||||||
|
<p class="file" id="authorizedBusinessNm"></p>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="attach">
|
<div class="attach">
|
||||||
<p class="essential list"><span>*</span>통신서비스 이용증명원</p>
|
<p v-if="fileType === 1" class="essential list">통신서비스 이용증명원</p>
|
||||||
|
<p v-if="fileType === 2" class="essential list">발신번호의 통신서비스 이용증명원</p>
|
||||||
<input type="file" ref="communicationFile" style="display: none" @change="readCommunicationFile"
|
<input type="file" ref="communicationFile" style="display: none" @change="readCommunicationFile"
|
||||||
accept=".jpg,.png,.pdf,.tiff"/>
|
accept=".jpg,.png,.pdf,.tiff"/>
|
||||||
<button class="button btn-p2color" @click="$refs.communicationFile.click()">파일업로드</button>
|
<button class="button btn-p2color" @click="$refs.communicationFile.click()">파일업로드</button>
|
||||||
<p class="file" id="communicationNm"></p>
|
<p class="file" id="communicationNm"></p>
|
||||||
</div>
|
</div>
|
||||||
<div class="attach">
|
|
||||||
<p class="essential list"><span>*</span>재직증명서</p>
|
<div class="attach" v-show="fileType === 1">
|
||||||
|
<p class="essential list"><span></span>재직증명서</p>
|
||||||
<input type="file" ref="tenureFile" style="display: none" @change="readTenureFile"
|
<input type="file" ref="tenureFile" style="display: none" @change="readTenureFile"
|
||||||
accept=".jpg,.png,.pdf,.tiff"/>
|
accept=".jpg,.png,.pdf,.tiff"/>
|
||||||
<button class="button btn-p2color" @click="$refs.tenureFile.click()">파일업로드</button>
|
<button class="button btn-p2color" @click="$refs.tenureFile.click()">파일업로드</button>
|
||||||
<p class="file" id="tenureNm"></p>
|
<p class="file" id="tenureNm"></p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="attach" v-show="fileType === 2">
|
||||||
|
<p class="essential list"><span></span>위임사 재직증명서(임직원 신청시)</p>
|
||||||
|
<input type="file" ref="delegateCertificateFile" style="display: none" @change="readDelegateCertificateFile"
|
||||||
|
accept=".jpg,.png,.pdf,.tiff"/>
|
||||||
|
<button class="button btn-p2color" @click="$refs.delegateCertificateFile.click()">파일업로드</button>
|
||||||
|
<p class="file" id="delegateCertificateNm"></p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="attach" v-show="fileType === 2">
|
||||||
|
<p class="essential list"><span></span>위임사 신분증(임직원 신청시)</p>
|
||||||
|
<input type="file" ref="delegatedIdentificationFile" style="display: none" @change="readDelegatedIdentificationFile"
|
||||||
|
accept=".jpg,.png,.pdf,.tiff"/>
|
||||||
|
<button class="button btn-p2color" @click="$refs.delegatedIdentificationFile.click()">파일업로드</button>
|
||||||
|
<p class="file" id="delegatedIdentificationNm"></p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>사업자 등록증</th>
|
||||||
|
<td v-show="bizrAuthYn !== 'Y'">
|
||||||
|
<p class="file">파일형식 : jpg, png, pdf, tiff (최대 5MB)</p>
|
||||||
|
<div class="attach" v-show="fileType === 1">
|
||||||
|
<p class="essential list"><span>*</span>사업자등록증</p>
|
||||||
|
<input type="file" ref="businessFile" style="display: none" @change="readBusinessFile"
|
||||||
|
accept=".jpg,.png,.pdf,.tiff"/>
|
||||||
|
<button class="button btn-p2color" @click="$refs.businessFile.click()">파일업로드</button>
|
||||||
|
<p class="file" id="businessNm"></p>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="attach" v-show="fileType === 2">
|
<div class="attach" v-show="fileType === 2">
|
||||||
<p class="essential list"><span>*</span>사업자등록증</p>
|
<p class="essential list"><span>*</span>사업자등록증</p>
|
||||||
<input type="file" ref="otherBusinessFile" style="display: none" @change="readOtherBusinessFile"
|
<input type="file" ref="otherBusinessFile" style="display: none" @change="readOtherBusinessFile"
|
||||||
@@ -100,23 +153,31 @@
|
|||||||
<button class="button btn-p2color" @click="$refs.otherBusinessFile.click()">파일업로드</button>
|
<button class="button btn-p2color" @click="$refs.otherBusinessFile.click()">파일업로드</button>
|
||||||
<p class="file" id="otherBusinessNm"></p>
|
<p class="file" id="otherBusinessNm"></p>
|
||||||
</div>
|
</div>
|
||||||
<p class="file">파일형식 : jpg, png, pdf, tiff (최대 5MB)</p>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<th>사업자 등록증</th>
|
|
||||||
<td v-show="bizrAuthYn !== 'Y'">
|
|
||||||
<div class="attach">
|
|
||||||
<p class="essential list"><span>*</span>사업자등록증</p>
|
|
||||||
<input type="file" ref="businessFile" style="display: none" @change="readBusinessFile"
|
|
||||||
accept=".jpg,.png,.pdf,.tiff"/>
|
|
||||||
<button class="button btn-p2color" @click="$refs.businessFile.click()">파일업로드</button>
|
|
||||||
<p class="file" id="businessNm"></p>
|
|
||||||
</div>
|
|
||||||
<p class="file">파일형식 : jpg, png, pdf, tiff (최대 5MB)</p>
|
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<td class="red" v-show="bizrAuthYn === 'Y'">인증 완료</td>
|
<td class="red" v-show="bizrAuthYn === 'Y'">인증 완료</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr v-show="bizrAuthYn !== 'Y'">
|
||||||
|
<th>본인확인</th>
|
||||||
|
<td>
|
||||||
|
<p class="file">파일형식 : jpg, png, pdf, tiff (최대 5MB)</p>
|
||||||
|
<div class="attach">
|
||||||
|
<p class="essential list"><span></span>신분증</p>
|
||||||
|
<input type="file" ref="identificationCardFile" style="display: none" @change="readIdentificationCardFile"
|
||||||
|
accept=".jpg,.png,.pdf,.tiff"/>
|
||||||
|
<button class="button btn-p2color" @click="$refs.identificationCardFile.click()">파일업로드</button>
|
||||||
|
<p class="file" id="identificationCardNm"></p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="attach">
|
||||||
|
<p class="essential list"><span></span>재직증명서</p>
|
||||||
|
<input type="file" ref="identificationEvidenceFile" style="display: none" @change="readIdentificationEvidenceFile"
|
||||||
|
accept=".jpg,.png,.pdf,.tiff"/>
|
||||||
|
<button class="button btn-p2color" @click="$refs.identificationEvidenceFile.click()">파일업로드</button>
|
||||||
|
<p class="file" id="identificationEvidenceNm"></p>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<div class="popup-btn2">
|
<div class="popup-btn2">
|
||||||
@@ -156,13 +217,19 @@ export default {
|
|||||||
numberInputs: [],
|
numberInputs: [],
|
||||||
saveSendNums: [],
|
saveSendNums: [],
|
||||||
fileType: 1,
|
fileType: 1,
|
||||||
trustFile: null,
|
|
||||||
warrantFile: null,
|
|
||||||
deputyFile: null,
|
|
||||||
tenureFile: null,
|
|
||||||
businessFile: null,
|
|
||||||
communicationFile: null,
|
communicationFile: null,
|
||||||
|
tenureFile: null,
|
||||||
|
delegationFile: null,
|
||||||
|
attorneyFile: null,
|
||||||
|
businessFile: null,
|
||||||
otherBusinessFile: null,
|
otherBusinessFile: null,
|
||||||
|
delegatedIdentificationFile: null,
|
||||||
|
delegateCertificateFile: null,
|
||||||
|
delegatedBusinessFile: null,
|
||||||
|
authorizedBusinessFile: null,
|
||||||
|
corporateCertificateFile: null,
|
||||||
|
identificationCardFile: null,
|
||||||
|
identificationEvidenceFile: null,
|
||||||
childData: 20,
|
childData: 20,
|
||||||
reqCnt: 0,
|
reqCnt: 0,
|
||||||
}
|
}
|
||||||
@@ -233,10 +300,14 @@ export default {
|
|||||||
let fileExt = file.name.substring(
|
let fileExt = file.name.substring(
|
||||||
file.name.lastIndexOf(".") + 1
|
file.name.lastIndexOf(".") + 1
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
// 소문자로 변환
|
// 소문자로 변환
|
||||||
fileExt = fileExt.toLowerCase()
|
fileExt = fileExt.toLowerCase()
|
||||||
|
var fileSize = file.size
|
||||||
|
var maxSize = 5 * 1024 * 1024;
|
||||||
// 이미지 확장자 체크, jpg, png, pdf, tiff
|
// 이미지 확장자 체크, jpg, png, pdf, tiff
|
||||||
if (["jpg", "png", "pdf", "tiff"].includes(fileExt)) {
|
if (["jpg", "png", "pdf", "tiff"].includes(fileExt) && fileSize <= maxSize) {
|
||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
this.row.title = '발신번호 파일 업로드';
|
this.row.title = '발신번호 파일 업로드';
|
||||||
@@ -246,13 +317,13 @@ export default {
|
|||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// 위임-수임
|
// 위임-수임사간 관계 확인 문서
|
||||||
readTrustFile(event) {
|
readDelegationFile(event) {
|
||||||
const file = event.target.files[0];
|
const file = event.target.files[0];
|
||||||
|
|
||||||
if(this.fileExtCheck(file)) {
|
if(this.fileExtCheck(file)) {
|
||||||
if (file != null) {
|
if (file != null) {
|
||||||
this.delTrustFile(event);
|
this.delDelegationFile(event);
|
||||||
}
|
}
|
||||||
|
|
||||||
// inner Html.
|
// inner Html.
|
||||||
@@ -260,30 +331,30 @@ export default {
|
|||||||
const text = document.createElement('p');
|
const text = document.createElement('p');
|
||||||
text.innerText = file.name;
|
text.innerText = file.name;
|
||||||
button.addEventListener('click', () => {
|
button.addEventListener('click', () => {
|
||||||
this.delTrustFile(event);
|
this.delDelegationFile(event);
|
||||||
})
|
})
|
||||||
button.innerText = 'X'
|
button.innerText = 'X'
|
||||||
const root = document.getElementById('trustNm');
|
const root = document.getElementById('delegationNm');
|
||||||
root.appendChild(text);
|
root.appendChild(text);
|
||||||
root.appendChild(button);
|
root.appendChild(button);
|
||||||
this.trustFile = file;
|
this.delegationFile = file;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
delTrustFile(event) {
|
delDelegationFile(event) {
|
||||||
const file = event.target.files[0];
|
const file = event.target.files[0];
|
||||||
this.$refs.trustFile.value = null;
|
this.$refs.delegationFile.value = null;
|
||||||
let element = document.getElementById("trustNm");
|
let element = document.getElementById("delegationNm");
|
||||||
while (element.firstChild) {
|
while (element.firstChild) {
|
||||||
element.removeChild(element.firstChild);
|
element.removeChild(element.firstChild);
|
||||||
}
|
}
|
||||||
this.trustFile = null;
|
this.delegationFile = null;
|
||||||
},
|
},
|
||||||
// 위임장
|
// 위임장
|
||||||
readWarrantFile(event) {
|
readAttorneyFile(event) {
|
||||||
const file = event.target.files[0];
|
const file = event.target.files[0];
|
||||||
if(this.fileExtCheck(file)) {
|
if(this.fileExtCheck(file)) {
|
||||||
if (file != null) {
|
if (file != null) {
|
||||||
this.delWarrantFile(event);
|
this.delAttorneyFile(event);
|
||||||
}
|
}
|
||||||
|
|
||||||
// inner Html.
|
// inner Html.
|
||||||
@@ -291,30 +362,31 @@ export default {
|
|||||||
const text = document.createElement('p');
|
const text = document.createElement('p');
|
||||||
text.innerText = file.name;
|
text.innerText = file.name;
|
||||||
button.addEventListener('click', () => {
|
button.addEventListener('click', () => {
|
||||||
this.delWarrantFile(event);
|
this.delAttorneyFile(event);
|
||||||
})
|
})
|
||||||
button.innerText = 'X'
|
button.innerText = 'X'
|
||||||
const root = document.getElementById('warrantNm');
|
const root = document.getElementById('attorneyNm');
|
||||||
root.appendChild(text);
|
root.appendChild(text);
|
||||||
root.appendChild(button);
|
root.appendChild(button);
|
||||||
this.warrantFile = file;
|
this.attorneyFile = file;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
delWarrantFile(event) {
|
delAttorneyFile(event) {
|
||||||
const file = event.target.files[0];
|
const file = event.target.files[0];
|
||||||
this.$refs.warrantFile.value = null;
|
this.$refs.attorneyFile.value = null;
|
||||||
let element = document.getElementById("warrantNm");
|
let element = document.getElementById("attorneyNm");
|
||||||
while (element.firstChild) {
|
while (element.firstChild) {
|
||||||
element.removeChild(element.firstChild);
|
element.removeChild(element.firstChild);
|
||||||
}
|
}
|
||||||
this.warrantFile = null;
|
this.attorneyFile = null;
|
||||||
},
|
},
|
||||||
// 대리인
|
|
||||||
readDeputyFile(event) {
|
// 법인인감증명서
|
||||||
|
readCorporateCertificateFile(event) {
|
||||||
const file = event.target.files[0];
|
const file = event.target.files[0];
|
||||||
if(this.fileExtCheck(file)) {
|
if(this.fileExtCheck(file)) {
|
||||||
if (file != null) {
|
if (file != null) {
|
||||||
this.delDeputyFile(event);
|
this.delCorporateCertificateFile(event);
|
||||||
}
|
}
|
||||||
|
|
||||||
// inner Html.
|
// inner Html.
|
||||||
@@ -322,25 +394,153 @@ export default {
|
|||||||
const text = document.createElement('p');
|
const text = document.createElement('p');
|
||||||
text.innerText = file.name;
|
text.innerText = file.name;
|
||||||
button.addEventListener('click', () => {
|
button.addEventListener('click', () => {
|
||||||
this.delDeputyFile(event);
|
this.delCorporateCertificateFile(event);
|
||||||
})
|
})
|
||||||
button.innerText = 'X'
|
button.innerText = 'X'
|
||||||
const root = document.getElementById('deputyNm');
|
const root = document.getElementById('corporateCertificateNm');
|
||||||
root.appendChild(text);
|
root.appendChild(text);
|
||||||
root.appendChild(button);
|
root.appendChild(button);
|
||||||
|
this.corporateCertificateFile = file;
|
||||||
this.deputyFile = file
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
delDeputyFile(event) {
|
delCorporateCertificateFile(event) {
|
||||||
const file = event.target.files[0];
|
const file = event.target.files[0];
|
||||||
this.$refs.deputyFile.value = null;
|
this.$refs.corporateCertificateFile.value = null;
|
||||||
let element = document.getElementById("deputyNm");
|
let element = document.getElementById("corporateCertificateNm");
|
||||||
while (element.firstChild) {
|
while (element.firstChild) {
|
||||||
element.removeChild(element.firstChild);
|
element.removeChild(element.firstChild);
|
||||||
}
|
}
|
||||||
this.deputyFile = null;
|
this.corporateCertificateFile = null;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
// 위임사 사업자 등록증
|
||||||
|
readDelegatedBusinessFile(event) {
|
||||||
|
const file = event.target.files[0];
|
||||||
|
if(this.fileExtCheck(file)) {
|
||||||
|
if (file != null) {
|
||||||
|
this.delDelegatedBusinessFile(event);
|
||||||
|
}
|
||||||
|
|
||||||
|
// inner Html.
|
||||||
|
const button = document.createElement('button');
|
||||||
|
const text = document.createElement('p');
|
||||||
|
text.innerText = file.name;
|
||||||
|
button.addEventListener('click', () => {
|
||||||
|
this.delDelegatedBusinessFile(event);
|
||||||
|
})
|
||||||
|
button.innerText = 'X'
|
||||||
|
const root = document.getElementById('delegatedBusinessNm');
|
||||||
|
root.appendChild(text);
|
||||||
|
root.appendChild(button);
|
||||||
|
this.delegatedBusinessFile = file;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
delDelegatedBusinessFile(event) {
|
||||||
|
const file = event.target.files[0];
|
||||||
|
this.$refs.delegatedBusinessFile.value = null;
|
||||||
|
let element = document.getElementById("delegatedBusinessNm");
|
||||||
|
while (element.firstChild) {
|
||||||
|
element.removeChild(element.firstChild);
|
||||||
|
}
|
||||||
|
this.delegatedBusinessFile = null;
|
||||||
|
},
|
||||||
|
|
||||||
|
// 수임사 사업자 등록증
|
||||||
|
readAuthorizedBusinessFile(event) {
|
||||||
|
const file = event.target.files[0];
|
||||||
|
if(this.fileExtCheck(file)) {
|
||||||
|
if (file != null) {
|
||||||
|
this.delAuthorizedBusinessFile(event);
|
||||||
|
}
|
||||||
|
|
||||||
|
// inner Html.
|
||||||
|
const button = document.createElement('button');
|
||||||
|
const text = document.createElement('p');
|
||||||
|
text.innerText = file.name;
|
||||||
|
button.addEventListener('click', () => {
|
||||||
|
this.delAuthorizedBusinessFile(event);
|
||||||
|
})
|
||||||
|
button.innerText = 'X'
|
||||||
|
const root = document.getElementById('authorizedBusinessNm');
|
||||||
|
root.appendChild(text);
|
||||||
|
root.appendChild(button);
|
||||||
|
this.authorizedBusinessFile = file;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
delAuthorizedBusinessFile(event) {
|
||||||
|
const file = event.target.files[0];
|
||||||
|
this.$refs.authorizedBusinessFile.value = null;
|
||||||
|
let element = document.getElementById("authorizedBusinessNm");
|
||||||
|
while (element.firstChild) {
|
||||||
|
element.removeChild(element.firstChild);
|
||||||
|
}
|
||||||
|
this.authorizedBusinessFile = null;
|
||||||
|
},
|
||||||
|
|
||||||
|
// 위임사 재직증명서(임직원 신청시)
|
||||||
|
readDelegateCertificateFile(event) {
|
||||||
|
const file = event.target.files[0];
|
||||||
|
if(this.fileExtCheck(file)) {
|
||||||
|
if (file != null) {
|
||||||
|
this.delDelegateCertificateFile(event);
|
||||||
|
}
|
||||||
|
|
||||||
|
// inner Html.
|
||||||
|
const button = document.createElement('button');
|
||||||
|
const text = document.createElement('p');
|
||||||
|
text.innerText = file.name;
|
||||||
|
button.addEventListener('click', () => {
|
||||||
|
this.delDelegateCertificateFile(event);
|
||||||
|
})
|
||||||
|
button.innerText = 'X'
|
||||||
|
const root = document.getElementById('delegateCertificateNm');
|
||||||
|
root.appendChild(text);
|
||||||
|
root.appendChild(button);
|
||||||
|
this.delegateCertificateFile = file;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
delDelegateCertificateFile(event) {
|
||||||
|
const file = event.target.files[0];
|
||||||
|
this.$refs.delegateCertificateFile.value = null;
|
||||||
|
let element = document.getElementById("delegateCertificateNm");
|
||||||
|
while (element.firstChild) {
|
||||||
|
element.removeChild(element.firstChild);
|
||||||
|
}
|
||||||
|
this.delegateCertificateFile = null;
|
||||||
|
},
|
||||||
|
|
||||||
|
// 위임사 신분증(임직원 신청시)
|
||||||
|
readDelegatedIdentificationFile(event) {
|
||||||
|
const file = event.target.files[0];
|
||||||
|
if(this.fileExtCheck(file)) {
|
||||||
|
if (file != null) {
|
||||||
|
this.delDelegatedIdentificationFile(event);
|
||||||
|
}
|
||||||
|
|
||||||
|
// inner Html.
|
||||||
|
const button = document.createElement('button');
|
||||||
|
const text = document.createElement('p');
|
||||||
|
text.innerText = file.name;
|
||||||
|
button.addEventListener('click', () => {
|
||||||
|
this.delDelegatedIdentificationFile(event);
|
||||||
|
})
|
||||||
|
button.innerText = 'X'
|
||||||
|
const root = document.getElementById('delegatedIdentificationNm');
|
||||||
|
root.appendChild(text);
|
||||||
|
root.appendChild(button);
|
||||||
|
this.delegatedIdentificationFile = file;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
delDelegatedIdentificationFile(event) {
|
||||||
|
const file = event.target.files[0];
|
||||||
|
this.$refs.delegatedIdentificationFile.value = null;
|
||||||
|
let element = document.getElementById("delegatedIdentificationNm");
|
||||||
|
while (element.firstChild) {
|
||||||
|
element.removeChild(element.firstChild);
|
||||||
|
}
|
||||||
|
this.delegatedIdentificationFile = null;
|
||||||
|
},
|
||||||
|
|
||||||
// 재직
|
// 재직
|
||||||
readTenureFile(event) {
|
readTenureFile(event) {
|
||||||
const file = event.target.files[0];
|
const file = event.target.files[0];
|
||||||
@@ -403,9 +603,73 @@ export default {
|
|||||||
}
|
}
|
||||||
this.businessFile = null;
|
this.businessFile = null;
|
||||||
},
|
},
|
||||||
|
//신분증 (본인확인)
|
||||||
|
readIdentificationCardFile(event) {
|
||||||
|
const file = event.target.files[0];
|
||||||
|
if(this.fileExtCheck(file)) {
|
||||||
|
if (file != null) {
|
||||||
|
this.delIdentificationCardFile(event);
|
||||||
|
}
|
||||||
|
|
||||||
|
// inner Html.
|
||||||
|
const button = document.createElement('button');
|
||||||
|
const text = document.createElement('p');
|
||||||
|
text.innerText = file.name;
|
||||||
|
button.addEventListener('click', () => {
|
||||||
|
this.delIdentificationCardFile(event);
|
||||||
|
})
|
||||||
|
button.innerText = 'X'
|
||||||
|
const root = document.getElementById('identificationCardNm');
|
||||||
|
root.appendChild(text);
|
||||||
|
root.appendChild(button);
|
||||||
|
this.identificationCardFile = file;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
delIdentificationCardFile(event) {
|
||||||
|
const file = event.target.files[0];
|
||||||
|
this.$refs.identificationCardFile.value = null;
|
||||||
|
let element = document.getElementById("identificationCardNm");
|
||||||
|
while (element.firstChild) {
|
||||||
|
element.removeChild(element.firstChild);
|
||||||
|
}
|
||||||
|
this.identificationCardFile = null;
|
||||||
|
},
|
||||||
|
//재직증명서 (본인확인)
|
||||||
|
readIdentificationEvidenceFile(event) {
|
||||||
|
const file = event.target.files[0];
|
||||||
|
if(this.fileExtCheck(file)) {
|
||||||
|
if (file != null) {
|
||||||
|
this.delIdentificationEvidenceFile(event);
|
||||||
|
}
|
||||||
|
|
||||||
|
// inner Html.
|
||||||
|
const button = document.createElement('button');
|
||||||
|
const text = document.createElement('p');
|
||||||
|
text.innerText = file.name;
|
||||||
|
button.addEventListener('click', () => {
|
||||||
|
this.delIdentificationEvidenceFile(event);
|
||||||
|
})
|
||||||
|
button.innerText = 'X'
|
||||||
|
const root = document.getElementById('identificationEvidenceNm');
|
||||||
|
root.appendChild(text);
|
||||||
|
root.appendChild(button);
|
||||||
|
this.identificationEvidenceFile = file;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
delIdentificationEvidenceFile(event) {
|
||||||
|
const file = event.target.files[0];
|
||||||
|
this.$refs.identificationEvidenceFile.value = null;
|
||||||
|
let element = document.getElementById("identificationEvidenceNm");
|
||||||
|
while (element.firstChild) {
|
||||||
|
element.removeChild(element.firstChild);
|
||||||
|
}
|
||||||
|
this.identificationEvidenceFile = null;
|
||||||
|
},
|
||||||
//통신서비스 증명원
|
//통신서비스 증명원
|
||||||
readCommunicationFile(event) {
|
readCommunicationFile(event) {
|
||||||
const file = event.target.files[0];
|
const file = event.target.files[0];
|
||||||
|
|
||||||
|
|
||||||
if(this.fileExtCheck(file)) {
|
if(this.fileExtCheck(file)) {
|
||||||
if (file != null) {
|
if (file != null) {
|
||||||
this.delCommunicationFile(event);
|
this.delCommunicationFile(event);
|
||||||
@@ -488,8 +752,12 @@ export default {
|
|||||||
if (this.bizrAuthYn !== 'Y') {
|
if (this.bizrAuthYn !== 'Y') {
|
||||||
if (this.nmineeDivCd === '01') {
|
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, this.bRegNo)
|
const response = await sendNumMgtApi.insertNumber1(this.communicationFile,this.tenureFile,this.businessFile, this.identificationCardFile, this.identificationEvidenceFile, this.adminId, this.custNm, this.bRegNo, this.nmineeDivCd, this.saveSendNums, this.bizrAuthYn, this.custSeq, this.bRegNo)
|
||||||
const result = response.data;
|
const result = response.data;
|
||||||
|
// if(this.communicationFile.size >= 1024){
|
||||||
|
// alert('파일용량test')
|
||||||
|
// return false;
|
||||||
|
// }
|
||||||
|
|
||||||
if (result != null && result.retCode == "0000") {
|
if (result != null && result.retCode == "0000") {
|
||||||
if(result.data.list != null && result.data.list.length > 0){
|
if(result.data.list != null && result.data.list.length > 0){
|
||||||
@@ -516,12 +784,11 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
} else if (this.nmineeDivCd === '02') {
|
} else if (this.nmineeDivCd === '02') {
|
||||||
const response = await sendNumMgtApi.insertNumber2(this.trustFile, this.communicationFile, 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 response = await sendNumMgtApi.insertNumber2(this.communicationFile, this.delegationFile, this.attorneyFile, this.otherBusinessFile ,this.delegatedIdentificationFile, this.delegateCertificateFile, this.delegatedBusinessFile, this.authorizedBusinessFile, this.corporateCertificateFile, this.identificationCardFile, this.identificationEvidenceFile, this.adminId, this.custNm, this.bRegNo, this.nmineeDivCd, this.saveSendNums, this.bizrAuthYn, this.custSeq, this.bRegNo)
|
||||||
|
|
||||||
const result = response.data;
|
const result = response.data;
|
||||||
if (result != null && result.retCode == "0000") {
|
if (result != null && result.retCode == "0000") {
|
||||||
if(result.data.list != null){
|
if(result.data.list != null && result.data.list.length > 0){
|
||||||
if(result.data.list.length > 0){
|
|
||||||
this.row.title = '발신번호 등록';
|
this.row.title = '발신번호 등록';
|
||||||
var failMsg = "";
|
var failMsg = "";
|
||||||
for(var i=0; i<result.data.list.length; i++){
|
for(var i=0; i<result.data.list.length; i++){
|
||||||
@@ -530,7 +797,6 @@ export default {
|
|||||||
this.row.failMsg = failMsg
|
this.row.failMsg = failMsg
|
||||||
this.$parent.$refs.commmonModal.sendNumFailMsgOpen(this.row);
|
this.$parent.$refs.commmonModal.sendNumFailMsgOpen(this.row);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
this.toComplete()
|
this.toComplete()
|
||||||
}else if(result != null && result.retCode == "4021") {
|
}else if(result != null && result.retCode == "4021") {
|
||||||
if(result.data.list != null){
|
if(result.data.list != null){
|
||||||
@@ -599,12 +865,7 @@ export default {
|
|||||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
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.title = '발신번호 등록';
|
||||||
this.row.msg1 = '사업자등록증 파일을 업로드 하세요.';
|
this.row.msg1 = '사업자등록증 파일을 업로드 하세요.';
|
||||||
@@ -613,33 +874,33 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
if (this.trustFile == null) {
|
if (this.delegationFile == null) {
|
||||||
this.row.title = '발신번호 등록';
|
this.row.title = '발신번호 등록';
|
||||||
this.row.msg1 = '위임-수임관계 확인 서류 파일을 업로드 하세요.';
|
this.row.msg1 = '위임-수임사간 관계 확인 문서 파일을 업로드 하세요.';
|
||||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
if (this.warrantFile == null) {
|
if (this.attorneyFile == null) {
|
||||||
this.row.title = '발신번호 등록';
|
this.row.title = '발신번호 등록';
|
||||||
this.row.msg1 = '위임장 파일을 업로드 하세요.';
|
this.row.msg1 = '위임장 파일을 업로드 하세요.';
|
||||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
if (this.deputyFile == null) {
|
if (this.corporateCertificateFile == null) {
|
||||||
this.row.title = '발신번호 등록';
|
this.row.title = '발신번호 등록';
|
||||||
this.row.msg1 = '대리인 신분증 사본 인증 파일을 업로드 하세요.';
|
this.row.msg1 = '법인인감증명서 파일을 업로드 하세요.';
|
||||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
if (this.communicationFile == null) {
|
if (this.delegatedBusinessFile == null) {
|
||||||
this.row.title = '발신번호 등록';
|
this.row.title = '발신번호 등록';
|
||||||
this.row.msg1 = '통신서비스 이용증명원 파일을 업로드 하세요.';
|
this.row.msg1 = '위임사 사업자등록증 파일을 업로드 하세요.';
|
||||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
if (this.tenureFile == null) {
|
if (this.authorizedBusinessFile == null) {
|
||||||
this.row.title = '발신번호 등록';
|
this.row.title = '발신번호 등록';
|
||||||
this.row.msg1 = '재직증명서 파일을 업로드 하세요.';
|
this.row.msg1 = '수임사 사업자등록증 파일을 업로드 하세요.';
|
||||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
@@ -649,12 +910,6 @@ export default {
|
|||||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
if (this.businessFile == null) {
|
|
||||||
this.row.title = '발신번호 등록';
|
|
||||||
this.row.msg1 = '사업자등록증 파일을 업로드 하세요.';
|
|
||||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import httpClient from '@/common/http-client';
|
import httpClient from '@/common/http-client';
|
||||||
|
import axios from 'axios';
|
||||||
|
|
||||||
// 공통 코드.
|
// 공통 코드.
|
||||||
const getCommCode = (params) => {
|
const getCommCode = (params) => {
|
||||||
@@ -46,11 +47,13 @@ const insertNumber = (adminId, custNm, bRegNo, nmineeDivCd, numberInputs, bizrAu
|
|||||||
};
|
};
|
||||||
|
|
||||||
// 사업자가 등록 요청.
|
// 사업자가 등록 요청.
|
||||||
const insertNumber1 = (tenureFile, businessFile, communicationFile, adminId, custNm, bRegNo, nmineeDivCd, numberInputs, bizrAuthYn, custSeq) => {
|
const insertNumber1 = (communicationFile, tenureFile ,businessFile, identificationCardFile, identificationEvidenceFile,adminId, custNm, bRegNo, nmineeDivCd, numberInputs, bizrAuthYn, custSeq) => {
|
||||||
let formData = new FormData();
|
let formData = new FormData();
|
||||||
|
formData.append("communicationFile", communicationFile);
|
||||||
formData.append("tenureFile", tenureFile);
|
formData.append("tenureFile", tenureFile);
|
||||||
formData.append("businessFile", businessFile);
|
formData.append("businessFile", businessFile);
|
||||||
formData.append("communicationFile", communicationFile);
|
formData.append("identificationCardFile", identificationCardFile);
|
||||||
|
formData.append("identificationEvidenceFile", identificationEvidenceFile);
|
||||||
|
|
||||||
const row = {}
|
const row = {}
|
||||||
row.adminId = adminId
|
row.adminId = adminId
|
||||||
@@ -74,16 +77,19 @@ const insertNumber1 = (tenureFile, businessFile, communicationFile, adminId, cus
|
|||||||
};
|
};
|
||||||
|
|
||||||
// 타사업자가 등록 요청.
|
// 타사업자가 등록 요청.
|
||||||
const insertNumber2 = (trustFile, warrantFile, communicationFile, deputyFile, tenureFile, otherBusinessFile, businessFile, adminId, custNm, bRegNo, nmineeDivCd, numberInputs, bizrAuthYn, custSeq) => {
|
const insertNumber2 = (communicationFile, delegationFile, attorneyFile, otherBusinessFile, delegatedIdentificationFile, delegateCertificateFile, delegatedBusinessFile, authorizedBusinessFile, corporateCertificateFile, identificationCardFile, identificationEvidenceFile, adminId, custNm, bRegNo, nmineeDivCd, numberInputs, bizrAuthYn, custSeq) => {
|
||||||
let formData = new FormData();
|
let formData = new FormData();
|
||||||
formData.append("trustFile", trustFile);
|
|
||||||
formData.append("warrantFile", warrantFile);
|
|
||||||
formData.append("deputyFile", deputyFile);
|
|
||||||
formData.append("tenureFile", tenureFile);
|
|
||||||
formData.append("businessFile", businessFile);
|
|
||||||
formData.append("otherBusinessFile", otherBusinessFile);
|
|
||||||
formData.append("communicationFile", communicationFile);
|
formData.append("communicationFile", communicationFile);
|
||||||
|
formData.append("delegationFile", delegationFile);
|
||||||
|
formData.append("attorneyFile", attorneyFile);
|
||||||
|
formData.append("otherBusinessFile", otherBusinessFile);
|
||||||
|
formData.append("delegatedIdentificationFile", delegatedIdentificationFile);
|
||||||
|
formData.append("delegateCertificateFile", delegateCertificateFile);
|
||||||
|
formData.append("delegatedBusinessFile", delegatedBusinessFile);
|
||||||
|
formData.append("authorizedBusinessFile", authorizedBusinessFile);
|
||||||
|
formData.append("corporateCertificateFile", corporateCertificateFile);
|
||||||
|
formData.append("identificationCardFile", identificationCardFile);
|
||||||
|
formData.append("identificationEvidenceFile", identificationEvidenceFile);
|
||||||
const row = {}
|
const row = {}
|
||||||
row.adminId = adminId
|
row.adminId = adminId
|
||||||
row.custNm = custNm
|
row.custNm = custNm
|
||||||
@@ -110,6 +116,39 @@ const updateAppr = (params) => {
|
|||||||
return httpClient.post('/api/v1/bo/sendNumMgt/updateAppr', params, {withCredentials: false});
|
return httpClient.post('/api/v1/bo/sendNumMgt/updateAppr', params, {withCredentials: false});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const fileDownload = (params) => {
|
||||||
|
console.log(params)
|
||||||
|
axios({
|
||||||
|
method: 'POST',
|
||||||
|
url: '/api/v1/bo/sendNumMgt/filedownload',
|
||||||
|
responseType: 'blob',
|
||||||
|
headers: '',
|
||||||
|
data: params,
|
||||||
|
params: params
|
||||||
|
})
|
||||||
|
.then(response => {
|
||||||
|
const fileName = params.docTitle
|
||||||
|
const data = response.data
|
||||||
|
if (!data) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
console.log(response)
|
||||||
|
const url = window.URL.createObjectURL(new Blob([data]))
|
||||||
|
const a = document.createElement('a')
|
||||||
|
a.style.display = 'none'
|
||||||
|
a.href = url
|
||||||
|
a.setAttribute('download', fileName)
|
||||||
|
document.body.appendChild(a)
|
||||||
|
a.click()
|
||||||
|
document.body.removeChild(a)
|
||||||
|
window.URL.revokeObjectURL(url)
|
||||||
|
})
|
||||||
|
.catch(response => {
|
||||||
|
console.log(response)
|
||||||
|
alert(error);
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
getCommCode,
|
getCommCode,
|
||||||
numberDetail,
|
numberDetail,
|
||||||
@@ -120,4 +159,5 @@ export default {
|
|||||||
apprDetail,
|
apprDetail,
|
||||||
updateAppr,
|
updateAppr,
|
||||||
deleteNumber,
|
deleteNumber,
|
||||||
|
fileDownload
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,7 +21,7 @@
|
|||||||
<input class="search-box" type="text" id="search" placeholder="검색어 입력" v-model.trim="grid.params.searchText1"
|
<input class="search-box" type="text" id="search" placeholder="검색어 입력" v-model.trim="grid.params.searchText1"
|
||||||
@keypress="onlyNum" @input="onlyNum" maxlength="10" @keyup.enter="search"/>
|
@keypress="onlyNum" @input="onlyNum" maxlength="10" @keyup.enter="search"/>
|
||||||
</div>
|
</div>
|
||||||
<div class="select_box id">
|
<div class="select_box">
|
||||||
<label for="right" class="label">명의자 구분</label>
|
<label for="right" class="label">명의자 구분</label>
|
||||||
<select name="" id="" v-model="searchType2" @keyup.enter="search">
|
<select name="" id="" v-model="searchType2" @keyup.enter="search">
|
||||||
<option value="">전체</option>
|
<option value="">전체</option>
|
||||||
|
|||||||
@@ -33,7 +33,7 @@
|
|||||||
<option value="02">어드민</option>
|
<option value="02">어드민</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="select_box id">
|
<div class="select_box">
|
||||||
<label for="right" class="label">상세검색</label>
|
<label for="right" class="label">상세검색</label>
|
||||||
<select name="" id="category" v-model="searchType4" @keyup.enter="search">
|
<select name="" id="category" v-model="searchType4" @keyup.enter="search">
|
||||||
<option value="regNo">발신번호</option>
|
<option value="regNo">발신번호</option>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<option value="D">삭제</option>
|
<option value="D">삭제</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="select_box id">
|
<div class="select_box">
|
||||||
<label for="searchType" class="label">상세검색</label>
|
<label for="searchType" class="label">상세검색</label>
|
||||||
<select name="" id="searchType" v-model="searchType2" @keyup.enter="search">
|
<select name="" id="searchType" v-model="searchType2" @keyup.enter="search">
|
||||||
<option value="custNm">고객사명</option>
|
<option value="custNm">고객사명</option>
|
||||||
@@ -25,7 +25,7 @@
|
|||||||
<option value="sendProfile">발신프로필</option>
|
<option value="sendProfile">발신프로필</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="input_box id">
|
<div class="input_box">
|
||||||
<label for="search" class="label">검색어</label>
|
<label for="search" class="label">검색어</label>
|
||||||
<input class="search-box" type="text" id="search" placeholder="검색어 입력" v-model.trim="grid.params.searchText1"
|
<input class="search-box" type="text" id="search" placeholder="검색어 입력" v-model.trim="grid.params.searchText1"
|
||||||
maxlength="100" @keyup.enter="search"/>
|
maxlength="100" @keyup.enter="search"/>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="search_wrap">
|
<div class="search_wrap">
|
||||||
<div class="select_box">
|
<div class="select_box">
|
||||||
<label for="stat" class="label">사용상태</label>
|
<label for="stat" class="label">상태</label>
|
||||||
<select name="" id="stat" v-model="searchType1" @keyup.enter="search">
|
<select name="" id="stat" v-model="searchType1" @keyup.enter="search">
|
||||||
<option value="">전체</option>
|
<option value="">전체</option>
|
||||||
<option value="Y">사용</option>
|
<option value="Y">사용</option>
|
||||||
@@ -22,7 +22,7 @@
|
|||||||
<option value="authCd">인증코드</option>
|
<option value="authCd">인증코드</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="input_box id">
|
<div class="input_box">
|
||||||
<label for="search" class="label">검색어</label>
|
<label for="search" class="label">검색어</label>
|
||||||
<input type="text" id="id1" placeholder="검색어 입력" v-model.trim="grid.params.searchText1"
|
<input type="text" id="id1" placeholder="검색어 입력" v-model.trim="grid.params.searchText1"
|
||||||
@keyup.enter="search" maxlength="100"/>
|
@keyup.enter="search" maxlength="100"/>
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="search_wrap">
|
<div class="search_wrap">
|
||||||
<div class="input_box cal">
|
<div class="input_box cal">
|
||||||
<label for="right" class="label txt">날짜</label>
|
<label for="right" class="label txt">조회기간</label>
|
||||||
<p> 최대 1개월까지 조회 가능합니다.</p>
|
<p> 최대 1개월까지 조회 가능합니다.</p>
|
||||||
<div class="term">
|
<div class="term">
|
||||||
<!--
|
<!--
|
||||||
@@ -402,7 +402,7 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
let today = moment().format('YYYYMMDDHHmmss');
|
let today = moment().format('YYYYMMDDHHmmss');
|
||||||
const saveFileName = `사업자별 일별통계_${today}.xlsx`;
|
const saveFileName = `사업자별 일별통계_${today}.xls`;
|
||||||
|
|
||||||
const data = await this.getExcelDataDown();
|
const data = await this.getExcelDataDown();
|
||||||
let options = {
|
let options = {
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="search_wrap">
|
<div class="search_wrap">
|
||||||
<div class="input_box cal">
|
<div class="input_box cal">
|
||||||
<label for="right" class="label txt">날짜</label>
|
<label for="right" class="label txt">조회기간</label>
|
||||||
<p> 최대 3개월까지 조회 가능합니다.</p>
|
<p> 최대 3개월까지 조회 가능합니다.</p>
|
||||||
<div class="term">
|
<div class="term">
|
||||||
<div class="group" style="width:500px;">
|
<div class="group" style="width:500px;">
|
||||||
@@ -414,7 +414,7 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
let today = moment().format('YYYYMMDDHHmmss');
|
let today = moment().format('YYYYMMDDHHmmss');
|
||||||
const saveFileName = `사업자별 월별통계_${today}.xlsx`;
|
const saveFileName = `사업자별 월별통계_${today}.xls`;
|
||||||
|
|
||||||
const data = await this.getExcelDataDown();
|
const data = await this.getExcelDataDown();
|
||||||
let options = {
|
let options = {
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="search_wrap">
|
<div class="search_wrap">
|
||||||
<div class="input_box cal">
|
<div class="input_box cal">
|
||||||
<label for="right" class="label txt">날짜</label>
|
<label for="right" class="label txt">조회기간</label>
|
||||||
<p> 최대 1개월까지 조회 가능합니다.</p>
|
<p> 최대 1개월까지 조회 가능합니다.</p>
|
||||||
<div class="term">
|
<div class="term">
|
||||||
<span class="custom_input icon_date">
|
<span class="custom_input icon_date">
|
||||||
@@ -281,7 +281,7 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
let today = moment().format('YYYYMMDDHHmmss');
|
let today = moment().format('YYYYMMDDHHmmss');
|
||||||
const saveFileName = `일별통계_${today}.xlsx`;
|
const saveFileName = `일별통계_${today}.xls`;
|
||||||
|
|
||||||
let options = {
|
let options = {
|
||||||
header: this.excelHeader,
|
header: this.excelHeader,
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="search_wrap">
|
<div class="search_wrap">
|
||||||
<div class="input_box cal">
|
<div class="input_box cal">
|
||||||
<label for="right" class="label txt">날짜</label>
|
<label for="right" class="label txt">조회기간</label>
|
||||||
<p> 최대 3개월까지 조회 가능합니다.</p>
|
<p> 최대 3개월까지 조회 가능합니다.</p>
|
||||||
<div class="term">
|
<div class="term">
|
||||||
<span class="custom_input icon_date">
|
<span class="custom_input icon_date">
|
||||||
@@ -253,7 +253,37 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
let today = moment().format('YYYYMMDDHHmmss');
|
let today = moment().format('YYYYMMDDHHmmss');
|
||||||
const saveFileName = `월별통계_${today}.xlsx`;
|
const saveFileName = `월별통계_${today}.xls`;
|
||||||
|
|
||||||
|
var styles = `<style>
|
||||||
|
.table{width: 100%;}
|
||||||
|
.head-title{border-top: 1px solid #dee2e6; border-bottom: 2px solid #dee2e6;}
|
||||||
|
.first-td{background-color: #F2F2F2;}
|
||||||
|
.last-td{background-color: #dee2e6;}
|
||||||
|
body {
|
||||||
|
font-size:12px;
|
||||||
|
font-family: 맑은 고딕;
|
||||||
|
}
|
||||||
|
table {
|
||||||
|
font-size:12px;
|
||||||
|
text-align:center;
|
||||||
|
}
|
||||||
|
table th {
|
||||||
|
text-align:center;
|
||||||
|
height:28px;
|
||||||
|
background-color: #f0f0f0;
|
||||||
|
}
|
||||||
|
table td {
|
||||||
|
text-align:left;
|
||||||
|
height:26px;
|
||||||
|
mso-number-format:"\@";
|
||||||
|
}
|
||||||
|
.number {
|
||||||
|
text-align:right !important;
|
||||||
|
mso-number-format:General !important;
|
||||||
|
white-space:nowrap !important;
|
||||||
|
}
|
||||||
|
</style>`;
|
||||||
|
|
||||||
let options = {
|
let options = {
|
||||||
header: this.excelHeader,
|
header: this.excelHeader,
|
||||||
|
|||||||
@@ -11,9 +11,13 @@ import io.swagger.annotations.ApiResponses;
|
|||||||
import kr.co.uplus.ez.api.sendNumMgt.dto.*;
|
import kr.co.uplus.ez.api.sendNumMgt.dto.*;
|
||||||
import kr.co.uplus.ez.common.components.ValidComponents;
|
import kr.co.uplus.ez.common.components.ValidComponents;
|
||||||
import kr.co.uplus.ez.common.data.ApiResponseCode;
|
import kr.co.uplus.ez.common.data.ApiResponseCode;
|
||||||
|
import kr.co.uplus.ez.common.utils.FileIoUtils;
|
||||||
|
import kr.co.uplus.ez.common.utils.FileUtil;
|
||||||
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.validation.BindingResult;
|
import org.springframework.validation.BindingResult;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.multipart.MultipartHttpServletRequest;
|
import org.springframework.web.multipart.MultipartHttpServletRequest;
|
||||||
@@ -21,6 +25,9 @@ import org.springframework.web.multipart.MultipartHttpServletRequest;
|
|||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import javax.validation.Valid;
|
import javax.validation.Valid;
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.LinkedHashMap;
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping(value = "api/v1/bo/sendNumMgt")
|
@RequestMapping(value = "api/v1/bo/sendNumMgt")
|
||||||
@@ -33,6 +40,12 @@ public class SendNumMgtController {
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
ValidComponents validComponents;
|
ValidComponents validComponents;
|
||||||
|
|
||||||
|
private static int BUFFERSIZE = 1024;
|
||||||
|
|
||||||
|
@Value("${file-resource.info.sendNumber.path:/efs/admin/sendNumber/}")
|
||||||
|
private String sendNumUploadPath;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* date : 2022. 4. 25.
|
* date : 2022. 4. 25.
|
||||||
* auth : ckr
|
* auth : ckr
|
||||||
@@ -197,8 +210,19 @@ public class SendNumMgtController {
|
|||||||
return sendNumService.updateAppr(updateApprReqDto);
|
return sendNumService.updateAppr(updateApprReqDto);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 제출 서류 다운로드 */
|
/**
|
||||||
public void downloadDoc(HttpServletRequest request, HttpServletResponse response, InsertNumberFile docFile) {
|
* 파일 다운로드
|
||||||
sendNumService.downloadDoc(request, response, docFile);
|
* @throws IOException
|
||||||
|
*/
|
||||||
|
@SuppressWarnings("rawtypes")
|
||||||
|
@RequestMapping("/filedownload")
|
||||||
|
public void filedownload(@RequestBody LinkedHashMap param, HttpServletRequest request, HttpServletResponse response) throws IOException {
|
||||||
|
logger.debug(param.toString());
|
||||||
|
|
||||||
|
File file = new File(param.get("filePath") + File.separator + param.get("fileNm"));
|
||||||
|
if (file.exists()) {
|
||||||
|
FileIoUtils.fileDownload(file, request, response );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|||||||
@@ -56,4 +56,6 @@ interface SendNumMgtMapper {
|
|||||||
int upddateSndrnoReg(UpdateApprReqDto updateApprReqDto);
|
int upddateSndrnoReg(UpdateApprReqDto updateApprReqDto);
|
||||||
|
|
||||||
int updateSvcUser(UpdateApprReqDto updateApprReqDto);
|
int updateSvcUser(UpdateApprReqDto updateApprReqDto);
|
||||||
|
|
||||||
|
InsertNumberFile selectDownload(InsertNumberFile insertNumberFile);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,12 +1,19 @@
|
|||||||
package kr.co.uplus.ez.api.sendNumMgt;
|
package kr.co.uplus.ez.api.sendNumMgt;
|
||||||
|
|
||||||
import kr.co.uplus.ez.api.sendNumMgt.dto.*;
|
import java.io.File;
|
||||||
import kr.co.uplus.ez.common.data.ApiResponseCode;
|
import java.io.FileInputStream;
|
||||||
import kr.co.uplus.ez.common.data.Const;
|
import java.io.FileOutputStream;
|
||||||
import kr.co.uplus.ez.common.data.Paging;
|
import java.io.IOException;
|
||||||
import kr.co.uplus.ez.common.utils.DateUtils;
|
import java.io.InputStream;
|
||||||
import kr.co.uplus.ez.common.utils.FileIoUtils;
|
import java.io.OutputStream;
|
||||||
import kr.co.uplus.ez.common.utils.FileUtil;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
|
import org.apache.commons.io.FilenameUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.mybatis.spring.SqlSessionTemplate;
|
import org.mybatis.spring.SqlSessionTemplate;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@@ -19,13 +26,46 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
import org.springframework.web.multipart.MultipartHttpServletRequest;
|
import org.springframework.web.multipart.MultipartHttpServletRequest;
|
||||||
|
|
||||||
import java.io.File;
|
import kr.co.uplus.ez.api.sendNumMgt.dto.DeleteNumberReqDto;
|
||||||
import java.util.ArrayList;
|
import kr.co.uplus.ez.api.sendNumMgt.dto.DeleteNumberResDto;
|
||||||
import java.util.Date;
|
import kr.co.uplus.ez.api.sendNumMgt.dto.DetailNumber;
|
||||||
import java.util.List;
|
import kr.co.uplus.ez.api.sendNumMgt.dto.DetailNumberReqDto;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.DetailNumberResDto;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import kr.co.uplus.ez.api.sendNumMgt.dto.InsertNumber;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import kr.co.uplus.ez.api.sendNumMgt.dto.InsertNumberFile;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.InsertNumberReqDto;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.InsertNumberRes;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.InsertNumberResDto;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.ProfileInfo;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.ProfileListReqDto;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.ProfileListRes;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.ProfileListResDto;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.SendAdminInfo;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.SendAdminListReqDto;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.SendAdminListRes;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.SendAdminListResDto;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.SendNumberApprDetailReqDto;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.SendNumberApprDetailRes;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.SendNumberApprDetailResDto;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.SendNumberApprDoc;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.SendNumberApprInfo;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.SendNumberApprListReqDto;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.SendNumberApprListRes;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.SendNumberApprListResDto;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.SendNumberApprNum;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.SendNumberInfo;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.SendNumberListReqDto;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.SendNumberListRes;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.SendNumberListResDto;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.UpdateApprReqDto;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.UpdateApprResDto;
|
||||||
|
import kr.co.uplus.ez.api.sendNumMgt.dto.UpdateApprSendNumber;
|
||||||
|
import kr.co.uplus.ez.common.data.ApiResponseCode;
|
||||||
|
import kr.co.uplus.ez.common.data.Const;
|
||||||
|
import kr.co.uplus.ez.common.data.Paging;
|
||||||
|
import kr.co.uplus.ez.common.utils.DateUtils;
|
||||||
|
import kr.co.uplus.ez.common.utils.FileIoUtils;
|
||||||
|
import kr.co.uplus.ez.common.utils.FileUtil;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class SendNumMgtService {
|
public class SendNumMgtService {
|
||||||
@@ -40,6 +80,8 @@ public class SendNumMgtService {
|
|||||||
|
|
||||||
@Value("${file-resource.info.sendNumber.path:/efs/admin/sendNumber/}")
|
@Value("${file-resource.info.sendNumber.path:/efs/admin/sendNumber/}")
|
||||||
private String sendNumUploadPath;
|
private String sendNumUploadPath;
|
||||||
|
|
||||||
|
private static int BUFFERSIZE = 1024;
|
||||||
/**
|
/**
|
||||||
* date : 2022. 4. 25.
|
* date : 2022. 4. 25.
|
||||||
* auth : ckr
|
* auth : ckr
|
||||||
@@ -207,7 +249,6 @@ public class SendNumMgtService {
|
|||||||
insertNumberReqDto.setReqSttusCd(Const.SNDRNO_REQ_STTUS_CD_COMPLETED); // 요청 상태 코드(01:승인대기, 02:처리완료)
|
insertNumberReqDto.setReqSttusCd(Const.SNDRNO_REQ_STTUS_CD_COMPLETED); // 요청 상태 코드(01:승인대기, 02:처리완료)
|
||||||
insertNumberReqDto.setCmpltDt(nowDate); // 완료일시
|
insertNumberReqDto.setCmpltDt(nowDate); // 완료일시
|
||||||
|
|
||||||
|
|
||||||
// 2. 발신번호등록 테이블 저장. (EZ_SNDRNO_REG)
|
// 2. 발신번호등록 테이블 저장. (EZ_SNDRNO_REG)
|
||||||
sendNumMgtMapper.insertNumber(insertNumberReqDto);
|
sendNumMgtMapper.insertNumber(insertNumberReqDto);
|
||||||
|
|
||||||
@@ -250,7 +291,7 @@ public class SendNumMgtService {
|
|||||||
|
|
||||||
List<MultipartFile> multipartFiles = new ArrayList<>();
|
List<MultipartFile> multipartFiles = new ArrayList<>();
|
||||||
List<String> docTpCd = new ArrayList<>();
|
List<String> docTpCd = new ArrayList<>();
|
||||||
|
if(StringUtils.equals(Const.SNDRNO_TP_CD_SELF, insertNumberReqDto.getNmineeDivCd())) {
|
||||||
// 통신서비스이용 증명원 '01'
|
// 통신서비스이용 증명원 '01'
|
||||||
MultipartFile communicationFile = multipartRequest.getFile("communicationFile");
|
MultipartFile communicationFile = multipartRequest.getFile("communicationFile");
|
||||||
multipartFiles.add(communicationFile);
|
multipartFiles.add(communicationFile);
|
||||||
@@ -266,23 +307,71 @@ public class SendNumMgtService {
|
|||||||
multipartFiles.add(businessFile);
|
multipartFiles.add(businessFile);
|
||||||
docTpCd.add(Const.SNDRNO_DOC_TP_CD_06);
|
docTpCd.add(Const.SNDRNO_DOC_TP_CD_06);
|
||||||
|
|
||||||
if(StringUtils.equals(Const.SNDRNO_TP_CD_OTHER, insertNumberReqDto.getNmineeDivCd())){
|
// 신분증(본인확인) '13'
|
||||||
// 위임-수임관계 확인 서류 '03'
|
MultipartFile identificationCardFile = multipartRequest.getFile("identificationCardFile");
|
||||||
MultipartFile trustFile = multipartRequest.getFile("trustFile");
|
multipartFiles.add(identificationCardFile);
|
||||||
multipartFiles.add(trustFile);
|
docTpCd.add(Const.SNDRNO_DOC_TP_CD_13);
|
||||||
|
|
||||||
|
// 재직증명서(본인확인) '14'
|
||||||
|
MultipartFile identificationEvidenceFile = multipartRequest.getFile("identificationEvidenceFile");
|
||||||
|
multipartFiles.add(identificationEvidenceFile);
|
||||||
|
docTpCd.add(Const.SNDRNO_DOC_TP_CD_14);
|
||||||
|
|
||||||
|
} else if(StringUtils.equals(Const.SNDRNO_TP_CD_OTHER, insertNumberReqDto.getNmineeDivCd())){
|
||||||
|
// 위임-수임사간 관계 확인 문서 '03'
|
||||||
|
MultipartFile delegationFile = multipartRequest.getFile("delegationFile");
|
||||||
|
multipartFiles.add(delegationFile);
|
||||||
docTpCd.add(Const.SNDRNO_DOC_TP_CD_03);
|
docTpCd.add(Const.SNDRNO_DOC_TP_CD_03);
|
||||||
|
|
||||||
// 위임장 '04'
|
// 위임장 '04'
|
||||||
MultipartFile warrantFile = multipartRequest.getFile("warrantFile");
|
MultipartFile attorneyFile = multipartRequest.getFile("attorneyFile");
|
||||||
multipartFiles.add(warrantFile);
|
multipartFiles.add(attorneyFile);
|
||||||
docTpCd.add(Const.SNDRNO_DOC_TP_CD_04);
|
docTpCd.add(Const.SNDRNO_DOC_TP_CD_04);
|
||||||
// 대리인신분증 사본인증 '05'
|
|
||||||
MultipartFile deputyFile = multipartRequest.getFile("deputyFile");
|
// 법인인감증명서 '12'
|
||||||
multipartFiles.add(deputyFile);
|
MultipartFile corporateCertificateFile = multipartRequest.getFile("corporateCertificateFile");
|
||||||
docTpCd.add(Const.SNDRNO_DOC_TP_CD_05);
|
multipartFiles.add(corporateCertificateFile);
|
||||||
// 타사업자등록증 '07'
|
docTpCd.add(Const.SNDRNO_DOC_TP_CD_12);
|
||||||
|
|
||||||
|
// 위임사 사업자등록증 '10'
|
||||||
|
MultipartFile delegatedBusinessFile = multipartRequest.getFile("delegatedBusinessFile");
|
||||||
|
multipartFiles.add(delegatedBusinessFile);
|
||||||
|
docTpCd.add(Const.SNDRNO_DOC_TP_CD_10);
|
||||||
|
|
||||||
|
// 수임사 사업자등록증 '11'
|
||||||
|
MultipartFile authorizedBusinessFile = multipartRequest.getFile("authorizedBusinessFile");
|
||||||
|
multipartFiles.add(authorizedBusinessFile);
|
||||||
|
docTpCd.add(Const.SNDRNO_DOC_TP_CD_11);
|
||||||
|
|
||||||
|
// 통신서비스이용 증명원 '01'
|
||||||
|
MultipartFile communicationFile = multipartRequest.getFile("communicationFile");
|
||||||
|
multipartFiles.add(communicationFile);
|
||||||
|
docTpCd.add(Const.SNDRNO_DOC_TP_CD_01);
|
||||||
|
|
||||||
|
// 위임사 재직증명서(임직원 신청시) '09'
|
||||||
|
MultipartFile delegateCertificateFile = multipartRequest.getFile("delegateCertificateFile");
|
||||||
|
multipartFiles.add(delegateCertificateFile);
|
||||||
|
docTpCd.add(Const.SNDRNO_DOC_TP_CD_09);
|
||||||
|
|
||||||
|
// 위임사 신분증(임직원 신청시) '08'
|
||||||
|
MultipartFile delegatedIdentificationFile = multipartRequest.getFile("delegatedIdentificationFile");
|
||||||
|
multipartFiles.add(delegatedIdentificationFile);
|
||||||
|
docTpCd.add(Const.SNDRNO_DOC_TP_CD_08);
|
||||||
|
|
||||||
|
// 사업자등록증(타사) '07'
|
||||||
MultipartFile otherBusinessFile = multipartRequest.getFile("otherBusinessFile");
|
MultipartFile otherBusinessFile = multipartRequest.getFile("otherBusinessFile");
|
||||||
multipartFiles.add(otherBusinessFile);
|
multipartFiles.add(otherBusinessFile);
|
||||||
docTpCd.add(Const.SNDRNO_DOC_TP_CD_07);
|
docTpCd.add(Const.SNDRNO_DOC_TP_CD_07);
|
||||||
|
|
||||||
|
// 신분증(본인확인) '13'
|
||||||
|
MultipartFile identificationCardFile = multipartRequest.getFile("identificationCardFile");
|
||||||
|
multipartFiles.add(identificationCardFile);
|
||||||
|
docTpCd.add(Const.SNDRNO_DOC_TP_CD_13);
|
||||||
|
|
||||||
|
// 재직증명서(본인확인) '14'
|
||||||
|
MultipartFile identificationEvidenceFile = multipartRequest.getFile("identificationEvidenceFile");
|
||||||
|
multipartFiles.add(identificationEvidenceFile);
|
||||||
|
docTpCd.add(Const.SNDRNO_DOC_TP_CD_14);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 파일 업로드 및 테이블 저장 (등록 서류 관련).
|
// 파일 업로드 및 테이블 저장 (등록 서류 관련).
|
||||||
@@ -294,13 +383,15 @@ public class SendNumMgtService {
|
|||||||
String titleNm = multipartFiles.get(j).getOriginalFilename();
|
String titleNm = multipartFiles.get(j).getOriginalFilename();
|
||||||
long fileSize = multipartFiles.get(j).getSize();
|
long fileSize = multipartFiles.get(j).getSize();
|
||||||
|
|
||||||
|
|
||||||
// File Upload.
|
// File Upload.
|
||||||
FileUtil.upload(multipartFiles.get(j), fileNm, path);
|
FileUtil.upload(multipartFiles.get(j), fileNm, path);
|
||||||
|
|
||||||
// 발신번호 등록 서류 테이블 저장 (EZ_SNDRNO_DOC).
|
// 발신번호 등록 서류 테이블 저장 (EZ_SNDRNO_DOC).
|
||||||
InsertNumberFile insertFile = new InsertNumberFile();
|
InsertNumberFile insertFile = new InsertNumberFile();
|
||||||
insertFile.setRegReqNo(regReqNo);
|
insertFile.setRegReqNo(regReqNo);
|
||||||
insertFile.setDocNo(docTpCd.get(j).substring(1,2));
|
insertFile.setDocNo("" + Integer.parseInt(docTpCd.get(j)));
|
||||||
|
//insertFile.setDocNo(docTpCd.get(j).substring(1,2));
|
||||||
insertFile.setDocTpCd(docTpCd.get(j));
|
insertFile.setDocTpCd(docTpCd.get(j));
|
||||||
insertFile.setDocTitle(titleNm);
|
insertFile.setDocTitle(titleNm);
|
||||||
insertFile.setFileNm(fileNm);
|
insertFile.setFileNm(fileNm);
|
||||||
@@ -323,14 +414,6 @@ public class SendNumMgtService {
|
|||||||
return new InsertNumberResDto(ApiResponseCode.SUCCESS, insertNumberRes);
|
return new InsertNumberResDto(ApiResponseCode.SUCCESS, insertNumberRes);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 다운로트 제출서류
|
|
||||||
public void downloadDoc(HttpServletRequest request, HttpServletResponse response, InsertNumberFile docFile) {
|
|
||||||
|
|
||||||
|
|
||||||
String fileName = "";
|
|
||||||
//FileUtil.download(request, response, sendNumUploadPath, fileName);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* date : 2022. 4. 25.
|
* date : 2022. 4. 25.
|
||||||
* auth : ckr
|
* auth : ckr
|
||||||
@@ -449,9 +532,11 @@ public class SendNumMgtService {
|
|||||||
// 발신번호 문서 목록 조회
|
// 발신번호 문서 목록 조회
|
||||||
List<SendNumberApprDoc> sendNumberApprDocs = sendNumMgtMapper.selectSndnoDocList(sendNumberApprDetailReqDto);
|
List<SendNumberApprDoc> sendNumberApprDocs = sendNumMgtMapper.selectSndnoDocList(sendNumberApprDetailReqDto);
|
||||||
|
|
||||||
|
|
||||||
sendNumberApprDetailRes.setNumList(sendNumberApprNums);
|
sendNumberApprDetailRes.setNumList(sendNumberApprNums);
|
||||||
sendNumberApprDetailRes.setDocList(sendNumberApprDocs);
|
sendNumberApprDetailRes.setDocList(sendNumberApprDocs);
|
||||||
|
|
||||||
|
|
||||||
return new SendNumberApprDetailResDto(ApiResponseCode.SUCCESS, sendNumberApprDetailRes);
|
return new SendNumberApprDetailResDto(ApiResponseCode.SUCCESS, sendNumberApprDetailRes);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -523,6 +608,110 @@ public class SendNumMgtService {
|
|||||||
return new UpdateApprResDto(ApiResponseCode.SUCCESS);
|
return new UpdateApprResDto(ApiResponseCode.SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* InputStream을 종료한다.
|
||||||
|
*/
|
||||||
|
public static void close(InputStream stream) {
|
||||||
|
if (stream != null) {
|
||||||
|
try {
|
||||||
|
stream.close();
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* OutputStream을 종료한다.
|
||||||
|
*/
|
||||||
|
public static void close(OutputStream stream) {
|
||||||
|
if (stream != null) {
|
||||||
|
try {
|
||||||
|
stream.close();
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* FileOutputStream을 종료한다.
|
||||||
|
*/
|
||||||
|
public static void close(FileOutputStream stream) {
|
||||||
|
if (stream != null) {
|
||||||
|
try {
|
||||||
|
stream.close();
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 다운로드 제출서류
|
||||||
|
public void downloadDoc(HttpServletRequest request, HttpServletResponse response, InsertNumberFile docFile) {
|
||||||
|
|
||||||
|
SendNumMgtMapper sendNumMgtMapper = sqlSessionSlave.getMapper(SendNumMgtMapper.class);
|
||||||
|
|
||||||
|
InsertNumberFile selectFile = sendNumMgtMapper.selectDownload(docFile);
|
||||||
|
|
||||||
|
String fileName = selectFile.getDocTitle();
|
||||||
|
String oriFileName = selectFile.getFileNm();
|
||||||
|
String filePath = selectFile.getFilePath();
|
||||||
|
|
||||||
|
|
||||||
|
StringBuilder sb = new StringBuilder("D:" + filePath + "/");
|
||||||
|
sb.append(oriFileName);
|
||||||
|
String saveFileName = sb.toString();
|
||||||
|
|
||||||
|
String contentType = request.getContentType();
|
||||||
|
File file = new File(saveFileName);
|
||||||
|
long fileLength = file.length();
|
||||||
|
|
||||||
|
String extension = FilenameUtils.getExtension(saveFileName).toLowerCase();
|
||||||
|
|
||||||
|
// 형태에 따른 컨텐트 타입 분류
|
||||||
|
if ("zip".equals(extension)) response.setContentType("application/zip");
|
||||||
|
else if ("xls".equals(extension) || "xlsx".equals(extension)) response.setContentType("application/vnd.ms-excel;charset=UTF-8");
|
||||||
|
else if ("ppt".equals(extension) || "pptx".equals(extension)) response.setContentType("application/x-mspowerpoint");
|
||||||
|
else if ("doc".equals(extension) || "docx".equals(extension)) response.setContentType("application/msword");
|
||||||
|
else if ("pdf".equals(extension)) response.setContentType("application/x-msdownload");
|
||||||
|
else if ("jpg".equals(extension)) response.setContentType("image/jpg");
|
||||||
|
else if ("gif".equals(extension)) response.setContentType("image/gif");
|
||||||
|
else if ("png".equals(extension)) response.setContentType("image/png");
|
||||||
|
|
||||||
|
|
||||||
|
response.setHeader("Content-Disposition", "attachment; filename=" + fileName + ";");
|
||||||
|
response.setHeader("Content-Transfer-Encoding", "binary");
|
||||||
|
response.setHeader("Content-Type", contentType);
|
||||||
|
response.setHeader("Content-Length", "" + fileLength);
|
||||||
|
response.setHeader("Pragma", "no-cache;");
|
||||||
|
response.setHeader("Expires", "-1;");
|
||||||
|
|
||||||
|
try {
|
||||||
|
FileInputStream fis = new FileInputStream(saveFileName);
|
||||||
|
OutputStream out = response.getOutputStream();
|
||||||
|
|
||||||
|
|
||||||
|
int readCount = 0;
|
||||||
|
byte[] buffer = new byte[BUFFERSIZE];
|
||||||
|
|
||||||
|
while ((readCount = fis.read(buffer)) != -1 ) {
|
||||||
|
out.write(buffer, 0 , readCount);
|
||||||
|
}
|
||||||
|
out.flush();
|
||||||
|
}catch(Exception e) {
|
||||||
|
throw new RuntimeException("File load Error");
|
||||||
|
}
|
||||||
|
|
||||||
|
//String fileStr ="C:/efs/admin/sendNumber/2022/07/2022071018012_2_02.PNG.png";
|
||||||
|
//String fileStr = filePath + oriFileName;
|
||||||
|
// String fileStr = filePath + oriFileName;
|
||||||
|
// File file = new File(fileStr);
|
||||||
|
// FileUtil.download(request, response, fileName, file);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -15,4 +15,7 @@ public class InsertNumberFile implements Serializable{
|
|||||||
private String filePath;
|
private String filePath;
|
||||||
private long fileSize;
|
private long fileSize;
|
||||||
private String regId;
|
private String regId;
|
||||||
|
private String regDt;
|
||||||
|
private String chgId;
|
||||||
|
private String chgDt;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,29 +24,48 @@ public class InsertNumberReqDto implements Serializable{
|
|||||||
@ApiModelProperty(example = "사업자인증여부", name = "사업자인증여부", dataType = "String")
|
@ApiModelProperty(example = "사업자인증여부", name = "사업자인증여부", dataType = "String")
|
||||||
private String bizrAuthYn;
|
private String bizrAuthYn;
|
||||||
|
|
||||||
|
|
||||||
private List<InsertNumber> list;
|
private List<InsertNumber> list;
|
||||||
|
@ApiModelProperty(example = "file", name = "통신서비스 이용증명원", dataType = "String")
|
||||||
@ApiModelProperty(example = "file", name = "위임-수임관계 확인 서류", dataType = "String")
|
private MultipartFile communicationFile;
|
||||||
private MultipartFile trustFile;
|
|
||||||
|
|
||||||
@ApiModelProperty(example = "file", name = "위임장", dataType = "String")
|
|
||||||
private MultipartFile warrantFile;
|
|
||||||
|
|
||||||
@ApiModelProperty(example = "file", name = "대리인 신분증 사본 인증", dataType = "String")
|
|
||||||
private MultipartFile deputyFile;
|
|
||||||
|
|
||||||
@ApiModelProperty(example = "file", name = "재직증명서", dataType = "String")
|
@ApiModelProperty(example = "file", name = "재직증명서", dataType = "String")
|
||||||
private MultipartFile tenureFile;
|
private MultipartFile tenureFile;
|
||||||
|
|
||||||
@ApiModelProperty(example = "file", name = "통신서비스 이용증명원", dataType = "String")
|
@ApiModelProperty(example = "file", name = "위임-수임사간 관계 확인 문서", dataType = "String")
|
||||||
private MultipartFile communicationFile;
|
private MultipartFile delegationFile;
|
||||||
|
|
||||||
|
@ApiModelProperty(example = "file", name = "위임장", dataType = "String")
|
||||||
|
private MultipartFile attorneyFile;
|
||||||
|
|
||||||
@ApiModelProperty(example = "file", name = "사업자등록증", dataType = "String")
|
@ApiModelProperty(example = "file", name = "사업자등록증", dataType = "String")
|
||||||
private MultipartFile businessFile;
|
private MultipartFile businessFile;
|
||||||
|
|
||||||
@ApiModelProperty(example = "file", name = "타사업자등록증", dataType = "String")
|
@ApiModelProperty(example = "file", name = "사업자등록증(타사)", dataType = "String")
|
||||||
private MultipartFile otherBusinessFile;
|
private MultipartFile otherBusinessFile;
|
||||||
|
|
||||||
|
@ApiModelProperty(example = "file", name = "위임사 신분증(임직원 신청시)", dataType = "String")
|
||||||
|
private MultipartFile delegatedIdentificationFile;
|
||||||
|
|
||||||
|
@ApiModelProperty(example = "file", name = "위임사 재직증명서(임직원 신청시)", dataType = "String")
|
||||||
|
private MultipartFile delegateCertificateFile;
|
||||||
|
|
||||||
|
@ApiModelProperty(example = "file", name = "위임사 사업자등록증", dataType = "String")
|
||||||
|
private MultipartFile delegatedBusinessFile;
|
||||||
|
|
||||||
|
@ApiModelProperty(example = "file", name = "수임사 사업자등록증", dataType = "String")
|
||||||
|
private MultipartFile authorizedBusinessFile;
|
||||||
|
|
||||||
|
@ApiModelProperty(example = "file", name = "법인인감증명서", dataType = "String")
|
||||||
|
private MultipartFile corporateCertificateFile;
|
||||||
|
|
||||||
|
@ApiModelProperty(example = "file", name = "신분증(본인확인)", dataType = "String")
|
||||||
|
private MultipartFile identificationCardFile;
|
||||||
|
|
||||||
|
@ApiModelProperty(example = "file", name = "재직증명서(본인확인)", dataType = "String")
|
||||||
|
private MultipartFile identificationEvidenceFile;
|
||||||
|
|
||||||
|
|
||||||
// @ApiModelProperty(example = "발신번호 인증 파일", name = "발신번호 인증 파일", dataType = "String")
|
// @ApiModelProperty(example = "발신번호 인증 파일", name = "발신번호 인증 파일", dataType = "String")
|
||||||
// private List<MultipartFile> authSendNum;
|
// private List<MultipartFile> authSendNum;
|
||||||
|
|
||||||
|
|||||||
@@ -32,5 +32,15 @@ public class SendNumberApprDetailRes implements Serializable{
|
|||||||
private String slfAuthHp;
|
private String slfAuthHp;
|
||||||
@ApiModelProperty(example = "메모", name = "메모", dataType = "String")
|
@ApiModelProperty(example = "메모", name = "메모", dataType = "String")
|
||||||
private String memo;
|
private String memo;
|
||||||
|
@ApiModelProperty(example = "파일이름", name = "파일이름", dataType = "String", hidden = true)
|
||||||
|
private String fileNm;
|
||||||
|
@ApiModelProperty(example = "서류 넘버", name = "서류 넘버", dataType = "String", hidden = true)
|
||||||
|
private String docNo;
|
||||||
|
@ApiModelProperty(example = "서류 제목", name = "서류 제목", dataType = "String", hidden = true)
|
||||||
|
private String docTitle;
|
||||||
|
@ApiModelProperty(example = "서류 유형 코드", name = "서류 유형 코드", dataType = "String", hidden = true)
|
||||||
|
private String docTpCd;
|
||||||
|
@ApiModelProperty(example = "파일 경로", name = "파일 경로", dataType = "String", hidden = true)
|
||||||
|
private String filePath;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,6 +19,8 @@ public class SendNumberApprDoc implements Serializable{
|
|||||||
private String fileNm;
|
private String fileNm;
|
||||||
@ApiModelProperty(example = "파일 구분", name = "파일 구분", dataType = "String")
|
@ApiModelProperty(example = "파일 구분", name = "파일 구분", dataType = "String")
|
||||||
private String docTpCd;
|
private String docTpCd;
|
||||||
|
@ApiModelProperty(example = "등록 요청 번호", name = "등록 요청 번호", dataType = "String", hidden = true)
|
||||||
|
private String regReqNo;
|
||||||
|
@ApiModelProperty(example = "서류 번호", name = "서류 번호", dataType = "String", hidden = true)
|
||||||
|
private String docNo;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -90,13 +90,34 @@ public class Const {
|
|||||||
/** 가입 상태 코드(99:해지) */
|
/** 가입 상태 코드(99:해지) */
|
||||||
public static final String SUBS_STTUS_CD_BREAK = "99";
|
public static final String SUBS_STTUS_CD_BREAK = "99";
|
||||||
|
|
||||||
|
/** 통신서비스 이용증명원 */
|
||||||
public static final String SNDRNO_DOC_TP_CD_01 = "01";
|
public static final String SNDRNO_DOC_TP_CD_01 = "01";
|
||||||
|
/** 재직증명서 */
|
||||||
public static final String SNDRNO_DOC_TP_CD_02 = "02";
|
public static final String SNDRNO_DOC_TP_CD_02 = "02";
|
||||||
|
/** 위임-수임사간 관계 확인 문서 */
|
||||||
public static final String SNDRNO_DOC_TP_CD_03 = "03";
|
public static final String SNDRNO_DOC_TP_CD_03 = "03";
|
||||||
|
/** 위임장 */
|
||||||
public static final String SNDRNO_DOC_TP_CD_04 = "04";
|
public static final String SNDRNO_DOC_TP_CD_04 = "04";
|
||||||
|
/** 삭제처리 */
|
||||||
public static final String SNDRNO_DOC_TP_CD_05 = "05";
|
public static final String SNDRNO_DOC_TP_CD_05 = "05";
|
||||||
|
/** 사업자등록증 */
|
||||||
public static final String SNDRNO_DOC_TP_CD_06 = "06";
|
public static final String SNDRNO_DOC_TP_CD_06 = "06";
|
||||||
|
/** 사업자등록증(타사) */
|
||||||
public static final String SNDRNO_DOC_TP_CD_07 = "07";
|
public static final String SNDRNO_DOC_TP_CD_07 = "07";
|
||||||
|
/** 위임사 신분증(임직원 신청시) */
|
||||||
|
public static final String SNDRNO_DOC_TP_CD_08 = "08";
|
||||||
|
/** 위임사 재직증명서(임직원 신청시) */
|
||||||
|
public static final String SNDRNO_DOC_TP_CD_09 = "09";
|
||||||
|
/** 위임사 사업자등록증 */
|
||||||
|
public static final String SNDRNO_DOC_TP_CD_10 = "10";
|
||||||
|
/** 수임사 사업자등록증 */
|
||||||
|
public static final String SNDRNO_DOC_TP_CD_11 = "11";
|
||||||
|
/** 법인인감증명서 */
|
||||||
|
public static final String SNDRNO_DOC_TP_CD_12 = "12";
|
||||||
|
/** 신분증 (본인확인) */
|
||||||
|
public static final String SNDRNO_DOC_TP_CD_13 = "13";
|
||||||
|
/** 재직증명서(본인확인) */
|
||||||
|
public static final String SNDRNO_DOC_TP_CD_14 = "14";
|
||||||
|
|
||||||
public static final String SNDRNO_TP_CD_SELF = "01";
|
public static final String SNDRNO_TP_CD_SELF = "01";
|
||||||
public static final String SNDRNO_TP_CD_OTHER = "02";
|
public static final String SNDRNO_TP_CD_OTHER = "02";
|
||||||
|
|||||||
@@ -54,7 +54,8 @@ public class FileUtil {
|
|||||||
boolean saved = true;
|
boolean saved = true;
|
||||||
|
|
||||||
String extension = FilenameUtils.getExtension(file.getOriginalFilename()).toLowerCase();
|
String extension = FilenameUtils.getExtension(file.getOriginalFilename()).toLowerCase();
|
||||||
String fos = path + File.separatorChar + filename + "." + extension;
|
// String fos = path + File.separatorChar + filename + "." + extension;
|
||||||
|
String fos = path + File.separatorChar + filename;
|
||||||
|
|
||||||
InputStream inputStream = null;
|
InputStream inputStream = null;
|
||||||
OutputStream outputStream = null;
|
OutputStream outputStream = null;
|
||||||
|
|||||||
@@ -299,6 +299,7 @@
|
|||||||
,DOC_TITLE
|
,DOC_TITLE
|
||||||
,FILE_NM
|
,FILE_NM
|
||||||
,FILE_PATH
|
,FILE_PATH
|
||||||
|
,FILE_SIZE
|
||||||
,REG_ID
|
,REG_ID
|
||||||
,REG_DT
|
,REG_DT
|
||||||
,CHG_ID
|
,CHG_ID
|
||||||
@@ -311,6 +312,7 @@
|
|||||||
,#{docTitle}
|
,#{docTitle}
|
||||||
,#{fileNm}
|
,#{fileNm}
|
||||||
,#{filePath}
|
,#{filePath}
|
||||||
|
,#{fileSize}
|
||||||
,#{regId}
|
,#{regId}
|
||||||
,NOW()
|
,NOW()
|
||||||
,#{regId}
|
,#{regId}
|
||||||
@@ -593,7 +595,9 @@
|
|||||||
esd.DOC_TITLE ,
|
esd.DOC_TITLE ,
|
||||||
esd.FILE_PATH ,
|
esd.FILE_PATH ,
|
||||||
esd.FILE_NM ,
|
esd.FILE_NM ,
|
||||||
esd.DOC_TP_CD
|
esd.DOC_TP_CD,
|
||||||
|
esd.REG_REQ_NO,
|
||||||
|
esd.DOC_NO
|
||||||
FROM
|
FROM
|
||||||
hubez_common.EZ_SNDRNO_DOC esd
|
hubez_common.EZ_SNDRNO_DOC esd
|
||||||
WHERE
|
WHERE
|
||||||
@@ -644,4 +648,23 @@
|
|||||||
USER_ID = #{adminId}
|
USER_ID = #{adminId}
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
<select id="selectDownload" parameterType="kr.co.uplus.ez.api.sendNumMgt.dto.InsertNumberFile" resultType="kr.co.uplus.ez.api.sendNumMgt.dto.InsertNumberFile">
|
||||||
|
/* sendNumMgt-mapper.xml(selectDownload) */
|
||||||
|
select
|
||||||
|
REG_REQ_NO,
|
||||||
|
DOC_NO ,
|
||||||
|
DOC_TP_CD ,
|
||||||
|
DOC_TITLE ,
|
||||||
|
FILE_NM ,
|
||||||
|
FILE_PATH ,
|
||||||
|
FILE_SIZE ,
|
||||||
|
REG_ID ,
|
||||||
|
REG_DT ,
|
||||||
|
CHG_ID ,
|
||||||
|
CHG_DT
|
||||||
|
from hubez_common.EZ_SNDRNO_DOC
|
||||||
|
WHERE REG_REQ_NO = #{regReqNo}
|
||||||
|
and DOC_NO = #{docNo}
|
||||||
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
@@ -6,6 +6,7 @@ xssconfig :
|
|||||||
- "/multiSendTemplateApi/insertMultiSendTemplate"
|
- "/multiSendTemplateApi/insertMultiSendTemplate"
|
||||||
- "/projectApi/manage/saveProject"
|
- "/projectApi/manage/saveProject"
|
||||||
- "/api/v1/bo/sendNumMgt/insertNumber"
|
- "/api/v1/bo/sendNumMgt/insertNumber"
|
||||||
|
- "/api/v1/bo/sendNumMgt/filedownload"
|
||||||
#- "/uc/test/testUrl" #테스트 URL
|
#- "/uc/test/testUrl" #테스트 URL
|
||||||
#xss 제외 방식(allow, except)
|
#xss 제외 방식(allow, except)
|
||||||
#allow - escape-characters 를 모두 적용 후 allow-elements 만 <, > 치환
|
#allow - escape-characters 를 모두 적용 후 allow-elements 만 <, > 치환
|
||||||
|
|||||||
Reference in New Issue
Block a user