"use strict"; cc._RF.push(module, '59603epoM5B0qWPofuy3wHr', 'welfare_model'); // Scripts/mod/welfare/welfare_model.js "use strict"; // -------------------------------------------------------------------- // @author: xxx@syg.com(必填, 创建模块的人员) // @description: // 这里填写详细说明,主要填写该模块的功能简要 //
Create: 2018-12-19 10:57:29 // -------------------------------------------------------------------- var RoleController = require("role_controller"); var WelfareConst = require("welfare_const"); var PartnersummonController = require("partnersummon_controller"); var ActionController = require("action_controller"); var VipController = require("vip_controller"); var WelfareModel = cc.Class({ "extends": BaseClass, ctor: function ctor() {}, initConfig: function initConfig() { this.daily_award_status = 1; //每日礼状态 }, //保存下月卡信息 setYueka: function setYueka(data) { this.yueka_data = data; }, getYueka: function getYueka() { return this.yueka_data; }, //保存下今日充值次数 setRechargeCount: function setRechargeCount(count) { this.recharge_num = count; }, checkWelfareSubIsOpen: function checkWelfareSubIsOpen(id) { var config = gdata("holiday_client_data", "data_info", [id]); if (config) { var role_vo = RoleController.getInstance().getRoleVo(); if (IS_SHOW_CHARGE || IS_SHOW_CHARGE == false && config.is_verifyios == 1) { if (role_vo.lev >= config.open_lev) { return true; } } } return false; }, //判断月卡状态 getYuekaStatus: function getYuekaStatus() { var can_charge = true; if (!this.checkWelfareSubIsOpen(WelfareConst.WelfareIcon.yueka)) { can_charge = false; } else { if (this.yueka_data == null) { can_charge = true; } else { var cur_time = gcore.SmartSocket.getTime(); if (this.yueka_data.card1_end_time && this.yueka_data.card2_end_time) { can_charge = this.yueka_data.card1_end_time < cur_time || this.yueka_data.card2_end_time < cur_time; } } } return can_charge; }, getRechargeCount: function getRechargeCount() { return this.recharge_num || 0; }, /*[[ {"钻石召唤", 0}, --常驻类型 {"月耀召唤", 200}, {"神圣召唤", 300}, {"天辉召唤", 400} ]]*/ //逆向排序 reverseTable: function reverseTable(tab) { // var tmp = {}; // for (var i = 1; i <= Utils.getArrLen(tab); i++) { // var key = Utils.getArrLen(tab); // // tmp[i] = // } return tab.reverse(); }, getPartnerSummonData: function getPartnerSummonData() { var config = Config.recruit_award_data.data_huoli; var list1 = {}; var list2 = {}; var list3 = {}; var list4 = {}; //本地数据分类 for (var i in config) { var v = config[i]; if (v.type == 0) { list1.push(v); } else if (v.type == 200) { list2.push(v); } else if (v.type == 300) { list3.push(v); } else if (v.type == 400) { list4.push(v); } } //获取开启的卡库 var list = PartnersummonController.getInstance().getModel().getOpenSummonData(); //开启的 var data = []; for (var i in list) { var v = list[i]; if (v == 200) { for (var k in list2) { data.push(list2[k]); } } else if (v == 300) { for (var k in list3) { data.push(list3[k]); } } else if (v == 400) { for (var k in list4) { data.push(list4[k]); } } } data = this.reverseTable(data); for (var i in data) { list1.push(data[i]); } list1 = this.reverseTable(list1); return list1; }, //接收服务端的数据 返回: 服务端的数据,本地配置表的数据 getServeData: function getServeData(data1) { var list = []; var data2 = this.getPartnerSummonData(); //抽取出开启的状态 var open_data = []; for (var i in data1) { var v = data1[i]; for (var k in data2) { var m = data2[k]; if (v.id == m.id) { open_data.push(v); } } } var model = ActionController.getInstance().getModel(); open_data = model.getReawardSortList(open_data); for (var i in open_data) { var v = open_data[i]; for (var k in data2) { var val = data2[k]; if (v.id == val.id) { list.push(val); } } } this.setPartnerWelfarCallRedPoint(open_data); return { open_data: open_data, list: list }; }, setPartnerWelfarCallRedPoint: function setPartnerWelfarCallRedPoint(data) { this.callPartnerData = data; }, getPartnerWelfarCallRedPoint: function getPartnerWelfarCallRedPoint() { if (this.callPartnerData && Utils.next(this.callPartnerData) != null) { var bool = false; for (var i in this.callPartnerData) { var v = this.callPartnerData[i]; if (v.status == 1) { bool = true; break; } } return bool; } }, //召唤界面是否显示入口 setPartnerSunmonWelfarData: function setPartnerSunmonWelfarData(bool) { this.summonWelfarBool = bool; }, getPartnerSunmonWelfarData: function getPartnerSunmonWelfarData() { var bool = false; if (this.summonWelfarBool == 1) { bool = true; } return bool; }, //问卷调查 setQuestOpenData: function setQuestOpenData(data) { this.questOpenData = data; }, getQuestOpenData: function getQuestOpenData() { return this.questOpenData; }, /*周、月循环礼包 --[[ {"周循环", 1} {"月循环", 2} ]]*/ setWeekMonthSortData: function setWeekMonthSortData() { var data = Config.misc_data.data_cycle_gift_info; this.weekGiftData = []; this.monthGiftData = []; for (var i in data) { var v = data[i]; if (v) { for (var k in v) { var obj = v[k]; if (obj.gift_type == 1) { this.weekGiftData.push(obj); } else if (obj.gift_type == 2) { this.monthGiftData.push(obj); } } } } this.weekGiftData.sort(Utils.tableLowerSorter(["charge_id"])); this.monthGiftData.sort(Utils.tableLowerSorter(["charge_id"])); }, getWeekMonthSortData: function getWeekMonthSortData(index) { if (!this.weekGiftData || !this.monthGiftData) return; if (index == 1) { return this.weekGiftData || []; } else if (index == 2) { return this.monthGiftData || []; } }, //每日礼领取状态 setDailyAwardStatus: function setDailyAwardStatus(status) { this.daily_award_status = status; if (status == 0) { VipController.getInstance().setTipsVIPStstus(VIPREDPOINT.DAILY_AWARD, true); } else { VipController.getInstance().setTipsVIPStstus(VIPREDPOINT.DAILY_AWARD, false); } }, getDailyAwardStatus: function getDailyAwardStatus() { return this.daily_award_status; }, //shrh------ setShareAward: function setShareAward(data) { this.share_award = data; }, getShareAward: function getShareAward() { return this.share_award || []; }, setShareAwardStatus: function setShareAwardStatus(status) { this.share_award_status = status; }, getShareAwardStatus: function getShareAwardStatus() { return this.share_award_status || 0; }, setSubscriptionAward: function setSubscriptionAward(data) { this.subscription_award = data; }, //设置关注奖励领取状态,1是领取了 setSubscriptionAwardStatus: function setSubscriptionAwardStatus(status) { this.subscription_award_status = status; }, getSubscriptionAwardStatus: function getSubscriptionAwardStatus() { return this.subscription_award_status || 0; }, getSubscriptionAward: function getSubscriptionAward() { return this.subscription_award || []; }, //shwx----- setCollectAward: function setCollectAward(data) { this.collect_award = data; }, getCollectAward: function getCollectAward() { return this.collect_award || []; }, setCollectAwardStatus: function setCollectAwardStatus(status) { this.collect_award_status = status; }, getCollectAwardStatus: function getCollectAwardStatus() { return this.collect_award_status || 0; } }); module.exports = WelfareModel; cc._RF.pop();