| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299 | import React, { Component } from 'react'import {  Form,  Spin,  Table,  Modal,  Col,  Tag,  Button,  message,  Tooltip,  Popconfirm,} from 'antd'import { getMaterialStatus, getUrgentStatus,getProjectName } from '@/tools'import ApplyPaymentModal from './applyPaymentModal';import PayRecord from './payRecord';import ImgList from '../../../common/imgList/index';import './index.less'import $ from "jquery";import OldInforProject from "../oldInforProject";import PatentCheck from "../../../common/patentCheck";import PaymentRecord from '../../../common/initiateOrder/paymentRecord';import NewSupplier from "../../project/task/newSupplier";import OperationPayNode from "../../project/task/operationPayNode";const confirm = Modal.confirmclass CheckProject extends Component {  constructor(props) {    super(props)    this.state = {      value: '',      loading: false,      previewImage: '',      previewVisible: false,      previewPayVisible: false,      type: 1,//1 申请付款 2 申请付官费      previewPayInfor: {},        //点击申请付款的第三方信息或者支付节点信息      nodeId: 0,      // 专利      ContactsListsNew: [],      //付款节点表头      PayNodeTableColunms: [],      outsourceLogs: [],//审核日志      outsourcingLogLoading: false,      payRecordsLoading: false,      PayNodeCompany:[]    }    this.getPayNodeCompany = this.getPayNodeCompany.bind(this);  }  componentDidMount() {    if(this.props.tid){      setTimeout(()=>{        this.getSelectOutsourceLog();        this.projectTypeTabContent(this.props.projectType);      },500)    }    this.getPayNodeCompany();  }  getPayNodeCompany(){    let arr = this.props.thirdInfoList ? JSON.parse(JSON.stringify(this.props.thirdInfoList)) : [];    let companyNameArr = [];    for (let d = 0; d < arr.length; d++) {      arr[d].companyName = arr[d].companyName + '-' + arr[d].id;      companyNameArr.push({        companyName: arr[d].companyName,        id: arr[d].id,      });    }    this.setState({      PayNodeCompany:companyNameArr    })  }  projectTypeTabContent(projectType) {    this.setState({      //付款节点表头      PayNodeTableColunms: [        {          title: '节点编号',          dataIndex: 'id',          key: 'id',        },        {          title: '供应商名称',          dataIndex: 'companyName',          key: 'companyName',          render: (text, record, index) => {            if (text) {              return <span>{text}</span>            }          },        },        {          title: '付款科目',          dataIndex: 'dunType',          key: 'dunType',          render: (text, record) => {            if (text) {              return <span>{text}</span>            }          },        },        {          title: '付款时间',          dataIndex: 'partyTimes',          key: 'partyTimes',          render: (text, record) => {            return <span>{text ? text : '/'}</span>          },        },        {          title: '数量',          dataIndex: 'quantity',          key: 'quantity',          render: (text, record) => {            if (text) {              return <span>{text}</span>            }          },        },        {          title: '总价(万元)',          dataIndex: 'totalAmount',          key: 'totalAmount',          render: (text, record) => {            return <span>                {                  isNaN(text) ? text : parseFloat(text)                }              </span>          },        },        {          title: '已付',          dataIndex: 'partyAmount',          key: 'partyAmount',          render: (text, record) => {            if (text) {              return <span>{text}</span>            }          },        },        {          title: '操作',          dataIndex: 'dels',          key: 'dels',          render: (text, record, index) => {            return (                <div>                  {/*外包审核通过后,咨询师/咨询经理可申请付款*/}                  {/*存在支付节点时不显示第三方的申请付款*/}                  {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/}                  {/*this.props.startType   0外包  1供应商(不需要审核)*/}                  {/*record.status  0-未支付 1-待全款 ,2已全款  status=2的时候已经全款,按钮可以去掉了*/}                  <Button disabled={                    !(this.props.isPreviewPay && (this.props.status === 1 || parseInt(this.props.startType) === 1) && record.status !==2 )                  } type="primary" onClick={() => {                    this.setState({                      previewPayVisible: true,                      previewPayInfor: record,                    })                  }}>                    申请付款                  </Button>                  {this.props.status === 2 && !this.props.isAuditPaymentGLY ? <Popconfirm                      title="是否删除?"                      onConfirm={() => {                        this.payNodeConfirmDeletNew(record)                      }}                      okText="删除"                      cancelText="不删除"                  >                    <Button                        disabled={this.props.status !== 2}                        onClick={(e) => {                          e.stopPropagation()                        }}                        style={{                          marginLeft: '10px',                          color: '#ffffff',                          background: '#f00',                          border: 'none',                        }}                    >                      删除                    </Button>                  </Popconfirm> : <div/>}                </div>            )          },        },      ],    })    //0正常 1专利 2软著 3审计      this.props.startType 0外包 1供应商     外包时当普通单处理   projectType大于3的都用通用表格    if(projectType === 0 || !projectType || this.props.startType === 0  || projectType > 3){      this.setState({        ContactsListsNew: [          {            title: '供应商名称',            dataIndex: 'companyName',            key: 'companyName',            render: (text, record, index) => {              if (text) {                return <span>{text}</span>              }            },          },          {            title: '单价(万元)',            dataIndex: 'unitPrice',            key: 'unitPrice',            render: (text, record) => {              if (text) {                return <span>                  {                    isNaN(text) ? text : parseFloat(text)                  }                </span>              }            },          },          {            title: '数量',            dataIndex: 'quantity',            key: 'quantity',            render: (text, record) => {              if (text) {                return <span>{text}</span>              }            },          },          {            title: '总价(万元)',            dataIndex: 'totalAmount',            key: 'totalAmount',            render: (text, record) => {              if (text) {                return <span>                  {                    isNaN(text) ? text : parseFloat(text)                  }                </span>              }            },          },          {            title: '备注',            dataIndex: 'remarks',            key: 'remarks',            render: (text) => {              return (                  <Tooltip placement="topLeft" title={text}>                      <div style={{                        maxWidth:'150px',                        overflow:'hidden',                        textOverflow: "ellipsis",                        whiteSpace:'nowrap',                      }}>{text}</div>                  </Tooltip>              )            }          },          {            title: '操作',            dataIndex: 'action',            key: 'action',            render: (text, record) => {              return (                  <div>                    {/*外包审核通过后,咨询师/咨询经理可申请付款*/}                    {/*存在支付节点时不显示第三方的申请付款*/}                    {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/}                    {/*this.props.startType   0外包  1供应商(不需要审核)*/}                    <Button disabled={                      !(this.props.isPreviewPay && (this.props.status === 1 || parseInt(this.props.startType) === 1) && this.props.dataSource.length === 0)                    } type="primary" onClick={() => {                      this.setState({                        previewPayVisible: true,                        previewPayInfor: record,                      })                    }}>                      申请付款                    </Button>                    {this.props.status === 2 && !this.props.isAuditPaymentGLY ? <Popconfirm                        title="是否删除?"                        onConfirm={() => {                          this.confirmDeletNew(record)                        }}                        okText="删除"                        cancelText="不删除"                    >                      <Button                          disabled={this.props.status !== 2}                          onClick={(e) => {                            e.stopPropagation()                          }}                          style={{                            marginLeft: '10px',                            color: '#ffffff',                            background: '#f00',                            border: 'none',                          }}                      >                        删除                      </Button>                    </Popconfirm> : <div/>}                  </div>              )            },          },        ],      })    }else if(projectType === 2){    //2软著      this.setState({        ContactsListsNew: [          {            title: '供应商名称',            dataIndex: 'companyName',            key: 'companyName',            render: (text, record, index) => {              if (text) {                return <span>{text}</span>              }            },          },          {            title: '单价(万元)',            dataIndex: 'unitPrice',            key: 'unitPrice',            render: (text, record) => {              if (text) {                return <span>                  {                    isNaN(text) ? text : parseFloat(text)                  }                </span>              }            },          },          {            title: '数量',            dataIndex: 'quantity',            key: 'quantity',            render: (text, record) => {              if (text) {                return <span>{text}</span>              }            },          },          {            title: '总价(万元)',            dataIndex: 'totalAmount',            key: 'totalAmount',            render: (text, record) => {              if (text) {                return <span>                  {                    isNaN(text) ? text : parseFloat(text)                  }                </span>              }            },          },          {            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 (                  <div>                    {/*外包审核通过后,咨询师/咨询经理可申请付款*/}                    {/*存在支付节点时不显示第三方的申请付款*/}                    {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/}                    {                      <Button disabled={                        !(this.props.isPreviewPay && (this.props.status === 1 || parseInt(this.props.startType) === 1) && this.props.dataSource.length === 0)                      } type="primary" onClick={() => {                        this.setState({                          previewPayVisible: true,                          previewPayInfor: record,                        })                      }}>                        申请付款                      </Button>                    }                    {this.props.status === 2 && !this.props.isAuditPaymentGLY ? <Popconfirm                        title="是否删除?"                        onConfirm={() => {                          this.confirmDeletNew(record)                        }}                        okText="删除"                        cancelText="不删除"                    >                      <Button                          disabled={this.props.status !== 2}                          onClick={(e) => {                            e.stopPropagation()                          }}                          style={{                            marginLeft: '10px',                            color: '#ffffff',                            background: '#f00',                            border: 'none',                          }}                      >                        删除                      </Button>                    </Popconfirm> : <div/>}                  </div>              )            },          },        ],      })    }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 <span>{text}</span>                }              },            },            {              title: '单价(万元)',              dataIndex: 'unitPrice',              key: 'unitPrice',              render: (text, record) => {                if (text) {                  return <span>                  {                    isNaN(text) ? text : parseFloat(text)                  }                </span>                }              },            },            {              title: '数量',              dataIndex: 'quantity',              key: 'quantity',              render: (text, record) => {                if (text) {                  return <span>{text}</span>                }              },            },            // {            //   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 <span>                  {                    isNaN(text) ? text : parseFloat(text)                  }                </span>                }              },            },            {              title: '备注',              dataIndex: 'remarks',              key: 'remarks',              render: (text) => {                return (                    <Tooltip placement="topLeft" title={text}>                        <div style={{                          maxWidth:'150px',                          overflow:'hidden',                          textOverflow: "ellipsis",                          whiteSpace:'nowrap',                        }}>{text}</div>                    </Tooltip>                )              }            },            {              title: '操作',              dataIndex: 'action',              key: 'action',              render: (text, record) => {                return (                    <div>                      {/*外包审核通过后,咨询师/咨询经理可申请付款*/}                      {/*存在支付节点时不显示第三方的申请付款*/}                      {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/}                      <Button disabled={                        !(this.props.isPreviewPay && (this.props.status === 1 || parseInt(this.props.startType) === 1) && this.props.dataSource.length === 0)                      } type="primary" onClick={() => {                        this.setState({                          previewPayVisible: true,                          previewPayInfor: record,                        })                      }}>                        申请付款                      </Button>                      {/*{record.officialCost === 1? <Button*/}                      {/*    type="primary"*/}                      {/*    style={{*/}                      {/*      marginLeft: '10px',*/}                      {/*    }}*/}                      {/*    disabled={!(this.props.isPreviewPay && (this.props.status === 1 || parseInt(this.props.startType) === 1))}*/}                      {/*    onClick={() => {*/}                      {/*      this.setState({*/}                      {/*        previewPayVisible: true,*/}                      {/*        previewPayInfor: record,*/}                      {/*        type: 2,*/}                      {/*      })*/}                      {/*    }}>*/}                      {/*  付官费*/}                      {/*</Button> : <div/>}*/}                      {this.props.status === 2 && !this.props.isAuditPaymentGLY ? <Popconfirm                          title="是否删除?"                          onConfirm={() => {                            this.confirmDeletNew(record)                          }}                          okText="删除"                          cancelText="不删除"                      >                        <Button                            disabled={this.props.status !== 2}                            onClick={(e) => {                              e.stopPropagation()                            }}                            style={{                              marginLeft: '10px',                              color: '#ffffff',                              background: '#f00',                              border: 'none',                            }}                        >                          删除                        </Button>                      </Popconfirm> : <div/>}                    </div>                )              },            },          ],        })      }else{        this.setState({          ContactsListsNew: [            {              title: '供应商名称',              dataIndex: 'companyName',              key: 'companyName',              render: (text, record, index) => {                if (text) {                  return <span>{text}</span>                }              },            },            {              title: '单价(万元)',              dataIndex: 'unitPrice',              key: 'unitPrice',              render: (text, record) => {                if (text) {                  return <span>                  {                    isNaN(text) ? text : parseFloat(text)                  }                </span>                }              },            },            {              title: '数量',              dataIndex: 'quantity',              key: 'quantity',              render: (text, record) => {                if (text) {                  return <span>{text}</span>                }              },            },            {              title: '总价(万元)',              dataIndex: 'totalAmount',              key: 'totalAmount',              render: (text, record) => {                if (text) {                  return <span>                  {                    isNaN(text) ? text : parseFloat(text)                  }                </span>                }              },            },            {              title: '备注',              dataIndex: 'remarks',              key: 'remarks',              render: (text) => {                return (                    <Tooltip placement="topLeft" title={text}>                      <div style={{                        maxWidth:'150px',                        overflow:'hidden',                        textOverflow: "ellipsis",                        whiteSpace:'nowrap',                      }}>{text}</div>                    </Tooltip>                )              }            },            {              title: '操作',              dataIndex: 'action',              key: 'action',              render: (text, record) => {                return (                    <div>                      {/*外包审核通过后,咨询师/咨询经理可申请付款*/}                      {/*存在支付节点时不显示第三方的申请付款*/}                      {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/}                      {                        <Button disabled={                          !(this.props.isPreviewPay && (this.props.status === 1 || parseInt(this.props.startType) === 1) && this.props.dataSource.length === 0)                        } type="primary" onClick={() => {                          this.setState({                            previewPayVisible: true,                            previewPayInfor: record,                          })                        }}>                          申请付款                        </Button>                      }                      {this.props.status === 2 && !this.props.isAuditPaymentGLY ? <Popconfirm                          title="是否删除?"                          onConfirm={() => {                            this.confirmDeletNew(record)                          }}                          okText="删除"                          cancelText="不删除"                      >                        <Button                            disabled={this.props.status !== 2}                            onClick={(e) => {                              e.stopPropagation()                            }}                            style={{                              marginLeft: '10px',                              color: '#ffffff',                              background: '#f00',                              border: 'none',                            }}                        >                          删除                        </Button>                      </Popconfirm> : <div/>}                    </div>                )              },            },          ]        })      }    }else if(projectType === 3){  //3审计      this.setState({        ContactsListsNew: [          {            title: '供应商名称',            dataIndex: 'companyName',            key: 'companyName',            render: (text, record, index) => {              if (text) {                return <span>{text}</span>              }            },          },          {            title: '单价(万元)',            dataIndex: 'unitPrice',            key: 'unitPrice',            render: (text, record) => {              if (text) {                return <span>                  {                    isNaN(text) ? text : parseFloat(text)                  }                </span>              }            },          },          {            title: '数量',            dataIndex: 'quantity',            key: 'quantity',            render: (text, record) => {              if (text) {                return <span>{text}</span>              }            },          },          {            title: '总价(万元)',            dataIndex: 'totalAmount',            key: 'totalAmount',            render: (text, record) => {              if (text) {                return <span>                  {                    isNaN(text) ? text : parseFloat(text)                  }                </span>              }            },          },          {            title: '审计',            dataIndex: 'audit',            key: 'audit',            render: (text, record) => {              if (text) {                return <span>{text===0?'无审计':text===1?'年审':'专审'}</span>              }            },          },          {            title: '公司资产(万元)',            dataIndex: 'assets',            key: 'assets',            render: (text, record) => {              if (text) {                return <span>{text}</span>              }            },          },          {            title: '收入(万元)',            dataIndex: 'income',            key: 'income',            render: (text, record) => {              if (text) {                return <span>{text}</span>              }            },          },          {            title: '操作',            dataIndex: 'action',            key: 'action',            render: (text, record) => {              return (                  <div>                    {/*外包审核通过后,咨询师/咨询经理可申请付款*/}                    {/*存在支付节点时不显示第三方的申请付款*/}                    {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/}                    {                      <Button disabled={                        !(this.props.isPreviewPay && (this.props.status === 1 || parseInt(this.props.startType) === 1) && this.props.dataSource.length === 0)                      } type="primary" onClick={() => {                        this.setState({                          previewPayVisible: true,                          previewPayInfor: record,                        })                      }}>                        申请付款                      </Button>                    }                    {this.props.status === 2 && !this.props.isAuditPaymentGLY ? <Popconfirm                        title="是否删除?"                        onConfirm={() => {                          this.confirmDeletNew(record)                        }}                        okText="删除"                        cancelText="不删除"                    >                      <Button                          disabled={this.props.status !== 2}                          onClick={(e) => {                            e.stopPropagation()                          }}                          style={{                            marginLeft: '10px',                            color: '#ffffff',                            background: '#f00',                            border: 'none',                          }}                      >                        删除                      </Button>                    </Popconfirm> : <div/>}                  </div>              )            },          },        ]      })    }  }  tableRowClickOne(record) {}  //点击付款节点详情  payNodeTableRowClickOne(record) {}  //外包日志列表  getSelectOutsourceLog(){    this.setState({      outsourcingLogLoading: true    })    $.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 () {          this.setState({            outsourcingLogLoading: false          })        }.bind(this)    )  }  // 删除供应商信息  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)    )  }  //超级管理员  superAdminReject() {    let _this = this;    confirm({      title: '提醒',      content: '确定要驳回吗?',      onOk() {        _this.setState({          loading: true,        })        $.ajax({          url: globalConfig.context + '/api/admin/outsourceOrg/superAdminReject',          method: 'post',          data: {            id: _this.props.mid,          },        }).done(            function (data) {              _this.setState({                loading: false,              })              if (!data.error.length) {                message.success('驳回成功!')                _this.props.onRefresh();                _this.getSelectOutsourceLog();              } else {                message.warning(data.error[0].message)              }            }.bind(_this)        )      }    })  }  render() {    return (        <div>          { this.props.oldInfor && Object.keys(this.props.oldInfor).length > 0 ?            <OldInforProject oldInfor={this.props.oldInfor}/> :              <div className="App">                <div className="projectType">                  <div className="typeTitle">                    <div>类型:</div>                  </div>                  {                    parseInt(this.props.startType) === 0 ?                        <div>                          <div>外包(外包派单,不走总部)</div>                          <div className="tipsText">提示高于总部价格,费用个人承担</div>                        </div> :                        <div>供应商信息(普通单)</div>                  }                  <div style={{marginLeft:'auto'}}>                    <span style={{color:'#58a3ff'}}>项目状态:</span>{getProjectName(parseInt(this.props.projectStatus))}                  </div>                </div>                {                  this.props.projectType === 1?                      <div style={{                        display:'flex',                        flexFlow:'row nowrap',                        alignItems:'center',                        padding:'0px 0px 10px 20px'                      }}>                        <div>                          专利类型:<span style={{marginLeft:'15px'}}>{this.props.patentType === 0 ? '专利申请/变更/转让' : '专利买卖'}</span>                        </div>                        <div style={{paddingLeft:'100px'}}>                          专利名称:<span style={{marginLeft:'15px'}}>                            {                              this.props.patentNameType === 0 ? '实用新型专利' :                                  this.props.patentNameType === 1 ? '发明专利' :                                      this.props.patentNameType === 2 ? '外观专利' :                                          this.props.patentNameType === 3 ? this.props.patentName : ''                            }                          </span>                        </div>                    </div> : <div/>                }                {                  this.props.projectType === 1 && this.props.startType !== 0?                      <div style={{padding:'0px 0px 10px 20px',display:'flex', alignItems:'center',}}>                        官费:                        {                          this.props.patentType === 1 ?                              <span style={{marginLeft:'15px'}}>{this.props.containOfficialFees === 0 ? '实际已缴费' : '实际未缴费'}</span>:                              <PatentCheck                                  style={{                                    display:'flex',                                    alignItems:'center',                                  }}                                  id={this.props.tid}                                  isAuditPayment={this.props.isAuditPayment}                                  isAuditPaymentGLY={this.props.isAuditPaymentGLY}                                  patentTypeName={this.props.patentTypeName}                                  checkStatus={this.props.checkStatus}  //核对状态                                  projectType={this.props.projectType}  //项目类型                                  patentType={this.props.patentType}   //专利类型                                  startType={this.props.startType}   //1供应商 0外包                                  orderTaskOfficialCost={this.props.orderTaskOfficialCost}  //1含官费 0不含官费                                  orderTaskCostReduction={this.props.orderTaskCostReduction} //1有费减 0无费减                                  isPreviewPay={this.props.isPreviewPay}                                  status={this.props.status}                                  onRefresh={this.props.onRefresh}                                  onPayOfficialExpenses={()=>{                                    this.setState({                                      previewPayVisible: true,                                      type: 2,                                    })                                  }}                              />                        }                      </div> : null                }                <div className="thirdParty">                  <div>                    <span className="title">                      第三方信息                    </span>                    {this.props.startType === 1 && !this.props.isAuditPayment && !this.props.isAuditPaymentGLY ? <Button                        type="primary"                        onClick={(e) => {                          this.setState({                            ThirdListVisible: true,                          })                        }}                        style={{                          float: 'right',                          marginRight: '50px',                          marginBottom: '15px',                        }}                    >                      +新增第三方信息                    </Button> : null}                  </div>                  <div                      className="clearfix"                  >                    <Spin spinning={this.state.loading}>                      <Form layout="horizontal">                        <Table                            pagination={false}                            columns={this.state.ContactsListsNew}                            dataSource={this.props.thirdInfoList}                            onRowClick={this.tableRowClickOne}                            scroll={{ x: 'max-content', y: 0 }}                            style={{                              cursor: 'pointer',                            }}                            bordered                            size="middle"                        />                        <Col span={24} offset={9} style={{ marginTop: '15px' }}/>                      </Form>                    </Spin>                  </div>                </div>                {/*如果是软著类或者专利类的专利申请,隐藏付款节点但当为外包类型时,无需隐藏*/}                {(!((this.props.projectType === 1 && this.props.patentType === 0) || this.props.projectType === 2)) || this.props.startType === 0 ? <div className="thirdParty">                  <div>                    <span className="title">                      付款节点                    </span>                    {this.props.startType === 1 && !this.props.isAuditPayment && !this.props.isAuditPaymentGLY ? <Button                        type="primary"                        onClick={(e) => {                          this.getPayNodeCompany();                          this.setState({                            PayNodeVisible: true,                          })                        }}                        style={{                          float: 'right',                          marginRight: '50px',                          marginBottom: '15px',                        }}                    >                      +新增付款节点                    </Button> : null}                  </div>                  <div                      className="clearfix"                  >                    <Spin spinning={this.state.loading}>                      <Form layout="horizontal">                        <Table                            pagination={false}                            columns={this.state.PayNodeTableColunms}                            dataSource={this.props.dataSource}                            onRowClick={this.payNodeTableRowClickOne}                            style={{                              cursor: 'pointer',                            }}                            scroll={{ x: 'max-content', y: 0 }}                            bordered                            size="middle"                        />                        <Col span={24} offset={9} style={{ marginTop: '15px' }}/>                      </Form>                    </Spin>                  </div>                </div> : <div/>}                <div                    style={{                      borderTop: '1px #000000 dashed',                      padding: '10px 20px 0px 20px',                    }}                >                  <div>                    <div className="title">备注</div>                    <div style={{fontSize:'15px'}}>                      {this.props.outsourceRemarks}                    </div>                  </div>                  {this.props.fileList && this.props.fileList.length > 0 ? <div style={{paddingTop:'10px'}}>                    <div className="title">合同/协议扫描件</div>                    <div>                      <ImgList fileList={this.props.fileList} ItemWidth={'96px'}/>                    </div>                    {/*<Upload*/}                    {/*    className="demandDetailShow-upload"*/}                    {/*    listType="picture-card"*/}                    {/*    fileList={this.props.fileList}*/}                    {/*    onPreview={(file) => {*/}                    {/*      this.setState({*/}                    {/*        previewImage: file.url || file.thumbUrl,*/}                    {/*        previewVisible: true,*/}                    {/*      })*/}                    {/*    }}*/}                    {/*/>*/}                    <Modal                        maskClosable={false}                        footer={null}                        visible={this.state.previewVisible}                        onCancel={() => {                          this.setState({ previewVisible: false })                        }}                    >                      <img                          alt=""                          style={{ width: '100%' }}                          src={this.state.previewImage || ''}                      />                    </Modal>                  </div> : <div/>}                </div>                <Spin spinning={this.state.outsourcingLogLoading}>                  {parseInt(this.props.startType) !== 1 && this.state.outsourceLogs.length !== 0 ? <div className="outsourceLogConent">                     <div className="title" style={{                       paddingBottom: 0,                     }}>外包状态</div>                     <div className="outsourceLogList">                       {                         this.state.outsourceLogs && this.state.outsourceLogs.map((value,index)=>(                             <div key={index} className="outsourceLogItem outsource">                               <div style={{                                 display:'flex',                                 flexFlow:'row nowrap',                                 paddingBottom: '3px',                                 paddingTop: '3px',                               }}>                                 <div>                                   {value.aname}                                 </div>                                 <div style={{paddingLeft:'5px'}}>                                   {                                     value.status === 0 ?                                         <Tag color="#2db7f5">发起外包审核</Tag> :                                         value.status === 1 ? <Tag color="#87d068">通过</Tag> :                                             <Tag color="#f50">驳回</Tag>                                   }                                 </div>                                 <div style={{                                   wordBreak: 'break-all',                                   maxWidth:'67%',                                 }}>                                   {value.remarks}                                 </div>                                 <div style={{paddingLeft: '10px'}}>                                   {value.createTimes}                                 </div>                               </div>                             </div>                         ))                       }                     </div>                  </div> : <div/>}                </Spin>                <Spin spinning={this.state.payRecordsLoading}>                  <PaymentRecord                      {...this.props}                      ref={res=>this.paymentRecordRef=res}                      tid={this.props.tid}                      isAuditPayment={this.props.isAuditPayment}                      projectType={this.props.projectType}                      patentType={this.props.patentType}                      isAuditPaymentGLY={this.props.isAuditPaymentGLY}                  />                </Spin>                {/*                  申请付款                  tid:项目id                  nodeId: 付款节点id                  previewPayInfor: 项目或者节点信息               */}                {this.state.previewPayVisible ? <ApplyPaymentModal                    {...this.props}                    tid={this.props.tid}                    type={this.state.type}                    nodeId={this.state.nodeId}                    projectType={this.props.projectType}                    patentType={this.props.patentType}                    previewPayInfor={this.state.previewPayInfor}                    visible={this.state.previewPayVisible}                    commodityQuantity={this.props.commodityQuantity}                    onRefresh={()=>{                      this.props.onRefresh();                      this.paymentRecordRef.refresh();                    }}                    changeVisible={()=>{                      this.setState({                        previewPayVisible: false,                        nodeId: 0,                  //付款节点id                        previewPayInfor: {},                        type: 1                      })                    }}/> : <div/>}              </div>          }          {/*管理员在审核通过的情况下才有此操作*/}          {            window.adminData.isSuperAdmin && this.props.status === 1 ? <div style={{            flex:1,            marginTop:'30px',          }}>                <Button                    onClick={()=>{                      this.superAdminReject();                    }}                    style={{                      color: '#ffffff',                      background: '#f00',                      border: 'none',                      width: '30%',                      height: '40px',                      display: 'flex',                      fontSize: '15px',                      justifyContent: 'center',                      alignItems: 'center',                      margin: '0 auto',                    }}>                  驳回                </Button>          </div> : null          }          {this.state.ThirdListVisible ? <NewSupplier              isLaunch//是否项目已经发起              patentNameType={this.props.patentNameType}              tid={this.props.tid}              patentType={this.props.patentType}              projectType={this.props.startType === 0 ? 0 : this.props.projectType}              realProjectType={this.props.projectType}       //真实的项目类型              startType={this.props.startType}               //项目类型 0外包  1供应商              visible={this.state.ThirdListVisible}              onCancel={() => {                this.props.onRefresh();                this.setState({                  ThirdListVisible: false,                })              }}/> : null}          {this.state.PayNodeVisible ? <OperationPayNode              tid={this.props.tid}              cSort={this.props.sort}              visible={this.state.PayNodeVisible}              thirdInfoList={this.props.thirdInfoList}              supplierList={this.state.PayNodeCompany}              onCancel={() => {                this.setState({                  PayNodeVisible: false,                  PayNodeCompany:[],                })                this.props.onRefresh();              }}          /> : <div/>}        </div>    )  }}export default CheckProject
 |