import React from 'react';
import {
	Radio,
	Icon,
	Button,
	AutoComplete,
	Cascader,
	Input,
	Select,
	Spin,
	Popconfirm,
	Table,
	Switch,
	message,
	DatePicker,
	Upload,
	Form,
	Modal,
	Tabs,
	Tag, Tooltip
} from 'antd';
import ajax from 'jquery/src/ajax/xhr.js';
import $ from 'jquery/src/ajax';
import moment from 'moment';
import TechAchievementDesc from '@/manageCenter/achievement/crmAchievement.jsx';
import { citySelect, provinceList, areaSelect } from '@/NewDicProvinceList';
import { socialAttribute, industry, auditStatusL, lvl, currentMember, slcRedit, dataGrade } from '@/dataDic.js';
import { getSocialAttribute, beforeUploadFile, splitUrl, getSlcRedit, getDataGrade, getAchievementCategory, getTechAuditStatus, getboutique, getXiangmoState, onReplace } from '@/tools.js';
import './customer.less';
import ImgList from "../../../../common/imgList";
import { ChooseList } from "../../../order/orderNew/chooseList";
import EnterpriseNameChange from "../../../../common/enterpriseNameChange";
const TabPane = Tabs.TabPane;
//图片组件
const PicturesWall = React.createClass({
	getInitialState() {
		return {
			previewVisible: false,
			previewImage: '',
			fileList: [],
		}
	},
	handleCancel() {
		this.setState({
			previewVisible: false
		})
	},
	handlePreview(file) {
		this.setState({
			previewImage: file.url || file.thumbUrl,
			previewVisible: true,
		});
	},
	handleChange(info) {
		let fileList = info.fileList;
		this.setState({
			fileList
		});
		this.props.fileList(fileList);
	},
	componentWillReceiveProps(nextProps) {
		this.state.fileList = nextProps.pictureUrl;
	},
	render() {
		const {
			previewVisible,
			previewImage,
			fileList
		} = this.state;
		const uploadButton = (
			<div>
				<Icon type="plus" />
				<div className="ant-upload-text">点击上传</div>
			</div>
		);
		return (
			<div style={{ display: "inline-block" }}>
				<ImgList
					domId={this.props.domId}
					uploadConfig={{
						action: globalConfig.context + "/api/admin/customer/uploadCustomerImg",
						data: { 'sign': '' },
						multiple: true,
						listType: "picture-card",
					}}
					onChange={(infor) => {
						this.handleChange(infor)
					}}
					fileList={fileList}
				/>
			</div>
		);
	}
});
const IntentionCustomer = Form.create()(React.createClass({
	loadData(pageNo, apiUrl) {
		this.setState({
			visitModul: false,
			loading: true,
			ispage: pageNo,
			modalVisible: false
		});
		$.ajax({
			method: "post",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + "/api/admin/customer/listDepCustomerInformation",
			data: {
				pageNo: pageNo || 1,
				pageSize: this.state.pagination.pageSize,
				name: this.state.nameSearch,
				dataGrade: this.state.dataGrade,
				province: !(this.state.addressSearch).length ? this.state.provinceSearch : this.state.addressSearch[0],
				city: !(this.state.addressSearch).length ? '' : this.state.addressSearch[1],
				startDate: this.state.releaseDate[0],
				endDate: this.state.releaseDate[1],
			},
			success: function (data) {
				let theArr = [];
				if (data.error.length || 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];
						let diqu = (thisdata.province == null ? "" : thisdata.province) + (thisdata.city == null ? "" : "-" + thisdata.city) + (thisdata.area == null ? "" : "-" + thisdata.area);
						theArr.push({
							key: i,
							id: thisdata.id,//用户ID
							type: thisdata.type,//类型
							name: thisdata.name,//用户名称
							diqu: diqu,//省市区
							industry: thisdata.industry,//行业
							contacts: thisdata.contacts,//联系人
							iname: thisdata.iname,//客户资料所属人
							dataGrade: thisdata.dataGrade ? (thisdata.dataGrade * 100).toFixed(2) + "%" : "",//资料完整度
							contactMobile: thisdata.contactMobile,//联系人电话
							createTime: thisdata.createTime,//行业
						});
					};
					this.state.pagination.current = data.data.pageNo;
					this.state.pagination.total = data.data.totalCount;
				};
				if (data.data && data.data.list && !data.data.list.length) {
					this.state.pagination.current = 0
					this.state.pagination.total = 0
				}
				this.setState({
					dataSource: theArr,
					pagination: this.state.pagination,
					selectedRowKeys: []
				});
			}.bind(this),
		}).always(function () {
			this.setState({
				loading: false
			});
		}.bind(this));
	},
	loadDatas(pageNo) {
		this.setState({
			loading: true,
		});
		$.ajax({
			method: "get",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + "/api/admin/achievement/listUserAchievement",
			data: {
				pageNo: pageNo || 1,
				pageSize: this.state.paginationDate.pageSize,
				uid: this.state.uid,
			},
			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,
							theName: thisdata.username || thisdata.ownerName,
							category: thisdata.category,
							ownerName: thisdata.username ? thisdata.username : thisdata.ownerName,
							ownerType: thisdata.ownerType,
							ownerMobile: thisdata.ownerMobile,
							status: thisdata.status,
							releaseDate: thisdata.releaseDate,
							releaseDateFormattedDate: thisdata.releaseDateFormattedDate,
							auditStatus: thisdata.auditStatus,
							boutique: thisdata.boutique,
							hot: thisdata.hot,
							techBrokerId: thisdata.techBrokerId,
							createTimeFormattedDate: thisdata.createTimeFormattedDate,
							remark: thisdata.remark
						});
					};
					this.state.paginationDate.current = data.data.pageNo;
					this.state.paginationDate.total = data.data.totalCount;
				};
				this.setState({
					dataSourceDate: theArr,
					paginationDate: this.state.paginationDate
				});
			}.bind(this),
		}).always(function () {
			this.setState({
				loading: false
			});
		}.bind(this));
	},
	loadDatac(pageNo, apiUrl) {
		this.setState({
			loading: true,
		});
		$.ajax({
			method: "get",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + "/api/admin/customers/selectListOrgAnnual",
			data: {
				//				pageNo: pageNo || 1,
				//				pageSize: this.state.pagination.pageSize,
				uid: this.state.uid,
			},
			success: function (data) {
				let theArr = [];
				if (data.error.length || 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];
						let diqu = (thisdata.province == null ? "" : thisdata.province) + (thisdata.city == null ? "" : "-" + thisdata.city) + (thisdata.area == null ? "" : "-" + thisdata.area);
						theArr.push({
							key: i,
							id: thisdata.id,//年报ID
							year: thisdata.year,//年份
							salesAmount: thisdata.salesAmount,//营销额
							fixedAssets: thisdata.fixedAssets,//固定资产
							researchAmount: thisdata.researchAmount,//研发费用
							assets: thisdata.assets,//总资产
							aid: thisdata.aid,//录入人
						});
					};
					//					this.state.pagination.current = data.data.pageNo;
					//				    this.state.pagination.total = data.data.totalCount;
				};
				if (data.data && data.data.list && !data.data.list.length) {
					this.state.pagination.current = 0
					this.state.pagination.total = 0
				}
				this.setState({
					dataSourcec: theArr,
					//					pageNo: pageNo,
					//					pagination: this.state.pagination,
					//					selectedRowKeys:[]
				});
			}.bind(this),
		}).always(function () {
			this.setState({
				loading: false
			});
		}.bind(this));
	},
	loadDatax(pageNo, apiUrl) {
		this.setState({
			loading: true,
		});
		$.ajax({
			method: "get",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + "/api/admin/customers/selectListOrgYearProject",
			data: {
				uid: this.state.uid,
			},
			success: function (data) {
				let theArr = [];
				if (data.error.length || 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];
						let diqu = (thisdata.province == null ? "" : thisdata.province) + (thisdata.city == null ? "" : "-" + thisdata.city) + (thisdata.area == null ? "" : "-" + thisdata.area);
						theArr.push({
							key: i,
							id: thisdata.id,//用户ID
							projectName: thisdata.projectName,//项目名称
							year: thisdata.year,//年份
							status: thisdata.status ? thisdata.status.toString() : "",//项目状态
							remark: thisdata.remark,//备注
							aid: thisdata.aid,//录入人
						});
					};
					//					this.state.pagination.current = data.data.pageNo;
					//				    this.state.pagination.total = data.data.totalCount;
				};
				if (data.data && data.data.list && !data.data.list.length) {
					this.state.pagination.current = 0
					this.state.pagination.total = 0
				}
				this.setState({
					dataSourcex: theArr,
				});
			}.bind(this),
		}).always(function () {
			this.setState({
				loading: false
			});
		}.bind(this));
	},
	getInitialState() {
		return {
			addressSearch: [],
			orgCodeUrl: [],
			companyLogoUrl: [],
			visible: false,
			releaseDate: [],
			visitModul: false,
			detailApi: '',
			followData: {},
			selectedRowKeys: [],
			selectedRows: [],
			loading: false,
			callnub: "0",
			modalVisible: false,
			pagination: {
				defaultCurrent: 1,
				defaultPageSize: 10,
				showQuickJumper: true,
				pageSize: 10,
				onChange: function (page) {
					this.loadData(page);
				}.bind(this),
				showTotal: function (total) {
					return '共' + total + '条数据';
				}
			},
			paginationDate: {
				defaultCurrent: 1,
				defaultPageSize: 10,
				showQuickJumper: true,
				pageSize: 10,
				onChange: function (page) {
					this.loadDatas(page);
				}.bind(this),
				showTotal: function (total) {
					return '共' + total + '条数据';
				}
			},
			columns: [{
				title: '客户名称',
				dataIndex: 'name',
				key: 'name',
				width: 100,
				render: text => {
					return (
						<Tooltip title={onReplace(text)}>
							<div 
              // style={{
							// 	maxWidth: '100px',
							// 	overflow: 'hidden',
							// 	textOverflow: "ellipsis",
							// 	whiteSpace: 'nowrap',
							// }}
              >{onReplace(text)}</div>
						</Tooltip>
					)
				}
			}, {
				title: '地区',
				dataIndex: 'diqu',
				key: 'diqu',
			}, {
				title: '联系人',
				dataIndex: 'contacts',
				key: 'contacts',
			}, {
				title: '联系电话',
				dataIndex: 'contactMobile',
				key: 'contactMobile',
			},
			{
				title: '资料完整度',
				dataIndex: 'dataGrade',
				key: 'dataGrade',

			}, {
				title: '客户资料所属人',
				dataIndex: 'iname',
				key: 'iname',
			},
			{
				title: '行业',
				dataIndex: 'industry',
				key: 'industry'
			},

			{
				title: '创建时间',
				dataIndex: 'createTime',
				key: 'createTime',
			}
			],
			businessScope: [],
			salesTarget: [],
			data: [],
			dataSource: [],
			columnsDate: [
				{
					title: '编号',
					dataIndex: 'serialNumber',
					key: 'serialNumber',
				}, {
					title: '名称',
					dataIndex: 'name',
					key: 'name',
				}, {
					title: '关键字',
					dataIndex: 'keyword',
					key: 'keyword',
				}, {
					title: '类型',
					dataIndex: 'category',
					key: 'category',
					render: text => { return getAchievementCategory(text); }
				}, {
					title: '审核状态',
					dataIndex: 'auditStatus',
					key: 'auditStatus',
					render: text => { return getTechAuditStatus(text) }
				},
				{
					title: '是否精品',
					dataIndex: 'boutique',
					key: 'boutique',
					render: text => { return getboutique(text) }
				},
				{
					title: '发布时间',
					dataIndex: 'releaseDateFormattedDate',
					key: 'releaseDateFormattedDate',
				}, {
					title: '录入时间',
					dataIndex: 'createTimeFormattedDate',
					key: 'createTimeFormattedDate',
				},
			],
			dataSourceDate: [],
			columnsc: [{
				title: '年份',
				dataIndex: 'year',
				key: 'year',
			}, {
				title: '营销收入(万)',
				dataIndex: 'salesAmount',
				key: 'salesAmount',
			},
			{
				title: '总资产(万)',
				dataIndex: 'assets',
				key: 'assets'
			},
			{
				title: '固定资产(万)',
				dataIndex: 'fixedAssets',
				key: 'fixedAssets'
			}, {
				title: '研发费用(万)',
				dataIndex: 'researchAmount',
				key: 'researchAmount',
			}
			],
			dataSourcec: [],
			columnsx: [{
				title: '项目名称',
				dataIndex: 'projectName',
				key: 'projectName',
			}, {
				title: '年份',
				dataIndex: 'year',
				key: 'year',
			},
			{
				title: '项目状态',
				dataIndex: 'status',
				key: 'status',
				render: text => { return getXiangmoState(text); }
			}, {
				title: '备注',
				dataIndex: 'remark',
				key: 'remark',
			}
			],
			dataSourcex: [],
		};
	},
	componentWillMount() {
		//城市
		let Province = [];
		provinceList.map(function (item) {
			var id = String(item.id)
			Province.push(
				<Select.Option value={id} key={item.name}>{item.name}</Select.Option>
			)
		});
		//行业
		let intentionalArr = [];
		industry.map(function (item) {
			intentionalArr.push(
				<Select.Option value={item.value} key={item.key}>{item.key}</Select.Option>
			)
		});
		//会员等级
		let lvlArr = [];
		lvl.map(function (item) {
			lvlArr.push(
				<Select.Option value={item.value} key={item.key}>{item.key}</Select.Option>
			)
		});
		//会员状态customerStatus
		let currentMemberArr = [];
		currentMember.map(function (item) {
			currentMemberArr.push(
				<Select.Option value={item.value} key={item.key}>{item.key}</Select.Option>
			)
		});
		this.state.Provinces = Province;
		this.state.intentionalOption = intentionalArr;
		this.state.lvlArrOption = lvlArr;
		this.state.currentMemberArrOption = currentMemberArr;
		this.loadData();
	},
	search() {
		this.loadData();
	},
	reset() {
		this.state.nameSearch = '';
		this.state.addressSearch = [];
		this.state.dataGrade = undefined;
		this.state.follow = undefined;
		this.state.provinceSearch = undefined;
		this.state.citySearch = undefined;
		this.state.releaseDate[0] = undefined;
		this.state.releaseDate[1] = undefined;
		this.loadData();
	},
	//列表详情
	details(id) {
		$.ajax({
			method: "get",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + "/api/admin/customer/findOrganizationCustomerDetail",
			data: {
				uid: id
			},
			success: function (data) {
				let thisDetail = data.data;
				if (data.error.length || data.data.list == "") {
					if (data.error && data.error.length) {
						message.warning(data.error[0].message);
					};
				} else {
					let ProvinceCityArr = [];
					let ProvinceS = thisDetail.locationProvince; //省
					let citys = thisDetail.locationCity;//市
					let Areas = thisDetail.locationArea;//区
					ProvinceCityArr.push(ProvinceS, citys, Areas);
					this.setState({
						detailId: thisDetail.id,//详情ID
						identifyName: thisDetail.identifyName,//客户名称
						uid: thisDetail.uid,//客户ID
						societyTag: thisDetail.societyTag,//社会标签
						companyLogoUrl: thisDetail.companyLogoUrl ? splitUrl(thisDetail.companyLogoUrl, ',', globalConfig.avatarHost + '/upload') : [],//公司LOGO
						introduction: thisDetail.introduction,//介绍
						industry: thisDetail.industry ? thisDetail.industry.toString() : "",//行业
						locationProvince: thisDetail.locationProvince,//省
						locationCity: thisDetail.locationCity,//市
						locationArea: thisDetail.locationArea,//区
						ProvinceCity: ProvinceCityArr[0] != null ? ProvinceCityArr : undefined,//省市区
						postalAddress: thisDetail.postalAddress,//通讯地址
						contactsFixedTel: thisDetail.contactsFixedTel,//固定电话
						contactsFax: thisDetail.contactsFax,//传真地址
						registeredCapital: thisDetail.registeredCapital,//注册资金
						enterpriseScale: thisDetail.enterpriseScale,//企业规模
						legalPerson: thisDetail.legalPerson,//法人
						legalPersonIdCard: thisDetail.legalPersonIdCard,//法人身份证
						legalPersonTel: thisDetail.legalPersonTel,//法人联系电话
						legalPersonEmail: thisDetail.legalPersonEmail,//法人联系邮箱
						highTechZone: thisDetail.highTechZone,//是否高新
						listed: thisDetail.listed,//是否高新
						international: thisDetail.international,//是否国际化
						orgCode: thisDetail.orgCode,//社会统一机构
						orgCodeUrl: thisDetail.orgCodeUrl ? splitUrl(thisDetail.orgCodeUrl, ',', globalConfig.avatarHost + '/upload') : [],//社会统一机构地址
						businessScope: thisDetail.businessScope ? thisDetail.businessScope.split(',').filter((v) => v) : [],//业务范围
						salesTarget: thisDetail.salesTarget ? thisDetail.salesTarget.split(',').filter((v) => v) : [],//销售目标企业
						contacts: thisDetail.contacts,//主要联系人姓名
						contactMobile: thisDetail.contactMobile,//主要联系人电话
						investment: thisDetail.investment,//投资机构
						businessAudit: thisDetail.businessAudit,//业务认证
						auditStatus: thisDetail.auditStatus,//实名认证
						intellectualProperty: thisDetail.intellectualProperty,//已有知识产权情况
						yearSalesAmount: thisDetail.yearSalesAmount,//年度销售额
						lastYearResearchAmount: thisDetail.lastYearResearchAmount,//上年度研发费用
						assets: thisDetail.assets,//总资产
						qualification: thisDetail.qualification,//企业资质情况
						cooperationSituation: thisDetail.cooperationSituation,//企业与高校院所
						informationMaintainer: thisDetail.informationMaintainer,//资料维护人
						informationMaintainerName: thisDetail.informationMaintainerName,//资料维护人
						coreTechnology: thisDetail.coreTechnology,//核心技术
						accomplishSituation: thisDetail.accomplishSituation,//客户已完成项目情况
						creditRating: thisDetail.creditRating ? thisDetail.creditRating.toString() : "",//信用等级
					});
				}
			}.bind(this),
		}).always(function () {
			this.setState({
				loading: false
			});
		}.bind(this));
	},
	//基本信息提交
	newSubmit(e) {
		e.preventDefault();
		if (!this.state.industry) {
			message.warning('请选择行业');
			return false;
		};
		if (!this.state.societyTag) {
			message.warning('请选择社会属性');
			return false;
		};
		if (!this.state.ProvinceCity[1]) {
			message.warning('请选择地区');
			return false;
		};
		if (!this.state.registeredCapital) {
			message.warning('请填写注册资本');
			return false;
		};
		if (!this.state.businessScope) {
			message.warning('请填写公司主营产品');
			return false;
		};
		if (!this.state.intellectualProperty) {
			message.warning('请填写已有知识产权情况');
			return false;
		};
		var reg = /^[1-9]\d*$|^0$/;
		if (this.state.consultationPrice) {
			if (this.state.consultationPrice.length > 6) {
				message.warning('咨询费用不超过6位数');
				this.refs.consul.focus();
				return false;
			};
			if (!reg.test(this.state.consultationPrice)) {
				message.warning('咨询费用只能输入数字');
				this.refs.consul.focus();
				return false;
			}
		}

		this.state.data = [];
		this.setState({
			selectedRowKeys: [],
		});

		let theorgCodeUrl = [];
		if (this.state.orgCodeUrl.length) {
			let picArr = [];
			this.state.orgCodeUrl.map(function (item) {
				if (item.response && item.response.data && item.response.data.length) {
					picArr.push(item.response.data);
				}
			});
			theorgCodeUrl = picArr.join(",");
		};
		let thecompanyLogoUrl = [];
		if (this.state.companyLogoUrl.length) {
			let picArr = [];
			this.state.companyLogoUrl.map(function (item) {
				if (item.response && item.response.data && item.response.data.length) {
					picArr.push(item.response.data);
				}
			});
			thecompanyLogoUrl = picArr.join(",");
		};
		let years = [];
		let yearMonth = this.state.yearMonth != undefined ? new Date(this.state.yearMonth).toLocaleDateString() : '';
		years = yearMonth.split('/');
		this.setState({
			loading: true
		});
		$.ajax({
			method: "post",
			dataType: "json",
			url: globalConfig.context + '/api/admin/customer/updateOrganizationCustomer',
			data: {
				id: this.state.detailId,//详情ID
				identifyName: this.state.identifyName,//客户名称
				uid: this.state.uid,//客户ID
				societyTag: this.state.societyTag,//社会标签
				companyLogoUrl: thecompanyLogoUrl.length != 0 ? thecompanyLogoUrl : '',//公司LOGO
				introduction: this.state.introduction,//介绍
				industry: this.state.industry,//行业
				locationProvince: (this.state.ProvinceCity)[0],//省
				locationCity: (this.state.ProvinceCity)[1],//市
				locationArea: (this.state.ProvinceCity)[2],//区
				postalAddress: this.state.postalAddress,//通讯地址
				contactsFixedTel: this.state.contactsFixedTel,//固定电话
				contactsFax: this.state.contactsFax,//传真地址
				registeredCapital: this.state.registeredCapital,//注册资金
				enterpriseScale: this.state.enterpriseScale,//企业规模
				legalPerson: this.state.legalPerson,//法人
				legalPersonIdCard: this.state.legalPersonIdCard,//法人身份证
				legalPersonTel: this.state.legalPersonTel,//法人联系电话
				legalPersonEmail: this.state.legalPersonEmail,//法人联系邮箱
				highTechZone: this.state.highTechZone,//是否高新
				listed: this.state.listed,//是否高新
				international: this.state.international,//是否国际化
				orgCode: this.state.orgCode,//社会统一机构
				orgCodeUrl: theorgCodeUrl.length != 0 ? theorgCodeUrl : '',//社会统一机构地址
				businessScope: this.state.businessScope,//业务范围
				contacts: this.state.contacts,//主要联系人姓名
				contactMobile: this.state.contactMobile,//主要联系人电话
				investment: this.state.investment,//投资机构
				businessAudit: this.state.businessAudit,//业务认证
				auditStatus: this.state.auditStatus,//实名认证
				intellectualProperty: this.state.intellectualProperty,//已有知识产权情况
				yearSalesAmount: this.state.yearSalesAmount,//年度销售额
				lastYearResearchAmount: this.state.lastYearResearchAmount,//上年度研发费用
				assets: this.state.assets,//总资产
				qualification: this.state.qualification,//企业资质情况
				cooperationSituation: this.state.cooperationSituation,//企业与高校院所
				informationMaintainer: this.state.informationMaintainer,//资料维护人
				informationMaintainerName: this.state.informationMaintainerName,//资料维护人
				coreTechnology: this.state.coreTechnology,//核心技术
				accomplishSituation: this.state.accomplishSituation,//客户已完成项目情况
				creditRating: this.state.creditRating,//信用等级
			}
		}).done(function (data) {
			this.setState({
				loading: false
			});
			if (!data.error.length) {
				message.success('保存成功!');
				this.visitCancel();
				this.loadData();
			} else {
				message.warning(data.error[0].message);
			}
		}.bind(this));

	},
	//整行点击
	tableRowClick(record, index) {
		this.state.visitModul = true;
		this.details(record.id);
	},
	//指定转交人自动补全
	supervisor(e) {
		$.ajax({
			method: "get",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + "/api/admin/customer/listAdminByName",
			data: {
				adminName: e
			},
			success: function (data) {
				let thedata = data.data;
				if (!thedata) {
					if (data.error && data.error.length) {
						message.warning(data.error[0].message);
					};
					thedata = {};
				};
				this.setState({
					customerArr: thedata,
				});
			}.bind(this),
		}).always(function () {
			this.setState({
				loading: false
			});
		}.bind(this));
	},
	//输入转交人输入框失去焦点是判断客户是否存在
	selectAuto(value, options) {
		this.setState({
			auto: value
		})
	},
	blurChange(e) {
		let theType = '';
		let contactLists = this.state.customerArr || [];
		if (e) {
			contactLists.map(function (item) {
				if (item.name == e.toString()) {
					theType = item.id;
				}
			});
		}
		this.setState({
			theTypes: theType
		})
	},
	//值改变时请求客户名称
	httpChange(e) {
		if (e.length >= 1) {
			this.supervisor(e);
		}
		this.setState({
			auto: e
		})
	},
	//转交
	changeAssigner() {
		if (this.state.theTypes) {
			this.setState({
				selectedRowKeys: [],
			});
			let id;
			for (let idx = 0; idx < this.state.selectedRows.length; idx++) {
				let rowItem = this.state.selectedRows[idx];
				if (rowItem.id) {
					id = rowItem.id;
				};
			};
			$.ajax({
				method: "post",
				dataType: "json",
				crossDomain: false,
				url: globalConfig.context + "/api/admin/customer/updateInformationMaintainerr",
				data: {
					id: id, //客户ID
					aid: this.state.theTypes, //指定转交人的ID

				}
			}).done(function (data) {
				if (!data.error.length) {
					message.success('转交成功!');
					this.setState({
						auto: '',
						loading: false,
					});
				} else {
					message.warning(data.error[0].message);
				};
				this.loadData(this.state.ispage);
			}.bind(this));
		} else {
			message.warning('请输入转交人姓名')
		}
	},
	//详情打开
	visitOk(e) {
		this.setState({
			visitModul: false
		});
	},
	//详情关闭
	visitCancel(e) {
		this.setState({
			visitModul: false,
			callnub: "0"
		});
	},
	getOrgCodeUrl(e) {
		this.setState({ orgCodeUrl: e });
	},
	getCompanyLogoUrl(e) {
		this.setState({ companyLogoUrl: e });
	},
	componentWillReceiveProps(nextProps) {
		if (nextProps.ApiUrl != this.props.ApiUrl) {
			this.state.nameSearch = '';
			this.state.addressSearch = [];
			this.state.provinceSearch = undefined;
			this.state.citySearch = undefined;
			this.state.releaseDate[0] = undefined;
			this.state.releaseDate[1] = undefined;
			this.loadData(null, nextProps.ApiUrl);
		};
	},
	callback(e) {
		if (e == '0') {
			this.setState({
				callnub: e,
			})
		}
		if (e == '1') {
			this.setState({
				callnub: e,
			})
			this.loadDatas();
		}
		if (e == '2') {
			this.setState({
				callnub: e,
			})
			this.loadDatac();
		}
		if (e == '3') {
			this.setState({
				callnub: e,
			})
			this.loadDatax();
		}
	},
	//发布成果
	addClick() {
		this.state.RowData = {};
		this.setState({
			showDesc: true,
		});
	},
	//关闭发布成果
	closeDesc(e, s) {
		this.state.showDesc = e;
		if (s) {
			this.loadDatas();
		};
	},
	tableRowClickDate(record, index) {
		this.state.RowData = record;
		if (index != undefined) {
			this.setState({
				showDesc: true
			});
		}
	},
	changeList(arr) {
		const newArr = [];
		this.state.columns.forEach(item => {
			arr.forEach(val => {
				if (val === item.title) {
					newArr.push(item);
				}
			});
		});
		this.setState({
			changeList: newArr
		});
	},
	render() {
		const {
			RangePicker,
			MonthPicker
		} = DatePicker;
		const formItemLayout = {
			labelCol: { span: 8 },
			wrapperCol: { span: 14 },
		};
		const FormItem = Form.Item;
		const rowSelection = {
			selectedRowKeys: this.state.selectedRowKeys,
			onChange: (selectedRowKeys, selectedRows) => {
				this.setState({
					modalVisible: false,
					selectedRows: selectedRows.slice(-1),
					selectedRowKeys: selectedRowKeys.slice(-1)
				});
			},
			onSelect: (recordt, selected, selectedRows) => {
				this.setState({
					modalVisible: false,
					recordt: recordt.id
				})
			},
		};
		const hasSelected = this.state.selectedRowKeys.length > 0;
		const dataSources = this.state.customerArr || [];
		const options = dataSources.map((group) =>
			<Select.Option key={group.id} value={group.name}>{group.name}</Select.Option>
		)
		const intentionState = this.props.intentionState || '';
		return (
			<div className="user-content" >
				<div className="content-title">
					<span style={{ fontWeight: 900, fontSize: 16 }}>客户资料管理</span>
				</div>
				<Tabs
					defaultActiveKey="1"
					className="test">
					<TabPane tab="搜索" key="1">
						<div className="user-search">
							<Input placeholder="客户名称"
								value={this.state.nameSearch}
								onChange={(e) => { this.setState({ nameSearch: e.target.value }); }} />
							<Select placeholder="省"
								style={{ width: 80 }}
								value={this.state.provinceSearch}
								onChange={(e) => { this.setState({ provinceSearch: e }); }}>
								{this.state.Provinces}
							</Select>
							<span style={{ marginRight: '10px' }}>
								<Cascader options={citySelect()} value={this.state.addressSearch} placeholder="选择城市"
									onChange={(e, pre) => { this.setState({ addressSearch: e }) }} />
							</span>
							<Select placeholder="资料是否完善" style={{ width: 120 }}
								value={this.state.dataGrade}
								onChange={(e) => { this.setState({ dataGrade: e }) }}>
								<Select.Option value="0" >未完善</Select.Option>
								<Select.Option value="1" >已完善</Select.Option>
							</Select>
							<RangePicker style={{ marginRight: '10px' }}
								value={[this.state.releaseDate[0] ? moment(this.state.releaseDate[0]) : null,
								this.state.releaseDate[1] ? moment(this.state.releaseDate[1]) : null]}
								onChange={(data, dataString) => { this.setState({ releaseDate: dataString }); }} />
							<Button type="primary" onClick={this.search}>搜索</Button>
							<Button onClick={this.reset}>重置</Button>
						</div>
					</TabPane>
					<TabPane tab="更改表格显示数据" key="2">
						<div style={{ marginLeft: 10 }}>
							<ChooseList
								columns={this.state.columns}
								changeFn={this.changeList}
								changeList={this.state.changeList}
								top={55}
								margin={11}
							/>
						</div>
					</TabPane>
				</Tabs>
				<div className="patent-table">
					<Spin spinning={this.state.loading}>
						<Table columns={
							this.state.changeList
								? this.state.changeList
								: this.state.columns
						}
							dataSource={this.state.dataSource}
							// rowSelection={rowSelection}
							pagination={this.state.pagination}
							onRowClick={this.tableRowClick}
							bordered
							size="small"
						/>
					</Spin>
				</div>
				<Modal
					className="customeDetails"
					footer=''
					title="客户资料"
					width='1200px'
					visible={this.state.visitModul}
					onOk={this.visitOk}
					onCancel={this.visitCancel}
				>
					<Tabs onChange={this.callback} activeKey={this.state.callnub}>
						<TabPane tab="基本信息" key="0">
							<div>
								<Form layout="horizontal" onSubmit={this.newSubmit} id="demand-form">
									<Spin spinning={this.state.loading}>
										<div style={{ fontSize: '18px', marginLeft: '50px', marginTop: '15px', marginBottom: '10px', color: "red", fontWeight: "bold" }}>基本信息</div>
										<div className="clearfix" >
											<FormItem className="half-item"
												{...formItemLayout}
												label="客户姓名"
											>
												<span>{this.state.identifyName}</span>
												<EnterpriseNameChange
													type='journal'
													style={{ marginLeft: 10 }}
													enterpriseId={this.state.uid} />
											</FormItem>
											<FormItem className="half-item"
												{...formItemLayout}
												label="资料所属人"
											>
												<span>{this.state.informationMaintainerName}</span>
											</FormItem>
										</div>
										<div className="clearfix" >
											<FormItem className="half-item"
												{...formItemLayout}
												label="企业行业">
												<Select placeholder="选择行业" value={this.state.industry} style={{ width: '95%' }}
													onChange={(e) => { this.setState({ industry: e }) }} disabled={true}>
													{
														industry.map(function (item) {
															return <Select.Option key={item.value} >{item.key}</Select.Option>
														})
													}
												</Select>
												<span style={{ color: 'red', marginLeft: '5px' }}>*</span>
											</FormItem>
											<FormItem className="half-item"
												{...formItemLayout}
												label="社会属性"
											>
												<Select placeholder="客户社会属性" value={this.state.societyTag} style={{ width: '95%' }}
													onChange={(e) => { this.setState({ societyTag: e }) }} disabled={true}>
													{
														socialAttribute.map(function (item) {
															return <Select.Option key={item.value} >{item.key}</Select.Option>
														})
													}
												</Select>
												<span style={{ color: 'red', marginLeft: '5px' }}>*</span>
											</FormItem>
											<FormItem className="half-item"
												{...formItemLayout}
												label="省-市-区"
											>
												<Cascader options={areaSelect()} value={this.state.ProvinceCity} placeholder="选择城市" style={{ width: '95%' }}
													onChange={(e, pre) => { this.setState({ ProvinceCity: e }) }} disabled={true} />
												<span style={{ color: 'red', marginLeft: '5px' }}>*</span>
											</FormItem>
											<FormItem className="half-item"
												{...formItemLayout}
												label="注册资本"
											>
												<Input placeholder="注册资本" style={{ width: '90%' }} value={this.state.registeredCapital} onChange={(e) => {
													this.setState({ registeredCapital: e.target.value })
												}} disabled={true} />万
												<span style={{ color: 'red', marginLeft: '5px' }}>*</span>
											</FormItem>
											<div className='clearfix'>
												<FormItem
													labelCol={{ span: 4 }}
													wrapperCol={{ span: 20 }}
													label="主营产品" >
													{this.state.businessScope.map((tag) => {
														const isLongTag = tag.length > 20;
														const tagElem = (
															<Tag key={tag}>
																{isLongTag ? `${tag.slice(0, 20)}...` : tag}
															</Tag>
														);
														return isLongTag ? <Tooltip title={tag} key={tag}>{tagElem}</Tooltip> : tagElem;
													})}
												</FormItem>
											</div>
											<div className='clearfix'>
												<FormItem
													labelCol={{ span: 4 }}
													wrapperCol={{ span: 20 }}
													label="销售目标企业" >
													{this.state.salesTarget.map((tag) => {
														const isLongTag = tag.length > 20;
														const tagElem = (
															<Tag key={tag}>
																{isLongTag ? `${tag.slice(0, 20)}...` : tag}
															</Tag>
														);
														return isLongTag ? <Tooltip title={tag} key={tag}>{tagElem}</Tooltip> : tagElem;
													})}
												</FormItem>
											</div>

											<div style={{ fontSize: '18px', marginLeft: '50px', marginTop: '15px', marginBottom: '10px', color: "red", fontWeight: "bold" }}>企业资料</div>
											<FormItem className="half-item"
												{...formItemLayout}
												label="通信地址"
											>
												<Input placeholder="客户通信地址" value={this.state.postalAddress}
													onChange={(e, pre) => { this.setState({ postalAddress: e.target.value }) }} disabled={true} />
											</FormItem>
											<FormItem className="half-item"
												{...formItemLayout}
												label="固定电话"
											>
												<Input placeholder="客户固定电话" value={this.state.contactsFixedTel}
													onChange={(e) => { this.setState({ contactsFixedTel: e.target.value }) }} disabled={true} />
											</FormItem>
											<FormItem className="half-item"
												{...formItemLayout}
												label="客户传真"
											>
												<Input placeholder="客户传真" value={this.state.contactsFax}
													onChange={(e) => { this.setState({ contactsFax: e.target.value }) }} disabled={true} />
											</FormItem>

											<FormItem className="half-item"
												{...formItemLayout}
												label="企业人数"
											>
												<Input placeholder="单位规模" value={this.state.enterpriseScale} onChange={(e) => {
													this.setState({ enterpriseScale: e.target.value })
												}} disabled={true} />
											</FormItem>
											<FormItem className="half-item"
												{...formItemLayout}
												label="法人名称"
											>
												<Input placeholder="法人名称" value={this.state.legalPerson} onChange={(e) => {
													this.setState({ legalPerson: e.target.value })
												}} disabled={true} />
											</FormItem>
											<FormItem className="half-item"
												{...formItemLayout}
												label="法人身份证"
											>
												<Input placeholder="法人身份证" value={this.state.legalPersonIdCard} onChange={(e) => {
													this.setState({ legalPersonIdCard: e.target.value })
												}} disabled={true} />
											</FormItem>
											<FormItem className="half-item"
												{...formItemLayout}
												label="联系人"
											>
												<Input placeholder="主要联系人" value={this.state.contacts} onChange={(e) => {
													this.setState({ contacts: e.target.value })
												}} disabled={true} />
											</FormItem>
											<FormItem className="half-item"
												{...formItemLayout}
												label="联系人号码"
											>
												<Input placeholder="主要联系人号码" value={this.state.contactMobile} onChange={(e) => {
													this.setState({ contactMobile: e.target.value })
												}} disabled={true} />
											</FormItem>
											<FormItem className="half-item"
												{...formItemLayout}
												label="法人电话"
											>
												<Input placeholder="法人电话" value={this.state.legalPersonTel} onChange={(e) => {
													this.setState({ legalPersonTel: e.target.value })
												}} disabled={true} />
											</FormItem>
											<FormItem className="half-item"
												{...formItemLayout}
												label="法人邮箱"
											>
												<Input placeholder="法人电子邮箱" value={this.state.legalPersonEmail}
													onChange={(e) => { this.setState({ legalPersonEmail: e.target.value }) }} disabled={true} />
											</FormItem>
											<FormItem className="half-item"
												{...formItemLayout}
												label="社会统一信用机构代码"
											>
												<Input placeholder="社会统一信用机构代码" value={this.state.orgCode} onChange={(e) => {
													this.setState({ orgCode: e.target.value })
												}} disabled={true} />
											</FormItem>
											<div className='clearfix'>
												<FormItem
													labelCol={{ span: 4 }}
													wrapperCol={{ span: 18 }}
													label="客户简介" >
													<Input type="textarea" rows={3} value={this.state.introduction}
														onChange={(e, pre) => { this.setState({ introduction: e.target.value }) }} disabled={true} />
												</FormItem>
											</div>

											<div className="clearfix pictures">
												<FormItem style={{ display: 'inline-block', width: '350px', marginTop: '20px', marginLeft: '95px' }}
													labelCol={{ span: 8 }}
													wrapperCol={{ span: 10 }}
													label="机构证书(PIC)" >
													<PicturesWall
														domId={'crmAll1'}
														fileList={this.getOrgCodeUrl}
														pictureUrl={this.state.orgCodeUrl} />
													<p>建议:图片要清晰。</p>
												</FormItem>
												<FormItem style={{ display: 'inline-block', width: '350px', marginTop: '20px', marginTop: '20px' }}
													labelCol={{ span: 8 }}
													wrapperCol={{ span: 10 }}
													label="单位LOGO" >
													<PicturesWall
														domId={'crmAll2'}
														fileList={this.getCompanyLogoUrl}
														pictureUrl={this.state.companyLogoUrl} />
													<p>建议:图片要清晰。</p>
												</FormItem>
											</div>
											<div style={{ fontSize: '18px', marginLeft: '50px', marginTop: '15px', marginBottom: '10px', color: "red", fontWeight: "bold" }}>重要资料</div>
											<div className='clearfix' >
												<FormItem className="half-item"
													{...formItemLayout}
													label="客户信用等级"
												>
													<Select placeholder="客户信用等级" value={this.state.creditRating}
														onChange={(e) => { this.setState({ creditRating: e }) }} disabled={true}>
														{
															slcRedit.map(function (item) {
																return <Select.Option key={item.value} >{item.key}</Select.Option>
															})
														}
													</Select>
												</FormItem>
												<div className='clearfix'>
													<FormItem
														labelCol={{ span: 4 }}
														wrapperCol={{ span: 19 }}
														label="企业核心技术" >
														<Input type="textarea" rows={3} value={this.state.coreTechnology}
															onChange={(e, pre) => { this.setState({ coreTechnology: e.target.value }) }} disabled={true} />
													</FormItem>
												</div>
												<div className='clearfix'>
													<FormItem
														labelCol={{ span: 4 }}
														wrapperCol={{ span: 19 }}
														label="企业资质情况" >
														<Input type="textarea" rows={3} value={this.state.qualification} placeholder="请按如下格式填写:资质名称+获得时间+拥有人+发证机构"
															onChange={(e, pre) => { this.setState({ qualification: e.target.value }) }} disabled={true} />
													</FormItem>
												</div>
												<div className='clearfix'>
													<FormItem
														labelCol={{ span: 4 }}
														wrapperCol={{ span: 19 }}
														label="高企合作情况" >
														<Input type="textarea" rows={3} value={this.state.cooperationSituation}
															onChange={(e, pre) => { this.setState({ cooperationSituation: e.target.value }) }} disabled={true} />
													</FormItem>
												</div>
											</div>
										</div>
									</Spin>
								</Form>

							</div>
						</TabPane>
						<TabPane tab="知识产权列表" key="1">
							<Spin spinning={this.state.loading}>
								<Table columns={this.state.columnsDate}
									dataSource={this.state.dataSourceDate}
									rowSelection={rowSelection}
									pagination={this.state.paginationDate}
									onRowClick={this.tableRowClickDate} />
							</Spin>
						</TabPane>
						<TabPane tab="财务信息" key="2">
							<Spin spinning={this.state.loading}>
								<Table columns={this.state.columnsc}
									dataSource={this.state.dataSourcec}
									rowSelection={rowSelection}
									onRowClick={this.tableRowClickDatec} />
							</Spin>
						</TabPane>
						<TabPane tab="项目信息" key="3">
							<Spin spinning={this.state.loading}>
								<Table columns={this.state.columnsx}
									dataSource={this.state.dataSourcex}
									rowSelection={rowSelection}
									onRowClick={this.tableRowClickDatex} />
							</Spin>
						</TabPane>
					</Tabs>
				</Modal>
				<TechAchievementDesc
					data={this.state.RowData}
					detailApiUrl={this.props['data-detailApiUrl']}
					achievementCategoryOption={this.state.achievementCategoryOption}
					showDesc={this.state.showDesc}
					uid={this.state.uid}
					closeDesc={this.closeDesc}
					loadDatas={this.loadDatas}
				/>

			</div >

		);
	}
}));
export default IntentionCustomer;