diff --git a/app/pages/paths/management/ManageBook.vue b/app/pages/paths/management/ManageBook.vue
index bea6b548..fba67b52 100644
--- a/app/pages/paths/management/ManageBook.vue
+++ b/app/pages/paths/management/ManageBook.vue
@@ -82,6 +82,14 @@ export default {
} catch (err) {
this.$swal('이런!', err.message, 'error')
}
+ },
+
+ async download () {
+ try {
+ await bookManager.getExcel()
+ } catch (err) {
+ this.$swal('이런!', err.message, 'error')
+ }
}
}
}
@@ -99,7 +107,7 @@ export default {
diff --git a/app/pages/paths/management/ManageDets.vue b/app/pages/paths/management/ManageDets.vue
index 9fd96b64..13986232 100644
--- a/app/pages/paths/management/ManageDets.vue
+++ b/app/pages/paths/management/ManageDets.vue
@@ -93,6 +93,14 @@ export default {
}
},
+ async download () {
+ try {
+ await detsManager.getExcel()
+ } catch (err) {
+ this.$swal('이런!', err.message, 'error')
+ }
+ },
+
openEditModal (dets) {
this.modals.edit = true
this.currentDets = dets
@@ -168,7 +176,7 @@ export default {
엑셀 다운로드
diff --git a/app/pages/paths/teacher/request/Counsel.vue b/app/pages/paths/teacher/request/Counsel.vue
index f167be7a..f64cb849 100644
--- a/app/pages/paths/teacher/request/Counsel.vue
+++ b/app/pages/paths/teacher/request/Counsel.vue
@@ -37,6 +37,14 @@ export default {
this.$swal('이런!', err.message, 'error')
}
this.pending = false
+ },
+
+ async download () {
+ try {
+ await counselManager.getExcel()
+ } catch (err) {
+ this.$swal('이런!', err.message, 'error')
+ }
}
}
}
@@ -48,7 +56,7 @@ export default {
상담 신청 관리
엑셀 다운로드
diff --git a/app/pages/paths/teacher/request/Ingang.vue b/app/pages/paths/teacher/request/Ingang.vue
index 6dffd4c3..2ffa9d22 100644
--- a/app/pages/paths/teacher/request/Ingang.vue
+++ b/app/pages/paths/teacher/request/Ingang.vue
@@ -43,6 +43,14 @@ export default {
}
},
+ async download(grade) {
+ try {
+ await ingangManager.getExcel(grade)
+ } catch (err) {
+ this.$swal('이런!' + err.message, 'error')
+ }
+ },
+
timezone (val) {
const timezoneOffset = new Date().getTimezoneOffset() * 60000
return new Date(val - timezoneOffset)
@@ -77,15 +85,15 @@ export default {
>
1학년 엑셀 다운
2학년 엑셀 다운
diff --git a/app/src/api/book/book.service.js b/app/src/api/book/book.service.js
index 14319a9f..14becfba 100644
--- a/app/src/api/book/book.service.js
+++ b/app/src/api/book/book.service.js
@@ -139,4 +139,21 @@ export class BookManagerService extends BookService {
403: '권한이 없습니다.'
})
}
+
+ async getExcel () {
+ const { data } = await this.magician(() => this.r.get(`/excel`, {
+ responseType: 'blob'
+ }), {
+ 403: '권한이 없습니다.',
+ default: '파일을 다운로드하던 중 문제가 발생했습니다.'
+ })
+ const link = document.createElement('a')
+ link.href = window.URL.createObjectURL(new Blob([data]))
+ link.setAttribute('download', 'books.xls')
+ document.body.appendChild(link)
+ link.click()
+ setTimeout(() => {
+ document.body.removeChild(link)
+ }, 500)
+ }
}
diff --git a/app/src/api/counsel/counsel.service.js b/app/src/api/counsel/counsel.service.js
index 1212c070..fadb588d 100644
--- a/app/src/api/counsel/counsel.service.js
+++ b/app/src/api/counsel/counsel.service.js
@@ -48,4 +48,21 @@ export class CounselManagerService extends ServiceBase {
})
return counsel.map(Counsel)
}
+
+ async getExcel () {
+ const { data } = await this.magician(() => this.r.get(`/excel`, {
+ responseType: 'blob'
+ }), {
+ 403: '권한이 없습니다.',
+ default: '파일을 다운로드하던 중 문제가 발생했습니다.'
+ })
+ const link = document.createElement('a')
+ link.href = window.URL.createObjectURL(new Blob([data]))
+ link.setAttribute('download', 'counsels.xls')
+ document.body.appendChild(link)
+ link.click()
+ setTimeout(() => {
+ document.body.removeChild(link)
+ }, 500)
+ }
}
diff --git a/app/src/api/dets/dets.service.js b/app/src/api/dets/dets.service.js
index 90aff85e..0889410e 100644
--- a/app/src/api/dets/dets.service.js
+++ b/app/src/api/dets/dets.service.js
@@ -71,4 +71,21 @@ export class DetsManagerService extends DetsService {
403: '권한이 없습니다.'
})
}
+
+ async getExcel () {
+ const { data } = await this.magician(() => this.r.get(`/excel`, {
+ responseType: 'blob'
+ }), {
+ 403: '권한이 없습니다.',
+ default: '파일을 다운로드하던 중 문제가 발생했습니다.'
+ })
+ const link = document.createElement('a')
+ link.href = window.URL.createObjectURL(new Blob([data]))
+ link.setAttribute('download', 'dets.xls')
+ document.body.appendChild(link)
+ link.click()
+ setTimeout(() => {
+ document.body.removeChild(link)
+ }, 500)
+ }
}
diff --git a/app/src/api/ingang/ingang.service.js b/app/src/api/ingang/ingang.service.js
index ed36a21a..246d9a88 100644
--- a/app/src/api/ingang/ingang.service.js
+++ b/app/src/api/ingang/ingang.service.js
@@ -107,4 +107,21 @@ export class IngangManagerService extends IngangService {
async editAnnouncement (idx, notice) {
// TODO
}
+
+ async getExcel (grade) {
+ const { data } = await this.magician(() => this.r.get(`/excel/${grade}`, {
+ responseType: 'blob'
+ }), {
+ 403: '권한이 없습니다.',
+ default: '파일을 다운로드하던 중 문제가 발생했습니다.'
+ })
+ const link = document.createElement('a')
+ link.href = window.URL.createObjectURL(new Blob([data]))
+ link.setAttribute('download', 'ingangs-' + grade + '학년.xls')
+ document.body.appendChild(link)
+ link.click()
+ setTimeout(() => {
+ document.body.removeChild(link)
+ }, 500)
+ }
}