需求新增导出及批量导出接口
This commit is contained in:
@@ -78,7 +78,7 @@
|
||||
<el-tab-pane :label="'已完成(' + statusCounts.completed + ')'" name="2"></el-tab-pane>
|
||||
<el-tab-pane :label="'已终止(' + statusCounts.terminated + ')'" name="3"></el-tab-pane>
|
||||
|
||||
<el-Table v-loading="loading" :data="list">
|
||||
<el-Table v-loading="loading" :data="list" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection"/>
|
||||
<el-table-column prop="serialNumber" label="ID" align="center"/>
|
||||
<el-table-column prop="version" label="版本" align="center"/>
|
||||
@@ -108,8 +108,8 @@
|
||||
<!-- 操作按钮 -->
|
||||
<div style="margin-top: 10px; display: flex; justify-content: space-between; align-items: center;">
|
||||
<div>
|
||||
<el-button type="primary" size="small">全部导出</el-button>
|
||||
<el-button size="small">批量导出</el-button>
|
||||
<el-button type="primary" size="small" @click="handleExport">全部导出</el-button>
|
||||
<el-button size="small" @click="handleSelectExport">批量导出</el-button>
|
||||
</div>
|
||||
<div>
|
||||
<pagination
|
||||
@@ -247,6 +247,7 @@
|
||||
<script>
|
||||
import {addProject, delProject, getProjectDetail, getProjectList, managerList, updateProject} from "@/api/test/project";
|
||||
import SimpleOptions from "@/components/FormItem/option/SimpleOptions.vue";
|
||||
import {requestDownload} from "@/utils/request";
|
||||
|
||||
export default {
|
||||
name: 'project',
|
||||
@@ -295,6 +296,8 @@ export default {
|
||||
addOpen: false,
|
||||
//编辑弹窗
|
||||
editOpen: false,
|
||||
selectedRows: [],
|
||||
selectedData: [],
|
||||
managerList: [],
|
||||
queryParams: {
|
||||
serialNumber: '',
|
||||
@@ -333,6 +336,9 @@ export default {
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
handleSelectionChange(selection) {
|
||||
this.selectedRows = selection;
|
||||
},
|
||||
handleTabClick(tab) {
|
||||
this.activeTab = tab.name;
|
||||
this.getList();
|
||||
@@ -466,6 +472,41 @@ export default {
|
||||
this.$message.error('编辑失败')
|
||||
this.editSubmitLoading = false
|
||||
})
|
||||
},
|
||||
/** 全部导出按钮操作 */
|
||||
handleExport() {
|
||||
const [startCreateTime, endCreateTime] = this.queryParams.createTime || []
|
||||
this.queryParams.startCreateTime = startCreateTime
|
||||
this.queryParams.endCreateTime = endCreateTime
|
||||
const {pageNum, pageSize, ...rest} = this.queryParams
|
||||
requestDownload({
|
||||
url: '/test/project/exportProject',
|
||||
fileName: `需求列表信息_${new Date().getTime()}.xlsx`,
|
||||
data: rest,
|
||||
})
|
||||
},
|
||||
/** 批量导出按钮操作 */
|
||||
handleSelectExport() {
|
||||
this.selectedData = this.selectedRows.map(row => ({
|
||||
serialNumber: row.serialNumber,
|
||||
name: row.name,
|
||||
outline: row.outline,
|
||||
detail: row.detail,
|
||||
manager: row.manager,
|
||||
priority: row.priority,
|
||||
estimatedTime: row.estimatedTime,
|
||||
source: row.source,
|
||||
type: row.type,
|
||||
version: row.version,
|
||||
createTime: row.createTime,
|
||||
status: row.status
|
||||
}));
|
||||
console.log('selectedData', this.selectedData)
|
||||
requestDownload({
|
||||
url: '/test/project/batchExportProject',
|
||||
fileName: `需求列表信息_${new Date().getTime()}.xlsx`,
|
||||
data: this.selectedData,
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user