| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301 |
- // Learn TypeScript:
- // - https://docs.cocos.com/creator/manual/en/scripting/typescript.html
- // Learn Attribute:
- // - https://docs.cocos.com/creator/manual/en/scripting/reference/attributes.html
- // Learn life-cycle callbacks:
- // - https://docs.cocos.com/creator/manual/en/scripting/life-cycle-callbacks.html
- import PlayerConst from "../data/PlayerConst";
- import Util from "../util/Util";
- import PoolMgr, { NODEPOOLPREFABTYPE } from "../mgr/PoolMgr";
- import CashOutItem, { CASHOUTITEMSTATE } from "./uiItem/CashOutItem";
- import GameConst from "../data/GameConst";
- import EffectMgr from "../mgr/EffectMgr";
- import HttpMgr from "../mgr/HttpMgr";
- import GameMgr, { UI_NAME } from "../mgr/GameMgr";
- import DataMgr from "../mgr/DataMgr";
- import { EVENT_TYPE } from "../../game/data/GameData";
- const { ccclass, property } = cc._decorator;
- @ccclass
- export default class CashOutUI extends cc.Component {
- @property(cc.Node)
- node_rectBg: cc.Node = null;
- @property(cc.Node)
- node_top: cc.Node = null;
- @property(cc.Node)
- node_content: cc.Node = null;
- @property(cc.Node)
- node_backBtn: cc.Node = null;
- @property(cc.Node)
- node_cashOutRecordBtn: cc.Node = null;
- @property(cc.Node)
- node_cashOutItemList: cc.Node = null;
- @property(cc.Label)
- label_cashNum: cc.Label = null;
- @property(cc.Node)
- node_wxIcon: cc.Node = null;
- @property(cc.Label)
- label_nickName: cc.Label = null;
- @property(cc.Node)
- node_cashOutBtn: cc.Node = null;
- @property(cc.Label)
- label_cashOutTip: cc.Label = null;
- @property(cc.Node)
- node_noCashOutBtn: cc.Node = null;
- @property(cc.Label)
- label_noCashOutTip: cc.Label = null;
- @property(cc.Node)
- node_taskCashOut: cc.Node = null;
- @property(cc.RichText)
- richText_taskCashOutBtn: cc.RichText = null;
- @property(cc.Node)
- node_goToTaskBtn: cc.Node = null;
- public curSelectCashOutItem: CashOutItem = null;
- public color_gray: cc.Color = new cc.Color(174, 174, 174);
- public color_green: cc.Color = new cc.Color(174, 174, 174);
- // LIFE-CYCLE CALLBACKS:
- // onLoad () {}
- start() {
- this.adapt();
- this.initView();
- this.initEvent();
- }
- // update (dt) {}
- onDisable() {
- let node_playerInfoUI = mk.ui.getCurOnPanel("PlayerInfoUI");
- if (node_playerInfoUI) {
- // AdMgr.Inst.showNativeAd(4, true);
- }
-
- mk.event.remove(EVENT_TYPE.UPDATE_CashNum, this.initCashNum, this);
- }
- onEnable() {
- GameMgr.Inst.sendEvent(UI_NAME.CashOutUI, "进入提现界面");
- this.initCashNum();
- this.initCashOutItem();
- this.initNickName();
- this.initHead();
- }
- adapt() {
- let offset = 1334 * 0.5 - this.node_top.y;
- let gap = (cc.winSize.height - 1334) * 0.5
- // LogUtil.log("offset", offset);
- // this.node_top.y = cc.winSize.height * 0.5 - offset;
- this.node_top.y += gap;
- this.node_content.y += gap;
- this.node_rectBg.setContentSize(cc.winSize.width, cc.winSize.height);
- }
- initView() {
- this.initNickName();
- }
- initEvent() {
- this.node_backBtn.on(cc.Node.EventType.TOUCH_END, this.onClick, this);
- this.node_cashOutRecordBtn.on(cc.Node.EventType.TOUCH_END, this.onClick, this);
- this.node_cashOutBtn.on(cc.Node.EventType.TOUCH_END, this.onClick, this);
- if (!GameConst.isAuth) {
- mk.event.register(EVENT_TYPE.BACK_WxAuth, this.onWxAuthBack, this);
- }
- mk.event.register(EVENT_TYPE.UPDATE_CashNum, this.initCashNum, this);
- }
- onClick(event: cc.Event.EventTouch) {
- switch (event.currentTarget) {
- case this.node_backBtn:
- this.onClickBackBtn();
- break;
- case this.node_cashOutRecordBtn:
- this.onClickCashOutRecordBtn();
- break;
- case this.node_cashOutBtn:
- this.onClickCashOutBtn();
- break;
- }
- }
- /**初始化 */
- initCashNum() {
- // let num = Math.round((PlayerConst.cashNum * 100)) / 100;
- let num = Util.numberFixed(PlayerConst.cashNum, 2);
- this.label_cashNum.string = `¥ ${num}`;
- }
- /**初始化昵称 */
- initNickName() {
- this.label_nickName.string = Util.cutStr(PlayerConst.nickName, 12);
- this.label_nickName.node.active = true;
- this.node_wxIcon.x = this.label_nickName.node.x - this.label_nickName.node.width - 30;
- }
- /**初始化头像 */
- async initHead() {
- // let spr_wxIcon = this.node_wxIcon.getComponent(cc.Sprite);
- // LoaderUtil.loadHeadImg(this.node_wxIcon.getComponent(cc.Sprite), 42);
- // mk.loader.
- }
- /**初始化提现 */
- initCashOutItem() {
- if (this.node_cashOutItemList.childrenCount <= 0) {
- for (var i = 0; i < 5; i++) {
- let node_cashOutItem = PoolMgr.Inst.getPoolPrefab(NODEPOOLPREFABTYPE.CashOutItem);
- //LogUtil.log("node_cashOutItem", node_cashOutItem);
- let cashOutItem = node_cashOutItem.getComponent(CashOutItem);
- let cashOutItemState = this.getCashOutItemState(i);
- cashOutItem.init(i, cashOutItemState);
- this.node_cashOutItemList.addChild(node_cashOutItem);
- }
- }
- else {
- for (var i = 0; i < this.node_cashOutItemList.childrenCount; i++) {
- let node_cashOutItem = this.node_cashOutItemList.children[i];
- let cashOutItem = node_cashOutItem.getComponent(CashOutItem);
- let cashOutItemState = this.getCashOutItemState(i);
- cashOutItem.init(i, cashOutItemState);
- }
- }
- }
- /**获取提现状态
- * @param index 索引值
- */
- getCashOutItemState(index: number): CASHOUTITEMSTATE {
- let cashOutItemState = CASHOUTITEMSTATE.Normal;
- if (PlayerConst.clockInCashInfo) {
- let clockInCashInfo = PlayerConst.clockInCashInfo[index];
- if (clockInCashInfo) {
- if (clockInCashInfo.isWithdraw === 0) {
- cashOutItemState = CASHOUTITEMSTATE.Normal;
- }
- else if (clockInCashInfo.isWithdraw === 1) {
- cashOutItemState = CASHOUTITEMSTATE.CashOuted;
- }
- else {
- cashOutItemState = CASHOUTITEMSTATE.CashOuting
- }
- }
- }
- return cashOutItemState;
- }
- /**点击返回按钮 */
- onClickBackBtn() {
- GameMgr.Inst.sendEvent(UI_NAME.CashOutUI, "点击返回按钮");
- // AudioMgr.Inst.playEffect(AUDIO_CLIP_NAME.buttonClick);
- mk.audio.playEffect("ef_button_click");
-
- mk.ui.closePanel("CashOutUI");
- }
- /**点击提现记录按钮 */
- onClickCashOutRecordBtn() {
- GameMgr.Inst.sendEvent(UI_NAME.CashOutUI, "点击提现记录按钮");
- }
- onClickCashOutBtn() {
- GameMgr.Inst.sendEvent(UI_NAME.CashOutUI, "点击提现按钮");
- if (!GameConst.isAuth) {
- mk.ui.openPanel("game/prefab/uiPanel/GuideAuthUI")
- return;
- }
- if (!this.curSelectCashOutItem) {
- EffectMgr.Inst.addTip("请选择提现档次");
- return;
- }
- let day = this.curSelectCashOutItem.day;
- let cashNum = this.curSelectCashOutItem.cashOutNum;
- if (PlayerConst.clockInDay < day) {
- EffectMgr.Inst.addTip(`还需打卡${day - PlayerConst.clockInDay}天,可以提现哦`)
- }
- else {
- if (PlayerConst.cashNum < cashNum) {
- let leftNum = Math.round((cashNum - PlayerConst.cashNum) * 10) / 10;
- EffectMgr.Inst.addTip(`还需${leftNum}元零钱,可以提现哦`)
- }
- else {
- HttpMgr.Inst.cash(cashNum, 1).then(() => {
- HttpMgr.Inst.getClockInInfo();
- DataMgr.Inst.updateMoneyNum(-cashNum);
- EffectMgr.Inst.addTip("恭喜提现成功,等待到账");
- GameMgr.Inst.sendEvent(UI_NAME.CashOutUI, `${PlayerConst.clockInDay}打卡提现成功`);
- GameMgr.Inst.sendEventCp(UI_NAME.CashOutUI, `${PlayerConst.clockInDay}打卡提现成功`);
- //提现操作
- }).catch((err) => {
- // EffectMgr.Inst.addTip(`后台维护中,请稍后再试`)
- EffectMgr.Inst.addTip(err.errmsg);
- });
- }
- }
- }
- setCurSelectItemBtn(cashOutItem: CashOutItem) {
- if (this.curSelectCashOutItem) {
- this.curSelectCashOutItem.cancelSelect();
- }
- this.curSelectCashOutItem = cashOutItem;
- this.curSelectCashOutItem.select();
- switch (this.curSelectCashOutItem.cashOutItemState) {
- case CASHOUTITEMSTATE.Normal:
- this.node_cashOutBtn.active = true;
- this.node_noCashOutBtn.active = false;
- this.node_taskCashOut.active = false;
- break;
- case CASHOUTITEMSTATE.CashOuting:
- this.node_cashOutBtn.active = false;
- this.node_noCashOutBtn.active = true;
- this.node_taskCashOut.active = false;
- break;
- case CASHOUTITEMSTATE.CashOuted:
- this.node_cashOutBtn.active = false;
- this.node_noCashOutBtn.active = true;
- this.node_taskCashOut.active = false;
- break;
- }
- }
- //自定义事件---------------------------------------------------------------------
- /**微信授权返回 */
- onWxAuthBack() {
- console.log("CashOutUI 微信授权返回");
- this.initHead();
- this.initNickName();
- mk.console.log("PlayerConst.headImgUrl", PlayerConst.headImgUrl);
- mk.console.log("PlayerConst.nickName111", PlayerConst.nickName);
- mk.event.remove(EVENT_TYPE.BACK_WxAuth, this.onWxAuthBack, this);
- }
- }
|