mirror of
http://git.mhez-qa.uplus.co.kr/hubez/hubez-admin.git
synced 2025-12-07 09:05:16 +09:00
로그인 및 메인 화면 수정 변경
This commit is contained in:
34
frontend/src/modules/calculate/service/calcMgtApi.js
Normal file
34
frontend/src/modules/calculate/service/calcMgtApi.js
Normal file
@@ -0,0 +1,34 @@
|
||||
import httpClient from '@/common/http-client';
|
||||
import calcListExcelHeader from './mock/calcExcelHeader.json';
|
||||
// 공통 코드.
|
||||
const getCommCode = (params) => {
|
||||
return httpClient.post('/api/v1/bo/comm/getCode', params, { withCredentials: false });
|
||||
}
|
||||
|
||||
// 엑셀다운로드 목록 조회
|
||||
const calcListExcel = (params) => {
|
||||
return httpClient.post('/api/v1/bo/calculate/calcListExcel', params);
|
||||
}
|
||||
|
||||
|
||||
const getExcelHeader = category => {
|
||||
// 엑셀에 출력할 Header 정보를 Mockup 데이터로 관리한다.
|
||||
return new Promise(function(resolve, reject) {
|
||||
let header = [];
|
||||
switch (category) {
|
||||
case 'CALC':
|
||||
header = calcListExcelHeader.header;
|
||||
break;
|
||||
default:
|
||||
header = '';
|
||||
break;
|
||||
}
|
||||
resolve(header);
|
||||
});
|
||||
};
|
||||
|
||||
export default {
|
||||
getCommCode,
|
||||
getExcelHeader,
|
||||
calcListExcel,
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
{
|
||||
"header": [
|
||||
[
|
||||
{
|
||||
"key": "useYm",
|
||||
"name": "날짜",
|
||||
"rowspan": 2
|
||||
},
|
||||
{
|
||||
"key": "custNm",
|
||||
"name": "고객사명",
|
||||
"rowspan": 2
|
||||
},
|
||||
{
|
||||
"key": "bizrno",
|
||||
"name": "사업자번호",
|
||||
"rowspan": 2
|
||||
},
|
||||
{
|
||||
"key": "prodNm",
|
||||
"name": "요금제",
|
||||
"rowspan": 2
|
||||
},
|
||||
{
|
||||
"key": "startAmt",
|
||||
"name": "시작금액",
|
||||
"rowspan": 2
|
||||
},
|
||||
{
|
||||
"key": "useAmt",
|
||||
"name": "사용금액",
|
||||
"rowspan": 2
|
||||
},
|
||||
{
|
||||
"key": "cfwdAmt",
|
||||
"name": "이월금액",
|
||||
"rowspan": 2
|
||||
},
|
||||
{
|
||||
"key": "mrtUseAmt",
|
||||
"name": "종량금액",
|
||||
"rowspan": 2
|
||||
},
|
||||
{
|
||||
"key": "extncAmt",
|
||||
"name": "소멸금액",
|
||||
"rowspan": 2
|
||||
},
|
||||
{
|
||||
"key": "billingAmt",
|
||||
"name": "청구금액",
|
||||
"rowspan": 2
|
||||
},
|
||||
{
|
||||
"name": "채널별 발송 건수",
|
||||
"colspan": 5
|
||||
}
|
||||
],
|
||||
[{
|
||||
"key": "totalSndCnt",
|
||||
"name": "전체"
|
||||
},
|
||||
{
|
||||
"key": "smsSndCnt",
|
||||
"name": "SMS"
|
||||
},
|
||||
{
|
||||
"key": "lmsSndCnt",
|
||||
"name": "LMS"
|
||||
},
|
||||
{
|
||||
"key": "mmsSndCnt",
|
||||
"name": "MMS"
|
||||
},
|
||||
{
|
||||
"key": "atlkSndCnt",
|
||||
"name": "알림톡"
|
||||
}]
|
||||
]
|
||||
}
|
||||
@@ -63,7 +63,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="button_group">
|
||||
<button type="button" class="button blue download">엑셀 다운로드</button>
|
||||
<button type="button" class="button blue download" @click="excelDown();">엑셀 다운로드</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
@@ -93,15 +93,14 @@
|
||||
|
||||
<script>
|
||||
import customGrid from '@/components/CustomGrid';
|
||||
//import { utils_mixin, chkPattern2 } from '../service/mixins';
|
||||
import moment from "moment";
|
||||
import xlsx from '@/common/excel';
|
||||
import lodash from 'lodash';
|
||||
import commonModal from "@/components/modal/commonModal";
|
||||
import calcMgtApi from "@/modules/calculate/service/calcMgtApi";
|
||||
|
||||
export default {
|
||||
name: 'calcList',
|
||||
//mixins: [utils_mixin, chkPattern2],
|
||||
data() {
|
||||
return {
|
||||
// 달력 데이터
|
||||
@@ -121,7 +120,7 @@ export default {
|
||||
list:[],
|
||||
totalCnt: '',
|
||||
|
||||
pageType: 'SUBS',
|
||||
pageType: 'CALC',
|
||||
|
||||
// 테이블 리스트 데이터
|
||||
perPageCnt: 50,
|
||||
@@ -159,7 +158,7 @@ export default {
|
||||
columns: [
|
||||
{ name: 'useYm', header: '날짜', align: 'center'},
|
||||
{ name: 'custNm', header: '고객사명', align: 'center', width: '130px'},
|
||||
{ name: 'bizrno', header: '사업자번호', align: 'center', width: '120px'
|
||||
{ name: 'bizrno', header: '사업자번호', align: 'center', width: '120px'
|
||||
,formatter: props => {
|
||||
let result = props.bizrno.substring(0,3)+'-'+ props.bizrno.substring(3,5)+'-'+ props.bizrno.substring(5,10)
|
||||
return result;
|
||||
@@ -256,6 +255,7 @@ export default {
|
||||
created(){
|
||||
this.setPeriodDay(0);
|
||||
this.gridParamSet();
|
||||
this.getExcelHeader();
|
||||
},
|
||||
destroyed() {
|
||||
|
||||
@@ -397,7 +397,60 @@ export default {
|
||||
}
|
||||
|
||||
console.log("gridParamSet()-startMonth : "+ this.grid.params.startMonth);
|
||||
}
|
||||
},
|
||||
getExcelHeader() {
|
||||
// 헤더를 mockup으로 관리한다.
|
||||
calcMgtApi.getExcelHeader(this.pageType).then(res => {
|
||||
this.excelHeader = res;
|
||||
});
|
||||
},
|
||||
async excelDown() {
|
||||
if (this.$refs.table.getData().length <= 0) {
|
||||
this.row.title = '정산이력';
|
||||
this.row.msg1 = '조회된 데이터가 없습니다.';
|
||||
this.$refs.commmonModal.alertModalOpen(this.row);
|
||||
return false;
|
||||
}
|
||||
|
||||
let today = moment().format('YYYYMMDDHHmmss');
|
||||
const saveFileName = `정산이력_${today}.xlsx`;
|
||||
|
||||
const data = await this.getExcelDataDown();
|
||||
let options = {
|
||||
header: this.excelHeader,
|
||||
dataOrder: 'header'
|
||||
};
|
||||
// console.log(data);
|
||||
xlsx.export(data.list, saveFileName, options).then(() => {});
|
||||
},
|
||||
async getExcelDataDown() {
|
||||
try {
|
||||
let response;
|
||||
// params: {
|
||||
// startMonth: '',
|
||||
// endMonth: '',
|
||||
// },
|
||||
// const params = {
|
||||
// startDt: this.grid.params.startDt,
|
||||
// endDt: this.grid.params.endDt,
|
||||
// searchType1: this.grid.params.searchType1,
|
||||
// searchType2: this.grid.params.searchType2,
|
||||
// searchType3: this.grid.params.searchType3,
|
||||
// searchText1: this.grid.params.searchText1
|
||||
// };
|
||||
|
||||
response = await calcMgtApi.calcListExcel(this.grid.params);
|
||||
|
||||
const result = response.data;
|
||||
if (result != null && result.retCode == "0000") {
|
||||
return result.data;
|
||||
}else{
|
||||
return false;
|
||||
}
|
||||
} catch (err) {
|
||||
return false;
|
||||
}
|
||||
},
|
||||
}
|
||||
};
|
||||
</script>
|
||||
Reference in New Issue
Block a user