| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364 | 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";const confirm = Modal.confirmclass CheckProject extends Component {  constructor(props) {    super(props)    this.state = {      value: '',      loading: false,      previewImage: '',      previewVisible: false,      payRecordVisible: false,      orderPaymentsId: 0,      previewPayVisible: false,      type: 1,//1 申请付款 2 申请付官费      previewPayInfor: {},        //点击申请付款的第三方信息或者支付节点信息      nodeId: 0,      // 专利      ContactsListsNew: [],      //付款节点表头      PayNodeTableColunms: [],      outsourceLogs: [],//审核日志      selectOrderPayments: [],//支付列表      orderPaymentseColunms: [        {          title: '编号',          dataIndex: 'id',          key: 'id',        },        {          title: '节点编号',          dataIndex: 'nodeId',          key: 'nodeId',        },        {          title: '供应商名称',          dataIndex: 'companyName',          key: 'companyName',          render: (text, record) => {            return <span>              {text+'-'+record.tpcId}              {                text !== record.tpcName ?                    '('+record.tpcName+')' : ''              }            </span>          },        },        {          title: '支付类型',          dataIndex: 'chooseType',          key: 'chooseType',          render: (text, record) => {            return <span>              {/*0第三方 1催款 2官费*/}              {text === 0 ? '第三方' : text === 1 ? '催款' : '官费'}            </span>          },        },        {          title: '申请支付金额(万元)',          dataIndex: 'applicationAmount',          key: 'applicationAmount',          render: (text, record) => {            return <span>              {isNaN(parseFloat(text)) ? text : parseFloat(text)}            </span>          },        },        {          title: '申请支付数量',          dataIndex: 'quantity',          key: 'quantity',        },        {          title: '申请时间',          dataIndex: 'createTimes',          key: 'createTimes',        },        {          title: '状态',          dataIndex: 'status',          key: 'status',          render: (text, record) => {              return <div style={{                display: 'flex',                justifyContent: 'center',              }}>                <div style={{                  paddingRight: '15px',                }}>                  {                    text === 0 ? '审核中' :                        text === 1 ? '审核通过' :                            text === 2 ? '已驳回' :                                text === 3 ? '支付完成' : '已取消'                  }                </div>                <Button type="primary" size='small' onClick={()=>{                  this.setState({                    payRecordVisible: true,                    orderPaymentsId: record.id,                  })                }}>                  {this.operationJudgmentName(text)}                </Button>              </div>          },        },      ],//支付记录      outsourcingLogLoading: false,      payRecordsLoading: false,    }  }  componentDidMount() {    if(this.props.tid){      setTimeout(()=>{        this.getSelectOutsourceLog();        this.getSelectOrderPayment();        this.projectTypeTabContent(this.props.projectType);      },500)    }  }  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>              )            },          },        ]      })    }  }  onChange() {    this.setState({      value: e.target.value,    })  }  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)    )  }  //支付列表  getSelectOrderPayment() {    this.setState({      payRecordsLoading: true    })    $.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 () {          this.setState({            payRecordsLoading: false          })        }.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)    )  }  //超级管理员  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.orderTaskOfficialCost === 1 && this.props.startType !== 0?                      <div style={{padding:'0px 0px 10px 20px'}}>                        官费:<span style={{marginLeft:'15px'}}>{this.props.containOfficialFees === 0 ? '实际已缴费' : '实际未缴费'}</span>                      </div> : null                }                <div className="thirdParty">                  <div>            <span className="title">              第三方信息            </span>                  </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>                  </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}>                  {this.state.selectOrderPayments.length !== 0 ? <div className="outsourceLogConent">                    <div className="title">支付记录</div>                    <Spin spinning={this.state.loading}>                      <Form layout="horizontal">                        <Table                            pagination={false}                            columns={this.state.orderPaymentseColunms}                            dataSource={this.state.selectOrderPayments}                            style={{                              cursor: 'pointer',                            }}                            onRowClick={(record)=>{                              this.setState({                                payRecordVisible: true,                                orderPaymentsId: record.id,                              })                            }}                            scroll={{ x: 'max-content', y: 0 }}                            bordered                            size="middle"                        />                        <Col span={24} offset={9} style={{ marginTop: '15px' }}/>                      </Form>                    </Spin>                  </div> : <div/>}                </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}                    onRefresh={()=>{                      this.props.onRefresh();                      this.getSelectOrderPayment();                    }}                    changeVisible={()=>{                      this.setState({                        previewPayVisible: false,                        nodeId: 0,                  //付款节点id                        previewPayInfor: {},                        type: 1                      })                    }}/> : <div/>}                {/*  支付记录操作弹出  */}                {this.state.payRecordVisible ? <PayRecord                    {...this.props}                    tid={this.props.tid}                    projectType={this.props.projectType}                    patentType={this.props.patentType}                    payId={this.state.orderPaymentsId}                    visible={this.state.payRecordVisible}                    isAuditPayment={this.props.isAuditPayment}                    isAuditPaymentGLY={this.props.isAuditPaymentGLY}                    onRefresh={()=>{                      this.props.onRefresh();                      this.getSelectOrderPayment();                    }}                    changeVisible={()=>{                      this.getSelectOrderPayment();                      this.props.onRefresh && this.props.onRefresh();                      this.setState({                        payRecordVisible: false,                      })                    }}                /> : <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          }        </div>    )  }}export default CheckProject
 |