涉及活动的变量、函数、类命名

master
pan 4 years ago
parent 5839a28099
commit 4610001721
  1. 14
      src/entity.ts
  2. 6
      src/index.css
  3. 28
      src/my/MyHelp.tsx
  4. 46
      src/my/MyLeaveWord.tsx
  5. 14
      src/my/SeekHelp.tsx
  6. 86
      src/sub/IndexMenu.tsx
  7. 6
      src/sub/SendHelp.tsx
  8. 20
      src/ui/Activity.tsx

@ -49,22 +49,22 @@ export enum RecommendType {
*/ */
export interface BaseHelp { export interface BaseHelp {
//活动ID //活动ID
activeId:number; activityId:number;
//活动标题 //活动标题
title:string; title:string;
//活动内容 //活动内容
content:string; content:string;
//活动背景图 //活动背景图
activeImg:string; activityImg:string;
} }
//活动详情 //活动详情
export interface ActiveDetail extends BaseHelp{ export interface ActivityDetail extends BaseHelp{
//活动开始时间 //活动开始时间
activeStartTime:number; activityStartTime:number;
//活动结束时间 //活动结束时间
activeEndTime:number; activityEndTime:number;
} }
//我的帮助信息 //我的帮助信息
@ -72,9 +72,9 @@ export interface MyHelpState extends BaseHelp{
//求助时间 //求助时间
seekHelpTime:number; seekHelpTime:number;
//活动开始时间 //活动开始时间
activeStartTime:number; activityStartTime:number;
//活动结束时间 //活动结束时间
activeEndTime:number; activityEndTime:number;
//报名时间 //报名时间
applyTime:number; applyTime:number;
//参与时间 //参与时间

@ -14,7 +14,7 @@
width: 20px; width: 20px;
} }
/*活动背景图尺寸*/ /*活动背景图尺寸*/
.activeImage{ .activityImage{
height: 100px; height: 100px;
width: 100px; width: 100px;
} }
@ -65,7 +65,7 @@
/** /**
* 活动首页正文内容限制 * 活动首页正文内容限制
*/ */
.active-text-limit{ .activity-text-limit{
-webkit-line-clamp:3; -webkit-line-clamp:3;
} }
@ -133,7 +133,7 @@
/** /**
* 活动详情高度 * 活动详情高度
*/ */
.active-detail-height{ .activity-detail-height{
height: 450px; height: 450px;
} }

@ -71,19 +71,19 @@ export class MyHelp extends React.Component<{ undefined?:undefined }, { data:Arr
this.setState({ this.setState({
data:[{ data:[{
//活动Id //活动Id
activeId:123, activityId:123,
//活动标题 //活动标题
title:"活动标题", title:"活动标题",
//活动内容 //活动内容
content:"活动内容", content:"活动内容",
//活动背景图 //活动背景图
activeImg: "logo512.png", activityImg: "logo512.png",
//求助时间 //求助时间
seekHelpTime:new Date().getTime(), seekHelpTime:new Date().getTime(),
//活动开始时间 //活动开始时间
activeStartTime:new Date().getTime(), activityStartTime:new Date().getTime(),
//活动结束时间 //活动结束时间
activeEndTime:new Date().getTime(), activityEndTime:new Date().getTime(),
//报名时间 //报名时间
applyTime:new Date().getTime(), applyTime:new Date().getTime(),
//参与时间 //参与时间
@ -95,19 +95,19 @@ export class MyHelp extends React.Component<{ undefined?:undefined }, { data:Arr
}, },
{ {
//活动Id //活动Id
activeId:123, activityId:123,
//活动标题 //活动标题
title:"活动标题", title:"活动标题",
//活动内容 //活动内容
content:"活动内容", content:"活动内容",
//活动背景图 //活动背景图
activeImg: "logo512.png", activityImg: "logo512.png",
//求助时间 //求助时间
seekHelpTime:new Date().getTime(), seekHelpTime:new Date().getTime(),
//活动开始时间 //活动开始时间
activeStartTime:new Date().getTime(), activityStartTime:new Date().getTime(),
//活动结束时间 //活动结束时间
activeEndTime:new Date().getTime(), activityEndTime:new Date().getTime(),
//报名时间 //报名时间
applyTime:new Date().getTime(), applyTime:new Date().getTime(),
//参与时间 //参与时间
@ -118,19 +118,19 @@ export class MyHelp extends React.Component<{ undefined?:undefined }, { data:Arr
score: Math.ceil(Math.random()*10), score: Math.ceil(Math.random()*10),
},{ },{
//活动Id //活动Id
activeId:123, activityId:123,
//活动标题 //活动标题
title:"活动标题", title:"活动标题",
//活动内容 //活动内容
content:"活动内容", content:"活动内容",
//活动背景图 //活动背景图
activeImg: "logo512.png", activityImg: "logo512.png",
//求助时间 //求助时间
seekHelpTime:new Date().getTime(), seekHelpTime:new Date().getTime(),
//活动开始时间 //活动开始时间
activeStartTime:new Date().getTime(), activityStartTime:new Date().getTime(),
//活动结束时间 //活动结束时间
activeEndTime:new Date().getTime(), activityEndTime:new Date().getTime(),
//报名时间 //报名时间
applyTime:new Date().getTime(), applyTime:new Date().getTime(),
//参与时间 //参与时间
@ -151,7 +151,7 @@ export class MyHelp extends React.Component<{ undefined?:undefined }, { data:Arr
<Container> <Container>
<Row> <Row>
<Col xs={4}> <Col xs={4}>
<Image src={help.activeImg} className="activeImage"/> <Image src={help.activityImg} className="activityImage"/>
</Col> </Col>
<Col> <Col>
<h5>{help.title}</h5> <h5>{help.title}</h5>
@ -164,7 +164,7 @@ export class MyHelp extends React.Component<{ undefined?:undefined }, { data:Arr
)} )}
</Row> </Row>
<Row> <Row>
{[help.seekHelpTime,help.activeStartTime,help.activeEndTime].map((time:number,index:number)=> {[help.seekHelpTime,help.activityStartTime,help.activityEndTime].map((time:number, index:number)=>
<Col className="border-info border" key={"col"+index}>{moment(time).format("YYYY-MM-DD HH:mm:ss")}</Col> <Col className="border-info border" key={"col"+index}>{moment(time).format("YYYY-MM-DD HH:mm:ss")}</Col>
)} )}
</Row> </Row>

@ -1,10 +1,10 @@
import React from "react"; import React from "react";
import {Button, Col, Container, Image, Row} from "react-bootstrap"; import {Button, Col, Container, Image, Row} from "react-bootstrap";
import {ActiveDetail, User} from "../entity"; import {ActivityDetail, User} from "../entity";
import {Tooltip} from "@material-ui/core"; import {Tooltip} from "@material-ui/core";
import {MyDialog} from "../ui/MyDialog"; import {MyDialog} from "../ui/MyDialog";
import {MyInfo} from "./MyInfo"; import {MyInfo} from "./MyInfo";
import {Active} from "../ui/Active"; import {Activity} from "../ui/Activity";
import {userObj} from "../ui/TestData"; import {userObj} from "../ui/TestData";
enum LeaveWordType { enum LeaveWordType {
@ -16,7 +16,7 @@ enum LeaveWordType {
} }
interface Type1{ interface Type1{
active:ActiveDetail; activity:ActivityDetail;
user:User; user:User;
type:LeaveWordType; type:LeaveWordType;
} }
@ -38,16 +38,16 @@ export class MyLeaveWord extends React.Component<{ user:string },
//用户id //用户id
userId?:string; userId?:string;
//打开活动信息弹框 //打开活动信息弹框
openActive:boolean; openActivity:boolean;
//活动详情 //活动详情
active?:ActiveDetail; activity?:ActivityDetail;
}>{ }>{
constructor(props: Readonly<any>) { constructor(props: Readonly<any>) {
super(props); super(props);
this.state={data:[],openUserInfo:false,openActive:false} this.state={data:[],openUserInfo:false,openActivity:false}
} }
componentDidMount() { componentDidMount() {
@ -62,25 +62,25 @@ export class MyLeaveWord extends React.Component<{ user:string },
data:[ data:[
{ {
user:userObj, user:userObj,
active:{ activity:{
activeId:1, activityId:1,
title:"活动标题1", title:"活动标题1",
content:"活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动", content:"活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动",
activeImg:"logo512.png", activityImg:"logo512.png",
activeStartTime:new Date().getTime(), activityStartTime:new Date().getTime(),
activeEndTime:new Date().getTime() activityEndTime:new Date().getTime()
}, },
type:LeaveWordType.recommend type:LeaveWordType.recommend
}, },
{ {
user:userObj, user:userObj,
active:{ activity:{
activeId:1, activityId:1,
title:"活动标题1", title:"活动标题1",
content:"活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动", content:"活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动活动内容活动内容活动",
activeImg:"logo512.png", activityImg:"logo512.png",
activeStartTime:new Date().getTime(), activityStartTime:new Date().getTime(),
activeEndTime:new Date().getTime() activityEndTime:new Date().getTime()
}, },
type:LeaveWordType.apply type:LeaveWordType.apply
}, },
@ -113,16 +113,16 @@ export class MyLeaveWord extends React.Component<{ user:string },
*/ */
getData(data:Type1|Type2,index:number){ getData(data:Type1|Type2,index:number){
let body let body
if("active" in data ){ if("activity" in data ){
body=<Col> body=<Col>
<div> <div>
<h5 className="text-center">{data.active.title}</h5> <h5 className="text-center">{data.activity.title}</h5>
</div> </div>
<div> <div>
<p className="text-ellipsis leave-word-height">{data.active.content}</p> <p className="text-ellipsis leave-word-height">{data.activity.content}</p>
</div> </div>
<div className="text-center"> <div className="text-center">
<Button variant={"primary"} onClick={()=>this.setState({openActive:true,active:data.active})}></Button> <Button variant={"primary"} onClick={()=>this.setState({openActivity:true,activity:data.activity})}></Button>
</div> </div>
</Col> </Col>
}else{ }else{
@ -174,9 +174,9 @@ export class MyLeaveWord extends React.Component<{ user:string },
content={<MyInfo ownUserId={this.props.user} isOwn={false} isMyFriend={false} isAdd={false} userId={this.state.userId}/>} content={<MyInfo ownUserId={this.props.user} isOwn={false} isMyFriend={false} isAdd={false} userId={this.state.userId}/>}
open={this.state.openUserInfo} onClose={()=>this.setState({openUserInfo:false})}/> open={this.state.openUserInfo} onClose={()=>this.setState({openUserInfo:false})}/>
{this.state.active?<MyDialog content={<Active active={this.state.active} showButton={false} />} {this.state.activity?<MyDialog content={<Activity activity={this.state.activity} showButton={false} />}
open={this.state.openActive} titleId="view-active" menuName="活动详情" open={this.state.openActivity} titleId="view-activity" menuName="活动详情"
onClose={()=>this.setState({active:undefined,openActive:false})}/>:null} onClose={()=>this.setState({activity:undefined,openActivity:false})}/>:null}
</div> </div>
); );
} }

@ -58,34 +58,34 @@ export class SeekHelp extends React.Component<{ user:string },
applyVolunteerList: [userObj,userObj], applyVolunteerList: [userObj,userObj],
completeVolunteerList: [], completeVolunteerList: [],
joinVolunteerList: [], joinVolunteerList: [],
activeImg: "logo512.png", activityImg: "logo512.png",
content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容", content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容",
time: new Date().getTime(), time: new Date().getTime(),
title:"活动标题", title:"活动标题",
//活动Id //活动Id
activeId:123, activityId:123,
}, },
{ {
applyVolunteerList: [], applyVolunteerList: [],
completeVolunteerList: [], completeVolunteerList: [],
joinVolunteerList: [], joinVolunteerList: [],
activeImg: "logo512.png", activityImg: "logo512.png",
content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容", content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容",
time: new Date().getTime(), time: new Date().getTime(),
title:"活动标题", title:"活动标题",
//活动Id //活动Id
activeId:123, activityId:123,
}, },
{ {
applyVolunteerList: [], applyVolunteerList: [],
completeVolunteerList: [], completeVolunteerList: [],
joinVolunteerList: [], joinVolunteerList: [],
activeImg: "logo512.png", activityImg: "logo512.png",
content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容", content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容",
time: new Date().getTime(), time: new Date().getTime(),
title:"活动标题", title:"活动标题",
//活动Id //活动Id
activeId:123, activityId:123,
} }
]}) ]})
@ -101,7 +101,7 @@ export class SeekHelp extends React.Component<{ user:string },
<Container> <Container>
<Row> <Row>
<Col xs={4}> <Col xs={4}>
<Image src={help.activeImg} className="activeImage"/> <Image src={help.activityImg} className="activityImage"/>
</Col> </Col>
<Col> <Col>
<h5>{help.title}</h5> <h5>{help.title}</h5>

@ -2,9 +2,9 @@ import React from "react";
import {Button, Card, Col, Container, ListGroup, Row} from "react-bootstrap"; import {Button, Card, Col, Container, ListGroup, Row} from "react-bootstrap";
import {Page} from "../ui/Page"; import {Page} from "../ui/Page";
import {ActiveDetail, BaseHelp, PageProps} from "../entity"; import {ActivityDetail, BaseHelp, PageProps} from "../entity";
import {MyDialog} from "../ui/MyDialog"; import {MyDialog} from "../ui/MyDialog";
import {Active} from "../ui/Active"; import {Activity} from "../ui/Activity";
import {Input} from "../ui/InputGroup"; import {Input} from "../ui/InputGroup";
/** /**
@ -13,13 +13,13 @@ import {Input} from "../ui/InputGroup";
export class IndexMenu extends React.Component<{ user:string }, export class IndexMenu extends React.Component<{ user:string },
{ {
//活动数据 //活动数据
activeList:Array<Array<BaseHelp>>; activityList:Array<Array<BaseHelp>>;
//分页信息 //分页信息
page:PageProps; page:PageProps;
//活动 //活动
active?:ActiveDetail; activity?:ActivityDetail;
//打开活动 //打开活动
openActive:boolean; openActivity:boolean;
//检索活动标题 //检索活动标题
title:string; title:string;
}>{ }>{
@ -30,41 +30,41 @@ export class IndexMenu extends React.Component<{ user:string },
super(props); super(props);
this.state={ this.state={
activeList:[], activityList:[],
page:{ page:{
currentPage:1, currentPage:1,
totalPage:3, totalPage:3,
pageSize:9 pageSize:9
}, },
openActive:false, openActivity:false,
title:"" title:""
} }
} }
componentDidMount() { componentDidMount() {
this.loadActive(1) this.loadActivity(1)
} }
/** /**
* *
* @param activeId * @param activityId
*/ */
applyActive(activeId:number){ applyActivity(activityId:number){
console.debug("报名活动"+activeId) console.debug("报名活动"+activityId)
} }
/** /**
* *
* @param activeId * @param activityId
*/ */
loadActiveWithId(activeId:number):ActiveDetail{ loadActivityWithId(activityId:number):ActivityDetail{
return { return {
activeId:123, activityId:123,
activeImg:"logo512.png", activityImg:"logo512.png",
content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容", content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容",
title: "标题标题标题标题标题标题标题", title: "标题标题标题标题标题标题标题",
activeEndTime:new Date().getTime(), activityEndTime:new Date().getTime(),
activeStartTime:new Date().getTime() activityStartTime:new Date().getTime()
} }
} }
@ -72,85 +72,85 @@ export class IndexMenu extends React.Component<{ user:string },
* *
* @param page * @param page
*/ */
loadActive(page:number){ loadActivity(page:number){
console.debug("检索活动关键字:"+this.state.title) console.debug("检索活动关键字:"+this.state.title)
this.setState({ this.setState({
activeList:[[{ activityList:[[{
activeId: 123, activityId: 123,
//活动标题 //活动标题
title: "活动标题", title: "活动标题",
//活动内容 //活动内容
content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容", content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容",
//活动图片 //活动图片
activeImg: "/logo512.png" activityImg: "/logo512.png"
},{ },{
activeId: 123, activityId: 123,
//活动标题 //活动标题
title: "活动标题", title: "活动标题",
//活动内容 //活动内容
content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容", content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容",
//活动图片 //活动图片
activeImg: "/logo512.png" activityImg: "/logo512.png"
},{ },{
activeId: 123, activityId: 123,
//活动标题 //活动标题
title: "活动标题", title: "活动标题",
//活动内容 //活动内容
content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容", content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容",
//活动图片 //活动图片
activeImg: "/logo512.png" activityImg: "/logo512.png"
}],[{ }],[{
activeId: 123, activityId: 123,
//活动标题 //活动标题
title: "活动标题", title: "活动标题",
//活动内容 //活动内容
content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容", content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容",
//活动图片 //活动图片
activeImg: "/logo512.png" activityImg: "/logo512.png"
},{ },{
activeId: 123, activityId: 123,
//活动标题 //活动标题
title: "活动标题", title: "活动标题",
//活动内容 //活动内容
content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容", content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容",
//活动图片 //活动图片
activeImg: "/logo512.png" activityImg: "/logo512.png"
},{ },{
activeId: 123, activityId: 123,
//活动标题 //活动标题
title: "活动标题", title: "活动标题",
//活动内容 //活动内容
content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容", content: "活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容活动内容",
//活动图片 //活动图片
activeImg: "/logo512.png" activityImg: "/logo512.png"
}]] }]]
}) })
} }
render() { render() {
const rowList=this.state.activeList.map((actives:Array<BaseHelp>, index:number)=> const rowList=this.state.activityList.map((activities:Array<BaseHelp>, index:number)=>
<Row className="p-3" key={"row"+index}>{actives.map((active:BaseHelp, subIndex:number)=> <Row className="p-3" key={"row"+index}>{activities.map((activity:BaseHelp, subIndex:number)=>
<Col className="col-4" key={"col"+subIndex}> <Col className="col-4" key={"col"+subIndex}>
<Card> <Card>
<Card.Header> <Card.Header>
<img src={active.activeImg} alt="活动图片" className="activeImage"/> <img src={activity.activityImg} alt="活动图片" className="activityImage"/>
</Card.Header> </Card.Header>
<Card.Body> <Card.Body>
<ListGroup> <ListGroup>
<ListGroup.Item className="bg-info" style={{color:"white",fontWeight:"bold"}}> <ListGroup.Item className="bg-info" style={{color:"white",fontWeight:"bold"}}>
{active.title} {activity.title}
</ListGroup.Item> </ListGroup.Item>
<ListGroup.Item> <ListGroup.Item>
<p className="active-text-limit text-ellipsis">{active.content}</p> <p className="activity-text-limit text-ellipsis">{activity.content}</p>
</ListGroup.Item> </ListGroup.Item>
</ListGroup> </ListGroup>
</Card.Body> </Card.Body>
<Card.Footer> <Card.Footer>
<Button variant={"info"} onClick={()=>this.setState({ <Button variant={"info"} onClick={()=>this.setState({
active:this.loadActiveWithId(active.activeId), activity:this.loadActivityWithId(activity.activityId),
openActive:true openActivity:true
})} className="mr-2"></Button> })} className="mr-2"></Button>
<Button variant="primary" ></Button> <Button variant="primary" ></Button>
</Card.Footer> </Card.Footer>
@ -165,7 +165,7 @@ export class IndexMenu extends React.Component<{ user:string },
<Input name="keyword" desc="活动标题" onChange={(value:string)=>this.setState({title:value})}/> <Input name="keyword" desc="活动标题" onChange={(value:string)=>this.setState({title:value})}/>
<Button className="mt-3 mb-3" variant={"info"} onClick={()=>this.loadActive(1)}></Button> <Button className="mt-3 mb-3" variant={"info"} onClick={()=>this.loadActivity(1)}></Button>
{/*<Page onClick={(page:number)=>this.loadActive(page)} currentPage={this.state.page.currentPage} totalPage={this.state.page.totalPage} pageSize={this.state.page.pageSize}/>*/} {/*<Page onClick={(page:number)=>this.loadActive(page)} currentPage={this.state.page.currentPage} totalPage={this.state.page.totalPage} pageSize={this.state.page.pageSize}/>*/}
@ -173,11 +173,11 @@ export class IndexMenu extends React.Component<{ user:string },
{rowList} {rowList}
<Page onClick={(page:number)=>this.loadActive(page)} currentPage={this.state.page.currentPage} totalPage={this.state.page.totalPage} pageSize={this.state.page.pageSize}/> <Page onClick={(page:number)=>this.loadActivity(page)} currentPage={this.state.page.currentPage} totalPage={this.state.page.totalPage} pageSize={this.state.page.pageSize}/>
{this.state.active?<MyDialog content={<Active active={this.state.active} showButton={true} applyFunction={(activeId:number)=>this.applyActive(activeId)} />} {this.state.activity?<MyDialog content={<Activity activity={this.state.activity} showButton={true} applyFunction={(activeId:number)=>this.applyActivity(activeId)} />}
open={this.state.openActive} titleId="view-active" menuName="活动详情" open={this.state.openActivity} titleId="view-active" menuName="活动详情"
onClose={()=>this.setState({active:undefined,openActive:false})}/>:null} onClose={()=>this.setState({activity:undefined,openActivity:false})}/>:null}
</Container> </Container>
) )

@ -41,12 +41,12 @@ export class SendHelp extends React.Component<{ undefined?:undefined }, SendHelp
const time=moment() const time=moment()
this.state={ this.state={
//活动Id //活动Id
activeId:123, activityId:123,
title:"", title:"",
content:"", content:"",
startTime:time.add({days:1}).format("YYYY-MM-DD HH:mm:ss"), startTime:time.add({days:1}).format("YYYY-MM-DD HH:mm:ss"),
endTime:time.add({days:7}).format("YYYY-MM-DD HH:mm:ss"), endTime:time.add({days:7}).format("YYYY-MM-DD HH:mm:ss"),
activeImg:"上传活动背景图", activityImg:"上传活动背景图",
address: "", address: "",
recommendType: RecommendType.no, recommendType: RecommendType.no,
friendList:[], friendList:[],
@ -120,7 +120,7 @@ export class SendHelp extends React.Component<{ undefined?:undefined }, SendHelp
}} dateFormat="YYYY-MM-DD" timeFormat="HH:mm:ss"/> }} dateFormat="YYYY-MM-DD" timeFormat="HH:mm:ss"/>
</InputGroup> </InputGroup>
<UploadImg fileImg={this.fileImg} maxImageSize={maxImageSize} onChange={(value:string)=>this.setState({activeImg:value})} imageName={this.state.activeImg}/> <UploadImg fileImg={this.fileImg} maxImageSize={maxImageSize} onChange={(value:string)=>this.setState({activityImg:value})} imageName={this.state.activityImg}/>
{/*服务地点*/} {/*服务地点*/}
<Address onChange={(value:string)=>this.setState({address:value})}/> <Address onChange={(value:string)=>this.setState({address:value})}/>

@ -1,14 +1,14 @@
import React from "react"; import React from "react";
import {Button, Image} from "react-bootstrap"; import {Button, Image} from "react-bootstrap";
import {ActiveDetail} from "../entity"; import {ActivityDetail} from "../entity";
import moment from "moment"; import moment from "moment";
/** /**
* *
*/ */
export class Active extends React.Component< export class Activity extends React.Component<
{ {
active:ActiveDetail; activity:ActivityDetail;
/** /**
* *
*/ */
@ -21,13 +21,13 @@ export class Active extends React.Component<
render() { render() {
return ( return (
<div className="overflow-auto active-detail-height"> <div className="overflow-auto activity-detail-height">
<Image className="mb-3" src={this.props.active.activeImg}/> <Image className="mb-3" src={this.props.activity.activityImg}/>
<h3 className="text-center">{this.props.active.title}</h3> <h3 className="text-center">{this.props.activity.title}</h3>
<p className="p-2">{this.props.active.content}</p> <p className="p-2">{this.props.activity.content}</p>
<h5 className="text-center">{"活动开始时间:"+moment(this.props.active.activeStartTime).format("YYYY-MM-DD HH:mm:ss")}</h5> <h5 className="text-center">{"活动开始时间:"+moment(this.props.activity.activityStartTime).format("YYYY-MM-DD HH:mm:ss")}</h5>
<h5 className="text-center mb-3">{"活动结束时间:"+moment(this.props.active.activeStartTime).format("YYYY-MM-DD HH:mm:ss")}</h5> <h5 className="text-center mb-3">{"活动结束时间:"+moment(this.props.activity.activityStartTime).format("YYYY-MM-DD HH:mm:ss")}</h5>
{this.props.showButton?<div className="text-center"><Button onClick={()=>this.props.applyFunction?this.props.applyFunction(this.props.active.activeId):null}></Button></div>:null} {this.props.showButton?<div className="text-center"><Button onClick={()=>this.props.applyFunction?this.props.applyFunction(this.props.activity.activityId):null}></Button></div>:null}
</div> </div>
); );
} }
Loading…
Cancel
Save