import React,{Component} from 'react'; import {Button, Form, Input, message, Modal, Radio, Spin, InputNumber} from "antd"; import propType from 'prop-types'; import $ from "jquery"; const layout = { labelCol: { span: 8, }, wrapperCol: { span: 16, }, }; const formItemLayout = { labelCol: { span: 8 }, wrapperCol: { span: 14 }, }; class ApplyPaymentModal extends Component{ // static propTypes = { // visible: PropTypes.bool.isRequired, // changeVisible: PropTypes.func.isRequired, // } // // static defaultProps = { // visible: false, // changeVisible: ()=>{}, // } constructor(props) { super(props); this.state={ loading: false, paymentStatus: 0, totalPrice: -1, } } //申请付款 handleSubmit(e){ e.preventDefault(); this.props.form.validateFieldsAndScroll((err, values) => { if (err) { return; } this.setState({ loading: true }) values.tid = this.props.tid; if(this.props.previewPayInfor.nodeId){ //催款 values.nodeId = this.props.previewPayInfor.nodeId; values.chooseType = 1; //支付选择 0第三方 1催款 2官费 values.tpcId = this.props.previewPayInfor.cid; //第三方机构id }else{ values.chooseType = 0 //支付选择 0第三方 1催款 2官费 values.tpcId = this.props.previewPayInfor.id; //第三方机构id } if(this.props.type === 2){ values.chooseType = 2; //支付类型 0第三方 1催款 2官费 } values.companyName = values.companyName.split('-')[0]; $.ajax({ method: 'POST', dataType: 'json', crossDomain: false, url: globalConfig.context + '/api/admin/company/addOrderPayment', data: values, }).done( function (data) { this.setState({ loading: false, }) if (!data.error.length) { this.props.changeVisible(); this.props.onRefresh(); message.success('申请成功!') } else { message.warning(data.error[0].message) } }.bind(this) ) }) } render() { const { getFieldDecorator,setFieldsValue } = this.props.form; const { previewPayInfor } = this.props; if(!previewPayInfor){ return; } return( { this.props.changeVisible(); }} >
{ this.props.type === 2 ? "支付供应商官费" : "支付供应商费用" }
{ this.handleSubmit(e) }} > {getFieldDecorator('companyName', { initialValue: previewPayInfor.companyName, rules: [{ required: false, message: '请输入付款单位/个人!', }], })( )} {/* 0正常 1专利 2软著 3审计 */} {this.props.projectType === 1 && this.props.patentType === 1 ? {getFieldDecorator('paymentStatus', { constructor: this.state.paymentStatus, rules: [{ required: false, message: '请选择支付状态!' }], })( { this.setState({ paymentStatus: e.target.value }) if(e.target.value === 1){ setFieldsValue({ quantity:parseInt(previewPayInfor.quantity), applicationAmount:(previewPayInfor.partyAmount ? parseFloat(previewPayInfor.totalAmount) - parseFloat(previewPayInfor.partyAmount) : parseFloat(previewPayInfor.totalAmount))/2 }); } else if(e.target.value === 2){ setFieldsValue({ quantity:parseInt(previewPayInfor.quantity), applicationAmount:(previewPayInfor.partyAmount ? parseFloat(previewPayInfor.totalAmount) - parseFloat(previewPayInfor.partyAmount) : parseFloat(previewPayInfor.totalAmount)) }); } }}> 自定义 半款 全款 )} :
} {this.props.type !== 2 ? {/*可以查看单价 正常 审计 专利买卖 软著 专利申请 打星号 */} { this.props.projectType === 2 || (this.props.projectType === 1 && this.props.patentType === 0)? '***' : getFieldDecorator('unitPrice', { initialValue:previewPayInfor.unitPrice, rules: [{ required: true, message: '请输入单价!' }], })( ) } :
} { this.props.type === 2 ?
***
:
} {/* 0正常 1专利 2软著 3审计 */} { this.props.projectType === 1 || this.props.projectType === 2? {previewPayInfor.quantity} : {getFieldDecorator('quantity', { initialValue: parseInt(previewPayInfor.quantity), rules: [{ required: false, message: '请输入數量!' }], })( { //软著 专利申请不需要计算,因为单价未知 if(!(this.props.projectType === 2 || (this.props.projectType === 1 && this.props.patentType === 0))){ let num = previewPayInfor.unitPrice * e; this.setState({ totalPrice: num }) } }} disabled={previewPayInfor.quantity <= 1 || this.props.projectType === 3} style={{ width: '200px' }} placeholder="请输入數量" type={'number'}/> )} }
{this.state.totalPrice > -1 ? this.state.totalPrice : previewPayInfor.totalAmount}
{/*{getFieldDecorator('totalPrice', {*/} {/* rules: [{ required: false, message: '请输入总价!' }],*/} {/*})(*/} {/* */} {/*)}*/}
{/**/} {/* {getFieldDecorator('totalPrice', {*/} {/* initialValue: previewPayInfor.partyAmount ? parseFloat(previewPayInfor.partyAmount) : 0,*/} {/* rules: [{ required: false, message: '请输入已付金额!' }],*/} {/* })(*/} {/* */} {/* )}*/} {/**/} { this.props.projectType === 1 || this.props.projectType === 2 || this.props.type === 2? {getFieldDecorator('quantity', { initialValue: 1, rules: [{ required: false, message: '请输入本次申请支付数量!' }], })( )} :
} {getFieldDecorator('applicationAmount', { initialValue:this.state.paymentStatus === 1 ? (previewPayInfor.partyAmount ? parseFloat(previewPayInfor.totalAmount) - parseFloat(previewPayInfor.partyAmount) : parseFloat(previewPayInfor.totalAmount)) / 2 : previewPayInfor.partyAmount ? parseFloat(previewPayInfor.totalAmount) - parseFloat(previewPayInfor.partyAmount) : parseFloat(previewPayInfor.totalAmount) , rules: [{ required: true, message: '请输入本次申请支付金额!' }], })( )} {getFieldDecorator('remarks', { rules: [{ required: true, message: '请输入备注!' }], })( )}
) } } const WrappedNormalLoginForm = Form.create()(ApplyPaymentModal); export default WrappedNormalLoginForm