mirror of
http://git.mhez-qa.uplus.co.kr/hubez/hubez-admin.git
synced 2025-12-08 21:28:35 +09:00
수정건 수정
This commit is contained in:
@@ -178,8 +178,11 @@ export default {
|
||||
if(fileExpend != "xlsx"){
|
||||
//alert("파일은 (xlsx) 형식만 등록 가능합니다.");
|
||||
this.row.title = '파일 업로드';
|
||||
this.row.msg1 = '샘플과 동일한 확장자가 아닙니다.';
|
||||
this.row.msg1 = '다시 업로드 해주세요.';
|
||||
this.row.msg1 = '업로드 할 수 없는 파일 형식입니다.';
|
||||
this.row.msg2 = '샘플 파일을 내려 받아 사용해주세요.';
|
||||
// this.row.msg1 = '샘플과 동일한 확장자가 아닙니다.';
|
||||
// this.row.msg1 = '다시 업로드 해주세요.';
|
||||
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
@@ -205,26 +208,60 @@ export default {
|
||||
this.row.msg1 = '파일을 읽는 동안 에러가 발생 했습니다.';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
};
|
||||
reader.onloadend = (e) => {
|
||||
};
|
||||
// reader.onloadend = (e) => {
|
||||
// };
|
||||
|
||||
reader.onload = (e) => {
|
||||
let data = reader.result;
|
||||
let workbook = XLSX.read(data, {type: 'binary'});
|
||||
|
||||
/** header 규격 비교 start */
|
||||
var readHeader = vm.get_header_row(workbook.Sheets["Sheet1"]);
|
||||
var headersArr = [];
|
||||
var excelHeaders = this.excelHeader[0];
|
||||
for(var i=0; i < excelHeaders.length; i++){
|
||||
var headerCol = excelHeaders[i];
|
||||
headersArr.push(headerCol.name);
|
||||
}
|
||||
|
||||
if(readHeader.length == headersArr.length){
|
||||
for(var i=0; i<readHeader.length; i++){
|
||||
if(readHeader[i] != headersArr[i]){
|
||||
this.$refs.file.value = null;
|
||||
let element = document.getElementById('uploadFile');
|
||||
while (element.firstChild) {
|
||||
element.removeChild(element.firstChild);
|
||||
}
|
||||
this.row.title = '청약고객관리';
|
||||
this.row.msg1 = '규격이 다른 파일 입니다.';
|
||||
this.row.msg1 = '샘플파일을 다운로드 받아 업로드 해주세요.';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}else{
|
||||
this.row.title = '청약고객관리';
|
||||
this.row.msg1 = '규격이 다른 파일 입니다.';
|
||||
this.row.msg1 = '샘플파일을 다운로드 받아 업로드 해주세요.';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
/** header 규격 비교 end */
|
||||
|
||||
workbook.SheetNames.forEach((sheetName) => {
|
||||
const rowObj = XLSX.utils.sheet_to_json(workbook.Sheets[sheetName], {raw: true});
|
||||
tmpResult = rowObj;
|
||||
tmpResult = rowObj;
|
||||
const limitCnt = 100;
|
||||
|
||||
this.totalCnt = Number(this.totalItems) + rowObj.length;
|
||||
this.insertRowCnt = rowObj.length;
|
||||
|
||||
this.insertRowCnt = rowObj.length;
|
||||
if (this.totalCnt > limitCnt) {
|
||||
this.row.title = '청약고객관리';
|
||||
this.row.msg1 = '100건이상은 등록되지 않습니다.';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
for (const [idx, r] of rowObj.entries()) {
|
||||
if (idx > limitCnt - 1) {
|
||||
break;
|
||||
@@ -235,7 +272,7 @@ export default {
|
||||
휴대폰번호 = '' + (vm.isNull(휴대폰번호) ? '' : 휴대폰번호);
|
||||
이메일 = '' + (vm.isNull(이메일) ? '' : 이메일);
|
||||
ID잠금 = '' + (vm.isNull(ID잠금) ? '' : ID잠금);
|
||||
|
||||
|
||||
// 휴대폰번호=''+휴대폰번호;
|
||||
if (!vm.isMobile(휴대폰번호)) {
|
||||
if (vm.isMobile2(휴대폰번호)) {
|
||||
@@ -243,7 +280,7 @@ export default {
|
||||
}
|
||||
}
|
||||
|
||||
let {retVal, msg} = vm.validXlxs({ID, 이름, 휴대폰번호, 이메일, ID잠금});
|
||||
let {retVal, msg} = vm.validXlxs({ID, 이름, 휴대폰번호, 이메일, ID잠금});
|
||||
if (retVal) {
|
||||
const pVal = [
|
||||
{name: '이름', val: 이름, len: 20},
|
||||
@@ -265,6 +302,23 @@ export default {
|
||||
};
|
||||
reader.readAsBinaryString(file);
|
||||
},
|
||||
|
||||
// sheet에서 header만 읽어 오기
|
||||
get_header_row(sheet) {
|
||||
var headers = [];
|
||||
var range = XLSX.utils.decode_range(sheet['!ref']);
|
||||
var C, R = range.s.r; /* start in the first row */
|
||||
/* walk every column in the range */
|
||||
for(C = range.s.c; C <= range.e.c; ++C) {
|
||||
var cell = sheet[XLSX.utils.encode_cell({c:C, r:R})] /* find the cell in the first row */
|
||||
var hdr = "UNKNOWN " + C; // <-- replace with your desired default
|
||||
if(cell && cell.t) hdr = XLSX.utils.format_cell(cell);
|
||||
headers.push(hdr);
|
||||
}
|
||||
return headers;
|
||||
},
|
||||
|
||||
|
||||
validXlxs({이름, 휴대폰번호, 이메일}) {
|
||||
if (this.isNull(이름)) {
|
||||
return {retVal: false, msg: '이름 누락'};
|
||||
@@ -311,6 +365,16 @@ export default {
|
||||
this.row.adminId = this.adminId;
|
||||
this.row.list = this.nData;
|
||||
|
||||
// 대량 ID 등록시 파일 여부 체크
|
||||
let element = document.getElementById('uploadFile');
|
||||
if(element.firstChild == null){
|
||||
this.row.title = '청약고객 관리';
|
||||
this.row.msg1 = '업로드 파일이 없습니다.';
|
||||
this.row.msg2 = '파일을 업로드 해주세요.';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
try {
|
||||
const response = await custMgtApi.insertMassUser(this.row);
|
||||
const result = response.data;
|
||||
|
||||
@@ -106,10 +106,32 @@ export default {
|
||||
}
|
||||
},
|
||||
//사용자ID 생성 Confirm
|
||||
memberInsertConfirm() {
|
||||
async memberInsertConfirm() {
|
||||
// confirm 팝업 노출
|
||||
if (this.doValidate()) {
|
||||
this.$refs.validationConfirmModalPop.confirmInsertOpen()
|
||||
// ID 중복체크
|
||||
try{
|
||||
this.row.adminId = this.adminId;
|
||||
this.row.userId = this.userId;
|
||||
this.row.userNm = this.userNm;
|
||||
this.row.userEmail = this.email;
|
||||
this.row.mdn = this.mdn;
|
||||
this.row.userStat = this.stat;
|
||||
const response = await custMgtApi.duplicateCheckUserId(this.row);
|
||||
const result = response.data;
|
||||
if (result != null && result.retCode == "0000") {
|
||||
this.$refs.validationConfirmModalPop.confirmInsertOpen();
|
||||
} else if (result != null && result.retCode == "4018") {
|
||||
// 이미 사용중인 ID
|
||||
this.row.title = '청약고객관리';
|
||||
this.row.msg1 = '중복된 아이디가 있습니다.';
|
||||
this.row.msg2 = '아이디를 다시 확인하여 등록 부탁드립니다.';
|
||||
this.$parent.$refs.commmonModal.alertModalOpen(this.row);
|
||||
}
|
||||
}catch(err){
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
},
|
||||
//사용자ID 수정 처리
|
||||
|
||||
@@ -48,6 +48,11 @@ const insertUser = (params) => {
|
||||
return httpClient.post('/api/v1/bo/custMgt/insertUser', params);
|
||||
}
|
||||
|
||||
// 사용자 ID 중복 체크
|
||||
const duplicateCheckUserId = (params) => {
|
||||
return httpClient.post('/api/v1/bo/custMgt/duplicateCheckUserId', params);
|
||||
}
|
||||
|
||||
// 사용자 ID 수정
|
||||
const updateUser = (params) => {
|
||||
return httpClient.post('/api/v1/bo/custMgt/updateUser', params);
|
||||
@@ -117,4 +122,5 @@ export default {
|
||||
updateAdminInfoTotal,
|
||||
deleteMemo,
|
||||
insertTestId,
|
||||
duplicateCheckUserId,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user