|
@@ -0,0 +1,213 @@
|
|
|
+<template>
|
|
|
+ <basic-container class="list">
|
|
|
+ <div class="flex">
|
|
|
+
|
|
|
+ <el-select
|
|
|
+ v-model="searchForm.projectId"
|
|
|
+ filterable
|
|
|
+ style="width: 300px"
|
|
|
+ placeholder="请选择项目"
|
|
|
+ clearable
|
|
|
+ @change="listpage"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in options"
|
|
|
+ :key="item.id"
|
|
|
+ :label="item.projectName"
|
|
|
+ :value="item.id"
|
|
|
+ >
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ <el-select
|
|
|
+
|
|
|
+ v-model="searchForm.range"
|
|
|
+ filterable
|
|
|
+ style="width: 200px;margin-left: 10px;margin-right: 10px"
|
|
|
+
|
|
|
+ placeholder="同步范围"
|
|
|
+ clearable
|
|
|
+ @change="listpage"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in rangeOptions"
|
|
|
+ :key="item.id"
|
|
|
+ :label="item.dictValue"
|
|
|
+ :value="item.dictKey"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ <el-select
|
|
|
+
|
|
|
+ v-model="searchForm.type"
|
|
|
+ filterable
|
|
|
+ style="width: 200px;margin-right: 10px"
|
|
|
+
|
|
|
+ placeholder="同步类型"
|
|
|
+ clearable
|
|
|
+ @change="listpage"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in typeOptions"
|
|
|
+ :key="item.id"
|
|
|
+ :label="item.dictValue"
|
|
|
+ :value="item.dictKey"
|
|
|
+ >
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+
|
|
|
+
|
|
|
+ <el-button type="info" class="el-icon-close" @click="reSearchClick"
|
|
|
+ >重置</el-button
|
|
|
+ >
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <el-table
|
|
|
+ class="martop20 tableList"
|
|
|
+ :data="tableData"
|
|
|
+ header-color="red"
|
|
|
+ style="width: 100%"
|
|
|
+ >
|
|
|
+ <el-table-column type="index" label="序号" width="180"> </el-table-column>
|
|
|
+ <el-table-column prop="projectName" label="项目">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="rangeName" label="同步范围">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="templateName" label="同步源">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="typeName" label="同步类型">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="nodeName" label="同步节点">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="createUser" label="同步人">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="createTime" label="同步时间">
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ <el-pagination
|
|
|
+ style="float:right"
|
|
|
+ background
|
|
|
+ class="martop10 marbottom10"
|
|
|
+ layout="total, prev, pager, next"
|
|
|
+ :total="total"
|
|
|
+ @size-change="handleSizeChange"
|
|
|
+ @current-change="handleCurrentChange"
|
|
|
+ :current-page.sync="pageindex"
|
|
|
+ :page-size="pagesize"
|
|
|
+ :page-sizes="[10, 20, 30, 40]"
|
|
|
+ >
|
|
|
+ </el-pagination>
|
|
|
+ </basic-container>
|
|
|
+ </template>
|
|
|
+
|
|
|
+ <script>
|
|
|
+ import { getDictionary } from "@/api/system/dict";
|
|
|
+ import { getProjectList } from "@/api/manager/projectinfo";
|
|
|
+ import { page } from "@/api/manager/ledger";
|
|
|
+ export default {
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ searchForm: {
|
|
|
+ projectId: "",
|
|
|
+ range: "",
|
|
|
+ type: "",
|
|
|
+ },
|
|
|
+ options: [],
|
|
|
+
|
|
|
+ rangeOptions: [],
|
|
|
+ typeOptions: [],
|
|
|
+ tableData: [],
|
|
|
+ total: 0,
|
|
|
+ pageindex: 1,
|
|
|
+ pagesize: 20,
|
|
|
+
|
|
|
+ };
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ getRangeOptions(){
|
|
|
+ getDictionary({
|
|
|
+ code: "wbs_snyc_range",
|
|
|
+ }).then((res) => {
|
|
|
+ this.rangeOptions = res.data.data;
|
|
|
+ });
|
|
|
+ },
|
|
|
+ getTypeOptions(){
|
|
|
+ getDictionary({
|
|
|
+ code: "wbs_sync_type",
|
|
|
+ }).then((res) => {
|
|
|
+ this.typeOptions = res.data.data;
|
|
|
+ });
|
|
|
+ },
|
|
|
+ handleSizeChange(val) {
|
|
|
+ this.pagesize = val;
|
|
|
+ this.listpage();
|
|
|
+ },
|
|
|
+ handleCurrentChange(val) {
|
|
|
+ this.pageindex = val;
|
|
|
+ this.listpage();
|
|
|
+ },
|
|
|
+ typeChange() {
|
|
|
+ this.listpage();
|
|
|
+ },
|
|
|
+
|
|
|
+ projectChange() {
|
|
|
+
|
|
|
+ this.listpage();
|
|
|
+ },
|
|
|
+
|
|
|
+
|
|
|
+ async queryProjectList() {
|
|
|
+ //获取所有项目
|
|
|
+ const { data: res } = await getProjectList();
|
|
|
+ if (res.code == 200) {
|
|
|
+ this.options = res.data.records;
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+ },
|
|
|
+ async listpage() {
|
|
|
+ //分页获取证书列表数据
|
|
|
+ const { data: res } = await page({
|
|
|
+ current: this.pageindex,
|
|
|
+ size: this.pagesize,
|
|
|
+ ...this.searchForm,
|
|
|
+ });
|
|
|
+
|
|
|
+ if (res.code == 200) {
|
|
|
+ this.tableData = res.data.records;
|
|
|
+ this.total = res.data.total;
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
+ reSearchClick() {
|
|
|
+ this.searchForm = {
|
|
|
+ projectId: "",
|
|
|
+ range: "",
|
|
|
+ type: "",
|
|
|
+ };
|
|
|
+
|
|
|
+ this.listpage();
|
|
|
+ },
|
|
|
+ //#endregion
|
|
|
+ },
|
|
|
+ created() {
|
|
|
+ this.queryProjectList();
|
|
|
+ this.getRangeOptions();
|
|
|
+ this.getTypeOptions()
|
|
|
+ this.listpage();
|
|
|
+ },
|
|
|
+ };
|
|
|
+ </script>
|
|
|
+
|
|
|
+ <style lang="scss" scoped>
|
|
|
+ .tableList {
|
|
|
+ ::v-deep th.el-table__cell {
|
|
|
+ font-size: 16px !important;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .header-box-center {
|
|
|
+ margin-left: 40px;
|
|
|
+ }
|
|
|
+ </style>
|
|
|
+
|