/* ================================ @作者:andy @修改者:andy @模块描述:消息中心js @创建日期:2018/08/07 @修改日期:2018/08/07 ================================ */ var fun = { // 初始化 init: function () { fun.timeInit(); //需要删除 //初始化办事处下拉框 fun.getAreaBlocks("#parkAreaCode", true); //默认表格 初始化加载 fun.createTableData(); // $('#msg-type').selectpicker('render'); }, //需要删除 //获取办事处 getAreaBlocks: function (domStr, isNeedAll) { var plData = fn.getParkBlock(); var html = ""; var areaIds = []; $.each(plData, function (index, item) { areaIds.push(item.code); html += ""; }); if (isNeedAll) { var areaIdsStr = JSON.stringify(areaIds); html = "" + html; } $(domStr).append(html); $(domStr).selectpicker('render'); $(domStr).selectpicker('refresh'); }, //时间初始化 timeInit: function () { //进场时间初始化 // $('#msg-daterange-btnsta').val(moment().subtract('days', 0).format('YYYY-MM-DD')); // $('#msg-daterange-btnend').val(moment().subtract('days', 0).format('YYYY-MM-DD')); //开始日期 $("#msg-daterange-btnsta").datetimepicker({ endDate: moment().subtract('days', 0).format('YYYY-MM-DD'), format: 'yyyy-mm-dd', autoclose: true, startView: 2, //maxDate:moment().subtract('months', 3), minView: 2, forceParse: false, clearBtn: true, //添加清除按钮,可选值:true/false locale: "zh-CN", language: 'zh-CN', pickerPosition: "bottom-right" }).on("change", function () { $("#msg-daterange-btnend").val(''); }); //结束日期 $("#msg-daterange-btnend").datetimepicker({ endDate: moment().subtract('days', 0).format('YYYY-MM-DD'), //startDate:startVal, format: 'yyyy-mm-dd', weekStart: 1, autoclose: true, clearBtn: true, //添加清除按钮,可选值:true/false startView: 2, minView: 2, forceParse: false, locale: "zh-CN", language: 'zh-CN', pickerPosition: "bottom-right" }).on("click", function () { $("#msg-daterange-btnend").datetimepicker("setStartDate", $("#msg-daterange-btnsta").val()) }); }, //生成表格数据 createTableData: function () { $('#msgcentertable').bootstrapTable('destroy').bootstrapTable({ striped: true,//表格显示条纹 rownumbers: true, pagination: true, //启动分页 pageNumber: 1, //当前第几页 pageSize: 10, //每页显示的记录数 pageList: [10, 15, 20], //记录数可选列表 sidePagination: 'server',//表示服务端分页 queryParamsType: 'limit', method: 'POST',//请求方法 paginationPreText: '<', paginationNextText: '>', ajax: tableLoadRequest,//自定义ajax加载数据 uniqueId: 'id', columns: [ {field: 'id', title: '', width: '10%', align: 'left', visible: false}, { field: 'adviceType', title: '通知', width: '10%', align: 'left', formatter: fun.adviceTypeFormatter }, { field: 'adviceType', title: '状态', width: '10%', align: 'left', formatter: fun.statusTypeFormatter }, { field: 'advice', title: '内容', align: 'left', formatter: fun.msgFormatter }, { field: 'createDate', title: '时间', width: '20%', align: 'left', formatter: fun.msgTimeFormatter }, ] }); }, /*获取查询参数*/ getQueryParam: function () { var req = { sysCode: sysComm.sysCode, opId: fn.getUserId() }; var startCreateDate = $('#msg-daterange-btnsta').val(); var endCreateDate = $('#msg-daterange-btnend').val(); if (null != startCreateDate) { req.startCreateDate = new Date(startCreateDate.replace(new RegExp(/-/gm), "/")); } if (null != endCreateDate) { req.endCreateDate = new Date(endCreateDate.replace(new RegExp(/-/gm), "/")); } var adviceType = $('#msg-type').val(); if (null != adviceType && adviceType > 0) { req.adviceType = adviceType; } var readState = $('#msg-toptab').find('div.ITD-graynav-topbaractive').attr('data-msg'); if (null != readState && readState != 'all') { req.readState = readState; } return req; }, //通知类型 adviceTypeFormatter: function (value, row, index) { // 分已读和未读 未读添加类:fontBold 异常添加类:abnormalIco 正常添加类:normalIco var opStr = ''; if (row.readState == 10) { //未读 opStr = '
'; } else { //已读 opStr = '
' } if (value < 0) { opStr += '异常通知
'; } else { opStr += '待办通知
'; } return opStr; }, //内容 msgFormatter: function (value, row, index) { var msgStr = ''; // 分已读和未读 未读添加类:fontBold 异常添加类:abnormalIcox 正常添加类:abnormalIco if (row.readState == 10) { //未读 msgStr = '
' + value + '
'; } else { //已读 msgStr = '
' + value + '
'; } return msgStr; }, statusTypeFormatter:function(value, row, index){ var msgStr = ''; // 分已读和未读 未读添加类:fontBold 异常添加类:abnormalIcox 正常添加类:abnormalIco if (row.readState == 10) { //未读 msgStr = "
未读
"; } else { //已读 msgStr = "
已读
"; } return msgStr; }, //时间 msgTimeFormatter: function (value, row, index) { // 分已读和未读 未读添加类:fontBold 异常添加类:abnormalIcox 正常添加类:abnormalIco var msgStr = ''; // 分已读和未读 未读添加类:fontBold 异常添加类:abnormalIcox 正常添加类:abnormalIco if (row.readState == 10) { //未读 msgStr = "
" + fun.DatetimeFormatter(value) + "
"; } else { //已读 msgStr = "
" + fun.DatetimeFormatter(value) + "
"; } return msgStr; }, //时间 DatetimeFormatter: function (value, row, index) { if (value == null) { return ""; } else { return "" + DateUtils.long2String(value, 7) + ""; } }, }; fun.init(); //行点击事件 $('#msgcentertable').on('click-row.bs.table', function (e, row, element) { var ids = []; console.log() element.find('.fontBold ').removeClass('fontBold ') element.find('.abnormalIco ').removeClass('abnormalIco').addClass('noabnormalIco'); element.find('.noredystatus').text('已读'); ids.push(row.id); if (row.readState == 10) { var noReadNum = $('#bar-tzNum').text(); if(/^[0-9]+$/.test(noReadNum)) { noReadNum = parseInt(noReadNum)-1; $('#bar-tzNum').text(noReadNum); if(noReadNum == 0){ $('#bar-tzNum').addClass('display-none'); } } console.log(ids) console.log(row.readState) updateReadState(ids); } }); documentBindFunc.on('click', "#queryBtn", function () { fun.createTableData(); }) //切换 搜索部分 是否生效 documentBindFunc.on('click', "#msg-toptab div.ITD-graynav-topbar", function () { $(this).addClass('ITD-graynav-topbaractive').siblings('div').removeClass('ITD-graynav-topbaractive'); //切换完后,调用查询表格 fun.createTableData(); }); // 点击全部已读 documentBindFunc.on('click', "#readallBtn", function () { //消息通知 为0 $('#bar-tzNum').addClass('display-none').text('0'); //调用更新函数 updateReadState(); }); /** * 默认收费组列表 * 自定义table AJAX请求 * @param {Object} params */ function tableLoadRequest(params) { var req = fun.getQueryParam(); //设置请求参数 var pageNum = (params.data.offset / params.data.limit) + 1; //条件查询 req.baseRequest = { pageNum: pageNum, pageSize: params.data.limit }; req.sysCode = sysComm.sysCode; var opt = { method: 'post', url: dataUrl.util.querySysOpAdviceForPage(), data: JSON.stringify(req), contentType: 'application/json; charset=utf-8', dataType: 'json', success: function (res) { if (res.code == '8888') { params.success(res.data); $("[data-toggle='tooltip']").tooltip({ delay: { show: 500, hide: 100 }, }); } } }; sysAjax(opt); } //更新已读消息 function updateReadState(ids) { var req = fun.getQueryParam(); req.readState = 20; if (undefined != ids && ids.length > 0) { req.ids = ids; } var opt = { method: 'post', url: dataUrl.util.updateOpAdviceReadState(), data: JSON.stringify(req), contentType: 'application/json; charset=utf-8', dataType: 'json', success: function (res) { if (res.code == '8888') { // fun.createTableData(); } } }; sysAjax(opt); }