This commit is contained in:
谢思 2022-03-31 10:49:00 +08:00
parent b4edd42197
commit 96f15f3340
5 changed files with 40 additions and 8 deletions

View File

@ -111,6 +111,16 @@ const Qz2022 = (props) => {
referEnd = Date.parse(new Date()) > Date.parse(new Date(qzDetail.upload_date)); referEnd = Date.parse(new Date()) > Date.parse(new Date(qzDetail.upload_date));
} }
function goToRefer(){
if(current_user && !current_user.login){
props.showLoginDialog();
}else if(!enrollStatus.enroll_status){
props.showNotification("您还未报名竞赛!");
}else{
!referStatus ? props.showNotification(!referEnd ? `竞赛尚未开始提交作品,提交作品开始时间为:${qzDetail.enroll_date.substring(0,10)}` :"比赛已结束"):"";
}
}
return ( return (
<React.Fragment> <React.Fragment>
{/* banner图+选项 */} {/* banner图+选项 */}
@ -131,7 +141,7 @@ const Qz2022 = (props) => {
<Link to={{ pathname: applyStatus && current_user && current_user.login ? '/competition/qz2022/apply' :'' }} onClick={()=>{current_user && current_user.login ? !applyStatus && props.showNotification("报名时间已截止") : props.showLoginDialog()}}>参赛报名</Link> <Link to={{ pathname: applyStatus && current_user && current_user.login ? '/competition/qz2022/apply' :'' }} onClick={()=>{current_user && current_user.login ? !applyStatus && props.showNotification("报名时间已截止") : props.showLoginDialog()}}>参赛报名</Link>
</li> </li>
<li className={active === "refer" ? "active" : ""}> <li className={active === "refer" ? "active" : ""}>
<Link to={{ pathname: referStatus && !referEnd && current_user && current_user.login ? `/competition/qz2022/refer` : '' }} onClick={()=>{current_user && current_user.login ? !referStatus ? props.showNotification( !referEnd?"竞赛尚未开始提交作品,提交作品开始时间为:"+qzDetail.enroll_date.substring(0,10) :"比赛已结束") :"" : props.showLoginDialog()}}>提案提交</Link> <Link to={{ pathname: referStatus && !referEnd && current_user && current_user.login && enrollStatus.enroll_date ? `/competition/qz2022/refer` : '' }} onClick={goToRefer}>提案提交</Link>
</li> </li>
{/* <li className={active === "apply" ? "active" : ""}> {/* <li className={active === "apply" ? "active" : ""}>
<Link to={{ pathname: '/competition/qz2022/apply'}}>参赛报名</Link> <Link to={{ pathname: '/competition/qz2022/apply'}}>参赛报名</Link>

View File

@ -96,6 +96,17 @@ export default Form.create()((props) => {
}) })
} }
//
function errorSource(rule, value, callback){
console.log(rule, value, sourceBy);
if(sourceBy === 1 && !value){
//
callback('请正确输入课题来源');
}else{
callback();
}
}
return ( return (
<div className="qz_main"> <div className="qz_main">
<div className="step"> <div className="step">
@ -161,15 +172,16 @@ export default Form.create()((props) => {
</Select> </Select>
)} )}
{qzDetail && qzDetail.is_local && <div className="class_from"> {qzDetail && qzDetail.is_local && <div className="class_from">
<span>课题来源</span>
<Radio.Group onChange={(e)=>{setSourceBy(e.target.value)}} value={sourceBy} defaultValue={1}> <Radio.Group onChange={(e)=>{setSourceBy(e.target.value)}} value={sourceBy} defaultValue={1}>
<Radio value={1}>计划支持</Radio> <Radio value={1}>计划支持</Radio>
<Radio value={0}>自主提报</Radio> <Radio value={0}>自主提报</Radio>
</Radio.Group> </Radio.Group>
{helper('课题来源', {sourceBy === 1 && helper('',
'subject_source_name', 'subject_source_name',
[{ required: true, message: "请正确输入课题来源" }, [{ max: 32, message: '超出限制长度32位字符请重新编辑' },
{ max: 32, message: '超出限制长度32位字符请重新编辑' }], { validator: (rule, value, callback)=>{errorSource(rule, value, callback)}}],
<Input placeholder="请输入项目名称" onBlur={()=>{verify("subject_source_name")}} disabled={sourceBy === 0}/> <Input placeholder="请输入项目名称" onBlur={()=>{verify("subject_source_name")}}/>
)} )}
</div>} </div>}
{helper('电话', {helper('电话',

View File

@ -65,6 +65,18 @@
left: 36%; left: 36%;
top: 10px; top: 10px;
} }
.class_from>span{
position: absolute;
left: 0%;
top: 10px;
}
.class_from .ant-form-item-children{
top: 38px;
}
.class_from .ant-form-explain{
position: absolute;
top: 78px;
}
} }
.info{ .info{
border: 0.5px solid rgba(153, 153, 153, 0.3); border: 0.5px solid rgba(153, 153, 153, 0.3);

View File

@ -5,9 +5,8 @@
.links{ .links{
display: flex; display: flex;
margin: 30px auto; margin: 30px auto;
width: 1200px;
justify-content: space-between; justify-content: space-between;
padding: 24px 120px 30px; padding: 20px 120px;
background-color: white; background-color: white;
div{ div{
display: flex; display: flex;

View File

@ -33,7 +33,6 @@
} }
.contact-content { .contact-content {
text-align: center;
font-size: 1rem; font-size: 1rem;
line-height: 2rem; line-height: 2rem;
margin-bottom: 1rem; margin-bottom: 1rem;