885 lines
41 KiB
HTML
885 lines
41 KiB
HTML
<!--#
|
|
layout("/layouts/platform.html"){
|
|
#-->
|
|
<div id="app" v-cloak>
|
|
<transition name="el-zoom-in-center">
|
|
<div style="padding: 10px" v-show="isshow">
|
|
<el-row class="header bg-white " >
|
|
<div class="pull-right offscreen-right mt5">
|
|
<el-button size="medium" icon="el-icon-plus" @click="openAdd">新增</el-button>
|
|
<el-button size="medium" @click="readMore" :disabled="selectData.length==0&&pageForm.activeName!='first'" @click="">标记已读</el-button>
|
|
<el-button size="medium" @click="readAll" :disabled="pageForm.activeName!='first'">全部已读</el-button>
|
|
</div>
|
|
</el-row>
|
|
|
|
<el-row class="el-table-container">
|
|
<el-tabs v-model="pageForm.activeName" @tab-click="pageData(),selectData=[]">
|
|
<el-tab-pane label="收件箱" name="first" >
|
|
<el-table
|
|
:data="tableData"
|
|
@sort-change='pageOrder'
|
|
size="small"
|
|
header-align="center"
|
|
style="width: 100%"
|
|
@selection-change="handleSelectionChange"
|
|
>
|
|
<el-table-column
|
|
type="selection"
|
|
width="35">
|
|
</el-table-column>
|
|
<el-table-column align="center" header-align="center" label="序号" type="index">
|
|
<template scope="scope"><span>{{scope.$index+(pageForm.pageNumber - 1) * pageForm.pageSize + 1}} </span></template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
sortable
|
|
prop="type"
|
|
label="消息类型"
|
|
header-align="center" align="center">
|
|
<template slot-scope="scope">
|
|
<span v-if="'system'==scope.row.type">预设团体</span>
|
|
<span v-if="'user'==scope.row.type">自定义人员</span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
|
|
label="所属模块"
|
|
header-align="center"
|
|
:show-overflow-tooltip="true">
|
|
<template scope="scope">
|
|
<div v-if="scope.row.ssmk=='hd'">活动管理</div>
|
|
<div v-if="scope.row.ssmk=='zg'">职工服务</div>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="title"
|
|
label="标题"
|
|
header-align="center"
|
|
:show-overflow-tooltip="true">
|
|
</el-table-column>
|
|
<el-table-column
|
|
sortable
|
|
prop="opAt"
|
|
label="读取时间"
|
|
header-align="center">
|
|
<template slot-scope="scope">
|
|
{{formatAt(scope.row.readat)}}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
sortable
|
|
prop="delFlag"
|
|
label="消息状态">
|
|
<template slot-scope="scope">
|
|
<div v-if="scope.row.status==0">
|
|
未读
|
|
</div>
|
|
<div v-if="scope.row.status==1">
|
|
已读
|
|
</div>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
label="操作"
|
|
>
|
|
<template slot-scope="scope">
|
|
<!--<el-dropdown @command="dropdownCommand">
|
|
<el-button size="mini">
|
|
<i class="ti-settings"></i>
|
|
<span class="ti-angle-down"></span>
|
|
</el-button>
|
|
<el-dropdown-menu slot="dropdown">
|
|
<el-dropdown-item :command="{type:'select',id:scope.row.id,name:scope.row.title,scope:scope.row}">
|
|
查看
|
|
</el-dropdown-item>
|
|
<el-dropdown-item :command="{type:'delete',id:scope.row.id,name:scope.row.title}">
|
|
删除
|
|
</el-dropdown-item>
|
|
|
|
</el-dropdown-menu>
|
|
</el-dropdown>-->
|
|
<el-button @click="dropdownCommand('select',scope.row.id,scope.row.title,scope)" size="mini">查看</el-button>
|
|
<el-button @click="dropdownCommand('delete',scope.row.id,scope.row.title,scope)" type="danger" size="mini">删除</el-button>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-tab-pane>
|
|
<el-tab-pane label="发件箱" name="second" >
|
|
<el-table
|
|
:data="tableData"
|
|
@sort-change='pageOrder'
|
|
size="small"
|
|
header-align="center"
|
|
style="width: 100%"
|
|
>
|
|
<el-table-column align="center" header-align="center" label="序号" type="index">
|
|
<template scope="scope"><span>{{scope.$index+(pageForm.pageNumber - 1) * pageForm.pageSize + 1}} </span></template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="username"
|
|
label="接收用户"
|
|
header-align="center"
|
|
:show-overflow-tooltip="true">
|
|
</el-table-column>
|
|
<el-table-column
|
|
sortable
|
|
prop="type"
|
|
label="消息类型"
|
|
header-align="center" align="center">
|
|
<template slot-scope="scope">
|
|
<span v-if="'system'==scope.row.type">预设团体</span>
|
|
<span v-if="'user'==scope.row.type">自定义人员</span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
|
|
label="所属模块"
|
|
header-align="center"
|
|
:show-overflow-tooltip="true">
|
|
<template scope="scope">
|
|
<div v-if="scope.row.ssmk=='hd'">活动管理</div>
|
|
<div v-if="scope.row.ssmk=='zg'">职工服务</div>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="title"
|
|
label="标题"
|
|
header-align="center"
|
|
:show-overflow-tooltip="true">
|
|
</el-table-column>
|
|
<el-table-column
|
|
sortable
|
|
prop="opAt"
|
|
label="发送时间"
|
|
header-align="center">
|
|
<template slot-scope="scope">
|
|
{{formatAt(scope.row.sendat)}}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
sortable
|
|
prop="delFlag"
|
|
label="消息状态">
|
|
<template slot-scope="scope">
|
|
|
|
<div v-if="scope.row.delflag">
|
|
已删除
|
|
</div>
|
|
<div v-if="!scope.row.delflag">
|
|
已发送
|
|
</div>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
label="操作">
|
|
<template slot-scope="scope">
|
|
<!--<el-dropdown @command="dropdownCommand">
|
|
<el-button size="mini">
|
|
<i class="ti-settings"></i>
|
|
<span class="ti-angle-down"></span>
|
|
</el-button>
|
|
<el-dropdown-menu slot="dropdown">
|
|
<el-dropdown-item :command="{type:'select',id:scope.row.id,name:scope.row.title,scope:scope.row}">
|
|
查看
|
|
</el-dropdown-item>
|
|
<el-dropdown-item :command="{type:'delete',id:scope.row.id,name:scope.row.title}">
|
|
删除
|
|
</el-dropdown-item>
|
|
</el-dropdown-menu>
|
|
</el-dropdown>-->
|
|
<el-button @click="dropdownCommand('select',scope.row.id,scope.row.title,scope)" size="mini">查看</el-button>
|
|
<el-button @click="dropdownCommand('delete',scope.row.id,scope.row.title,scope)" type="danger" size="mini">删除</el-button>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-tab-pane>
|
|
<el-tab-pane label="消息管理" name="three">
|
|
<el-table
|
|
:data="tableData"
|
|
@sort-change='pageOrder'
|
|
size="small"
|
|
header-align="center"
|
|
style="width: 100%"
|
|
@selection-change="handleSelectionChange"
|
|
>
|
|
<el-table-column align="center" header-align="center" label="序号" type="index">
|
|
<template scope="scope"><span>{{scope.$index+(pageForm.pageNumber - 1) * pageForm.pageSize + 1}} </span></template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
sortable
|
|
prop="type"
|
|
label="消息类型"
|
|
header-align="center" align="center">
|
|
<template slot-scope="scope">
|
|
<span v-if="'system'==scope.row.type">预设团体</span>
|
|
<span v-if="'user'==scope.row.type">自定义人员</span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
|
|
label="所属模块"
|
|
header-align="center"
|
|
:show-overflow-tooltip="true">
|
|
<template scope="scope">
|
|
<div v-if="scope.row.ssmk=='hd'">活动管理</div>
|
|
<div v-if="scope.row.ssmk=='zg'">职工服务</div>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="title"
|
|
label="标题"
|
|
header-align="center"
|
|
:show-overflow-tooltip="true">
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="all_num"
|
|
label="总接收用户"
|
|
header-align="center" align="center">
|
|
<template slot-scope="scope">
|
|
<el-button size="small" @click="viewUserList('all',scope.row.id)">{{scope.row.all_num}}</el-button>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="unread_num"
|
|
label="未读用户"
|
|
header-align="center" align="center">
|
|
<template slot-scope="scope">
|
|
<el-button size="small" @click="viewUserList('unread',scope.row.id)">{{scope.row.unread_num}}
|
|
</el-button>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
sortable
|
|
prop="opAt"
|
|
label="发送时间"
|
|
header-align="center">
|
|
<template slot-scope="scope">
|
|
{{formatAt(scope.row.sendat)}}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
sortable
|
|
prop="delFlag"
|
|
label="消息状态"
|
|
header-align="center" align="center">
|
|
<template slot-scope="scope">
|
|
<div v-if="scope.row.delflag">
|
|
已删除
|
|
</div>
|
|
<div v-if="!scope.row.delflag">
|
|
已发送
|
|
</div>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
label="操作">
|
|
<template slot-scope="scope">
|
|
<!--<el-dropdown @command="dropdownCommand">
|
|
<el-button size="mini">
|
|
<i class="ti-settings"></i>
|
|
<span class="ti-angle-down"></span>
|
|
</el-button>
|
|
<el-dropdown-menu slot="dropdown">
|
|
<el-dropdown-item :command="{type:'select',id:scope.row.id,name:scope.row.title,scope:scope.row}">
|
|
查看
|
|
</el-dropdown-item>
|
|
<el-dropdown-item :command="{type:'delete',id:scope.row.id,name:scope.row.title}">
|
|
删除
|
|
</el-dropdown-item>
|
|
</el-dropdown-menu>
|
|
</el-dropdown>-->
|
|
<el-button @click="dropdownCommand('select',scope.row.id,scope.row.title,scope)" size="mini">查看</el-button>
|
|
<el-button @click="dropdownCommand('delete',scope.row.id,scope.row.title,scope)" type="danger" size="mini">删除</el-button>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-tab-pane>
|
|
</el-tabs>
|
|
</el-row>
|
|
|
|
<el-row class="el-pagination-container">
|
|
<el-pagination
|
|
@size-change="pageSizeChange"
|
|
@current-change="pageNumberChange"
|
|
:current-page="pageForm.pageNumber"
|
|
:page-sizes="[10, 20, 30, 50]"
|
|
:page-size="pageForm.pageSize"
|
|
layout="total, sizes, prev, pager, next, jumper"
|
|
:total="pageForm.totalCount">
|
|
</el-pagination>
|
|
</el-row>
|
|
</div>
|
|
</transition>
|
|
|
|
|
|
<!--新增-->
|
|
<el-dialog title="新增通知" :close-on-click-modal="false"
|
|
:visible.sync="addDialogVisible" custom-class="ViewDialogClass" width="50%">
|
|
<el-form :model="formData" v-show="active==2" ref="addForm" size="small" label-width="70px">
|
|
<el-form-item label="标题" prop="phone">
|
|
<el-input maxlength="100" placeholder="标题"
|
|
v-model="formData.title" style="width: 100%"
|
|
auto-complete="off" tabindex="4" type="text"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="链接地址" prop="phone">
|
|
<el-input maxlength="100" placeholder="链接地址"
|
|
v-model="formData.url" style="width: 100%"
|
|
auto-complete="off" tabindex="4" type="text"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="消息内容" prop="phone">
|
|
<!-- <el-input maxlength="100" placeholder="消息内容"
|
|
v-model="formData.note" style="width: 100%"
|
|
rows="4" type="textarea"></el-input>-->
|
|
<div ref="xx" class="xx"></div>
|
|
</el-form-item>
|
|
</el-form>
|
|
|
|
<el-form :model="formData" v-show="active==1" ref="addForm" size="small" label-width="70px">
|
|
<el-form-item prop="type" label="发送对象">
|
|
<el-radio-group v-model="formData.type">
|
|
<el-radio label="system">预设团体</el-radio>
|
|
<el-radio label="user">自定义人员</el-radio>
|
|
</el-radio-group>
|
|
</el-form-item>
|
|
<el-form-item label="用户列表" v-if="formData.type=='user'" prop="phone">
|
|
<el-row>
|
|
<el-button icon="el-icon-search" @click="openSelect">选择用户</el-button>
|
|
<el-button icon="el-icon-delete" @click="formData.users=[]" type="danger">清空用户</el-button>
|
|
|
|
</el-row>
|
|
<el-table :data="formData.users" height="250" size="small">
|
|
<el-table-column align="center" header-align="center" label="序号" type="index">
|
|
<template scope="scope"><span>{{scope.$index+(pageForm.pageNumber - 1) * pageForm.pageSize + 1}} </span></template>
|
|
</el-table-column>
|
|
<el-table-column :show-overflow-tooltip="true" label="工号" prop="loginname"></el-table-column>
|
|
<el-table-column :show-overflow-tooltip="true" label="姓名" prop="username"></el-table-column>
|
|
<el-table-column :show-overflow-tooltip="true" label="手机号" prop="mobile"></el-table-column>
|
|
<el-table-column :show-overflow-tooltip="true" label="单位" prop="unitname"></el-table-column>
|
|
<el-table-column :show-overflow-tooltip="true" label="院级工会" prop="unionname"></el-table-column>
|
|
</el-table>
|
|
</el-form-item>
|
|
<el-form-item label="发送人员" v-if="formData.type=='system'">
|
|
<el-checkbox-group v-model="formData.rylist">
|
|
<el-checkbox label="H04">院级工会管理员</el-checkbox>
|
|
<el-checkbox label="H01">全校工会会员</el-checkbox>
|
|
</el-checkbox-group>
|
|
</el-form-item>
|
|
</el-form>
|
|
|
|
<el-form :model="formData" v-if="active==0" ref="addForm" size="small" label-width="110px">
|
|
<el-form-item label="所属模块" prop="phone">
|
|
<el-select v-model="formData.ssmk" @change="getSj(formData.ssmk)" style="width: 100%">
|
|
<el-option label="活动管理" value="hd"></el-option>
|
|
<el-option label="职工服务" value="zg"></el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
<el-form-item label="发送方式" prop="phone">
|
|
<el-checkbox-group v-model="formData.fsfs">
|
|
<el-checkbox label="系统消息">系统消息</el-checkbox>
|
|
<el-checkbox label="邮件发送">邮件发送</el-checkbox>
|
|
<el-checkbox label="短信发送">短信发送</el-checkbox>
|
|
<el-checkbox label="微信发送">微信发送</el-checkbox>
|
|
</el-checkbox-group>
|
|
</el-form-item>
|
|
<el-form-item prop="type" label="是否推送日历">
|
|
<el-radio-group v-model="formData.sfrl">
|
|
<el-radio label="1">是</el-radio>
|
|
<el-radio label="2">否</el-radio>
|
|
</el-radio-group>
|
|
</el-form-item>
|
|
</el-form>
|
|
|
|
<el-steps :active="active" finish-status="success">
|
|
<el-step title="选择发送方式">
|
|
|
|
</el-step>
|
|
<el-step title="选择接收对象">
|
|
|
|
</el-step>
|
|
<el-step title="填写发送内容">
|
|
|
|
</el-step>
|
|
</el-steps>
|
|
|
|
<span slot="footer" class="dialog-footer">
|
|
<el-button @click="addDialogVisible = false">取 消</el-button>
|
|
<el-button style="margin-top: 12px;" v-if="active!=0" @click="back">上一步</el-button>
|
|
<el-button style="margin-top: 12px;" v-if="active!=2" @click="next">下一步</el-button>
|
|
<el-button type="primary" v-if="active==2" @click="doAdd">确 定</el-button>
|
|
</span>
|
|
</el-dialog>
|
|
|
|
|
|
<el-dialog
|
|
title="选择用户"
|
|
:visible.sync="selectDialogVisible"
|
|
width="65%">
|
|
<div class="btn-group tool-button mt5">
|
|
<el-input placeholder="请输入内容" v-model="selectPageForm.searchKeyword" @keyup.enter.native="doSearch">
|
|
<el-select v-model="selectPageForm.searchName" slot="prepend" placeholder="查询类型" style="width: 120px;">
|
|
<el-option label="工号" value="loginname"></el-option>
|
|
<el-option label="姓名" value="username"></el-option>
|
|
<el-option label="手机" value="mobile"></el-option>
|
|
</el-select>
|
|
<el-button slot="append" icon="el-icon-search" @click="doSelectSearch"></el-button>
|
|
|
|
</el-input>
|
|
</div>
|
|
<el-table
|
|
:data="selectTableData"
|
|
@sort-change='selectPageOrder'
|
|
header-align="center"
|
|
style="width: 100%;margin-top: 10px;margin-bottom: 10px;"
|
|
:default-sort="{prop: 'opAt', order: 'descending'}"
|
|
@selection-change="UserhandleSelectionChange"
|
|
size="mini"
|
|
>
|
|
<el-table-column
|
|
type="selection"
|
|
width="35">
|
|
</el-table-column>
|
|
<el-table-column
|
|
fixed
|
|
prop="loginname"
|
|
label="用户名">
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="username"
|
|
label="姓名">
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="mobile"
|
|
label="手机">
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="unitname"
|
|
label="所属单位">
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="unionname"
|
|
label="院级工会">
|
|
</el-table-column>
|
|
</el-table>
|
|
<el-pagination
|
|
@size-change="selectPageSizeChange"
|
|
@current-change="selectPageNumberChange"
|
|
:current-page="selectPageForm.pageNumber"
|
|
:page-sizes="[10, 20, 30, 50]"
|
|
:page-size="selectPageForm.pageSize"
|
|
layout="total, sizes, prev, pager, next, jumper"
|
|
:total="selectPageForm.totalCount">
|
|
</el-pagination>
|
|
<span slot="footer" class="dialog-footer">
|
|
<el-button @click="selectDialogVisible = false"> 取 消 </el-button>
|
|
<el-button type="primary" @click="AddUser"> 确 定 </el-button>
|
|
</span>
|
|
</el-dialog>
|
|
|
|
<el-dialog
|
|
:title="viewUserTitle"
|
|
:visible.sync="viewDialogVisible"
|
|
width="65%">
|
|
<el-table
|
|
:data="viewTableData"
|
|
@sort-change='viewPageOrder'
|
|
header-align="center"
|
|
style="width: 100%;margin-top: 10px;margin-bottom: 10px;"
|
|
:default-sort="{prop: 'opAt', order: 'descending'}"
|
|
size="small"
|
|
>
|
|
<el-table-column
|
|
fixed
|
|
prop="loginname"
|
|
label="用户名"
|
|
width="150">
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="username"
|
|
label="姓名"
|
|
width="120">
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="mobile"
|
|
label="手机">
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="email"
|
|
label="邮箱">
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="unitname"
|
|
label="所属单位">
|
|
</el-table-column>
|
|
</el-table>
|
|
<el-pagination
|
|
@size-change="viewPageSizeChange"
|
|
@current-change="viewPageNumberChange"
|
|
:current-page="viewPageForm.pageNumber"
|
|
:page-sizes="[10, 20, 30, 50]"
|
|
:page-size="viewPageForm.pageSize"
|
|
layout="total, sizes, prev, pager, next, jumper"
|
|
:total="viewPageForm.totalCount">
|
|
</el-pagination>
|
|
<span slot="footer" class="dialog-footer">
|
|
<el-button @click="viewDialogVisible = false"> 关 闭 </el-button>
|
|
</span>
|
|
</el-dialog>
|
|
|
|
<transition name="el-zoom-in-center">
|
|
<div style="padding: 10px" v-show="!isshow">
|
|
<header class="header navbar bg-white ">
|
|
<div class="btn-group tool-button m5">
|
|
<a class="el-button el-button--default el-button--medium" @click="isshow=true" data-pjax><i
|
|
class="ti-angle-left"></i>返回</a>
|
|
</div>
|
|
</header>
|
|
<div class="content-wrap">
|
|
<div class="wrapper" style="min-height:500px;">
|
|
<section class="panel">
|
|
<div class="row mb10">
|
|
<div class="col-lg-12">
|
|
<div style="text-align:center">
|
|
<h4>{{viewForm.title}}</h4>
|
|
</div>
|
|
<div style="text-align:center;font-size: 14px;line-height: 24px;">
|
|
{{formatAt(viewForm.sendat)}}
|
|
</div>
|
|
<div style="text-align:center;font-size: 14px;line-height: 24px;">
|
|
<el-link :href="viewForm.url" >{{viewForm.url}}</el-link>
|
|
</div>
|
|
<div style="margin-top: 16px !important;border-bottom: 1px solid #DDD;"></div>
|
|
<div style="margin-top: 16px !important;">
|
|
{{viewForm.note}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</transition>
|
|
</div>
|
|
<script>
|
|
let E = window.wangEditor
|
|
let editor = null
|
|
const vue=new Vue({
|
|
el:"#app",
|
|
data(){
|
|
return{
|
|
addDialogVisible:false,
|
|
selectDialogVisible:false,
|
|
active:0,
|
|
formData:{users:[],rylist:[],type:"system",fsfs:[]},
|
|
tableData:[],
|
|
pageForm: {
|
|
searchType: "",
|
|
pageNumber: 1,
|
|
pageSize: 10,
|
|
totalCount: 0,
|
|
pageOrderName: "",
|
|
pageOrderBy: "",
|
|
activeName:"first"
|
|
},
|
|
selectTableData:[],
|
|
selectPageForm: {
|
|
searchName: "username",
|
|
searchKeyword: "",
|
|
pageNumber: 1,
|
|
pageSize: 10,
|
|
totalCount: 0,
|
|
pageOrderName: "",
|
|
pageOrderBy: ""
|
|
},
|
|
activeName:"first",
|
|
selectData:[],
|
|
sjlist:[],
|
|
selectUsers:[],
|
|
viewDialogVisible:false,
|
|
viewPageForm: {
|
|
pageNumber: 1,
|
|
pageSize: 10,
|
|
totalCount: 0,
|
|
pageOrderName: "",
|
|
pageOrderBy: "",
|
|
type: "",
|
|
id: ""
|
|
},
|
|
viewUserTitle:false,
|
|
viewTableData:[],
|
|
isshow:true,
|
|
viewForm:{}
|
|
}
|
|
},
|
|
methods:{
|
|
handleSelectionChange (val) {
|
|
this.selectData = val;
|
|
},
|
|
selectPageOrder (column) {//按字段排序
|
|
this.selectPageForm.pageOrderName = column.prop;
|
|
this.selectPageForm.pageOrderBy = column.order;
|
|
this.selectPageData();
|
|
},
|
|
selectPageNumberChange (val) {//页码更新操作
|
|
this.selectPageForm.pageNumber = val;
|
|
this.selectPageData();
|
|
},
|
|
selectPageSizeChange (val) {//分页大小更新操作
|
|
this.selectPageForm.pageSize = val;
|
|
this.selectPageData();
|
|
},
|
|
doSelectSearch () {
|
|
this.selectPageForm.pageNumber = 1;
|
|
this.selectPageData();
|
|
},
|
|
selectPageData () {//加载分页数据
|
|
|
|
$.post(base + "/platform/hd/hdmsg/user_data", this.selectPageForm, data=> {
|
|
if (data.code == 0) {
|
|
this.selectTableData = data.data.list;
|
|
this.selectPageForm.totalCount = data.data.totalCount;
|
|
} else {
|
|
this.$message({
|
|
message: data.msg,
|
|
type: 'error'
|
|
});
|
|
}
|
|
}, "json");
|
|
},
|
|
UserhandleSelectionChange (val) {
|
|
this.selectUsers = val;
|
|
},
|
|
async openAdd(){
|
|
this.formData={users:[],rylist:[],type:"system",fsfs:[]};
|
|
this.active=0;
|
|
this.addDialogVisible=true;
|
|
await this.$nextTick()
|
|
if (editor==null){
|
|
editor = new wangEditor(this.$refs.xx)
|
|
editor.create()
|
|
}
|
|
|
|
},
|
|
doAdd(){
|
|
|
|
var users = [];
|
|
if (this.formData.users) {
|
|
this.formData.users.forEach(function (o) {
|
|
users.push(o.loginname);
|
|
});
|
|
}
|
|
this.formData.note=editor.txt.text();
|
|
this.formData.users=users.toString();
|
|
this.formData.rylist=this.formData.rylist.toString();
|
|
this.formData.fsfs=this.formData.fsfs.toString();
|
|
$.post(base+"/platform/hd/hdmsg/addDo",this.formData).then(data=>{
|
|
|
|
vue.$message({
|
|
message: '发送成功!',
|
|
type: 'success'
|
|
});
|
|
vue.addDialogVisible = false;
|
|
|
|
})
|
|
},
|
|
next() {
|
|
if (this.active++ > 2) this.active = 0;
|
|
},
|
|
back(){
|
|
this.active--;
|
|
},
|
|
pageOrder (column) {//按字段排序
|
|
this.pageForm.pageOrderName = column.prop;
|
|
this.pageForm.pageOrderBy = column.order;
|
|
this.pageData();
|
|
},
|
|
pageNumberChange(val) {//页码更新操作
|
|
this.pageForm.pageNumber = val;
|
|
this.pageData();
|
|
},
|
|
pageSizeChange(val) {//分页大小更新操作
|
|
this.pageForm.pageSize = val;
|
|
this.pageData();
|
|
},
|
|
pageData () {//加载分页数据
|
|
|
|
$.post(base + "/platform/hd/hdmsg/pageData", this.pageForm, data=> {
|
|
if (data.code == 0) {
|
|
this.tableData = data.data.list;
|
|
this.pageForm.totalCount = data.data.totalCount;
|
|
} else {
|
|
this.$message({
|
|
message: data.msg,
|
|
type: 'error'
|
|
});
|
|
}
|
|
}, "json");
|
|
},
|
|
openSelect() {
|
|
this.selectDialogVisible = true;
|
|
this.selectUsers=[];
|
|
this.selectPageData();
|
|
},
|
|
AddUser(){
|
|
this.formData.users=this.selectUsers
|
|
this.selectDialogVisible=false;
|
|
},
|
|
formatAt(val) {
|
|
if (val && val > 0)
|
|
return moment(val * 1000).format("YYYY-MM-DD HH:mm");
|
|
return "";
|
|
},
|
|
getSj(ssmk){
|
|
$.post(base+"/platform/hd/hdmsg/getSj",{ssmk:ssmk},data=>{
|
|
this.sjlist=data.data;
|
|
})
|
|
},
|
|
readMore () {
|
|
|
|
if (this.selectData.length == 0) {
|
|
this.$message({
|
|
message: "请选择消息",
|
|
type: 'warning'
|
|
});
|
|
return false;
|
|
}
|
|
let ids = [];
|
|
this.selectData.forEach(val=> {
|
|
ids.push(val.msgid);
|
|
});
|
|
this.$confirm('您确定要标记选中的 '+ids.length+' 条消息为已读吗? ', '提示', {
|
|
confirmButtonText: '确定',
|
|
cancelButtonText: '取消',
|
|
type: 'warning',
|
|
callback: function (a, b) {
|
|
if ("confirm" == a) {//确认后再执行
|
|
$.post(base + "/platform/hd/hdmsg/read", {ids: ids.toString()}, data=> {
|
|
if (data.code == 0) {
|
|
this.$message({
|
|
message: data.msg,
|
|
type: 'success'
|
|
});
|
|
this.pageData();
|
|
} else {
|
|
this.$message({
|
|
message: data.msg,
|
|
type: 'error'
|
|
});
|
|
}
|
|
}, "json");
|
|
}
|
|
}
|
|
});
|
|
},
|
|
readAll () {
|
|
|
|
this.$confirm('您确定要标记全部消息为已读吗? ', '提示', {
|
|
confirmButtonText: '确定',
|
|
cancelButtonText: '取消',
|
|
type: 'warning'
|
|
}).then(()=>{
|
|
$.post(base + "/platform/hd/hdmsg/readAll", {}).then(res=>{
|
|
if (res.code === 0) {
|
|
this.$message.success(res.msg)
|
|
this.pageData();
|
|
}else{
|
|
this.$message.error(res.msg)
|
|
}
|
|
});
|
|
}).catch(()=>{});
|
|
},
|
|
delMore: function () {
|
|
|
|
if (this.selectData.length == 0) {
|
|
this.$message.warning('请选择消息')
|
|
return
|
|
}
|
|
var ids = [];
|
|
this.selectData.forEach( val=> {
|
|
ids.push(val.msgid);
|
|
});
|
|
this.$confirm('您确定要删除选中的 '+ids.length+' 条消息? ', '提示', {
|
|
confirmButtonText: '确定',
|
|
cancelButtonText: '取消',
|
|
type: 'warning'
|
|
}).then(()=>{
|
|
$.post(base + "/platform/hd/hdmsg/delete", {ids: ids.toString()}).then(res=>{
|
|
if (res.code === 0) {
|
|
this.$message.success(res.msg)
|
|
this.pageData();
|
|
}else{
|
|
this.$message.error(res.msg)
|
|
}
|
|
})
|
|
}).catch(()=>{})
|
|
},
|
|
dropdownCommand (type,id,name,scope) {//监听下拉框事件
|
|
|
|
if ("delete" == type) {
|
|
this.$confirm('此操作将删除 ' + name, '提示', {
|
|
confirmButtonText: '确定',
|
|
cancelButtonText: '取消',
|
|
type: 'warning'
|
|
}).then(()=>{
|
|
$.post(base + "/platform/hd/hdmsg/clean",{id:id,activeName:this.pageForm.activeName}).then(res=>{
|
|
if (res.code === 0) {
|
|
this.$message.success(res.msg);
|
|
this.pageData();
|
|
}else{
|
|
this.$message.error(res.msg)
|
|
}
|
|
})
|
|
}).catch(()=>{})
|
|
}
|
|
if ("select"==type){
|
|
this.viewForm=scope.row;
|
|
this.isshow=false;
|
|
}
|
|
},
|
|
viewUserList (type, id) {
|
|
|
|
if ("all" == type) {
|
|
this.viewUserTitle = "全部用户";
|
|
}
|
|
if ("unread" == type) {
|
|
this.viewUserTitle = "未读用户";
|
|
}
|
|
this.viewDialogVisible = true;
|
|
this.viewPageForm.type = type;
|
|
this.viewPageForm.id = id;
|
|
this.viewPageLoad();
|
|
},
|
|
viewPageOrder (column) {//按字段排序
|
|
this.viewPageForm.pageOrderName = column.prop;
|
|
this.viewPageForm.pageOrderBy = column.order;
|
|
this.viewPageLoad();
|
|
},
|
|
viewPageNumberChange (val) {//页码更新操作
|
|
this.viewPageForm.pageNumber = val;
|
|
this.viewPageLoad();
|
|
},
|
|
viewPageSizeChange (val) {//分页大小更新操作
|
|
this.viewPageForm.pageSize = val;
|
|
this.viewPageLoad();
|
|
},
|
|
viewPageLoad () {//加载分页数据
|
|
|
|
$.post(base + "/platform/sys/msg/user_view_data", this.viewPageForm, data=>{
|
|
if (data.code == 0) {
|
|
this.viewTableData = data.data.list;
|
|
this.viewPageForm.totalCount = data.data.totalCount;
|
|
} else {
|
|
this.$message({
|
|
message: data.msg,
|
|
type: 'error'
|
|
});
|
|
}
|
|
}, "json");
|
|
},
|
|
},
|
|
created(){
|
|
this.pageData();
|
|
}
|
|
})
|
|
</script>
|
|
<!--#
|
|
}
|
|
#--> |