import React from 'react';
import { Icon, Table, Modal, message, Spin, Input, Select, Button, Form, Upload, Popconfirm, AutoComplete, DatePicker, Radio } from 'antd';
import ajax from 'jquery/src/ajax/xhr.js';
import $ from 'jquery/src/ajax';
import '../../userMangagement.less';
import { orderType } from '../../../../dataDic.js';
import { splitUrl, getOrderType, getOrderStage, getProjectState, getOrderState, getTransactionProject, getChangeState, getPaymentState, getOrderChannel, getApprovedState, getLock, getPaymentMethod, getTransactionChannel, beforeUploadFile } from '../../../../tools.js';
import ImgList from "../../../../common/imgList";
const Option = AutoComplete.Option;
//图片组件
const PicturesWall = React.createClass({
	getInitialState() {
		return {
			previewVisible: false,
			previewImage: '',
			fileList: [],
		}
	},
	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 { fileList } = this.state;
		return (
			
				 {
						this.handleChange(infor)
					}}
					fileList={fileList}
				/>
			 
		);
	}
});
const NewService = Form.create()(React.createClass({
	loadData(record) {
		this.state.data = [];
		this.setState({
			loading: true
		});
		$.ajax({
			method: "get",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + '/api/admin/order/getOrderCommodity',
			data: {
				orderNo: record ? record.orderNo : this.props.datauser.orderNo
			},
			success: function (data) {
				let theArr = [];
				if (!data.data) {
					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,
							commodityName: thisdata.commodityName,
							commodityType: thisdata.commodityType,
							commodityMode: thisdata.commodityMode,
							commodityQuantity: thisdata.commodityQuantity,
							commodityPrice: thisdata.commodityPrice,
							discountPrice: thisdata.discountPrice,
							commodityFirstPayment: thisdata.commodityFirstPayment,
							createTimes: thisdata.createTimes,
							discountFirstPayment: thisdata.discountFirstPayment,
							remarks: thisdata.remarks,
							commodityId: thisdata.commodityId,
						});
					};
				}
				this.setState({
					dataSource: theArr,
					pagination: false,
				});
			}.bind(this),
		}).always(function () {
			this.setState({
				loading: false
			});
		}.bind(this));
	},
	getInitialState() {
		return {
			loading: false,
			visible: false,
			orgCodeUrl: [],
			customerArr: [],
			bussStats: false,
			checkedKeys: [],
			lookflowList: [],
			active: {
				applySign: false
			},
			editFw: [],
			lookState: false,
			signBillVisible: false,
			commod: '',
			columns: [
				{
					title: '业务项目名称',
					dataIndex: 'commodityName',
					key: 'commodityName',
					render: (text, record) => {
						return (
								{text}{record.patentTypeName}
						)
				}
				}, {
					title: '项目类别',
					dataIndex: 'commodityType',
					key: 'commodityType',
					render: (text) => {
						return (getOrderType(text))
					}
				}, {
					title: '项目数量',
					dataIndex: 'commodityQuantity',
					key: 'commodityQuantity'
				}, {
					title: '服务市价(万元)',
					dataIndex: 'commodityPrice',
					key: 'commodityPrice'
				}, {
					title: '实签价格(万元)',
					dataIndex: 'discountPrice',
					key: 'discountPrice'
				}, {
					title: '下单时间',
					dataIndex: 'createTimes',
					key: 'createTimes'
				}, {
					title: '项目说明',
					dataIndex: 'remarks',
					key: 'remarks',
					render: (text) => {
						return (text && text.length > 8 ? text.substr(0, 8) + '…' : text)
					}
				}, {
					title: '操作',
					dataIndex: 'ABC',
					key: 'ABC',
					render: (text, record, index) => {
						return 
							 { this.delectRow(record) }} okText="是" cancelText="否">
								
							
						 
					}
				},
			],
			flowList: [
				{
					title: '平台流水号',
					dataIndex: 'billNo',
					key: 'billNo',
				}, {
					title: '平台流水时间',
					dataIndex: 'createTime',
					key: 'createTime'
				}, {
					title: '流水金额(万元)',
					dataIndex: 'transactionAmount',
					key: 'transactionAmount'
				}, {
					title: '付款人名称',
					dataIndex: 'payerName',
					key: 'payerName'
				}, {
					title: '收款人名称',
					dataIndex: 'payeeName',
					key: 'payeeName'
				},
				{
					title: '流水科目',
					dataIndex: 'transactionSubject',
					key: 'transactionSubject',
					render: (text) => { return getTransactionProject(text) }
				}, {
					title: '流水外联',
					dataIndex: 'transactionChannel',
					key: 'transactionChannel',
					render: (text) => { return getTransactionChannel(text) }
				}, {
					title: '财务流水号',
					dataIndex: 'financialPayNo',
					key: 'financialPayNo',
				}, {
					title: '财务流水时间',
					dataIndex: 'financialPayTime',
					key: 'financialPayTime',
				}, {
					title: '流水确认',
					dataIndex: 'confirmSign',
					key: 'confirmSign',
					render: (text) => { return text ? '已确认' : '待确认' }
				}, {
					title: '确认时间',
					dataIndex: 'confirmTime',
					key: 'confirmTime',
				}
			],
			columnsrizhi: [
				{
					title: '流程',
					dataIndex: 'processName',
					key: 'processName'
				},
				{
					title: '操作人',
					dataIndex: 'adminName',
					key: 'adminName'
				}, {
					title: '时间',
					dataIndex: 'createDate',
					key: 'createDate'
				}
			],
		};
	},
	//新建订单、编辑订单保存
	handleSubmit(e) {
		e.preventDefault();
		let theorgCodeUrl = [];
		if (this.state.orgCodeUrl.length) {
			let picArr = [];
			this.state.orgCodeUrl.map(function (item) {
				if (item.response && item.response.data && item.response.data.length) {
					picArr.push(item.response.data);
				}
			});
			theorgCodeUrl = picArr.join(",");
		};
		if (this.props.userDetaile) {
			if (!this.state.signTotalAmount) {
				message.warning('请输入实签订单金额!');
				this.refs.signFirstPayment.focus()
				return false;
			};
			if (!this.state.signFirstPayment) {
				message.warning('实签首款金额不能为空');
				this.refs.signFirstPayment.focus()
				return false;
			};
		} else {
			if (this.state.orderType == undefined) {
				message.warning('请选择订单类型');
				return false;
			};
			if (this.state.contractType == undefined && this.state.orderType == 0) {
				message.warning('请选择业务品类');
				return false;
			};
			if (!this.state.autoId) {
				message.warning('客户名称不匹配');
				return false;
			};
		}
		this.props.form.validateFields((err, values) => {
			if (!err) {
				this.setState({
					loading: true
				});
				let api = this.props.userDetaile ? '/api/admin/order/updateServiceOrder' : '/api/admin/order/createOrder';
				$.ajax({
					method: "POST",
					dataType: "json",
					crossDomain: false,
					url: globalConfig.context + api,
					data: !this.props.userDetaile ? {
						uid: this.state.autoId,
						orderType: this.state.orderType,
						contractType: this.state.contractType
					} : {
						orderNo: this.props.datauser.orderNo,
						signTotalAmount: this.state.signTotalAmount,
						signFirstPayment: this.state.signFirstPayment,
						orderRemarks: this.state.orderRemarks,
						contractNo: this.state.contractNo,
						contractPictureUrl: theorgCodeUrl.length ? theorgCodeUrl : '',
					}
				}).done(function (data) {
					this.setState({
						loading: false
					});
					if (!data.error.length) {
						message.success('保存成功!');
						this.handleOk()
					} else {
						message.warning(data.error[0].message);
					}
				}.bind(this));
			}
		});
	},
	//查看基本详情基本信息
	loaduser(record) {
		this.state.orderList = []
		$.ajax({
			method: "get",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + '/api/admin/order/getServiceOrderDetail',
			data: {
				orderNo: record ? record.orderNo : this.props.datauser.orderNo
			},
			success: function (data) {
				let thisData = data.data;
				if (!thisData) {
					if (data.error && data.error.length) {
						message.warning(data.error[0].message);
					};
					thisData = {};
				};
				this.setState({
					id: thisData.id,
					changeStatus: thisData.changeStatus,
					orderList: thisData,
					orderAmount: thisData.orderAmount,
					firstPayment: thisData.firstPayment,
					signTotalAmount: thisData.signTotalAmount,
					signFirstPayment: thisData.signFirstPayment,
					approval: thisData.approval == 0 ? thisData.approval.toString() : thisData.approval,
					orderRemarks: thisData.orderRemarks,
					orgCodeUrl: thisData.contractPictureUrl ? splitUrl(thisData.contractPictureUrl, ',', globalConfig.avatarHost + '/upload') : [],
					//签单
					orderNo: thisData.orderNo,//订单编号
					buyerName: thisData.buyerName,
					contractNo: thisData.contractNo,
					buyerId: thisData.buyerId,
				});
			}.bind(this),
		}).always(function () {
			this.setState({
				loading: false
			});
		}.bind(this));
	},
	handleOk(e) {
		this.setState({
			visible: false,
		});
		this.props.closeDesc(false, true);
	},
	handleCancel(e) {
		this.setState({
			visible: false,
		});
		this.props.closeDesc(false);
	},
	//删除
	delectRow(record) {
		this.setState({
			loading: true
		});
		$.ajax({
			method: "get",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + "/api/admin/order/deleteOrderCommodity",
			data: {
				detailId: record.id
			}
		}).done(function (data) {
			if (!data.error.length) {
				message.success('删除成功!');
				this.setState({
					loading: false,
				});
				this.loaduser()
				this.loadData();
			} else {
				message.warning(data.error[0].message);
			};
		}.bind(this));
	},
	//添加明细
	addDetailed() {
		this.setState({
			gid: '',
			customerArr: [],
			commodityName: '',
			commodityId: '',
			commodityMode: '',
			commodityQuantity: '',
			commodityPrice: '',
			discountPrice: '',
			commodityFirstPayment: '',
			discountFirstPayment: '',
			remarks: '',
			addState: 1,
			addnextVisible: true
		})
	},
	rizhi() {
		// console.log(this.state.orderNo)
		this.setState({
			loading: true
		})
		$.ajax({
			method: "get",
			dataType: "json",
			crossDomain: false,
			url: '/api/admin/newOrder/selectOrderLog',
			data: {
				orderNo: this.props.datauser.orderNo
			},
			success: function (data) {
				let theArr = [];
				let thisData = data.data;
				if (!thisData.length) {
					if (data.error && data.error.length) {
						message.warning(data.error[0].message);
					};
					thisData = {};
				} else {
					for (let i = 0; i < data.data.length; i++) {
						let thisdata = data.data[i];
						theArr.push({
							processName: thisdata.processName,
							adminName: thisdata.adminName,
							createDate: thisdata.createDate,
							remarks: thisdata.remarks
						});
					};
				};
				this.setState({
					dataSourcerizhi: theArr
				})
			}.bind(this),
		}).always(function () {
			this.setState({
				loading: false
			});
		}.bind(this));
	},
	//查看订单日志
	getOrderLog() {
		this.setState({
			rizhivisible: true
		})
		this.rizhi()
	},
	closeOrderLog() {
		this.setState({
			rizhivisible: false
		})
	},
	nextCancel() {
		this.setState({
			addnextVisible: false
		})
	},
	tableRowClick(record, index) {
		this.setState({
			active: this.props.datauser.active,
			editFw: record,
			jid: record.id,
			discountFirstPayment: record.discountFirstPayment,
			discountPrice: record.discountPrice,
			addnextVisible: true,
			addState: 0,
		});
	},
	getOrgCodeUrl(e) {
		this.setState({ orgCodeUrl: e });
	},
	componentWillMount() {
	},
	//查看订单详情里面的各种骚操作
	//受理订单
	admissibleOrderOK() {
		let idArr = this.props.datauser;
		this.props.admissibleOrder(idArr, true)
	},
	//拒绝受理
	admissibleOrderCancel() {
		let idArr = this.props.datauser;
		this.props.admissibleOrder(idArr, false)
	},
	//取消订单
	cancelOrder() {
		let idArr = this.props.datauser;
		this.props.operation(idArr, 3)
	},
	//作废订单
	scrapOrder() {
		let idArr = this.props.datauser;
		this.props.operation(idArr, 2)
	},
	//锁定订单
	lockOrder() {
		let idArr = this.props.datauser;
		this.props.operation(idArr, 0)
	},
	//解锁订单
	unlockOrder() {
		let idArr = this.props.datauser;
		this.props.operation(idArr, 1)
	},
	//签单
	signBitt() {
		this.setState({
			contractNo: this.state.contractNo,
			signVisible: true,
			entryTime: undefined,
			selTime: undefined
		})
	},
	signBittOk() {
		this.setState({
			signVisible: false
		})
	},
	signBillOk() {
		this.setState({
			signBillVisible: false
		})
	},
	signBillCancel(e) {
		this.setState({
			signVisible: false,
			signBillVisible: false,
		});
		this.props.closeDesc(false, true);
	},
	//加载(自动补全)
	supervisor(e, state) { //客户名称与服务名称自动补全
		let api = state ? '/api/admin/customer/getCustomerByName' : '/api/admin/order/getBusinessProjectByName';
		$.ajax({
			method: "get",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + api,
			data: state ? {
				name: e,
				type: this.state.customType
			} : {
				businessName: e
			},
			success: function (data) {
				let thedata = data.data;
				if (!thedata) {
					if (data.error && data.error.length) {
						message.warning(data.error[0].message);
					};
					thedata = {};
				};
				this.setState({
					states: state,
					customerArr: thedata,
				});
			}.bind(this),
		}).always(function () {
			this.setState({
				loading: false
			});
		}.bind(this));
	},
	//上级主管输入框失去焦点是判断客户是否存在
	selectAuto(value) {
		let kid = [];
		let fwList = this.state.customerArr;
		fwList.map(function (item) {
			if (value == item.bname) {
				kid = item
			}
		})
		this.setState({
			commodityName: value,
			gid: kid.id,
			commodityPrice: kid.price == 0 ? kid.price.toString() : kid.price,
			commodityFirstPayment: kid.firstPayment == 0 ? kid.firstPayment.toString() : kid.firstPayment
		})
	},
	//客户
	selectAutoCUT(value) {
		let autoIds;
		let fwList = this.state.customerArr;
		fwList.map(function (item) {
			if (value == item.name) {
				autoIds = item.id
			}
		})
		this.setState({
			customerName: value,
			autoId: autoIds
		})
	},
	//服务值改变时请求客户名称
	httpChange(e) {
		this.state.gid = '';
		if (e.length >= 1) {
			this.supervisor(e, false);
		}
		this.setState({
			commodityName: e
		})
	},
	//客户名称自动补全
	customerChange(e) {
		this.state.autoId = '';
		if (e.length >= 2) {
			this.supervisor(e, true);
		}
		this.setState({
			customerName: e
		})
	},
	//新建明细保存
	nextSubmit(e) {
		e.preventDefault();
		if (this.state.gid == undefined || !this.state.gid) {
			message.warning('服务名称不匹配!');
			return false;
		};
		if (!this.state.commodityPrice) {
			message.warning('请输入市场价格!');
			this.refs.commodityPrice.focus();
			return false;
		};
		if (!this.state.discountPrice) {
			message.warning('请输入实签价格!');
			this.refs.discountPrice.focus();
			return false;
		};
		if (!this.state.commodityQuantity) {
			message.warning('请输入商品数量!');
			this.refs.commodityQuantity.focus();
			return false;
		};
		if (!this.state.commodityFirstPayment) {
			message.warning('请输入市场首付金额!');
			this.refs.commodityFirstPayment.focus();
			return false;
		};
		if (!this.state.discountFirstPayment) {
			message.warning('请输入签单首付金额!');
			this.refs.discountFirstPayment.focus();
			return false;
		};
		this.setState({
			loading: true
		});
		let api = this.state.addState ? '/api/admin/order/addOrderCommodity' : '/api/bianji';
		$.ajax({
			method: "POST",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + api,
			data: {
				commodityId: this.state.gid,
				orderNo: this.props.datauser.orderNo,
				commodityName: this.state.commodityName,//商品名称
				commodityMode: this.state.commodityMode,//商品规格
				commodityQuantity: this.state.commodityQuantity,//商品数量
				commodityType: 0,//商品类型
				commodityPrice: this.state.commodityPrice,//市场总价
				discountPrice: this.state.discountPrice,//签单总价
				commodityFirstPayment: this.state.commodityFirstPayment,//市场首付金额
				discountFirstPayment: this.state.discountFirstPayment,//签单首付金额
				remarks: this.state.remarks,//服务说明
			}
		}).done(function (data) {
			this.setState({
				loading: false
			});
			if (!data.error.length) {
				message.success('保存成功!');
				this.nextCancel()
				this.loaduser(this.props.datauser);
				this.loadData();
			} else {
				message.warning(data.error[0].message);
			}
		}.bind(this));
	},
	tabRowSave(e) {
		e.preventDefault();
		if (!this.state.discountPrice) {
			message.warning('实签价格不能为空!');
			return false;
		};
		if (!this.state.discountFirstPayment) {
			message.warning('签单首付金额不能为空!');
			return false;
		};
		this.setState({
			loading: true
		});
		$.ajax({
			method: "POST",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + '/api/admin/order/updateOrderCommodity',
			data: {
				detailId: this.state.jid,
				orderNo: this.props.datauser.orderNo,
				discountPrice: this.state.discountPrice,//签单总价
				discountFirstPayment: this.state.discountFirstPayment,//签单首付金额
				commodityQuantity: this.state.editFw.commodityQuantity,
				remarks: this.state.editFw.remarks
			}
		}).done(function (data) {
			this.setState({
				loading: false
			});
			if (!data.error.length) {
				message.success('保存成功!');
				this.nextCancel()
				this.loaduser(this.props.datauser);
				this.loadData();
			} else {
				message.warning(data.error[0].message);
			}
		}.bind(this));
	},
	//签单保存
	signOk(e) {
		e.preventDefault();
		this.temporarySave(false)
	},
	//暂存信息
	temporary() {
		this.temporarySave(true)
	},
	//签单时间选择
	selTime(e, index) {
		this.setState({
			entryTime: e,
			selTime: index
		})
	},
	signSub(e) {
		e.preventDefault();
		if (!this.state.selTime) {
			message.warning("请选择签单时间!");
			return false;
		};
		let theorgCodeUrl = [];
		if (this.state.orgCodeUrl.length) {
			let picArr = [];
			this.state.orgCodeUrl.map(function (item) {
				if (item.response && item.response.data && item.response.data.length) {
					picArr.push(item.response.data);
				}
			});
			theorgCodeUrl = picArr.join(",");
		};
		this.setState({
			loading: true
		});
		let dataList = this.state.dataSource,
			idsList = [];
		dataList.map((item, index) => {
			// console.log(item);
			// console.log(this.state.commodityId);
			idsList.push({
				businessId: '',
				businessProjectId: item.commodityId,
				customerStatus: "1",
				followSituation: "5",
				remarks: "签单-自动触发"
			})
		})
		$.ajax({
			method: "POST",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + '/api/admin/order/signServiceOrder',
			data: {
				userBusinessList: JSON.stringify(idsList),
				uid: this.state.buyerId,
				orderNo: this.props.datauser.orderNo,
				signTotalAmount: this.state.signTotalAmount,
				signFirstPayment: this.state.signFirstPayment,
				approval: this.state.approval,
				orderRemarks: this.state.orderRemarks,
				contractNo: this.state.contractNo,
				signTime: this.state.selTime,
				contractPictureUrl: theorgCodeUrl.length ? theorgCodeUrl : '',
			}
		}).done(function (data) {
			this.setState({
				loading: false
			});
			if (!data.error.length) {
				message.success('操作成功!');
				this.signBillCancel()
			} else {
				message.warning(data.error[0].message);
			}
		}.bind(this));
	},
	//签单保存与暂存函数
	temporarySave(e) {
		if (!this.state.signTotalAmount) {
			message.warning('实签款项不能为空!')
			return false;
		};
		if (!this.state.signTotalAmount) {
			message.warning('实签首款不能为空!')
			return false;
		};
		if (this.state.approval == undefined) {
			message.warning('实签首款不能为空!')
			return false;
		};
		if (!this.state.contractNo) {
			message.warning("请输入合同编号!");
			return false;
		}
		this.setState({
			loading: true
		});
		let theorgCodeUrl = [];
		if (this.state.orgCodeUrl.length) {
			let picArr = [];
			this.state.orgCodeUrl.map(function (item) {
				if (item.response && item.response.data && item.response.data.length) {
					picArr.push(item.response.data);
				}
			});
			theorgCodeUrl = picArr.join(",");
		};
		let api = e ? '/api/admin/order/updateServiceOrder' : '/api/admin/order/signServiceOrder';
		$.ajax({
			method: "POST",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + api,
			data: {
				orderNo: this.props.uid ? this.props.uid.orderNo : this.props.datauser.orderNo,
				signTotalAmount: this.state.signTotalAmount,
				signFirstPayment: this.state.signFirstPayment,
				approval: this.state.approval,
				orderRemarks: this.state.orderRemarks,
				contractNo: this.state.contractNo,
				contractPictureUrl: theorgCodeUrl.length ? theorgCodeUrl : '',
			}
		}).done(function (data) {
			this.setState({
				loading: false
			});
			if (!data.error.length) {
				message.success('操作成功!');
				this.signBillCancel()
			} else {
				message.warning(data.error[0].message);
			}
		}.bind(this));
	},
	lookflow() {
		this.setState({
			loading: true,
			lookVisible: true,
		})
		this.state.lookSource = [];
		$.ajax({
			method: "get",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + '/api/admin/order/getBillByOrderNo',
			data: {
				orderNo: this.props.datauser.orderNo,
			},
			success: function (data) {
				let theArr = [];
				if (!data.data) {
					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,
							billNo: thisdata.billNo,
							transactionAmount: thisdata.transactionAmount,
							createTime: thisdata.createTime,
							transactionAmount: thisdata.transactionAmount,
							payerName: thisdata.payerName,
							payeeName: thisdata.payeeName,
							transactionSubject: thisdata.transactionSubject,
							transactionChannel: thisdata.transactionChannel,
							financialPayNo: thisdata.financialPayNo,
							financialPayTime: thisdata.financialPayTime,
							orderNo: thisdata.orderNo,
							departmentName: thisdata.departmentName,
							salesmanName: thisdata.salesmanName,
							financeName: thisdata.financeName,
							confirmSign: thisdata.confirmSign,
							deleteSign: thisdata.deleteSign,
							confirmTime: thisdata.confirmTime
						});
					};
				};
				this.setState({
					lookflowList: theArr,
				});
			}.bind(this),
		}).always(function () {
			this.setState({
				loading: false
			});
		}.bind(this));
	},
	lookCancel() {
		this.setState({
			lookVisible: false
		})
	},
	/* -----变更操作开始----- */
	//新建变更
	addChange() {
		this.setState({
			addChangeState: true,
			stateAdd: 1,
			changeRemarks: ''
		})
	},
	//产看变更记录
	lookChange() {
		this.setState({
			addChangeState: true,
			stateAdd: 0
		})
		this.lookChangeData()
	},
	//查看变更列表修改变更
	modifyChangeCancel() {
		this.setState({
			modifyChangeState: false
		})
	},
	//获取变更记录
	lookChangeData() {
		this.setState({
			loading: true
		});
		$.ajax({
			method: "get",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + '/api/admin/order/viewOrderChange',
			data: {
				orderNo: this.props.datauser.orderNo,
			},
			success: function (data) {
				let theArr = [];
				if (!data.data) {
					if (data.error && data.error.length) {
						message.warning(data.error[0].message);
					};
				} else {
					for (let i = 0; i < data.data.length; i++) {
						theArr = data.data;
					};
				};
				this.setState({
					changeHtml: theArr,
				});
			}.bind(this),
		}).always(function () {
			this.setState({
				loading: false
			});
		}.bind(this));
	},
	//添加变更状态
	addChangeCancel() {
		this.setState({
			addChangeState: false
		})
	},
	//新建变更
	subChangeState(e) {
		e.preventDefault();
		this.setState({
			loading: true
		});
		$.ajax({
			method: "POST",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + '/api/admin/order/addOrderChange',
			data: {
				orderNo: this.props.datauser.orderNo,
				changeComment: this.state.changeRemarks
			}
		}).done(function (data) {
			this.setState({
				loading: false
			});
			if (!data.error.length) {
				message.success('保存成功!');
				this.addChangeCancel();
				this.loaduser();
			} else {
				message.warning(data.error[0].message);
			}
		}.bind(this));
	},
	//查看修改变更
	modifyChange(item) {
		this.setState({
			modifyChangeState: true,
			changePromoter: item.creater,
			changeTime: item.createTime,
			changeState: item.changeStatus,
			changeRemarks: item.changeComment,
			idt: item.changeId,
			orderNot: item.orderNo
		})
	},
	//删除变更
	modifyDelete(item) {
		this.setState({
			loading: true
		});
		$.ajax({
			method: "get",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + '/api/admin/order/deleteOrderChange',
			data: {
				changeId: item.changeId,
			}
		}).done(function (data) {
			this.setState({
				loading: false
			});
			if (!data.error.length) {
				message.success('删除成功!');
				this.lookChangeData();
				this.loaduser()
			} else {
				message.warning(data.error[0].message);
			}
		}.bind(this));
	},
	//修改变更保存
	changeModify(e) {
		e.preventDefault();
		this.setState({
			loading: true
		});
		$.ajax({
			method: "POST",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + '/api/admin/order/updateOrderChange',
			data: {
				changeId: this.state.idt,
				changeStatus: this.state.changeState,
				changeComment: this.state.changeRemarks
			}
		}).done(function (data) {
			this.setState({
				loading: false
			});
			if (!data.error.length) {
				message.success('保存成功!');
				this.modifyChangeCancel();
				this.lookChangeData();
				this.loaduser()
			} else {
				message.warning(data.error[0].message);
			}
		}.bind(this));
	},
	/*-----变更操作结束----*/
	//查看流失。项目列表
	lookSee(state) {
		this.state.lookSource = [];
		this.setState({
			loading: true
		});
		let api = state ? '/api/xiangmu' : '/api/liushui'
		$.ajax({
			method: "get",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + api,
			data: {
				orderNo: this.props.datauser.orderNo
			},
			success: function (data) {
				let theArr = [];
				if (!data.data) {
					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,
							commodityName: thisdata.commodityName,
							commodityType: thisdata.commodityType,
							commodityMode: thisdata.commodityMode,
							commodityQuantity: thisdata.commodityQuantity,
							commodityPrice: thisdata.commodityPrice,
							discountPrice: thisdata.discountPrice,
							commodityFirstPayment: thisdata.commodityFirstPayment,
							createTimes: thisdata.createTimes,
							discountFirstPayment: thisdata.discountFirstPayment,
							remarks: thisdata.remarks,
						});
					};
				}
				this.setState({
					lookSource: theArr,
				});
			}.bind(this),
		}).always(function () {
			this.setState({
				loading: false
			});
		}.bind(this));
	},
	//开单选择订单类型骚操作
	orderTypeFn(e) {
		if (e == 0) {
			this.setState({
				bussStats: true,
				orderType: e
			})
			this.category();
		} else {
			this.setState({
				contractType: undefined,
				bussStats: false,
				orderType: e
			})
		}
	},
	//品类数据获取
	category() {
		$.ajax({
			method: "get",
			dataType: "json",
			crossDomain: false,
			url: globalConfig.context + "/api/admin/Varieties/getSuperList",
			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.cname,
							id: item.id,
						})
					})
				}
				this.setState({
					contractType: undefined,
					categoryArr: theArr,
				})
			}.bind(this),
		});
	},
	componentWillReceiveProps(nextProps) { //props改变时触发
		this.state.visible = nextProps.showDesc;
		this.state.signBillVisible = nextProps.signBillVisible;
		if (this.state.signBillVisible) {
			this.loaduser(nextProps.uid)
		};
		if (nextProps.userDetaile && nextProps.showDesc) {
			this.loaduser(nextProps.datauser);
			this.loadData(nextProps.datauser);
		} else {
			this.setState({
				orderType: undefined,
				customerName: '',
				autoId: '',
				customerArr: [],
				contractType: undefined,
				bussStats: false,
				customType: 0
			})
		}
	},
	render() {
		const FormItem = Form.Item
		const formItemLayout = {
			labelCol: { span: 8 },
			wrapperCol: { span: 14 },
		};
		const changeHtml = this.state.changeHtml || [];
		const editFws = this.state.editFw;
		const categoryList = this.state.categoryArr || [];
		const orderDetaiel = this.state.orderList || [];
		const dataSources = this.state.customerArr || [];
		const options = this.state.states ? dataSources.map((group, index) =>
			{group.name}
		) : dataSources.map((group, index) =>
			{group.bname}
		)
		return (
			
				{this.state.visible ? 
					
				 : 
}