123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242 |
- ;
- var helpSuggestion = new Vue({
- el: "#dashboard",
- mixins: [noticeMixin,cmSysVitaMixins],
- data: {
- btnLoading: false,
- isRequset:true,
- mssageTabBarIndex:0,
- mssageTabBar: [
- {messageType: '',text: '全部消息',bages:0},
- {messageType: 1,text: '交易物流',bages:0},
- {messageType: 2,text: '账户通知',bages:0},
- {messageType: 3,text: '服务通知',bages:0},
- {messageType: 4,text: '优惠促销',bages:0},
- ],
- allCount:0,
- listQuery: {
- source: 1,
- commonId: 0,
- messageType: '',
- pageNum: 1,
- pageSize: 10
- },
- noMore:false,
- listRecord: 0,
- pageInput: '1',
- degree:'',
- isCheckedAll:false,
- messagesList:[],//消息列表
- check:false,
- checklist:[],
- msgId:'',
- },
- filters: {
- NumBadge: function (n) {//处理
- var num = '';
- if (n > 100) {
- num = 99
- } else {
- num = n;
- }
- return num;
- }
- },
- computed: {
- pageTotal: function () {
- var total = Math.ceil(this.listRecord / this.listQuery.pageSize);
- return total > 0 ? total : 1;
- },
- showPageBtn: function () {
- var total = Math.ceil(this.listRecord / this.listQuery.pageSize);
- total = total > 0 ? total : 1;
- var index = this.listQuery.pageNum, arr = [];
- if (total <= 6) {
- for (var i = 1; i <= total; i++) {
- arr.push(i);
- }
- return arr;
- }
- if (index <= 3) return [1, 2, 3, 4, 5, 0, total];
- if (index >= total - 2) return [1, 0, total - 4, total - 3, total - 2, total - 1, total];
- return [1, 0, index - 2, index - 1, index, index + 1, index + 2, 0, total];
- }
- },
- methods: {
- toPagination: function (pageNum) {//点击切换分页
- if (pageNum <= this.pageTotal) {
- this.listQuery.pageNum = pageNum;
- this. getAuthClubMessageList();
- }
- },
- checkNum: function () {//输入跳转分页
- if (this.pageInput > this.pageTotal) {
- this.pageInput = this.pageTotal;
- } else if (this.pageInput < 1) {
- this.pageInput = 1;
- }
- },
- changeTabsFn:function(index,messageType){//点击Tab切换消息通知
- this.mssageTabBarIndex = index;
- this.listQuery.messageType = messageType;
- this.listQuery.pageNum = 1;
- this.messagesList = [];
- this. getAuthClubMessageList();
- },
- getAuthClubMessageCount:function(){//查询tabs数量
- var _self = this;
- UserApi.getAuthClubMessageCount({commonId:_self.listQuery.commonId},function (response) {
- var data = response.data;
- _self.mssageTabBar[0].bages = _self.allCount = data.count;
- _self.mssageTabBar[1].bages = data.tradeCount;
- _self.mssageTabBar[2].bages = data.account;
- _self.mssageTabBar[3].bages = data.notificationCount;
- _self.mssageTabBar[4].bages = data.promotionCount;
- })
- },
- getAuthClubMessageList:function(){
- var _self = this;
- UserApi.getAuthClubMessageList(_self.listQuery,function (response) {
- if(response.code == 0){
- _self.isRequset = false;
- _self.isCheckedAll = false;
- var data = response.data;
- if (data.list.length>0){
- if(isPC){
- _self.messagesList = data.list.map(function (el) {
- el.check = false
- return el;
- });
- }else{
- var list = data.list.map(function (el) {
- el.check = false
- return el;
- });
- _self.messagesList = _self.messagesList.concat(list);
- }
- _self.listRecord = data.total;
- _self.requestFlag = true;
- }else {
- _self.requestFlag = false;
- _self.listRecord = data.total;
- }
- }else{
- CAIMEI.Alert(response.msg, '确定', false);
- _self.requestFlag = false;
- }
- })
- },
- checkedContains(arr, val) {// 校验
- return arr.some(item => item === val)
- },
- checkedItemFn:function(item){ //单选
- var _self = this;
- if(event.target.checked){
- if(!_self.checkedContains(_self.checklist,item.id)){
- _self.checklist.push(item.id);
- }
- }else {
- _self.checklist.splice(_self.checklist.indexOf(item.id), 1);
- }
- _self.msgId = _self.checklist.toString()+','
- if(_self.checklist.length==_self.messagesList.length){
- _self.isCheckedAll=true;
- }else {
- _self.isCheckedAll=false;
- }
- },
- checkedAllFn: function () { //全選
- var _self = this;
- _self.isCheckedAll = !_self.isCheckedAll;
- if (_self.isCheckedAll) {
- _self.checklist = [];
- _self.messagesList.forEach(function (item) {
- item.check = true;
- _self.checklist.push(item.id);
- _self.msgId = _self.checklist.toString()+','
- })
- }else{
- _self.messagesList.forEach(function(item){
- item.check = false;
- });
- _self.checklist = [];
- _self.msgId = ''
- }
- },
- deleteMessageFn: function(){//删除消息
- var _this =this;
- if(this.allCount === 0){
- CAIMEI.dialog('暂无消息');
- }else if(_this.checklist.length==0){
- CAIMEI.dialog('请勾选未读消息');
- }else{
- UserApi.authDeleteMessage({id:_this.msgId},function (res) {
- if (res.code==0){
- CAIMEI.dialog('刪除成功');
- setTimeout(function (){
- _this.getAuthClubMessageList();
- },500)
- }else {
- CAIMEI.Alert(res.msg, '确定', false);
- }
- })
- }
- },
- signMessageFn: function(){//标记为已读
- var _this =this;
- console.log(_this.checklist);
- console.log(_this.msgId);
- if(this.allCount === 0){
- CAIMEI.dialog('暂无未读消息');
- }else if(_this.checklist.length==0){
- CAIMEI.dialog('请勾选未读消息');
- }else {
- UserApi.authUpdateRead({userType:1,Id:_this.msgId},function (res) {
- if(res.code==0){
- CAIMEI.dialog('标记已读成功');
- setTimeout(function (){
- _this.getAuthClubMessageCount();
- _this.getAuthClubMessageList();
- },500)
- }else {
- CAIMEI.Alert(res.msg, '确定', false);
- }
- })
- }
- }
- },
- mounted: function () {
- var _self=this;
- if(globalUserData){
- this.listQuery.commonId = globalUserData.clubId;
- this.getAuthClubMessageCount()
- this.getAuthClubMessageList();
- }
- if(!isPC){
- $('footer').addClass("noneImportant");
- //移动端上垃加载更多
- $(window).on('scroll', function(){
- var scrollTop = $(this).scrollTop();
- var scrollHeight = $(document).height();
- var windowHeight = window.innerHeight;
- if (scrollTop + windowHeight >= scrollHeight) {
- //此处是滚动条到底部时候触发的事件,在这里写要加载的数据,或者是拉动滚动条的操作
- var totalPage = Math.ceil(_self.listRecord / _self.listQuery.pageSize)?Math.ceil(_self.listRecord / _self.listQuery.pageSize):1;
- var next = _self.listQuery.pageNum+1;
- if(next <= totalPage){
- if (_self.requestFlag){
- _self.listQuery.pageNum = next;
- // 获取列表数据
- _self.getAuthClubMessageList();
- }
- _self.requestFlag = false;
- }else{
- //到底了
- _self.noMore = true;
- $('footer').removeClass("noneImportant");
- }
- }
- });
- }
- }
- });
|