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
1be6edc1
Commit
1be6edc1
authored
Jul 16, 2025
by
haiyoucuv
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
init
parent
61747764
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
60 additions
and
31 deletions
+60
-31
assetList.json
src/assetList.json
+1
-1
EventPanel.jsx
src/components/EventPanel/EventPanel.jsx
+2
-2
LifeSettingPage.jsx
src/pages/LifeSettingPage/LifeSettingPage.jsx
+8
-1
answerpage.jsx
src/pages/answerpage/answerpage.jsx
+35
-17
homepage.jsx
src/pages/homepage/homepage.jsx
+1
-1
index.js
src/store/index.js
+13
-9
No files found.
src/assetList.json
View file @
1be6edc1
{
"preLoadImg"
:[],
"asyncLoadImg"
:[
"answerPage/bg1.jpg"
,
"answerPage/bg2.jpg"
,
"answerPage/bg3.jpg"
,
"answerPage/bg4.jpg"
,
"answerPage/bg5.jpg"
,
"answerPage/bg6.jpg"
,
"answerPage/chooseBg.png"
,
"answerPage/normalBg.png"
,
"answerPage/q1.png"
,
"answerPage/q2.png"
,
"answerPage/q3.png"
,
"answerPage/q4.png"
,
"answerPage/q5.png"
,
"answerPage/q6.png"
,
"answerPage/queBg.png"
,
"answerPage/按钮.png"
,
"bindPop/bg.png"
,
"bindPop/bind_btn.png"
,
"common/back.png"
,
"common/close.png"
,
"drawChancePop/bg.png"
,
"drawChancePop/btn.png"
,
"drawFailPop/bg.png"
,
"drawFailPop/btn.png"
,
"drawPage/bg.png"
,
"drawPage/cloud.png"
,
"drawPage/draw_btn.png"
,
"drawPage/pointer.png"
,
"drawPage/prize_btn.png"
,
"drawPage/rule_btn.png"
,
"drawPage/subtitle_bg.png"
,
"drawPage/task_btn.png"
,
"drawPage/title.png"
,
"drawPage/turntable_bg.png"
,
"drawPage/turntable_box.png"
,
"drawSucPop/bg.png"
,
"drawSucPop/happy_btn.png"
,
"drawSucPop/leaves.png"
,
"drawSucPop/light.png"
,
"drawSucPop/prize_img.png"
,
"drawSucPop/title.png"
,
"EventPanel/不慎受伤.png"
,
"EventPanel/不慎摔伤.png"
,
"EventPanel/不慎摔倒.png"
,
"EventPanel/分红致富.png"
,
"EventPanel/古井无波.png"
,
"EventPanel/夏令营不慎摔倒.png"
,
"EventPanel/家长奖励.png"
,
"EventPanel/惨遭辞退.png"
,
"EventPanel/晋升.png"
,
"EventPanel/生活美满.png"
,
"EventPanel/电商震荡.png"
,
"EventPanel/职场风波.png"
,
"EventPanel/股市震荡.png"
,
"EventPanel/获得保障.png"
,
"EventPanel/获得保障2.png"
,
"EventPanel/获得文凭.png"
,
"EventPanel/财富提升.png"
,
"EventPanel/钱包发瘪.png"
,
"exitPop/bg.png"
,
"exitPop/cancel_btn.png"
,
"exitPop/confirm_btn.png"
,
"focusPop/bg.png"
,
"focusPop/qrcode_bg.png"
,
"FundsPanel/bg.png"
,
"FundsPanel/close.png"
,
"FundsPanel/去配置.png"
,
"homePage/bg.png"
,
"homePage/content.png"
,
"homePage/draw_btn.png"
,
"homePage/main_btn.png"
,
"homePage/ptize_btn.png"
,
"homePage/rule_btn.png"
,
"homePage/rule_prize.png"
,
"homePage/share_btn.png"
,
"homePage/subtitle_bg.png"
,
"homePage/task_btn.png"
,
"homePage/title.png"
,
"LifeSettingsPage/0岁.png"
,
"LifeSettingsPage/10岁.png"
,
"LifeSettingsPage/20岁.png"
,
"LifeSettingsPage/30岁.png"
,
"LifeSettingsPage/ageTitle.png"
,
"LifeSettingsPage/bg.jpg"
,
"LifeSettingsPage/cityTitle.png"
,
"LifeSettingsPage/familyTitle.png"
,
"LifeSettingsPage/title.png"
,
"LifeSettingsPage/一线.png"
,
"LifeSettingsPage/三口.png"
,
"LifeSettingsPage/三线.png"
,
"LifeSettingsPage/三线外.png"
,
"LifeSettingsPage/两口.png"
,
"LifeSettingsPage/二线.png"
,
"LifeSettingsPage/四口.png"
,
"LifeSettingsPage/开始测试.png"
,
"LifeSettingsPage/更多.png"
,
"LifeSettingsPage/选择框.png"
,
"LoadingPage/loadingBg.jpg"
,
"LoadingPage/loadingFill.png"
,
"LoadingPage/loadingIp.png"
,
"mid/bg.jpg"
,
"prizePage/bg.png"
,
"prizePage/prize_btn.png"
,
"prizePage/prize_img.png"
,
"prizePage/prize_item_bg.png"
,
"prizePage/title.png"
,
"resultPage/bg.png"
,
"resultPage/code_bg.png"
,
"resultPage/code_img.png"
,
"resultPage/draw_btn.png"
,
"resultPage/product_btn.png"
,
"resultPage/share_btn.png"
,
"resultPage/传统守护者.png"
,
"resultPage/佛系随性派.png"
,
"resultPage/元气美食家.png"
,
"resultPage/狂热尝新党.png"
,
"resultPage/社交组局王.png"
,
"ReviewPanel/bg.jpg"
,
"ReviewPanel/itemBg0.png"
,
"ReviewPanel/itemBg1.png"
,
"rulePop/bg.png"
,
"svga/1输出首页氛围.svga"
,
"svga/2输出弹窗氛围.svga"
,
"svga/choose.svga"
,
"svga/home.svga"
,
"svga/pop.svga"
,
"taskPop/bg.png"
,
"taskPop/grey_bg.png"
,
"taskPop/red_bg.png"
,
"taskPop/task_icon.png"
,
"taskPop/task_item_bg.png"
,
"taskPop/yellow_bg.png"
]}
\ No newline at end of file
{
"preLoadImg"
:[],
"asyncLoadImg"
:[
"answerPage/bg1.jpg"
,
"answerPage/bg2.jpg"
,
"answerPage/bg3.jpg"
,
"answerPage/bg4.jpg"
,
"answerPage/bg5.jpg"
,
"answerPage/bg6.jpg"
,
"answerPage/chooseBg.png"
,
"answerPage/normalBg.png"
,
"answerPage/q1.png"
,
"answerPage/q2.png"
,
"answerPage/q3.png"
,
"answerPage/q4.png"
,
"answerPage/q5.png"
,
"answerPage/q6.png"
,
"answerPage/queBg.png"
,
"answerPage/按钮.png"
,
"bindPop/bg.png"
,
"bindPop/bind_btn.png"
,
"common/back.png"
,
"common/close.png"
,
"drawChancePop/bg.png"
,
"drawChancePop/btn.png"
,
"drawFailPop/bg.png"
,
"drawFailPop/btn.png"
,
"drawPage/bg.png"
,
"drawPage/cloud.png"
,
"drawPage/draw_btn.png"
,
"drawPage/pointer.png"
,
"drawPage/prize_btn.png"
,
"drawPage/rule_btn.png"
,
"drawPage/subtitle_bg.png"
,
"drawPage/task_btn.png"
,
"drawPage/title.png"
,
"drawPage/turntable_bg.png"
,
"drawPage/turntable_box.png"
,
"drawPage/turntable_btn.png"
,
"drawSucPop/bg.png"
,
"drawSucPop/happy_btn.png"
,
"drawSucPop/leaves.png"
,
"drawSucPop/light.png"
,
"drawSucPop/prize_img.png"
,
"drawSucPop/title.png"
,
"EventPanel/不慎受伤.png"
,
"EventPanel/不慎摔伤.png"
,
"EventPanel/不慎摔倒.png"
,
"EventPanel/分红致富.png"
,
"EventPanel/古井无波.png"
,
"EventPanel/夏令营不慎摔倒.png"
,
"EventPanel/家长奖励.png"
,
"EventPanel/惨遭辞退.png"
,
"EventPanel/晋升.png"
,
"EventPanel/生活美满.png"
,
"EventPanel/电商震荡.png"
,
"EventPanel/职场风波.png"
,
"EventPanel/股市震荡.png"
,
"EventPanel/获得保障.png"
,
"EventPanel/获得保障2.png"
,
"EventPanel/获得文凭.png"
,
"EventPanel/财富提升.png"
,
"EventPanel/钱包发瘪.png"
,
"exitPop/bg.png"
,
"exitPop/cancel_btn.png"
,
"exitPop/confirm_btn.png"
,
"focusPop/bg.png"
,
"focusPop/qrcode_bg.png"
,
"FundsPanel/bg.png"
,
"FundsPanel/close.png"
,
"FundsPanel/去配置.png"
,
"homePage/bg.png"
,
"homePage/content.png"
,
"homePage/draw_btn.png"
,
"homePage/main_btn.png"
,
"homePage/ptize_btn.png"
,
"homePage/rule_btn.png"
,
"homePage/rule_prize.png"
,
"homePage/share_btn.png"
,
"homePage/subtitle_bg.png"
,
"homePage/task_btn.png"
,
"homePage/title.png"
,
"LifeSettingsPage/0岁.png"
,
"LifeSettingsPage/10岁.png"
,
"LifeSettingsPage/20岁.png"
,
"LifeSettingsPage/30岁.png"
,
"LifeSettingsPage/ageTitle.png"
,
"LifeSettingsPage/bg.jpg"
,
"LifeSettingsPage/cityTitle.png"
,
"LifeSettingsPage/familyTitle.png"
,
"LifeSettingsPage/title.png"
,
"LifeSettingsPage/一线.png"
,
"LifeSettingsPage/三口.png"
,
"LifeSettingsPage/三线.png"
,
"LifeSettingsPage/三线外.png"
,
"LifeSettingsPage/两口.png"
,
"LifeSettingsPage/二线.png"
,
"LifeSettingsPage/四口.png"
,
"LifeSettingsPage/开始测试.png"
,
"LifeSettingsPage/更多.png"
,
"LifeSettingsPage/选择框.png"
,
"LoadingPage/loadingBg.jpg"
,
"LoadingPage/loadingFill.png"
,
"LoadingPage/loadingIp.png"
,
"mid/bg.jpg"
,
"prizePage/bg.png"
,
"prizePage/prize_btn.png"
,
"prizePage/prize_img.png"
,
"prizePage/prize_item_bg.png"
,
"prizePage/title.png"
,
"resultPage/bg.png"
,
"resultPage/code_bg.png"
,
"resultPage/code_img.png"
,
"resultPage/draw_btn.png"
,
"resultPage/product_btn.png"
,
"resultPage/share_btn.png"
,
"resultPage/传统守护者.png"
,
"resultPage/佛系随性派.png"
,
"resultPage/元气美食家.png"
,
"resultPage/狂热尝新党.png"
,
"resultPage/社交组局王.png"
,
"ReviewPanel/bg.jpg"
,
"ReviewPanel/itemBg0.png"
,
"ReviewPanel/itemBg1.png"
,
"rulePop/bg.png"
,
"svga/1输出首页氛围.svga"
,
"svga/2输出弹窗氛围.svga"
,
"svga/choose.svga"
,
"svga/home.svga"
,
"svga/pop.svga"
,
"taskPop/bg.png"
,
"taskPop/grey_bg.png"
,
"taskPop/red_bg.png"
,
"taskPop/task_icon.png"
,
"taskPop/task_item_bg.png"
,
"taskPop/yellow_bg.png"
]}
\ No newline at end of file
src/components/EventPanel/EventPanel.jsx
View file @
1be6edc1
...
...
@@ -12,9 +12,9 @@ class EventPanel extends React.Component {
componentDidMount
()
{
}
onClick
=
_asyncThrottle
(()
=>
{
onClick
=
_asyncThrottle
(
async
()
=>
{
const
{
event
,
call
}
=
this
.
props
.
popData
;
call
?.();
await
call
?.();
modalStore
.
closePop
();
});
...
...
src/pages/LifeSettingPage/LifeSettingPage.jsx
View file @
1be6edc1
...
...
@@ -19,6 +19,8 @@ class LifeSettingPage extends React.Component {
funds
=
100
;
settingParams
=
[];
componentDidMount
()
{
}
...
...
@@ -39,8 +41,13 @@ class LifeSettingPage extends React.Component {
this
.
funds
*=
radio
;
this
.
settingParams
.
push
(
chooseIndex
);
if
(
quesIndex
==
2
)
{
modalStore
.
pushPop
(
"FundsPanel"
,
{
funds
:
this
.
funds
});
modalStore
.
pushPop
(
"FundsPanel"
,
{
funds
:
this
.
funds
,
settingParams
:
this
.
settingParams
.
map
((
item
)
=>
item
+
1
),
});
return
;
}
...
...
src/pages/answerpage/answerpage.jsx
View file @
1be6edc1
...
...
@@ -6,6 +6,7 @@ import {Button} from "@src/components/Button";
import
{
QuestionCfg
}
from
"@src/pages/answerpage/QuestionCfg"
;
import
classNames
from
"classnames"
;
import
modalStore
from
"@src/store/modal"
;
import
store
from
"@src/store"
;
@
observer
class
Answerpage
extends
React
.
Component
{
...
...
@@ -15,7 +16,10 @@ class Answerpage extends React.Component {
chooseIndex
:
null
,
};
selectOptions
=
[];
initFunds
=
0
;
componentDidMount
()
{
this
.
initFunds
=
this
.
props
.
funds
;
this
.
setState
({
funds
:
this
.
props
.
funds
,
})
...
...
@@ -27,30 +31,44 @@ class Answerpage extends React.Component {
});
}
goNext
(
money
)
{
if
(
this
.
state
.
quesIndex
==
5
)
{
return
;
}
this
.
setState
({
chooseIndex
:
null
,
quesIndex
:
this
.
state
.
quesIndex
+
1
,
funds
:
this
.
state
.
funds
+
money
,
});
}
clickNext
=
()
=>
{
const
{
quesIndex
,
chooseIndex
,
funds
}
=
this
.
state
;
this
.
selectOptions
.
push
(
chooseIndex
);
const
{
event
,
review
}
=
QuestionCfg
[
quesIndex
].
answer
[
chooseIndex
];
const
resultFunds
=
this
.
state
.
funds
+
event
.
money
;
modalStore
.
pushPop
(
"EventPanel"
,
{
event
,
call
:
()
=>
{
call
:
async
()
=>
{
if
(
this
.
state
.
quesIndex
==
5
)
{
let
score
=
1
;
if
(
resultFunds
>=
100
)
{
score
=
4
;
}
else
if
(
resultFunds
>
50
)
{
score
=
3
;
}
else
if
(
resultFunds
>
0
)
{
score
=
2
;
}
await
store
.
submitTest
({
initParams
:
this
.
props
.
settingParams
,
initAmount
:
this
.
initFunds
,
selectOptions
:
this
.
selectOptions
.
map
((
item
)
=>
item
+
1
),
resultAmount
:
resultFunds
,
score
,
});
return
;
}
modalStore
.
pushPop
(
"ReviewPanel"
,
{
review
:
QuestionCfg
[
quesIndex
].
review
});
this
.
goNext
(
event
.
money
);
this
.
setState
({
chooseIndex
:
null
,
quesIndex
:
this
.
state
.
quesIndex
+
1
,
funds
:
resultFunds
,
});
}
});
}
...
...
src/pages/homepage/homepage.jsx
View file @
1be6edc1
...
...
@@ -67,7 +67,7 @@ class Homepage extends React.Component {
return
;
}
sensorMdClick
(
"activityClick"
,
{
pageName
:
"端午节活动首页点击"
,
buttonName
:
"开始测试"
});
if
(
store
.
homeInfo
?.
re
mainAnswer
Times
>
0
)
{
if
(
store
.
homeInfo
?.
re
wardDailyFreeGame
Times
>
0
)
{
// 进入测试页
store
.
startTest
();
}
else
{
...
...
src/store/index.js
View file @
1be6edc1
...
...
@@ -103,17 +103,21 @@ const store = makeAutoObservable({
this
.
changePage
(
PAGE_MAP
.
LIFE_SETTING_PAGE
);
}
},
async
submitTest
(
answer
)
{
let
roleId
=
""
;
answer
.
map
((
item
,
index
)
=>
{
const
itemRuleId
=
store
.
startInfo
.
topicList
[
index
]?.
options
?.[
item
]?.
split
(
"$$$"
)?.[
1
];
if
(
itemRuleId
)
roleId
=
itemRuleId
;
});
this
.
roleId
=
roleId
;
async
submitTest
(
param
)
{
param
.
recordId
=
this
.
startInfo
.
recordId
;
param
.
timestamp
=
Date
.
now
();
const
paramDe
=
AESDecrypt
(
JSON
.
stringify
(
param
),
"1c5f9cab3460e316"
,
"cDOiBC1n2QrkAY2P"
,
);
const
{
success
,
data
}
=
await
API
.
submitAnswer
({
chooses
:
roleId
,
// 人设Id
startId
:
this
.
startInfo
.
startId
,
param
:
paramDe
,
});
if
(
success
)
{
this
.
changePage
(
PAGE_MAP
.
RESU_PAGE
,
{
awardTimes
:
data
.
awardTimes
||
0
,
...
...
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