// -------------------------------------------------------------------- // @author: xxx@syg.com(必填, 创建模块的人员) // @description: // 这里填写详细说明,主要填写该模块的功能简要 //
Create: 2019-04-27 17:52:15 // -------------------------------------------------------------------- var InvitecodeModel = cc.Class({ extends: BaseClass, ctor: function () { }, properties: { }, initConfig: function () { this.teskData = {} this.friend_data = {} this.friend_chat_data = {} }, setInviteCode: function (code) { this.invite_code = code; }, getInviteCode: function () { return this.invite_code || "获取推荐码失败" }, //是否可领取的数据 setInviteCodeTeskData: function (data) { for (var i in data) { var v = data[i]; this.teskData[v.id] = v; } this.checkoutInviteRedPoint() }, //数据更新 setUpdataInviteCodeTeskData: function (data) { if (this.teskData && this.teskData[data.id]) { var tab = {}; tab.id = data.id; tab.had = data.had; tab.num = data.num; this.teskData[data.id] = tab; } this.checkoutInviteRedPoint() }, checkoutInviteRedPoint(){ let red_point = false if(this.teskData){ for(let i in this.teskData){ let v = this.teskData[i] if(v.num > v.had){ red_point = true break } } } this.invite_redpoint = red_point; var WelfareConst = require("welfare_const"); require("welfare_controller").getInstance().setWelfareStatus(WelfareConst.WelfareIcon.invicode, red_point) }, getInviteCodeFinishData: function (id) { if (this.teskData && this.teskData[id]) { return this.teskData[id]; } return {} }, //配置表任务 getInviteCodeTeskData: function () { var list = []; for (var i in Config.invite_code_data.data_tesk_list) { var v = Config.invite_code_data.data_tesk_list[i]; v.status = 0;//未完成 if (this.teskData[v.id] != null) { if (this.teskData[v.id].had >= v.num) { v.status = 2;//完成 } else { v.status = 1;//领取 } } list.push(v) } this.setSortItem(list); return list }, setSortItem: function (data_list) { var tempsort = { [0]: 2, [1]: 1, [2]: 3 } var sortFunc = function (objA, objB) { if (objA.status != objB.status) { if (tempsort[objA.status] && tempsort[objB.status]) { return tempsort[objA.status] - tempsort[objB.status]; } else { return 1 } } else { return objA.id - objB.id } } data_list.sort(sortFunc); }, //获取个人信息,私聊用到 setFriendChatData: function () { if (this.friend_data) { for (var i in this.friend_data) { var v = this.friend_data[i]; var key = Utils.getNorKey(v.rid, v.srv_id); this.friend_chat_data[key] = v; } } }, addFriendChatData: function (data) { if (!data || Utils.next(data) == null) return var key = Utils.getNorKey(data.rid, data.srv_id); if (this.friend_chat_data[key] == null) { this.friend_chat_data[key] = data; } }, getFriendChatData: function (rid, srv_id) { if (this.friend_chat_data) { var key = Utils.getNorKey(rid, srv_id); return this.friend_chat_data[key] || null } return null }, //已邀请好友 setAlreadyFriendData: function (data) { for (var i in data) { var v = data[i]; var key = Utils.getNorKey(v.rid, v.srv_id); this.friend_data[key] = v; } this.setFriendChatData(); }, getAlreadyFriendData: function () { if (!this.friend_data || Utils.next(this.friend_data) == null) return [] var list = []; for (var i in this.friend_data) { list.push(this.friend_data[i]) } return list }, setUpdataAlreadyFriendData: function (data) { if (!this.friend_data || !data) return for (var i in this.friend_data) { var v = this.friend_data[i]; var key = Utils.getNorKey(v.rid, v.srv_id); this.friend_data[key] = v; } var key = Utils.getNorKey(data.rid, data.srv_id); this.friend_data[key] = data; this.setFriendChatData(); }, //获取邀请好友个数 getFirendNum: function () { var num = this.getAlreadyFriendData(); return num.length || 0 }, inviteRedPoint(){ if(this.invite_redpoint){ return this.invite_redpoint } return false }, });