|
@@ -9,38 +9,155 @@ class Collection extends Component {
|
|
|
this.state = {
|
|
|
loading:false,
|
|
|
current:1,
|
|
|
- nub:'3'
|
|
|
+ nub:'1'
|
|
|
};
|
|
|
}
|
|
|
- loadData(page,nub){
|
|
|
- // this.setState({
|
|
|
- // loading:true,
|
|
|
- // })
|
|
|
- //https://www.apiopen.top/satinApi
|
|
|
- // axios.get('api/tic',{
|
|
|
- // params:{
|
|
|
- // type:1,
|
|
|
- // page:page
|
|
|
- // }
|
|
|
- // })
|
|
|
- // .then(data=>{
|
|
|
- // let thisdata=data.data.data;
|
|
|
- // this.setState({
|
|
|
- // loading:false,
|
|
|
- // thisdata:thisdata,
|
|
|
- // total:100
|
|
|
- // })
|
|
|
- // })
|
|
|
- // .catch(error=>{
|
|
|
- // message(error.error)
|
|
|
- // })
|
|
|
+ //服务
|
|
|
+ loadDataService(page){
|
|
|
+ this.setState({
|
|
|
+ loading:true,
|
|
|
+ })
|
|
|
+ let url = globalConfig.context + '/api/user/portal/listProjectIInterestedIn'
|
|
|
+ axios.get(url,{
|
|
|
+ params:{
|
|
|
+ pageNo:page||1,
|
|
|
+ pageSize:8
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .then(data=>{
|
|
|
+ let theData=data.data.data,
|
|
|
+ theArr = [],
|
|
|
+ times = new Date().getTime(),
|
|
|
+ days = parseInt(times / (1000 * 60 * 60 * 24));
|
|
|
+ if (!data.data || !data.data.data.list) {
|
|
|
+ if (data.data.error && data.data.error.length) {
|
|
|
+ message.warning(data.data.error[0].message);
|
|
|
+ };
|
|
|
+ } else {
|
|
|
+ for (let i = 0; i < theData.list.length; i++) {
|
|
|
+ let thisdata = theData.list[i],
|
|
|
+ create = parseInt(thisdata.createTime / (1000 * 60 * 60 * 24));
|
|
|
+ let newState = (days-create)<7?true:false;
|
|
|
+ theArr.push({
|
|
|
+ key: i,
|
|
|
+ id: thisdata.id,
|
|
|
+ newState:newState,
|
|
|
+ name:thisdata.name,
|
|
|
+ introduce:thisdata.introduce&&thisdata.introduce.length>40?thisdata.introduce.substr(0,40)+'...':'',
|
|
|
+ img: thisdata.maxImgUrl, //编号
|
|
|
+ });
|
|
|
+ };
|
|
|
+ };
|
|
|
+ this.setState({
|
|
|
+ loading:false,
|
|
|
+ dataList:theArr,
|
|
|
+ total:data.data.data.totalCount
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }
|
|
|
+ //成果
|
|
|
+ loadDataAchievement(page){
|
|
|
+ this.setState({
|
|
|
+ loading:true,
|
|
|
+ })
|
|
|
+ let url = globalConfig.context + '/api/user/portal/listAchievementIInterestedIn'
|
|
|
+ axios.get(url,{
|
|
|
+ params:{
|
|
|
+ pageNo:page||1,
|
|
|
+ pageSize:8
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .then(data=>{
|
|
|
+ let theData=data.data.data,
|
|
|
+ theArr = [],
|
|
|
+ times = new Date().getTime(),
|
|
|
+ days = parseInt(times / (1000 * 60 * 60 * 24));
|
|
|
+ if (!data.data || !data.data.data.list) {
|
|
|
+ if (data.data.error && data.data.error.length) {
|
|
|
+ message.warning(data.data.error[0].message);
|
|
|
+ };
|
|
|
+ } else {
|
|
|
+ for (let i = 0; i < theData.list.length; i++) {
|
|
|
+ let thisdata = theData.list[i],
|
|
|
+ create = parseInt(thisdata.releaseDate / (1000 * 60 * 60 * 24));
|
|
|
+ let newState = (days-create)<7?true:false;
|
|
|
+ theArr.push({
|
|
|
+ key: i,
|
|
|
+ id: thisdata.id,
|
|
|
+ newState:newState,
|
|
|
+ name:thisdata.name,
|
|
|
+ introduce:thisdata.introduction&&thisdata.introduction.length>40?thisdata.introduction.substr(0,40)+'...':'',
|
|
|
+ img: thisdata.firstPicture, //编号
|
|
|
+ });
|
|
|
+ };
|
|
|
+ };
|
|
|
+ this.setState({
|
|
|
+ loading:false,
|
|
|
+ dataList:theArr,
|
|
|
+ total:data.data.data.totalCount
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }
|
|
|
+ //需求
|
|
|
+ loadDataDemand(page){
|
|
|
+ this.setState({
|
|
|
+ loading:true,
|
|
|
+ })
|
|
|
+ let url = globalConfig.context + '/api/user/portal/listDemandIInterestedIn'
|
|
|
+ axios.get(url,{
|
|
|
+ params:{
|
|
|
+ pageNo:page||1,
|
|
|
+ pageSize:8
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .then(data=>{
|
|
|
+ let theData=data.data.data,
|
|
|
+ theArr = [],
|
|
|
+ times = new Date().getTime(),
|
|
|
+ days = parseInt(times / (1000 * 60 * 60 * 24));
|
|
|
+ if (!data.data || !data.data.data.list) {
|
|
|
+ if (data.data.error && data.data.error.length) {
|
|
|
+ message.warning(data.data.error[0].message);
|
|
|
+ };
|
|
|
+ } else {
|
|
|
+ for (let i = 0; i < theData.list.length; i++) {
|
|
|
+ let thisdata = theData.list[i],
|
|
|
+ create = parseInt(thisdata.releaseDate / (1000 * 60 * 60 * 24));
|
|
|
+ let newState = (days-create)<7?true:false;
|
|
|
+ console.log(thisdata.firstPic)
|
|
|
+ theArr.push({
|
|
|
+ key: i,
|
|
|
+ id: thisdata.id,
|
|
|
+ newState:newState,
|
|
|
+ name:thisdata.name,
|
|
|
+ introduce:thisdata.problemDes&&thisdata.problemDes.length>40?thisdata.problemDes.substr(0,40)+'...':'',
|
|
|
+ img: thisdata.firstPic, //编号
|
|
|
+ });
|
|
|
+ };
|
|
|
+ };
|
|
|
+ this.setState({
|
|
|
+ loading:false,
|
|
|
+ dataList:theArr,
|
|
|
+ total:data.data.data.totalCount
|
|
|
+ })
|
|
|
+ })
|
|
|
}
|
|
|
componentWillMount(){
|
|
|
- this.loadData()
|
|
|
+ this.loadDataService(1)
|
|
|
}
|
|
|
tabFun(e){
|
|
|
this.setState({ nub: e.target.value })
|
|
|
- this.loadData(1,e.target.value)
|
|
|
+ switch(e.target.value){
|
|
|
+ case '1':
|
|
|
+ this.loadDataService(1)
|
|
|
+ break;
|
|
|
+ case '2':
|
|
|
+ this.loadDataDemand(1)
|
|
|
+ break;
|
|
|
+ case '3':
|
|
|
+ this.loadDataAchievement(1)
|
|
|
+ break;
|
|
|
+ }
|
|
|
}
|
|
|
//分页
|
|
|
onShowSizeChange(current, pageSize){
|
|
@@ -48,36 +165,58 @@ class Collection extends Component {
|
|
|
current:current,
|
|
|
pageSize:pageSize
|
|
|
})
|
|
|
- this.loadData(current);
|
|
|
+ switch(this.state.nub){
|
|
|
+ case '1':
|
|
|
+ this.loadDataService(current)
|
|
|
+ break;
|
|
|
+ case '2':
|
|
|
+ this.loadDataDemand(current)
|
|
|
+ break;
|
|
|
+ case '3':
|
|
|
+ this.loadDataAchievement(current)
|
|
|
+ break;
|
|
|
+ }
|
|
|
}
|
|
|
jump(item){
|
|
|
- console.log(item);
|
|
|
+ let url='';
|
|
|
+ switch(this.state.nub){
|
|
|
+ case '1':
|
|
|
+ url = globalConfig.context+`/portal/service/serviceDetail?id=${item.id}`;
|
|
|
+ break;
|
|
|
+ case '2':
|
|
|
+ url=globalConfig.context+`/portal/technologyTrading/demandDetail?id=${item.id}&type=0`;
|
|
|
+ break;
|
|
|
+ case '3':
|
|
|
+ url=globalConfig.context+`/portal/technologyTrading/achievementDetail?id=${item.id}&type=1`;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ window.open(url);
|
|
|
}
|
|
|
render() {
|
|
|
- const thisdata =this.state.thisdata || [];
|
|
|
- thisdata.length=8;
|
|
|
+ const dataList =this.state.dataList || [];
|
|
|
return <div className="user-content">
|
|
|
<div className="title" >
|
|
|
我的收藏
|
|
|
</div>
|
|
|
<div>
|
|
|
<Radio.Group className="btnGroup" value={this.state.nub} onChange={this.tabFun.bind(this)}>
|
|
|
- <Radio.Button value="1">需求中心</Radio.Button>
|
|
|
- <Radio.Button value="2">技术市场</Radio.Button>
|
|
|
- <Radio.Button value="3">科技服务</Radio.Button>
|
|
|
- <Radio.Button value="4">模块名称</Radio.Button>
|
|
|
+ <Radio.Button value="1">科技服务</Radio.Button>
|
|
|
+ <Radio.Button value="2">科技需求</Radio.Button>
|
|
|
+ <Radio.Button value="3">科技成果</Radio.Button>
|
|
|
</Radio.Group>
|
|
|
</div>
|
|
|
<div className="imgList">
|
|
|
<Spin spinning={this.state.loading}>
|
|
|
- {thisdata.length?<Row>
|
|
|
- {thisdata.map((item,index)=>{
|
|
|
+ {dataList.length?<Row>
|
|
|
+ {dataList.map((item,index)=>{
|
|
|
return<Col span={6} key={index} onClick={(e)=>{this.jump(item)}}>
|
|
|
<div className="img">
|
|
|
<div className="imgHeader">
|
|
|
- <img src={item.cdn_img} alt=""/>
|
|
|
- <span className="new"></span>
|
|
|
- <div><p>{item.text}</p></div>
|
|
|
+ <div className="imgBj">
|
|
|
+ {item.img?<img src={globalConfig.avatarHost+'/upload'+item.img} alt=""/>:''}
|
|
|
+ </div>
|
|
|
+ {item.newState&&<span className="new"></span>}
|
|
|
+ <div className="divP"><p>{item.introduce?item.introduce:'暂无'}</p></div>
|
|
|
</div>
|
|
|
<p className="txt">{item.name}</p>
|
|
|
</div>
|
|
@@ -85,9 +224,9 @@ class Collection extends Component {
|
|
|
})
|
|
|
}
|
|
|
</Row>:
|
|
|
- <Row>暂无数据</Row>}
|
|
|
+ <Row style={{color:'#333'}}>暂无数据</Row>}
|
|
|
</Spin>
|
|
|
- {this.state.total&&<Pagination className="page" current={this.state.current} total={this.state.total} onChange={this.onShowSizeChange.bind(this)}/>}
|
|
|
+ {this.state.total?<Pagination className="page" pageSize={8} current={this.state.current} total={this.state.total} onChange={this.onShowSizeChange.bind(this)}/>:''}
|
|
|
</div>
|
|
|
|
|
|
</div>
|