|
@@ -6,10 +6,12 @@
|
|
|
</div>
|
|
|
<div class="text-end">
|
|
|
<v-btn prepend-icon="mdi-plus" color="primary" @click="handleAdd">{{ $t('position.newPositionsAdded') }}</v-btn>
|
|
|
- <v-btn :loading="uploadLoading" prepend-icon="mdi-download-box-outline" color="primary" variant="tonal" class="ml-3" @click="handleUpload">
|
|
|
- 批量上传职位
|
|
|
+ <span>
|
|
|
+ <v-btn :loading="uploadLoading" prepend-icon="mdi-download-box-outline" color="primary" variant="tonal" class="ml-3" @click="handleUploadBefore">
|
|
|
+ 批量上传职位
|
|
|
+ </v-btn>
|
|
|
<File ref="uploadFile" :custom="true" customName="multipartFile" accept=".xlsx, .xls" @success="handleUploadPosition"></File>
|
|
|
- </v-btn>
|
|
|
+ </span>
|
|
|
<v-btn :loading="templateLoading" prepend-icon="mdi-export-variant" color="primary" variant="tonal" class="ml-3" @click="handleDownloadTemplate">批量上传模版下载</v-btn>
|
|
|
<v-btn :loading="exportLoading" prepend-icon="mdi-export-variant" color="primary" variant="tonal" class="ml-3" @click="handleExport">职位列表下载</v-btn>
|
|
|
</div>
|
|
@@ -48,6 +50,7 @@ import { useI18n } from '@/hooks/web/useI18n'
|
|
|
import { useUserStore } from '@/store/user'
|
|
|
import download from '@/utils/download'
|
|
|
import Snackbar from '@/plugins/snackbar'
|
|
|
+import Confirm from '@/plugins/confirm'
|
|
|
|
|
|
const store = useUserStore()
|
|
|
|
|
@@ -136,9 +139,23 @@ const handleDownloadTemplate = async () => {
|
|
|
}
|
|
|
|
|
|
// 批量上传
|
|
|
-const handleUpload = () => {
|
|
|
- uploadFile.value.trigger()
|
|
|
+const handleUploadBefore = () => {
|
|
|
+ const option = {
|
|
|
+ otherBtnText: '去下载模板',
|
|
|
+ sureText: '继续上传',
|
|
|
+ }
|
|
|
+ // debugger
|
|
|
+ Confirm(t('common.confirmTitle'), '如还未下载过批量上传的模板,请先下载,并且使用模板格式上传职位', option).then((obj) => {
|
|
|
+ // debugger
|
|
|
+ if (obj?.otherClick) {
|
|
|
+ Snackbar.info('开始下载!')
|
|
|
+ handleDownloadTemplate()
|
|
|
+ } else {
|
|
|
+ uploadFile.value.trigger()
|
|
|
+ }
|
|
|
+ })
|
|
|
}
|
|
|
+
|
|
|
const handleUploadPosition = async (formData) => {
|
|
|
uploadLoading.value = true
|
|
|
try {
|