shudonghui 1 éve
szülő
commit
0d6b070fd8

+ 8 - 0
src/api/common.js

@@ -12,3 +12,11 @@ export const uploadFiles = (formData, md5) => {
     },
   });
 };
+
+export const downloadImportTemplate = (params) => {
+   request({
+    url: '/api/admin/common/download_import_template',
+    params: params,
+    download:true,
+  });
+};

+ 1 - 1
src/components/common/upload-button/index.vue

@@ -50,7 +50,7 @@ const props = defineProps({
   headers: {
     type: Object,
     default() {
-      return {};
+      return {'Content-Type': 'multipart/form-data'};
     },
   },
   buttonProps: {

+ 6 - 0
src/views/system/config-manage/customer-manage/index.vue

@@ -9,12 +9,17 @@
         <upload-button
           v-if="perm.BUTTON_BatchImport"
           upload-url="/api/sys/custom/import"
+          :format="['xlsx']"
         >
           <t-button variant="outline">
             <template #icon><svg-icon name="import" color="#262626" /></template
             >批量导入
           </t-button>
         </upload-button>
+        <t-button v-if="perm.BUTTON_BatchImport"  variant="outline" @click="downloadImportTemplate({type:'TEMPLATE_CUSTOM'})">
+          <template #icon><svg-icon name="export" color="#262626" /></template
+          >下载模版
+        </t-button>
       </t-space>
     </div>
     <SearchForm :fields="fields" :params="params">
@@ -98,6 +103,7 @@ import { CUSTOMER_TYPE } from '@/config/constants';
 import { dictToOptionList } from '@/utils/tool';
 import { customerTypeFilter, timestampFilter } from '@/utils/filter';
 import usePermission from '@/hooks/usePermission';
+import {downloadImportTemplate} from "@/api/common";
 const { perm } = usePermission();
 
 const showEditCustomerDialog = ref(false);

+ 6 - 0
src/views/system/config-manage/device-manage/index.vue

@@ -36,12 +36,17 @@
         <upload-button
           v-if="perm.BUTTON_BatchImport"
           upload-url="/api/sys/device/import"
+          :format="['xlsx']"
         >
           <t-button variant="outline">
             <template #icon><svg-icon name="import" color="#262626" /></template
             >批量导入
           </t-button>
         </upload-button>
+        <t-button v-if="perm.BUTTON_BatchImport"  variant="outline" @click="downloadImportTemplate({type:'TEMPLATE_DEVICE'})">
+          <template #icon><svg-icon name="export" color="#262626" /></template
+          >下载模版
+        </t-button>
       </t-space>
     </div>
     <SearchForm :fields="fields" :params="params">
@@ -152,6 +157,7 @@ import { dictToOptionList } from '@/utils/tool';
 import { ABLE_TYPE, RUNNING_STATUS, INOUT_TYPE } from '@/config/constants';
 import usePermission from '@/hooks/usePermission';
 import {omit} from "lodash";
+import {downloadImportTemplate} from "@/api/common";
 const { perm } = usePermission();
 
 const showEditDeviceDialog = ref(false);