diff --git a/src/api/calculate.js b/src/api/calculate.js
index d530512..36c249d 100644
--- a/src/api/calculate.js
+++ b/src/api/calculate.js
@@ -75,6 +75,54 @@ async function downloadCalculateChannelDonationByCreatorExcel(startDate, endDate
});
}
+async function downloadCalculateLiveExcel(startDate, endDate) {
+ return Vue.axios.get('/admin/calculate/live/excel?startDateStr=' + startDate + '&endDateStr=' + endDate, {
+ responseType: 'blob'
+ });
+}
+
+async function downloadCalculateContentExcel(startDate, endDate) {
+ return Vue.axios.get('/admin/calculate/content-list/excel?startDateStr=' + startDate + '&endDateStr=' + endDate, {
+ responseType: 'blob'
+ });
+}
+
+async function downloadCalculateContentDonationExcel(startDate, endDate) {
+ return Vue.axios.get('/admin/calculate/content-donation-list/excel?startDateStr=' + startDate + '&endDateStr=' + endDate, {
+ responseType: 'blob'
+ });
+}
+
+async function downloadCalculateCommunityPostExcel(startDate, endDate) {
+ return Vue.axios.get('/admin/calculate/community-post/excel?startDateStr=' + startDate + '&endDateStr=' + endDate, {
+ responseType: 'blob'
+ });
+}
+
+async function downloadCalculateLiveByCreatorExcel(startDate, endDate) {
+ return Vue.axios.get('/admin/calculate/live-by-creator/excel?startDateStr=' + startDate + '&endDateStr=' + endDate, {
+ responseType: 'blob'
+ });
+}
+
+async function downloadCalculateContentByCreatorExcel(startDate, endDate) {
+ return Vue.axios.get('/admin/calculate/content-by-creator/excel?startDateStr=' + startDate + '&endDateStr=' + endDate, {
+ responseType: 'blob'
+ });
+}
+
+async function downloadCalculateCommunityByCreatorExcel(startDate, endDate) {
+ return Vue.axios.get('/admin/calculate/community-by-creator/excel?startDateStr=' + startDate + '&endDateStr=' + endDate, {
+ responseType: 'blob'
+ });
+}
+
+async function downloadCalculateChannelDonationByDateExcel(startDate, endDate) {
+ return Vue.axios.get('/admin/calculate/channel-donation-by-date/excel?startDateStr=' + startDate + '&endDateStr=' + endDate, {
+ responseType: 'blob'
+ });
+}
+
async function updateCreatorSettlementRatio(creatorSettlementRatio) {
const request = {
memberId: creatorSettlementRatio.creator_id,
@@ -105,5 +153,13 @@ export {
getCalculateCommunityByCreator,
getCalculateChannelDonationByCreator,
getCalculateChannelDonationByDate,
- downloadCalculateChannelDonationByCreatorExcel
+ downloadCalculateChannelDonationByCreatorExcel,
+ downloadCalculateLiveExcel,
+ downloadCalculateContentExcel,
+ downloadCalculateContentDonationExcel,
+ downloadCalculateCommunityPostExcel,
+ downloadCalculateLiveByCreatorExcel,
+ downloadCalculateContentByCreatorExcel,
+ downloadCalculateCommunityByCreatorExcel,
+ downloadCalculateChannelDonationByDateExcel
}
diff --git a/src/views/Calculate/CalculateChannelDonation.vue b/src/views/Calculate/CalculateChannelDonation.vue
index ca7077a..097c96d 100644
--- a/src/views/Calculate/CalculateChannelDonation.vue
+++ b/src/views/Calculate/CalculateChannelDonation.vue
@@ -47,22 +47,15 @@
-
-
- 엑셀 다운로드
-
-
+ 엑셀 다운로드
+
@@ -187,17 +180,6 @@ export default {
{ text: '정산금액', align: 'center', sortable: false, value: 'settlementAmount' },
{ text: '원천세(3.3%)', align: 'center', sortable: false, value: 'withholdingTax' },
{ text: '입금액', align: 'center', sortable: false, value: 'depositAmount' }
- ],
- excelColumns: [
- { label: '날짜', field: 'date' },
- { label: '크리에이터', field: 'creator' },
- { label: '건수', field: 'count' },
- { label: '캔', field: 'totalCan' },
- { label: '원화', field: 'krw' },
- { label: '수수료(6.6%)', field: 'fee' },
- { label: '정산금액', field: 'settlementAmount' },
- { label: '원천세(3.3%)', field: 'withholdingTax' },
- { label: '입금액', field: 'depositAmount' }
]
}
},
@@ -252,6 +234,24 @@ export default {
} finally {
this.is_loading = false
}
+ },
+
+ async downloadExcel() {
+ try {
+ const res = await api.downloadCalculateChannelDonationByDateExcel(
+ this.start_date.substring(0, 10),
+ this.end_date.substring(0, 10)
+ )
+ const url = window.URL.createObjectURL(new Blob([res.data]))
+ const link = document.createElement('a')
+ link.href = url
+ link.setAttribute('download', '채널후원정산.xlsx')
+ document.body.appendChild(link)
+ link.click()
+ document.body.removeChild(link)
+ } catch (e) {
+ this.notifyError('엑셀 다운로드 중 오류가 발생했습니다.')
+ }
}
}
}
diff --git a/src/views/Calculate/CalculateCommunityByCreator.vue b/src/views/Calculate/CalculateCommunityByCreator.vue
index 8bcd22f..1b43f99 100644
--- a/src/views/Calculate/CalculateCommunityByCreator.vue
+++ b/src/views/Calculate/CalculateCommunityByCreator.vue
@@ -47,22 +47,15 @@
-
-
- 엑셀 다운로드
-
-
+ 엑셀 다운로드
+
@@ -156,40 +149,6 @@ export default {
page_size: 20,
total_page: 0,
items: [],
- columns: [
- {
- label: "이메일",
- field: "email",
- },
- {
- label: "크리에이터",
- field: "nickname",
- },
- {
- label: "합계(캔)",
- field: "totalCan",
- },
- {
- label: "원화",
- field: "totalKrw",
- },
- {
- label: "결제수수료(6.6%)",
- field: "paymentFee",
- },
- {
- label: "정산금액",
- field: "settlementAmount",
- },
- {
- label: "원천세(3.3%)",
- field: "tax",
- },
- {
- label: "입금액",
- field: "depositAmount",
- },
- ],
headers: [
{
text: '이메일',
@@ -309,6 +268,21 @@ export default {
} finally {
this.is_loading = false
}
+ },
+
+ async downloadExcel() {
+ try {
+ const res = await api.downloadCalculateCommunityByCreatorExcel(this.start_date, this.end_date)
+ const url = window.URL.createObjectURL(new Blob([res.data]))
+ const link = document.createElement('a')
+ link.href = url
+ link.setAttribute('download', '크리에이터별_커뮤니티정산.xlsx')
+ document.body.appendChild(link)
+ link.click()
+ document.body.removeChild(link)
+ } catch (e) {
+ this.notifyError('엑셀 다운로드 중 오류가 발생했습니다.')
+ }
}
}
}
diff --git a/src/views/Calculate/CalculateCommunityPost.vue b/src/views/Calculate/CalculateCommunityPost.vue
index 3fda528..5e5c7c0 100644
--- a/src/views/Calculate/CalculateCommunityPost.vue
+++ b/src/views/Calculate/CalculateCommunityPost.vue
@@ -35,7 +35,7 @@
-
-
- 엑셀 다운로드
-
-
+ 엑셀 다운로드
+
@@ -136,52 +129,6 @@ export default {
page_size: 20,
total_page: 0,
items: [],
- columns: [
- {
- label: '날짜',
- field: 'date',
- },
- {
- label: '크리에이터',
- field: 'nickname',
- },
- {
- label: '내용(앞 10글자)',
- field: 'title'
- },
- {
- label: '판매금액(캔)',
- field: 'can',
- },
- {
- label: '구매유저수',
- field: 'numberOfPurchase',
- },
- {
- label: '합계(캔)',
- field: 'totalCan',
- },
- {
- label: '원화',
- field: 'totalKrw',
- },
- {
- label: '수수료\n(6.6%)',
- field: 'paymentFee',
- },
- {
- label: '정산금액',
- field: 'settlementAmount',
- },
- {
- label: '원천세\n(3.3%)',
- field: 'tax',
- },
- {
- label: '입금액',
- field: 'depositAmount',
- }
- ],
headers: [
{
text: '날짜',
@@ -309,6 +256,21 @@ export default {
this.notifyError('알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.')
this.is_loading = false
}
+ },
+
+ async downloadExcel() {
+ try {
+ const res = await api.downloadCalculateCommunityPostExcel(this.start_date, this.end_date)
+ const url = window.URL.createObjectURL(new Blob([res.data]))
+ const link = document.createElement('a')
+ link.href = url
+ link.setAttribute('download', '커뮤니티-정산.xlsx')
+ document.body.appendChild(link)
+ link.click()
+ document.body.removeChild(link)
+ } catch (e) {
+ this.notifyError('엑셀 다운로드 중 오류가 발생했습니다.')
+ }
}
}
}
diff --git a/src/views/Calculate/CalculateContent.vue b/src/views/Calculate/CalculateContent.vue
index ce16f42..901aa2c 100644
--- a/src/views/Calculate/CalculateContent.vue
+++ b/src/views/Calculate/CalculateContent.vue
@@ -35,7 +35,7 @@
-
-
- 엑셀 다운로드
-
-
+ 엑셀 다운로드
+
@@ -144,60 +137,6 @@ export default {
start_date: null,
end_date: null,
items: [],
- columns: [
- {
- label: '판매일',
- field: 'saleDate',
- },
- {
- label: '크리에이터',
- field: 'nickname',
- },
- {
- label: '제목',
- field: 'title',
- },
- {
- label: '구분',
- field: 'orderType',
- },
- {
- label: '판매금액(캔)',
- field: 'orderPrice',
- },
- {
- label: '판매수',
- field: 'numberOfPeople',
- },
- {
- label: '합계(캔)',
- field: 'totalCan',
- },
- {
- label: '원화',
- field: 'totalKrw',
- },
- {
- label: '수수료\n(6.6%)',
- field: 'paymentFee',
- },
- {
- label: '정산금액',
- field: 'settlementAmount',
- },
- {
- label: '원천세\n(3.3%)',
- field: 'tax',
- },
- {
- label: '입금액',
- field: 'depositAmount',
- },
- {
- label: '등록일',
- field: 'registrationDate',
- },
- ],
headers: [
{
text: '판매일',
@@ -333,6 +272,21 @@ export default {
this.notifyError('알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.')
this.is_loading = false
}
+ },
+
+ async downloadExcel() {
+ try {
+ const res = await api.downloadCalculateContentExcel(this.start_date, this.end_date)
+ const url = window.URL.createObjectURL(new Blob([res.data]))
+ const link = document.createElement('a')
+ link.href = url
+ link.setAttribute('download', '콘텐츠정산.xlsx')
+ document.body.appendChild(link)
+ link.click()
+ document.body.removeChild(link)
+ } catch (e) {
+ this.notifyError('엑셀 다운로드 중 오류가 발생했습니다.')
+ }
}
}
}
diff --git a/src/views/Calculate/CalculateContentByCreator.vue b/src/views/Calculate/CalculateContentByCreator.vue
index 5a6117d..d4ed59d 100644
--- a/src/views/Calculate/CalculateContentByCreator.vue
+++ b/src/views/Calculate/CalculateContentByCreator.vue
@@ -47,22 +47,15 @@
-
-
- 엑셀 다운로드
-
-
+ 엑셀 다운로드
+
@@ -156,40 +149,6 @@ export default {
page_size: 20,
total_page: 0,
items: [],
- columns: [
- {
- label: "이메일",
- field: "email",
- },
- {
- label: "크리에이터",
- field: "nickname",
- },
- {
- label: "합계(캔)",
- field: "totalCan",
- },
- {
- label: "원화",
- field: "totalKrw",
- },
- {
- label: "결제수수료(6.6%)",
- field: "paymentFee",
- },
- {
- label: "정산금액",
- field: "settlementAmount",
- },
- {
- label: "원천세(3.3%)",
- field: "tax",
- },
- {
- label: "입금액",
- field: "depositAmount",
- },
- ],
headers: [
{
text: '이메일',
@@ -309,6 +268,21 @@ export default {
} finally {
this.is_loading = false
}
+ },
+
+ async downloadExcel() {
+ try {
+ const res = await api.downloadCalculateContentByCreatorExcel(this.start_date, this.end_date)
+ const url = window.URL.createObjectURL(new Blob([res.data]))
+ const link = document.createElement('a')
+ link.href = url
+ link.setAttribute('download', '크리에이터별_콘텐츠정산.xlsx')
+ document.body.appendChild(link)
+ link.click()
+ document.body.removeChild(link)
+ } catch (e) {
+ this.notifyError('엑셀 다운로드 중 오류가 발생했습니다.')
+ }
}
}
}
diff --git a/src/views/Calculate/CalculateContentDonation.vue b/src/views/Calculate/CalculateContentDonation.vue
index ca8b18a..7e667e4 100644
--- a/src/views/Calculate/CalculateContentDonation.vue
+++ b/src/views/Calculate/CalculateContentDonation.vue
@@ -35,7 +35,7 @@
-
-
- 엑셀 다운로드
-
-
+ 엑셀 다운로드
+
@@ -136,56 +129,6 @@ export default {
start_date: null,
end_date: null,
items: [],
- columns: [
- {
- label: '후원날짜',
- field: 'donationDate',
- },
- {
- label: '크리에이터',
- field: 'nickname',
- },
- {
- label: '콘텐츠 제목',
- field: 'title',
- },
- {
- label: '구분',
- field: 'paidOrFree',
- },
- {
- label: '후원수',
- field: 'numberOfDonation',
- },
- {
- label: '합계(캔)',
- field: 'totalCan',
- },
- {
- label: '원화',
- field: 'totalKrw',
- },
- {
- label: '수수료\n(6.6%)',
- field: 'paymentFee',
- },
- {
- label: '정산금액',
- field: 'settlementAmount',
- },
- {
- label: '원천세\n(3.3%)',
- field: 'tax',
- },
- {
- label: '입금액',
- field: 'depositAmount',
- },
- {
- label: '콘텐츠 등록일',
- field: 'registrationDate',
- },
- ],
headers: [
{
text: '후원날짜',
@@ -315,6 +258,21 @@ export default {
this.notifyError('알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.')
this.is_loading = false
}
+ },
+
+ async downloadExcel() {
+ try {
+ const res = await api.downloadCalculateContentDonationExcel(this.start_date, this.end_date)
+ const url = window.URL.createObjectURL(new Blob([res.data]))
+ const link = document.createElement('a')
+ link.href = url
+ link.setAttribute('download', '콘텐츠후원정산.xlsx')
+ document.body.appendChild(link)
+ link.click()
+ document.body.removeChild(link)
+ } catch (e) {
+ this.notifyError('엑셀 다운로드 중 오류가 발생했습니다.')
+ }
}
}
}
diff --git a/src/views/Calculate/CalculateLive.vue b/src/views/Calculate/CalculateLive.vue
index e5bd94d..5333f0e 100644
--- a/src/views/Calculate/CalculateLive.vue
+++ b/src/views/Calculate/CalculateLive.vue
@@ -35,7 +35,7 @@
-
-
- 엑셀 다운로드
-
-
+ 엑셀 다운로드
+
@@ -144,60 +137,6 @@ export default {
start_date: null,
end_date: null,
items: [],
- columns: [
- {
- label: "이메일",
- field: "email",
- },
- {
- label: "크리에이터",
- field: "nickname",
- },
- {
- label: "날짜",
- field: "date",
- },
- {
- label: "제목",
- field: "title",
- },
- {
- label: "구분",
- field: "canUsageStr",
- },
- {
- label: "입장캔",
- field: "entranceFee",
- },
- {
- label: "인원",
- field: "numberOfPeople",
- },
- {
- label: "합계(캔)",
- field: "totalAmount",
- },
- {
- label: "원화",
- field: "totalKrw",
- },
- {
- label: "결제수수료(6.6%)",
- field: "paymentFee",
- },
- {
- label: "정산금액",
- field: "settlementAmount",
- },
- {
- label: "원천세(3.3%)",
- field: "tax",
- },
- {
- label: "입금액",
- field: "depositAmount",
- },
- ],
headers: [
{
text: '이메일',
@@ -327,6 +266,21 @@ export default {
this.notifyError('알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.')
this.is_loading = false
}
+ },
+
+ async downloadExcel() {
+ try {
+ const res = await api.downloadCalculateLiveExcel(this.start_date, this.end_date)
+ const url = window.URL.createObjectURL(new Blob([res.data]))
+ const link = document.createElement('a')
+ link.href = url
+ link.setAttribute('download', '라이브정산.xlsx')
+ document.body.appendChild(link)
+ link.click()
+ document.body.removeChild(link)
+ } catch (e) {
+ this.notifyError('엑셀 다운로드 중 오류가 발생했습니다.')
+ }
}
}
}
diff --git a/src/views/Calculate/CalculateLiveByCreator.vue b/src/views/Calculate/CalculateLiveByCreator.vue
index 1acb535..c4b302e 100644
--- a/src/views/Calculate/CalculateLiveByCreator.vue
+++ b/src/views/Calculate/CalculateLiveByCreator.vue
@@ -47,22 +47,15 @@
-
-
- 엑셀 다운로드
-
-
+ 엑셀 다운로드
+
@@ -156,40 +149,6 @@ export default {
page_size: 20,
total_page: 0,
items: [],
- columns: [
- {
- label: "이메일",
- field: "email",
- },
- {
- label: "크리에이터",
- field: "nickname",
- },
- {
- label: "합계(캔)",
- field: "totalCan",
- },
- {
- label: "원화",
- field: "totalKrw",
- },
- {
- label: "결제수수료(6.6%)",
- field: "paymentFee",
- },
- {
- label: "정산금액",
- field: "settlementAmount",
- },
- {
- label: "원천세(3.3%)",
- field: "tax",
- },
- {
- label: "입금액",
- field: "depositAmount",
- },
- ],
headers: [
{
text: '이메일',
@@ -309,6 +268,21 @@ export default {
} finally {
this.is_loading = false
}
+ },
+
+ async downloadExcel() {
+ try {
+ const res = await api.downloadCalculateLiveByCreatorExcel(this.start_date, this.end_date)
+ const url = window.URL.createObjectURL(new Blob([res.data]))
+ const link = document.createElement('a')
+ link.href = url
+ link.setAttribute('download', '크리에이터별_라이브정산.xlsx')
+ document.body.appendChild(link)
+ link.click()
+ document.body.removeChild(link)
+ } catch (e) {
+ this.notifyError('엑셀 다운로드 중 오류가 발생했습니다.')
+ }
}
}
}