|
@@ -1,39 +1,65 @@
|
|
<template>
|
|
<template>
|
|
<div>
|
|
<div>
|
|
<div class="filter-cont">
|
|
<div class="filter-cont">
|
|
- <el-cascader
|
|
|
|
- @change="filterChange"
|
|
|
|
- :options="classifyOptions"
|
|
|
|
- v-model="filterForm.classifyIds"
|
|
|
|
- :props="{
|
|
|
|
- value: 'Id',
|
|
|
|
- label: 'ClassifyName',
|
|
|
|
- children: 'Child'
|
|
|
|
- }"
|
|
|
|
|
|
+ <div>
|
|
|
|
+
|
|
|
|
+ <el-cascader
|
|
|
|
+ @change="initList"
|
|
|
|
+ :options="classifyOptions"
|
|
|
|
+ v-model="filterForm.classifyId"
|
|
|
|
+ :props="{
|
|
|
|
+ value: 'Id',
|
|
|
|
+ label: 'ClassifyName',
|
|
|
|
+ children: 'Child',
|
|
|
|
+ emitPath: false
|
|
|
|
+ }"
|
|
|
|
+ clearable
|
|
|
|
+ :placeholder="$t('ReportManage.smart_type_filtering')"
|
|
|
|
+ style="width:240px;"
|
|
|
|
+ ></el-cascader>
|
|
|
|
+
|
|
|
|
+ <el-select
|
|
|
|
+ v-model="filterForm.classifyType"
|
|
|
|
+ style="width: 200px"
|
|
|
|
+ placeholder="报告类型"
|
|
clearable
|
|
clearable
|
|
- :placeholder="$t('ReportManage.smart_type_filtering')"
|
|
|
|
- style="width:240px;"
|
|
|
|
- ></el-cascader>
|
|
|
|
|
|
+ @change="initList"
|
|
|
|
+ >
|
|
|
|
+ <el-option label="研报" :value="1"/>
|
|
|
|
+ <el-option label="PPT" :value="2"/>
|
|
|
|
+ </el-select>
|
|
|
|
|
|
- <el-select
|
|
|
|
- v-model="filterForm.reportType"
|
|
|
|
- style="width: 240px"
|
|
|
|
- >
|
|
|
|
- <el-option label="报告" value="report"/>
|
|
|
|
- <el-option label="PPT" value="ppt"/>
|
|
|
|
- </el-select>
|
|
|
|
|
|
+ <el-select
|
|
|
|
+ v-model="filterForm.pushStatus"
|
|
|
|
+ style="width: 200px"
|
|
|
|
+ placeholder="推送状态"
|
|
|
|
+ clearable
|
|
|
|
+ @change="initList"
|
|
|
|
+ >
|
|
|
|
+ <el-option
|
|
|
|
+ :label="status.label"
|
|
|
|
+ :value="status.value"
|
|
|
|
+ v-for="status in pushStatusOptions"
|
|
|
|
+ :key="status.key"
|
|
|
|
+ />
|
|
|
|
+ </el-select>
|
|
|
|
+ <el-date-picker
|
|
|
|
+ v-model="filterForm.date"
|
|
|
|
+ @change="initList"
|
|
|
|
+ type="date"
|
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
|
+ placeholder="操作时间">
|
|
|
|
+ </el-date-picker>
|
|
|
|
+ </div>
|
|
|
|
|
|
- <el-select
|
|
|
|
- v-model="filterForm.pushStatus"
|
|
|
|
- style="width: 240px"
|
|
|
|
- >
|
|
|
|
- <el-option
|
|
|
|
- :label="status.label"
|
|
|
|
- :value="status.value"
|
|
|
|
- v-for="status in pushStatusOptions"
|
|
|
|
- :key="status.key"
|
|
|
|
- />
|
|
|
|
- </el-select>
|
|
|
|
|
|
+ <el-input
|
|
|
|
+ v-model="filterForm.searchTxt"
|
|
|
|
+ prefix-icon="el-icon-search"
|
|
|
|
+ clearable
|
|
|
|
+ @change="initList"
|
|
|
|
+ placeholder="报告标题"
|
|
|
|
+ style="width:260px;margin-left: auto;"
|
|
|
|
+ />
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<el-table
|
|
<el-table
|
|
@@ -51,12 +77,20 @@
|
|
align="center"
|
|
align="center"
|
|
>
|
|
>
|
|
<template slot-scope="scope">
|
|
<template slot-scope="scope">
|
|
-
|
|
|
|
- <span>{{ scope.row[item.key] }}</span>
|
|
|
|
|
|
+ <span
|
|
|
|
+ v-if="item.key==='Status'"
|
|
|
|
+ :class="scope.row[item.key]===1?'successty':'deletesty'"
|
|
|
|
+ >
|
|
|
|
+ {{scope.row[item.key]===1?'推送成功':'推送失败'}}
|
|
|
|
+ </span>
|
|
|
|
+ <span v-else-if="item.key==='ClassifyType'">
|
|
|
|
+ {{scope.row[item.key]===1?'研报':'PPT'}}
|
|
|
|
+ </span>
|
|
|
|
+ <span v-else>{{ scope.row[item.key] }}</span>
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
<div slot="empty">
|
|
<div slot="empty">
|
|
- <tableNoData text="暂无记录" size="mini"/>
|
|
|
|
|
|
+ <tableNoData text="暂无推送记录" size="mini"/>
|
|
</div>
|
|
</div>
|
|
</el-table>
|
|
</el-table>
|
|
|
|
|
|
@@ -72,7 +106,8 @@
|
|
</template>
|
|
</template>
|
|
<script>
|
|
<script>
|
|
import {
|
|
import {
|
|
- classifylist
|
|
|
|
|
|
+ classifylist,
|
|
|
|
+ reportPushInterface
|
|
} from '@/api/modules/reportV2.js';
|
|
} from '@/api/modules/reportV2.js';
|
|
import mPage from '@/components/mPage.vue'
|
|
import mPage from '@/components/mPage.vue'
|
|
export default {
|
|
export default {
|
|
@@ -80,21 +115,27 @@ export default {
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
filterForm: {
|
|
filterForm: {
|
|
-
|
|
|
|
|
|
+ classifyId: 0,
|
|
|
|
+ classifyType:'',
|
|
|
|
+ pushStatus: '',
|
|
|
|
+ date:'',
|
|
|
|
+ searchTxt: ''
|
|
},
|
|
},
|
|
|
|
+ classifyOptions: [],
|
|
|
|
+
|
|
pushStatusOptions: [
|
|
pushStatusOptions: [
|
|
{ label: '推送成功',value: 1 },
|
|
{ label: '推送成功',value: 1 },
|
|
{ label: '推送失败',value: 2 },
|
|
{ label: '推送失败',value: 2 },
|
|
],
|
|
],
|
|
|
|
|
|
tableColums: [
|
|
tableColums: [
|
|
- { label:'报告标题',key:'Title' },
|
|
|
|
- { label:'报告分类',key:'Classify' },
|
|
|
|
- { label:'报告类型',key:'Type' },
|
|
|
|
- { label:'操作人',key:'' },
|
|
|
|
- { label:'接收人',key:'' },
|
|
|
|
- { label:'推送状态',key:'' },
|
|
|
|
- { label:'操作时间',key:'ModifyTime' },
|
|
|
|
|
|
+ { label:'报告标题',key:'ReportTitle' },
|
|
|
|
+ { label:'报告分类',key:'ClassifyFullName' },
|
|
|
|
+ { label:'报告类型',key:'ClassifyType' },
|
|
|
|
+ { label:'操作人',key:'SendAdminName' },
|
|
|
|
+ { label:'接收人',key:'ReceiveAdminName' },
|
|
|
|
+ { label:'推送状态',key:'Status' },
|
|
|
|
+ { label:'操作时间',key:'CreateTime' },
|
|
],
|
|
],
|
|
|
|
|
|
list: [],
|
|
list: [],
|
|
@@ -104,7 +145,8 @@ export default {
|
|
}
|
|
}
|
|
},
|
|
},
|
|
mounted(){
|
|
mounted(){
|
|
-
|
|
|
|
|
|
+ this.getclassifylist();
|
|
|
|
+ this.getList()
|
|
},
|
|
},
|
|
methods:{
|
|
methods:{
|
|
pageChange(page) {
|
|
pageChange(page) {
|
|
@@ -112,17 +154,30 @@ export default {
|
|
this.getList()
|
|
this.getList()
|
|
},
|
|
},
|
|
|
|
|
|
- filterChange() {
|
|
|
|
|
|
+ initList() {
|
|
this.pageChange(1)
|
|
this.pageChange(1)
|
|
},
|
|
},
|
|
|
|
|
|
- getList() {
|
|
|
|
|
|
+ async getList() {
|
|
|
|
+ let params = {
|
|
|
|
+ PageSize: this.pageSize,
|
|
|
|
+ CurrentIndex: this.pageNo,
|
|
|
|
+ ClassifyId: this.filterForm.classifyId,
|
|
|
|
+ ClassifyType: this.filterForm.classifyType,
|
|
|
|
+ Status: this.filterForm.pushStatus,
|
|
|
|
+ SendTime: this.filterForm.date
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ const res = await reportPushInterface.getPushList(params)
|
|
|
|
+ if(res.Ret !== 200) return
|
|
|
|
|
|
|
|
+ this.list = res.Data.List || [];
|
|
|
|
+ this.total = res.Data.Paging.Totals;
|
|
},
|
|
},
|
|
|
|
|
|
- getclassifylist() {
|
|
|
|
|
|
+ getclassifylist() {
|
|
//获取分类列表
|
|
//获取分类列表
|
|
- let params = { CurrentIndex: 0, PageSize: 1000, KeyWord: "",ClassifyType:1 };
|
|
|
|
|
|
+ let params = { CurrentIndex: 0, PageSize: 1000, KeyWord: "" };
|
|
|
|
|
|
classifylist(params).then((res) => {
|
|
classifylist(params).then((res) => {
|
|
if (res.Ret == 200 && Array.isArray(res.Data.List)) {
|
|
if (res.Ret == 200 && Array.isArray(res.Data.List)) {
|
|
@@ -137,5 +192,9 @@ export default {
|
|
<style scoped lang='scss'>
|
|
<style scoped lang='scss'>
|
|
.filter-cont {
|
|
.filter-cont {
|
|
margin-bottom: 10px;
|
|
margin-bottom: 10px;
|
|
|
|
+ display: flex;
|
|
|
|
+ justify-content: space-between;
|
|
|
|
+ align-items: center;
|
|
|
|
+ flex-wrap: wrap;
|
|
}
|
|
}
|
|
</style>
|
|
</style>
|