| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220 | import React,{Component} from "react";import {Button, message, Modal, Popconfirm, Spin, Table} from "antd";import $ from "jquery";class PatentCheck extends Component{    constructor(props) {        super(props);        this.state={            loading:false,            columns:[                {                    title: '操作人',                    dataIndex: 'aname',                    key: 'aname',                },                {                    title: '状态',                    dataIndex: 'statusName',                    key: 'statusName',                },                {                    title: '操作时间',                    dataIndex: 'createTimes',                    key: 'createTimes',                },                {                    title: '备注',                    dataIndex: 'remarks',                    key: 'remarks',                },            ],            dataSource:[],            addProjectCheckLoading:false,        }        this.addProjectCheck = this.addProjectCheck.bind(this);        this.getProjectCheckLog = this.getProjectCheckLog.bind(this);    }    addProjectCheck(){        this.setState({            addProjectCheckLoading: true,        })        $.ajax({            method: 'POST',            dataType: 'json',            crossDomain: false,            url: globalConfig.context + '/api/admin/orderProject/addProjectCheck',            data: {                tid:this.props.id            },        }).done(            function (data) {                this.setState({                    addProjectCheckLoading: false,                })                if (!data.error.length) {                    message.success('发起成功!');                    this.props.onRefresh && this.props.onRefresh();                } else {                    message.warning(data.error[0].message)                }            }.bind(this)        )    }    getProjectCheckLog(){        this.setState({            loading: true,        })        $.ajax({            method: 'get',            dataType: 'json',            crossDomain: false,            url: globalConfig.context + '/api/admin/orderProject/projectCheckLog',            data: {                tid:this.props.id            },        }).done(            function (data) {                this.setState({                    loading: false,                })                if (data.error.length === 0) {                   this.setState({                       dataSource:data.data                   })                } else {                    message.warning(data.error[0].message)                }            }.bind(this)        )    }    render() {        return (            this.props.projectType === 1 && this.props.startType === 1 ? <div style={this.props.style}>                <div style={{display:'flex',alignItems:'center',whiteSpace:"nowrap"}}>                    {/*startType 1供应商 0外包*/}                    {/*patentTypeName 官费类型名称*/}                    {/*projectType 项目类型 0正常 1专利 2软著 3审计 */}                    {/*patentType 专利类型  0专利申请 1专利买卖*/}                    {/*orderTaskOfficialCost 1含官费 0不含官费*/}                    {/*orderTaskCostReduction: 1有费减 0无费减*/}                    <span style={{paddingLeft:'10px',paddingRight:'20px',color:'#4472f5'}}>                        <span style={{color:"#333"}}>官费类型:</span>{this.props.patentTypeName}                    </span>                    <span style={{paddingRight:'20px',color:'#4472f5'}}>                      {                          this.props.orderTaskOfficialCost === 1?                              '有官费' : '不含官费'                      }                    </span>                    {this.props.patentTypeId === 0 || this.props.patentTypeId === 2 ? <span style={{color:'#4472f5'}}>                      {                          this.props.orderTaskCostReduction === 1?                              '有费减' : '无费减'                      }                    </span> : null}                </div>                {this.props.patentType === 0 ? <div style={{display:'flex',alignItems:'center'}}>                    {/*checkStatus  核对状态  0未发起 1核对中 2核对完成 3已申请付款*/}                    <span style={{color:'#f00',paddingLeft:'20px',marginRight: '10px',whiteSpace:"nowrap"}}>                        {                            this.props.checkStatus === 1 ? '营销员核对中' :                                this.props.checkStatus === 2 ? '核对已完成' :                                    this.props.checkStatus === 3 ? '已申请付款' : ''                        }                    </span>                    {                        (this.props.checkStatus === 0 || this.props.checkStatus === 2) && !this.props.isAuditPayment && !this.props.isAuditPaymentGLY ?                            <Popconfirm                                title="您确认是否发起核对?发起核对后已发布的官费支付申请将被取消."                                onConfirm={() => {                                    this.addProjectCheck();                                }}                                okText="发起"                                cancelText="取消"                            >                                <Button                                    loading={this.state.addProjectCheckLoading}                                    onClick={(e) => {                                        e.stopPropagation()                                    }}                                    type="primary"                                    style={{                                        marginRight: '10px',                                        border: 'none',                                        background:'#f00',                                    }}                                >                                    核对                                </Button>                            </Popconfirm> : null                    }                    {!this.props.isAuditPayment && !this.props.isAuditPaymentGLY ? <Button                        loading={this.state.loading}                        onClick={(e) => {                            this.setState({                                visible:true                            },()=>{                                this.getProjectCheckLog();                            })                            e.stopPropagation()                        }}                        type="primary"                        style={{                            marginRight: '10px',                            border: 'none',                        }}                    >                        核对日志                    </Button> : null}                </div> : null}                {this.state.visible ? <Modal                    title="核对日志"                    visible={this.state.visible}                    onCancel={()=>{                        this.setState({                            visible:false                        })                    }}                    width={800}                    footer={null}                >                    <Spin spinning={this.state.loading}>                        <Table                            columns={this.state.columns}                            dataSource={this.state.dataSource}                            pagination={false}                            bordered                            size="small"                        />                    </Spin>                </Modal> : null}                {!this.props.isAuditPayment && !this.props.isAuditPaymentGLY ? <Button                    type="primary"                    style={{                        marginLeft: '10px',                    }}                    disabled={!(this.props.isPreviewPay && (this.props.status === 1 || parseInt(this.props.startType) === 1) && this.props.orderTaskOfficialCost === 1)}                    onClick={()=>{                        if(this.props.checkStatus === 1){                            message.warning('您已发起官费核对,暂不可发起付官费!')                        }else{                            this.props.onPayOfficialExpenses()                        }                    }}>                    付官费                </Button> : null}            </div> : null        )    }}export default PatentCheck;
 |