| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- import { _decorator, Component, Node, Label } from 'cc';
- import { Data } from '../core/data/Data';
- import { DataSystem } from '../core/data/DataSystem';
- import { Http, HttpResponseCode } from '../core/net/Http';
- import { WindowSystem } from '../core/ui/window/WindowSystem';
- import { platform } from '../data/jsb/platform';
- import { UserData } from '../data/UserData';
- import { RedPointData } from '../main/RedPointData';
- import { ReportThinking } from '../ReportThinking';
- import { GodTowerData } from './GodTowerData';
- const { ccclass, property, requireComponent } = _decorator;
- @ccclass('GodTower')
- @requireComponent(Http)
- export class GodTower extends Component {
- @property({ type: [Node], tooltip: "好友子节组" })
- roleGroup: Node[] = [];
- @property({ type: Label, tooltip: "贡献文本" })
- contributionLabel: Label;
- @property({ type: Label, tooltip: "可提现文本" })
- cashLabel: Label;
- private userData: UserData;
- private infoData: GodTowerData;
- async start() {
- this.userData = DataSystem.getData(UserData);
- this.infoData = DataSystem.getData(GodTowerData);
- let result = await this.getComponent(Http).send("/api/fission/GetFission");
- if (result && result.code == HttpResponseCode.Success) {
- this.infoData.parentUin = result.data.memberDatas.parentUin;
- this.infoData.parentAvatar = result.data.memberDatas.parentAvatar;
- this.infoData.parentNickname = result.data.memberDatas.parentNickname;
- for (let i = 1; i < 6; i++) {
- this.infoData[`g${i}Members`] = result.data.memberDatas[`g${i}Members`];
- }
- }
- else {
- WindowSystem.showTips('获取神台数据失败');
- }
- this.setContributino();
- }
- update() {
- DataSystem.watch(this.userData, 'contribution') && this.setContributino();
- }
- private setContributino() {
- this.contributionLabel.string = this.userData.contribution + '';
- this.cashLabel.string = '约' + (this.userData.contribution / 10000).toFixed(3) + '元';
- DataSystem.getData(RedPointData).checkFission = this.getAllRevenueAmount();
- }
- /**一键领取 */
- public async onGetButton() {
- if (this.getAllRevenueAmount()) {
- let result = await this.getComponent(Http).send("/api/fission/ReceiveFission", { receiveUserID: 0 });
- if (result && result.code == HttpResponseCode.Success) {
- ReportThinking.invite_get(this.userData.contribution + result.data.addTotalContribution);
- this.userData.contribution += result.data.addTotalContribution;
- WindowSystem.showTips('贡献领取成功');
- this.clearRevenue();
- }
- } else {
- WindowSystem.showTips("当前没有贡献可领取!");
- }
- }
- //邀请
- public async onInvite() {
- let result = await this.getComponent(Http).send("/api/app/share", {});
- if (result && result.code == HttpResponseCode.Success) {
- ReportThinking.invite();
- platform.wxShare(result.data.url, result.data.title, result.data.descroption);
- } else {
- WindowSystem.showTips("分享信息获取失败,请稍后再试");
- }
- }
- /**判断当前是否可领取贡献 红点用*/
- public getAllRevenueAmount() {
- if (this.infoData) {
- for (let i = 1; i < 6; i++) {
- let members = this.infoData[`g${i}Members`];
- for (let j = 0; j < members.length; j++) {
- if (members[j].revenueAmount > 0) {
- return true;
- }
- }
- }
- }
- return false;
- }
- /**一键领取贡献更新本地贡献数据 */
- public clearRevenue() {
- for (let i = 1; i < 6; i++) {
- let members = this.infoData[`g${i}Members`];
- for (let j = 0; j < members.length; j++) {
- if (members[j].revenueAmount) {
- members[j].revenueAmount = 0;
- }
- }
- this.infoData[`g${i}Members`] = members;
- }
- }
- }
|