Commit 3d6432b0 authored by 徐士卿's avatar 徐士卿

Merge branch 'master' of gitlab2.dui88.com:sparkprojects/kww_daydaygetcredits_250512

parents c7d8d6d3 4ca192df
...@@ -14,6 +14,8 @@ export default [ ...@@ -14,6 +14,8 @@ export default [
actEndTime: Date.now() + 1000000, actEndTime: Date.now() + 1000000,
currentTime: Date.now(), currentTime: Date.now(),
guideFlag: false, guideFlag: false,
creditsNum: 923,
expireDays: 7,
currentStoreNum: 923, currentStoreNum: 923,
storeLimitNum: 2222, storeLimitNum: 2222,
continueSignDays: 3, continueSignDays: 3,
......
import React, { ComponentType, Component } from "react"; import React, { ComponentType, Component } from "react";
import styles from "./ModalCtrl.module.less"; import styles from "./ModalCtrl.module.less";
// import PrizePanel from "@/panels/PrizePanel/PrizePanel.tsx"; import NewcomerPanel from "@/panels/NewcomerPanel/NewcomerPanel.tsx";
// import FailPanel from "@/panels/FailPanel/FailPanel.tsx"; import WedExpPanel from "@/panels/WedExpPanel/WedExpPanel.tsx";
import SignSucPanel from "@/panels/SignSucPanel/SignSucPanel.tsx";
import VideoPanel from "@/panels/VideoPanel/VideoPanel.tsx";
// 弹窗优先级配置Map,key为弹窗组件名(建议用组件.displayName或组件名字符串),value为优先级数值 // 弹窗优先级配置Map,key为弹窗组件名(建议用组件.displayName或组件名字符串),value为优先级数值
// 数值越大优先级越高,未配置的默认0 // 数值越大优先级越高,未配置的默认0
const modalPriorityMap = new Map<ComponentType<any>, number>([ const modalPriorityMap = new Map<ComponentType<any>, number>([
// [PrizePanel, 20], [NewcomerPanel, 20],
// [FailPanel, 15], [WedExpPanel, 15],
[SignSucPanel, 15],
[VideoPanel, 10],
]); ]);
interface ModalItem { interface ModalItem {
...@@ -50,7 +54,7 @@ export class ModalCtrl extends Component<{}, ModalCtrlState> { ...@@ -50,7 +54,7 @@ export class ModalCtrl extends Component<{}, ModalCtrlState> {
const modals = this.state.modals; const modals = this.state.modals;
modals.push({ key, Component, props, priority }) modals.push({ key, Component, props, priority })
modals.sort((a, b) => { modals.sort((a, b) => {
return (b.priority || 0) - (a.priority || 0); return (a.priority || 0) - (b.priority || 0);
}); });
this.setState({ modals }); this.setState({ modals });
......
...@@ -29,6 +29,8 @@ import { SvgaPlayer } from "@grace/svgaplayer"; ...@@ -29,6 +29,8 @@ import { SvgaPlayer } from "@grace/svgaplayer";
import lightSvga from "@/assets/svga/5光点飘散.svga"; import lightSvga from "@/assets/svga/5光点飘散.svga";
import API from "@/api"; import API from "@/api";
import VideoPanel from "@/panels/VideoPanel/VideoPanel.tsx"; import VideoPanel from "@/panels/VideoPanel/VideoPanel.tsx";
import ObtainPanel from "@/panels/ObtainPanel/ObtainPanel.tsx";
import NewcomerPanel from "@/panels/NewcomerPanel/NewcomerPanel.tsx";
@observer @observer
...@@ -53,7 +55,7 @@ class HomePage extends React.Component<any, any> { ...@@ -53,7 +55,7 @@ class HomePage extends React.Component<any, any> {
} }
render() { render() {
const { } = store.indexData const { creditsNum } = store.indexData
return <div className="homepage" ref={(el) => this.root = el}> return <div className="homepage" ref={(el) => this.root = el}>
<div className="homeRoot"> <div className="homeRoot">
...@@ -64,7 +66,7 @@ class HomePage extends React.Component<any, any> { ...@@ -64,7 +66,7 @@ class HomePage extends React.Component<any, any> {
<Sign/> <Sign/>
<Check/> <Check/>
<Button className="credits">1344691</Button> <Button className="credits">{creditsNum}</Button>
{/*<Button className="cash"><span>¥</span>32.88</Button>*/} {/*<Button className="cash"><span>¥</span>32.88</Button>*/}
<Button className="rule" onClick={this.clickRule} /> <Button className="rule" onClick={this.clickRule} />
......
...@@ -10,6 +10,7 @@ import { _asyncThrottle } from "@/utils/utils.ts"; ...@@ -10,6 +10,7 @@ import { _asyncThrottle } from "@/utils/utils.ts";
import { ModalCtrl } from "@/core/ctrls/ModalCtrl.tsx"; import { ModalCtrl } from "@/core/ctrls/ModalCtrl.tsx";
import WedExpPanel from "@/panels/WedExpPanel/WedExpPanel.tsx"; import WedExpPanel from "@/panels/WedExpPanel/WedExpPanel.tsx";
import SignSucPanel from "@/panels/SignSucPanel/SignSucPanel.tsx"; import SignSucPanel from "@/panels/SignSucPanel/SignSucPanel.tsx";
import NewcomerPanel from "@/panels/NewcomerPanel/NewcomerPanel.tsx";
@observer @observer
...@@ -29,6 +30,10 @@ class Sign extends React.Component<any, any> { ...@@ -29,6 +30,10 @@ class Sign extends React.Component<any, any> {
const { signCredits, extraCredits, boolLimit, multipleValue, url, taskId, newLuckCreditsNum } = data; const { signCredits, extraCredits, boolLimit, multipleValue, url, taskId, newLuckCreditsNum } = data;
if (newLuckCreditsNum) {
ModalCtrl.showModal(NewcomerPanel, { creditNum: newLuckCreditsNum, });
}
if (boolLimit) { if (boolLimit) {
// 周三限时奖励 // 周三限时奖励
ModalCtrl.showModal(WedExpPanel, data); ModalCtrl.showModal(WedExpPanel, data);
...@@ -39,14 +44,14 @@ class Sign extends React.Component<any, any> { ...@@ -39,14 +44,14 @@ class Sign extends React.Component<any, any> {
}); });
render() { render() {
const { signRecords, continueSignDays, todaySignFlag } = store.indexData; const { signRecords, continueSignDays, todaySignFlag, expireDays } = store.indexData;
const signedCount = signRecords?.filter((item) => item.boolSign).length || 0; const signedCount = signRecords?.filter((item) => item.boolSign).length || 0;
const signProgress = Math.max(signedCount - 1, 0); const signProgress = Math.max(signedCount - 1, 0);
return <div className={styles.sign}> return <div className={styles.sign}>
<div className={styles.title}>已连续签到<span>{continueSignDays}</span></div> <div className={styles.title}>已连续签到<span>{continueSignDays}</span></div>
<div className={styles.tip}>断签7天后积分将清零</div> <div className={styles.tip}>断签{expireDays}天后积分将清零</div>
<div className={styles.itemRoot}> <div className={styles.itemRoot}>
......
@import "../../res.less";
.BackPanel {
width: 750px;
height: 1624px;
position: absolute;
left: 0;
top: 0;
.bg {
position: absolute;
left: 105px;
top: 448px;
width: 539px;
height: 533px;
.webpBg("BackPanel/bg.png");
}
.ok {
position: absolute;
left: 413px;
top: 847px;
width: 199px;
height: 90px;
.webpBg("BackPanel/确认.png");
}
.cancel {
position: absolute;
left: 140px;
top: 855px;
width: 242px;
height: 74px;
.webpBg("BackPanel/继续游戏.png");
}
}
import React from "react";
import { observer } from "mobx-react";
import "./BackPanel.less";
import { Button } from "@grace/ui";
import { _asyncThrottle } from "@/utils/utils.ts";
import { ModalCtrl } from "@/core/ctrls/ModalCtrl.tsx";
import { PageCtrl } from "@/core/ctrls/PageCtrl.tsx";
import HomePage from "@/pages/HomePage/HomePage";
export interface IFailPanelProps {
ok: () => void,
cancel: () => void,
}
@observer
class BackPanel extends React.Component<IFailPanelProps> {
componentDidMount() {
}
clickCancel = () => {
const { cancel } = this.props;
ModalCtrl.closeModal();
cancel && cancel();
};
clickOk = _asyncThrottle(async () => {
const { ok } = this.props;
ModalCtrl.closeModal();
ok && ok();
PageCtrl.changePage(HomePage);
});
render() {
return <div className="BackPanel">
<div className="bg"/>
<Button className="ok" onClick={this.clickOk}/>
<Button className="cancel" onClick={this.clickCancel}/>
</div>;
}
}
export default BackPanel;
@import "../../res.less";
.FailPanel {
width: 750px;
height: 1624px;
position: absolute;
left: 0;
top: 0;
.bg {
position: absolute;
left: 151px;
top: 447px;
width: 444px;
height: 560px;
.webpBg("FailPanel/bg.png");
}
.rank {
font-size: 29px;
color: rgb(255, 255, 255);
position: absolute;
left: 0;
top: 535px;
width: 100%;
text-align: center;
text-shadow: 0 0 5px #16c8c2,
0 0 5px #16c8c2,
0 0 5px #16c8c2,
0 0 10px #16c8c2,
0 0 10px #16c8c2,
0 0 20px #16c8c2;
}
.score {
font-size: 96.09px;
color: rgb(255, 255, 255);
font-weight: bold;
text-align: center;
position: absolute;
left: 0;
top: 672px;
width: 100%;
text-shadow: 0 0 5px #f3d71a,
0 0 5px #f3d71a,
0 0 5px #f3d71a,
0 0 10px #f3d71a,
0 0 10px #f3d71a;
span {
font-size: 32.34px;
}
}
.tip {
color: rgb(255, 255, 255);
font-size: 20px;
text-align: center;
position: absolute;
left: 0;
top: 800px;
width: 100%;
line-height: 33px;
span {
font-size: 26px;
color: #f3c81b;
}
}
.btn {
position: absolute;
left: 214px;
top: 887px;
width: 318px;
height: 80px;
.webpBg("FailPanel/btn.png");
}
.close {
position: absolute;
left: 340px;
top: 1023px;
width: 70px;
height: 70px;
.webpBg("FailPanel/close.png");
}
}
import React from "react";
import {observer} from "mobx-react";
import "./FailPanel.less";
import {Button} from "@grace/ui";
import {_asyncThrottle} from "@/utils/utils.ts";
import { ModalCtrl } from "@/core/ctrls/ModalCtrl.tsx";
import { PageCtrl } from "@/core/ctrls/PageCtrl.tsx";
import HomePage from "@/pages/HomePage/HomePage";
export interface IFailPanelProps {
score: number,
rank: number,
prizeName: string,
reachTargetScore: boolean,
drawChance: number,
}
@observer
class FailPanel extends React.Component<IFailPanelProps> {
componentDidMount() {
}
clickClose = () => {
ModalCtrl.closeModal();
PageCtrl.changePage(HomePage);
};
clickBtn = _asyncThrottle(async () => {
});
render() {
const {score, rank} = this.props;
return <div className="FailPanel">
<div className="bg"/>
<div className="rank">当前排名:NO.{rank}</div>
<div className="score">{score}<span></span></div>
<div className="tip">
单局游戏分数达200<br/>
即可获得<span>1次抽奖机会</span>
</div>
<Button className="btn" onClick={this.clickBtn}/>
<Button className="close" onClick={this.clickClose}/>
</div>;
}
}
export default FailPanel;
@import "../../res.less";
.NewcomerPanel {
width: 750px;
height: 1624px;
position: absolute;
left: 0;
top: 0;
.bgEffect {
width: 750px;
height: 1624px;
position: absolute;
left: 0;
top: 0;
}
.bg {
position: absolute;
left: 0;
top: 340px;
width: 750px;
height: 932px;
.webpBg("NewcomerPanel/bg.png");
}
.tip {
font-family: "zzgfyht";
font-size: 53.62px;
line-height: 1.2;
color: #8f2245;
position: absolute;
left: 0;
top: 520px;
width: 100%;
text-align: center;
}
.ok {
position: absolute;
left: 164px;
top: 973px;
width: 420px;
height: 123px;
.webpBg("NewcomerPanel/按钮.png");
}
.close {
position: absolute;
left: 336px;
top: 1242px;
width: 79px;
height: 79px;
.webpBg("common/close.png");
}
}
import React from "react";
import { observer } from "mobx-react";
import styles from "./NewcomerPanel.module.less";
import { Button } from "@grace/ui";
import { ModalCtrl } from "@/core/ctrls/ModalCtrl.tsx";
import classNames from "classnames";
import { SvgaPlayer } from "@grace/svgaplayer";
import bgEffectSvga from "@/assets/svga/2输出签到成功弹窗.svga";
export interface INewcomerPanelProps {
creditNum: number,
}
@observer
class NewcomerPanel extends React.Component<INewcomerPanelProps> {
componentDidMount() {
}
close = () => {
ModalCtrl.closeModal();
};
clickGet = () => {
ModalCtrl.closeModal();
};
render() {
const {creditNum} = this.props;
return <div className={classNames(styles.NewcomerPanel, "modal_center")}>
<SvgaPlayer className={styles.bgEffect} src={bgEffectSvga}/>
<div className={styles.bg}/>
<div className={styles.tip}>恭喜获得{creditNum}积分</div>
<div className="com_banner"/>
<Button className={styles.ok} onClick={this.clickGet}/>
<Button className={styles.close} onClick={this.close}/>
</div>;
}
}
export default NewcomerPanel;
@import "../../res.less";
.ObtainPanel {
width: 750px;
height: 1624px;
position: absolute;
left: 0;
top: 0;
.bgEffect {
width: 750px;
height: 1624px;
position: absolute;
left: 0;
top: 0;
}
.normal {
position: absolute;
left: 273px;
top: 600px;
width: 205px;
height: 197px;
.webpBg("ObtainPanel/金币堆.png");
}
.expansion {
position: absolute;
left: 273px;
top: 600px;
width: 248px;
height: 197px;
.webpBg("ObtainPanel/金币堆膨胀.png");
}
.bg {
position: absolute;
left: 27px;
top: 348px;
width: 697px;
height: 814px;
.webpBg("ObtainPanel/bg.png");
}
.tip {
font-family: "zzgfyht";
font-size: 45.23px;
line-height: 1.2;
color: #8f2245;
position: absolute;
left: 0;
top: 517px;
width: 100%;
text-align: center;
}
.ok {
position: absolute;
left: 161px;
top: 886px;
width: 420px;
height: 123px;
.webpBg("ObtainPanel/按钮.png");
}
.close {
position: absolute;
left: 336px;
top: 1218px;
width: 79px;
height: 79px;
.sparkBg("common/close.png");
}
}
import React from "react";
import { observer } from "mobx-react";
import styles from "./ObtainPanel.module.less";
import { Button } from "@grace/ui";
import { ModalCtrl } from "@/core/ctrls/ModalCtrl.tsx";
import classNames from "classnames";
import { SvgaPlayer } from "@grace/svgaplayer";
import bgEffectSvga from "@/assets/svga/2输出签到成功弹窗.svga";
export interface IObtainPanelProps {
creditNum: number,
isExp: boolean,
}
@observer
class ObtainPanel extends React.Component<IObtainPanelProps> {
componentDidMount() {
}
close = () => {
ModalCtrl.closeModal();
};
clickGet = () => {
ModalCtrl.closeModal();
};
render() {
const {creditNum, isExp} = this.props;
return <div className={classNames(styles.ObtainPanel, "modal_center")}>
<SvgaPlayer className={styles.bgEffect} src={bgEffectSvga}/>
<div className={styles.bg}/>
<div className={styles.tip}>恭喜获得{creditNum}积分</div>
<div className={classNames({
[styles.expansion]: isExp,
[styles.normal]: !isExp,
})}/>
<div className="com_banner"/>
<Button className={styles.ok} onClick={this.clickGet}/>
<Button className={styles.close} onClick={this.close}/>
</div>;
}
}
export default ObtainPanel;
@import "../../res.less";
.PrizePanel {
width: 750px;
height: 1624px;
position: absolute;
left: 0;
top: 0;
.PrizeBg {
position: absolute;
left: 93px;
top: 237px;
width: 562px;
height: 809px;
.webpBg("PrizePanel/bg.png");
}
.prizeImg {
border-width: 1px;
border-color: rgb(249, 114, 28);
border-style: solid;
border-radius: 22px;
background-color: rgb(255, 255, 255);
position: absolute;
left: 273px;
top: 580px;
width: 199px;
height: 198px;
}
.prizeName {
font-size: 24px;
color: rgba(103, 25, 10, 0.8);
text-align: center;
position: absolute;
left: 93px;
top: 800px;
width: 562px;
font-weight: bold;
}
.ok {
position: absolute;
left: 215px;
top: 844px;
width: 318px;
height: 95px;
.webpBg("PrizePanel/开心收下.png");
}
.close {
position: absolute;
left: 348px;
top: 1092px;
width: 54px;
height: 54px;
.sparkBg("common/close.png");
}
}
import React from "react";
import { observer } from "mobx-react";
import "./PrizePanel.less";
import { Button } from "@grace/ui";
import { ModalCtrl } from "@/core/ctrls/ModalCtrl.tsx";
export interface IPrizePanelProps {
prizeVO: {
prizeId: string | "thanks",
prizeName: string,
prizeImg: string,
},
remainGameTimes: number,
}
@observer
class PrizePanel extends React.Component<IPrizePanelProps> {
componentDidMount() {
}
close = () => {
ModalCtrl.closeModal();
};
clickGet = () => {
};
render() {
const { prizeVO } = this.props;
return <div className="PrizePanel">
<div className="PrizeBg"/>
<img className="prizeImg" src={prizeVO.prizeImg}/>
<div className="prizeName">{prizeVO?.prizeName}</div>
<Button className="ok md18" onClick={this.clickGet}/>
<Button className="close" onClick={this.close}/>
</div>;
}
}
export default PrizePanel;
@import "../../res.less";
.ReturnAwardPanel {
width: 750px;
height: 1624px;
position: absolute;
left: 0;
top: 0;
.bgEffect {
width: 750px;
height: 1624px;
position: absolute;
left: 0;
top: 0;
}
.bg {
position: absolute;
left: 0;
top: 283px;
width: 750px;
height: 941px;
.webpBg("ReturnAwardPanel/bg.png");
}
.tip {
font-family: "zzgfyht";
font-size: 46.66px;
line-height: 1.2;
color: #8f2245;
position: absolute;
left: 0;
top: 480px;
width: 100%;
text-align: center;
}
.ok {
position: absolute;
left: 164px;
top: 930px;
width: 420px;
height: 123px;
.webpBg("ReturnAwardPanel/按钮.png");
}
.close {
position: absolute;
left: 336px;
top: 1242px;
width: 79px;
height: 79px;
.webpBg("common/close.png");
}
}
import React from "react";
import { observer } from "mobx-react";
import styles from "./ReturnAwardPanel.module.less";
import { Button } from "@grace/ui";
import { ModalCtrl } from "@/core/ctrls/ModalCtrl.tsx";
import classNames from "classnames";
import { SvgaPlayer } from "@grace/svgaplayer";
import bgEffectSvga from "@/assets/svga/2输出签到成功弹窗.svga";
export interface IReturnAwardPanelProps {
creditNum: number,
}
@observer
class ReturnAwardPanel extends React.Component<IReturnAwardPanelProps> {
componentDidMount() {
}
close = () => {
ModalCtrl.closeModal();
};
clickGet = () => {
ModalCtrl.closeModal();
};
render() {
const {creditNum} = this.props;
return <div className={classNames(styles.ReturnAwardPanel, "modal_center")}>
<SvgaPlayer className={styles.bgEffect} src={bgEffectSvga}/>
<div className={styles.bg}/>
<div className={styles.tip}>恭喜获得{creditNum}积分</div>
<div className="com_banner"/>
<Button className={styles.ok} onClick={this.clickGet}/>
<Button className={styles.close} onClick={this.close}/>
</div>;
}
}
export default ReturnAwardPanel;
...@@ -69,7 +69,7 @@ ...@@ -69,7 +69,7 @@
.logo { .logo {
position: absolute; position: absolute;
left: 144px; left: 140px;
top: 931px; top: 931px;
width: 95px; width: 95px;
height: 83px; height: 83px;
...@@ -88,11 +88,11 @@ ...@@ -88,11 +88,11 @@
.btn { .btn {
position: absolute; position: absolute;
left: 485px; left: 460px;
top: 947px; top: 947px;
width: 128px; width: 152px;
height: 50px; height: 50px;
.webpBg("SkyFullGoldPanel/去翻倍.png"); .webpBg("SkyFullGoldPanel/去看视频.png");
} }
.close { .close {
......
...@@ -30,7 +30,7 @@ class SkyFullGoldPanel extends React.Component<ISkyFullGoldPanelProps> { ...@@ -30,7 +30,7 @@ class SkyFullGoldPanel extends React.Component<ISkyFullGoldPanelProps> {
const { url, taskId } = this.props; const { url, taskId } = this.props;
ModalCtrl.closeModal(); ModalCtrl.closeModal();
ModalCtrl.showModal(VideoPanel, { taskId, url }); ModalCtrl.showModal(VideoPanel, { taskId, url, isExp: false });
}); });
render() { render() {
...@@ -55,7 +55,7 @@ class SkyFullGoldPanel extends React.Component<ISkyFullGoldPanelProps> { ...@@ -55,7 +55,7 @@ class SkyFullGoldPanel extends React.Component<ISkyFullGoldPanelProps> {
<div className="logo"/> <div className="logo"/>
<div className="txt"> <div className="txt">
观看品牌视频15s<br/> 观看品牌视频15s<br/>
积分膨胀至{creditsNum * multipleValue} 可获得奖励
</div> </div>
<div className="com_banner"/> <div className="com_banner"/>
......
...@@ -6,10 +6,12 @@ import { _asyncThrottle } from "@/utils/utils.ts"; ...@@ -6,10 +6,12 @@ import { _asyncThrottle } from "@/utils/utils.ts";
import { ModalCtrl } from "@/core/ctrls/ModalCtrl.tsx"; import { ModalCtrl } from "@/core/ctrls/ModalCtrl.tsx";
import classNames from "classnames"; import classNames from "classnames";
import API from "@/api"; import API from "@/api";
import ObtainPanel from "@/panels/ObtainPanel/ObtainPanel.tsx";
export interface IVideoPanelProps { export interface IVideoPanelProps {
url: string; url: string;
taskId: string; taskId: string;
isExp: string;
} }
@observer @observer
...@@ -21,6 +23,8 @@ class VideoPanel extends React.Component<IVideoPanelProps> { ...@@ -21,6 +23,8 @@ class VideoPanel extends React.Component<IVideoPanelProps> {
video: HTMLVideoElement; video: HTMLVideoElement;
completeData = null;
componentDidMount() { componentDidMount() {
this.video.onpause = this.onPause; this.video.onpause = this.onPause;
this.video.play(); this.video.play();
...@@ -45,9 +49,8 @@ class VideoPanel extends React.Component<IVideoPanelProps> { ...@@ -45,9 +49,8 @@ class VideoPanel extends React.Component<IVideoPanelProps> {
const { taskId } = this.props; const { taskId } = this.props;
const { success, data } = await API.startVideo({ taskId }); const { success, data } = await API.startVideo({ taskId });
if (!success) return; if (!success) return;
this.completeData = data;
const { creditsNum } = data; });
})
onPause = () => { onPause = () => {
...@@ -55,6 +58,14 @@ class VideoPanel extends React.Component<IVideoPanelProps> { ...@@ -55,6 +58,14 @@ class VideoPanel extends React.Component<IVideoPanelProps> {
clickClose = () => { clickClose = () => {
ModalCtrl.closeModal(); ModalCtrl.closeModal();
if (this.completeData?.creditNum) {
ModalCtrl.showModal(ObtainPanel, {
creditNum: this.completeData.creditNum,
isExp: this.props.isExp,
});
}
}; };
render() { render() {
......
...@@ -33,7 +33,7 @@ class WedExpPanel extends React.Component<IWedExpPanelProps> { ...@@ -33,7 +33,7 @@ class WedExpPanel extends React.Component<IWedExpPanelProps> {
const { url, taskId } = this.props; const { url, taskId } = this.props;
ModalCtrl.closeModal(); ModalCtrl.closeModal();
ModalCtrl.showModal(VideoPanel, { taskId, url }); ModalCtrl.showModal(VideoPanel, { taskId, url, isExp: true });
}); });
render() { render() {
......
...@@ -11,6 +11,7 @@ import Renewmodule from '../../src/components/renewmodule/renewmodule'; ...@@ -11,6 +11,7 @@ import Renewmodule from '../../src/components/renewmodule/renewmodule';
import Finish_challenge from '../../src/components/finish_challenge/finish_challenge'; import Finish_challenge from '../../src/components/finish_challenge/finish_challenge';
import { IBubbleInfo } from "@/pages/HomePage/Top/Components/Bubble.ts"; import { IBubbleInfo } from "@/pages/HomePage/Top/Components/Bubble.ts";
import { IOverflowBubbleInfo } from "@/pages/HomePage/Top/Components/OverflowBubble.ts"; import { IOverflowBubbleInfo } from "@/pages/HomePage/Top/Components/OverflowBubble.ts";
import ReturnAwardPanel from "@/panels/ReturnAwardPanel/ReturnAwardPanel.tsx";
class Store { class Store {
...@@ -59,6 +60,8 @@ class Store { ...@@ -59,6 +60,8 @@ class Store {
currentTime?: number, currentTime?: number,
guideFlag?: boolean, guideFlag?: boolean,
creditsNum?: number,
expireDays?: number,
currentStoreNum?: number, currentStoreNum?: number,
storeLimitNum?: number, storeLimitNum?: number,
continueSignDays?: number, continueSignDays?: number,
...@@ -96,6 +99,12 @@ class Store { ...@@ -96,6 +99,12 @@ class Store {
ModalCtrl.showModal(SkyFullGoldPanel, data.downGoldVo); ModalCtrl.showModal(SkyFullGoldPanel, data.downGoldVo);
} }
if (data.returnAwardCreditsNum) {
ModalCtrl.showModal(ReturnAwardPanel, {
creditNum: data.returnAwardCreditsNum,
});
}
} }
/** /**
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment