Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
2
20250711_TBGuardingLife
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
SparkProjects
20250711_TBGuardingLife
Commits
67ab48a5
Commit
67ab48a5
authored
Jul 15, 2025
by
qimiao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
change api
parent
6068da2c
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
165 additions
and
150 deletions
+165
-150
home.js
mock/project/home.js
+23
-20
task.js
mock/project/task.js
+3
-3
turn.js
mock/project/turn.js
+60
-62
index.js
src/api/index.js
+8
-7
drawsucpop.jsx
src/components/drawsucpop/drawsucpop.jsx
+3
-3
taskpop.jsx
src/components/taskpop/taskpop.jsx
+14
-6
drawpage.jsx
src/pages/drawpage/drawpage.jsx
+8
-8
homepage.jsx
src/pages/homepage/homepage.jsx
+2
-4
index.js
src/store/index.js
+44
-37
No files found.
mock/project/home.js
View file @
67ab48a5
const
{
AESEncrypt
}
=
require
(
"../Crypto"
);
const
{
AESEncrypt
}
=
require
(
"../Crypto"
);
module
.
exports
=
{
"GET /home/index.do"
:
{
code
:
null
,
"GET /game/index.do"
:
{
success
:
true
,
code
:
""
,
message
:
""
,
data
:
{
startTime
:
+
new
Date
()
-
34234234
,
/// 活动开始时间戳
endTime
:
+
new
Date
()
+
34234234
,
/// 活动结束时间戳
remainAnswerTimes
:
324
,
/// 剩余答题机会
nickname
:
null
,
avatar
:
null
,
salesman
:
true
,
// 是否代理人
shareCode
:
'326534'
,
// 分享code
actStartTimestamp
:
+
new
Date
()
-
34234234
,
actEndTimestamp
:
+
new
Date
()
+
34234234
,
currentTimestamp
:
+
new
Date
(),
userId
:
"9527"
,
shareCode
:
"9527"
,
salesmanFlag
:
true
,
rewardDailyFreeGameTimes
:
1
,
leftGameTimes
:
1
,
},
message
:
null
,
success
:
true
,
timeStamp
:
+
new
Date
(),
},
"GET /game/startGame.do"
:
{
code
:
null
,
data
:
AESEncrypt
(
JSON
.
stringify
({
recordId
:
231123
,
}),
"1c5f9cab3460e316"
,
"cDOiBC1n2QrkAY2P"
),
data
:
AESEncrypt
(
JSON
.
stringify
({
recordId
:
231123
,
}),
"1c5f9cab3460e316"
,
"cDOiBC1n2QrkAY2P"
),
message
:
null
,
success
:
true
,
timeStamp
:
1723602734176
,
...
...
@@ -28,11 +31,11 @@ module.exports = {
"GET /game/submitGame.do"
:
{
code
:
null
,
data
:
{
"rewardDrawTimes"
:
1
,
"leftGameTimes"
:
2
rewardDrawTimes
:
1
,
leftGameTimes
:
2
,
},
message
:
null
,
success
:
true
,
timeStamp
:
1723602734176
,
}
}
,
};
mock/project/task.js
View file @
67ab48a5
module
.
exports
=
{
"/
task_
1/queryTasks.do"
:
{
"/
customTask
1/queryTasks.do"
:
{
"code"
:
null
,
"message"
:
null
,
"success"
:
true
,
...
...
@@ -252,7 +252,7 @@ module.exports = {
"timestamp"
:
1619590450914
}
},
"
POST /task_1/doCompleted
.do"
:
{
"
GET /customTask1/finishTask
.do"
:
{
"code"
:
null
,
"data"
:
{
"buttonText"
:
"1"
,
...
...
@@ -284,7 +284,7 @@ module.exports = {
"message"
:
null
,
"success"
:
true
},
"POST /
task_
1/sendPrize.do"
:
{
"POST /
customTask
1/sendPrize.do"
:
{
"code"
:
null
,
"data"
:
{
"extra"
:
null
,
...
...
mock/project/turn.js
View file @
67ab48a5
module
.
exports
=
{
"GET /home/drawIndex.do"
:
{
"success"
:
true
,
"message"
:
"报错了~"
,
"code"
:
null
,
timeStamp
:
Date
.
now
(),
"data"
:
{
"startTime"
:
+
new
Date
()
-
123
,
//活动开始时间戳
"endTime"
:
+
new
Date
()
+
123
,
//活动结束时间戳
"remainDrawTimes"
:
1
,
// 抽奖次数
"actPrizeList"
:
[
{
prizeName
:
`奖品名称奖品名称奖品名称奖品名称1`
,
prizeImg
:
`//yun.duiba.com.cn/polaris/jinmoqiang.9e5bbc004f69ab6a3f34d93daeda028616a9f00d.png`
,
prizeId
:
`thanks1`
,
},
{
prizeName
:
`奖品名称奖品名称`
,
prizeImg
:
`//yun.duiba.com.cn/polaris/kouzhao.dc55dac6db1ff94c4666c2602d6cb0ac84139982.png`
,
prizeId
:
`thanks2`
,
},
{
prizeName
:
`奖品名称奖品`
,
prizeImg
:
`//yun.duiba.com.cn/polaris/mac.fe55aa43e5a231d568973dcdd0b91e0263d5a12c.png`
,
prizeId
:
`thanks3`
,
},
{
prizeName
:
`奖品名称4`
,
prizeImg
:
`//yun.duiba.com.cn/polaris/mgtv.e5f0709a2a4083bc57ce52ff200a50a2e56b2658.png`
,
prizeId
:
`thanks4`
,
},
{
prizeName
:
`奖品名称5`
,
prizeImg
:
`//yun.duiba.com.cn/polaris/qq.73ad13cd0c6fd705327d12957c12e9d5b2e77baa.png`
,
prizeId
:
`thanks5`
,
},
{
prizeName
:
`奖品名称6`
,
prizeImg
:
`//yun.duiba.com.cn/polaris/xx.e2f6a49a2954673d16d956d7b3bba25c2b6c667e.png`
,
prizeId
:
`thanks6`
,
},
{
prizeName
:
`奖品名称7`
,
prizeImg
:
`//yun.duiba.com.cn/polaris/xx.e2f6a49a2954673d16d956d7b3bba25c2b6c667e.png`
,
prizeId
:
`thanks7`
,
},
{
prizeName
:
`谢谢参与lll`
,
prizeImg
:
`https://yun.duiba.com.cn/spark/assets/f77861647e7b55e9c95e9c49d891a21526157a76.jpg`
,
prizeId
:
`thanks`
,
},
]
}
},
"GET /home/doDraw.do"
:
{
"success"
:
true
,
"message"
:
"报错了~"
,
"code"
:
null
,
"data"
:
{
prizeId
:
`thanks`
,
// 奖品id thanks
prizeName
:
`奖品名称6gggggggggggggggggggvvvbbbbhsgxhsghshxbhsxbhs`
,
prizeImg
:
`//yun.duiba.com.cn/polaris/xx.e2f6a49a2954673d16d956d7b3bba25c2b6c667e.png`
,
"GET /draw/info.do"
:
{
success
:
true
,
code
:
""
,
message
:
""
,
data
:
{
actStartTimestamp
:
11111
,
actEndTimestamp
:
33333
,
currentTimestamp
:
22222
,
optionInfoList
:
[
{
id
:
"ccccaaaa"
,
name
:
"华为Mate70"
,
icon
:
"https://www.baidu.com/hw4.png"
,
prizeId
:
"sss_34"
,
prizeType
:
2
,
},
{
id
:
"ccccbbbb"
,
name
:
"华为Pura70"
,
icon
:
"https://www.baidu.com/hw3.png"
,
prizeId
:
"sss_33"
,
prizeType
:
2
,
},
{
id
:
"cccccccc"
,
name
:
"华为Mate60"
,
icon
:
"https://www.baidu.com/hw2.png"
,
prizeId
:
"sss_32"
,
prizeType
:
2
,
},
{
id
:
"ccccdddd"
,
name
:
"华为手环"
,
icon
:
"https://www.baidu.com/hw1.png"
,
prizeId
:
"sss_31"
,
prizeType
:
2
,
},
],
leftDrawTimes
:
0
,
},
},
"GET /draw/doDraw.do"
:
{
success
:
true
,
code
:
""
,
message
:
""
,
data
:
{
prize
:
{
ruleId
:
"ru_draw"
,
optionId
:
"ccccdddd"
,
optionName
:
"华为手环"
,
optionImg
:
"https://www.baidu.com/hw1.png"
,
prizeId
:
"sss_3"
,
prizeType
:
2
,
position
:
1
,
userRecordId
:
666
,
url
:
"https://www.baidu.com/order/666"
,
sendCount
:
1
,
extra
:
"{}"
,
},
},
}
\ No newline at end of file
},
};
src/api/index.js
View file @
67ab48a5
...
...
@@ -32,7 +32,7 @@ const API = generateAPI({
showMsg
:
false
,
},
home
:
'
ho
me/index.do'
,
home
:
'
ga
me/index.do'
,
startAnswer
:
{
uri
:
'game/startGame.do'
,
withToken
:
true
,
// 携带token
...
...
@@ -43,10 +43,11 @@ const API = generateAPI({
},
/** 抽奖首页 */
drawIndex
:
"
home/drawIndex
.do"
,
drawIndex
:
"
draw/info
.do"
,
/** 抽奖 */
drawJoin
:
{
uri
:
"home/doDraw.do"
,
method
:
"get"
,
uri
:
"draw/doDraw.do"
,
withToken
:
true
,
},
...
...
@@ -54,17 +55,17 @@ const API = generateAPI({
queryUserInfo
:
"common/queryUserInfo.do"
,
/** 查询任务列表 */
queryTasks
:
"
task_
1/queryTasks.do"
,
queryTasks
:
"
customTask
1/queryTasks.do"
,
/** 完成任务 */
doCompleted
:
{
method
:
"
pos
t"
,
uri
:
"
task_1/doCompleted
.do"
,
method
:
"
ge
t"
,
uri
:
"
customTask1/finishTask
.do"
,
withToken
:
true
,
},
/** 任务发奖 */
sendPrize
:
{
method
:
"post"
,
uri
:
"
task_
1/sendPrize.do"
,
uri
:
"
customTask
1/sendPrize.do"
,
withToken
:
true
,
},
...
...
src/components/drawsucpop/drawsucpop.jsx
View file @
67ab48a5
...
...
@@ -31,15 +31,15 @@ class Drawsucpop extends React.Component {
location
.
href
=
CFG
.
prize
;
});
render
()
{
const
{
prizeName
,
prizeImg
}
=
this
.
props
.
popData
||
{};
const
{
optionName
,
optionImg
}
=
this
.
props
.
popData
?.
prize
||
{};
return
(
<
div
className=
"drawsucpop modal_center"
>
<
SvgaPlayer
className=
"light"
src=
{
RES_PATH
+
"svga/pop.svga"
}
/>
<
span
className=
"title"
></
span
>
{
/* <span className="leaves"></span> */
}
{
/* <span className="bg"></span> */
}
<
img
className=
"prize_img"
src=
{
prize
Img
}
/>
<
span
className=
"prize_name"
>
{
prize
Name
}
</
span
>
<
img
className=
"prize_img"
src=
{
option
Img
}
/>
<
span
className=
"prize_name"
>
{
option
Name
}
</
span
>
<
Button
className=
"happy_btn md11"
onClick=
{
this
.
jumpPrize
}
></
Button
>
<
span
className=
"tips"
>
奖品可在首页 我的奖品 中查看
</
span
>
</
div
>
...
...
src/components/taskpop/taskpop.jsx
View file @
67ab48a5
...
...
@@ -14,6 +14,8 @@ import { Button } from "../Button";
import
{
miniGoUrl
}
from
"@src/utils/share"
;
import
{
SvgaPlayer
}
from
"@spark/svgaplayer"
;
import
{
RES_PATH
}
from
"../../../sparkrc"
;
import
store
from
"@src/store"
;
import
{
MD5
}
from
"crypto-js"
;
@
observer
class
Taskpop
extends
React
.
Component
{
...
...
@@ -54,7 +56,15 @@ class Taskpop extends React.Component {
// 按钮点击事件
completeHandle
=
_throttle
(
async
(
item
)
=>
{
const
{
userId
}
=
store
.
homeInfo
||
{};
const
{
code
,
jumpUrl
}
=
item
||
{};
const
systemTime
=
Date
.
now
();
const
sign
=
MD5
(
`
${
userId
}
_
${
code
}
_
${
systemTime
}
_1c5f9cab3460e316`
);
const
params
=
{
sign
,
taskCode
:
code
,
timestamp
:
systemTime
,
};
if
(
code
.
indexOf
(
TASK_CODE
.
THIRD_RETAIN
)
>
-
1
)
{
sensorMdClick
(
"PopupClick"
,
{
pageName
:
"任务弹窗点击"
,
buttonName
:
"留资咨询"
});
setTimeout
(()
=>
{
...
...
@@ -65,14 +75,13 @@ class Taskpop extends React.Component {
modalStore
.
pushPop
(
"LongImgPop"
,
{
imgUrl
:
jumpUrl
,
taskSucCb
:
async
()
=>
{
const
param
=
{
taskCode
:
code
};
await
API
.
doCompleted
(
param
);
await
API
.
doCompleted
(
params
);
},
});
}
else
if
(
code
.
indexOf
(
TASK_CODE
.
SIGN
)
>
-
1
)
{
sensorMdClick
(
"PopupClick"
,
{
pageName
:
"任务弹窗点击"
,
buttonName
:
"每日签到"
});
}
else
if
(
code
.
indexOf
(
TASK_CODE
.
BROWSE_MINI
)
>
-
1
)
{
await
API
.
doCompleted
(
{
taskCode
:
code
}
);
await
API
.
doCompleted
(
params
);
watchPageVisibility
(
this
.
pageVChange
);
if
(
jumpUrl
.
indexOf
(
"http"
)
===
0
)
{
setTimeout
(()
=>
{
...
...
@@ -86,8 +95,7 @@ class Taskpop extends React.Component {
modalStore
.
pushPop
(
"Videopop"
,
{
url
:
jumpUrl
,
taskSucCb
:
async
()
=>
{
const
param
=
{
taskCode
:
code
};
await
API
.
doCompleted
(
param
);
await
API
.
doCompleted
(
params
);
},
});
}
...
...
@@ -96,7 +104,7 @@ class Taskpop extends React.Component {
/** 任务领奖 */
receiveHandle
=
_asyncThrottle
(
async
(
task
)
=>
{
const
{
success
,
data
}
=
await
API
.
sendPrize
({
taskId
:
task
.
id
,
//
taskId: task.id,
taskCode
:
task
.
code
,
prizePendingCode
:
task
?.
prizePendingCode
,
});
...
...
src/pages/drawpage/drawpage.jsx
View file @
67ab48a5
...
...
@@ -41,11 +41,11 @@ class Drawpage extends React.Component {
};
// 开始抽奖
lott
t
eryHandle
=
_asyncThrottle
(
async
()
=>
{
const
{
actPrizeList
,
remain
DrawTimes
}
=
this
.
state
.
drawInfo
;
lotteryHandle
=
_asyncThrottle
(
async
()
=>
{
const
{
optionInfoList
,
left
DrawTimes
}
=
this
.
state
.
drawInfo
;
sensorMdClick
(
"activityClick"
,
{
pageName
:
"抽奖页点击"
,
buttonName
:
"开始抽奖"
});
// 无抽奖次数
if
(
!
remain
DrawTimes
)
{
if
(
!
left
DrawTimes
)
{
return
modalStore
.
pushPop
(
"Drawchancepop"
,
{
refresh
:
()
=>
this
.
getDrawInfo
(),
});
...
...
@@ -60,7 +60,7 @@ class Drawpage extends React.Component {
this
.
drawResultInfo
=
data
||
{};
// 转盘停止转动,指针停在index
const
index
=
actPrize
List
?.
findIndex
((
item
)
=>
item
.
prizeId
===
this
.
drawResultInfo
.
prizeId
);
const
index
=
optionInfo
List
?.
findIndex
((
item
)
=>
item
.
prizeId
===
this
.
drawResultInfo
.
prizeId
);
console
.
info
(
"index"
,
index
);
// !important 注意:randomOffset设置为false,这样每次旋转的偏移量就不是随机滴啦
this
.
turntableRef
.
braking
(
index
,
{
immediately
:
false
,
randomOffset
:
false
});
...
...
@@ -113,7 +113,7 @@ class Drawpage extends React.Component {
});
});
render
()
{
const
{
actPrizeList
,
remain
DrawTimes
}
=
this
.
state
.
drawInfo
;
const
{
optionInfoList
,
left
DrawTimes
}
=
this
.
state
.
drawInfo
;
return
(
<
div
className=
"drawpage modal_center"
>
<
span
className=
"beiJing"
></
span
>
...
...
@@ -128,7 +128,7 @@ class Drawpage extends React.Component {
<
CircleTurntable
className=
"turntable_box"
ref=
{
(
ref
)
=>
(
this
.
turntableRef
=
ref
)
}
options=
{
actPrize
List
||
[]
}
options=
{
optionInfo
List
||
[]
}
angleOffset=
{
23
}
// 角度偏移量
radian=
{
80
}
// 奖项半径
launchDuration=
{
1000
}
// 启动时间
...
...
@@ -156,8 +156,8 @@ class Drawpage extends React.Component {
<
Button
className=
"rule_btn"
onClick=
{
this
.
ruleHandle
}
></
Button
>
<
Button
className=
"prize_btn"
onClick=
{
this
.
prizeHandle
}
></
Button
>
<
Button
className=
"task_btn"
onClick=
{
this
.
taskHandle
}
></
Button
>
<
div
className=
"draw_btn md10"
onClick=
{
this
.
lott
t
eryHandle
}
></
div
>
<
span
className=
"left_num"
>
剩余次数:
{
remain
DrawTimes
||
0
}
</
span
>
<
div
className=
"draw_btn md10"
onClick=
{
this
.
lotteryHandle
}
></
div
>
<
span
className=
"left_num"
>
剩余次数:
{
left
DrawTimes
||
0
}
</
span
>
</
div
>
);
}
...
...
src/pages/homepage/homepage.jsx
View file @
67ab48a5
...
...
@@ -22,7 +22,6 @@ class Homepage extends React.Component {
}
async
componentDidMount
()
{
// modalStore.pushPop("Bindpop");
await
store
.
getHomeInfo
();
// 初始化神策埋点 得在首页接口之后 首页接口会打上业务员绑定标记
await
store
.
initSensorsMd
();
...
...
@@ -31,8 +30,6 @@ class Homepage extends React.Component {
// 初始化首页分享信息
shareStore
.
initShareInfo
();
// modalStore.pushPop("Bindpop");
sensorMdExpouse
(
"activityPage"
,
{
pageName
:
"端午活动首页"
,
follow_action
:
1
});
pageLeave
(
"端午节活动首页点击"
,
5
);
}
...
...
@@ -79,6 +76,7 @@ class Homepage extends React.Component {
});
render
()
{
const
{
leftGameTimes
,
rewardDailyFreeGameTimes
}
=
store
.
homeInfo
||
{};
return
(
<
div
className=
"homepage modal_center"
>
<
span
className=
"bg"
></
span
>
...
...
@@ -90,7 +88,7 @@ class Homepage extends React.Component {
<
Button
className=
"task_btn md6"
onClick=
{
this
.
openTask
}
></
Button
>
<
Button
className=
"draw_btn md4"
onClick=
{
this
.
goDraw
}
></
Button
>
<
div
className=
"main_btn md5"
onClick=
{
this
.
goTest
}
></
div
>
<
span
className=
"test_times"
>
剩余次数:
{
store
.
homeInfo
?.
remainAnswerTimes
||
0
}
</
span
>
<
span
className=
"test_times"
>
剩余次数:
{
leftGameTimes
+
rewardDailyFreeGameTimes
??
0
}
</
span
>
{
/* <span className="title"></span> */
}
<
SvgaPlayer
className=
"home_svga"
src=
{
RES_PATH
+
"svga/home.svga"
}
/>
{
/* <div className="subtitle">
...
...
src/store/index.js
View file @
67ab48a5
import
{
ACT_STATUS
,
ACT_STATUS_TOAST
,
PAGE_MAP
,
TOPIC_LIST
}
from
'@src/utils/constants'
;
import
{
makeAutoObservable
}
from
'mobx'
;
import
API
from
'../api/index'
;
import
{
ACT_STATUS
,
ACT_STATUS_TOAST
,
PAGE_MAP
,
TOPIC_LIST
}
from
"@src/utils/constants"
;
import
{
makeAutoObservable
}
from
"mobx"
;
import
API
from
"../api/index"
;
import
{
GetCurrSkinId
,
getCustomShareId
}
from
"@src/utils/utils"
;
import
{
initSensors
}
from
'@src/utils/sensorMd'
;
import
{
Toast
}
from
'@spark/ui'
;
import
{
AESDecrypt
}
from
"@src/utils/Crypto"
;
import
{
initSensors
}
from
"@src/utils/sensorMd"
;
import
{
Toast
}
from
"@spark/ui"
;
import
{
AESDecrypt
}
from
"@src/utils/Crypto"
;
const
skinId
=
GetCurrSkinId
()
||
getCustomShareId
();
const
store
=
makeAutoObservable
({
/** 活动规则 */
ruleInfo
:
''
,
ruleInfo
:
""
,
/** 前端开发配置 */
frontVariable
:
{},
/** 当前页面 */
curPage
:
{
index
:
PAGE_MAP
.
HOME_PAGE
,
myPrize
:
PAGE_MAP
.
PRIZE_PAGE
,
// 免登中间页-线上测试
Did1NjA4NjM
:
PAGE_MAP
.
MID_PAGE
,
// 免登中间页-线上正式
Did1NjA4NzE
:
PAGE_MAP
.
MID_PAGE
,
}[
skinId
]
||
PAGE_MAP
.
HOME_PAGE
,
curPage
:
{
index
:
PAGE_MAP
.
HOME_PAGE
,
myPrize
:
PAGE_MAP
.
PRIZE_PAGE
,
// 免登中间页-线上测试
Did1NjA4NjM
:
PAGE_MAP
.
MID_PAGE
,
// 免登中间页-线上正式
Did1NjA4NzE
:
PAGE_MAP
.
MID_PAGE
,
}[
skinId
]
||
PAGE_MAP
.
HOME_PAGE
,
pageData
:
{},
...
...
@@ -47,21 +48,21 @@ const store = makeAutoObservable({
const
resData
=
data
||
{};
if
(
resData
.
shareInfo
)
resData
.
shareInfo
=
JSON
.
parse
(
resData
.
shareInfo
);
this
.
frontVariable
=
resData
;
console
.
log
(
'前端开发配置'
,
data
)
console
.
log
(
"前端开发配置"
,
data
);
},
/** 首页信息 */
homeInfo
:
{},
async
getHomeInfo
()
{
let
params
=
{}
const
shareCode
=
getUrlParam
(
"shareCode"
)
&&
getUrlParam
(
"shareCode"
)
!==
'null'
?
getUrlParam
(
"shareCode"
)
:
''
;
let
params
=
{}
;
const
shareCode
=
getUrlParam
(
"shareCode"
)
&&
getUrlParam
(
"shareCode"
)
!==
"null"
?
getUrlParam
(
"shareCode"
)
:
""
;
if
(
shareCode
)
{
params
.
shareCode
=
shareCode
params
.
shareCode
=
shareCode
;
}
const
{
success
,
data
,
timeStamp
}
=
await
API
.
home
(
params
);
if
(
success
)
{
const
resData
=
data
||
{}
const
{
startTime
,
endTime
}
=
resData
const
resData
=
data
||
{}
;
const
{
startTime
,
endTime
}
=
resData
;
if
(
timeStamp
>=
startTime
&&
timeStamp
<
endTime
)
{
resData
.
_actStatus
=
ACT_STATUS
.
ING
;
}
else
if
(
timeStamp
<
startTime
)
{
...
...
@@ -70,18 +71,24 @@ const store = makeAutoObservable({
resData
.
_actStatus
=
ACT_STATUS
.
ENDED
;
}
this
.
homeInfo
=
resData
;
console
.
log
(
'首页数据'
,
this
.
homeInfo
);
console
.
log
(
"首页数据"
,
this
.
homeInfo
);
}
},
/**
* 校验活动状态
*/
* 校验活动状态
*/
checkActStatus
(
isSpecial
)
{
if
(
this
.
homeInfo
.
_actStatus
&&
this
.
homeInfo
.
_actStatus
!==
ACT_STATUS
.
ING
)
{
// 活动已结束:【奖品】、【规则】按钮可点
if
(
isSpecial
&&
this
.
homeInfo
.
_actStatus
===
ACT_STATUS
.
ENDED
)
return
true
;
const
{
actStartTimestamp
,
actEndTimestamp
,
currentTimestamp
}
=
this
.
homeInfo
||
{};
// 活动已结束:【奖品】、【规则】按钮可点
if
(
isSpecial
&&
(
actEndTimestamp
<
currentTimestamp
)
)
return
true
;
Toast
(
ACT_STATUS_TOAST
[
this
.
homeInfo
.
_actStatus
]);
if
(
actStartTimestamp
>
currentTimestamp
)
{
Toast
(
"活动尚未开始"
);
return
false
;
}
if
(
actEndTimestamp
<
currentTimestamp
)
{
Toast
(
"活动已经结束"
);
return
false
;
}
return
true
;
...
...
@@ -97,20 +104,20 @@ const store = makeAutoObservable({
}
},
async
submitTest
(
answer
)
{
let
roleId
=
''
let
roleId
=
""
;
answer
.
map
((
item
,
index
)
=>
{
const
itemRuleId
=
store
.
startInfo
.
topicList
[
index
]?.
options
?.[
item
]?.
split
(
"$$$"
)?.[
1
]
if
(
itemRuleId
)
roleId
=
itemRuleId
})
this
.
roleId
=
roleId
const
itemRuleId
=
store
.
startInfo
.
topicList
[
index
]?.
options
?.[
item
]?.
split
(
"$$$"
)?.[
1
]
;
if
(
itemRuleId
)
roleId
=
itemRuleId
;
})
;
this
.
roleId
=
roleId
;
const
{
success
,
data
}
=
await
API
.
submitAnswer
({
chooses
:
roleId
,
// 人设Id
startId
:
this
.
startInfo
.
startId
startId
:
this
.
startInfo
.
startId
,
});
if
(
success
)
{
this
.
changePage
(
PAGE_MAP
.
RESU_PAGE
,
{
awardTimes
:
data
.
awardTimes
||
0
})
awardTimes
:
data
.
awardTimes
||
0
,
})
;
}
},
...
...
@@ -128,5 +135,5 @@ const store = makeAutoObservable({
initSensors
(
unionId
,
openId
,
newEmpNo
);
}
},
})
})
;
export
default
store
;
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment