"use strict"; cc._RF.push(module, 'a712ebQpLNBfIaH5FFoxrI+', 'invitecode_model'); // Scripts/mod/invitecode/invitecode_model.js "use strict"; function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } // -------------------------------------------------------------------- // @author: xxx@syg.com(必填, 创建模块的人员) // @description: // 这里填写详细说明,主要填写该模块的功能简要 //
Create: 2019-04-27 17:52:15 // -------------------------------------------------------------------- var InvitecodeModel = cc.Class({ "extends": BaseClass, ctor: function ctor() {}, properties: {}, initConfig: function initConfig() { this.teskData = {}; this.friend_data = {}; this.friend_chat_data = {}; }, setInviteCode: function setInviteCode(code) { this.invite_code = code; }, getInviteCode: function getInviteCode() { return this.invite_code || "获取推荐码失败"; }, //是否可领取的数据 setInviteCodeTeskData: function setInviteCodeTeskData(data) { for (var i in data) { var v = data[i]; this.teskData[v.id] = v; } this.checkoutInviteRedPoint(); }, //数据更新 setUpdataInviteCodeTeskData: function setUpdataInviteCodeTeskData(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: function checkoutInviteRedPoint() { var red_point = false; if (this.teskData) { for (var i in this.teskData) { var 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 getInviteCodeFinishData(id) { if (this.teskData && this.teskData[id]) { return this.teskData[id]; } return {}; }, //配置表任务 getInviteCodeTeskData: function getInviteCodeTeskData() { 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 setSortItem(data_list) { var _tempsort; var tempsort = (_tempsort = {}, _defineProperty(_tempsort, 0, 2), _defineProperty(_tempsort, 1, 1), _defineProperty(_tempsort, 2, 3), _tempsort); var sortFunc = function sortFunc(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 setFriendChatData() { 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 addFriendChatData(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 getFriendChatData(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 setAlreadyFriendData(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 getAlreadyFriendData() { 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 setUpdataAlreadyFriendData(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 getFirendNum() { var num = this.getAlreadyFriendData(); return num.length || 0; }, inviteRedPoint: function inviteRedPoint() { if (this.invite_redpoint) { return this.invite_redpoint; } return false; } }); cc._RF.pop();