import React from 'react'; import { Icon, message, Row, Col, Spin, Tag, Table } from 'antd'; import './detail.less'; import { getSearchUrl, getAchievementCategory, getDemandType } from '../tools'; import { getProvince } from '../NewDicProvinceList'; import { getTechField } from '../DicTechFieldList'; import ajax from 'jquery/src/ajax/xhr.js' import $ from 'jquery/src/ajax'; import avatarImg from '../../../image/avatarImg.png'; const Content = React.createClass({ loadData() { this.setState({ loading: true }); $.ajax({ method: "get", dataType: "json", url: globalConfig.context + "/api/user/partner/detail", data: { uid: this.state.uid, type: this.state.type } }).done(function (data) { if (data.error && data.error.length) { message.warning(data.error[0].message); } else { this.state.data = data.data || {}; this.state.theField = this.state.type == 0 ? (data.data.engagedField ? data.data.engagedField.split(',') : []) : (data.data.field ? data.data.field.split(',') : []); this.state.theImgsrc = this.state.type == 0 ? (data.data.lifePhotoUrl ? data.data.lifePhotoUrl.split(',') : []) : (data.data.publicityPictureUrl ? data.data.publicityPictureUrl.split(',') : []); } this.setState({ data: this.state.data, theField: this.state.theField, theImgsrc: this.state.theImgsrc, loading: false }); }.bind(this)); }, achievementLoadData(pageNo) { this.setState({ loading: true }); $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/user/partner/achievementList", data: { ownerId: this.state.uid, pageNo: pageNo || 1, pageSize: this.state.achievementPagination.pageSize }, success: function (data) { let theArr = []; if (!data.data || !data.data.list) { if (data.error && data.error.length) { message.warning(data.error[0].message); }; } else { for (let i = 0; i < data.data.list.length; i++) { let thisdata = data.data.list[i]; theArr.push({ key: i, id: thisdata.id, serialNumber: thisdata.serialNumber, dataCategory: thisdata.dataCategory, name: thisdata.name, keyword: thisdata.keyword, category: thisdata.category, ownerType: thisdata.ownerType, releaseDate: thisdata.releaseDate, releaseDateFormattedDate: thisdata.releaseDateFormattedDate, }); }; } this.state.achievementPagination.current = data.data.pageNo; this.state.achievementPagination.total = data.data.totalCount; this.setState({ achievementDataSource: theArr, achievementPagination: this.state.achievementPagination }); }.bind(this), }).always(function () { this.setState({ loading: false }); }.bind(this)); }, demandLoadData(pageNo) { this.setState({ loading: true }); $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/user/partner/demandList", data: { employerId: this.state.uid, pageNo: pageNo || 1, pageSize: this.state.demandPagination.pageSize }, success: function (data) { let theArr = []; if (!data.data || !data.data.list) { if (data.error && data.error.length) { message.warning(data.error[0].message); }; } else { for (let i = 0; i < data.data.list.length; i++) { let thisdata = data.data.list[i]; theArr.push({ key: i, id: thisdata.id, serialNumber: thisdata.serialNumber, dataCategory: thisdata.dataCategory, name: thisdata.name, keyword: thisdata.keyword, releaseDate: thisdata.releaseDate, demandType: thisdata.demandType, validityPeriod: thisdata.validityPeriod, validityPeriodFormattedDate: thisdata.validityPeriodFormattedDate, releaseDateFormattedDate: thisdata.releaseDateFormattedDate }); }; } this.state.demandPagination.current = data.data.pageNo; this.state.demandPagination.total = data.data.totalCount; this.setState({ demandDataSource: theArr, demandPagination: this.state.demandPagination }); }.bind(this), }).always(function () { this.setState({ loading: false }); }.bind(this)); }, interestClick() { this.setState({ loading: true }); $.ajax({ method: "post", dataType: "json", crossDomain: false, url: globalConfig.context + '/api/user/interest/interestUser', data: { toUid: this.state.uid }, success: function (data) { if (data.error && data.error.length) { message.warning(data.error[0].message); } else { this.loadData(); }; }.bind(this), }).always(function () { this.setState({ loading: false }); }.bind(this));; }, cancelInterestClick() { this.setState({ loading: true }); $.ajax({ method: "post", dataType: "json", crossDomain: false, url: globalConfig.context + '/api/user/interest/cancelInterest', data: { id: this.state.data.interestId }, success: function (data) { if (data.error && data.error.length) { message.warning(data.error[0].message); } else { this.loadData(this.props.data.id); }; }.bind(this), }).always(function () { this.setState({ loading: false }); }.bind(this));; }, getInitialState() { return { loading: false, theField: [], data: {}, theImgsrc: [], achievementPagination: { defaultCurrent: 1, defaultPageSize: 10, showQuickJumper: true, pageSize: 10, onChange: function (page) { this.achievementLoadData(page); }.bind(this), showTotal: function (total) { return '共' + total + '条数据'; } }, achievementColumns: [ { title: '编号', dataIndex: 'serialNumber', key: 'serialNumber', }, { title: '名称', dataIndex: 'name', key: 'name', }, { title: '关键字', dataIndex: 'keyword', key: 'keyword', }, { title: '成果类型', dataIndex: 'dataCategory', key: 'dataCategory', render: text => { switch (text) { case "0": return 成果; case "1": return 技术; case "2": return 项目; } } }, { title: '类型', dataIndex: 'category', key: 'category', render: text => { return getAchievementCategory(text); } }, { title: '发布时间', dataIndex: 'releaseDateFormattedDate', key: 'releaseDateFormattedDate', } ], achievementDataSource: [], demandColumns: [ { title: '编号', dataIndex: 'serialNumber', key: 'serialNumber', }, { title: '名称', dataIndex: 'name', key: 'name', }, { title: '关键字', dataIndex: 'keyword', key: 'keyword', }, { title: '需求类型', dataIndex: 'dataCategory', key: 'dataCategory', render: text => { switch (text) { case "0": return 个人需求; case "1": return 单位需求; } } }, { title: '类型', dataIndex: 'demandType', key: 'demandType', render: text => { return getDemandType(text); } }, { title: '发布时间', dataIndex: 'releaseDateFormattedDate', key: 'releaseDateFormattedDate', } ], demandDataSource: [], demandPagination: { defaultCurrent: 1, defaultPageSize: 10, showQuickJumper: true, pageSize: 10, onChange: function (page) { this.demandLoadData(page); }.bind(this), showTotal: function (total) { return '共' + total + '条数据'; } }, }; }, componentWillMount() { if (window.location.search) { let theObj = getSearchUrl(window.location.search); if (theObj.rid && theObj.rid != 'null') { this.state.uid = theObj.rid; this.state.type = theObj.type; this.loadData(); this.achievementLoadData(); this.demandLoadData(); }; }; }, render() { const theData = this.state.data; return (
头像
{theData.interestId ? 不感兴趣 : 感兴趣}
用户名称
{this.state.type == 0 ? theData.username : theData.unitName}
用户类型
{this.state.type == 0 ? '个人' : '组织'}
用户等级
Lv.{theData.level}
所在地
{getProvince(theData.province, theData.city, theData.area)}
专业领域
{getTechField(this.state.theField[0], this.state.theField[1], this.state.theField[2])}
能力标签
{theData.abilityLabel ? theData.abilityLabel.split(',').map((item) => { return {item} }) : ''}
用户介绍
{this.state.type == 0 ? theData.personalProfile : theData.companyIntroduction}
用户展示
{this.state.theImgsrc.map((item, i) => { return })}

用户成果列表

用户需求列表

) } }); export default Content;