import React from "react";
import {
  Icon,
  Button,
  Input,
  Spin,
  Table,
  message,
  DatePicker,
  Upload,
  Form,
  Modal,
  Tabs,
  Col,
  Tooltip,
  Select,
  Radio,
  Tag,
} from "antd";
import $ from "jquery/src/ajax";
import moment from "moment";
import {
  getLiquidationStatus,
  getApprovedState,
  getProcessStatus,
  splitUrl,
  getjiedian,
  getboutique,
  getCuikuan,
  getProjectStatus,
  moneyVerify,
  ShowModal,
  getProjectName,
  getApprovalTag,
  getApprovedType,
} from "@/tools.js";
import "./customer.less";
import ShowModalDiv from "@/showModal.jsx";
import ResolutionDetail from "@/resolutionDetail";
import OrderRiZi from "@/orderRiZi.jsx";
import ImgList from "../../../common/imgList";
import { ChooseList } from "./chooseList";
import ProjectDetailsReadOnly from "../../../common/projectDetailsReadOnly";
import NewEditProject from "../../../common/projectOperation/newEditProject"
import OrderItemStatus from "../../../common/orderItemStatus";
import EnterpriseNameChange from "../../../common/enterpriseNameChange";
import OrderCoor from "./changeComponent/orderCoor";
import ContentUrl from "./contentUrl";
import { salesList, processStatus, approvalOptions } from "@/dataDic.js";
import FlowChart from '../../../common/flowchart'; // 流程图
import Gxczx from '../../../common/orderDetail/gxczx' // 高新纯咨询合同说明详情
import Property from '../../../common/orderDetail/property' // 知识产权情况


const confirm = Modal.confirm;
const { Option } = Select;
const RadioGroup = Radio.Group;
const RadioButton = Radio.Button;
//图片组件
const PicturesWall = React.createClass({
  getInitialState() {
    return {
      previewVisible: false,
      previewImage: "",
      declarationBatch: 1,
      dataInfor: {},
      fileList: this.props.pictureUrl
    };
  },
  handleCancel() {
    this.setState({
      previewVisible: false
    });
  },
  handlePreview(file) {
    this.setState({
      previewImage: file.url || file.thumbUrl,
      previewVisible: true
    });
  },
  handleChange(info) {
    let fileList = info.fileList;
    this.setState({
      fileList
    });
    this.props.fileList(fileList);
  },
  componentWillReceiveProps(nextProps) {
    this.state.fileList = nextProps.pictureUrl;
    this.state.pojectApplicationUrl = undefined;
  },
  render() {
    const { previewVisible, previewImage, fileList } = this.state;
    const uploadButton = (
      <div>
        <Icon type="plus" />
        <div className="ant-upload-text">点击上传</div>
      </div>
    );
    return (
      <div style={{ display: "inline-block" }}>
        <Upload
          action={
            globalConfig.context + "/api/admin/outsourceOrg/uploadOutsourceFile"
          }
          data={{ sign: "order_outsource" }}
          listType="picture-card"
          fileList={fileList}
          multiple
          onPreview={this.handlePreview}
          onChange={this.handleChange}
        >
          {uploadButton}
        </Upload>
        {previewVisible ? <Modal
          maskClosable={false}
          width={"70px"}
          visible={previewVisible}
          footer={null}
          onCancel={this.handleCancel}
        >
          <img alt="example" style={{ width: "100%" }} src={previewImage} />
        </Modal> : <div />}
      </div>
    );
  }
});

const IntentionCustomer = Form.create()(
  React.createClass({
    loadData(pageNo) {
      this.setState({
        visitModul: false,
        loading: true,
        ispage: pageNo,
        modalVisible: false,
      });
      $.ajax({
        method: "get",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + "/api/admin/newOrder/orderNewList",
        data: {
          pageNo: pageNo || 1,
          pageSize: this.state.pagination.pageSize,
          specially: 10, //营销经理审核 0 个人 1 营销员管理 2 驳回 3 特批 4 咨询师管理 5部门订单查询 6客服查询 7统计签单订单 8客户订单列表 9复审订单 10营销经理 11运营保障
          name: this.state.customerName, //名称
          orderNo: this.state.orderNoSearch, //订单编号
          starTime: this.state.releaseDate[0], //开始时间
          endTime: this.state.releaseDate[1], //结束时间
          approval: this.state.approvalSearch, //特批状态搜索
          processStatus: this.state.processStatusSearch,
          amountStatus: this.state.amountStatus,
          projectType: this.state.projectType,//会员
          type: this.state.approvaType.length > 0 ? this.state.approvaType.toString() : undefined, //特批类型
        },
        success: function (data) {
          ShowModal(this);
          let theArr = [];
          if (data.error.length || data.data.list == "") {
            if (data.error && data.error.length) {
              message.warning(data.error[0].message);
            }
          } else {
            for (let i = 0; i < data.data.list.length; i++) {
              let thisdata = data.data.list[i];
              theArr.push({
                key: i,
                id: thisdata.id, //用户ID
                salesType: thisdata.salesType, //销售类型
                deleteSign: thisdata.deleteSign,
                projectType: thisdata.projectType,
                other: thisdata.other,
                contractNo: thisdata.contractNo, //合同编号
                orderNo: thisdata.orderNo, //订单编号
                totalAmount: thisdata.totalAmount, //签单金额
                processStatus: thisdata.processStatus, //流程状态
                examineName: thisdata.examineName,
                liquidationStatus: thisdata.liquidationStatus, //结算状态
                approval: thisdata.approval, //特批状态
                signDate: thisdata.signDate, //签单时间
                userName: thisdata.userName, //客户名称
                salesmanName: thisdata.salesmanName, //营销员名称
                financeName: thisdata.financeName, //财务名称
                createDate: thisdata.createDate, //下单时间
                depName: thisdata.depName,
                orderStatus: thisdata.orderStatus,
                type: thisdata.type || "", // 特批类型
                typeExplain: thisdata.typeExplain,
              });
            }
            this.state.pagination.total = data.data.totalCount;
            this.state.pagination.current = data.data.pageNo;
          }
          if (data.data && data.data.list && !data.data.list.length) {
            this.state.pagination.total = 0;
          }
          this.setState({
            dataSource: theArr,
            pageNo: pageNo,
            pagination: this.state.pagination,
            selectedRowKeys: [],
          });
        }.bind(this),
      }).always(
        function () {
          this.setState({
            loading: false,
          });
        }.bind(this)
      );
    },
    getInitialState() {
      return {
        approvaType: [],
        rotateDeg: 0,
        page: 1,
        resVisible: false,
        releaseDate: [],
        selectedRowKeys: [],
        pictureUrl: [],
        attachmentUrl: [],
        paginations: false,
        activeKey: "1",
        confirmLoading: false,
        approvalSearch: undefined,
        processStatusSearch: undefined,
        aloading: false,
        orderNos: '',
        pagination: {
          defaultCurrent: 1,
          defaultPageSize: 10,
          showQuickJumper: true,
          pageSize: 10,
          onChange: function (page) {
            this.loadData(page);
          }.bind(this),
          showTotal: function (total) {
            return "共" + total + "条数据";
          },
        },
        columns: [
          {
            title: "销售类型",
            dataIndex: "salesType",
            key: "salesType",
            render: (text, record) => {
              return (
                <Tooltip
                  title={salesList[text] + ((text == 3 || text == 4 || text == 5) ? (!record.other ? "" : "," + record.other) : "")}
                >
                  <span>
                    {salesList[text]}
                  </span>
                </Tooltip>
              );
            },
          },
          {
            title: "特批类型",
            dataIndex: "type",
            key: "type",
            width: 110,
            render: (text, record) => {
              return (
                <span>
                  {getApprovedType(text ? text.split(",").map(Number) : [], record.typeExplain)}
                </span>
              );
            },
          },
          {
            title: "合同编号",
            dataIndex: "contractNo",
            key: "contractNo",
            className: "title-table",
            render: (text, record) => {
              return (
                <Tooltip
                  title={
                    <Button
                      type="primary"
                      onClick={(e) => {
                        e.stopPropagation();
                        let input = document.getElementById("copyText");
                        input.value = text;
                        input.select();
                        document.execCommand("copy");
                        message.success("复制成功");
                      }}
                    >
                      复制
                    </Button>
                  }
                >
                  <div>
                    {text}
                    <div style={{ display: "flex" }}>
                      <OrderItemStatus deleteSign={record.deleteSign} />
                      {getApprovalTag(record.approval)}
                    </div>
                  </div>
                </Tooltip>
              );
            },
          },
          {
            title: "客户名称",
            dataIndex: "userName",
            key: "userName",
            render: (text) => {
              return (
                <Tooltip title={text}>
                  <div
                  // style={{
                  //   maxWidth: '150px',
                  //   overflow: 'hidden',
                  //   textOverflow: "ellipsis",
                  //   whiteSpace: 'nowrap',
                  // }}
                  >{text}</div>
                </Tooltip>
              )
            },
          },
          {
            title: "订单编号",
            dataIndex: "orderNo",
            key: "orderNo",
            width: 140,
            render: (text, record) => {
              return (
                <Tooltip
                  title={
                    <Button
                      type="primary"
                      onClick={(e) => {
                        e.stopPropagation();
                        let input = document.getElementById("copyText");
                        input.value = text;
                        input.select();
                        document.execCommand("copy");
                        message.success("复制成功");
                      }}
                    >
                      复制
                    </Button>
                  }
                >
                  <div>
                    {text}
                    <div>
                      {record.totalAmount >= 10 && <Tag color="#ef7207">大客户</Tag>}
                      {record.projectType == 1 && <Tag color="rgb(22, 155, 213)">会员</Tag>}
                    </div>
                  </div>
                </Tooltip>
              );
            },
          },
          {
            title: "下单时间",
            dataIndex: "createDate",
            key: "createTime",
          },
          {
            title: "合同签订时间",
            dataIndex: "signDate",
            key: "signDate",
          },
          {
            title: "流程状态",
            dataIndex: "processStatus",
            key: "processStatus",
            render: (text, record) => {
              return getProcessStatus(text, record.examineName, record.approval);
            },
          },
          {
            title: "订单部门",
            dataIndex: "depName",
            key: "depName",
          },
          {
            title: "签单金额(万元)",
            dataIndex: "totalAmount",
            key: "totalAmount",
          },
          {
            title: "结算状态",
            dataIndex: "liquidationStatus",
            key: "liquidationStatus",
            render: (text) => {
              return getLiquidationStatus(text);
            },
          },
          {
            title: "是否特批",
            dataIndex: "approval",
            key: "approval",
            render: (text) => {
              return getApprovedState(text);
            },
          },
          {
            title: "订单负责人",
            dataIndex: "salesmanName",
            key: "salesmanName",
          },
          {
            title: "财务负责人",
            dataIndex: "financeName",
            key: "financeName",
          },
        ],
        data: [],
        dataSource: [],
        columnsX: [
          {
            title: "业务项目名称",
            dataIndex: "commodityName",
            key: "commodityName",
            render: (text, record) => {
                            return <span>
                {text}<span style={{ color: "red" }}>{record.patentTypeName}</span>{"-" + record.id}
                <div>
                  {record.cSort == 6 && record.projectType == 1 && <span>(含{record.htMember == 1 ? '高新会员&' : ''}{record.additionalDeduction == 1 ? '加计扣除&' : ''}{record.rdAwardsubsidy == 1 ? '研发奖补' : ''})</span>}
                  {record.cSort == 6 && ([0, 3].indexOf(record.projectType) > -1) && <span>(仅提供单边会员服务)</span>}
                  {record.cSort == 6 && record.projectType == 2 && <span>(仅填报表,仅咨询,不出备查资料)</span>}
                  {record.cSort == 3 && <span>{record.technologyProjectType==0?'(简易项目)':record.technologyProjectType==1?'(市区级)':record.technologyProjectType==2?'(省级)':record.technologyProjectType==3?'(国家级)':''}</span>}
                  {record.cSort == 8 ? (record.type != 2 && record.patentType == 1) ? <span>(变更)</span> : <span>{record.ordinaryRisk == 0 ? '(普通申请)' : record.ordinaryRisk == 1 ? '(风险代理)' : ''}</span> : ""}
                  {record.type == 2 && <span>({record.days == 0 ? '普通' : record.days == 1 ? '加急' : ''}{record.scheme == 0 ? '&无方案' : record.scheme == 1 ? '&有方案' : ''})</span>}
                </div>
              </span>
            }
          },
          {
            title: "项目类别",
            dataIndex: "cname",
            key: "cname",
          },
          {
            title: "项目数量",
            dataIndex: "commodityQuantity",
            key: "commodityQuantity",
            render: (text, record) => {
              if (record.splitStatus == 1) {
                return (
                  <span>
                    {text}{" "}
                    {/* <Tag
                      color="#108ee9"
                      onClick={(e) => {
                        e.stopPropagation();
                        this.showRes(record);
                      }}
                    >
                      已拆
                    </Tag> */}
                  </span>
                );
              } else {
                return text;
              }
            },
          },
          {
            title: "金额(万元)",
            dataIndex: "commodityPrice",
            key: "commodityPrice",
          },
          {
            title: "负责人",
            dataIndex: "contacts",
            key: "contacts",
          },
          {
            title: "负责人电话",
            dataIndex: "contactsMobile",
            key: "contactsMobile",
          },
          {
            title: "项目状态",
            dataIndex: "projectStatus",
            key: "projectStatus",
            render: (text) => {
              return getProjectName(text);
            },
          },
          {
            title: "主要项目",
            dataIndex: "main",
            key: "main",
            width: 50,
            render: (text) => {
              return text ? "是" : "否";
            },
          },
          {
            title: "总年限",
            dataIndex: "yearSum",
            key: "yearSum",
            render: (text, record) => {
              return (
                <div>{["", "一年", "二年", "三年", "四年", "五年"][text]}</div>
              );
            }
          },
          {
            title: "年限",
            dataIndex: "serviceLife",
            key: "serviceLife",
            render: (text, record) => {
              return (
                <div>{!!text && JSON.parse(text).toString()}</div>
              );
            }
          },
          {
            title: "本次派单",
            dataIndex: "serviceYear",
            key: "serviceYear",
            render: (text, record) => {
              return (
                <div>{!text ? "" : text}</div>
              );
            }
          },
          {
            title: "项目说明",
            dataIndex: "taskComment",
            key: "taskComment",
            render: (text, record) => {
              let textStr = text;
              return (
                <Tooltip title={textStr}>
                  <div
                    style={{
                      width: 100,
                      overflow: "hidden",
                      whiteSpace: "nowrap",
                      textOverflow: "ellipsis",
                    }}
                  >{textStr}</div>
                </Tooltip>
              )
            },
          },
        ],
        columnsrizhi: [
          {
            title: "流程",
            dataIndex: "processName",
            key: "processName",
          },
          {
            title: "操作人",
            dataIndex: "adminName",
            key: "adminName",
          },
          {
            title: "时间",
            dataIndex: "createDate",
            key: "createDate",
          },
        ],
        dataSourceX: [],
        ContactsListsNew: [
          {
            title: "项目名称",
            dataIndex: "commodityName",
            key: "commodityName",
            render: (text, record) => {
              return <span>{text + "-" + record.tid}</span>;
            },
          },
          {
            title: "项目分类",
            dataIndex: "projectType",
            key: "projectType",
            render: (text) => {
              let arr = this.state.dataSourceX || [];
              let str = "";
              for (let i = 0; i < arr.length; i++) {
                if (this.state.dataSourceX[i].sort == text) {
                  str = this.state.dataSourceX[i].cname;
                  return <span>{str}</span>;
                }
              }
            },
          },
          {
            title: "催款科目",
            dataIndex: "dunTypeName",
            key: "dunTypeName",
            render: (text, record) => {
              if (record.customizeName) {
                return text + record.customizeName;
              }
              return <span>{text}</span>;
            },
          },
          {
            title: "时间(天)",
            dataIndex: "waitDay",
            key: "waitDay",
            render: (text, record) => {
              if (record.dunTypeName) {
                if (record.customizeTimes) {
                  return record.customizeTimes;
                }
                if (text == 0) {
                  var str = "当天";
                } else if (!text) {
                  var str = "";
                } else {
                  var str = text + "天";
                }
                return <span>{str}</span>;
              }
            },
          },
          {
            title: "金额(万元)",
            dataIndex: "money",
            key: "money",
            render: (text, record) => {
              if (record.dunTypeName) {
                if (record.appropriationRatio) {
                  let percent = Number(record.appropriationRatio * 100).toFixed(2);
                  percent += "%";
                  return <span>{percent}(拨款比例)</span>;
                } else {
                  return <span>{text}</span>;
                }
              }
            },
          },
          {
            title: "服务年限",
            dataIndex: "startDate",
            key: "startDate",
            render: (text, record) => {
              if (record.dunTypeName) {
                return <span>{text}</span>;
              }
            },
          },
          {
            title: "催款状态",
            dataIndex: "status",
            key: "status",
            render: (text) => {
              return <span>{text == 1 ? "已启动" : "未启动"}</span>;
            },
          },
        ],
        ContactsLists: [
          {
            title: "催款科目",
            dataIndex: "dunSubject",
            key: "dunSubject",
            render: (text) => {
              return getjiedian(text);
            },
          },
          {
            title: "金额(万元)",
            visible订单详情dataIndex: "money",
            key: "money",
          },
          {
            title: "催款状态",
            dataIndex: "dunStatus",
            key: "dunStatus",
            render: (text) => {
              return getCuikuan(text);
            },
          },
        ],
      };
    },
    //页面加载函数
    componentWillMount() {
      this.loadData();
    },
    //整行点击
    tableRowClick(record) {
      this.setState({
        visible: true,
        orderStatus: record.orderStatus,
        id: record.id,
        orderNos: record.orderNo
      });
      this.xiangqing(record.orderNo);
      this.xiangmu(record.orderNo);
      this.jiedian(record.orderNo);
      this.jiedianNew(record.orderNo);
    },
    //点击打卡项目详情
    tableRowClickX(record) {
      if (record.type == "1") {
        this.setState({
          displayFees: "block",
          costReduction: record.costReduction,
          officialCost: record.officialCost,
        });
      } else {
        this.setState({
          displayFees: "none",
        });
      }
      this.setState({
        jid: record.id, //项目ID
        kid: record.commodityId, //商品ID
        commodityName: record.commodityName, //金额
        commodityPrice: record.commodityPrice, //金额
        commodityQuantity: record.commodityQuantity, //数量
        taskComment: record.taskComment, //备注
        main: record.main.toString(), //是否为主要
        addnextVisible: true,
        dataInfor: record,
        addState: 0,
      });
    },
    //项目详情关闭
    nextCancel() {
      this.setState({
        addnextVisible: false,
        displayFees: "none",
        officialCost: "", //是否有官费
        costReduction: "", //是否有费减
      });
    },
    //订单详情
    xiangqing(orderNos) {
      $.ajax({
        method: "get",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + "/api/admin/newOrder/getOrderNewDetail",
        data: {
          orderNo: orderNos,
        },
        success: function (data) {
          if (data.error.length || data.data.list == "") {
            if (data.error && data.error.length) {
              message.warning(data.error[0].message);
            }
          } else {
            let thisdata = data.data;
            this.setState({
              orderUid: thisdata.uid,
              userType: thisdata.userType,//
              salesType: thisdata.salesType, //销售类型
              other: thisdata.other,
              orderNo: thisdata.orderNo, //订单编号
              contractNo: thisdata.contractNo, //合同编号
              userName: thisdata.userName, //客户名称
              signDate: thisdata.signDate, //签单时间
              examineName: thisdata.examineName,
              processStatus: thisdata.processStatus, //流程状态
              liquidationStatus: thisdata.liquidationStatus, //结算状态
              contacts: thisdata.contacts, //企业联系人
              contactMobile: thisdata.contactMobile, //联系人电话
              legalPerson: thisdata.legalPerson, //法人
              legalPersonTel: thisdata.legalPersonTel, //法人电话
              firstAmount: thisdata.firstAmount, //签单金额
              totalAmount: thisdata.totalAmount, //首付金额
              approval: thisdata.approval, //特批状态
              settlementAmount: thisdata.settlementAmount, //已收款项
              orderRemarks: thisdata.orderRemarks, //订单留言
              orgCodeUrl: thisdata.contractPictureUrl
                ? splitUrl(
                  thisdata.contractPictureUrl,
                  ",",
                  globalConfig.avatarHost + "/upload"
                )
                : [], //图片地址
              replenishUrl: thisdata.agreementUrl
                ? splitUrl(
                  thisdata.agreementUrl,
                  ",",
                  globalConfig.avatarHost + "/upload"
                )
                : [], //图片地址
              contentUrl: thisdata.serviceContent
                ? splitUrl(
                  thisdata.serviceContent,
                  ",",
                  globalConfig.avatarHost + "/upload"
                )
                : [], //图片地址
              salesmanName: thisdata.salesmanName, //营销员名称
              salesmanMobile: thisdata.salesmanMobile, //营销员电话
              oldSalesmanName: thisdata.oldSalesmanName, //营销员名称
              oldSalesmanMobile: thisdata.oldSalesmanMobile, //营销员电话
              financeName: thisdata.financeName, //财务名称
              financeMobile: thisdata.financeMobile, //财务电话
              nowFinance: thisdata.nowFinance, //财务名称
              nowFinanceMobile: thisdata.nowFinanceMobile, //财务电话
              depName: thisdata.depName,
              outsource: thisdata.outsource == 0 ? "否" : "是",
              deleteSign: thisdata.deleteSign,
              // 高新纯咨询合同说明
              knowledgeServices: thisdata.knowledgeServices, //知识产权服务
              auditServices: thisdata.auditServices, //审计服务
              addDeductionServices: thisdata.addDeductionServices, //加计扣除服务
              knowledgeOther: thisdata.knowledgeOther, //知识产权服务其他描述
              auditOther: thisdata.auditOther, //审计服务其他描述
              addDeductionOther: thisdata.addDeductionOther, //加计扣除服务其他描述
              patentStatus: thisdata.patentStatus, //知识产权情况
              type: thisdata.type,// 特批类型
              typeExplain: thisdata.typeExplain, // 特批类型

            });
          }
        }.bind(this),
      }).always(
        function () {
          this.setState({
            loading: false,
          });
        }.bind(this)
      );
    },
    //项目列表
    xiangmu(orderNos) {
      $.ajax({
        method: "get",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + "/api/admin/newOrder/getOrderTask",
        data: {
          orderNo: orderNos,
        },
        success: function (data) {
          let theArr = [];

          if (data.error.length || data.data.list == "") {
            if (data.error && data.error.length) {
              message.warning(data.error[0].message);
            }
          } else {
            for (let i = 0; i < data.data.length; i++) {
              let thisdata = data.data[i];
              thisdata.key = i;
              thisdata.sort = thisdata.cSort;
              theArr.push(thisdata);
            }
          }
          this.setState({
            dataSourceX: theArr,
          });
        }.bind(this),
      }).always(
        function () {
          this.setState({
            loading: false,
          });
        }.bind(this)
      );
    },

    rizhi() {
      this.setState({
        loading: true,
      });
      $.ajax({
        method: "get",
        dataType: "json",
        crossDomain: false,
        url: "/api/admin/newOrder/selectOrderLog",
        data: {
          orderNo: this.state.orderNo,
        },
        success: function (data) {
          let theArr = [];
          let thisData = data.data;
          if (!thisData.length) {
            if (data.error && data.error.length) {
              message.warning(data.error[0].message);
            }
            thisData = {};
          } else {
            for (let i = 0; i < data.data.length; i++) {
              let thisdata = data.data[i];
              theArr.push({
                processName: thisdata.processName,
                adminName: thisdata.adminName,
                createDate: thisdata.createDate,
                remarks: thisdata.remarks,
              });
            }
          }
          this.setState({
            dataSourcerizhi: theArr,
          });
        }.bind(this),
      }).always(
        function () {
          this.setState({
            loading: false,
          });
        }.bind(this)
      );
    },

    // 拆分详细
    showRes(record) {
      this.setState({
        resVisible: true,
        resRecord: record,
      });
    },
    resCancel() {
      this.setState({
        resVisible: false,
      });
    },

    getOrderLog() {
      this.setState({
        rizhivisible: true,
      });
      this.rizhi();
    },
    closeOrderLog() {
      this.setState({
        rizhivisible: false,
      });
    },
    //节点列表
    jiedian(orderNos) {
      $.ajax({
        method: "get",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + "/api/admin/newOrder/selectOrderDun",
        data: {
          orderNo: orderNos,
        },
        success: function (data) {
          let theArr = [];
          let thisData = [];
          if (data.error.length || data.data.list == "") {
            if (data.error && data.error.length) {
              message.warning(data.error[0].message);
            }
          } else {
            for (let i = 0; i < data.data.length; i++) {
              thisData = data.data[i];
              theArr.push({
                key: i,
                dunSubject: thisData.dunSubject
                  ? thisData.dunSubject.toString()
                  : "", //催款科目
                id: thisData.id, //节点Id
                money: thisData.money, //催款金额
                dunStatus: thisData.dunStatus, //催款状态
              });
            }
            this.setState({
              contactList: theArr,
            });
          }
        }.bind(this),
      }).always(
        function () {
          this.setState({
            loading: false,
          });
        }.bind(this)
      );
    },
    //查看催款节点
    jiedianNew(orderNos) {
      $.ajax({
        method: "get",
        dataType: "json",
        crossDomain: false,
        url:
          globalConfig.context + "/api/admin/newOrderDun/selectListNewOrderDun",
        data: {
          orderNo: orderNos,
        },
        success: function (data) {
          if (data.error && data.error.length) {
            message.warning(data.error[0].message);
          } else {
            let theArr = [];
            let thisData = [];
            let arr = data.data || [];
            let totalCui = 0;
            for (let i = 0; i < arr.length; i++) {
              thisData = arr[i];
              totalCui += +thisData.money;
              theArr.push({
                key: i,
                dunSubject: thisData.dunSubject
                  ? thisData.dunSubject.toString()
                  : "", //催款科目
                id: thisData.id, //节点Id
                money: thisData.money, //催款金额
                // orderNo: record ? record.orderNo : this.props.datauser.orderNo,
                commodityName: thisData.commodityName,
                projectType: thisData.projectType,
                dunTypeName: thisData.dunTypeName,
                status: thisData.status,
                waitDay: thisData.waitDay,
                effectiveCount: thisData.effectiveCount,
                startDate: thisData.startDate,
                dunType: thisData.dunType,
                appropriationRatio: thisData.appropriationRatio,
                customizeName: thisData.customizeName,
                customizeTimes: thisData.customizeTimes,
                tid: thisData.tid,
              });
            }
            if (!totalCui) {
              totalCui = 0;
            }
            totalCui = (Math.round(totalCui * 1000000) / 1000000).toFixed(6);
            this.setState({
              contactListNew: theArr,
              totalCui,
            });
          }
        }.bind(this),
      }).always(
        function () {
          this.setState({
            loading: false,
          });
        }.bind(this)
      );
    },
    //审核通过
    examOk() {
      if (!this.state.reason) {
        message.warning("请填写备注信息");
        return;
      }
      if (!this.state.reason.replace(/\s+/g, '')) {
        message.warning("请填写备注信息");
        return;
      }
      if (this.state.flag) return;
      this.setState({
        flag: true,
        loading: true,
      });
      $.ajax({
        method: "post",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + "/api/admin/newOrder/auditOrderNew",
        data: {
          orderNo: this.state.orderNo,
          orderStatus: 2,
          reason: this.state.reason,
        },
        success: function (data) {
          if (data.error.length || data.data.list == "") {
            if (data.error && data.error.length) {
              message.warning(data.error[0].message);
              this.setState({
                flag: false,
              });
            }
          } else {
            message.success("该订单已通过审核~");
            this.setState({
              visible: false,
              flag: false,
              agreeVisible: false,
            });
            this.loadData(this.state.pageNo)
            // this.reset();
          }
        }.bind(this),
      }).always(
        function () {
          this.setState({
            loading: false,
          });
        }.bind(this)
      );
    },
    //通过发给外包
    outsourcing() {
      if (this.state.flag) return;
      this.setState({
        flag: true,
        loading: true,
      });
      $.ajax({
        method: "post",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + "/api/admin/newOrder/auditOrderNew",
        data: {
          orderNo: this.state.orderNo,
          orderStatus: 2,
          outsource: 1,
        },
        success: function (data) {
          if (data.error.length == 0 || data.data.list == "") {
            if (data.error && data.error.length) {
              message.warning(data.error[0].message);
              this.setState({
                flag: false,
              });
            }
          } else {
            message.success("该订单已通过审核~");
            this.setState({
              visible: false,
              flag: false,
            });
            // this.reset();
            this.loadData(this.state.pageNo)
          }
        }.bind(this),
      }).always(
        function () {
          this.setState({
            loading: false,
          });
        }.bind(this)
      );
    },
    //审核不通过
    examOks() {
      if (!this.state.reason) {
        message.warn("请先填写拒绝理由");
        return
      }
      if (!this.state.reason.replace(/\s+/g, '')) {
        message.warning("请先填写拒绝理由");
        return;
      }
      this.setState({
        loading: true,
      });
      this.setState({
        aloading: true,
      });
      $.ajax({
        method: "post",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + "/api/admin/newOrder/auditOrderNew",
        data: {
          orderNo: this.state.orderNo,
          orderStatus: 3,
          reason: this.state.reason,
        },
        success: function (data) {
          if (data.error.length || data.data.list == "") {
            if (data.error && data.error.length) {
              message.warning(data.error[0].message);
              this.setState({
                aloading: false,
                loading: false,
              });
            }
          } else {
            message.success("该订单已被拒绝~");
            this.setState({
              visible: false,
              aloading: false,
              noVisible: false,
              reason: "",
              loading: false,
            });
            // this.reset();
            this.loadData(this.state.pageNo)
          }
        }.bind(this),
      }).always(
        function () {
          this.setState({
            loading: false,
          });
        }.bind(this)
      );
    },
    //点击拒绝
    examNo() {
      this.setState({
        noVisible: true,
      });
    },

    callback(key) {
      let url = window.location.href.substring(7);
      this.setState({
        activeKey: key,
      });
      if (this.state.pictureUrl.length) {
        let picArr = [];
        this.state.pictureUrl.map(function (item) {
          if (
            item.response &&
            item.response.data &&
            item.response.data.length
          ) {
            picArr.push(item.response.data);
          }
        });
      }
      if (key === "2") {
        this.setState({
          loading: true,
        });
        $.ajax({
          method: "get",
          dataType: "json",
          crossDomain: false,
          url:
            globalConfig.context +
            "/api/admin/outsourceOrg/orderOutsourceDtails",
          data: {
            orderNo: this.state.orderNo,
          },
          success: function (data) {
            if (data.data) {
              let thisdata = data.data;
              this.setState({
                id: thisdata.id,
                createTimes: thisdata.createTimes,
                auditTimes: thisdata.auditTimes,
                remarks: thisdata.remarks,
                attachmentUrl: thisdata.attachmentUrl
                  ? splitUrl(
                    thisdata.attachmentUrl,
                    ",",
                    globalConfig.avatarHost + "/upload",
                    url
                  )
                  : [],
                fileUrl: thisdata.attachmentUrl
                  ? splitUrl(
                    thisdata.attachmentUrl,
                    ",",
                    globalConfig.avatarHost + "/upload",
                    url
                  )
                  : [],
                pictureUrl: thisdata.pictureUrl
                  ? splitUrl(
                    thisdata.pictureUrl,
                    ",",
                    globalConfig.avatarHost + "/upload",
                    url
                  )
                  : [], //图片地址
                amount: thisdata.amount,
                companyName: thisdata.companyName,
                outsourceRemarks: thisdata.outsourceRemarks,
                unitNumber: thisdata.unitNumber,
                unitPrice: thisdata.unitPrice,
              });
            }
          }.bind(this),
        }).always(
          function () {
            this.setState({
              loading: false,
            });
          }.bind(this)
        );
      }
    },

    getUrl(url) {
      let theorgCodeUrl = [];
      if (url.length) {
        let picArr = [];
        url.map(function (item) {
          if (
            item.response &&
            item.response.data &&
            item.response.data.length
          ) {
            picArr.push(item.response.data);
          }
        });
        theorgCodeUrl = picArr.join(",");
      }
      return theorgCodeUrl;
    },

    sureOut() {
      this.setState({
        loading: true,
      });
      if (!this.state.companyName) {
        message.warning("公司名称不能为空");
        return;
      }
      if (!this.state.unitPrice) {
        message.warning("单价不能为空");
        return;
      }
      if (moneyVerify(this.state.unitPrice)) {
        return;
      }
      if (!this.state.unitNumber) {
        message.warning("数量不能为空");
        return;
      }
      if (!this.state.amount) {
        message.warning("总金额不能为空");
        return;
      }
      if (moneyVerify(this.state.amount)) {
        return;
      }
      if (!this.state.outsourceRemarks) {
        message.warning("备注不能为空");
        return;
      }
      if (this.state.pictureUrl.length === 0) {
        message.warning("合同扫描件不能为空");
        return;
      }
      $.ajax({
        method: "POST",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + "/api/admin/outsourceOrg/auditOutsource",
        data: {
          id: this.state.id,
          orderNo: this.state.orderNo,
          companyName: this.state.companyName,
          amount: this.state.amount,
          outsourceRemarks: this.state.outsourceRemarks,
          unitNumber: this.state.unitNumber,
          unitPrice: this.state.unitPrice,
          attachmentUrl: this.getUrl(this.state.attachmentUrl).length
            ? this.getUrl(this.state.attachmentUrl)
            : "",
          orderStatus: 2,
          pictureUrl: this.getUrl(this.state.pictureUrl).length
            ? this.getUrl(this.state.pictureUrl)
            : "",
        },
      }).done(
        function (data) {
          this.setState({
            loading: false,
          });
          if (!data.error.length) {
            message.success("发起成功!");
            this.outReset();
            this.visitCancel();
          } else {
            message.warning(data.error[0].message);
          }
        }.bind(this)
      );
    },
    //关闭输入理由框
    noCancel() {
      this.setState({
        noVisible: false,
        aloading: false,
        reason: "",
      });
    },
    //搜索
    search() {
      this.setState({
        //signBillVisible:false
      });
      this.loadData();
    },
    //重置
    reset() {
      this.setState({
        signBillVisible: false,
      });
      this.state.orderNoSearch = "";
      this.state.customerName = "";
      this.state.releaseDate[0] = undefined;
      this.state.releaseDate[1] = undefined;
      this.state.approval = undefined;
      this.state.approvalSearch = undefined;
      this.state.amountStatus = undefined;
      this.state.processStatusSearch = undefined;
      this.state.projectType = undefined;
      this.state.approvaType = [];
      this.loadData(1);
    },
    outReset() {
      this.setState({
        companyName: "",
        amount: "",
        unitPrice: "",
        unitNumber: "",
        outsourceRemarks: "",
        attachmentUrl: [],
        pictureUrl: [],
      });
    },
    resets() {
      this.state.orderNo = "";
      this.state.customerName = "";
      this.state.releaseDate[0] = undefined;
      this.state.releaseDate[1] = undefined;
    },
    getOrgCodeUrl(e) {
      this.setState({ pictureUrl: e });
    },
    //关闭详情
    visitCancel() {
      this.setState(
        {
          visible: false,
        },
        () => {
          this.setState({
            activeKey: "1",
          });
        }
      );
      this.resets();
      this.loadData(this.state.pageNo);
    },
    visitOk() {
      this.setState({
        visible: false,
      });
      this.resets();
    },
    showDeleteConfirm(fn) {
      confirm({
        title: <p style={{ fontSize: 16, fontWeight: 900 }}>注意</p>,
        content: (
          <p style={{ fontWeight: 900, color: "red" }}>
            当前订单为外包单,您确定修改为普通订单?
          </p>
        ),
        okText: "确定",
        okType: "danger",
        cancelText: "取消",
        onOk() {
          fn();
        },
        onCancel() { },
      });
    },
    downImg() {
      let num = 0;
      for (let i = 0; i < this.state.orgCodeUrl.length; i++) {
        if (this.state.orgCodeUrl[i].url == this.state.previewImage) {
          num = i;
        }
      }
      if (num == this.state.orgCodeUrl.length - 1) {
        return message.warning("已经是最后一张了哦");
      }
      this.state.previewImage = this.state.orgCodeUrl[num + 1].url;
      this.setState({
        previewImage: this.state.previewImage,
        rotateDeg: 0,
      });
    },
    upImg() {
      let num = 0;
      for (let i = 0; i < this.state.orgCodeUrl.length; i++) {
        if (this.state.orgCodeUrl[i].url == this.state.previewImage) {
          num = i;
        }
      }
      if (num == 0) {
        return message.warning("已经是第一张了哦");
      }
      this.state.previewImage = this.state.orgCodeUrl[num - 1].url;
      this.setState({
        previewImage: this.state.previewImage,
        rotateDeg: 0,
      });
    },
    rotate() {
      let rotateDeg = this.state.rotateDeg + 90;
      this.setState({
        rotateDeg,
      });
    },
    downImgs() {
      let num = 0;
      for (let i = 0; i < this.state.replenishUrl.length; i++) {
        if (this.state.replenishUrl[i].url == this.state.previewImage) {
          num = i;
        }
      }
      if (num == this.state.replenishUrl.length - 1) {
        return message.warning("已经是最后一张了哦");
      }
      this.state.previewImage = this.state.replenishUrl[num + 1].url;
      this.setState({
        previewImage: this.state.previewImage,
        rotateDeg: 0,
      });
    },
    upImgs() {
      let num = 0;
      for (let i = 0; i < this.state.replenishUrl.length; i++) {
        if (this.state.replenishUrl[i].url == this.state.previewImage) {
          num = i;
        }
      }
      if (num == 0) {
        return message.warning("已经是第一张了哦");
      }
      this.state.previewImage = this.state.replenishUrl[num - 1].url;
      this.setState({
        previewImage: this.state.previewImage,
        rotateDeg: 0,
      });
    },
    rotates() {
      let rotateDeg = this.state.rotateDeg + 90;
      this.setState({
        rotateDeg,
      });
    },
    changeList(arr) {
      const newArr = [];
      this.state.columns.forEach(item => {
        arr.forEach(val => {
          if (val === item.title) {
            newArr.push(item);
          }
        });
      });
      this.setState({
        changeList: newArr
      });
    },
    // 可展开颜色不同
    addRowColor(record) {
      if (!!record.splitList && record.splitList.length > 0) {
        return 'light'
      } else {
        return 'dark'
      }
    },

    render() {
      const expandedRowRenderVip = (e) => {
        const data = e.splitList;
        let columns = [];
        if (data instanceof Array && data.length) {
          if (e.cSort == 6) {
            columns = [
              {
                title: "负责人",
                dataIndex: "receiverName",
                key: "receiverName",
              },
              {
                title: "负责人电话",
                dataIndex: "receiverMobile",
                key: "receiverMobile",
              },
              {
                title: "会员负责人",
                dataIndex: "projectMemberName",
                key: "projectMemberName",
              },
              {
                title: "项目状态",
                dataIndex: "projectStatus",
                key: "projectStatus",
                render: (text) => {
                  return getProjectName(text);
                },
              },
              {
                title: "本次派单",
                dataIndex: "serviceYear",
                key: "serviceYear",
              },
              {
                title: "项目说明",
                dataIndex: "taskComment",
                key: "taskComment",
                render: (text, record) => {
                  let textStr = text;
                  let textArr = [];
                  if (record.htMember === 1) {
                      textArr.push("高新会员");
                  }
                  if (record.additionalDeduction === 1) {
                      textArr.push("加计扣除");
                  }
                  if (record.rdAwardsubsidy === 1) {
                      textArr.push("研发补助");
                  }
                  if (textArr.length) {
                  textStr = `${textArr.join("&")} ${!!text ? `(${text})` : ''}`
                  }
                  return (
                    <Tooltip title={textStr}>
                      <div
                      // style={{
                      //   width: 100,
                      //   overflow: "hidden",
                      //   whiteSpace: "nowrap",
                      //   textOverflow: "ellipsis",
                      // }}
                      >{textStr}</div>
                    </Tooltip>
                  )
                },
              },
            ];
          } else {
            columns = [
              {
                title: "子项目名称",
                dataIndex: "taskName",
                key: "taskName"
              },
              {
                title: "子项目数量",
                dataIndex: "commodityQuantity",
                key: "commodityQuantity"
              },
              {
                title: "拆分操作人",
                dataIndex: "splitAname",
                key: "splitAname"
              },
              {
                title: "项目负责人",
                dataIndex: "receiverName",
                key: "receiverName"
              },
              {
                title: "拆分时间",
                dataIndex: "splitTimes",
                key: "splitTimes"
              }
            ]
          }
          return (
            <Table
              columns={columns}
              dataSource={data}
              pagination={false}
            />
          );
        } else {
          columns = [];
          return (
            <p
              style={{ fontWeight: "bold", color: "red", textAlign: "center" }}
            >
              {e.cSort == 6 ? "暂无派单" : "此项目暂未拆分"}
            </p>
          );
        }
      };
      const formItemLayout = {
        labelCol: { span: 10 },
        wrapperCol: { span: 14 },
      };
      const FormItem = Form.Item;
      const { TabPane } = Tabs;
      const { TextArea } = Input;
      const { RangePicker } = DatePicker;
      const cuiDataList = this.state.contactList || [];
      const approvaChildren = approvalOptions.map(i => (
        <Option key={i.value}>{i.label}</Option>
      ));
      return (
        <div className="user-content">
          {this.state.resVisible ? (
            <ResolutionDetail
              cancel={this.resCancel}
              detail={this.state.resRecord}
              visible={this.state.resVisible}
              id={this.state.resRecord.orderNo}
            />
          ) : (
            ""
          )}
          <ShowModalDiv ShowModal={this.state.showModal} onClose={() => { this.setState({ showModal: false }) }} />
          <div className="content-title" style={{ marginBottom: 10 }}>
            <span style={{ fontWeight: 900, fontSize: 16 }}>订单审核</span>
          </div>
          <Tabs defaultActiveKey="1" onChange={this.callback} className="test">
            <TabPane tab="搜索" key="1">
              <div className="user-search">
                <Input
                  placeholder="客户名称"
                  style={{
                    width: "150px",
                    marginBottom: "10px",
                    marginLeft: 10,
                  }}
                  value={this.state.customerName}
                  onChange={(e) => {
                    this.setState({ customerName: e.target.value });
                  }}
                />
                <Input
                  placeholder="订单编号"
                  style={{ width: "150px" }}
                  value={this.state.orderNoSearch}
                  onChange={(e) => {
                    this.setState({ orderNoSearch: e.target.value });
                  }}
                />
                <Select
                  style={{ width: 120 }}
                  placeholder="特批状态"
                  value={this.state.approvalSearch}
                  onChange={(e) => {
                    this.setState({
                      approvalSearch: e,
                    });
                  }}
                >
                  <Option value="0">非特批</Option>
                  <Option value="1">特批待审</Option>
                  <Option value="2">特批通过</Option>
                  <Option value="4">全部特批</Option>
                </Select>
                <Select
                  style={{ width: 120 }}
                  placeholder="签单金额"
                  value={this.state.amountStatus}
                  onChange={(e) => {
                    this.setState({
                      amountStatus: e,
                    });
                  }}
                >
                  <Option value="0">10万元以下</Option>
                  <Option value="1">10~20万元</Option>
                  <Option value="2">20~30万元</Option>
                  <Option value="3">30~40万元</Option>
                  <Option value="4">40万元以上</Option>
                </Select>
                <Select
                  style={{ width: 120 }}
                  placeholder="会员状态"
                  value={this.state.projectType}
                  onChange={(e) => {
                    this.setState({
                      projectType: e,
                    });
                  }}
                >
                  <Option value="1">会员</Option>
                  <Option value="0">非会员</Option>
                </Select>
                <Select
                  style={{ width: 150 }}
                  placeholder="流程状态"
                  value={this.state.processStatusSearch}
                  onChange={e => {
                    this.setState({
                      processStatusSearch: e
                    });
                  }}
                >
                  <Option value="">全部</Option>
                  {
                    processStatus.map((item) =>
                      <Option value={item.value} key={item.value}>{item.key}</Option>
                    )
                  }
                </Select>
                <Select
                  mode="multiple"
                  style={{ width: 200 }}
                  placeholder="特批类型"
                  value={this.state.approvaType}
                  onChange={e => {
                    this.setState({
                      approvaType: e
                    })
                  }}
                >
                  {approvaChildren}
                </Select>
                <span style={{ marginRight: "10px" }}>下单时间 :</span>
                <RangePicker
                  value={[
                    this.state.releaseDate[0]
                      ? moment(this.state.releaseDate[0])
                      : null,
                    this.state.releaseDate[1]
                      ? moment(this.state.releaseDate[1])
                      : null,
                  ]}
                  onChange={(data, dataString) => {
                    this.setState({ releaseDate: dataString });
                  }}
                />
                <Button
                  type="primary"
                  onClick={this.search}
                  style={{ marginLeft: "10px" }}
                >
                  搜索
                </Button>
                <Button onClick={this.reset}>重置</Button>
              </div>
            </TabPane>
            <TabPane tab="更改表格显示数据" key="2">
              <div style={{ marginLeft: 10 }}>
                <ChooseList
                  columns={this.state.columns}
                  changeFn={this.changeList}
                  changeList={this.state.changeList}
                  top={55}
                  margin={11}
                />
              </div>
            </TabPane>
          </Tabs>
          <div className="patent-table">
            <Spin spinning={this.state.loading}>
              <Table
                columns={
                  this.state.changeList
                    ? this.state.changeList
                    : this.state.columns
                }
                dataSource={this.state.dataSource}
                pagination={this.state.pagination}
                onRowClick={this.tableRowClick}
                bordered
                size="small"
              />
            </Spin>
            {this.state.visible &&
              <Modal
                maskClosable={false}
                className="customeDetails"
                footer=""
                width="1200px"
                visible={this.state.visible}
                onOk={this.visitOk}
                onCancel={this.visitCancel}
              >
                <Tabs activeKey={this.state.activeKey} onChange={this.callback}>
                  <TabPane tab="订单详情" key="1">
                    <Form
                      layout="horizontal"
                      onSubmit={this.handleSubmit}
                      id="demand-form"
                      style={{ paddingBottom: "40px" }}
                    >
                      <Spin spinning={this.state.loading}>
                        <div className="clearfix">
                          <div style={{ position: "absolute", top: '-30px', left: '92px', zIndex: 10000 }}>
                            <OrderItemStatus deleteSign={this.state.deleteSign} />
                          </div>
                          <FormItem
                            className="half-item"
                            {...formItemLayout}
                            label="订单编号"
                          >
                            <span>{this.state.orderNo}</span>
                          </FormItem>
                          <FormItem
                            className="half-item"
                            {...formItemLayout}
                            label="合同编号"
                          >
                            <span>{this.state.contractNo}</span>
                          </FormItem>
                          <FormItem
                            className="half-item"
                            {...formItemLayout}
                            label="客户名称"
                          >
                            <span>{this.state.userName}</span>
                            <EnterpriseNameChange
                              type='journal'
                              style={{ marginLeft: 10 }}
                              enterpriseId={this.state.orderUid} />
                          </FormItem>
                          <FormItem
                            className="half-item"
                            {...formItemLayout}
                            label="销售类型"
                          >
                            <span>
                              {(["私有客户-", "签单客户-"][this.state.userType] || " ") +
                                (salesList[this.state.salesType] || "")}
                              {
                                this.state.other != null && this.state.other != "" &&
                                <Tooltip title={this.state.other}>
                                  <span>
                                    {"(" + this.state.other.toString().slice(0, 10) + (this.state.other.toString().length > 9 ? "...)" : ")")}
                                  </span>
                                </Tooltip>
                              }
                            </span>
                            {/* <span>{(["私有客户-", "签单客户-"][this.state.userType] || " ") +
                            (salesList[this.state.salesType] || "")}
                          </span> */}
                          </FormItem>
                          <FormItem
                            className="half-item"
                            {...formItemLayout}
                            label="合同签订时间"
                          >
                            <span>{this.state.signDate}</span>
                          </FormItem>
                          <FormItem
                            className="half-item"
                            {...formItemLayout}
                            label="流程状态"
                          >
                            <span>
                              {getProcessStatus(this.state.processStatus, this.state.examineName, this.state.approval)}
                            </span>
                            <FlowChart
                              orderNo={this.state.orderNos}
                            />
                          </FormItem>
                          <FormItem
                            className="half-item"
                            {...formItemLayout}
                            label="结算状态"
                          >
                            <span>
                              {getLiquidationStatus(this.state.liquidationStatus)}
                            </span>
                          </FormItem>
                          <FormItem
                            className="half-item"
                            {...formItemLayout}
                            label="企业联系人"
                          >
                            <span>{this.state.contacts}</span>
                          </FormItem>
                          <FormItem
                            className="half-item"
                            {...formItemLayout}
                            label="联系人电话"
                          >
                            <span>{this.state.contactMobile}</span>
                          </FormItem>
                          <FormItem
                            className="half-item"
                            {...formItemLayout}
                            label="企业法人"
                          >
                            <span>{this.state.legalPerson}</span>
                          </FormItem>
                          <FormItem
                            className="half-item"
                            {...formItemLayout}
                            label="法人电话"
                          >
                            <span>{this.state.legalPersonTel}</span>
                          </FormItem>
                          <FormItem
                            className="half-item"
                            {...formItemLayout}
                            label="签单金额(万元)"
                          >
                            <span>{this.state.totalAmount}</span>
                          </FormItem>
                          <FormItem
                            className="half-item"
                            {...formItemLayout}
                            label="首付金额(万元)"
                          >
                            <span>{this.state.firstAmount}</span>
                          </FormItem>
                          <FormItem
                            className="half-item"
                            {...formItemLayout}
                            label="特批立项"
                          >
                            <span>
                              {getApprovedState(this.state.approval)}
                              {getApprovedType(this.state.type ? this.state.type.split(",").map(Number) : [], this.state.typeExplain, 1)}
                            </span>
                          </FormItem>
                          <FormItem
                            className="half-item"
                            {...formItemLayout}
                            label="已收款项(万元)"
                          >
                            <span>{this.state.settlementAmount}</span>
                          </FormItem>
                          <FormItem
                            className="half-item"
                            {...formItemLayout}
                            label="订单部门"
                          >
                            <span>{this.state.depName}</span>
                          </FormItem>
                          <FormItem
                            className="half-item"
                            {...formItemLayout}
                            label="是否外包"
                          >
                            {this.state.outsource}
                          </FormItem>
                          <div className="clearfix">
                            <FormItem
                              labelCol={{ span: 5 }}
                              wrapperCol={{ span: 19 }}
                              label="订单留言"
                            >
                              <p style={{ width: 500, wordWrap: "break-word" }}>
                                {this.state.orderRemarks}
                              </p>
                            </FormItem>
                          </div>
                          <div className="clearfix">
                            <div>
                              <FormItem
                                labelCol={{ span: 5 }}
                                wrapperCol={{ span: 19 }}
                                label="合同扫描件"
                              >
                                <div style={{ paddingTop: '10px', paddingBottom: '10px' }}>
                                  {this.state.orgCodeUrl && this.state.visible ? <ImgList fileList={this.state.orgCodeUrl} ItemWidth={'96px'} /> : <div />}
                                </div>
                                <Button
                                  style={{
                                    float: "right",
                                    marginRight: "140px",
                                    marginTop: "20px",
                                  }}
                                  onClick={this.getOrderLog}
                                >
                                  查看订单日志
                                </Button>
                              </FormItem>

                              {/* 高新纯咨询合同说明详情 */}
                              <Gxczx
                                knowledgeServices={this.state.knowledgeServices}
                                auditServices={this.state.auditServices}
                                addDeductionServices={this.state.addDeductionServices}
                                knowledgeOther={this.state.knowledgeOther}
                                auditOther={this.state.auditOther}
                                addDeductionOther={this.state.addDeductionOther}
                              />

                              <FormItem
                                labelCol={{ span: 5 }}
                                wrapperCol={{ span: 19 }}
                                label="补充协议"
                              >
                                <div style={{ paddingTop: '10px', paddingBottom: '10px' }}>
                                  {this.state.replenishUrl && this.state.visible ? <ImgList domId={'examine1'} fileList={this.state.replenishUrl} ItemWidth={'96px'} /> : <div />}
                                </div>
                              </FormItem>
                            </div>
                          </div>
                          <ContentUrl
                            processStatus={2}
                            domId={"examineContents"}
                            contentUrl={this.state.contentUrl}
                            imgId={"examineContentsImg"}
                          />
                          {/* 知识产权情况 */}
                          <Property
                            patentStatus={this.state.patentStatus}
                          />
                          <div className="clearfix">
                            <FormItem
                              className="half-item"
                              {...formItemLayout}
                              label="订单负责人"
                            >
                              <span>{this.state.salesmanName}</span>
                            </FormItem>
                            <FormItem
                              className="half-item"
                              {...formItemLayout}
                              label="订单负责人电话"
                            >
                              <span>{this.state.salesmanMobile}</span>
                            </FormItem>
                          </div>
                          <div className="clearfix">
                            <FormItem
                              className="half-item"
                              {...formItemLayout}
                              label="当前财务负责人"
                            >
                              <span>{this.state.nowFinance}</span>
                            </FormItem>
                            <FormItem
                              className="half-item"
                              {...formItemLayout}
                              label="当前财务负责人电话"
                            >
                              <span>{this.state.nowFinanceMobile}</span>
                            </FormItem>
                          </div>
                          <div className="clearfix">
                            <FormItem
                              className="half-item"
                              {...formItemLayout}
                              style={{ opacity: ".5" }}
                              label="原订单负责人"
                            >
                              <span>{this.state.oldSalesmanName}</span>
                            </FormItem>
                            <FormItem
                              className="half-item"
                              {...formItemLayout}
                              style={{ opacity: ".5" }}
                              label="原订单负责人电话"
                            >
                              <span>{this.state.oldSalesmanMobile}</span>
                            </FormItem>
                          </div>
                          <div className="clearfix">
                            <FormItem
                              className="half-item"
                              style={{ opacity: ".5" }}
                              {...formItemLayout}
                              label="实际财务操作人"
                            >
                              <span>{this.state.financeName}</span>
                            </FormItem>
                            <FormItem
                              className="half-item"
                              {...formItemLayout}
                              style={{ opacity: ".5" }}
                              label="实际财务操作人电话"
                            >
                              <span>{this.state.financeMobile}</span>
                            </FormItem>
                          </div>
                          {/* 协单人员 */}
                          <OrderCoor orderNo={this.state.orderNos} />
                          <div>
                            <span
                              style={{ marginLeft: "50px", fontSize: "20px" }}
                            >
                              项目业务
                            </span>
                            {this.state.processStatus == 0 ? (
                              <Button
                                type="primary"
                                onClick={this.addDetailed}
                                style={{
                                  float: "right",
                                  marginRight: "50px",
                                  marginBottom: "15px",
                                }}
                              >
                                添加项目明细
                              </Button>
                            ) : (
                              ""
                            )}
                          </div>
                          <div className="patent-table">
                            <Spin spinning={this.state.loading}>
                              <Table
                                columns={this.state.columnsX}
                                dataSource={this.state.dataSourceX}
                                pagination={this.state.paginations}
                                onRowClick={this.tableRowClickX}
                                expandedRowRender={expandedRowRenderVip}
                                rowClassName={this.addRowColor}
                                bordered
                                size="small"
                              />
                            </Spin>
                          </div>
                          <div>
                            <span
                              style={{ marginLeft: "50px", fontSize: "20px" }}
                            >
                              催款节点
                            </span>
                            <span
                              style={{
                                display: cuiDataList.length
                                  ? "none"
                                  : "inline-block",
                                marginLeft: 10,
                                color: "red",
                              }}
                            >
                              金额总计(万元): {this.state.totalCui}
                            </span>
                            {this.state.processStatus == 0 ? (
                              <Button
                                type="primary"
                                onClick={this.addcontact}
                                style={{
                                  float: "right",
                                  marginRight: "50px",
                                  marginBottom: "15px",
                                }}
                              >
                                添加催款节点
                              </Button>
                            ) : (
                              ""
                            )}
                          </div>
                          <div className="clearfix">
                            <Spin spinning={this.state.loading}>
                              <Form layout="horizontal" id="demand-form">
                                <Table
                                  pagination={false}
                                  bordered
                                  size="small"
                                  columns={
                                    cuiDataList.length
                                      ? this.state.ContactsLists
                                      : this.state.ContactsListsNew
                                  }
                                  dataSource={
                                    cuiDataList.length
                                      ? this.state.contactList
                                      : this.state.contactListNew
                                  }
                                />
                                <Col
                                  span={24}
                                  offset={9}
                                  style={{ marginTop: "15px" }}
                                ></Col>
                              </Form>
                            </Spin>
                          </div>
                          <div
                            className="addSave"
                            style={{
                              marginTop: "15px",
                              display: "flex",
                              justifyContent: "center",
                            }}
                          >
                            <Button
                              type="primary"
                              onClick={() => {
                                this.setState({
                                  agreeVisible: true,
                                  reason: "",
                                });
                              }}
                              style={{ margin: "0 25px" }}
                              htmlType="submit"
                            >
                              通过
                            </Button>
                            <Button
                              type="primary"
                              onClick={this.examNo}
                              style={{ margin: "0 25px" }}
                              htmlType="submit"
                            >
                              驳回
                            </Button>
                            <Button
                              type="ghost"
                              onClick={this.visitCancel}
                              style={{ margin: "0 25px" }}
                            >
                              取消
                            </Button>
                            {/*<Button className='warn-button' type="primary" onClick={this.outsourcing} style={{marginLeft:"50px"}}>通过不走总部</Button>
											   <p className='hint'>提示:高于总部价格,费用个人承担!</p>*/}
                          </div>
                        </div>
                      </Spin>
                    </Form>
                  </TabPane>
                  {/* <TabPane tab="外包(不走总部)" key="2">
                  <Spin spinning={this.state.loading}>
                    <div className="clearfix" style={{ marginTop: 10 }}>
                      <FormItem
                        className="half-item"
                        {...formItemLayout}
                        label={
                          <span>
                            <strong style={{ color: "#f00" }}>*</strong>外包公司
                          </span>
                        }
                      >
                        <Input
                          value={this.state.companyName}
                          onChange={(e) => {
                            this.setState({
                              companyName: e.target.value,
                            });
                          }}
                          placeholder="请填写外包公司名称"
                        />
                      </FormItem>
                      <span className="tip">如多个公司,请用间隔</span>
                    </div>
                    <div className="clearfix">
                      <FormItem
                        className="half-item"
                        {...formItemLayout}
                        label={
                          <span>
                            <strong style={{ color: "#f00" }}>*</strong>
                            单价(万元)
                          </span>
                        }
                      >
                        <Input
                          value={this.state.unitPrice}
                          onChange={(e) => {
                            this.setState({
                              unitPrice: e.target.value,
                            });
                          }}
                          placeholder="请填写单价"
                        />
                      </FormItem>
                    </div>
                    <div className="clearfix">
                      <FormItem
                        className="half-item"
                        {...formItemLayout}
                        label={
                          <span>
                            <strong style={{ color: "#f00" }}>*</strong>数量(个)
                          </span>
                        }
                      >
                        <Input
                          value={this.state.unitNumber}
                          onChange={(e) => {
                            this.setState({
                              unitNumber: e.target.value,
                            });
                          }}
                          placeholder="请填写数量"
                        />
                      </FormItem>
                    </div>
                    <div className="clearfix">
                      <FormItem
                        className="half-item"
                        {...formItemLayout}
                        label={
                          <span>
                            <strong style={{ color: "#f00" }}>*</strong>
                            总金额(万元)
                          </span>
                        }
                      >
                        <Input
                          value={this.state.amount}
                          onChange={(e) => {
                            this.setState({
                              amount: e.target.value,
                            });
                          }}
                          placeholder="请填写本次外包公司的价格"
                        />
                      </FormItem>
                    </div>
                    <div className="clearfix">
                      <FormItem
                        className="half-item"
                        style={{ height: "auto" }}
                        {...formItemLayout}
                        label={
                          <span>
                            <strong style={{ color: "#f00" }}>*</strong>备注
                          </span>
                        }
                      >
                        <TextArea
                          rows={4}
                          value={this.state.outsourceRemarks}
                          onChange={(e) => {
                            this.setState({
                              outsourceRemarks: e.target.value,
                            });
                          }}
                          placeholder="请输入备注"
                        />
                      </FormItem>
                    </div>
                    <p
                      className="tip"
                      style={{
                        paddingBottom: "12px",
                        width: "240px",
                        marginLeft: "145px",
                      }}
                    >
                      首次派单项目,需上传协议,第2次起,同项目,只需写外包公司
                    </p>
                    <div className="clearfix">
                      <FormItem
                        labelCol={{ span: 4 }}
                        wrapperCol={{ span: 18 }}
                        label={
                          <span>
                            <strong style={{ color: "#f00" }}>*</strong>
                            合同/协议扫描件
                            <span style={{ color: "#f00" }}>(外包合同)</span>
                          </span>
                        }
                      >
                        <PicturesWall
                          fileList={this.getOrgCodeUrl}
                          pictureUrl={this.state.pictureUrl}
                        />
                        <p>请上传与外包公司签订的合同协议</p>
                        <p>图片建议:要清晰。</p>
                      </FormItem>
                    </div>
                    <div className="clearfix">
                      <div
                        style={{ display: "inline-black", textAlign: "center" }}
                      >
                        <Button type="primary" onClick={this.sureOut}>
                          确认发起外包,不通过总部
                        </Button>
                        <p className="tip">提示:高于总部价格,费用个人承担</p>
                      </div>
                    </div>
                  </Spin>
                </TabPane> */}
                </Tabs>
              </Modal>}
            {this.state.noVisible ? <Modal
              maskClosable={false}
              visible={this.state.noVisible}
              onOk={this.handleOk}
              onCancel={this.noCancel}
              width="400px"
              title={"拒绝理由"}
              footer=""
              className="admin-desc-content"
              confirmLoading={this.state.confirmLoading}
            >
              <Form layout="horizontal" id="demand-form">
                <Spin spinning={this.state.loading}>
                  <div className="clearfix">
                    <FormItem
                      labelCol={{ span: 4 }}
                      wrapperCol={{ span: 16 }}
                      label="拒绝理由"
                    >
                      <Input
                        type="textarea"
                        placeholder="请输入拒绝理由"
                        rows={4}
                        value={this.state.reason}
                        onChange={(e) => {
                          this.setState({ reason: e.target.value });
                        }}
                      />
                    </FormItem>
                  </div>
                  <div className="clearfix">
                    <Button
                      className="cancel"
                      type="primary"
                      onClick={this.examOks}
                      style={{ marginLeft: "50px" }}
                      htmlType="submit"
                      loading={this.state.aloading}
                    >
                      确定
                    </Button>
                    <Button
                      className="cancel"
                      type="ghost"
                      onClick={this.noCancel}
                      style={{ marginLeft: "50px" }}
                    >
                      取消
                    </Button>
                  </div>
                </Spin>
              </Form>
            </Modal> : <div />}
            {this.state.agreeVisible ? <Modal
              maskClosable={false}
              visible={this.state.agreeVisible}
              onOk={(e) => {
                this.setState({
                  agreeVisible: false,
                });
              }}
              onCancel={(e) => {
                this.setState({
                  agreeVisible: false,
                });
              }}
              width="400px"
              title={"同意备注"}
              footer=""
              className="admin-desc-content"
              confirmLoading={this.state.confirmLoading}
            >
              <Form layout="horizontal" id="demand-form">
                <Spin spinning={this.state.loading}>
                  <div className="clearfix">
                    <FormItem
                      labelCol={{ span: 4 }}
                      wrapperCol={{ span: 16 }}
                      label="同意理由"
                    >
                      <Input
                        type="textarea"
                        placeholder="请输入同意理由"
                        rows={4}
                        value={this.state.reason}
                        onChange={(e) => {
                          this.setState({ reason: e.target.value });
                        }}
                      />
                    </FormItem>
                  </div>
                  <div className="clearfix">
                    <Button
                      className="cancel"
                      type="primary"
                      onClick={(e) => {
                        if (this.state.outsource == "是") {
                          this.showDeleteConfirm(this.examOk);
                        } else {
                          this.examOk();
                        }
                      }}
                      style={{ marginLeft: "50px" }}
                      htmlType="submit"
                      loading={this.state.aloading}
                    >
                      确定
                    </Button>
                    <Button
                      className="cancel"
                      type="ghost"
                      onClick={(e) => {
                        this.setState({
                          agreeVisible: false,
                        });
                      }}
                      style={{ marginLeft: "50px" }}
                    >
                      取消
                    </Button>
                  </div>
                </Spin>
              </Form>
            </Modal> : <div />}
            {/* <Modal
              visible={this.state.rizhivisible}
              className="admin-desc-content"
              width="800px"
              maskClosable={false}
              title="订单日志"
              footer={null}
              onCancel={this.closeOrderLog}
            >
              <div className="patent-table">
                <Spin spinning={this.state.loading}>
                  <Table
                    columns={this.state.columnsrizhi}
                    dataSource={this.state.dataSourcerizhi}
                    pagination={false}
                  />
                </Spin>
              </div>
            </Modal> */}
            <OrderRiZi
              dataSourcerizhi={this.state.dataSourcerizhi}
              closeOrderLog={this.closeOrderLog}
              visible={this.state.rizhivisible}
              loading={this.state.loading}
            />
          </div>
          <textarea id="copyText" style={{ opacity: 0 }} />
          {this.state.addnextVisible &&
            <NewEditProject
              readOnly={this.state.dataInfor && Object.keys(this.state.dataInfor).length > 0 && this.state.processStatus !== 0}
              orderNo={this.state.orderNo}
              visible={this.state.addnextVisible}
              dataInfor={this.state.dataInfor}
              onCancel={this.nextCancel}
            />
            // <ProjectDetailsReadOnly
            //   infor={this.state.dataInfor}
            //   visible={this.state.addnextVisible}
            //   onCancel={this.nextCancel}
            // />
          }
        </div>
      );
    },
  })
);
export default IntentionCustomer;