import React from 'react'; import { Icon, Table, Modal, message, Spin, Input, Select, Button, Form, Upload, Popconfirm, AutoComplete } from 'antd'; import ajax from 'jquery/src/ajax/xhr.js'; import $ from 'jquery/src/ajax'; import '../userMangagement.less'; import { getApprovedState, getPaymentState, getOrderState, getProjectState, getOrderChannel, getOrderType, getTransactionProject, getTransactionChannel } from '../../../../tools.js'; import ProjectOperation from "../../../../common/projectOperation"; const MySettlementDetaile = 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, }); }; } this.setState({ dataSource: theArr, }); }.bind(this), }).always(function () { this.setState({ loading: false }); }.bind(this)); }, getInitialState() { return { loading: false, visible: false, lookState: true, orgCodeUrl: [], lookflowList: [], checkedKeys: [], 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) } } ], userList: [ { title: '用户编号', dataIndex: 'userNo', key: 'userNo' }, { title: '用户姓名', dataIndex: 'name', key: 'name' }, { title: '部门机构', dataIndex: 'departmentName', key: 'departmentName' }, { title: '职务', dataIndex: 'position', key: 'position' }, { title: '联系手机', dataIndex: 'mobile', key: 'mobile' }, { title: '操作', dataIndex: 'abc', key: 'abc', render: (text, record, index) => { return ( { this.confirmSelect(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', } ], contractList: [ { title: '姓名', dataIndex: 'name', key: 'name' }, { title: '部门', dataIndex: 'depatrment', key: 'depatrment' }, { title: '联系方式', dataIndex: 'mobile', key: 'mobile' }, { title: '是否为主要联系人', dataIndex: 'major', key: 'major', render: (text) => { return text ? '是' : "否" } }, { title: '职务', dataIndex: 'position', key: 'position' }, { title: '微信', dataIndex: 'wechat', key: 'wechat' }, { title: 'QQ', dataIndex: 'qq', key: 'qq' }, ], }; }, seeContract() { this.contract(); this.setState({ orderVisible: true }) }, orderCancel() { this.setState({ orderVisible: false }) }, //查看联系人 contract() { $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + '/api/admin/customer/findAllContacts', data: { uid: this.state.buyerId }, success: function (data) { let thisData = data.data; if (!thisData) { if (data.error && data.error.length) { message.warning(data.error[0].message); }; thisData = {}; }; this.setState({ contractArr: thisData, }); }.bind(this), }).always(function () { this.setState({ loading: false }); }.bind(this)); }, //查看基本详情基本信息 loaduser(record) { if (record) { this.state.orderList = [] $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + '/api/admin/order/getServiceOrderDetail', data: { orderNo: record }, 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, buyerId: thisData.buyerId, 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.orgCodeUrl ? splitUrl(thisData.orgCodeUrl, ',', globalConfig.avatarHost + '/upload') : [], //签单 orderNo: thisData.orderNo,//订单编号 buyerName: thisData.buyerName, }); }.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); }, 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, 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 }) }, tableRowClick(record, index) { this.setState({ editFw: record, projectOperationVisible: true, }); }, /* * 选择负责人 */ //转交 confirmDelet(index) { this.setState({ showDesc: false, distributionVisible: true }); this.departmentList() }, distributionCancel() { this.setState({ distributionVisible: false }) }, //分配对象列表 contactList() { $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + '/api/admin/superviser/adminList', data: { pageNo: 1, pageSize: 99, departmentId: this.state.departmenttList, name: this.state.financeNameSearch, }, 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.list.length; i++) { let thisdata = data.data.list[i]; theArr.push({ key: i, id: thisdata.id, userNo: thisdata.userNo, name: thisdata.name, departmentName: thisdata.departmentName, departmentId: thisdata.departmentId, position: thisdata.position, mobile: thisdata.mobile, }); }; }; this.setState({ distributionList: theArr, }); }.bind(this), }).always(function () { this.setState({ loading: false }); }.bind(this)); }, //选定对象 confirmSelect(record) { this.setState({ loading: true }); $.ajax({ method: "POST", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/order/transferOrder", data: { orderNo: this.state.orderNo, aid: record.id, targetType: 2 } }).done(function (data) { if (!data.error.length) { message.success('转交成功!'); this.setState({ loading: false, }); this.distributionCancel(); this.loaduser(this.state.orderNo); } else { message.warning(data.error[0].message); }; }.bind(this)); }, //部门 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)); }, searchOrder() { this.contactList(); }, resetOrder() { this.state.departmenttList = undefined; this.state.financeNameSearch = ''; this.setState({ distributionList: [] }); }, componentWillMount() { }, componentWillReceiveProps(nextProps) { //props改变时触发 this.state.visible = nextProps.showDesc; if (nextProps.userDetaile && nextProps.showDesc) { this.loaduser(nextProps.datauser.orderNo); this.loadData(nextProps.datauser); } }, render() { const FormItem = Form.Item; let departmentArr = this.state.departmentArr || []; const formItemLayout = { labelCol: { span: 8 }, wrapperCol: { span: 14 }, }; const orderDetaiel = this.state.orderList || []; return (
{orderDetaiel.orderNo} {orderDetaiel.createTime} {orderDetaiel.buyerName} {getOrderType(orderDetaiel.orderType)} {getOrderChannel(orderDetaiel.orderChannel)} {getOrderState(orderDetaiel.orderStatus)} {orderDetaiel.actuallyTotalAmount + '万元'} {getPaymentState(orderDetaiel.liquidationStatus)}
{orderDetaiel.signTotalAmount + '万元'} {orderDetaiel.signFirstPayment + '万元'} {getApprovedState(orderDetaiel.approval)} {orderDetaiel.contractNo}
{orderDetaiel.orderRemarks}
{orderDetaiel.salesmanName} {orderDetaiel.projectType}
{orderDetaiel.createTime} {orderDetaiel.signTime} {orderDetaiel.financeName} {orderDetaiel.technicianName} {!orderDetaiel.technicianName ? : ''} {orderDetaiel.setUpTime} {getProjectState(orderDetaiel.projectStage)}
业务项目
{this.state.projectOperationVisible ? { this.setState({ projectOperationVisible: false, editFw: {}, }); }} /> : null}
{ this.setState({ financeNameSearch: e.target.value }); }} />
) } })); export default MySettlementDetaile;