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,getTransactionChannel ,getTransactionProject } from '../../../../tools.js';
import OrderItemStatus from "../../../../common/orderItemStatus";
import EnterpriseNameChange from "../../../../common/enterpriseNameChange";
import ProjectOperation from "../../../../common/projectOperation";
//图片组件
const PicturesWall = React.createClass({
getInitialState() {
return {
previewVisible: false,
previewImage: '',
fileList: [],
}
},
handleCancel() {
this.setState({ previewVisible: false })
},
handlePreview(file) {
this.setState({
previewImage: file.url || file.thumbUrl,
previewVisible: true,
});
},
handleChange(info) {
let fileList = info.fileList;
this.setState({ fileList });
this.props.fileList(fileList);
},
componentWillReceiveProps(nextProps) {
this.state.fileList = nextProps.pictureUrl;
},
render() {
const { previewVisible, previewImage, fileList } = this.state;
const uploadButton = (
);
return (
{fileList.length >= 4 ? null : uploadButton}
);
}
});
const ApproveOrderDetaile = 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'
}, {
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)
}
}
],
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',
}
]
};
},
//查看基本详情基本信息
loaduser(record){
if(record){
this.state.orderList=[]
$.ajax({
method: "get",
dataType: "json",
crossDomain: false,
url: globalConfig.context + '/api/admin/order/getServiceOrderDetail',
data: {
orderNo: record.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,
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);
},
nextCancel() {
this.setState({
addnextVisible: false
})
},
//订单详情
xiangqings(record) {
$.ajax({
method: "get",
dataType: "json",
crossDomain: false,
url: globalConfig.context + "/api/admin/newOrder/getOrderNewDetail",
data: {
orderNo: record?record.orderNo:this.props.datauser.orderNo,
},
success: function (data) {
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({
deleteSign:thisdata.deleteSign,
});
}
}.bind(this),
}).always(
function () {
}.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,
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,
});
},
componentWillMount() {
},
componentWillReceiveProps(nextProps) { //props改变时触发
this.state.visible = nextProps.showDesc;
if(nextProps.userDetaile && nextProps.showDesc ) {
this.loaduser(nextProps.datauser);
this.loadData(nextProps.datauser);
this.xiangqings(nextProps.datauser)
}
},
render() {
const FormItem = Form.Item
const formItemLayout = {
labelCol: { span: 8 },
wrapperCol: { span: 14 },
};
const orderDetaiel=this.state.orderList || [];
return(
{this.state.projectOperationVisible ?
{
this.setState({
projectOperationVisible: false,
editFw:{},
});
}}
/> : null}
)
}
}));
export default ApproveOrderDetaile;