발신번호 등록시 제출 서류 변경 건

- 법인인감증명서 삭제
- 수임사 대리인 재직증명서 추가
- 수임사 대리인 신분증 추가
This commit is contained in:
kimjhjjang
2022-11-17 10:20:02 +09:00
parent 69aec986af
commit c83300ecf2
8 changed files with 983 additions and 685 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -1,26 +1,24 @@
import ProfileList from '../views/ProfileList'
import NumberList from '../views/NumberList'
import ApprList from '../views/ApprList'
//import ProfileList from '../views/ProfileList'
import NumberList from '../views/NumberList';
import ApprList from '../views/ApprList';
export default [
{
/* { 카카오 채널관리로 이동
path: '/sendNumMgt/profileList',
component: ProfileList,
name: 'profileList',
meta: { public: false }
}, */
{
path: '/sendNumMgt/numberList',
component: NumberList,
name: 'numberList',
meta: { public: false },
},
{
path: '/sendNumMgt/numberList',
component: NumberList,
name: 'numberList',
meta: { public: false }
path: '/sendNumMgt/apprList',
component: ApprList,
name: 'apprList',
meta: { public: false },
},
{
path: '/sendNumMgt/apprList',
component: ApprList,
name: 'apprList',
meta: { public: false }
},
]
];

View File

@@ -3,153 +3,191 @@ import axios from 'axios';
// 공통 코드.
const getCommCode = (params) => {
return httpClient.post('/api/v1/bo/comm/getCode', params, { withCredentials: false });
}
return httpClient.post('/api/v1/bo/comm/getCode', params, { withCredentials: false });
};
const adminList = (params) => {
return httpClient.post('/api/v1/bo/sendNumMgt/adminList', params, {withCredentials: false});
}
return httpClient.post('/api/v1/bo/sendNumMgt/adminList', params, { withCredentials: false });
};
const numberDetail = (params) => {
return httpClient.post('/api/v1/bo/sendNumMgt/numberDetail', params, {withCredentials: false});
}
return httpClient.post('/api/v1/bo/sendNumMgt/numberDetail', params, { withCredentials: false });
};
const apprDetail = (params) => {
return httpClient.post('/api/v1/bo/sendNumMgt/apprDetail', params, {withCredentials: false});
}
return httpClient.post('/api/v1/bo/sendNumMgt/apprDetail', params, { withCredentials: false });
};
const deleteNumber = (params) => {
return httpClient.post('/api/v1/bo/sendNumMgt/deleteNumber', params, {withCredentials: false});
}
return httpClient.post('/api/v1/bo/sendNumMgt/deleteNumber', params, { withCredentials: false });
};
// 사업자가 등록 요청.
const insertNumber = (adminId, custNm, bRegNo, nmineeDivCd, numberInputs, bizrAuthYn, custSeq) => {
let formData = new FormData();
const row = {}
row.adminId = adminId
row.custNm = custNm
row.bregno = bRegNo
row.nmineeDivCd = nmineeDivCd
row.list = numberInputs
row.bizrAuthYn = bizrAuthYn
row.custSeq = custSeq
let formData = new FormData();
const row = {};
row.adminId = adminId;
row.custNm = custNm;
row.bregno = bRegNo;
row.nmineeDivCd = nmineeDivCd;
row.list = numberInputs;
row.bizrAuthYn = bizrAuthYn;
row.custSeq = custSeq;
formData.append('key', new Blob([ JSON.stringify(row) ], {type : "application/json"}));
formData.append('key', new Blob([JSON.stringify(row)], { type: 'application/json' }));
let url = "/api/v1/bo/sendNumMgt/insertNumber";
return httpClient.post(url, formData, {
headers: {
"Content-Type": "multipart/form-data",
"Show-Layer": "Yes"
}
});
let url = '/api/v1/bo/sendNumMgt/insertNumber';
return httpClient.post(url, formData, {
headers: {
'Content-Type': 'multipart/form-data',
'Show-Layer': 'Yes',
},
});
};
// 사업자가 등록 요청.
const insertNumber1 = (communicationFile, tenureFile ,businessFile, identificationCardFile, identificationEvidenceFile,adminId, custNm, bRegNo, nmineeDivCd, numberInputs, bizrAuthYn, custSeq) => {
let formData = new FormData();
formData.append("communicationFile", communicationFile);
formData.append("tenureFile", tenureFile);
formData.append("businessFile", businessFile);
formData.append("identificationCardFile", identificationCardFile);
formData.append("identificationEvidenceFile", identificationEvidenceFile);
const insertNumber1 = (
communicationFile,
tenureFile,
businessFile,
identificationCardFile,
identificationEvidenceFile,
adminId,
custNm,
bRegNo,
nmineeDivCd,
numberInputs,
bizrAuthYn,
custSeq
) => {
let formData = new FormData();
formData.append('communicationFile', communicationFile);
formData.append('tenureFile', tenureFile);
formData.append('businessFile', businessFile);
formData.append('identificationCardFile', identificationCardFile);
formData.append('identificationEvidenceFile', identificationEvidenceFile);
const row = {}
row.adminId = adminId
row.custNm = custNm
row.bregno = bRegNo
row.nmineeDivCd = nmineeDivCd
row.list = numberInputs
row.bizrAuthYn = bizrAuthYn
row.custSeq = custSeq
const row = {};
row.adminId = adminId;
row.custNm = custNm;
row.bregno = bRegNo;
row.nmineeDivCd = nmineeDivCd;
row.list = numberInputs;
row.bizrAuthYn = bizrAuthYn;
row.custSeq = custSeq;
formData.append('key', new Blob([ JSON.stringify(row) ], {type : "application/json"}));
formData.append('key', new Blob([JSON.stringify(row)], { type: 'application/json' }));
let url = "/api/v1/bo/sendNumMgt/insertNumber";
return httpClient.post(url, formData, {
headers: {
"Content-Type": "multipart/form-data",
"Show-Layer": "Yes"
}
});
let url = '/api/v1/bo/sendNumMgt/insertNumber';
return httpClient.post(url, formData, {
headers: {
'Content-Type': 'multipart/form-data',
'Show-Layer': 'Yes',
},
});
};
// 타사업자가 등록 요청.
const insertNumber2 = (communicationFile, delegationFile, attorneyFile, otherBusinessFile, delegatedIdentificationFile, delegateCertificateFile, delegatedBusinessFile, authorizedBusinessFile, corporateCertificateFile, identificationCardFile, identificationEvidenceFile, adminId, custNm, bRegNo, nmineeDivCd, numberInputs, bizrAuthYn, custSeq) => {
let formData = new FormData();
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 = {}
row.adminId = adminId
row.custNm = custNm
row.bregno = bRegNo
row.nmineeDivCd = nmineeDivCd
row.list = numberInputs
row.bizrAuthYn = bizrAuthYn
row.custSeq = custSeq
const insertNumber2 = (
communicationFile,
delegationFile,
attorneyFile,
otherBusinessFile,
delegatedIdentificationFile,
delegateCertificateFile,
delegatedBusinessFile,
authorizedBusinessFile,
//corporateCertificateFile,
identificationCardFile,
identificationEvidenceFile,
commDeputyCertificateFile,
commDeputyIdFile,
adminId,
custNm,
bRegNo,
nmineeDivCd,
numberInputs,
bizrAuthYn,
custSeq
) => {
let formData = new FormData();
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);
formData.append('commDeputyCertificateFile', commDeputyCertificateFile);
formData.append('commDeputyIdFile', commDeputyIdFile);
const row = {};
row.adminId = adminId;
row.custNm = custNm;
row.bregno = bRegNo;
row.nmineeDivCd = nmineeDivCd;
row.list = numberInputs;
row.bizrAuthYn = bizrAuthYn;
row.custSeq = custSeq;
formData.append('key', new Blob([ JSON.stringify(row) ], {type : "application/json"}));
formData.append('key', new Blob([JSON.stringify(row)], { type: 'application/json' }));
let url = "/api/v1/bo/sendNumMgt/insertNumber";
return httpClient.post(url, formData, {
headers: {
"Content-Type": "multipart/form-data",
"Show-Layer": "Yes"
}
});
let url = '/api/v1/bo/sendNumMgt/insertNumber';
return httpClient.post(url, formData, {
headers: {
'Content-Type': 'multipart/form-data',
'Show-Layer': 'Yes',
},
});
};
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) => {
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
}
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 => {
})
}
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;
}
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);
});
};
export default {
getCommCode,
numberDetail,
adminList,
insertNumber,
insertNumber1,
insertNumber2,
apprDetail,
updateAppr,
deleteNumber,
fileDownload
}
getCommCode,
numberDetail,
adminList,
insertNumber,
insertNumber1,
insertNumber2,
apprDetail,
updateAppr,
deleteNumber,
fileDownload,
};

View File

@@ -1,190 +0,0 @@
<template>
<div class="contents">
<div class="contents_wrap">
<div class="top_wrap">
<h3 class="title">발신프로필관리</h3>
<p class="breadcrumb">발신번호관리 &gt; 발신프로필관리</p>
</div>
<div class="search_wrap">
<div class="select_box">
<label for="stat" class="label">상태</label>
<select name="" id="stat" v-model="searchType1" @keyup.enter="search">
<option value="">전체</option>
<option value="A">사용</option>
<option value="N">미사용</option>
<option value="H">휴면</option>
<option value="D">삭제</option>
</select>
</div>
<div class="select_box id">
<label for="searchType" class="label">상세검색</label>
<select name="" id="searchType" v-model="searchType2" @keyup.enter="search">
<option value="custNm">고객사명</option>
<option value="bregNo">사업자번호</option>
<option value="sendProfile">발신프로필</option>
</select>
</div>
<div class="input_box">
<input class="search-box" type="text" id="search" placeholder="검색어 입력" v-model.trim="grid.params.searchText1"
maxlength="100" @keyup.enter="search"/>
</div>
<button type="button" class="button grey" @click="search">조회</button>
</div>
<div class="info">
<div class="count"> <span> {{ totalItems.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }} </span>
<div class="select_box NumberSe">
<select name="" id="perpage" v-model="perPageCnt" @change="changePerPage()">
<option v-for="option in options" v-bind:value="option.value" v-bind:key="option.value">{{
option.text
}}
</option>
</select>
</div>
</div>
</div>
<div class="table">
<custom-grid
ref="table"
:totalItems="'totalItems'"
:url="grid.url"
:pagePerRows="grid.pagePerRows"
:initialRequest="grid.pagination"
:pagination="grid.pagination"
:isCheckbox="grid.isCheckbox"
:columns="grid.columns"
:noDataStr="grid.noDataStr"
:addCls="grid.addCls"
:header="grid.headder">
</custom-grid>
</div>
</div>
</div>
</template>
<script>
import customGrid from '@/components/CustomGrid';
export default {
name: 'profileList',
data() {
return {
row: {},
authType: [],
statType: [],
cate2Code: "",
totalItems: 0,
searchType1: '',
searchType2: 'custNm',
// 테이블 리스트 데이터
perPageCnt: 50,
options: [
{text: '20', value: 20},
{text: '50', value: 50},
{text: '100', value: 100}
],
grid: {
url: '/api/v1/bo/sendNumMgt/profileList',
pagePerRows: 20,
pagination: true,
isCheckbox: false,
initialRequest: false,
addCls: 'box_OFvis',
header: [
[
{header: 'NO', childNames: []},
{header: '고객사명', childNames: []},
{header: '사업자번호', childNames: []},
{header: '발신프로필', childNames: []},
{header: '발신프로필key', childNames: []},
{header: '상태', childNames: []},
{header: '등록일', childNames: []},
]
],
columns: [
{name: 'no', header: 'NO', align: 'center', width: '5%'},
{name: 'custNm', header: '고객사명', align: 'center', width: '15%'},
{name: 'bregNo', header: '사업자번호', align: 'center', width: '15%'},
{name: 'sendProfile', header: '발신프로필', align: 'center', width: '15%'},
{name: 'sendProfileKey', header: '발신프로필key', align: 'center', width: '20%'},
{name: 'stat', header: '상태', width: '15%', cls: 'td_line'},
{name: 'regDt', header: '등록일', align: 'center', width: '15%'},
],
noDataStr: '검색 결과가 없습니다.',
params: {
searchType1: '',
searchType2: 'custNm',
searchText1: ''
},
excelHeader: []
}
};
},
components: {
customGrid: customGrid,
},
destroyed() {
this.$store.commit('searchcondition/updateSearchCondition', {
page: 1,
perPage: 50,
params: {
searchType1: '',
searchType2: '',
searchText1: ''
}
});
},
created() {
},
mounted() {
let page = 1;
// 페이지 정보 및 검색 조건
const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
// store에 저장된 페이지 정보 및 검색 조건을 불러오기
let isKeep = false;
if (getCondition) {
this.grid.pagePerRows = getCondition.perPage;
this.grid.params = getCondition.params;
page = getCondition.page;
isKeep = true;
}
this.search(isKeep);
},
methods: {
search: function (isKeep) {
this.grid.params.searchType1 = this.searchType1
this.grid.params.searchType2 = this.searchType2
this.$refs.table.search(this.grid.params, isKeep);
this.sendStoreData();
},
sendStoreData: function () {
const getP = this.$refs.table.getPagination();
this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage,
perPage: this.perPageCnt,
params: this.grid.params
});
const getCondition = this.$store.getters['searchcondition/getSearchCondition'];
},
changePerPage: function () { // 페이지당 조회할 개수
this.grid.pagePerRows = this.perPageCnt;
},
},
beforeRouteLeave(to, from, next) {
const getP = this.$refs.table.getPagination();
this.$store.commit('searchcondition/updateSearchCondition', {
page: getP._currentPage,
perPage: this.perPageCnt,
params: this.grid.params
});
// 라우트 하기전 실행
next();
}
};
</script>