| | |
| | | <template #btn> |
| | | <!-- <el-button type="primary" link @click="handleDownloadTemplate()">结算单模板</el-button> --> |
| | | <!-- <el-button type="primary" @click="handleAdd()">上传结算单</el-button> --> |
| | | <el-button type="primary" @click="handleDownloadTemplate()">导出</el-button> |
| | | <el-button type="primary" @click="handleExport()">导出</el-button> |
| | | </template> |
| | | </ProTableQueryFilterBar> |
| | | <ProTableV2 |
| | |
| | | EnumTaskCheckReceiveStatus, |
| | | EnumEnterpriseWalletAccessText, |
| | | } from '@/constants'; |
| | | import { downloadFileByUrl, format, setOssFileName } from '@/utils'; |
| | | import { downloadFileByUrl, format, setOssFileName, setOSSLink } from '@/utils'; |
| | | import * as taskServices from '@/services/api/task'; |
| | | import { ModelValueType } from 'element-plus'; |
| | | import UploadStatementDialog from './components/UploadStatementDialog.vue'; |
| | |
| | | import SettlMethodDialog from './components/SettlMethodDialog.vue'; |
| | | import RechargeEnterpriseWalletDialog from './components/RechargeEnterpriseWalletDialog.vue'; |
| | | import { Message } from '@bole-core/core'; |
| | | import _ from 'lodash'; |
| | | |
| | | defineOptions({ |
| | | name: 'ServiceChargeManageList', |
| | |
| | | name: '导出', |
| | | }, |
| | | emits: { |
| | | onClick: (role) => handleExport(role), |
| | | onClick: (role) => handleRowExport(role), |
| | | }, |
| | | extraProps: { |
| | | hide: () => true, |
| | | hide: (role: API.GetSettlementTasksQueryResultItem) => |
| | | !( |
| | | role.settlementStatus !== EnumTaskSettlementStatus.InProcess && |
| | | role.settlementStatus !== EnumTaskSettlementStatus.Wait |
| | | ), |
| | | }, |
| | | }, |
| | | ]); |
| | |
| | | }); |
| | | } |
| | | |
| | | function handleExport(val) { |
| | | console.log('val: ', val); |
| | | const handleRowExport = _.debounce( |
| | | async (row: API.GetSettlementTasksQueryResultItem) => { |
| | | try { |
| | | let params: API.ExportTaskSettlementOrderRostersCommand = { |
| | | id: row.id, |
| | | }; |
| | | let res = await taskServices.exportTaskSettlementOrderRosters(params); |
| | | if (res) { |
| | | downloadFileByUrl(setOSSLink(res), `${row.name}-${row.code}`); |
| | | } |
| | | } catch (error) {} |
| | | }, |
| | | 1000, |
| | | { leading: true, trailing: false } |
| | | ); |
| | | |
| | | function handleDownloadTemplate() { |
| | | downloadFileByUrl( |
| | |
| | | '结算单模板' |
| | | ); |
| | | } |
| | | |
| | | const handleExport = _.debounce( |
| | | async () => { |
| | | if (paginationState.total === 0) { |
| | | Message.warnMessage('没有数据可以导出哦~'); |
| | | return; |
| | | } |
| | | try { |
| | | let params: API.ExportTaskSettlementOrdersCommand = { |
| | | keywords: extraParamState.keywords, |
| | | checkReceiveStatus: extraParamState.checkReceiveStatus, |
| | | settlementStatus: extraParamState.settlementStatus, |
| | | settlementTimeBegin: format(extraParamState.time?.[0] ?? '', 'YYYY-MM-DD 00:00:00'), |
| | | settlementTimeEnd: format(extraParamState.time?.[1] ?? '', 'YYYY-MM-DD 23:59:59'), |
| | | }; |
| | | let res = await taskServices.exportTaskSettlementOrders(params); |
| | | if (res) { |
| | | downloadFileByUrl(setOSSLink(res)); |
| | | } |
| | | } catch (error) {} |
| | | }, |
| | | 1000, |
| | | { leading: true, trailing: false } |
| | | ); |
| | | </script> |