| 
					
				 | 
			
			
				@@ -0,0 +1,180 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  <a-card size="small" :bordered="false" class="noticeManagementList-wrap"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <a-spin :spinning="spinning" tip="Loading..."> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <!-- 搜索条件 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <div ref="tableSearch" class="table-page-search-wrapper"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <a-form layout="inline" @keyup.enter.native="$refs.table.refresh(true)"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <a-row :gutter="15"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <a-col :md="6" :sm="24"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <a-form-item label="创建时间"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <rangeDate ref="rangeDate" @change="dateChange" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              </a-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </a-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <a-col :md="6" :sm="24"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <a-form-item label="文件名称"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <a-input id="noticeManagementList-fileName" v-model.trim="queryParam.fileName" allowClear placeholder="请输入标题"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              </a-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </a-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <a-col :md="6" :sm="24"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <a-form-item label="状态"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <v-select code="EXPORT_TASK_STATE" id="noticeManagementList-taskState" v-model="queryParam.taskState" allowClear placeholder="请选择发布状态"></v-select> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              </a-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </a-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <a-col :md="6" :sm="24" style="margin-bottom: 10px;"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <a-button type="primary" @click="$refs.table.refresh(true)" :disabled="disabled" id="noticeManagementList-refresh">查询</a-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <a-button style="margin-left: 5px" @click="resetSearchForm" :disabled="disabled" id="noticeManagementList-reset">重置</a-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </a-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </a-row> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </a-form> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <!-- 总计 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <!-- <a-alert type="info" style="margin-bottom:10px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <div slot="message">合计:<strong>{{ total || 0 }}</strong>条</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </a-alert> --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <!-- 列表 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <s-table 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        class="sTable fixPagination" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ref="table" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        :style="{ height: tableHeight+84.5+'px' }" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        size="small" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        :rowKey="(record) => record.id" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        :columns="columns" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        :data="loadData" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        :scroll="{ y: tableHeight }" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        :defaultLoadData="false" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        bordered> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <!-- 操作 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <template slot="action" slot-scope="text, record"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <a-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            size="small" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            type="link" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            class="button-info" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            v-if="record.taskState=='0'" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            @click="handleEdit(record)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            id="noticeManagementList-edit-btn">编辑</a-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <a-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            size="small" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            type="link" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            class="button-success" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            v-if="record.taskState=='1'" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            @click="handleDetail(record)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            id="noticeManagementList-detail-btn">详情</a-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <a-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            size="small" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            type="link" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            class="button-error" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            v-if="record.taskState=='0'" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            @click="handleDel(record)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            id="noticeManagementList-del-btn">删除</a-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </s-table> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    </a-spin> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  </a-card> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { STable, VSelect } from '@/components' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { taskList } from '@/api/dowloadFile' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import rangeDate from '@/views/common/rangeDate.vue' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  components: { STable, VSelect, rangeDate }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  data () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      spinning: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      tableHeight: 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      queryParam: { //  查询条件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        beginDate: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        endDate: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fileName: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        taskState: undefined 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      disabled: false, //  查询、重置按钮是否可操作 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      columns: [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { fileName: '序号', dataIndex: 'no', width: '4%', align: 'center' }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { fileName: '创建时间', dataIndex: 'createDate', width: '13%', align: 'center', customRender: function (text) { return text || '--' } }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { fileName: '类别', dataIndex: 'typeDictValue', width: '11%', align: 'center', customRender: function (text) { return text || '--' } }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { fileName: '标题', dataIndex: 'fileName', align: 'center', width: '25%', customRender: function (text) { return text || '--' }, ellipsis: true }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { fileName: '可见性', dataIndex: 'toAppNameDictValue', width: '9%', align: 'center', customRender: function (text) { return text || '--' } }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { fileName: '发布时间', dataIndex: 'releaseDate', width: '13%', align: 'center', customRender: function (text) { return text || '--' } }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { fileName: '发布状态', dataIndex: 'taskStateDictValue', width: '10%', align: 'center', customRender: function (text) { return text || '--' } }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { fileName: '操作', scopedSlots: { customRender: 'action' }, width: '15%', align: 'center' } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      ], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 加载数据方法 必须为 Promise 对象 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      loadData: parameter => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.disabled = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.spinning = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return taskList(Object.assign(parameter, this.queryParam)).then(res => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          let data 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (res.status == 200) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            data = res.data 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            const no = (data.pageNo - 1) * data.pageSize 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            for (var i = 0; i < data.list.length; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              data.list[i].no = no + i + 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              data.list[i].typeDictValue = data.list[i].type == 'notity' ? '公告' : data.list[i].type == 'news_company' ? '企业新闻' : data.list[i].type == 'news_trade' ? '行业咨询' : '--' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              data.list[i].taskStateDictValue = data.list[i].taskState == 1 ? '已发布' : data.list[i].taskState == 0 ? '未发布' : '--' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              data.list[i].toAppNameDictValue = data.list[i].toAppName == '1,2' ? '所有' : data.list[i].toAppName == '2' ? '经销商' : data.list[i].toAppName == '1' ? '总部' : '--' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.total = data.count || 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.disabled = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.spinning = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          return data 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      total: 0, // 合计 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      openModal: false, //  编辑  弹框 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      openDetailModal: false, //  详情  弹框 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      itemId: '' //  当前产品id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  methods: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //  时间  change 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    dateChange (date) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParam.beginDate = date[0] ? date[0] + ' 00:00:00' : '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParam.endDate = date[1] ? date[1] + ' 23:59:59' : '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //  重置 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    resetSearchForm () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParam.beginDate = null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParam.endDate = null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParam.fileName = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParam.type = undefined 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParam.taskState = undefined 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.$refs.table.refresh(true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    pageInit () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const _this = this 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.$nextTick(() => { // 页面渲染完成后的回调 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        _this.setTableH() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    setTableH () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const tableSearchH = this.$refs.tableSearch.offsetHeight 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.tableHeight = window.innerHeight - tableSearchH - 235 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  watch: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.setTableH() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  mounted () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if (!this.$store.state.app.isNewTab) { // 页签刷新时调用 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.pageInit() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.resetSearchForm() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  activated () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 如果是新页签打开,则重置当前页面 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if (this.$store.state.app.isNewTab) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.pageInit() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.resetSearchForm() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 仅刷新列表,不重置页面 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if (this.$store.state.app.updateList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.pageInit() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.$refs.table.refresh() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</script> 
			 |