import React, { Component } from 'react' import { Form, Spin, Table, Modal, Col, Upload, Input, Button, message, Row, Popconfirm, } from 'antd' import {getProjectStatus,} from '@/tools' import { getMaterialStatus, getUrgentStatus } from '@/tools' import ApplyPaymentModal from './applyPaymentModal'; import PayRecord from './payRecord'; import './index.less' import $ from "jquery"; class CheckProject extends Component { constructor(props) { super(props) this.state = { value: '', loading: false, previewImage: '', previewVisible: false, payRecordVisible: false, orderPaymentsId: 0, previewPayVisible: false, previewPayInfor: {}, //点击申请付款的第三方信息或者支付节点信息 nodeId: 0, // 专利 ContactsListsNew: [ { title: '供应商名称', dataIndex: 'companyName', key: 'companyName', render: (text, record, index) => { if (text) { return {text} } }, }, { title: '单价(万元)', dataIndex: 'unitPrice', key: 'unitPrice', render: (text, record) => { if (text) { return {text} } }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: '总价(万元)', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { return {text} }, }, { title: '已付(万元)', dataIndex: 'partyAmount', key: 'partyAmount', render: (text, record) => { return {text} }, }, { title: '材料', dataIndex: 'material', key: 'material', render: (text, record) => { return getMaterialStatus(text) }, }, { title: '加急', dataIndex: 'urgent', key: 'urgent', render: (text, record) => { return getUrgentStatus(text) }, }, { title: '操作', dataIndex: 'action', key: 'action', render: (ext, record, index) => { return (
{/*外包审核通过后,咨询师/咨询经理可申请付款*/} {/*存在支付节点时不显示第三方的申请付款*/} {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/} { } { this.confirmDeletNew(record) }} okText="删除" cancelText="不删除" >
) }, }, ], //付款节点表头 PayNodeTableColunms: [ { title: '供应商名称', dataIndex: 'companyName', key: 'companyName', render: (text, record, index) => { if (text) { return {text} } }, }, { title: '付款科目', dataIndex: 'dunType', key: 'dunType', render: (text, record) => { if (text) { return {text} } }, }, { title: '付款时间', dataIndex: 'partyTimes', key: 'partyTimes', render: (text, record) => { if (text) { return {text} } }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: '总价(万元)', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { return {text} }, }, { title: '已付(万元)', dataIndex: 'partyAmount', key: 'partyAmount', render: (text, record) => { if (text) { return {text} } }, }, { title: '操作', dataIndex: 'action', key: 'action', render: (text, record) => { return (
{/*外包审核通过后,咨询师/咨询经理可申请付款*/} {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/}
) }, }, ], outsourceLogs: [],//审核日志 selectOrderPayments: [],//支付列表 } } componentDidMount() { if(this.props.tid){ setTimeout(()=>{ this.getSelectOutsourceLog(); this.getSelectOrderPayment(); this.projectTypeTabContent(this.props.projectType); },500) } } projectTypeTabContent(projectType) { if(projectType === 0){ //0正常 1专利 2软著 3审计 this.setState({ ContactsListsNew: [ { title: '供应商名称', dataIndex: 'companyName', key: 'companyName', render: (text, record, index) => { if (text) { return {text} } }, }, { title: '单价(万元)', dataIndex: 'unitPrice', key: 'unitPrice', render: (text, record) => { if (text) { return {text} } }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: '总价(万元)', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { if (text) { return {text} } }, }, { title: '备注', dataIndex: 'remarks', key: 'remarks', }, { title: '操作', dataIndex: 'action', key: 'action', render: (text, record) => { return (
{/*外包审核通过后,咨询师/咨询经理可申请付款*/} {/*存在支付节点时不显示第三方的申请付款*/} {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/} { } { this.confirmDeletNew(record) }} okText="删除" cancelText="不删除" >
) }, }, ], //付款节点表头 PayNodeTableColunms: [ { title: '供应商名称', dataIndex: 'companyName', key: 'companyName', render: (text, record, index) => { if (text) { return {text} } }, }, { title: '付款科目', dataIndex: 'dunType', key: 'dunType', render: (text, record) => { if (text) { return {text} } }, }, { title: '付款时间', dataIndex: 'partyTimes', key: 'partyTimes', render: (text, record) => { return {text ? text : '/'} }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: '总价', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { return {text} }, }, { title: '已付', dataIndex: 'partyAmount', key: 'partyAmount', render: (text, record) => { if (text) { return {text} } }, }, { title: '操作', dataIndex: 'dels', key: 'dels', render: (text, record, index) => { return (
{ this.payNodeConfirmDeletNew(record) }} okText="删除" cancelText="不删除" >
) }, }, ], }) }else if(projectType === 2){ //2软著 this.setState({ ContactsListsNew: [ { title: '供应商名称', dataIndex: 'companyName', key: 'companyName', render: (text, record, index) => { if (text) { return {text} } }, }, { title: '单价(万元)', dataIndex: 'unitPrice', key: 'unitPrice', render: (text, record) => { if (text) { return {text} } }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: '总价(万元)', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { if (text) { return *** } }, }, { title: '材料', dataIndex: 'material', key: 'material', render: (text, record) => { return getMaterialStatus(text) }, }, { title: '加急', dataIndex: 'urgent', key: 'urgent', render: (text, record) => { return getUrgentStatus(text) }, }, { title: '操作', dataIndex: 'action', key: 'action', render: (text, record) => { return (
{/*外包审核通过后,咨询师/咨询经理可申请付款*/} {/*存在支付节点时不显示第三方的申请付款*/} {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/} { } { this.confirmDeletNew(record) }} okText="删除" cancelText="不删除" >
) }, }, ], //付款节点表头 PayNodeTableColunms: [ { title: '供应商名称', dataIndex: 'companyName', key: 'companyName', render: (text, record, index) => { if (text) { return {text} } }, }, { title: '付款科目', dataIndex: 'dunType', key: 'dunType', render: (text, record) => { if (text) { return {text} } }, }, { title: '付款时间', dataIndex: 'partyTimes', key: 'partyTimes', render: (text, record) => { return {text ? text : '/'} }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: '总价', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { return *** }, }, { title: '已付', dataIndex: 'partyAmount', key: 'partyAmount', render: (text, record) => { if (text) { return {text} } }, }, { title: '操作', dataIndex: 'dels', key: 'dels', render: (text, record, index) => { return (
{ this.payNodeConfirmDeletNew(record) }} okText="删除" cancelText="不删除" >
) }, }, ], }) }else if(projectType === 1){ //1专利 if(this.props.patentType === 0){ //专利申请 this.setState({ ContactsListsNew: [ { title: '供应商名称', dataIndex: 'companyName', key: 'companyName', render: (text, record, index) => { if (text) { return {text} } }, }, { title: '单价(万元)', dataIndex: 'unitPrice', key: 'unitPrice', render: (text, record) => { if (text) { return {text} } }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: "官费", dataIndex: "officialCost", key: "officialCost", render: (text) => { return text === 1 ? '含官费' : '不含官费' }, }, { title: "费减", dataIndex: "costReduction", key: "costReduction", render: (text) => { return text === 1 ? '有费减' : '无费减' }, }, { title: '总价(万元)', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { if (text) { return {text} } }, }, { title: '备注', dataIndex: 'remarks', key: 'remarks', }, { title: '操作', dataIndex: 'action', key: 'action', render: (text, record) => { return (
{/*外包审核通过后,咨询师/咨询经理可申请付款*/} {/*存在支付节点时不显示第三方的申请付款*/} {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/} { } { } { this.confirmDeletNew(record) }} okText="删除" cancelText="不删除" >
) }, }, ] }) }else{ this.setState({ ContactsListsNew: [ { title: '供应商名称', dataIndex: 'companyName', key: 'companyName', render: (text, record, index) => { if (text) { return {text} } }, }, { title: '单价(万元)', dataIndex: 'unitPrice', key: 'unitPrice', render: (text, record) => { if (text) { return {text} } }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: '总价(万元)', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { if (text) { return {text} } }, }, { title: '备注', dataIndex: 'remarks', key: 'remarks', }, { title: '操作', dataIndex: 'action', key: 'action', render: (text, record) => { return (
{/*外包审核通过后,咨询师/咨询经理可申请付款*/} {/*存在支付节点时不显示第三方的申请付款*/} {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/} { } { this.confirmDeletNew(record) }} okText="删除" cancelText="不删除" >
) }, }, ] }) } }else if(projectType === 3){ //3审计 this.setState({ ContactsListsNew: [ { title: '供应商名称', dataIndex: 'companyName', key: 'companyName', render: (text, record, index) => { if (text) { return {text} } }, }, { title: '单价(万元)', dataIndex: 'unitPrice', key: 'unitPrice', render: (text, record) => { if (text) { return {text} } }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: '总价(万元)', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { if (text) { return *** } }, }, { title: '审计', dataIndex: 'audit', key: 'audit', render: (text, record) => { if (text) { return {text===0?'无审计':text===1?'年审':'专审'} } }, }, { title: '公司资产(万元)', dataIndex: 'assets', key: 'assets', render: (text, record) => { if (text) { return {text} } }, }, { title: '收入(万元)', dataIndex: 'income', key: 'income', render: (text, record) => { if (text) { return {text} } }, }, { title: '操作', dataIndex: 'action', key: 'action', render: (text, record) => { return (
{/*外包审核通过后,咨询师/咨询经理可申请付款*/} {/*存在支付节点时不显示第三方的申请付款*/} {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/} { } { this.confirmDeletNew(record) }} okText="删除" cancelText="不删除" >
) }, }, ] }) } } onChange() { this.setState({ value: e.target.value, }) } tableRowClickOne(record) {} //点击付款节点详情 payNodeTableRowClickOne(record) {} //外包日志列表 getSelectOutsourceLog(){ $.ajax({ method: 'get', dataType: 'json', crossDomain: false, url: globalConfig.context + '/api/admin/outsourceOrg/selectOutsourceLog', data: { tid: this.props.tid, }, success: function (data) { if (data.error.length) { if (data.error && data.error.length) { message.warning(data.error[0].message); } } else { this.setState({ outsourceLogs: data.data }) } }.bind(this), }).always( function () { }.bind(this) ) } //支付列表 getSelectOrderPayment() { $.ajax({ method: 'get', dataType: 'json', crossDomain: false, url: globalConfig.context + '/api/admin/company/selectOrderPayment', data: { id: this.props.tid, }, success: function (data) { if (data.error.length) { if (data.error && data.error.length) { message.warning(data.error[0].message); } } else { this.setState({ selectOrderPayments: data.data }) } }.bind(this), }).always( function () { }.bind(this) ) } //0审核 1待支付 2驳回 3已支付 4取消 operationJudgmentName(id) { if(this.props.isAuditPayment){ //财务 return id === 0 ? '待审核' : id === 1 ? '待支付' : id === 2 ? '查看详情' : '查看详情' }else{ return id === 0 ? '待审核' : id === 1 ? '待支付' : id === 2 ? '查看详情' : '查看详情' } } // 删除供应商信息 confirmDeletNew(index) { this.setState({ loading: true, ThirdListVisible: false, }) $.ajax({ url: globalConfig.context + '/api/admin/company/deleteCompany', method: 'post', data: { id: index.id, }, }).done( function (data) { this.setState({ loading: false, }) if (!data.error.length) { message.success('删除成功!') this.props.onRefresh() } else { message.warning(data.error[0].message) } }.bind(this) ) } render() { return (
*
类型:
{ parseInt(this.props.startType) === 0 ?
外包(外包派单,不走总部)
提示高于总部价格,费用个人承担
:
供应商信息(普通单)
}
项目状态:{getProjectStatus(this.props.projectStatus)}
第三方信息
付款节点
备注
合同/协议扫描件
{ this.setState({ previewImage: file.url || file.thumbUrl, previewVisible: true, }) }} /> { this.setState({ previewVisible: false }) }} >
{parseInt(this.props.startType) !== 1 ?
外包状态
{ this.state.outsourceLogs.map((value,index)=>(
{value.aname}
{ value.status === 0 ? '发起外包审核' : value.status === 1 ? '通过' : '驳回' }
{value.remarks}
{value.createTimes}
)) } :
}
支付记录
编号
{/**/} {/*
*/} {/* 订单编号*/} {/*
*/} {/**/}
支付类型
申请支付金额(万元)
申请时间
状态
{ this.state.selectOrderPayments.map((value,index)=>(
{index+1 < 10 ? '0'+(index+1) : index+1}
{/**/} {/*
*/} {/* 订单编号*/} {/*
*/} {/**/}
{value.paymentType === 0 ? '第三方' : '官费'}
{value.applicationAmount}
{value.createTimes}
{ value.status === 0 ? '审核中' : value.status === 1 ? '审核通过' : value.status === 2 ? '已驳回' : value.status === 3 ? '支付完成' : '已取消' }
)) } {/* 申请付款 tid:项目id nodeId: 付款节点id previewPayInfor: 项目或者节点信息 */} { this.props.onRefresh(); this.getSelectOrderPayment(); }} changeVisible={()=>{ this.setState({ previewPayVisible: false, nodeId: 0, //付款节点id previewPayInfor: {}, }) }}/> {/* 支付记录操作弹出 */} {this.state.payRecordVisible ? { this.props.onRefresh(); this.getSelectOrderPayment(); }} changeVisible={()=>{ this.getSelectOrderPayment(); this.setState({ payRecordVisible: false, }) }} /> :
}
) } } export default CheckProject