import React from 'react'; import $ from 'jquery/src/ajax'; import { Modal, message, Spin, Upload, Input, Button, Form, Table } from 'antd'; import {getOrderType,getjiedian,splitUrl,getNewOrderType,getProcessStatus,getApproval,getLiquidationStatus,getProjectStatus} from '@/tools'; const FormItem = Form.Item; const OrderDetail = Form.create()(React.createClass({ loadXmu(record) { this.state.data = []; this.setState({ loading: true }); $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + '/api/admin/newOrder/getOrderTask', data: { orderNo:record?record.orderNo:this.props.data.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, commodityPrice:thisdata.commodityPrice, commodityQuantity:thisdata.commodityQuantity, taskStatus:thisdata.taskStatus, taskComment:thisdata.taskComment, main:thisdata.main, contacts:thisdata.contacts, contactsMobile:thisdata.contactsMobile, cname:thisdata.cname, }); }; } this.setState({ dataSource: theArr, pagination: false, }); }.bind(this), }).always(function () { this.setState({ loading: false }); }.bind(this)); }, getInitialState() { return { visible: false, loading: false, jsDate:[], auditStatus: 0, textFileList: [], videoFileList: [], pictureUrl: [], pictureUrlMin:[], columns: [ { title: '业务项目名称', dataIndex: 'commodityName', key: 'commodityName', render:text=>{ return text&&text.length>6?{text.substr(0,8)}...:text } }, { title: '项目类别', dataIndex: 'cname', key: 'cname' }, { title: '服务市价(万元)', dataIndex: 'commodityPrice', key: 'commodityPrice' }, { title: '项目状态', dataIndex: 'taskStatus', key: 'taskStatus', render:text=>{ return getProjectStatus(text); } },{ 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 } } ], }; }, loadData(record){ this.state.orderList=[]; $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + '/api/admin/newOrder/getOrderNewDetail', data: { orderNo:record?record.orderNo:this.props.data.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, orderList:thisData, approval:thisData.approval==0?thisData.approval.toString():thisData.approval, orderRemarks:thisData.orderRemarks, orgCodeUrl: thisData.contractPictureUrl ? splitUrl(thisData.contractPictureUrl, ',', globalConfig.avatarHost + '/upload') : [], orderNo:thisData.orderNo,//订单编号 buyerId:thisData.buyerId, }); }.bind(this), }).always(function () { this.setState({ loading: false }); }.bind(this)); }, jdDate(record){ $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + '/api/admin/newOrder/selectOrderDun', data: { orderNo:record?record.orderNo:this.props.data.orderNo }, success: function (data) { let thisData = data.data; if (!thisData.length) { if (data.error && data.error.length) { message.warning(data.error[0].message); }; thisData = {}; }else{ this.setState({ jsDate:thisData }) }; }.bind(this), }).always(function () { this.setState({ loading: false }); }.bind(this)); }, getPictureUrl(e) { this.setState({ pictureUrl: e }); }, componentWillMount() { if (this.props.data.orderNo) { this.loadData(); this.loadXmu(); this.jdDate(); } else { this.state.data = {}; }; }, componentWillReceiveProps(nextProps) { if (!this.props.visible && nextProps.visible) { this.state.textFileList = []; this.state.videoFileList = []; if (nextProps.data.orderNo) { this.loadData(nextProps.data); this.loadXmu(nextProps.data); this.jdDate(nextProps.data); } else { this.state.data = {}; this.state.pictureUrl = []; this.state.pictureUrlMin=[]; }; this.props.form.resetFields(); }; }, render() { const theData = this.state.orderList || {}; const FormItem = Form.Item const formItemLayout = { labelCol: { span: 6 }, wrapperCol: { span: 12 }, }; const jsDate = this.state.jsDate || []; return (