importExcel.vue 733 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. <template>
  2. <el-upload
  3. :action="url"
  4. :show-file-list="false"
  5. :on-success="handleSuccess"
  6. :multiple="false"
  7. >
  8. <el-button
  9. type="primary"
  10. icon="upload"
  11. >导入</el-button>
  12. </el-upload>
  13. </template>
  14. <script setup>
  15. import { ElMessage } from 'element-plus'
  16. const baseUrl = import.meta.env.VITE_BASE_API
  17. const props = defineProps({
  18. templateId: {
  19. type: String,
  20. required: true
  21. }
  22. })
  23. const emit = defineEmits(['on-success'])
  24. const url = `${baseUrl}/sysExportTemplate/importExcel?templateID=${props.templateId}`
  25. const handleSuccess = (res) => {
  26. if (res.code === 0) {
  27. ElMessage.success('导入成功')
  28. emit('on-success')
  29. } else {
  30. ElMessage.error(res.msg)
  31. }
  32. }
  33. </script>