Commit f292db4eec3fc27c3801874d120481e11b581e2e

Authored by fengtao
1 parent b26d9310

fix:放开之前写好的导入导出,待联调后端导入导出接口

@@ -3,6 +3,8 @@ import { BasicPageParams } from '/@/api/model/baseModel'; @@ -3,6 +3,8 @@ import { BasicPageParams } from '/@/api/model/baseModel';
3 export type TDeviceConfigPageQueryParam = BasicPageParams & TDeviceConfigParams; 3 export type TDeviceConfigPageQueryParam = BasicPageParams & TDeviceConfigParams;
4 4
5 export type TDeviceConfigParams = { 5 export type TDeviceConfigParams = {
  6 + page?: any;
  7 + pageSize?: any;
6 name?: string; 8 name?: string;
7 transportType?: string; 9 transportType?: string;
8 orderFiled?: string; 10 orderFiled?: string;
@@ -15,7 +15,7 @@ @@ -15,7 +15,7 @@
15 </template> 15 </template>
16 <script lang="ts"> 16 <script lang="ts">
17 import type { ExportModalResult } from './typing'; 17 import type { ExportModalResult } from './typing';
18 - import { defineComponent } from 'vue'; 18 + import { defineComponent, nextTick } from 'vue';
19 import { BasicModal, useModalInner } from '/@/components/Modal'; 19 import { BasicModal, useModalInner } from '/@/components/Modal';
20 import { BasicForm, FormSchema, useForm } from '/@/components/Form/index'; 20 import { BasicForm, FormSchema, useForm } from '/@/components/Form/index';
21 21
@@ -66,7 +66,7 @@ @@ -66,7 +66,7 @@
66 components: { BasicModal, BasicForm }, 66 components: { BasicModal, BasicForm },
67 emits: ['success', 'register'], 67 emits: ['success', 'register'],
68 setup(_, { emit }) { 68 setup(_, { emit }) {
69 - const [registerForm, { validateFields }] = useForm(); 69 + const [registerForm, { validateFields, resetFields }] = useForm();
70 const [registerModal, { closeModal }] = useModalInner(); 70 const [registerModal, { closeModal }] = useModalInner();
71 71
72 async function handleOk() { 72 async function handleOk() {
@@ -79,12 +79,15 @@ @@ -79,12 +79,15 @@
79 closeModal(); 79 closeModal();
80 } 80 }
81 81
  82 + const clearFieldFunc = () => nextTick(() => resetFields());
  83 +
82 return { 84 return {
83 schemas, 85 schemas,
84 handleOk, 86 handleOk,
85 registerForm, 87 registerForm,
86 registerModal, 88 registerModal,
87 t, 89 t,
  90 + clearFieldFunc,
88 }; 91 };
89 }, 92 },
90 }); 93 });
@@ -8,12 +8,12 @@ @@ -8,12 +8,12 @@
8 /> 8 />
9 <BasicTable @register="registerTable" class="w-5/6 xl:w-4/5"> 9 <BasicTable @register="registerTable" class="w-5/6 xl:w-4/5">
10 <template #toolbar> 10 <template #toolbar>
11 - <Authority value="api:yt:admin:addDeviceList"> 11 + <Authority value="api:yt:device:post">
12 <a-button type="primary" @click="handleCreate" v-if="authBtn(role)"> 12 <a-button type="primary" @click="handleCreate" v-if="authBtn(role)">
13 新增设备 13 新增设备
14 </a-button> 14 </a-button>
15 </Authority> 15 </Authority>
16 - <Authority value="api:yt:admin:deleteDeviceList"> 16 + <Authority value="api:yt:device:delete">
17 <a-button 17 <a-button
18 color="error" 18 color="error"
19 v-if="authBtn(role)" 19 v-if="authBtn(role)"
@@ -12,7 +12,7 @@ @@ -12,7 +12,7 @@
12 <a-button type="primary" @click="handleCreate"> 新增设备配置 </a-button> 12 <a-button type="primary" @click="handleCreate"> 新增设备配置 </a-button>
13 </Authority> 13 </Authority>
14 <ImpExcel @success="loadDataSuccess" dateFormat="YYYY-MM-DD"> 14 <ImpExcel @success="loadDataSuccess" dateFormat="YYYY-MM-DD">
15 - <a-button disabled @click="handleImport"> 导入设备配置 </a-button> 15 + <a-button @click="handleImport"> 导入设备配置 </a-button>
16 </ImpExcel> 16 </ImpExcel>
17 <Authority value="api:yt:admin:deleteDeviceConfig"> 17 <Authority value="api:yt:admin:deleteDeviceConfig">
18 <a-button 18 <a-button
@@ -83,7 +83,11 @@ @@ -83,7 +83,11 @@
83 </template> 83 </template>
84 </BasicTable> 84 </BasicTable>
85 <DeviceProfileModal @register="registerModal" @success="handleSuccess" /> 85 <DeviceProfileModal @register="registerModal" @success="handleSuccess" />
86 - <!-- <ExpExcelModal @register="register1" @success="defaultHeader" /> --> 86 + <ExpExcelModal
  87 + ref="expExcelModalRef"
  88 + @register="registerExportModal"
  89 + @success="defaultHeader"
  90 + />
87 </div> 91 </div>
88 </template> 92 </template>
89 <script lang="ts"> 93 <script lang="ts">
@@ -99,14 +103,24 @@ @@ -99,14 +103,24 @@
99 import { useModal } from '/@/components/Modal'; 103 import { useModal } from '/@/components/Modal';
100 import DeviceProfileModal from '/@/views/device/profiles/DeviceProfileModal.vue'; 104 import DeviceProfileModal from '/@/views/device/profiles/DeviceProfileModal.vue';
101 import { ImpExcel, ExcelData } from '/@/components/Excel'; 105 import { ImpExcel, ExcelData } from '/@/components/Excel';
102 - // import { jsonToSheetXlsx, ExportModalResult } from '/@/components/Excel'; 106 + import { jsonToSheetXlsx, ExpExcelModal, ExportModalResult } from '/@/components/Excel';
103 import { Authority } from '/@/components/Authority'; 107 import { Authority } from '/@/components/Authority';
104 import { useBatchDelete } from '/@/hooks/web/useBatchDelete'; 108 import { useBatchDelete } from '/@/hooks/web/useBatchDelete';
105 109
106 export default defineComponent({ 110 export default defineComponent({
107 name: 'DeviceProfileManagement', 111 name: 'DeviceProfileManagement',
108 - components: { BasicTable, DeviceProfileModal, TableAction, ImpExcel, TableImg, Authority }, 112 + components: {
  113 + BasicTable,
  114 + DeviceProfileModal,
  115 + TableAction,
  116 + ImpExcel,
  117 + TableImg,
  118 + Authority,
  119 + ExpExcelModal,
  120 + },
109 setup() { 121 setup() {
  122 + const exportData: any = ref([]);
  123 + const expExcelModalRef = ref(null);
110 let selectedRowKeys: any = []; 124 let selectedRowKeys: any = [];
111 const deviceDetailRef = ref(null); 125 const deviceDetailRef = ref(null);
112 const getPathUrl = ref(''); 126 const getPathUrl = ref('');
@@ -114,10 +128,9 @@ @@ -114,10 +128,9 @@
114 const disabled = ref(true); 128 const disabled = ref(true);
115 const onCloseVal = ref(0); 129 const onCloseVal = ref(0);
116 const immediateStatus = ref(false); 130 const immediateStatus = ref(false);
117 -  
118 const { createMessage } = useMessage(); 131 const { createMessage } = useMessage();
119 const [registerModal, { openModal }] = useModal(); 132 const [registerModal, { openModal }] = useModal();
120 - const [registerModalDetail] = useModal(); 133 + const [registerExportModal, { openModal: openModalExcel }] = useModal();
121 const [ 134 const [
122 registerTable, 135 registerTable,
123 { setProps, reload, getSelectRows, setTableData, getForm, getSelectRowKeys }, 136 { setProps, reload, getSelectRows, setTableData, getForm, getSelectRowKeys },
@@ -144,8 +157,11 @@ @@ -144,8 +157,11 @@
144 fixed: 'right', 157 fixed: 'right',
145 }, 158 },
146 }); 159 });
147 - const { hasBatchDelete, handleDeleteOrBatchDelete, selectionOptions, resetSelectedRowKeys } =  
148 - useBatchDelete(deviceConfigDelete, handleSuccess, setProps); 160 + const { hasBatchDelete, handleDeleteOrBatchDelete, selectionOptions } = useBatchDelete(
  161 + deviceConfigDelete,
  162 + handleSuccess,
  163 + setProps
  164 + );
149 selectionOptions.rowSelection.getCheckboxProps = (record: Recordable) => { 165 selectionOptions.rowSelection.getCheckboxProps = (record: Recordable) => {
150 // Demo:status为1的选择框禁用 166 // Demo:status为1的选择框禁用
151 if (record.default === true) { 167 if (record.default === true) {
@@ -271,26 +287,6 @@ @@ -271,26 +287,6 @@
271 disabled.value = true; 287 disabled.value = true;
272 } 288 }
273 }; 289 };
274 - // const handleTableDel = () => {  
275 - // disabled.value = true;  
276 - // deviceConfigDelete(selectedRowKeys)  
277 - // .then(() => {  
278 - // createMessage.success('删除设备配置成功');  
279 - // handleSuccess();  
280 - // setTimeout(() => {  
281 - // disabled.value = false;  
282 - // }, 3000);  
283 - // selectedRowKeys.length = 0;  
284 - // })  
285 - // .catch((e) => {  
286 - // selectedRowKeys.length = 0;  
287 - // setTimeout(() => {  
288 - // disabled.value = false;  
289 - // }, 3000);  
290 - // createMessage.error(e);  
291 - // });  
292 - // selectedRowKeys.length = 0;  
293 - // };  
294 290
295 function handleDelete(record: Recordable) { 291 function handleDelete(record: Recordable) {
296 let ids = [record.id]; 292 let ids = [record.id];
@@ -300,24 +296,31 @@ @@ -300,24 +296,31 @@
300 }); 296 });
301 } 297 }
302 298
303 - // function defaultHeader({ filename, bookType }: ExportModalResult) {  
304 - // // 默认Object.keys(data[0])作为header  
305 - // jsonToSheetXlsx({  
306 - // data,  
307 - // filename,  
308 - // write2excelOpts: {  
309 - // bookType,  
310 - // },  
311 - // });  
312 - // }  
313 -  
314 - // const [register1, { openModal: openModalExcel }] = useModal(); 299 + function defaultHeader({ filename, bookType }: ExportModalResult) {
  300 + // 默认Object.keys(data[0])作为header
  301 + const data = exportData.value;
  302 + jsonToSheetXlsx({
  303 + data,
  304 + filename,
  305 + write2excelOpts: {
  306 + bookType,
  307 + },
  308 + });
  309 + }
  310 + //导出
315 const handleExport = (record: Recordable) => { 311 const handleExport = (record: Recordable) => {
316 - console.log(record);  
317 - // setTimeout(() => {  
318 - // openModalExcel();  
319 - // }, 50); 312 + exportData.value = [];
  313 + exportData.value.push({
  314 + createTime: record.createTime,
  315 + description: record.description,
  316 + name: record.name,
  317 + });
  318 + nextTick(() => {
  319 + openModalExcel();
  320 + expExcelModalRef.value?.clearFieldFunc();
  321 + });
320 }; 322 };
  323 + //导入
321 function handleImport() { 324 function handleImport() {
322 console.log('record'); 325 console.log('record');
323 } 326 }
@@ -354,11 +357,9 @@ @@ -354,11 +357,9 @@
354 handleSetDefault, 357 handleSetDefault,
355 disabled, 358 disabled,
356 deviceDetailRef, 359 deviceDetailRef,
357 - registerModalDetail,  
358 - // register1,  
359 - // defaultHeader, 360 + registerExportModal,
  361 + defaultHeader,
360 useSelectionChange, 362 useSelectionChange,
361 - // handleTableDel,  
362 tableListRef, 363 tableListRef,
363 loadDataSuccess, 364 loadDataSuccess,
364 handleImport, 365 handleImport,
@@ -372,6 +373,7 @@ @@ -372,6 +373,7 @@
372 registerModal, 373 registerModal,
373 hasBatchDelete, 374 hasBatchDelete,
374 handleDeleteOrBatchDelete, 375 handleDeleteOrBatchDelete,
  376 + expExcelModalRef,
375 }; 377 };
376 }, 378 },
377 }); 379 });