|
@@ -0,0 +1,197 @@
|
|
|
|
+<template>
|
|
|
|
+ <a-card :bordered="false">
|
|
|
|
+ <!-- 查询区域 -->
|
|
|
|
+ <div class="table-page-search-wrapper">
|
|
|
|
+ <a-form layout="inline" @keyup.enter.native="searchQuery">
|
|
|
|
+ <a-row :gutter="24">
|
|
|
|
+
|
|
|
|
+ <a-col :span="6">
|
|
|
|
+ <a-form-item label="标题">
|
|
|
|
+ <a-input placeholder="请输入标题" v-model="queryParam.titile"></a-input>
|
|
|
|
+ </a-form-item>
|
|
|
|
+ </a-col>
|
|
|
|
+ <!-- <a-col :span="6">
|
|
|
|
+ <a-form-item label="发布人">
|
|
|
|
+ <a-input placeholder="请输入发布人" v-model="queryParam.sender"></a-input>
|
|
|
|
+ </a-form-item>
|
|
|
|
+ </a-col> -->
|
|
|
|
+
|
|
|
|
+ <a-col :span="8" >
|
|
|
|
+ <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
|
|
|
+ <a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
|
|
|
|
+ <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
|
|
|
|
+ </span>
|
|
|
|
+ </a-col>
|
|
|
|
+
|
|
|
|
+ </a-row>
|
|
|
|
+ </a-form>
|
|
|
|
+ </div>
|
|
|
|
+
|
|
|
|
+ <div class="table-operator">
|
|
|
|
+ <a-button type="primary" @click="readAll" icon="book">全部标注已读</a-button>
|
|
|
|
+ </div>
|
|
|
|
+
|
|
|
|
+ <a-table
|
|
|
|
+ ref="table"
|
|
|
|
+ size="default"
|
|
|
|
+ bordered
|
|
|
|
+ rowKey="id"
|
|
|
|
+ :columns="columns"
|
|
|
|
+ :dataSource="dataSource"
|
|
|
|
+ :pagination="ipagination"
|
|
|
|
+ :loading="loading"
|
|
|
|
+ @change="handleTableChange">
|
|
|
|
+ <span slot="action" slot-scope="text, record">
|
|
|
|
+ <a @click="showAnnouncement(record)">查看</a>
|
|
|
|
+ </span>
|
|
|
|
+ </a-table>
|
|
|
|
+ <show-announcement ref="ShowAnnouncement"></show-announcement>
|
|
|
|
+ <dynamic-notice ref="showDynamNotice" :path="openPath" :formData="formData"/>
|
|
|
|
+ </a-card>
|
|
|
|
+</template>
|
|
|
|
+
|
|
|
|
+<script>
|
|
|
|
+ import { filterObj } from '@/utils/util'
|
|
|
|
+ import { getAction,putAction } from '@/api/manage'
|
|
|
|
+ import ShowAnnouncement from '@/components/tools/ShowAnnouncement'
|
|
|
|
+ import {JeecgListMixin} from '@/mixins/JeecgListMixin'
|
|
|
|
+ import DynamicNotice from '@/components/tools/DynamicNotice'
|
|
|
|
+
|
|
|
|
+ export default {
|
|
|
|
+ name: "UserAnnouncementList",
|
|
|
|
+ mixins: [JeecgListMixin],
|
|
|
|
+ components: {
|
|
|
|
+ DynamicNotice,
|
|
|
|
+ ShowAnnouncement
|
|
|
|
+ },
|
|
|
|
+ data () {
|
|
|
|
+ return {
|
|
|
|
+ description: '系统通告表管理页面',
|
|
|
|
+ queryParam: {},
|
|
|
|
+ columns: [{
|
|
|
|
+ title: '标题',
|
|
|
|
+ align:"center",
|
|
|
|
+ dataIndex: 'titile'
|
|
|
|
+ },{
|
|
|
|
+ title: '消息类型',
|
|
|
|
+ align: "center",
|
|
|
|
+ dataIndex: 'msgCategory',
|
|
|
|
+ customRender: function (text) {
|
|
|
|
+ if (text == '1') {
|
|
|
|
+ return "通知公告";
|
|
|
|
+ } else if (text == "2") {
|
|
|
|
+ return "系统消息";
|
|
|
|
+ } else {
|
|
|
|
+ return text;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ },{
|
|
|
|
+ // title: '发布人',
|
|
|
|
+ // align:"center",
|
|
|
|
+ // dataIndex: 'sender',
|
|
|
|
+ title: '发送给',
|
|
|
|
+ align:"center",
|
|
|
|
+ dataIndex: 'userId_dictText'
|
|
|
|
+ },{
|
|
|
|
+ title: '发布时间',
|
|
|
|
+ align:"center",
|
|
|
|
+ dataIndex: 'sendTime'
|
|
|
|
+ },
|
|
|
|
+ // {
|
|
|
|
+ // title: '优先级',
|
|
|
|
+ // align:"center",
|
|
|
|
+ // dataIndex: 'priority',
|
|
|
|
+ // customRender:function (text) {
|
|
|
|
+ // if(text=='L'){
|
|
|
|
+ // return "低";
|
|
|
|
+ // }else if(text=="M"){
|
|
|
|
+ // return "中";
|
|
|
|
+ // }else if(text=="H"){
|
|
|
|
+ // return "高";
|
|
|
|
+ // } else {
|
|
|
|
+ // return text;
|
|
|
|
+ // }
|
|
|
|
+ // }
|
|
|
|
+ // },
|
|
|
|
+ {
|
|
|
|
+ title: '阅读状态',
|
|
|
|
+ align:"center",
|
|
|
|
+ dataIndex: 'readFlag',
|
|
|
|
+ customRender:function (text) {
|
|
|
|
+ if(text=='0'){
|
|
|
|
+ return "未读";
|
|
|
|
+ }else if(text=="1"){
|
|
|
|
+ return "已读";
|
|
|
|
+ } else {
|
|
|
|
+ return text;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ },{
|
|
|
|
+ title: '操作',
|
|
|
|
+ dataIndex: 'action',
|
|
|
|
+ align:"center",
|
|
|
|
+ scopedSlots: { customRender: 'action' },
|
|
|
|
+ }],
|
|
|
|
+ url: {
|
|
|
|
+ list: "/sys/sysAnnouncementSend/getAllAnnouncementSend",
|
|
|
|
+ editCementSend:"sys/sysAnnouncementSend/editByAnntIdAndUserId",
|
|
|
|
+ readAllMsg:"sys/sysAnnouncementSend/readAll",
|
|
|
|
+ },
|
|
|
|
+ loading:false,
|
|
|
|
+ openPath:'',
|
|
|
|
+ formData:''
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ methods: {
|
|
|
|
+ handleDetail: function(record){
|
|
|
|
+ this.$refs.sysAnnouncementModal.detail(record);
|
|
|
|
+ this.$refs.sysAnnouncementModal.title="查看";
|
|
|
|
+ },
|
|
|
|
+ showAnnouncement(record){
|
|
|
|
+ putAction(this.url.editCementSend,{anntId:record.anntId}).then((res)=>{
|
|
|
|
+ if(res.success){
|
|
|
|
+ this.loadData();
|
|
|
|
+ this.syncHeadNotic(record.anntId)
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ if(record.openType==='component'){
|
|
|
|
+ this.openPath = record.openPage;
|
|
|
|
+ this.formData = {id:record.busId};
|
|
|
|
+ this.$refs.showDynamNotice.detail();
|
|
|
|
+ }else{
|
|
|
|
+ this.$refs.ShowAnnouncement.detail(record);
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ syncHeadNotic(anntId){
|
|
|
|
+ getAction("sys/annountCement/syncNotic",{anntId:anntId})
|
|
|
|
+ },
|
|
|
|
+ readAll(){
|
|
|
|
+ var that = this;
|
|
|
|
+ that.$confirm({
|
|
|
|
+ title:"确认操作",
|
|
|
|
+ content:"是否全部标注已读?",
|
|
|
|
+ onOk: function(){
|
|
|
|
+ putAction(that.url.readAllMsg).then((res)=>{
|
|
|
|
+ if(res.success){
|
|
|
|
+ that.$message.success(res.message);
|
|
|
|
+ that.loadData();
|
|
|
|
+ that.syncHeadNotic();
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ },
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+</script>
|
|
|
|
+<style scoped>
|
|
|
|
+ .ant-card-body .table-operator{
|
|
|
|
+ margin-bottom: 18px;
|
|
|
|
+ }
|
|
|
|
+ .anty-row-operator button{margin: 0 5px}
|
|
|
|
+ .ant-btn-danger{background-color: #ffffff}z
|
|
|
|
+
|
|
|
|
+ .ant-modal-cust-warp{height: 100%}
|
|
|
|
+ .ant-modal-cust-warp .ant-modal-body{height:calc(100% - 110px) !important;overflow-y: auto}
|
|
|
|
+ .ant-modal-cust-warp .ant-modal-content{height:90% !important;overflow-y: hidden}
|
|
|
|
+</style>
|