import React from 'react';
import { Radio, Icon, Button, Input, Select, Spin, Table, Switch, message, DatePicker, Modal, Upload,Form ,Row,Col,TimePicker} from 'antd';
import ajax from 'jquery/src/ajax/xhr.js';
import $ from 'jquery/src/ajax';
import moment from 'moment';
import './myClient.less';
import  TechAchievementDesc from './myClientDesc.jsx';
import { achievementCategoryList, techAuditStatusList,cityArr,customerStatus,intentionalService,newFollow ,contact} from '../../dataDic.js';
import { beforeUploadFile, companySearch, getAchievementCategory, getSearchUrl, getTechAuditStatus,getcustomerTyp,getcityArr,getcustomerStatue,getCompanyIntention,getfllowSituation,getcontact} from '../../tools.js';
import BatchImport from './batchImport';

//图片组件
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 className="clearfix">
                <Upload
                    action={globalConfig.context + "/api/admin/achievement/uploadPicture"}
                    data={{ 'sign': this.props.pictureSign }}
                    listType="picture-card"
                    fileList={fileList}
                    onPreview={this.handlePreview}
                    onChange={this.handleChange} >
                    {fileList.length >= 5 ? null : uploadButton}
                </Upload>
                <Modal maskClosable={false} visible={previewVisible} footer={null} onCancel={this.handleCancel}>
                    <img alt="example" style={{ width: '100%' }} src={previewImage} />
                </Modal>
            </div>
        );
    }
});

const AchievementList = Form.create()(React.createClass({
    loadData(pageNumber, apiUrl) {
        this.state.data = [];
        this.setState({
            loading: true
        });
        $.ajax({
            method: "post",
            dataType: "json",
            crossDomain: false,          
            url:globalConfig.context + '/api/admin/customer/listPrivateCustomer',
            data: {
                pageNumber: pageNumber || 1,
                pageSize: this.state.pagination.pageSize,               
                customerName: this.state.customerName, //名称1
				shareTyp: this.state.shareTyp, //客户类型1
              	province:this.state.province,//地区
				customerStatus:this.state.customerStatus,//客户状态1
				contactName:this.state.contactName,//联系人姓名1
				adminName:this.state.adminName,//跟单人1
				companyIntention:this.state.companyIntention,//意向服务
                followSituation:this.state.followSituation,//最新跟进
				//releaseDateStartDate: this.state.releaseDate[0],
                //releaseDateEndDate: this.state.releaseDate[1],			
            },
            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,                                                  
                            companyName:thisdata.companyName,//公司名称
                            _shareType:thisdata._shareType,//客户类型
                            locationProvince:thisdata.locationProvince,//地区                        
                            contactName:thisdata.contactName, //联系人姓名
                            telNum:thisdata.telNum,//手机号
                            _customerStatus:thisdata._customerStatus,//客户状态
                            _companyIntention:thisdata._companyIntention,//意向服务
                            _followSituation:thisdata._followSituation,//最新跟进
                            adminName:thisdata.adminName,     //跟进人          
                            followDate:thisdata.followDate
                        });
                    };
                    this.state.pagination.current = data.data.pageNumber;
                    this.state.pagination.total = data.data.totalCount;
                };               
                this.setState({
                    dataSource: theArr,
                    pagination: this.state.pagination
                });
            }.bind(this),
        }).always(function () {
            this.setState({
                loading: false
            });
        }.bind(this));
    }, 
    //点击便捷记录
  	setModal1Visible(modal1Visible) {
	    this.setState({ modal1Visible });
	    this.setState({
            showDesc: false
        });

	},
	setModal2Visible(modal2Visible) {
	    this.setState({ modal2Visible });
	    
	},
	//点击修改
	setModal3Visible(modal3Visible) {
		
	    this.setState({ modal3Visible });
	    this.setState({
	    	
            showDesc: false
        });
			alert("22233")
	},
	//历史记录中点击跟进人模板出现
	setModal4Visible(modal4Visible) {
	    this.setState({ modal4Visible });	//需要一个请求数据    
	},
	getPictureUrl(e) {
        this.setState({pictureUrl: e });
    },
    componentWillReceiveProps(nextProps) {
        if (!this.props.visible && nextProps.visible) {
            if (nextProps.data && nextProps.data.id) {
                this.loadData(nextProps.data.id, nextProps.detailApiUrl);
            };           
            this.state.technicalPictureUrl = [];       
        };
    },
       //快捷设置保存提交
    handleSubmit(e) {
        e.preventDefault();
        let deletedIds;
        for (let idx = 0; idx < this.state.selectedRows.length; idx++) {
            let rowItem = this.state.selectedRows[idx];
            if (rowItem.id) {
                deletedIds=rowItem.id
            };            
        };       
        this.setState({
            selectedRowKeys: [],
           
        });
        this.props.form.validateFields((err, values) => {            
            //url转化           
			let theTechnicalPictureUrl = [];
            if (this.state.technicalPictureUrl.length) {
                let picArr = [];
                this.state.technicalPictureUrl.map(function (item) {
                    picArr.push(item);
                });
                theTechnicalPictureUrl = picArr.join(",");
            };

            if (!err) {
                this.setState({
                    loading: true
                });
                $.ajax({
                    method: "POST",
                    dataType: "json",
                    crossDomain: false,
                    url:globalConfig.context + '/api/admin/achievement/apply',
                    data: {
                        id: deletedIds,//编号id
//                      serialNumber: values.serialNumber,//联系方式
//                      serialNumber: values.serialNumber,//更新的客户状态
//                      serialNumber: values.serialNumber,//最新跟进状态
//                      serialNumber: values.serialNumber,//跟进结果
                        TechnicalPictureUrl: theTechnicalPictureUrl,//上传的图片
//                      ownerEmail: this.state.switchValue ? values.ownerEmail : undefined,//开关控制下详细资料                    
                    }
                }).done(function (data) {                	
                    this.setState({
                        loading: false
                    });
                    if (!data.error.length) {
                        message.success('保存成功！');
                        this.setModal1Visible(false)                       
                    } else {
                        message.warning(data.error[0].message);
                    }
                    this.loadData();
                }.bind(this));
            }
        });
    },
    submitcontact(e){ 
    	let deletedIds;
        for (let idx = 0; idx < this.state.selectedRows.length; idx++) {
            let rowItem = this.state.selectedRows[idx];
            if (rowItem.id) {
                deletedIds=rowItem.id
            };            
        };       
        this.setState({
            selectedRowKeys: [],
           
        });
    	e.preventDefault();
        this.props.form.validateFields((err, values) => {           	
            if (!err) {
                this.setState({
                    loading: true
                });
                $.ajax({
                    method: "POST",
                    dataType: "json",
                    crossDomain: false,
                    url: globalConfig.context + '/api/admin/customer/addCustomer',
                    data: {
                        id: deletedIds,//编号id
//                      serialNumber: values.serialNumber,//联系方式
//                      serialNumber: values.serialNumber,//更新的客户状态
//                      serialNumber: values.serialNumber,//最新跟进状态
//                      serialNumber: values.serialNumber,//跟进结果                       
//                      ownerEmail: this.state.switchValue ? values.ownerEmail : undefined,//开关控制下详细资料                    
                    }
                }).done(function (data) {                	
                    this.setState({
                        loading: false
                    });
                    if (!data.error.length) {
                        message.success('保存成功！');
                        this.setModal2Visible(false)                        
                    } else {
                        message.warning(data.error[0].message);
                    }
                    this.loadData();
                }.bind(this));
            }
        });
    },
    getTechnicalPictureUrl(e) {
        this.setState({ technicalPictureUrl: e });
    },
    
    //新建联系人modal框显示
	showModal(){
	    this.setState({
	      visible: true,
	    });
	},
	
	//指定转交人的点击函数
	showModa(){
		alert("点击开始转交");
	    this.setState({
	      visible: true,
	    });
	     $.ajax({
	     	method: "get",
            dataType: "json",
            crossDomain: false,
            url: globalConfig.context + "/api/admin/achievement/offShelf",
            data: { 
            	"id": ''
            }
        }).done(function (data) {
            if (data.error && data.error.length) {
            	message.warning(data.error[0].message);
                
            } else {
             let theAssigne = [];
                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];  
                        //处理数据 进行循环
                        theAssigne.push({
                            key: i,
                            id: thisdata.id,                                                                                                                    
                        });
                    };           
                };               
                this.setState({
                    dataid: theAssigne,                   
                });              
            }
        }.bind(this));
    },	   
    //选择了指定人之后的保存点击函数，需要修改函数
    changeAssigner() {
    	alert("选好了开始转交");
          this.setState({
	      visible: false,
	    });
	    let changeIds;
        for (let idx = 0; idx < this.state.selectedRows.length; idx++) {
            let rowItem = this.state.selectedRows[idx];
            if (rowItem.id) {
                changeIds=rowItem.id
            };            
        };       
          $.ajax({
            method: "GET",
            dataType: "json",
            crossDomain: false,           
            url: globalConfig.context + "/api/admin/customer/deleteCustomer",
            data: {
                id: changeIds
            }
        }).done(function (data) {
            if (!data.data.error.length) {
                message.success('转交成功！');
                this.setState({
                    loading: false,
                });
            } else {
                message.warning(data.error[0].message);
            };
            this.loadData();
        }.bind(this));
    },
    handleOk(e){	   
	    this.setState({
	      visible: false,
	    });
	},
	handleCancel(e){	   
	    this.setState({
	      visible: false,
	    });
	},
	
    getInitialState() {
        return { 
        	technicalPictureUrl: [],
		    modal1Visible: false,
		    modal2Visible: false,	
        	visible: false ,
            searchMore: true,
            searchType: 0,
            validityPeriodDate: [],
            releaseDate: [],
            selectedRowKeys: [],
            selectedRows: [],
            loading: false,
            pagination: {
                defaultCurrent: 1,
                defaultPageSize: 10,
                showQuickJumper: true,
                pageSize: 10,
                onChange: function (page) {
                    this.loadData(page);
                }.bind(this),
                showTotal: function (total) {
                    return '共' + total + '条数据';
                }
            },
            columns: [               
                {
                    title: '公司名称',
                    dataIndex: 'companyName',
                    key: 'companyName',
                     render: text => { 
                    	return (
                    		<Button onClick={this.tableRowClick} >{text}</Button>
                    	) 
                    }
                }, {
                    title: '客户类型',
                    dataIndex: '_shareType',
                    key: '_shareType'
                 // render: text => { return getcustomerTyp(text); }
                }, {
                    title: '地区',
                    dataIndex: 'locationProvince',
                    key: 'locationProvince',
                    render: text => { return getcityArr(text); }
                }, {
                    title: '联系人姓名',
                    dataIndex: 'contactName',
                    key: 'contactName',                    
                }, 
                {
                    title: '手机号',
                    dataIndex: 'telNum',
                    key:'telNum',                   
                },
                 {
                    title: '客户状态',
                    dataIndex: '_customerStatus',
                    key: '_customerStatus'
                  //render: text => { return getcustomerStatue(text) }
                },
                {
                    title: '意向服务',
                    dataIndex: '_companyIntention',
                    key: '_companyIntention'
                  //render: text => { return getCompanyIntention(text) }
                },
                 {
                    title: '最新跟进',
                    dataIndex: '_followSituation',
                    key: '_followSituation',                    
                    render:text => { 
                    	const theData = this.props.data || {};
                    	const FormItem = Form.Item;
                    	const { getFieldDecorator } = this.props.form;
                    	const formItemLayout = {
				            labelCol: { span: 8 },
				            wrapperCol: { span: 14 },
				        };
				        const formItemLayput = {
				            labelCol: { span: 10 },
				            wrapperCol: { span: 14 },
				        };
                    	return  (  
	                    	<div>	                    		
	                    		 <Button onClick={() => this.setModal3Visible(true)} style={{marginRight:'10px'}}>{text}</Button>
	                    		 <Button type="primary" onClick={() => this.setModal1Visible(true)}><Icon type="plus" /></Button>	   
								    <Modal
	                				  style={{left:'500px'}}
								      footer=''
							          title="跟进人详细信息"
							          width='400px'
							          visible={this.state.modal4Visible}
							          onOk={() => this.setModal4Visible(false)}
							          onCancel={() => this.setModal4Visible(false)}							          							          
							        >
	                					<Form horizontal onSubmit={this.submitcontact} id="demand-form">
								            <Spin spinning={this.state.loading}> 
								                <div className='clearfix'>
						                            <FormItem className="half-item"
							                            {...formItemLayput}
							                            label="所属公司" >
							                            <span>{theData.id}</span>
							                        </FormItem>	
						                       		<FormItem className="half-item"
							                            {...formItemLayput}
							                            label="主要联系人" >
							                            <span>{theData.id}</span>
							                        </FormItem>
							                        <FormItem className="half-item"
							                            {...formItemLayput}
							                            label="性别" >
							                            <span>{theData.id}</span>
							                        </FormItem>
							                        <FormItem className="half-item"
							                            {...formItemLayput}
							                            label="姓名" >
							                            <span>{theData.id}</span>
							                        </FormItem>
						                            <FormItem className="half-item"
							                            {...formItemLayput}
							                            label="QQ号" >
							                            <span>{theData.id}</span>
							                        </FormItem>
							                      	<FormItem className="half-item"
							                            {...formItemLayput}
							                            label="手机号" >
							                            <span>{theData.id}</span>
							                        </FormItem>
						                            <FormItem className="half-item"
							                            {...formItemLayput}
							                            label="部门" >
							                            <span>{theData.id}</span>
							                        </FormItem>
							                   		<FormItem className="half-item"
							                            {...formItemLayput}
							                            label="职位" >
							                            <span>{theData.id}</span>
							                        </FormItem>
						                            <FormItem className="half-item"
							                            {...formItemLayput}
							                            label="微信号" >
							                            <span>{theData.id}</span>
							                        </FormItem>	
							                    </div>
								            </Spin>
								        </Form>   
	                				</Modal>								   
								    <Modal
								      footer=''
							          title="历史记录列表"
							          width='600px'
							          visible={this.state.modal3Visible}
							          onOk={() => this.setModal3Visible(false)}
							          onCancel={() => this.setModal3Visible(false)}							          							          
							        >	
							          <Form horizontal id="demand-form">
								           <Spin spinning={this.state.loading}>										        											    
											     <div className="clearfix">
							                        <FormItem className="half-item"
							                            {...formItemLayput}
							                            label="" >
							                            <span style={{marginLeft:'60px'}}>历史记录</span>
							                        </FormItem>
							                        <FormItem className="half-item"
							                            {...formItemLayput}
							                            label="" >
							                           <Button style={{ background: "#3fcf9e", border: "none", color: "#fff" ,marginLeft:'100px'}}					                        
								                       onClick={this.delectRow}>删除记录</Button>
							                        </FormItem>
							                        
							                        <FormItem className="half-item"
							                            {...formItemLayput}
							                            label="时间" >
							                            <span>{theData.category}</span>
							                        </FormItem>
							                        <FormItem className="half-item"
							                            {...formItemLayput}
							                            label="跟进人" >
							                            <span style={{color:'#f00'}} onClick={() => this.setModal4Visible(true)}>{theData.category}</span>
							                        </FormItem> 
							                        <FormItem className="half-item"
							                            {...formItemLayput}
							                            label="客户" >
							                            <span>{theData.category}</span>
							                        </FormItem>
							                        <FormItem className="half-item"
							                            {...formItemLayput}
							                            label="联系方式" >
							                            <span>{theData.category}</span>							                            
							                        </FormItem>							                        
							                    </div>
							                    <div className="clearfix">
							                       <FormItem className="half-item"
							                            {...formItemLayput}
							                            label="跟进状态" >
							                            <span>{theData.category}</span>							                            
							                        </FormItem>							                        
							                    </div>
							                    <div className="clearfix">
							                       <FormItem 
							                            labelCol={{ span: 5 }}
                       									wrapperCol={{ span: 18 }}
							                            label="跟进结果" >
							                            <span>{theData.category}</span>							                            
							                        </FormItem>							                        
							                    </div>
							                    <div className="clearfix">
													<FormItem
								                        labelCol={{ span: 5 }}
								                        wrapperCol={{ span: 18 }}
								                        label="附件" >
								                        <div className="clearfix">
								                            <Upload className="demandDetailShow-upload"
								                                listType="picture-card"
								                                fileList={this.state.technicalPictureUrl}
								                                onPreview={(file) => {
								                                    this.setState({
								                                        previewImage: file.url || file.thumbUrl,
								                                        previewVisible: true,
								                                    });
								                                }} >
								                            </Upload>
								                            <Modal maskClosable={false} footer={null}
								                                visible={this.state.previewVisible}
								                                onCancel={() => { this.setState({ previewVisible: false }) }}>
								                                <img alt="" style={{ width: '100%' }} src={this.state.previewImage || ''} />
								                            </Modal>
								                        </div>
								                    </FormItem>							                        
							                    </div>
								        	</Spin>			        
									        <Button style={{ marginRight: '20px',marginLeft:'210px',marginBottom:'50px' ,marginTop:'50px'}} type="primary" onClick={this.handleSubmit}>保存</Button>                                    
							                <Button className="set-submit" type="ghost" onClick={() => this.setModal3Visible(false)} id='change_rem'>取消</Button>
							            </Form>
							        </Modal>
								    <Modal
								      footer=''
							          title="便捷修改"
							          width='1000px'
							          visible={this.state.modal1Visible}
							          onOk={() => this.setModal1Visible(false)}
							          onCancel={() => this.setModal1Visible(false)}							          							          
							        >	
							          <Form horizontal onSubmit={this.handleSubmit} id="demand-form">
								            <Spin spinning={this.state.loading}>                        	
					                            <div className="user-search">  				                            	
					                            	<Row>
					                            		<FormItem className="half-item"
									                            {...formItemLayout}
									                            label="客户公司名称:" >
									                            <span>{getcustomerTyp(theData.customerTyp)}</span>
												        </FormItem>
							                            <FormItem className="half-item"
								                            {...formItemLayout}
								                            label="最新联系人：" >
								                            <span style={{width:'120px',display:'inline-block',marginLeft:'20px'}}>{getcustomerTyp(theData.customerTyp)}</span>
								                            <Button type="primary" onClick={() => this.setModal2Visible(true)}>添加</Button>												        							                            							                            
														    <Modal
															      footer=''
															      width='800px'
														          title="添加详情"
														          visible={this.state.modal2Visible}
														          onOk={() => this.setModal2Visible(false)}
														          onCancel={() => this.setModal2Visible(false)}						          							          
														        >
														        <Form horizontal onSubmit={this.submitcontact} id="demand-form">
														            <Spin spinning={this.state.loading}> 
														                <Row>
												                            <FormItem className="half-item"
													                            {...formItemLayout}
													                            label="所属公司" >
													                            <span>{theData.id}</span>
													                        </FormItem>	
												                        </Row>
												                        <Row>
																			<FormItem
														                        labelCol={{ span: 4 }}
														                        wrapperCol={{ span: 14 }}
														                        label="是否是主要联系人："  style={{marginRight:'10px'}}>
														                        <Radio.Group value={this.state.hots} onChange={(e) => {
																                    this.setState({ hots: e.target.value })
																                    }}>
																                        <Radio value={0}>是</Radio>
																                        <Radio value={1}>否</Radio>
															                    </Radio.Group>
														                    </FormItem>	
														                    <FormItem 
														                        labelCol={{ span: 4 }}
														                        wrapperCol={{ span: 14 }}
														                        label="性别："  style={{marginRight:'10px',marginTop: '-15px'}}>
														                        <Radio.Group value={this.state.hot} onChange={(e) => {
																                    this.setState({ hot: e.target.value })
																                    }}>
																                        <Radio value={0}>男</Radio>
																                        <Radio value={1}>女</Radio>
															                    </Radio.Group>
														                    </FormItem>	
														                </Row>								               
																        <Row style={{ paddingLeft:'50px' }}>
													                        <Col span={2}>*姓名：</Col>
											                                <Col span={8}>
											                                    <Input value={this.state.paymentId} required
											                                        onChange={(e) => { this.setState({ paymentId: e.target.value }) }} />
											                                </Col>
											                                <Col span={2} style={{ marginLeft: '50px' }}>QQ号：</Col>
											                                <Col span={8}>
											                                    <Input value={this.state.entId}
											                                        onChange={(e) => { this.setState({ entId: e.target.value }) }} />
											                                </Col>
										                                </Row>
													                    <Row style={{ marginTop: '20px',paddingLeft:'50px' }}>
													                        <Col span={2}>*手机号：</Col>
											                                <Col span={8}>
											                                    <Input value={this.state.pay} required
											                                        onChange={(e) => { this.setState({ pay: e.target.value }) }} />
											                                </Col>
											                                <Col span={2} style={{ marginLeft: '50px' }}>座机号：</Col>
											                                <Col span={8}>
											                                    <Input value={this.state.paym}
											                                        onChange={(e) => { this.setState({ paym: e.target.value }) }} />
											                                </Col>
										                                </Row>
						
										                                <Row style={{ marginTop: '20px' ,paddingLeft:'50px'}}>
													                        <Col span={2}>部门：</Col>
											                                <Col span={8}>
											                                    <Input value={this.state.paytId}
											                                        onChange={(e) => { this.setState({ paytId: e.target.value }) }} />
											                                </Col>
											                                <Col span={2} style={{ marginLeft: '50px' }}>职位：</Col>
											                                <Col span={8}>
											                                    <Input value={this.state.paentId}
											                                        onChange={(e) => { this.setState({ paentId: e.target.value }) }} />
											                                </Col>
										                                </Row>	
										                                <Row style={{ marginTop: '20px',paddingLeft:'50px' }}>						                       
											                                 <Col span={2}>微信号：</Col>
											                                <Col span={8}>
											                                    <Input value={this.state.payId}
											                                        onChange={(e) => { this.setState({ payId: e.target.value }) }} />
											                                </Col>
										                                </Row>
										                                <Row style={{ marginTop: '20px',paddingLeft:'50px' ,marginBottom:'50px'}}>
											                                <Button className="set-submit" type="primary" htmlType="submit"  id="change_keep" style={{marginLeft:'60px'}}>保存</Button>
		                     							                    <Button className="set-submit" type="ghost" onClick={() => this.setModal2Visible(false)} id='change_rem'>取消</Button>
														            	</Row>
														            </Spin>
														        </Form>   
														    </Modal> 
														</FormItem>
													</Row>	
							                        <FormItem className="half-item"
							                            {...formItemLayout}
							                            label="最新跟进时间:" >
							                            <span>{theData.customerTyp}</span>
												    </FormItem>					                               							                    
									                <FormItem className="half-item"							                           
								                        {...formItemLayout}
							                            label="联系方式" >
							                            {getFieldDecorator('contact', {						                            	
							                                initialValue: getcontact(theData.contact)
							                            })(
							                               <Select placeholder="选择方式" style={{width:'100px'}} >
							                                   <Select.Option value="电话">电话</Select.Option>
														       <Select.Option value="邮件">邮件</Select.Option>
														       <Select.Option value="面谈">面谈</Select.Option>
														       <Select.Option value="短信">短信</Select.Option>
							                                </Select>
							                                )}
							                            {getFieldDecorator('contacts', {							                            	
							                                initialValue: getcontact(theData.contacts)
							                            })(
							                               <Input style={{width:'180px'}}/>
							                                )}
							                        </FormItem>							                        
							                        <FormItem className="half-item"
							                            {...formItemLayout}
							                            label="客户状态：" >
							                            <span>{getcustomerStatue(theData.customerStatue)}</span>
												    </FormItem>								                        
	                               					<div  className="clearfix">	
		                               					<FormItem className="half-item"
									                            {...formItemLayout}
									                            label="更新当前客户状态" >
									                            {getFieldDecorator('customerStatue', {
									                                initialValue: getcustomerStatue(theData.customerStatue)
									                            })(
									                                <Select placeholder="选择客户状态" style={{width:'200px'}}>
								                                    {
								                                        customerStatus.map(function (item) {
								                                            return <Select.Option key={item.value} style={{width:'100px'}}>{item.key}</Select.Option>
								                                        })
								                                    }
							                                </Select>
									                                )}
									                    </FormItem>
								                    </div>
								                    <FormItem className="half-item"
							                            {...formItemLayout}
							                            label="最新跟进状态" >
							                            {getFieldDecorator('fllowSituation', {
							                                initialValue: getfllowSituation(theData.fllowSituation)
							                            })(
							                                <Select placeholder="选择跟进状态" style={{width:'200px'}}>
							                                    {
							                                        newFollow.map(function (item) {
							                                            return <Select.Option key={item.value} style={{width:'100px'}}>{item.key}</Select.Option>
							                                        })
							                                    }
							                                </Select>
							                                )}
								                    </FormItem>
													<div  className="clearfix">		                        
										                <FormItem
									                        labelCol={{ span: 4 }}
									                        wrapperCol={{ span: 18 }}
									                        label="跟进结果" >
									                        {getFieldDecorator('remarks', {
									                            initialValue: theData.remarks
									                        })(
									                            <Input type="textarea" rows={4} />
									                            )}
									                    </FormItem>										                
								                    </div> 
								                    <div className="clearfix">	
														<FormItem
									                        labelCol={{ span: 4 }}
									                        wrapperCol={{ span: 18 }}
									                        label="技术图片" >
									                        <PicturesWall
									                            pictureSign="achievement_technical_picture"
									                            fileList={this.getTechnicalPictureUrl}
									                            pictureUrl={this.state.technicalPictureUrl} />
									                        <p>图片建议：图片要清晰。</p>
									                    </FormItem>
								                    </div>									                  
										            <Button style={{ marginRight: '20px' ,marginLeft:'160px',marginBottom:'50px'}} type="primary" onClick={this.handleSubmit}>保存</Button>                                    
							                        <Button className="set-submit" type="ghost" onClick={() => this.setModal1Visible(false)} id='change_rem'>取消</Button>								                  										                   
								               </div>
					                        </Spin>
				                        </Form >
							        </Modal>							       
	                    	</div>   
							)
                      	}
                 },
                {
                    title: '跟单人',
                    dataIndex: 'adminName',
                    key: 'adminName',
                },
                {
                    title: '时间',
                    dataIndex: 'followDate',
                    key: 'followDate',
                }
            ],
            dataSource: [],
            searchTime: [,]
        };
    },
    
    
    componentWillMount() {
        let theArr = [];
        customerStatus.map(function (item) {
            theArr.push(
                <Select.Option value={item.value} key={item.key}>{item.key}</Select.Option>
            )
        });
        let auditArr = [];
        cityArr.map(function (item) {
            auditArr.push(
                <Select.Option value={item.value} key={item.key}>{item.key}</Select.Option>
            )
        }); 
        let intentionalArr = [];
        intentionalService.map(function (item) {
            intentionalArr.push(
                <Select.Option value={item.value} key={item.key}>{item.key}</Select.Option>
            )
        });   
        let newArr = [];
        newFollow.map(function (item) {
            newArr.push(
                <Select.Option value={item.value} key={item.key}>{item.key}</Select.Option>
            )
        });   

        this.state.customerStatuarr = theArr;
        this.state.auditStatusOption = auditArr;
        this.state.intentionalOption = intentionalArr;
        this.state.newOption = newArr;
        if (window.location.search) {
            let theObj = getSearchUrl(window.location.search);
            if (theObj.rid) {
                theObj.id = theObj.rid;
                if (theObj.rid != 'null') {
                    this.tableRowClick(theObj);
                };
            };
        };       
        this.loadData();        
    },
    tableRowClick(record, index) {
        this.state.RowData = record;
        this.setState({
            showDesc: true
        });
    },
   
    //删除功能
    delectRow() {
        let deletedIds;
        for (let idx = 0; idx < this.state.selectedRows.length; idx++) {
            let rowItem = this.state.selectedRows[idx];
            if (rowItem.id) {
                deletedIds=rowItem.id
            };            
        };       
        this.setState({
            selectedRowKeys: [],
            loading: deletedIds.length > 0
        });
        $.ajax({
            method: "post",
            dataType: "json",
            crossDomain: false,           
            url: globalConfig.context + "/api/admin/customer/deleteCustomer",
            data: {
                id: deletedIds
            }
        }).done(function (data) {
            if (!data.error.length) {
                message.success('删除成功！');
                this.setState({
                    loading: false,
                });
            } else {
                message.warning(data.error[0].message);
            };
            this.loadData();
        }.bind(this));
    },
    //转为公共客户功能
    changeRow() {
        let deletedIds;
        for (let idx = 0; idx < this.state.selectedRows.length; idx++) {
            let rowItem = this.state.selectedRows[idx];
            if (rowItem.id) {
                deletedIds=rowItem.id
            };            
        };       
        this.setState({
            selectedRowKeys: [],
            loading: deletedIds.length > 0
        });
        $.ajax({
            method: "GET",
            dataType: "json",
            crossDomain: false,           
            url: globalConfig.context + "/api/admin/customer/deleteCustomer",  //等待接口
            data: {
                id: deletedIds
            }
        }).done(function (data) {
            if (!data.data.error.length) {
                message.success('已转为公共客户！');
                this.setState({
                    loading: false,
                });
            } else {
                message.warning(data.error[0].message);
            };
            this.loadData();
        }.bind(this));
    },
    addClick() {
        this.state.RowData = {};
        this.setState({
            showDesc: true
        });
    },
    
    closeDesc(e, s) {
        this.state.showDesc = e;
        if (s) {
            this.loadData();
        };
    },
    search() {
        this.loadData();
    },
    reset() {      
        this.state.id = undefined;
        this.state.customerName = undefined;
        this.state.shareTyp = undefined;
        this.state.province = undefined;
        this.state.ownerType = undefined;
        this.state.customerStatus = undefined;
        this.state.auditStatus = undefined;
        this.state.adminName = undefined;
        this.state.contactName = undefined;  
        this.state.releaseDate = [];
        this.loadData(); 
    },
    searchSwitch() {
        this.setState({
            searchMore: !this.state.searchMore
        });
    },
    render() {
    	const FormItem = Form.Item
        const rowSelection = {
            selectedRowKeys: this.state.selectedRowKeys,
            onChange: (selectedRowKeys, selectedRows) => {
                this.setState({
                    selectedRows: selectedRows.slice(-1),
                    selectedRowKeys: selectedRowKeys.slice(-1)
                });
            }
        };
        const hasSelected = this.state.selectedRowKeys.length > 0;
        const { RangePicker } = DatePicker;
        const theData = this.props.data || {};    	
    	const { getFieldDecorator } = this.props.form;
    	const formItemLayout = {
            labelCol: { span: 8 },
            wrapperCol: { span: 14 },
        };
        return (
            <div className="user-content" >
                <div className="content-title">                  
                    <span>客户管理</span>
                    <div className="patent-addNew clearfix">
                        <Upload
                            action={globalConfig.context + "/api/admin/achievement/uploadTemplate"}
                            data={{ 'sign': 'achievement_template' }}
                            beforeUpload={beforeUploadFile}
                            showUploadList={false}
                            onChange={(info) => {
                                if (info.file.status !== 'uploading') {
                                    console.log(info.file, info.fileList);
                                }
                                if (info.file.status === 'done') {
                                    if (!info.file.response.error.length) {
                                        message.success(`${info.file.name} 文件上传成功！`);
                                    } else {
                                        message.warning(info.file.response.error[0].message);
                                        return;
                                    };
                                } else if (info.file.status === 'error') {
                                    message.error(`${info.file.name} 文件上传失败。`);
                                };
                            }} >
                            <Button>上传批量导入模板</Button>
                        </Upload>
                        <Button onClick={() => { window.open(globalConfig.context + '/api/admin/achievement/downloadTemplate?sign=achievement_template') }}>下载批量导入模板</Button>
                        <Button type="primary" className="addButton" onClick={this.addClick}>新建客户<Icon type="plus" /></Button>
                        <BatchImport closeDesc={this.closeDesc} />
                    </div>
                </div>
                <div className="user-search">                    
                    <Input placeholder="公司名称"
                        value={this.state.customerName}
                        onChange={(e) => { this.setState({ customerName: e.target.value }); }} /> 
                    <Select placeholder="客户类型" style={{ width: 120 }}
                            value={this.state.shareTyp }
                            onChange={(e) => { this.setState({ shareTyp : e }) }}>
                            <Select.Option value="0" >个人客户</Select.Option>
                            <Select.Option value="1" >公司客户</Select.Option>
                    </Select>     
                    <Select placeholder="意向服务"
                            style={{ width: 160 }}
                            value={this.state.companyIntention}
                            onChange={(e) => { this.setState({ companyIntention: e }) }}>
                            {this.state.intentionalOption}
                    </Select>
                    <Select placeholder="跟进进度"
                            style={{ width: 160 }}
                            value={this.state.followSituation}
                            onChange={(e) => { this.setState({ followSituation: e }) }}>
                            {this.state.newOption}
                    </Select>
                    <Select placeholder="地区"
                            style={{ width: 160 }}
                            value={this.state.province}
                            onChange={(e) => { this.setState({ province: e }) }}>
                            {this.state.auditStatusOption}
                    </Select>
                    <Select placeholder="客户状态" style={{ width: 120 }}
                            value={this.state.customerStatus}
                            onChange={(e) => { this.setState({ customerStatus: e }) }}>                           
                            {this.state.customerStatuarr}
                    </Select>
                    <Button type="primary" onClick={this.search}>搜索</Button>
                    <Button onClick={this.reset}>重置</Button>
                    <Button style={{ background: "#ea0862", border: "none", color: "#fff" }}
                        disabled={!hasSelected}
                        onClick={this.delectRow}>删除<Icon type="minus" /></Button>
                    <Button type="primary" onClick={this.showModa} >指定转交人<Icon type="plus" /></Button>                    	 
		             <Modal
		                     footer=''
				          title="选择指定人"
				          visible={this.state.visible}
				          onOk={this.handleOk}
				          onCancel={this.handleCancel}							          							          
				        > 
				        <FormItem
				        labelCol={{ span: 3 }}
                        wrapperCol={{ span: 20 }}
                        label="关键词" >
					      {/*   {this.state.dataid.map((tag) => {
						         return <input type="radio" value={this.theAssigne.key} id={this.theAssigne.id} />;
						     })}  */}
				        </FormItem>
				          <FormItem wrapperCol={{ span: 12, offset: 12 }}>
                       		<Button className="set-submit" type="primary" htmlType="submit" id="change_keep" style={{marginLeft:"50px"}} onClick={this.changeAssigner }>保存</Button>
                       		<Button className="set-submit" type="ghost" onClick={this.handleCancel } style={{marginLeft:"30px"}} id='change_rem'>取消</Button>
                    	  </FormItem>  
					</Modal>
                    <Button style={{ background: "#3fcf9e", border: "none", color: "#fff" }}
                        disabled={!hasSelected}
                        onClick={this.changeRow}>转为公共客户<Icon /></Button>    
                    <span>更多搜索<Switch defaultChecked={false} onChange={this.searchSwitch} /></span>
                    <div className="search-more" style={this.state.searchMore ? { display: 'none' } : {}}>
                    	<Input placeholder="跟单人" style={{width:'140px',marginRight:'10px'}}
		                    value={this.state.adminName}
		                    onChange={(e) => { this.setState({ adminName: e.target.value }); }} />
		                <Input placeholder="联系人姓名" style={{width:'140px',marginRight:'10px'}}
		                    value={this.state.contactName}
		                    onChange={(e) => { this.setState({ contactName: e.target.value }); }} />                                        	
                        <span>发布时间 :</span>
                        <RangePicker
                            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 }); }} />
                            
                    </div>
                </div>                                               
                <div className="patent-table">
                    <Spin spinning={this.state.loading}>
                        <Table columns={this.state.columns}
                            dataSource={this.state.dataSource}
                            rowSelection={rowSelection}
                            pagination={this.state.pagination}  />
                    </Spin>
                </div>
                <TechAchievementDesc
                    data={this.state.RowData}
                    detailApiUrl={this.props['data-detailApiUrl']}
                    achievementCategoryOption={this.state.achievementCategoryOption}
                    showDesc={this.state.showDesc}
                    closeDesc={this.closeDesc} />
               
            </div >
        );
    }
}));

export default AchievementList;