Authored by wangtao

1443 B1,通知查询功能优化

@@ -96,6 +96,7 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'laydate' @@ -96,6 +96,7 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'laydate'
96 conditions.startTime = $('#condition-template-startTime').val().trim(); 96 conditions.startTime = $('#condition-template-startTime').val().trim();
97 conditions.endTime = $('#condition-template-endTime').val().trim(); 97 conditions.endTime = $('#condition-template-endTime').val().trim();
98 noticeTable = table.render({ 98 noticeTable = table.render({
  99 + id:'systemNoticeNoticeTable',
99 elem: '#notice-table', 100 elem: '#notice-table',
100 url: domainName + '/api-web/manage/noticetemp/page?access_token=' + accessToken, 101 url: domainName + '/api-web/manage/noticetemp/page?access_token=' + accessToken,
101 where: conditions, 102 where: conditions,
@@ -142,19 +143,17 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'laydate' @@ -142,19 +143,17 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'laydate'
142 // } 143 // }
143 // } 144 // }
144 , { 145 , {
145 - field: 'subPersonSum', title: '订阅人数', align: 'center', sort: true, 146 + field: 'subPersonSum', title: '订阅用户', align: 'center',
146 templet: function (d) { 147 templet: function (d) {
147 if (!d.noticeTempUserList) { 148 if (!d.noticeTempUserList) {
148 return ''; 149 return '';
149 } else { 150 } else {
150 var userList = []; 151 var userList = [];
151 - var userName = ''  
152 $.each(d.noticeTempUserList,function (i,v) { 152 $.each(d.noticeTempUserList,function (i,v) {
153 userList.push(v.nickname); 153 userList.push(v.nickname);
154 }) 154 })
155 - userName = userList.toString();  
156 // return '<span data-subid="' + d.subId + '" class="layui-table-link link-notice-temp-view-user" style="width: 100%;">' + userName + '</span>'; 155 // return '<span data-subid="' + d.subId + '" class="layui-table-link link-notice-temp-view-user" style="width: 100%;">' + userName + '</span>';
157 - return '<span>' + userName + '</span>'; 156 + return userList.join(",");
158 } 157 }
159 } 158 }
160 }, /*{ 159 }, /*{
@@ -166,9 +165,9 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'laydate' @@ -166,9 +165,9 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'laydate'
166 } 165 }
167 } 166 }
168 },*/ { 167 },*/ {
169 - field: 'frequency', title: '通知频率', align: 'center' 168 + field: 'frequency', title: '通知频率', align: 'center',sort:true
170 }, { 169 }, {
171 - field: 'tempStatus', title: '状态', align: 'center', 170 + field: 'tempStatus', title: '状态', align: 'center',sort: true,
172 templet: function (d) { 171 templet: function (d) {
173 var checked = ''; 172 var checked = '';
174 if(d.enable == '1'){ //默认 173 if(d.enable == '1'){ //默认
@@ -410,6 +409,22 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'laydate' @@ -410,6 +409,22 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'laydate'
410 // }); 409 // });
411 } 410 }
412 }); 411 });
  412 +
  413 +
  414 + //触发排序事件
  415 + table.on('sort(notice-table)', function(obj){
  416 + var type = !obj.type ? 'desc' : obj.type;
  417 +
  418 + conditions.orderKey = ` ${obj.field} ${type}`
  419 + //尽管我们的 table 自带排序功能,但并没有请求服务端。
  420 + //有些时候,你可能需要根据当前排序的字段,重新向服务端发送请求,从而实现服务端排序,如:
  421 + table.reload('systemNoticeNoticeTable', {
  422 + initSort: obj //记录初始排序,如果不设的话,将无法标记表头的排序状态。
  423 + ,where: conditions
  424 + });
  425 +
  426 + //layer.msg('服务端排序。order by '+ obj.field + ' ' + obj.type);
  427 + });
413 } 428 }
414 429
415 //发送通知弹窗 430 //发送通知弹窗
@@ -68,30 +68,23 @@ @@ -68,30 +68,23 @@
68 </div> 68 </div>
69 </div> 69 </div>
70 <div class="layui-inline"> 70 <div class="layui-inline">
71 - <!-- <button id="noticeSearchQueryBtn" type="button" class="layui-btn layui-btn-normal" ><i 71 + <div class="layui-btn-group">
  72 + <button type="button" class="layui-btn layui-btn-primary" data-period="all">全部</button>
  73 + <button type="button" class="layui-btn active" data-period="today">今天</button>
  74 + <button type="button" class="layui-btn layui-btn-primary" data-period="week">本周</button>
  75 + <button type="button" class="layui-btn layui-btn-primary" data-period="month">本月</button>
  76 + <button type="button" class="layui-btn layui-btn-primary" data-period="custom" id="dataPeriodCustom">自定义</button>
  77 + </div>
  78 + </div>
  79 + <div class="layui-inline">
  80 + <button id="noticeSearchQueryBtn" type="button" class="layui-btn layui-btn-normal" ><i
72 class="layui-icon layui-icon-search"></i>查询 81 class="layui-icon layui-icon-search"></i>查询
73 - </button>--> 82 + </button>
74 </div> 83 </div>
75 </div> 84 </div>
76 </form> 85 </form>
77 86
78 </div> 87 </div>
79 - <div class="search_button_group">  
80 - <div class="quick_search" id="quick_search">  
81 - <span>ip</span>  
82 - <span>ip1</span>  
83 - </div>  
84 -  
85 - <div class="layui-card-header card_header_search_button" >  
86 - <div class="layui-btn-group time-group" id="noticeCount_time_button_id" style="float: right;">  
87 - <button type="button" class="layui-btn layui-btn-primary layui-btn-sm" data-period="all">全部</button>  
88 - <button type="button" class="layui-btn layui-btn-primary layui-btn-sm active" data-period="today">今天</button>  
89 - <button type="button" class="layui-btn layui-btn-primary layui-btn-sm" data-period="week">本周</button>  
90 - <button type="button" class="layui-btn layui-btn-primary layui-btn-sm" data-period="month">本月</button>  
91 - <button type="button" class="layui-btn layui-btn-primary layui-btn-sm" data-period="custom">自定义</button>  
92 - </div>  
93 - </div>  
94 - </div>  
95 </div> 88 </div>
96 <div style="display: flex" class="layui-card-echart"> 89 <div style="display: flex" class="layui-card-echart">
97 <div style="flex-grow: 3;width: 66%!important;" > 90 <div style="flex-grow: 3;width: 66%!important;" >
@@ -383,6 +383,7 @@ @@ -383,6 +383,7 @@
383 ,trigger: 'focus' //呼出控件的事件 383 ,trigger: 'focus' //呼出控件的事件
384 ,show: false //是否直接显示,如果设置true,则默认直接显示控件 384 ,show: false //是否直接显示,如果设置true,则默认直接显示控件
385 ,showBottom: true //是否显示底部栏 385 ,showBottom: true //是否显示底部栏
  386 + ,isPreview: true //是否显示值预览
386 ,btns: ['clear', 'now', 'confirm'] //右下角显示的按钮,会按照数组顺序排列 387 ,btns: ['clear', 'now', 'confirm'] //右下角显示的按钮,会按照数组顺序排列
387 ,lang: 'cn' //语言,只支持cn/en,即中文和英文 388 ,lang: 'cn' //语言,只支持cn/en,即中文和英文
388 ,theme: 'default' //主题 389 ,theme: 'default' //主题
@@ -843,7 +844,7 @@ @@ -843,7 +844,7 @@
843 844
844 ,elem = that.bindElem || options.elem[0] 845 ,elem = that.bindElem || options.elem[0]
845 ,valType = that.isInput(elem) ? 'val' : 'html' 846 ,valType = that.isInput(elem) ? 'val' : 'html'
846 - ,value = that.isInput(elem) ? elem.value : (options.position === 'static' ? '' : elem.innerHTML) 847 + ,value = that.isInput(elem) ? elem.value : (options.position === 'static' ? '' : '')
847 848
848 //校验日期有效数字 849 //校验日期有效数字
849 ,checkValid = function(dateTime){ 850 ,checkValid = function(dateTime){
@@ -1411,6 +1412,9 @@ @@ -1411,6 +1412,9 @@
1411 ,elem = that.bindElem || options.elem[0] 1412 ,elem = that.bindElem || options.elem[0]
1412 ,valType = that.isInput(elem) ? 'val' : 'html' 1413 ,valType = that.isInput(elem) ? 'val' : 'html'
1413 1414
  1415 + if(!options.isPreview){
  1416 + return this;
  1417 + }
1414 options.position === 'static' || lay(elem)[valType](value || ''); 1418 options.position === 'static' || lay(elem)[valType](value || '');
1415 return this; 1419 return this;
1416 }; 1420 };
@@ -1867,4 +1871,4 @@ @@ -1867,4 +1871,4 @@
1867 }() 1871 }()
1868 ); 1872 );
1869 1873
1870 -}();  
  1874 +}();