| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699 | import React,{Component} from 'react';import ajax from 'jquery/src/ajax/xhr.js';import $ from 'jquery';import moment from 'moment';import Picture from '@/manageCenter/publicComponent/picture';import '@/manageCenter/financialManage/distribute/public.less';import { Icon, Button, Form, Input, Select, Upload, Col, Spin, Table, Switch, message, DatePicker, Modal, Radio, InputNumber, Cascader, Popconfirm} from 'antd';import OrderDesc from '@/manageCenter/financialManage/orderDetail/orderDesc'import Assign from '@/manageCenter/publicComponent/assign';import {areaSelect, getProvince} from '@/NewDicProvinceList';import './table.less';import {getProcessStatus,getApproval,getTaskStatus,getLiquidationStatus,getApprovedState,getProjectStatus,splitUrl,getjiedian,getboutique} from '@/tools';import {projectStates,taskStatus ,projectStatus} from '@/dataDic.js';const FormItem =Form.Item;const PicturesWall = React.createClass({    getInitialState() {        return {            previewVisible: false,            previewImage: '',            fileList: this.props.pictureUrl,        }    },    getDefaultProps(){    	return{    		changeClick:this.modifyChange    	}    },    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"}}>                <Upload                    action={globalConfig.context + "/api/admin/patentNew/uploadFile"}                    data={{ 'sign': '' }}                    listType="picture-card"                    fileList={fileList}                    onPreview={this.handlePreview}                    onChange={this.handleChange} >                    {uploadButton}                </Upload>                <Modal maskClosable={false} visible={previewVisible} footer={null} onCancel={this.handleCancel}>                    <img alt="example" style={{ width: '100%' }} src={previewImage} />                </Modal>            </div>        );    }});const Task = React.createClass({    loadData(pageNo) {        this.state.data = [];        this.setState({            page:pageNo,            loading: true        });        $.ajax({            method: "get",            dataType: "json",            crossDomain: false,            url: globalConfig.context + "/api/admin/orderProject/orderTaskList",            data: {                pageNo: pageNo || 1,                pageSize: this.state.pagination.pageSize,                specially:0,//个人                name: this.state.nameSearch,//客户名称                depId: this.state.departmenttSearch,//订单部门                orderNo:this.state.orderNoSearch,//订单编号                taskId:this.state.taskNoSearch, //任务编号                taskStatus:this.state.taskStatus,//任务状态                adminName:this.state.adminName,//任务受理人            },            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,                            orderNo: thisdata.orderNo,//订单编号                            id:thisdata.id,//任务ID		                    taskName:thisdata.taskName,//名称		                    cname:thisdata.cname,//项目品类                            receiverName:thisdata.receiverName,//受理人                            projectStatus:thisdata.projectStatus,//项目状态                            taskStatus:thisdata.taskStatus,//任务状态                            taskDate:thisdata.taskDate,//分配时间                            userName:thisdata.taskName === '软著认证'?thisdata.userName+'('+thisdata.commodityQuantity.toString()+'/'+thisdata.alreadyNumber+')':thisdata.userName,//用户名                        	depName:thisdata.depName,//部门名称							commodityQuantity:thisdata.commodityQuantity//任务数量                        });                    };                }                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                });            }.bind(this),        }).always(function () {            this.setState({                loading: false            });        }.bind(this));    },    getInitialState() {        return {            searchMore: true,            assignVisible:false,            releaseDate: [],            roleName:'',			testFlag:true,            boHuivisible:false,            selectedRowKeys: [],             departmentArr: [],            selectedRows: [],            attachmentUrl:[],			contactList: [],            paginations:false,            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: 'id',                    key: 'id',                }, {                    title: '任务名称',                    dataIndex: 'taskName',                    key: 'taskName',					render:(text)=>{						return (text&&text.length>8?text.substr(0,8)+'…':text)					}                },  {                    title: '订单编号',                    dataIndex: 'orderNo',                    key: 'orderNo',                },                {                    title: '业务类别',                    dataIndex: 'cname',                    key: 'cname',                },                {                    title: '客户名称',                    dataIndex: 'userName',                    key: 'userName',					className:'userName'                },                {                    title: '任务状态',                    dataIndex: 'taskStatus',                    key: 'taskStatus',                    render: text => { return getTaskStatus(text)}                },                {                    title: '项目状态',                    dataIndex: 'projectStatus',                    key: 'projectStatus',                    render: text => { return getProjectStatus(text)}                },                {                    title: '分配时间',                    dataIndex: 'taskDate',                    key: 'taskDate',					                },{                    title: '订单部门',                    dataIndex: 'depName',                    key: 'depName'                },                {                    title:'操作',                    dataIndex: 'caozuo',                    key: 'caozuo',                    render:(text,record)=>{                        return <div>                        	<Button type="primary" onClick={(e)=>{e.stopPropagation(),this.evaluate(record,'咨询师')}}>转交</Button>                            <Button type="primary" style={{margin:'0 10px'}} onClick={(e)=>{e.stopPropagation(),this.okCancel(record)}}>添加工时</Button>                        </div>                    }                }            ],            dataSource: [],            searchTime: [],            columnsX: [				{                    title: '业务项目名称',                    dataIndex: 'commodityName',                    key: 'commodityName'                }, {                    title: '项目类别',                    dataIndex: 'cname',                    key: 'cname',                                    },{                    title: '项目数量',                    dataIndex: 'commodityQuantity',                    key: 'commodityQuantity'                }, {                    title: '金额(万元)',                    dataIndex: 'commodityPrice',                    key: 'commodityPrice'                }, {                    title: '负责人',                    dataIndex: 'contacts',                    key: 'contacts'                }, {                    title: '负责人电话',                    dataIndex: 'contactsMobile',                    key: 'contactsMobile'                }, {                    title: '主要项目',                    dataIndex: 'main',                    key: 'main',                    render:(text)=>{                    	return (text?'是':'否')                    }                }, {                    title: '项目说明',                    dataIndex: 'taskComment',                    key: 'taskComment',					render:(text)=>{						return (text&&text.length>8?text.substr(0,8)+'…':text)					}                },			],			columnsA: [				{			        title: '流程',			        dataIndex: 'content',			        key: 'content',					align:'center'			    }, {			        title: '操作人',			        dataIndex: 'aName',			        key: 'aName',					align:'center'			    }, {			        title: '时间',			        dataIndex: 'createTimes',			        key: 'createTimes',					align:'center'			    }			],			dataSourceX: [],			dataSourceA: [],			ContactsLists: [{					title: '批次',					dataIndex: 'num',					key: 'num',				},{					title: '下证时间',					dataIndex: 'licenceTimes',					key: 'licenceTimes',					render: (text, record, index) => {						return <div>									<DatePicker style={{marginTop:'5px'}}												showTime												format="YYYY-MM-DD"												onOk={(e)=>{}}												value={record.licenceTimes ? moment(record.licenceTimes) : null}												onChange={(data, dataString) => {record.licenceTimes = dataString ;this.setState({ contactList: this.state.contactList }); }} />							</div>					                           					}				}, {					title: '下证数量',					dataIndex: 'alreadyNumber',					key: 'alreadyNumber',					render: (text, record, index) => {						return <div>						{<Input value={record.alreadyNumber} placeholder="请输入金额(必填项)" key={record.id} required="required"					  onChange={(e) => { record.alreadyNumber = e.target.value; this.setState({ contactList: this.state.contactList }); }} style={{width:'120px'}}/>}						</div>						}				},				{					title: '未下证数量',					dataIndex: 'notCount',					key: 'notCount',				},{					title: '操作',					dataIndex: 'dels',					key: 'dels',					render: (text, record, index) => {						return <div>			                    {<Popconfirm title="是否删除?" onConfirm={(e)=>{this.confirmDelet(record)}} okText="删除" cancelText="不删除">									    <Button style={{marginRight:'10px',color:'#ffffff',background:'#f00',border:'none'}}>删除</Button>									</Popconfirm>}								{record.flag?'':<Button  type="primary"  onClick={(e)=>{ e.stopPropagation(),this.contactSave(record,index)}}>保存</Button>}			                </div>					}				}			],        }    },    /* 分派 */    evaluate(record,nub){        this.state.assignData=record;        this.setState({        	nub,            assignVisible:true        })    },       componentWillMount() {    	this.departmentList();        this.loadData();    },	componentDidMount(){		this.setColor()	},	setColor(){		var arr = []		console.log($(".userName span"))		$(".userName span").after("(<span class='ruanzhu'>软著数</span>/<span class='xiazheng'>下证数</span>)")	},    tableRowClick(record, index) {        this.state.RowData = record;        if(record.taskName === '软著认证'){			this.setState({				speVisible: true,				id: record.id,				dataArr:record,				commodityQuantity:record.commodityQuantity			});        }else{			this.setState({				visible: true,			});		}        this.xiangqing(record.id,record.taskName);        this.xiangqings(record.orderNo);        this.xiangmu(record.orderNo);		this.loaduserss(record);    },    //点击修改任务详情	tijiaoOk(){		let attachmentUrls = [];        if (this.state.attachmentUrl.length) {            let picArr = [];            this.state.attachmentUrl.map(function (item) {				if ( item.response && item.response.data && item.response.data.length ){					picArr.push(item.response.data);				}            });            attachmentUrls = picArr.join(",");        };         		$.ajax({			method: "POST",			dataType: "json",			crossDomain: false,			url: globalConfig.context +'/api/admin/orderProject/updateOrderTask' ,			data: {				id:this.state.id,//任务编号				orderNo:this.state.orderNo,//订单编号				projectStatus:this.state.projectStatus,//项目状态				taskStatus:this.state.taskStatus,//任务状态				taskComment:this.state.taskComment,//说明				startDate:this.state.startDate,//启动日期				endDate:this.state.endDate,//结束日期				acceptDate:this.state.acceptDate,//受理日期				reviewDate:this.state.reviewDate,//评审日期				publicityDate:this.state.publicityDate,//公示日期				licenceDate:this.state.licenceDate,//发证日期				attachmentUrl:attachmentUrls.length?attachmentUrls:'',//附件				contacts:this.state.contacts,//联系人				contactMobile:this.state.contactMobile,//联系人电话				legalPerson:this.state.legalPerson,//法人				legalPersonTel:this.state.legalPersonTel,//法人电话				certificateNumber:this.state.certificateNumber,//证书编号				status:this.state.status,//状态				formRetrieve:this.state.formRetrieve,//满意度表格				taskRefund:this.state.taskRefund,//退单				refundContent:this.state.refundContent,//退单信息				retrieveContent:this.state.retrieveContent,//回收信息				locationProvince:this.state.ProvinceCity[0],				locationCity:this.state.ProvinceCity[1],				locationArea:this.state.ProvinceCity[2],				postalAddress:this.state.postalAddress,//详细地址				arrivalMoney:this.state.arrivalMoney,//是否到款				setUpAmount:this.state.setUpAmount,//立项金额				declareUser:this.state.declareUser,//账号				declarePwd:this.state.declarePwd//密码			}		}).done(function(data) {			this.setState({				loading: false			});			if(!data.error.length) {				message.success('保存成功!');				this.visitCancel();			} else {				message.warning(data.error[0].message);			}		}.bind(this));	},	//点击修改任务详情	tianjiaOk(){		let attachmentUrls = [];        if (this.state.attachmentUrl.length) {            let picArr = [];            this.state.attachmentUrl.map(function (item) {				if ( item.response && item.response.data && item.response.data.length ){					picArr.push(item.response.data);				}            });            attachmentUrls = picArr.join(",");        };         		$.ajax({			method: "POST",			dataType: "json",			crossDomain: false,			url: globalConfig.context +'/api/admin/orderProject/addTaskHours' ,			data: {				taskId:this.state.taskId,//任务编号				hours:this.state.hours,//工时				remarks:this.state.remarks,//说明				taskDate:this.state.taskDate,//日期				taskComment:this.state.taskComment,//说明			}		}).done(function(data) {			this.setState({				loading: false			});			if(!data.error.length) {				message.success('保存成功!');				this.noCancel();			} else {				message.warning(data.error[0].message);			}		}.bind(this));	},     //订单详情	xiangqing(id,taskName) {		$.ajax({			method: "get",			dataType: "json",			crossDomain: false,			url: globalConfig.context +"/api/admin/orderProject/orderTaskDetail",			data: {				id:id			},			success: function(data) {				let theArr = [];				let thisdata=data.data;				if(data.error.length || data.data.list == "") {					if(data.error && data.error.length) {						message.warning(data.error[0].message);					};				} else {					this.setState({						 id: thisdata.id,//ID						 orderNo: thisdata.orderNo,//订单编号						 userName:thisdata.userName,//客户名称						 taskName: thisdata.taskName,//任务名称						 cname:thisdata.cname,//项目品类						 contractNo:thisdata.contractNo,//合同编号						 projectStatus:thisdata.projectStatus.toString(),//项目状态						 taskStatus:thisdata.taskStatus.toString(),//任务状态						 taskDate:thisdata.taskDate,//分配时间	                     taskComment:thisdata.taskComment,//说明	                     attachmentUrl: thisdata.attachmentUrl ? splitUrl(thisdata.attachmentUrl, ',', globalConfig.avatarHost + '/upload') : [],//图片地址	                     salesmanName:thisdata.salesmanName,//订单负责人	                     startDate:thisdata.startDate,//启动日期	                     endDate:thisdata.endDate,//结束日期	                     acceptDate:thisdata.acceptDate,//受理日期	                     reviewDate:thisdata.reviewDate,//评审日期	                     publicityDate:thisdata.publicityDate,//公示日期	                     licenceDate:thisdata.licenceDate,//发证日期	                     contacts:thisdata.contacts,//联系人	                     contactMobile:thisdata.contactMobile,//联系人电话	                     legalPerson:thisdata.legalPerson,//法人	                     legalPersonTel:thisdata.legalPersonTel,//法人电话						 certificateNumber:thisdata.certificateNumber,//证书编号						 status:thisdata.status,//状态						 formRetrieve:thisdata.formRetrieve,//满意度表格						 taskRefund:thisdata.taskRefund,//退单						 refundContent:thisdata.refundContent,//退单信息						 retrieveContent:thisdata.retrieveContent,//回收信息						 arrivalMoney:thisdata.arrivalMoney,//是否到款						 setUpAmount:thisdata.setUpAmount,//立项金额						 declareUser:thisdata.declareUser,//账号						 declarePwd:thisdata.declarePwd//密码					})				};							}.bind(this),		}).always(function() {			this.setState({				loading: false			});		}.bind(this));	},	//订单详情	xiangqings(orderNos) {		$.ajax({			method: "get",			dataType: "json",			crossDomain: false,			url: globalConfig.context +"/api/admin/newOrder/getOrderNewDetail",			data: {				orderNo:orderNos			},			success: function(data) {				let theArr = [];				let thisdata=data.data;				let ProvinceCityArr = [];				let ProvinceS = thisdata.locationProvince; //省				let citys = thisdata.locationCity;//市				let Areas = thisdata.locationArea;//区				ProvinceCityArr.push(ProvinceS, citys, Areas);				if(data.error.length || data.data.list == "") {					if(data.error && data.error.length) {						message.warning(data.error[0].message);					};				} else {					this.setState({						 processStatus:thisdata.processStatus,//流程状态	                     liquidationStatus:thisdata.liquidationStatus,//结算状态	                     approval:thisdata.approval,//特批状态	                     orderRemarks:thisdata.orderRemarks,//订单留言	                     salesmanName:thisdata.salesmanName,//营销员名称	                     salesmanMobile:thisdata.salesmanMobile,//营销员电话	                     financeName:thisdata.financeName,//财务名称	                     financeMobile:thisdata.financeMobile,//财务电话	                     depName:thisdata.depName,//订单部门						 ProvinceCity:ProvinceCityArr,						 postalAddress:thisdata.postalAddress,//详细地址					})				};				console.log(this.state.ProvinceCity)			}.bind(this),		}).always(function() {			this.setState({				loading: false			});		}.bind(this));	},	//项目列表	xiangmu(orderNos) {		$.ajax({			method: "get",			dataType: "json",			crossDomain: false,			url: globalConfig.context +"/api/admin/newOrder/getOrderTask",			data: {				orderNo:orderNos			},			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.length; i++) {                        let thisdata = data.data[i];                        theArr.push({                             key: i,                             id:thisdata.id,                             orderNo:thisdata.orderNo,//订单编号                             commodityId:thisdata.commodityId,//项目ID                             commodityName:thisdata.commodityName,//项目名称                             cname:thisdata.cname,//项目类别                             commodityPrice:thisdata.commodityPrice,//项目价格                             commodityQuantity:thisdata.commodityQuantity,//项目数量                             main:thisdata.main,//是否为主要任务                             taskComment:thisdata.taskComment,//任务说明                             contacts:thisdata.contacts,//联系人                             contactsMobile:thisdata.contactsMobile,//联系人电话                             taskStatus:thisdata.taskStatus,//是否分配							 contractNo:thisdata.contractNo,//合同编号							 certificateNumber:thisdata.certificateNumber                        });                    };				};				this.setState({                    dataSourceX: theArr,                });			}.bind(this),		}).always(function() {			this.setState({				loading: false			});		}.bind(this));	},	//导出	exportExec(){	    let departmentName='',	    depart =this.state.departmentArr || [];	    depart.map(item=>{	        if(this.state.departmentId==item.id){	            departmentName=item.name;	            return;	        }	    });	    let data = {	        departmentId:this.state.departmentId,	        departmentName:departmentName,	        salesName: this.state.orderRefundSearch,//订单负责人	        startTime: this.state.releaseDate[0],	        endTime: this.state.releaseDate[1],	        grantStatus:this.state.grantStatus,	    }	    window.location.href=(globalConfig.context+'/api/admin/orderProject/exportMyTaskList?'+$.param(data));	},	 //关闭详情	visitCancel(e){		this.setState({			visible:false,			speVisible:false,		})		this.reset();	},	visitOk(e){		this.setState({			visible:false,			speVisible:false,		})		this.reset();	},    closeDesc(e, s) {        this.state.showDesc = e;        if (s) {            this.loadData(this.state.page);        };    },    closeAssign(e, s) {    	this.state.roleName='';        this.state.assignVisible = e;        if (s) {            this.loadData(this.state.page);        };    },    //添加工时	okCancel(record){		this.setState({			lookVisible:true,			taskId:record.id		})	},	//测试	getOrgCodeUrl(e) {	    this.setState({ orgCodeUrl: e });	},	//查看下证信息	loaduserss(record){		$.ajax({	        method: "get",			dataType: "json",			crossDomain: false,			url: globalConfig.context + '/api/admin/orderProject/selectTaskProgress',	        data: {	          tid:record.id	        },	        success: function (data) {	            let theArr=[];	            let thisData=[];	            if (!thisData) {	                if (data.error && data.error.length) {	                    message.warning(data.error[0].message);	                };	                thisData = {};	            }else{	            	for(let i = 0; i < data.data.length; i++) {	            		thisData= data.data[i];  	                	theArr.push({							num:i+1,	                		key:i,	                		id:thisData.id,//编号	                		alreadyNumber:thisData.alreadyNumber,//下证数	                		licenceTimes:thisData.licenceTimes,//下证时间	                		notCount:thisData.notCount,//未下证数							flag:true	                	})	            	}	            	this.setState({	            		contactList:theArr	            	})	            };	        }.bind(this),	   }).always(function () {	        this.setState({            		            loading: false	        });	    }.bind(this));  	},	 //下证信息保存	contactSave(record,index){		if(!record.licenceTimes){			message.warning('下证日期不能为空');			return		}		if(!record.alreadyNumber){			message.warning('下证数量不能为空');			return		}		this.setState({			loading: true		});		$.ajax({			url: globalConfig.context + '/api/admin/orderProject/createTaskProgress',			method: 'post',			data: {				taskId: this.state.id,				licenceTimes:record.licenceTimes,				alreadyNumber:record.alreadyNumber			}		}).done(function(data) {			this.setState({				loading: false			});			if(!data.error.length) {				message.success('保存成功!');				record.flag = true				this.loaduserss(this.state.dataArr);			} else {				message.warning(data.error[0].message);			}		}.bind(this));	},	 //下证信息删除	contactDele(record){			this.setState({				loading: true			});			$.ajax({				url: globalConfig.context + '/api/admin/orderProject/delectTaskProgress',				method: 'post',				data: {					id: record.id,				}			}).done(function(data) {				this.setState({					loading: false				});				if(!data.error.length) {					this.loaduserss(this.state.dataArr);				} else {					message.warning(data.error[0].message);				}			}.bind(this));	},	//点击新增下证信息	addcontact(record) {		this.state.contactList.push({			num:this.state.contactList.length+1,			key:this.state.contactList.length,			licenceTimes:'',			alreadyNumber: '',			notCount: '',			dels:'',			flag:false,			aflag:false		});		this.setState({			contactList: this.state.contactList,		})	},	//删除下证信息	confirmDelet(record) {		this.state.contactList.splice(record.key,1);		this.setState({			contactList: this.state.contactList		})					if(record.id){				this.contactDele(record)			}				},	caozuorizhi(){		this.setState({			visibleA:true		})		$.ajax({			method: "get",			dataType: "json",			crossDomain: false,			url: globalConfig.context +"/api/admin/orderProject/TaskLogList",			data: {				id:this.state.id			},			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.length; i++) {		                let thisdata = data.data[i];		                theArr.push({		                     key: i,		                     id:thisdata.id,//日志ID							 content:thisdata.content,//流程		                     taskId:thisdata.taskId,//任务ID		                     aName:thisdata.aName,//负责人		                     createTimes:thisdata.createTimes,//时间		                });		            };				};				this.setState({		            dataSourceA: theArr,		        });			}.bind(this),		}).always(function() {			this.setState({				loading: false			});		}.bind(this));	},	//关闭操作工时	visitCancelA(){		this.setState({			visibleA:false		})	},	foo2(){		this.setState({			testFlag1:false		})	},	foo1(){		this.setState({			testFlag1:true		})	},	foo(){		this.setState({			testFlag:false		})	},	nextCancel() {		this.setState({			addnextVisible: false		})	},	//点击打卡项目详情	tableRowClickX(record, index) {        this.setState({        	jid:record.id,//项目ID        	kid:record.commodityId,//商品ID        	commodityName:record.commodityName,//金额        	commodityPrice:record.commodityPrice,//金额        	commodityQuantity:record.commodityQuantity,//数量        	taskComment:record.taskComment,//备注        	main:record.main.toString(),//是否为主要        	addnextVisible:true,        	addState:0,        });    },	//关闭添加工时	noCancel(){		this.setState({			lookVisible:false		})		this.reset();	},    search() {        this.loadData();    },    reset() {    	this.state.id='';//任务编号		this.state.orderNo='';//订单编号		this.state.projectStatus=undefined;//项目状态		this.state.taskStatus=undefined;//任务状态		this.state.taskComment='';//说明		this.state.startDate='';//启动日期		this.state.endDate='';//结束日期		this.state.acceptDate='';//受理日期		this.state.reviewDate='';//评审日期		this.state.publicityDate='';//公示日期		this.state.licenceDate='';//发证日期		attachmentUrl:[];//附件		this.state.contacts='';//联系人		this.state.contactMobile='';//联系人电话		this.state.legalPerson='';//法人		this.state.legalPersonTel='';//法人电话		this.state.taskId='';//任务编号		this.state.hours='';//工时		this.state.remarks='';//说明		this.state.taskDate='';//日期		this.state.taskComment='';//说明        this.state.nameSearch = '';        this.state.releaseDate = [];        this.state.orderNoSearch='';        this.state.taskNoSearch='';        this.state.distribution=undefined;        this.state.departmenttSearch=undefined;        this.loadData(this.state.page);    },    searchSwitch() {        this.setState({            searchMore: !this.state.searchMore        });    },    //部门	departmentList() {		this.setState({			loading: true		});		$.ajax({			method: "get",			dataType: "json",			crossDomain: false,			url: globalConfig.context + "/api/admin/organization/selectSuperId",			data: {			},			success: function(data) {				let thedata = data.data;				let theArr = [];				if(!thedata) {					if(data.error && data.error.length) {						message.warning(data.error[0].message);					};					thedata = {};				} else {					thedata.map(function(item, index) {						theArr.push({							key: index,							name: item.name,							id: item.id,						})					})				}				this.setState({					departmentArr: theArr,				})			}.bind(this),		}).always(function() {			this.setState({				loading: false			});		}.bind(this));	},    render() {         const rowSelection = {            selectedRowKeys: this.state.selectedRowKeys,            onChange: (selectedRowKeys, selectedRows) => {                this.setState({                    selectedRows: selectedRows.slice(-1),                    selectedRowKeys: selectedRowKeys.slice(-1)                });            }        };        const formItemLayout = {            labelCol: { span: 8 },            wrapperCol: { span: 14 },        };		const formItemLayout1 = {		    labelCol: { span: 6 },		    wrapperCol: { span: 8 },		};        const hasSelected = this.state.selectedRowKeys.length > 0;        const { RangePicker } = DatePicker;        let departmentArr = this.state.departmentArr || [];        return ( <div className="user-content">            <div className="content-title">                    <span>任务派单管理</span>                </div>                <div className="user-search">                    <Input placeholder="客户名称"                        value={this.state.nameSearch}                        onChange={(e) => { this.setState({ nameSearch: e.target.value }); }} />                    <Input placeholder="订单编号"                        value={this.state.orderNoSearch}                        onChange={(e) => { this.setState({ orderNoSearch: e.target.value }); }} />                    <Input placeholder="任务编号"                        value={this.state.taskNoSearch}                        onChange={(e) => { this.setState({ taskNoSearch: e.target.value }); }} />                     <Select placeholder="选择部门"                        style={{ width: 150 ,marginRight:'10px'}}                        value={this.state.departmenttSearch}                        onChange={(e) => { this.setState({ departmenttSearch: e }) }}>                        {                            departmentArr.map(function (item) {                                    return <Select.Option key={item.id} >{item.name}</Select.Option>                            })                        }               		 </Select>                     <Button type="primary" onClick={this.search}>搜索</Button>                    <Button onClick={this.reset}>重置</Button>					<Button type='primary' style={{marginLeft:'10px'}} onClick={this.exportExec}>导出Excel</Button>                    {/* <span>更多搜索<Switch defaultChecked={false} onChange={this.searchSwitch.bind(this)} /></span>                    <div className="search-more" style={this.state.searchMore ? { display: 'none' } : {}}>                        <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}                            onRowClick={this.tableRowClick.bind(this)} />                    </Spin>                </div>                <Assign                    title="任务"                    selApi={"/api/admin/orderProject/projectDistribution"}                    data={this.state.assignData}                    showDesc={this.state.assignVisible}                    closeDesc={this.closeAssign.bind(this)}                    fenpaiData={8}                    specially={0}                    roleName={this.state.nub}					requestMethod = {"post"}                />                <Modal					      className="customeDetails"				      footer=''			          title="订单详情"			          width='900px'			          visible={this.state.visible}			          onOk={this.visitOk}					  onCancel={this.visitCancel}							          							          			        >					        <Form layout="horizontal" onSubmit={this.handleSubmit} id="demand-form" style={{paddingBottom:'00px'}} >				            <Spin spinning={this.state.loading}>				                <div className="clearfix">				                	<FormItem className="half-item"			                            {...formItemLayout}			                            label="任务编号" >			                            <span>{this.state.id}</span>		                    		</FormItem>		                    		<FormItem className="half-item"			                            {...formItemLayout}			                            label="任务名称" >  			                            <span>{this.state.taskName}</span>				                    </FormItem>		                    		<FormItem className="half-item"			                            {...formItemLayout}			                            label="订单编号" >			                            <span>{this.state.orderNo}</span>		                    		</FormItem>		                    		<FormItem className="half-item"			                            {...formItemLayout}			                            label="业务类别" >   			                            <span>{this.state.cname}</span>		                    		</FormItem>		                    		<FormItem className="half-item"			                            {...formItemLayout}			                            label="客户名称" >   			                            <span>{this.state.userName}</span>		                    		</FormItem>		                    		<FormItem className="half-item"			                            {...formItemLayout}			                            label="特批立项" >  			                            <span>{getApprovedState(this.state.approval)}</span>		                    		</FormItem>		                    		<FormItem className="half-item"			                            {...formItemLayout}			                            label="流程状态" >  			                            <span>{getProcessStatus(this.state.processStatus)}</span>		                    		</FormItem>		                    		<FormItem className="half-item"			                            {...formItemLayout}			                            label="结算状态" >  			                            <span>{getLiquidationStatus(this.state.liquidationStatus)}</span>		                    		</FormItem>		                    		<FormItem className="half-item"			                            {...formItemLayout}			                            label="订单负责人" >   			                            <span>{this.state.salesmanName}</span>		                    		</FormItem>		                    		<FormItem className="half-item"			                            {...formItemLayout}			                            label="订单负责人电话" >                          				<span>{this.state.salesmanMobile}</span>		                    		</FormItem>		                    		<FormItem className="half-item"			                            {...formItemLayout}			                            label="财务负责人" >  			                            <span>{this.state.financeName}</span>		                    		</FormItem>		                    		<FormItem className="half-item"			                            {...formItemLayout}			                            label="财务负责人电话" >                          				<span>{this.state.financeMobile}</span>		                    		</FormItem>									<FormItem className="half-item"									    {...formItemLayout}									    label="证书编号" >   									        <Input placeholder="请输入证书编号" value={this.state.certificateNumber} style={{width:'200px'}}									        onChange={(e)=>{this.setState({certificateNumber:e.target.value})}} ref="commodityQuantity"/>									</FormItem>		                    		<FormItem className="half-item"			                            {...formItemLayout}			                            label="客户联系人" >   		                                    <Input placeholder="请输入联系人名称" value={this.state.contacts} style={{width:'200px'}}		                                    onChange={(e)=>{this.setState({contacts:e.target.value})}} ref="commodityQuantity"/>				                    </FormItem>				                    <FormItem className="half-item"			                            {...formItemLayout}			                            label="联系人电话" >   		                                    <Input placeholder="请输入联系人电话" value={this.state.contactMobile} style={{width:'200px'}}		                                    onChange={(e)=>{this.setState({contactMobile:e.target.value})}} ref="commodityQuantity"/>				                    </FormItem>				                    <FormItem className="half-item"			                            {...formItemLayout}			                            label="企业法人" >   		                                    <Input placeholder="请输入法人名称" value={this.state.legalPerson} style={{width:'200px'}}		                                    onChange={(e)=>{this.setState({legalPerson:e.target.value})}} ref="commodityQuantity"/>				                    </FormItem>									<FormItem className="half-item"										{...formItemLayout}										label="企业地址">										<Cascader options={areaSelect()}  value={this.state.ProvinceCity} placeholder="选择城市" style={{width:'200px'}}											onChange={(e,pre) => { this.setState({ ProvinceCity: e }) }}  />									</FormItem>				                    <FormItem className="half-item"			                            {...formItemLayout}			                            label="法人电话" >   		                                    <Input placeholder="请输入法人电话" value={this.state.legalPersonTel} style={{width:'200px'}}		                                    onChange={(e)=>{this.setState({legalPersonTel:e.target.value})}} ref="commodityQuantity"/>				                    </FormItem>		                    		<FormItem className="half-item"			                            {...formItemLayout}			                            label="项目状态" >  			                            <Select placeholder="选择项目状态"				                            style={{ width:'200px'}}				                            value={this.state.projectStatus}				                            onChange={(e)=>{this.setState({projectStatus:e})}}>				                            {			                                    projectStatus.map(function (item) {			                                        return <Select.Option key={item.value} >{item.key}</Select.Option>			                                    })			                                }				                    	 </Select>		                    		</FormItem>									<FormItem className="half-item"									    {...formItemLayout}									    label="任务状态" >  									    <Select placeholder="选择任务状态"									        style={{ width:'200px'}}									        value={this.state.taskStatus}									        onChange={(e)=>{this.setState({taskStatus:e})}}>									        {									            taskStatus.map(function (item) {									                return <Select.Option key={item.value} >{item.key}</Select.Option>									            })									        }										 </Select>									</FormItem>									<FormItem className="half-item"									    {...formItemLayout}									    label="立项金额(万元)" >   									        <Input placeholder="请输入立项金额" value={this.state.setUpAmount} style={{width:'200px'}}									        onChange={(e)=>{this.setState({setUpAmount:e.target.value})}} ref="commodityQuantity"/>									</FormItem>									<FormItem className="half-item"										{...formItemLayout}										label="是否到款">										<Radio.Group value={this.state.arrivalMoney}										onChange={(e)=>{this.setState({arrivalMoney:e.target.value})}}>											<Radio value={0}>未到企业</Radio>											<Radio value={1}>已到企业</Radio>										</Radio.Group>									</FormItem>									<div className="clearfix">										<h3 className='sub-title'>申报系统账户信息</h3>										{/*<span style={{color:'red'}}>注:仅技术部可见</span>*/}										<FormItem className="half-item"										    {...formItemLayout}										    label="用户名" >   										        <Input placeholder="请输入用户名" value={this.state.declareUser} style={{width:'200px'}}										        onChange={(e)=>{this.setState({declareUser:e.target.value})}}/>										</FormItem>										<FormItem className="half-item"										    {...formItemLayout}										    label="密码" >   										        <Input placeholder="请输入密码" value={this.state.declarePwd} style={{width:'200px'}}										        onChange={(e)=>{this.setState({declarePwd:e.target.value})}}/>										</FormItem>									</div>		                    		<div className="clearfix">										<h3 className='sub-title'>项目申报进度</h3>										<FormItem className="half-item" {...formItemLayout} label="启动时间">											<DatePicker 												style={{marginTop:"2px",width: '200px',height:"32px" }}												showTime												format="YYYY-MM-DD"												onOk={(e)=>{}}												value={this.state.startDate ? moment(this.state.startDate) : null}												onChange={(data, dataString) => { this.setState({ startDate: dataString }); }} />										</FormItem>										<FormItem className="half-item" {...formItemLayout} label="完成时间">											<DatePicker 												style={{marginTop:"2px",width: '200px',height:"32px" }}												showTime												format="YYYY-MM-DD"												onOk={(e)=>{}}												value={this.state.endDate ? moment(this.state.endDate) : null}												onChange={(data, dataString) => { this.setState({ endDate: dataString }); }} />										</FormItem>										<FormItem className="half-item" {...formItemLayout} label="受理时间">											<DatePicker 												style={{marginTop:"2px",width: '200px',height:"32px" }}												showTime												format="YYYY-MM-DD"												onOk={(e)=>{}}												value={this.state.acceptDate ? moment(this.state.acceptDate) : null}												onChange={(data, dataString) => { this.setState({ acceptDate: dataString }); }} />										</FormItem>										<FormItem className="half-item" {...formItemLayout} label="评审时间">											<DatePicker 												style={{marginTop:"2px",width: '200px',height:"32px" }}												showTime												format="YYYY-MM-DD"												onOk={(e)=>{}}												value={this.state.reviewDate ? moment(this.state.reviewDate) : null}												onChange={(data, dataString) => { this.setState({ reviewDate: dataString }); }} />										</FormItem>										<FormItem className="half-item" {...formItemLayout} label="公示时间">											<DatePicker 												style={{marginTop:"2px",width: '200px',height:"32px" }}												showTime												format="YYYY-MM-DD"												onOk={(e)=>{}}												value={this.state.publicityDate ? moment(this.state.publicityDate) : null}												onChange={(data, dataString) => { this.setState({ publicityDate: dataString }); }} />										</FormItem>										<FormItem className="half-item" {...formItemLayout} label="发证时间">											<DatePicker 												style={{marginTop:"2px",width: '200px',height:"32px" }}												showTime												format="YYYY-MM-DD"												onOk={(e)=>{}}												value={this.state.licenceDate ? moment(this.state.licenceDate) : null}												onChange={(data, dataString) => { this.setState({ licenceDate: dataString }); }} />										</FormItem>                                    </div>                                    <div className='clearfix'>			                			<FormItem labelCol={{ span: 3 }} wrapperCol={{ span: 16 }} label="附件">									        <Picture								              fileList={(e)=>{this.setState({attachmentUrl:e})}}								              pictureUrl={this.state.attachmentUrl}								              visible={this.props.visible}								              data={{'sign':'order_task_file',url:'/api/admin/orderProject/uploadOrderTaskFile',number:8}}								           />									    </FormItem>									</div>									<div className='clearfix'>				                    	<FormItem								            labelCol={{ span: 3 }}								            wrapperCol={{ span: 16 }}								            label="备注" >								                <Input type="textarea" placeholder="请输入备注" rows={4}  value={this.state.taskComment} 									    				onChange={(e)=>{this.setState({taskComment:e.target.value})}}/>									        </FormItem>				                    </div>					                     <div>					                	<span style={{marginLeft:'50px',fontSize:'20px'}}>项目业务</span>					                	{this.state.processStatus==0?<Button type='primary' onClick={this.addDetailed} style={{float:'right',marginRight:'50px',marginBottom:'15px'}}>添加项目明细</Button>:""}					                </div>					                <div className="patent-table">					                    <Spin spinning={this.state.loading}>					                        <Table columns={this.state.columnsX}					                            dataSource={this.state.dataSourceX}					                            pagination={this.state.paginations}					                            onRowClick={this.tableRowClickX} 					                            />					                    </Spin>						            </div>				                    <div className='clearfix'>						                   <Button className="cancel" type="primary" onClick={this.tijiaoOk} style={{marginLeft:"200px",marginTop:'10px'}} htmlType="submit">保存</Button>			                               <Button className="cancel" type="ghost" onClick={this.visitCancel} style={{marginLeft:"50px",marginTop:'10px'}}>取消</Button>	                            	</div>				                </div>				            </Spin>				        </Form>			        </Modal>			        <Modal maskClosable={false} visible={this.state.lookVisible}                        onOk={this.noCancel} onCancel={this.noCancel}                        width='500px'                        title={'添加工时'}                                             footer=''                        className="admin-desc-content">			            <Form layout="horizontal"  id="demand-form">			                <Spin spinning={this.state.loading}>			                 		<div className='clearfix'>			                			<FormItem  {...formItemLayout} label="工作日期">	                                        <DatePicker 	                                        	style={{marginTop:"2px",width: '200px',height:"32px" }}	                                            showTime	                                            format="YYYY-MM-DD"	                                            onOk={(e)=>{}}	                                            value={this.state.taskDate ? moment(this.state.taskDate) : null}	                                            onChange={(data, dataString) => { this.setState({ taskDate: dataString }); }} />	                                    </FormItem>									</div>									<div className='clearfix'>			                			<FormItem 				                            {...formItemLayout}				                            label="工作时长" >   			                                    <Input placeholder="请输入工作时长" value={this.state.hours} style={{width:'200px'}}			                                    onChange={(e)=>{this.setState({hours:e.target.value})}} ref="commodityQuantity"/>					                    </FormItem>									</div>					                   <div className='clearfix'>				                    	<FormItem								           {...formItemLayout}								            label="工作内容" >								                <Input type="textarea" placeholder="请输入备注" rows={4}  value={this.state.remarks} 									    				onChange={(e)=>{this.setState({remarks:e.target.value})}}/>									        </FormItem>				                    </div>					                    <div className='clearfix'>						                   <Button className="cancel" type="primary" onClick={this.tianjiaOk} style={{marginLeft:"100px",marginTop:'10px'}} htmlType="submit">确定</Button>			                               <Button className="cancel" type="ghost" onClick={this.noCancel} style={{marginLeft:"50px"}}>取消</Button>	                            	</div>			                </Spin>			            </Form >			        </Modal>			        <Modal maskClosable={false} visible={this.state.addnextVisible}                        onOk={this.nextCancel} onCancel={this.nextCancel}                        width='800px'                        title='项目任务详情'                                            footer=''                        className="admin-desc-content">			            <Form layout="horizontal" onSubmit={this.nextSubmit} id="demand-form">			                <Spin spinning={this.state.loading}>				                <div className='clearfix'>			                    	<FormItem className="half-item"				                            {...formItemLayout}				                            label="项目名称" >			                    			<span>{this.state.commodityName}</span>			                    	</FormItem>			                    	<FormItem className="half-item"				                            {...formItemLayout}				                            label="项目数量" >			                    			<span>{this.state.commodityQuantity}</span>			                    	</FormItem>			                    	<FormItem className="half-item"				                            {...formItemLayout}				                            label="金额(万元)" >			                    			<span>{this.state.commodityPrice}</span>			                    	</FormItem>				                    <FormItem className="half-item"			                            {...formItemLayout}			                            label="主要项目" >  			                            <span>{getboutique(this.state.main)}</span>		                    		</FormItem>				                    <div className='clearfix'>				                    	<FormItem 				                            labelCol={{ span: 3 }}								            wrapperCol={{ span: 18 }}				                            label="服务说明" >			                    			<span>{this.state.taskComment}</span>				                    	</FormItem>			                    	</div>			                    </div>				                </Spin>			            </Form >			        </Modal>					<Modal maskClosable={false} visible={this.state.speVisible}					    onOk={this.visitOk} onCancel={this.visitCancel}					    width='900px'					    title='项目概况'                    					    footer=''					    className="admin-desc-content">						<div className="clearfix">							<FormItem className="half-item"								{...formItemLayout}								label="当前项目情况">								<Radio.Group value={this.state.status}								onChange={(e)=>{this.setState({status:e.target.value})}}>									<Radio value={0}>开启</Radio>									<Radio value={1}>暂停</Radio>								</Radio.Group>								<Button type='primary' size='small' style={{marginTop:'5px',position:'absolute'}} onClick={this.caozuorizhi}>操作日志</Button>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="合同编号">								<span>{this.state.contractNo}</span>							</FormItem>						</div>						<div className="clearfix">							<FormItem className="half-item"								{...formItemLayout}								label="项目状态">								<Select placeholder="选择项目状态"								    style={{ width:'200px'}}								    value={this.state.projectStatus}								    onChange={(e)=>{this.setState({projectStatus:e})}}>								    {								        projectStatus.map(function (item) {								            return <Select.Option key={item.value} >{item.key}</Select.Option>								        })								    }								 </Select>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="是否特批">								<span>{getApproval(this.state.approval)}</span>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="结算状态">								<span>{getLiquidationStatus(this.state.liquidationStatus)}</span>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="流程状态">								<span>{getProcessStatus(this.state.processStatus)}</span>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="订单编号">								<span>{this.state.orderNo}</span>							</FormItem>						</div>						<div className="clearfix">							<FormItem className="half-item"								{...formItemLayout}								label="满意度表格">								<Radio.Group value={this.state.formRetrieve}								onChange={(e)=>{this.setState({formRetrieve:e.target.value})}}>									<Radio value={0}>未收回</Radio>									<Radio value={1}>已收回</Radio>									<Radio value={2}>其他</Radio>								</Radio.Group>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="退单">								<Radio.Group value={this.state.taskRefund}										onChange={(e)=>{this.setState({taskRefund:e.target.value})}}>									<Radio value={0}>已完成</Radio>									<Radio value={1}>未完成</Radio>									<Radio value={2}>其他</Radio>								</Radio.Group>							</FormItem>						</div>						<div className="clearfix">							{<FormItem className='half-item'								{...formItemLayout}								label="(满意度)备注">								<Input type="textarea" placeholder="请输入备注" rows={2}  value={this.state.retrieveContent} 										onChange={(e)=>{this.setState({retrieveContent:e.target.value})}}/>								</FormItem>}							{<FormItem className='half-item'								{...formItemLayout}								label="(退单)备注">								<Input type="textarea" placeholder="请输入备注" rows={2}  value={this.state.refundContent} 										onChange={(e)=>{this.setState({refundContent:e.target.value})}}/>								</FormItem>}						</div>						<div className="clearfix">							<h3 className='sub-title'>任务信息</h3>							<FormItem className="half-item"								{...formItemLayout}								label="任务编号">								<span>{this.state.id}</span>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="任务名称">								<span>{this.state.taskName}</span>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="任务状态">								<Select placeholder="选择任务状态"								    style={{ width:'200px'}}								    value={this.state.taskStatus}								    onChange={(e)=>{this.setState({taskStatus:e})}}>								    {								        taskStatus.map(function (item) {								            return <Select.Option key={item.value} >{item.key}</Select.Option>								        })								    }								 </Select>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="任务类别">								<span>{this.state.cname}</span>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="证书编号" >   								    <Input placeholder="请输入证书编号" value={this.state.certificateNumber} style={{width:'200px'}}								    onChange={(e)=>{this.setState({certificateNumber:e.target.value})}} ref="commodityQuantity"/>							</FormItem>						</div>						{/*<hr style={{border:'1px dashed #aaa', width:"90%",margin:'auto'}}/>*/}						<div className="clearfix">							<h3 className='sub-title'>联系信息</h3>							<FormItem className="half-item"								{...formItemLayout}								label="客户名称">								<span>{this.state.userName}</span>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="企业法人">								<Input placeholder="请输入法人名称" value={this.state.legalPerson} style={{width:'200px'}}								onChange={(e)=>{this.setState({legalPerson:e.target.value})}} ref="commodityQuantity"/>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="法人电话">								<Input placeholder="请输入法人电话" value={this.state.legalPersonTel} style={{width:'200px'}}								onChange={(e)=>{this.setState({legalPersonTel:e.target.value})}} ref="commodityQuantity"/>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="客户联系人">								<Input placeholder="请输入联系人名称" value={this.state.contacts} style={{width:'200px'}}								onChange={(e)=>{this.setState({contacts:e.target.value})}} ref="commodityQuantity"/>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="联系人电话">								<Input placeholder="请输入联系人电话" value={this.state.contactMobile} style={{width:'200px'}}								onChange={(e)=>{this.setState({contactMobile:e.target.value})}} ref="commodityQuantity"/>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="企业地址">								<Cascader options={areaSelect()}  value={this.state.ProvinceCity} placeholder="选择城市" style={{width:'200px'}}									onChange={(e,pre) => { this.setState({ ProvinceCity: e }) }}/>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="">							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="详细地址">								<Input placeholder="请输入详细地址" value={this.state.postalAddress} style={{width:'200px'}}								onChange={(e)=>{this.setState({postalAddress:e.target.value})}} ref="commodityQuantity"/>							</FormItem>						</div>						{/*<hr style={{border:'1px dashed #aaa', width:"90%",margin:'auto'}}/>*/}						<div className="clearfix">						<h3 className='sub-title'>订单负责人信息</h3>							<FormItem className="half-item"								{...formItemLayout}								label="负责人">								<span>{this.state.salesmanName+'(湖南科德)'}</span>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="负责人电话">								<span>{this.state.salesmanMobile}</span>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="财务负责人">								<span>{this.state.financeName}</span>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="财务负责人电话">								<span>{this.state.financeMobile}</span>							</FormItem>						</div>						<div className="clearfix" style={{marginTop:'10px'}}>							<FormItem								labelCol={{ span: 3 }}								wrapperCol={{ span: 14 }}								label="附件">								 <Picture								   fileList={(e)=>{this.setState({attachmentUrl:e})}}								   pictureUrl={this.state.attachmentUrl}								   visible={this.props.visible}								   data={{'sign':'order_task_file',url:'/api/admin/orderProject/uploadOrderTaskFile',number:8}}								/>							</FormItem>						</div>						<div className="clearfix">							<FormItem								labelCol={{ span: 3 }}								wrapperCol={{ span: 16 }}								label="备注">								<Input type="textarea" placeholder="请输入备注" rows={4}  value={this.state.taskComment} 										onChange={(e)=>{this.setState({taskComment:e.target.value})}}/>								</FormItem>						</div>						<div className="clearfix">							<h3 className='sub-title'>项目申报进度</h3>							<FormItem className="half-item"								{...formItemLayout}								label="启动时间">								<DatePicker style={{marginTop:'5px'}}											showTime											format="YYYY-MM-DD"											onOk={(e)=>{}}											value={this.state.startDate ? moment(this.state.startDate) : null}											onChange={(data, dataString) => {this.setState({ startDate: dataString }); }}/>							</FormItem>							<FormItem className="half-item"								{...formItemLayout}								label="软著派单数量">								<span>{this.state.commodityQuantity}</span>								<Button type='primary' size='small' style={{marginLeft:'45px'}} onClick={this.addcontact}>+增加下证信息</Button>							</FormItem>							<div className="patent-table patent-table-center">							    <Spin spinning={this.state.loading}>							        <Table columns={this.state.ContactsLists}										   dataSource={this.state.contactList}										   pagination={false}/>							    </Spin>							</div>						</div>						<div className="clearfix">							<h3 className='sub-title'>项目业务</h3>							<div className="patent-table">							    <Spin spinning={this.state.loading}>							        <Table columns={this.state.columnsX}							            dataSource={this.state.dataSourceX}							            pagination={this.state.paginations}							            onRowClick={this.tableRowClickX} 							            />							    </Spin>							</div>						</div>						<div className='clearfix'>						       <Button className="cancel" type="primary" onClick={this.tijiaoOk} style={{marginLeft:"200px",marginTop:'10px'}} htmlType="submit">保存</Button>						       <Button className="cancel" type="ghost" onClick={this.visitCancel} style={{marginLeft:"50px",marginTop:'10px'}}>取消</Button>						</div>					</Modal>					<Modal width='800px' visible={this.state.visibleA}						onCancel={this.visitCancelA}					    title='操作日志'                    					    footer=''					    className="admin-desc-content">						<div className="patent-table patent-table-center">						    <Spin spinning={this.state.loading}>						        <Table columns={this.state.columnsA}										dataSource={this.state.dataSourceA}										pagination={false}/>						    </Spin>						</div>					</Modal>        </div> )    }}) export default Task;
 |