Commit 2da66b1e by wangshuo

合并代码

parents 89915984 f590eef5
import React, { Component } from 'react'; import React, { Component } from 'react';
import { Link } from 'react-router-dom';
import ListFrame from './../listFrame/index'; import ListFrame from './../listFrame/index';
import ListHeader from './../listHeader'; import ListHeader from './../listHeader';
import './index.scss'; import './index.scss';
...@@ -48,64 +49,74 @@ class CollectBlessing extends Component { ...@@ -48,64 +49,74 @@ class CollectBlessing extends Component {
} }
render() { render() {
const { handleToShowNotice, handleToShowList, handleToShowInvite, handleToShow } = this.props; const {
isSign,
userInfo: { isLogin = false, blessingVal = 0 },
handleToShowNotice,
handleToShowList,
handleToShowInvite,
handleToShow
} = this.props;
const { rules, welfareRuleList } = this.state; const { rules, welfareRuleList } = this.state;
return ( return (
<>
<div className="collect-blessing"> <div className="collect-blessing">
{ {
this.props.userLogin ? ( isLogin
<ListHeader size="middle" styles={{margin: '20px 0 0 0'}} >{`我的福气值: ${this.props.blessingNumber}`}</ListHeader> ? (
) : ( <ListHeader text={`我的福气值: ${blessingVal}分`} size="middle" styles={{margin: '20px 0 0 0'}} />
)
: (
<ListHeader size="middle" styles={{margin: '20px 0 0 0'}} > <ListHeader size="middle" styles={{margin: '20px 0 0 0'}} >
<span className="text_nologin">我的福气值:</span> <span className="text_nologin">我的福气值:</span>
<div className="login__btn" onClick={this.props.toLogin}>登录</div> <Link to='/passport' className="login__btn">登录</Link>
</ListHeader> </ListHeader>
) )
} }
<p className='activity__over'>活动结束 福气榜前20名可获奖品一份</p> <p className='activity__over'>活动结束 福气榜前20名可获奖品一份</p>
<div className='blessing__rules'> {
{ welfareRuleList.map((item, index) => (
welfareRuleList.map((item, index) => { <div className="rules__item" key={index}>
return <div className="rules__item" key={index}> <div className="item__left">
<div className="item__left"> <div className='tip__bubble'>
<div className='tip__bubble'> <div className="tip__text">福气值</div>
<div className="tip__text">福气值</div> <div className='tip__style'></div>
<div className='tip__style'></div>
</div>
<div className='range__number'>{item.range}</div>
</div>
<div className="item__right">
{
item.rules.map(item => {
return (
<p key={item.id}>
{item.text}
<span>{item.des}</span>
</p>
)
})
}
</div> </div>
<div className='range__number'>{item.range}</div>
</div> </div>
}) <div className="item__right">
} {
</div> item.rules.map(item => {
</div> return (
<div className="collect-blessing"> <p key={item.id}>
<ListHeader text="福气值积攒规则" size="middle" styles={{}} /> {item.text}
<span>{item.des}</span>
</p>
)
})
}
</div>
</div>
))
}
<ListHeader text="福气值积攒规则" size="middle" styles={{margin: '30px 0 0'}} />
{ {
rules.map((item, index) => ( rules.map((item, index) => (
<div className="collect-blessing__item" key={index}> <div className="collect-blessing__item" key={index}>
<i className="collect-blessing__num">{index+1}</i> <i className="collect-blessing__num">{index+1}</i>
<p className="collect-blessing__title">{item}</p> <p className="collect-blessing__title">{item}</p>
{ {
index === 0 && index === 0 && (isLogin && isSign) &&
<a className="collect-blessing__content" onClick={handleToShowNotice}> <a className="collect-blessing__content" onClick={handleToShowNotice}>
点击<br/>签到 +5<br/>福气值
</a> </a>
} }
{ {
index === 0 && (!isLogin || !isSign) &&
<Link to='/passport' className="collect-blessing__content">
点击<br/>签到
</Link>
}
{
index === 1 && index === 1 &&
<a className="collect-blessing__content" onClick={handleToShowNotice}> <a className="collect-blessing__content" onClick={handleToShowNotice}>
关注<br/>二维码 关注<br/>二维码
...@@ -141,7 +152,6 @@ class CollectBlessing extends Component { ...@@ -141,7 +152,6 @@ class CollectBlessing extends Component {
)) ))
} }
</div> </div>
</>
) )
} }
} }
......
...@@ -92,6 +92,7 @@ ...@@ -92,6 +92,7 @@
margin: 10px auto; margin: 10px auto;
text-align: center; text-align: center;
} }
.login__btn { .login__btn {
width:34px; width:34px;
height:18px; height:18px;
...@@ -103,6 +104,7 @@ ...@@ -103,6 +104,7 @@
text-align: center; text-align: center;
margin-right: 12px; margin-right: 12px;
} }
.text_nologin { .text_nologin {
font-size:16px; font-size:16px;
font-weight:600; font-weight:600;
...@@ -115,7 +117,8 @@ ...@@ -115,7 +117,8 @@
background-size: 100% 100%; background-size: 100% 100%;
width: 336px; width: 336px;
padding: 18px 18px 10px 18px; padding: 18px 18px 10px 18px;
margin: 10px auto; margin: 10px auto 0;
box-sizing: border-box;
display: flex; display: flex;
flex-direction: row; flex-direction: row;
justify-content: space-between; justify-content: space-between;
...@@ -175,6 +178,8 @@ ...@@ -175,6 +178,8 @@
p { p {
margin-bottom: 10px; margin-bottom: 10px;
line-height: 1;
&:last-child { &:last-child {
margin-bottom: 0; margin-bottom: 0;
} }
......
...@@ -33,6 +33,8 @@ class BlessingPreheat extends Component { ...@@ -33,6 +33,8 @@ class BlessingPreheat extends Component {
isServer: false, isServer: false,
serverUrl: '', serverUrl: '',
shareMark: false, shareMark: false,
userInfo: {},
isSign: false,
} }
} }
...@@ -41,12 +43,35 @@ class BlessingPreheat extends Component { ...@@ -41,12 +43,35 @@ class BlessingPreheat extends Component {
} }
fetchUserBlessing() { fetchUserBlessing() {
const { userInfo } = this.state;
http.get(`${API.home}/sys/user/blessing`).then(res => { http.get(`${API.home}/sys/user/blessing`).then(res => {
const { code, data } = res.data; const { code, data } = res.data;
if(code === 200) { if(code === 200) {
this.setState({ this.setState({
isFormal: data.is_activity isFormal: data.is_activity,
userInfo: Object.assign({}, userInfo, {
isLogin: !!data.is_login,
blessingVal: data.user_blessing_value,
})
}); });
if(data.is_login === 1) {
this.handleToSign();
}
}
});
}
handleToSign = () => {
console.log(2,2);
http.post(`${API.home}/sys/add/blessing`, {
type: 1 // 1:签到;3:分享;4:浏览课程;
}).then(res => {
const {code } = res.data;
if (code === 200) {
this.setState({
isSign: true,
});
Toast.info('+5点福气值~', 2, null, false);
} }
}); });
} }
...@@ -59,13 +84,17 @@ class BlessingPreheat extends Component { ...@@ -59,13 +84,17 @@ class BlessingPreheat extends Component {
}) })
} }
handleToShow = (key) => { handleToShow = (key, isLogin = false) => {
console.log(key); const { history } = this.props;
let obj = {}; if(isLogin) {
obj[key] = true; history.push('/passport')
this.setState({ }else {
...obj let obj = {};
}); obj[key] = true;
this.setState({
...obj
});
}
} }
handleToShowInvite = () => { handleToShowInvite = () => {
...@@ -114,12 +143,14 @@ class BlessingPreheat extends Component { ...@@ -114,12 +143,14 @@ class BlessingPreheat extends Component {
} }
render() { render() {
const {isRule, isCourse, inviteUrl, inviteVisible, isFormal, isServer, serverUrl, showRecordList, shareMark} = this.state const { userInfo, isRule, isCourse, inviteUrl, inviteVisible, isFormal, isServer, serverUrl, isSign, showRecordList, shareMark} = this.state
return ( return (
<div id={'blessing-preheat'}> <div id={'blessing-preheat'}>
{/* 积福气 */} {/* 积福气 */}
<ListHeader text="积福气,享受更多福利" styles={{margin: '0 0 15px'}} /> <ListHeader text="积福气,享受更多福利" styles={{margin: '0 0 15px'}} />
<CollectBlessing <CollectBlessing
isSign={isSign}
userInfo={userInfo}
handleToShowList={() => this.handleToShow('isCourse')} handleToShowList={() => this.handleToShow('isCourse')}
handleToShowInvite={this.handleToShowInvite} handleToShowInvite={this.handleToShowInvite}
handleToShowNotice={this.handleToShowNotice} handleToShowNotice={this.handleToShowNotice}
......
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