import React from "react";
import {
  Table,
  Modal,
  message,
  Spin,
  Input,
  Select,
  Button,
  Form,
  Upload,
  Popconfirm,
  AutoComplete,
  DatePicker,
  Col,
  Tag
} from "antd";
import $ from "jquery/src/ajax";
import "../userMangagement.less";
import moment from "moment";
import { cuiJieDian } from "@/dataDic.js";
import Picture from "@/manageCenter/publicComponent/picture";
import { jiedian, tepi, boutique } from "../../../dataDic.js";
import {
  splitUrl,
  getProcessStatus,
  getLiquidationStatus,
  getboutique,
  getApprovedState,
  getjiedian,
  getCuikuan,
  getProjectStatus
} from "../../../tools.js";
import PicturesWall from "./changeComponent/picturesWall.js";
import ResolutionDetail from "@/resolutionDetail";

const Addorders = Form.create()(
  React.createClass({
    //查看项目列表
    loadData(orderNo) {
      this.state.data = [];
      this.setState({
        loading: true,
      });
      $.ajax({
        method: "get",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + "/api/admin/newOrder/getOrderTask",
        data: {
          orderNo: orderNo,
        },
        success: function (data) {
          let theArr = [];
          if (!data.data) {
            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];
              theArr.push({
                key: i,
                id: thisdata.id,
                orderNo: thisdata.orderNo, //订单编号
                commodityId: thisdata.commodityId, //项目ID
                commodityName: thisdata.commodityName, //项目名称
                cname: thisdata.cname, //项目类别
                commodityPrice: thisdata.commodityPrice, //项目价格
                commodityQuantity: thisdata.commodityQuantity, //项目数量
                main: thisdata.main, //是否为主要任务
                taskComment: thisdata.taskComment, //任务说明
                contacts: thisdata.contacts, //联系人
                contactsMobile: thisdata.contactsMobile, //联系人电话
                projectStatus: thisdata.projectStatus, //项目状态
                sort: thisdata.cSort,
                splitStatus: thisdata.splitStatus,
              });
            }
          }
          this.departmentList();
          this.setState({
            dataSource: theArr,
            pagination: false,
          });
        }.bind(this),
      }).always(
        function () {
          this.setState({
            loading: false,
          });
        }.bind(this)
      );
    },

    //收款节点
    loadDatas(orderNo) {
      this.state.data = [];
      this.setState({
        loading: true,
      });
      $.ajax({
        method: "get",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + "/api/admin/newOrder/selectOrderDun",
        data: {
          orderNo: orderNo,
        },
        success: function (data) {
          let theArr = [];
          if (!data.data) {
            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];
              theArr.push({
                key: i,
                id: thisdata.id,
              });
            }
          }
          this.setState({
            dataSource: theArr,
            pagination: false,
          });
        }.bind(this),
      }).always(
        function () {
          this.setState({
            loading: false,
          });
        }.bind(this)
      );
    },

    getInitialState() {
      return {
        rotateDeg: 0,
        loading: false,
        visible: false,
        resVisible: false,
        orgCodeUrl: [],
        replenishUrl: [],
        voucherUrl: [],
        customerArr: [],
        mark: false,
        activeKey: "1",
        buttonStatus: true,
        typeChange: 0,
        bussStats: false,
        checkedKeys: [],
        lookflowList: [],
        contractUrl: [],
        applicationUrl: [],
        active: {
          applySign: false,
        },
        lookState: false,
        signBillVisible: false,
        commod: "",
        columns: [
          {
            title: "业务项目名称",
            dataIndex: "commodityName",
            key: "commodityName",
          },
          {
            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 getProjectStatus(text);
            },
          },
          {
            title: "主要项目",
            dataIndex: "main",
            key: "main",
            render: (text) => {
              return text ? "是" : "否";
            },
          },
          {
            title: "项目说明",
            dataIndex: "taskComment",
            key: "taskComment",
            render: (text) => {
              return text && text.length > 8 ? text.substr(0, 8) + "…" : text;
            },
          },
          {
            title: "操作",
            dataIndex: "ABC",
            key: "ABC",
            render: (_text, record) => {
              return (
                <div>
                  {this.state.processStatus == 0 ? (
                    <Popconfirm
                      title="是否删除?"
                      onConfirm={() => {
                        this.delectRow(record);
                      }}
                      okText="是"
                      cancelText="否"
                    >
                      <Button
                        onClick={(e) => {
                          e.stopPropagation();
                        }}
                        type="danger"
                      >
                        删除
                      </Button>
                    </Popconfirm>
                  ) : (
                    ""
                  )}
                </div>
              );
            },
          },
        ],
        columnsrizhi: [
          {
            title: "流程",
            dataIndex: "processName",
            key: "processName",
          },
          {
            title: "操作人",
            dataIndex: "adminName",
            key: "adminName",
          },
          {
            title: "时间",
            dataIndex: "createDate",
            key: "createDate",
          },
        ],

        contactList: [],
        loading: false,
        ContactsLists: [
          {
            title: "催款科目",
            dataIndex: "dunSubject",
            key: "dunSubject",
            render: (text, record) => {
              return (
                <Select
                  placeholder="请选择催款科目"
                  value={record.dunSubject}
                  style={{ width: "150px" }}
                  disabled
                  onChange={(e) => {
                    record.dunSubject = e;
                    this.setState({ contactList: this.state.contactList });
                  }}
                >
                  {jiedian.map(function (item) {
                    return (
                      <Select.Option key={item.value}>{item.key}</Select.Option>
                    );
                  })}
                </Select>
              );
            },
          },
          {
            title: "金额(万元)",
            dataIndex: "money",
            key: "money",
            render: (text, record) => {
              return (
                <Input
                  value={record.money}
                  placeholder="请输入金额(必填项)"
                  disabled
                  key={record.id}
                  required="required"
                  onChange={(e) => {
                    record.money = e.target.value;
                    this.setState({ contactList: this.state.contactList });
                  }}
                  style={{ width: "120px" }}
                />
              );
            },
          },
          {
            title: "催款状态",
            dataIndex: "dunStatus",
            key: "dunStatus",
            render: (text) => {
              return getCuikuan(text);
            },
          },
          {
            title: "操作",
            dataIndex: "dels",
            key: "dels",
            render: (text, record) => {
              return (
                <div>
                  {
                    <Popconfirm
                      title="是否删除?"
                      onConfirm={() => {
                        this.confirmDelet(record.key);
                      }}
                      okText="删除"
                      cancelText="不删除"
                    >
                      <Button
                        style={{
                          marginRight: "10px",
                          color: "#ffffff",
                          background: "#f00",
                          border: "none",
                          display:
                            this.state.processStatus == 0 ? "block" : "none",
                        }}
                      >
                        删除
                      </Button>
                    </Popconfirm>
                  }
                  {record.id ? (
                    ""
                  ) : (
                    <Button type="primary" onClick={this.contactSave}>
                      保存
                    </Button>
                  )}
                </div>
              );
            },
          },
        ],
        ContactsListsNew: [
          {
            title: "项目名称",
            dataIndex: "commodityName",
            key: "commodityName",
            render: (text, record, index) => {
              let dataArr = this.state.dataSource || [];
              if (text) {
                return <span>{text}</span>;
              }
              return (
                <Select
                  placeholder="请选择名称"
                  style={{ width: "150px" }}
                  disabled={
                    this.state.getLoad && record.sortName ? true : false
                  }
                  onChange={(e) => {
                    record.sortName = e;
                    dataArr.forEach((item) => {
                      if (item.commodityName == record.sortName) {
                        record.cname = item.cname;
                        record.tid = item.id;
                        record.isSave = true;
                        record.sort = item.sort;
                        cuiJieDian.forEach((item) => {
                          if (item.value == record.sort) {
                            record.arr = item.children;
                            let yearFlag = true;
                            if (record.sort == 6) {
                              yearFlag = false;
                            }
                            this.setState({
                              getLoad: true,
                              yearFlag,
                            });
                          }
                        });
                      }
                    });
                  }}
                >
                  {dataArr.map((item) => {
                    return (
                      <Select.Option key={item.id} value={item.commodityName}>
                        {item.commodityName}
                      </Select.Option>
                    );
                  })}
                </Select>
              );
            },
          },
          {
            title: "项目分类",
            dataIndex: "projectType",
            key: "projectType",
            render: (text, record) => {
              if (text) {
                let arr = this.state.dataSource || [];
                let str = "";
                for (let i = 0; i < arr.length; i++) {
                  if (this.state.dataSource[i].sort == text) {
                    str = this.state.dataSource[i].cname;
                    return <span>{str}</span>;
                  }
                }
              }
              if (this.state.getLoad) {
                return (
                  <Select
                    style={{ width: "150px" }}
                    placeholder="请选择分类"
                    value={record.cname}
                  >
                    <Select.Option key={record.sort} value={record.cname}>
                      {record.cname}
                    </Select.Option>
                  </Select>
                );
              } else {
                return (
                  <Select style={{ width: "150px" }} placeholder="请选择分类">
                    <Select.Option key={record.sort} value={record.cname}>
                      {record.cname}
                    </Select.Option>
                  </Select>
                );
              }
            },
          },
          {
            title: "催款科目",
            dataIndex: "dunTypeName",
            key: "dunTypeName",
            render: (text, record) => {
              if (text) {
                if (record.customizeName) {
                  return text + record.customizeName;
                }
                return <span>{text}</span>;
              }
              if (this.state.getLoad) {
                let arr = record.arr || [];
                return (
                  <div>
                    <Select
                      style={{ width: "150px", marginRight: 5 }}
                      placeholder="请选择分类"
                      onChange={(e) => {
                        record.dunType = e;
                        if (record.dunType == 0) {
                          record.customizeTimes = "";
                          record.customizeName = "";
                        }
                        if (e != 1) {
                          this.setState({
                            timeFlag: true,
                          });
                        } else {
                          this.setState({
                            timeFlag: false,
                          });
                        }
                        if (e == 1 && record.sort == 6) {
                          this.setState({
                            yearFlag: true,
                          });
                        } else if (e != 1 && record.sort == 6) {
                          this.setState({
                            yearFlag: false,
                          });
                        }
                        if (record.sort == 3 && e == 3) {
                          this.setState({
                            boFlag: true,
                          });
                        } else {
                          this.setState({
                            boFlag: false,
                          });
                        }
                      }}
                    >
                      {arr.map((item) => {
                        record;
                        return (
                          <Select.Option key={item.value} value={item.value}>
                            {item.key}
                          </Select.Option>
                        );
                      })}
                      <Select.Option key={0} value={0}>
                        自定义
                      </Select.Option>
                    </Select>
                    {record.dunType == 0 ? (
                      <Input
                        value={record.customizeName}
                        placeholder="请输入自定义名称"
                        required="required"
                        onChange={(e) => {
                          record.customizeName = e.target.value;
                          this.setState({
                            contactList: this.state.contactList,
                          });
                        }}
                        style={{ width: "120px" }}
                      />
                    ) : (
                      ""
                    )}
                  </div>
                );
              } else {
                return (
                  <Select style={{ width: "150px" }} placeholder="请选择分类">
                    <Select.Option
                      key={0}
                      value={"请选择上一项"}
                    ></Select.Option>
                  </Select>
                );
              }
            },
          },
          {
            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>;
              }
              return (
                <div>
                  {record.dunType == 0 ? (
                    <DatePicker
                      style={{ width: 150 }}
                      disabledDate={(e) => {
                        let time = moment(e).valueOf();
                        let today = Date.parse(new Date());
                        if (time <= today) {
                          return true;
                        }
                      }}
                      onChange={(e, t) => {
                        record.customizeTimes = t;
                      }}
                    />
                  ) : (
                    <Select
                      placeholder="请选择时间"
                      style={{ width: "160px" }}
                      disabled={
                        this.state.approval != 0 && !this.state.timeFlag
                          ? false
                          : true
                      }
                      onChange={(e) => {
                        record.waitDay = e;
                      }}
                    >
                      <Select.Option key={0}>当天</Select.Option>
                      <Select.Option key={3}>3天</Select.Option>
                      <Select.Option key={5}>5天</Select.Option>
                      <Select.Option key={7}>7天</Select.Option>
                      <Select.Option key={15}>15天</Select.Option>
                    </Select>
                  )}
                </div>
              );
            },
          },
          {
            title: "金额(万元)",
            dataIndex: "money",
            key: "money",
            render: (text, record) => {
              if (record.dunTypeName) {
                if (record.appropriationRatio && !record.money) {
                  return <span>{record.appropriationRatio}(拨款比例)</span>;
                } else if (record.appropriationRatio && record.money) {
                  return (
                    <span>
                      {text}(比例:{record.appropriationRatio})
                    </span>
                  );
                } else {
                  return <span>{text}</span>;
                }
              }
              if (this.state.boFlag) {
                return (
                  <div>
                    <div style={{ width: 70, float: "left", marginRight: 5 }}>
                      <Select
                        placeholder="选择"
                        defaultValue={"金额"}
                        onChange={(e) => {
                          record.boStatus = e;
                        }}
                      >
                        <Select.Option key={true}>比例</Select.Option>
                        <Select.Option key={false}>金额</Select.Option>
                      </Select>
                    </div>
                    <div style={{ float: "right" }}>
                      <Input
                        value={record.money}
                        placeholder="请根据左侧类型填写"
                        key={record.id}
                        required="required"
                        onChange={(e) => {
                          record.money = e.target.value;
                          this.setState({
                            contactList: this.state.contactList,
                          });
                        }}
                        style={{ width: "120px" }}
                      />
                    </div>
                  </div>
                );
              } else {
                return (
                  <div>
                    <Input
                      value={record.money}
                      placeholder="请输入金额(必填项)"
                      key={record.id}
                      required="required"
                      onChange={(e) => {
                        record.money = e.target.value;
                        this.setState({ contactList: this.state.contactList });
                      }}
                      style={{ width: "120px" }}
                    />
                  </div>
                );
              }
            },
          },
          {
            title: "服务年限",
            dataIndex: "startDate",
            key: "startDate",
            render: (text, record) => {
              if (record.dunTypeName) {
                return <span>{text}</span>;
              }
              return (
                <Select
                  placeholder="请选择年限"
                  style={{ width: "150px" }}
                  disabled={this.state.yearFlag ? true : false}
                  onChange={(e) => {
                    record.effectiveCount = e;
                  }}
                >
                  {/* <Select.Option key={null}>无</Select.Option> */}
                  <Select.Option key={1}>一年</Select.Option>
                  <Select.Option key={3}>两年</Select.Option>
                  <Select.Option key={5}>三年</Select.Option>
                  <Select.Option key={7}>四年</Select.Option>
                  <Select.Option key={9}>五年</Select.Option>
                </Select>
              );
            },
          },
          {
            title: "催款状态",
            dataIndex: "status",
            key: "status",
            render: (text) => {
              return <span>{text == 1 ? "已启动" : "未启动"}</span>;
            },
          },
          {
            title: "操作",
            dataIndex: "dels",
            key: "dels",
            render: (text, record, index) => {
              return (
                <div>
                  {this.state.processStatus == 0 ? (
                    <Popconfirm
                      title="是否删除?"
                      onConfirm={() => {
                        this.confirmDeletNew(record);
                      }}
                      okText="删除"
                      cancelText="不删除"
                    >
                      <Button
                        style={{
                          marginRight: "10px",
                          color: "#ffffff",
                          background: "#f00",
                          border: "none",
                        }}
                      >
                        删除
                      </Button>
                    </Popconfirm>
                  ) : (
                    ""
                  )}
                  {record.isSave ? (
                    <Button
                      type="primary"
                      onClick={(e) => {
                        this.contactSaveNew(record);
                      }}
                    >
                      保存
                    </Button>
                  ) : (
                    ""
                  )}
                </div>
              );
            },
          },
        ],
      };
    },

    departmentList() {
      this.setState({
        loading: true,
      });
      $.ajax({
        method: "get",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + "/api/admin/organization/selectSuperId",
        data: {},
        success: function (data) {
          let thedata = data.data;
          let theArr = [];
          if (!thedata) {
            if (data.error && data.error.length) {
              message.warning(data.error[0].message);
            }
            thedata = {};
          } else {
            thedata.map(function (item, index) {
              theArr.push({
                key: index,
                name: item.name,
                id: item.id,
                depNo: item.depNo,
              });
            });
          }
          this.setState({
            departmentArr: theArr,
          });
        }.bind(this),
      }).always(
        function () {
          this.setState({
            loading: false,
          });
        }.bind(this)
      );
    },

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

    //新建订单、编辑订单保存
    handleSubmit() {
      let theorgCodeUrl = [];
      if (this.state.orgCodeUrl.length) {
        let picArr = [];
        this.state.orgCodeUrl.map(function (item) {
          if (
            item.response &&
            item.response.data &&
            item.response.data.length
          ) {
            picArr.push(item.response.data);
          }
        });
        theorgCodeUrl = picArr.join(",");
      }
      let theReplenishUrl = [];
      if (this.state.replenishUrl.length) {
        let picArr = [];
        this.state.replenishUrl.map(function (item) {
          if (
            item.response &&
            item.response.data &&
            item.response.data.length
          ) {
            picArr.push(item.response.data);
          }
        });
        theReplenishUrl = picArr.join(",");
      }
      if (this.props.data) {
        if (!theorgCodeUrl) {
          message.warning("图片过大,上传失败");
          return false;
        }
        if (!this.state.signDate) {
          message.warning("签单日期不能为空");
          return false;
        }
        if (!this.state.orderRemarks) {
          message.warning("订单留言不能为空");
          return false;
        }
      } else {
      }
      const arr = this.state.contactListNew || [];
      for (let i = 0; i < arr.length; i++) {
        if (
          arr[i].dunType == 1 &&
          arr[i].waitDay != null &&
          this.state.approval == 0
        ) {
          message.warning(
            "非特批存在填写催款节点首付时间的情况,请删除后重新填写保存"
          );
          return false;
        } else if (
          arr[i].dunType == 1 &&
          arr[i].waitDay == null &&
          this.state.approval == 1
        ) {
          message.warning(
            "特批存在首付催款节点未填写时间的情况,请删除后重新填写保存"
          );
          return false;
        }
        if (!this.state.contactListNew[i].id && this.props.userDetaile) {
          message.warning("请保存催款节点");
          return false;
        }
      }
      this.setState({
        loading: true,
      });
      let api = "/api/admin/newOrder/updateServiceOrderNew";
      $.ajax({
        method: "POST",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + api,
        data: {
          orderNo: this.state.orderNo, //订单编号
          totalAmount: this.state.totalAmount, //总金额
          firstAmount: this.state.firstAmount, //首付
          isSubmit: this.state.isSubmit, //保存草稿还是提交
          signDate: this.state.signDate, //签单日期
          contacts: this.state.contacts, //企业负责人
          contactMobile: this.state.contactMobile, //负责人联系方式
          legalPerson: this.state.legalPerson, //企业法人
          legalPersonTel: this.state.legalPersonTel, //企业法人联系电话
          approval: this.state.approval, //特批状态
          orderRemarks: this.state.orderRemarks, //订单备注
          contractPictureUrl: theorgCodeUrl.length ? theorgCodeUrl : "",
          agreementUrl: theReplenishUrl.length ? theReplenishUrl : "",
          orderDep: this.state.organizationSearch,
          deleteSign: this.props.deleteSign === 3 ? 0 : undefined,
        },
      }).done(
        function (data) {
          this.setState({
            loading: false,
          });
          if (!data.error.length) {
            message.success("保存成功!");
            this.handleOk();
            if (this.state.autoId) {
              this.loadData(this.props.data);
            }
          } else {
            message.warning(data.error[0].message);
          }
        }.bind(this)
      );
    },

    //订单详情修改
    xiangqingClick(e) {
      e.preventDefault();
      this.setState({
        loading: true,
      });
      $.ajax({
        url: globalConfig.context + "/api/admin/newOrder/updateServiceOrderNew",
        method: "post",
        data: {
          orderNo: this.state.orderNo, //订单编号
          totalAmount: this.state.totalAmount, //总金额
          firstAmount: this.state.firstAmount, //首付
          isSubmit: this.state.isSubmit, //保存草稿还是提交
          signDate: this.state.selTime, //签单日期
          contacts: this.state.contacts, //企业负责人
          contactMobile: this.state.contactMobile, //负责人联系方式
          legalPerson: this.state.legalPerson, //企业法人
          legalPersonTel: this.state.legalPersonTel, //企业法人联系电话
          approval: this.state.approval, //特批状态
          orderRemarks: this.state.orderRemarks, //订单备注
        },
      }).done(
        function (data) {
          this.setState({
            loading: false,
          });
          if (!data.error.length) {
            message.success("保存成功!");
            this.loaduser(this.props.data);
          } else {
            message.warning(data.error[0].message);
          }
        }.bind(this)
      );
    },

    //查看基本详情基本信息
    loaduser(orderNo) {
      this.state.orderList = [];
      $.ajax({
        method: "get",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + "/api/admin/newOrder/getOrderNewDetail",
        data: {
          orderNo: orderNo,
        },
        success: function (data) {
          let thisData = data.data;
          if (!thisData) {
            if (data.error && data.error.length) {
              message.warning(data.error[0].message);
            }
            thisData = {};
          }
          // this.props.getPrimaryOrder(thisData.primaryOrder);
          // this.props.getAdditionalOrder(thisData.additionalOrder);
          this.setState({
            id: thisData.id,
            kehuId: thisData.buyerId,
            orderNo: thisData.orderNo, //订单编号
            orderType: thisData.orderType, //订单类型
            firstAmount: thisData.firstAmount, //首付金额
            totalAmount: thisData.totalAmount, //总金额
            settlementAmount: thisData.settlementAmount, //结算金额
            liquidationStatus: thisData.liquidationStatus, //清算状态
            processStatus: thisData.processStatus, //流程状态
            approval: thisData.approval.toString(), //特批状态
            orderRemarks: thisData.orderRemarks, //订单备注
            contractNo: thisData.contractNo, //合同编号
            contacts: thisData.contacts, //联系人
            contactMobile: thisData.contactMobile, //联系人电话
            legalPerson: thisData.legalPerson, //法人
            legalPersonTel: thisData.legalPersonTel, //法人电话
            contractNo: thisData.contractNo, //合同编号
            orgCodeUrl: thisData.contractPictureUrl
              ? splitUrl(
                  thisData.contractPictureUrl,
                  ",",
                  globalConfig.avatarHost + "/upload"
                )
              : [], //图片地址
            replenishUrl: thisData.agreementUrl
              ? splitUrl(
                  thisData.agreementUrl,
                  ",",
                  globalConfig.avatarHost + "/upload"
                )
              : [],
            signDate: thisData.signDate, //签单时间
            userName: thisData.userName, //客户名称
            salesmanName: thisData.salesmanName, //营销员名称
            salesmanMobile: thisData.salesmanMobile, //营销员电话
            oldSalesmanName: thisData.oldSalesmanName, //营销员名称
            oldSalesmanMobile: thisData.oldSalesmanMobile, //营销员电话
            financeName: thisData.financeName, //财务名称
            financeMobile: thisData.financeMobile, //财务电话
            nowFinance: thisData.nowFinance,
            nowFinanceMobile: thisData.nowFinanceMobile,
            contractNo: thisData.contractNo, //合同编号
            approval:
              thisData.approval == 0
                ? thisData.approval.toString()
                : thisData.approval,
            organizationSearch: thisData.orderDep,
            depName: thisData.depName,
          });
        }.bind(this),
      }).always(
        function () {
          this.setState({
            loading: false,
          });
        }.bind(this)
      );
    },
    //查看催款节点
    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, //催款状态
                orderNo: thisData.orderNo,
              });
            }
            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,
              });
            }
            if (!totalCui) {
              totalCui = 0;
            }
            totalCui = (Math.round(totalCui * 10000) / 10000).toFixed(4);
            this.setState({
              contactListNew: theArr,
              totalCui,
            });
          }
        }.bind(this),
      }).always(
        function () {
          this.setState({
            loading: false,
          });
        }.bind(this)
      );
    },
    //催款节点保存
    contactSave(record) {
      for (let i = 0; i < this.state.contactList.length; i++) {
        if (moneyVerify(this.state.contactList[i].money)) {
          return;
        }
      }
      this.setState({
        loading: true,
      });
      $.ajax({
        url: globalConfig.context + "/api/admin/newOrder/createOrderDun",
        method: "post",
        data: {
          orderNo: this.state.orderNo,
          orderDun: JSON.stringify(this.state.contactList),
        },
      }).done(
        function (data) {
          this.setState({
            loading: false,
          });
          if (!data.error.length) {
            message.success("保存成功!");
            this.jiedian(record.orderNo);
          } else {
            message.warning(data.error[0].message);
          }
        }.bind(this)
      );
    },
    //催款节点保存
    contactSaveNew(record) {
      if (record.dunType == 0) {
        if (!record.customizeTimes) {
          message.warning("请输入自定义时间");
          return;
        } else if (!record.customizeName) {
          message.warning("请输入自定义科目");
          return;
        }
      }
      if (record.boStatus == "false") {
        record.boStatus = false;
      } else if (record.boStatus == "true") {
        record.boStatus = true;
      }
      if (!this.state.yearFlag) {
        if (!record.effectiveCount) {
          message.warning("请选择服务年限");
          return;
        }
      } else {
        record.effectiveCount = "";
      }
      if (record.money == "") {
        message.warning("请填写金额");
        return;
      }
      if (record.boStatus) {
        if (
          typeof +record.money == "number" &&
          +record.money >= 0 &&
          +record.money <= 1
        ) {
          record.appropriationRatio = record.money;
        } else {
          message.warning("金额比例填写错误,比例范围0~1");
          return;
        }
      }
      if (!record.dunType && record.dunType != 0) {
        message.warning("请选择对应科目");
        return;
      }
      if (record.dunType != 1) {
        record.waitDay = "";
      }
      this.setState({
        loading: true,
      });
      if (record.boStatus) {
        $.ajax({
          url: globalConfig.context + "/api/admin/newOrderDun/createDun",
          method: "post",
          data: {
            orderNo: record.orderNo,
            tid: record.tid,
            projectType: record.sort,
            dunType: record.dunType,
            appropriationRatio: record.appropriationRatio,
            waitDay: record.waitDay,
            effectiveCount: record.effectiveCount,
            customizeTimes:
              record.dunType == 0 ? record.customizeTimes : undefined,
            customizeName:
              record.dunType == 0 ? record.customizeName : undefined,
          },
        }).done(
          function (data) {
            this.setState({
              loading: false,
            });
            if (!data.error.length) {
              message.success("保存成功!");
              this.setState({
                cuiFlag: false,
                boFlag: false,
                addFlag: false,
              });
              this.jiedianNew(record.orderNo);
            } else {
              message.warning(data.error[0].message);
            }
          }.bind(this)
        );
      } else {
        $.ajax({
          url: globalConfig.context + "/api/admin/newOrderDun/createDun",
          method: "post",
          data: {
            orderNo: record.orderNo,
            tid: record.tid,
            projectType: record.sort,
            dunType: record.dunType,
            money: record.money,
            waitDay: record.waitDay,
            effectiveCount: record.effectiveCount,
            customizeTimes:
              record.dunType == 0 ? record.customizeTimes : undefined,
            customizeName:
              record.dunType == 0 ? record.customizeName : undefined,
          },
        }).done(
          function (data) {
            this.setState({
              loading: false,
            });
            if (!data.error.length) {
              message.success("保存成功!");
              this.setState({
                cuiFlag: false,
                boFlag: false,
                addFlag: false,
              });
              this.jiedianNew(record.orderNo);
            } else {
              message.warning(data.error[0].message);
            }
          }.bind(this)
        );
      }
    },
    //点击新增催款节点
    addcontact() {
      this.state.contactList.push({
        key: this.state.contactList.length,
        money: "",
        dunSubject: undefined,
        orderNo: this.state.orderNo,
        dunTarget: this.state.kehuId,
      });
      this.setState({
        contactList: this.state.contactList,
      });
    },
    //点击新增催款节点
    addcontactNew() {
      this.state.contactListNew.push({
        key: this.state.contactListNew.length,
        money: "",
        dunSubject: undefined,
        orderNo: this.state.orderNo,
        dunTarget: this.state.kehuId,
      });
      this.setState({
        contactListNew: this.state.contactListNew,
        cuiFlag: true,
      });
    },
    //删除收款节点
    confirmDelet(index) {
      this.state.contactList.splice(index, 1);
      this.setState({
        contactList: this.state.contactList,
      });
      this.contactSave();
    },
    //删除收款节点
    confirmDeletNew(index) {
      if (index.id) {
        this.state.contactListNew.splice(index.key, 1);
        this.setState({
          contactListNew: this.state.contactListNew,
          cuiFlag: false,
          addFlag: false,
          boFlag: false,
        });
        $.ajax({
          url: globalConfig.context + "/api/admin/newOrderDun/deleteDun",
          method: "post",
          data: {
            id: index.id,
          },
        }).done(
          function (data) {
            this.setState({
              loading: false,
            });
            if (!data.error.length) {
              message.success("删除成功!");
              this.setState({
                cuiFlag: false,
              });
              this.jiedianNew(this.state.orderNo);
            } else {
              message.warning(data.error[0].message);
            }
          }.bind(this)
        );
      } else {
        this.state.contactListNew.splice(index.key, 1);
        this.setState({
          contactListNew: this.state.contactListNew,
          cuiFlag: false,
          addFlag: false,
          boFlag: false,
        });
      }
    },
    handleOk() {
      this.setState({
        visible: false,
      });
      this.props.closeDesc(false, true);
    },
    handleCancel() {
      if (this.state.orderType == undefined) {
        return false;
      }
      if (!this.state.autoId) {
        return false;
      }
      this.setState({
        visible: false,
      });
      this.props.closeDesc(false);
    },
    handleCancelclose() {
      this.setState(
        {
          visible: false,
        },
        () => {
          this.setState({
            activeKey: "1",
          });
        }
      );
      this.props.closeDesc(false);
      this.reset();
    },
    //点击签单
    handleCancels() {
      this.setState(
        {
          isSubmit: 1,
        },
        () => {
          this.handleSubmit();
        }
      );
    },
    //点击签单
    handleCancelq() {
      this.setState(
        {
          isSubmit: 0,
        },
        () => {
          this.handleSubmit();
        }
      );
    },
    //删除
    delectRow(record) {
      this.setState({
        loading: true,
      });
      $.ajax({
        method: "post",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + "/api/admin/newOrder/deleteOrderTask",
        data: {
          id: record.id,
        },
      }).done(
        function (data) {
          if (!data.error.length) {
            message.success("删除成功!");
            this.setState({
              loading: false,
            });
            //this.loaduser()
            this.loadData(this.props.data);
          } else {
            message.warning(data.error[0].message);
          }
        }.bind(this)
      );
    },

    nextCancel() {
      this.setState({
        addnextVisible: false,
      });
    },

    rizhi() {
      this.setState({
        loading: true,
      });
      $.ajax({
        method: "get",
        dataType: "json",
        crossDomain: false,
        url: "/api/admin/newOrder/selectOrderLog",
        data: {
          orderNo: this.props.data,
        },
        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)
      );
    },

    //查看订单日志
    getOrderLog() {
      this.setState({
        rizhivisible: true,
      });
      this.rizhi();
    },
    closeOrderLog() {
      this.setState({
        rizhivisible: false,
      });
    },

    callback(key) {
      this.setState({
        activeKey: key,
      });
    },

    getOrgCodeUrl(e) {
      this.setState({ orgCodeUrl: e });
    },
    getReplenishUrl(e) {
      this.setState({ replenishUrl: e });
    },
    getVoucherUrl(e) {
      this.setState({ voucherUrl: e });
    },
    //加载(自动补全)
    supervisor(e, state) {
      //客户名称与服务名称自动补全
      let api = state
        ? "/api/admin/customer/getCustomerByName"
        : "/api/admin/order/getBusinessProjectByName";
      $.ajax({
        method: "get",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + api,
        data: state
          ? {
              name: e,
              type: this.state.customType,
            }
          : {
              businessName: e,
            },
        success: function (data) {
          let thedata = data.data;
          if (!thedata) {
            if (data.error && data.error.length) {
              message.warning(data.error[0].message);
            }
            thedata = {};
          }
          this.setState({
            states: state,
            customerArr: thedata,
          });
        }.bind(this),
      }).always(
        function () {
          this.setState({
            loading: false,
          });
        }.bind(this)
      );
    },
    //上级主管输入框失去焦点是判断客户是否存在
    selectAuto(value) {
      let kid = [];
      let fwList = this.state.customerArr;
      fwList.map(function (item) {
        if (value == item.bname) {
          kid = item;
        }
      });
      this.setState({
        commodityName: value,
        gid: kid.id,
        //commodityPrice:kid.price==0?kid.price.toString():kid.price,
        commodityFirstPayment:
          kid.firstPayment == 0
            ? kid.firstPayment.toString()
            : kid.firstPayment,
      });
    },
    //客户
    selectAutoCUT(value) {
      let autoIds;
      let fwList = this.state.customerArr;
      fwList.map(function (item) {
        if (value == item.name) {
          autoIds = item.id;
        }
      });
      this.setState({
        customerName: value,
        autoId: autoIds,
      });
    },
    //服务值改变时请求客户名称
    httpChange(e) {
      this.state.gid = "";
      if (e.length >= 1) {
        this.supervisor(e, false);
      }
      this.setState({
        commodityName: e,
      });
    },
    //客户名称自动补全
    customerChange(e) {
      if (this.state.customType) {
        this.state.autoId = "";
        if (e.length >= 2) {
          this.supervisor(e, true);
        }
        this.setState({
          customerName: e,
        });
      } else {
        this.setState({
          customerName: "",
        });
        message.warning("客户所属类型必须指定");
      }
    },
    //点击添加项目明细
    addDetailed() {
      this.setState({
        gid: "",
        customerArr: [],
        commodityName: "",
        commodityQuantity: "",
        commodityId: "",
        taskComment: "",
        main: undefined,
        commodityPrice: "",
        addState: 1,
        addnextVisible: true,
      });
    },
    //新建项目明细保存
    nextSubmit(e) {
      e.preventDefault();
      if (this.state.gid == undefined || !this.state.gid) {
        message.warning("服务名称不匹配!");
        return false;
      }
      if (!this.state.commodityPrice) {
        message.warning("请输入金额!");
        this.refs.commodityPrice.focus();
        return false;
      }
      if (!this.state.commodityQuantity) {
        message.warning("请输入商品数量!");
        this.refs.commodityQuantity.focus();
        return false;
      }
      if (!this.state.main) {
        message.warning("请选择是否为主要项目!");
        this.refs.commodityQuantity.focus();
        return false;
      }
      this.setState({
        loading: true,
      });
      let api = this.state.addState
        ? "/api/admin/newOrder/addOrderTask"
        : "/api/bianji";
      $.ajax({
        method: "POST",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + api,
        data: {
          commodityId: this.state.gid, //商品ID
          orderNo: this.props.data, //订单编号
          commodityName: this.state.commodityName, //商品名称
          commodityQuantity: this.state.commodityQuantity, //商品数量
          commodityPrice: this.state.commodityPrice, //签单总价
          taskComment: this.state.taskComment, //服务说明
          main: this.state.main, //是否为主要项目
        },
      }).done(
        function (data) {
          this.setState({
            loading: false,
          });
          if (!data.error.length) {
            message.success("保存成功!");
            this.nextCancel();
            //this.loaduser(this.props.datauser);
            this.loadData(this.props.data);
          } else {
            message.warning(data.error[0].message);
          }
        }.bind(this)
      );
    },
    //点击打卡项目详情
    tableRowClick(record) {
      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,
        addState: 0,
      });
    },
    //修改项目详情
    tabRowSave(e) {
      e.preventDefault();
      if (!this.state.commodityPrice) {
        message.warning("金额不能为空!");
        return false;
      }
      if (!this.state.commodityQuantity) {
        message.warning("数量不能为空!");
        return false;
      }
      if (!this.state.main) {
        message.warning("请选择是否为主要项目!");
        this.refs.commodityQuantity.focus();
        return false;
      }
      $.ajax({
        method: "POST",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + "/api/admin/newOrder/updateOrderTask",
        data: {
          id: this.state.jid, //项目ID
          commodityId: this.state.kid, //商品ID
          orderNo: this.props.data, //订单编号
          main: this.state.main, //是否为主要
          commodityPrice: this.state.commodityPrice, //金额
          commodityQuantity: this.state.commodityQuantity, //数量
          taskComment: this.state.taskComment, //备注
        },
      }).done(
        function (data) {
          this.setState({
            loading: false,
          });
          if (!data.error.length) {
            message.success("保存成功!");
            this.nextCancel();
            //this.loaduser(this.props.datauser);
            this.loadData(this.props.data);
          } else {
            message.warning(data.error[0].message);
          }
        }.bind(this)
      );
    },

    //签单时间选择
    selTime(e, index) {
      this.setState({
        entryTime: e,
        signDate: e,
        selTime: index,
      });
    },
    //退单操作
    //点击退单
    tuikuan() {
      this.setState({
        lookVisible: true,
        contractUrl: [],
        applicationUrl: [],
        reason: "",
      });
    },
    //关闭退单
    noCancel() {
      this.setState({
        lookVisible: false,
      });
    },
    //点击确认退单
    tuidanOk() {
      let contractUrls = [];
      let applicationUrls = [];
      if (this.state.contractUrl.length) {
        let picArr = [];
        this.state.contractUrl.map(function (item) {
          if (
            item.response &&
            item.response.data &&
            item.response.data.length
          ) {
            picArr.push(item.response.data);
          }
        });
        contractUrls = picArr.join(",");
      }
      if (this.state.applicationUrl.length) {
        let picArr = [];
        this.state.applicationUrl.map(function (item) {
          if (
            item.response &&
            item.response.data &&
            item.response.data.length
          ) {
            picArr.push(item.response.data);
          }
        });
        applicationUrls = picArr.join(",");
      }
      $.ajax({
        method: "POST",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + "/api/admin/newOrder/addOrderRefund",
        data: {
          orderNo: this.state.orderNo, //订单编号
          contractUrl: contractUrls.length ? contractUrls : "", //终止合同
          applicationUrl: applicationUrls.length ? applicationUrls : "", //退单申请表
          reason: this.state.reason, //退单原因
        },
      }).done(
        function (data) {
          this.setState({
            loading: false,
          });
          if (!data.error.length) {
            message.success("退单成功!");
            this.noCancel();
            this.handleCancelclose();
          } else {
            message.warning(data.error[0].message);
          }
        }.bind(this)
      );
    },
    //开单选择订单类型骚操作
    orderTypeFn(e) {
      if (e == 0) {
        this.setState({
          bussStats: true,
          orderType: e,
        });
        this.category();
      } else {
        this.setState({
          contractType: undefined,
          bussStats: false,
          orderType: e,
        });
      }
    },
    //品类数据获取
    category() {
      $.ajax({
        method: "get",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + "/api/admin/Varieties/getSuperList",
        data: {},
        success: function (data) {
          let thedata = data.data;
          let theArr = [];
          if (!thedata) {
            if (data.error && data.error.length) {
              message.warning(data.error[0].message);
            }
            thedata = {};
          } else {
            thedata.map(function (item, index) {
              theArr.push({
                key: index,
                name: item.cname,
                id: item.id,
              });
            });
          }
          this.setState({
            contractType: undefined,
            categoryArr: theArr,
          });
        }.bind(this),
      });
    },

    //变更申请
    changeApply() {
      let theorgCodeUrl = [];
      if (this.state.voucherUrl.length) {
        let picArr = [];
        this.state.voucherUrl.map(function (item) {
          if (
            item.response &&
            item.response.data &&
            item.response.data.length
          ) {
            picArr.push(item.response.data);
          }
        });
        theorgCodeUrl = picArr.join(",");
      }
      $.ajax({
        method: "post",
        dataType: "json",
        crossDomain: false,
        url: globalConfig.context + "/api/admin/orderChange/addOrderChange",
        data: {
          orderNo: this.state.orderNo, //订单编号
          processState: 0,
          status: 1,
          remarks: this.state.remarksC,
          voucherUrl: theorgCodeUrl.length ? theorgCodeUrl : "",
          totalAmount: this.state.totalAmountC,
          settlementAmount: this.state.settlementAmountC,
          changeAmount: this.state.changeAmount,
          applicant: this.state.applicant,
          depName: this.state.depNameChange,
          type: this.state.typeChange,
        },
      }).done(
        function (data) {
          this.setState({
            loading: false,
          });
          if (!data.error.length) {
            message.success("变更成功!");
            this.setState({
              mark: true,
            });
            this.noCancel();
            this.handleCancelclose();
          } else {
            message.warning(data.error[0].message);
          }
        }.bind(this)
      );
    },

    reset() {
      this.setState({
        remarksC: undefined,
        voucherUrl: [],
        totalAmountC: undefined,
        settlementAmountC: undefined,
        changeAmount: undefined,
        applicant: undefined,
        depNameChange: undefined,
        typeChange: 0,
      });
    },

    componentDidMount() {
      this.loaduser(this.props.data);
      this.jiedian(this.props.data);
      this.jiedianNew(this.props.data);
      this.loadData(this.props.data);
    },

    componentWillReceiveProps(nextProps) {
      if (nextProps.mark) {
        this.setState({
          buttonStatus: true,
        });
      } else {
        this.setState({
          buttonStatus: false,
        });
      }
      if (nextProps.activeKey === "4") {
        this.loaduser(this.props.data);
        this.jiedian(this.props.data);
        this.jiedianNew(this.props.data);
        this.loadData(this.props.data);
      }
    },

    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,
      });
    },

    render() {
      const FormItem = Form.Item;
      const formItemLayout = {
        labelCol: { span: 8 },
        wrapperCol: { span: 14 },
      };
      const formItemList = [
        {
          label: "企业联系人",
          content: <span>{this.state.contacts}</span>,
        },
        {
          label: "联系人电话",
          content: <span>{this.state.contactMobile}</span>,
        },
        {
          label: "企业法人",
          content: <span>{this.state.legalPerson}</span>,
        },
        {
          label: "法人电话",
          content: <span>{this.state.legalPersonTel}</span>,
        },
        {
          label: "签单金额(万元)",
          content: <span>{this.state.totalAmount}</span>,
        },
        {
          label: "首付金额(万元)",
          content: <span>{this.state.firstAmount}</span>,
        },
        {
          label: "特批立项",
          content: <span>{getApprovedState(this.state.approval)}</span>,
        },
        {
          label: "合同签订时间",
          content: <span>{this.state.signDate}</span>,
        },
        {
          label: "订单部门",
          content: <span>{this.state.depName}</span>,
        },
      ];
      const dataSources = this.state.customerArr || [];
      let departmentArr = this.state.departmentArr || [];
      const cuiDataList = this.state.contactList || [];
      const options = this.state.states
        ? dataSources.map((group) => (
            <Select.Option key={group.id} value={group.name}>
              {group.name}
            </Select.Option>
          ))
        : dataSources.map((group, index) => (
            <Select.Option key={index} value={group.bname}>
              {group.bname}
            </Select.Option>
          ));

      return (
        <div>
          {this.state.resVisible ? (
            <ResolutionDetail
              cancel={this.resCancel}
              detail={this.state.resRecord}
              visible={this.state.resVisible}
              id={this.state.resRecord.orderNo}
            />
          ) : (
            ""
          )}
          <Spin spinning={this.state.loading}>
            <div className="clearfix">
              <FormItem
                className="half-item"
                {...formItemLayout}
                label="合同编号"
              >
                {<span>{this.state.contractNo}</span>}
              </FormItem>
              <FormItem
                className="half-item"
                {...formItemLayout}
                label="订单编号"
              >
                <span>{this.state.orderNo}</span>
              </FormItem>
              <FormItem
                className="half-item"
                {...formItemLayout}
                label="流程状态"
              >
                <span>{getProcessStatus(this.state.processStatus)}</span>
              </FormItem>
              <FormItem
                className="half-item"
                {...formItemLayout}
                label="结算状态"
              >
                <span>
                  {getLiquidationStatus(this.state.liquidationStatus)}
                </span>
              </FormItem>
              {this.props.deleteSign === 3 || this.state.processStatus === 0 ? (
                <div className="clearfix">
                  <FormItem
                    className="half-item"
                    {...formItemLayout}
                    label="特批立项"
                  >
                    <Select
                      placeholder="请选择客户所属类型"
                      style={{ width: "240px" }}
                      value={this.state.approval}
                      onChange={(e) => {
                        this.setState({ approval: e });
                      }}
                    >
                      {tepi.map(function (item) {
                        return (
                          <Select.Option key={item.value}>
                            {item.key}
                          </Select.Option>
                        );
                      })}
                    </Select>
                  </FormItem>
                  <FormItem
                    className="half-item"
                    {...formItemLayout}
                    label="合同签订时间"
                  >
                    <DatePicker
                      style={{
                        marginTop: "2px",
                        width: "240px",
                        height: "32px",
                      }}
                      showTime
                      format="YYYY-MM-DD"
                      onOk={() => {}}
                      value={
                        this.state.signDate ? moment(this.state.signDate) : null
                      }
                      onChange={(_data, dataString) => {
                        this.setState({ signDate: dataString });
                      }}
                    />
                    <span className="mandatory">*</span>
                  </FormItem>
                  <FormItem
                    className="half-item"
                    {...formItemLayout}
                    label="订单部门"
                  >
                    <Select
                      placeholder="请输入订单部门"
                      style={{ width: 240 }}
                      value={this.state.organizationSearch}
                      onChange={(e) => {
                        this.setState({ organizationSearch: e });
                      }}
                    >
                      {departmentArr.map(function (item) {
                        return (
                          <Select.Option key={item.id}>
                            {item.name}
                          </Select.Option>
                        );
                      })}
                    </Select>
                  </FormItem>
                </div>
              ) : (
                <div className="clearfix">
                  <FormItem
                    className="half-item"
                    {...formItemLayout}
                    label="特批立项"
                  >
                    <span>{getApprovedState(this.state.approval)}</span>
                  </FormItem>
                  <FormItem
                    className="half-item"
                    {...formItemLayout}
                    label="合同签订时间"
                  >
                    <span>{this.state.signDate}</span>
                  </FormItem>
                  <FormItem
                    className="half-item"
                    {...formItemLayout}
                    label="订单部门"
                  >
                    <span>{this.state.depName}</span>
                  </FormItem>
                </div>
              )}
            </div>
            <h3 style={{ marginLeft: 10, fontWeight: 800, marginBottom: 10 }}>
              收款项目
            </h3>
            {this.props.deleteSign === 3 || this.state.processStatus === 0 ? (
              <div className="clearfix">
                <FormItem
                  className="half-item"
                  {...formItemLayout}
                  label="签单金额(万元)"
                >
                  <Input
                    placeholder="签单金额"
                    ref="signTotalAmount"
                    value={this.state.totalAmount}
                    onChange={(e) => {
                      this.setState({ totalAmount: e.target.value });
                    }}
                    style={{ width: "240px" }}
                  />
                  <span className="mandatory">*</span>
                </FormItem>
                <FormItem
                  className="half-item"
                  {...formItemLayout}
                  label="首付金额(万元)"
                >
                  <Input
                    placeholder="请输入实签首款金额"
                    ref="signFirstPayment"
                    value={this.state.firstAmount}
                    onChange={(e) => {
                      this.setState({ firstAmount: e.target.value });
                    }}
                    style={{ width: "240px" }}
                  />
                  <span className="mandatory">*</span>
                </FormItem>
                <FormItem
                  className="half-item"
                  {...formItemLayout}
                  label="已收款项"
                >
                  <span>{this.state.settlementAmount + "万元"}</span>
                  {/* {this.state.settlementAmount ? (
                      <Button
                        type="primary"
                        onClick={this.tuikuan}
                        style={{
                          float: "right",
                          marginRight: "50px",
                          marginBottom: "15px"
                        }}
                      >
                        退单
                      </Button>
                    ) : (
                      ""
                    )} */}
                </FormItem>
              </div>
            ) : (
              <div className="clearfix">
                <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>{this.state.settlementAmount + "万元"}</span>
                  {/* {this.state.settlementAmount ? (
                      <Button
                        type="primary"
                        onClick={this.tuikuan}
                        style={{
                          float: "right",
                          marginRight: "50px",
                          marginBottom: "15px"
                        }}
                      >
                        退单
                      </Button>
                    ) : (
                      ""
                    )} */}
                </FormItem>
              </div>
            )}
            <h3 style={{ marginLeft: 10, fontWeight: 800, marginBottom: 10 }}>
              联系信息
            </h3>
            {this.props.deleteSign === 3 || this.state.processStatus == 0 ? (
              <div className="clearfix">
                <div className="clearfix">
                  <FormItem
                    className="half-item"
                    {...formItemLayout}
                    label="客户名称"
                  >
                    <span>{this.state.userName}</span>
                  </FormItem>
                </div>
                <FormItem
                  className="half-item"
                  {...formItemLayout}
                  label="企业联系人"
                >
                  <Input
                    placeholder="请输入联系人"
                    ref="signTotalAmount"
                    value={this.state.contacts}
                    onChange={(e) => {
                      this.setState({ contacts: e.target.value });
                    }}
                    style={{ width: "240px" }}
                  />
                </FormItem>
                <FormItem
                  className="half-item"
                  {...formItemLayout}
                  label="联系人电话"
                >
                  <Input
                    placeholder="请输入联系人电话"
                    ref="signTotalAmount"
                    value={this.state.contactMobile}
                    onChange={(e) => {
                      this.setState({ contactMobile: e.target.value });
                    }}
                    style={{ width: "240px" }}
                  />
                </FormItem>
                <FormItem
                  className="half-item"
                  {...formItemLayout}
                  label="企业法人"
                >
                  <Input
                    placeholder="请输入法人"
                    ref="signTotalAmount"
                    value={this.state.legalPerson}
                    onChange={(e) => {
                      this.setState({ legalPerson: e.target.value });
                    }}
                    style={{ width: "240px" }}
                  />
                </FormItem>
                <FormItem
                  className="half-item"
                  {...formItemLayout}
                  label="法人电话"
                >
                  <Input
                    placeholder="请输入法人电话"
                    ref="signTotalAmount"
                    value={this.state.legalPersonTel}
                    onChange={(e) => {
                      this.setState({ legalPersonTel: e.target.value });
                    }}
                    style={{ width: "240px" }}
                  />
                </FormItem>
              </div>
            ) : (
              <div className="clearfix">
                {formItemList.map((data, index) => {
                  return (
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      key={index}
                      label={data.label}
                    >
                      {data.content}
                    </FormItem>
                  );
                })}
              </div>
            )}
            <div className="clearfix">
              {this.props.deleteSign === 3 || this.state.processStatus == 0 ? (
                <div>
                  <FormItem
                    labelCol={{ span: 4 }}
                    wrapperCol={{ span: 18 }}
                    label={
                      <span>
                        <strong style={{ color: "#f00" }}>*</strong>合同扫描件
                      </span>
                    }
                  >
                    <PicturesWall
                      fileList={this.getOrgCodeUrl}
                      pictureUrl={this.state.orgCodeUrl}
                      url="/api/admin/order/uploadOrderImg"
                      sign=""
                    />
                    <p>图片建议:要清晰。</p>
                    <Button
                      style={{
                        float: "right",
                        marginRight: "140px",
                        marginTop: "20px",
                      }}
                      onClick={this.getOrderLog}
                    >
                      查看订单日志
                    </Button>
                  </FormItem>
                  <FormItem
                    labelCol={{ span: 4 }}
                    wrapperCol={{ span: 18 }}
                    label={
                      <span>
                        补充协议
                      </span>
                    }
                  >
                    <PicturesWall
                      fileList={this.getReplenishUrl}
                      pictureUrl={this.state.replenishUrl}
                      url="/api/admin/order/uploadOrderImg"
                      sign=""
                    />
                    <p>图片建议:要清晰。</p>
                  </FormItem>
                </div>
              ) : (
                <div>
                  <FormItem
                    labelCol={{ span: 4 }}
                    wrapperCol={{ span: 18 }}
                    label="合同扫描件"
                  >
                    <Upload
                      className="demandDetailShow-upload"
                      listType="picture-card"
                      fileList={this.state.orgCodeUrl}
                      onPreview={(file) => {
                        this.setState({
                          previewImage: file.url || file.thumbUrl,
                          previewVisible: true,
                        });
                      }}
                    ></Upload>
                    <Modal
                      maskClosable={false}
                      footer={null}
                      width={"50%"}
                      visible={this.state.previewVisible}
                      onCancel={() => {
                        this.setState({ previewVisible: false, rotateDeg: 0 });
                      }}
                    >
                      <img
                        alt=""
                        style={{
                          width: "100%",
                          transform: `rotate(${this.state.rotateDeg}deg)`,
                        }}
                        src={this.state.previewImage || ""}
                      />
                      <Button
                        onClick={this.rotate}
                        style={{
                          position: "relative",
                          left: "50%",
                          transform: "translateX(-50%)",
                        }}
                      >
                        旋转
                      </Button>
                      <Button
                        onClick={this.upImg}
                        style={{
                          position: "absolute",
                          left: -81,
                          top: "50%",
                          transform: "translateY(-50%)",
                        }}
                      >
                        上一张
                      </Button>
                      <Button
                        onClick={this.downImg}
                        style={{
                          position: "absolute",
                          right: -81,
                          top: "50%",
                          transform: "translateY(-50%)",
                        }}
                      >
                        下一张
                      </Button>
                    </Modal>
                    <Button
                      style={{
                        float: "right",
                        marginRight: "140px",
                        marginTop: "20px",
                      }}
                      onClick={this.getOrderLog}
                    >
                      查看订单日志
                    </Button>
                  </FormItem>
                  <FormItem
                    labelCol={{ span: 4 }}
                    wrapperCol={{ span: 18 }}
                    label="补充协议"
                  >
                    <Upload
                      className="demandDetailShow-upload"
                      listType="picture-card"
                      fileList={this.state.replenishUrl}
                      onPreview={(file) => {
                        this.setState({
                          previewImage: file.url || file.thumbUrl,
                          previewVisibles: true,
                        });
                      }}
                    ></Upload>
                    <Modal
                      maskClosable={false}
                      footer={null}
                      width={"50%"}
                      visible={this.state.previewVisibles}
                      onCancel={() => {
                        this.setState({ previewVisibles: false, rotateDeg: 0 });
                      }}
                    >
                      <img
                        alt=""
                        style={{
                          width: "100%",
                          transform: `rotate(${this.state.rotateDeg}deg)`,
                        }}
                        src={this.state.previewImage || ""}
                      />
                      <Button
                        onClick={this.rotates}
                        style={{
                          position: "relative",
                          left: "50%",
                          transform: "translateX(-50%)",
                        }}
                      >
                        旋转
                      </Button>
                      <Button
                        onClick={this.upImgs}
                        style={{
                          position: "absolute",
                          left: -81,
                          top: "50%",
                          transform: "translateY(-50%)",
                        }}
                      >
                        上一张
                      </Button>
                      <Button
                        onClick={this.downImgs}
                        style={{
                          position: "absolute",
                          right: -81,
                          top: "50%",
                          transform: "translateY(-50%)",
                        }}
                      >
                        下一张
                      </Button>
                    </Modal>
                  </FormItem>
                </div>
              )}
            </div>
            <div className="clearfix">
              {this.props.deleteSign === 3 || this.state.processStatus == 0 ? (
                <div className="clearfix">
                  <FormItem
                    labelCol={{ span: 4 }}
                    wrapperCol={{ span: 16 }}
                    label="订单留言"
                  >
                    <Input
                      type="textarea"
                      placeholder="请输入订单留言"
                      rows={4}
                      value={this.state.orderRemarks}
                      onChange={(e) => {
                        this.setState({ orderRemarks: e.target.value });
                      }}
                      style={{ width: "95%" }}
                    />
                    <span className="mandatory">*</span>
                  </FormItem>
                </div>
              ) : (
                <FormItem
                  labelCol={{ span: 4 }}
                  wrapperCol={{ span: 16 }}
                  label="订单留言"
                >
                  <p style={{ width: 500, wordWrap: "break-word" }}>
                    {this.state.orderRemarks}
                  </p>
                </FormItem>
              )}
            </div>
            <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>
            <div>
              <span style={{ marginLeft: "50px", fontSize: "20px" }}>
                项目业务
              </span>
              {this.props.deleteSign === 3 || 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.columns}
                  dataSource={this.state.dataSource}
                  pagination={this.state.pagination}
                  onRowClick={this.tableRowClick}
                />
              </Spin>
            </div>{" "}
            <div
              style={{
                display: cuiDataList.length ? "block" : "none",
              }}
            >
              <span style={{ marginLeft: "50px", fontSize: "20px" }}>
                旧催款节点
              </span>
              <Button
                type="primary"
                // onClick={this.addcontact}
                disabled
                onClick={(e) => {
                  cuiDataList.length ? this.addcontact() : this.addcontactNew();
                }}
                style={{
                  float: "right",
                  marginRight: "50px",
                  marginBottom: "15px",
                  display: this.state.processStatus == 0 ? "block" : "none",
                }}
              >
                添加催款节点
              </Button>
            </div>
            <div
              className="clearfix"
              style={{
                display: cuiDataList.length ? "block" : "none",
              }}
            >
              <Spin spinning={this.state.loading}>
                <Form layout="horizontal">
                  <Table
                    pagination={false}
                    columns={this.state.ContactsLists}
                    dataSource={this.state.contactList}
                    scroll={{ x: "max-content", y: 0 }}
                    bordered
                    size="small"
                  />
                  <Col span={24} offset={9} style={{ marginTop: "15px" }}></Col>
                </Form>
              </Spin>
            </div>
            <div
              style={{
                display: cuiDataList.length ? "none" : "block",
              }}
            >
              <span
                style={{
                  marginLeft: "50px",
                  fontSize: "20px",
                }}
              >
                新催款节点
              </span>
              <span
                style={{
                  display: "inline-block",
                  marginLeft: 10,
                  color: "red",
                }}
              >
                金额总计(万元): {this.state.totalCui}
              </span>
              <Button
                type="primary"
                disabled={this.state.addFlag ? true : false}
                // onClick={this.addcontact}
                onClick={(e) => {
                  this.setState({ addFlag: true });
                  this.addcontactNew();
                }}
                style={{
                  float: "right",
                  marginRight: "50px",
                  marginBottom: "15px",
                  display: this.state.processStatus == 0 ? "block" : "none",
                }}
              >
                添加催款节点
              </Button>
            </div>
            <div
              className="clearfix"
              style={{
                display: cuiDataList.length ? "none" : "block",
              }}
            >
              <Spin spinning={this.state.loading}>
                <Form layout="horizontal">
                  <Table
                    pagination={false}
                    columns={this.state.ContactsListsNew}
                    dataSource={this.state.contactListNew}
                    scroll={{ x: "max-content", y: 0 }}
                    bordered
                    size="small"
                  />
                  <Col span={24} offset={9} style={{ marginTop: "15px" }}></Col>
                </Form>
              </Spin>
            </div>
            {this.props.deleteSign === 3 || this.state.processStatus == 0 ? (
              <div
                className="addSave"
                style={{
                  marginTop: "15px",
                  display: "flex",
                  justifyContent: "flex-end",
                }}
              >
                {!this.state.buttonStatus ? (
                  <Button
                    className="cancel"
                    type="primary"
                    onClick={this.handleCancels}
                    style={{ marginRight: 20 }}
                    htmlType="submit"
                  >
                    签单
                  </Button>
                ) : (
                  ""
                )}
                <Button
                  className="cancel"
                  type="primary"
                  onClick={this.handleCancelq}
                  style={{ marginRight: 40 }}
                  htmlType="submit"
                >
                  保存
                </Button>
              </div>
            ) : (
              ""
            )}
          </Spin>
          <Modal
            maskClosable={false}
            visible={this.state.addnextVisible}
            onOk={this.nextCancel}
            onCancel={this.nextCancel}
            width="800px"
            title={this.state.addState ? "添加项目任务" : "项目任务详情"}
            footer=""
            className="admin-desc-content"
          >
            <Form
              layout="horizontal"
              onSubmit={this.nextSubmit}
              id="demand-form"
            >
              <Spin spinning={this.state.loading}>
                {this.state.addState ? (
                  <div className="clearfix">
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="服务名称"
                    >
                      <AutoComplete
                        className="certain-category-search"
                        dropdownClassName="certain-category-search-dropdown"
                        dropdownMatchSelectWidth={false}
                        dropdownStyle={{ width: 200 }}
                        style={{ width: "200px" }}
                        dataSource={options}
                        placeholder="输入服务名称"
                        value={this.state.commodityName}
                        onChange={this.httpChange}
                        filterOption={true}
                        onSelect={this.selectAuto}
                      >
                        <Input />
                      </AutoComplete>
                      <span className="mandatory">*</span>
                    </FormItem>

                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="服务数量"
                    >
                      <Input
                        placeholder="请输入服务数量"
                        value={this.state.commodityQuantity}
                        style={{ width: "200px" }}
                        onChange={(e) => {
                          this.setState({ commodityQuantity: e.target.value });
                        }}
                        ref="commodityQuantity"
                      />
                      <span className="mandatory">*</span>
                    </FormItem>
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="实签价格(万元)"
                    >
                      <Input
                        placeholder="请输入实签价格"
                        value={this.state.commodityPrice}
                        style={{ width: "200px" }}
                        onChange={(e) => {
                          this.setState({ commodityPrice: e.target.value });
                        }}
                        ref="commodityPrice"
                      />
                      <span className="mandatory">*</span>
                    </FormItem>
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="主要业务"
                    >
                      <Select
                        placeholder="选择是否为主要业务"
                        style={{ width: "200px" }}
                        value={this.state.main}
                        onChange={(e) => {
                          this.setState({ main: e });
                        }}
                      >
                        {boutique.map(function (item) {
                          return (
                            <Select.Option key={item.value}>
                              {item.key}
                            </Select.Option>
                          );
                        })}
                      </Select>
                      <span className="mandatory">*</span>
                    </FormItem>
                    <div className="clearfix">
                      <FormItem
                        labelCol={{ span: 4 }}
                        wrapperCol={{ span: 16 }}
                        label="服务说明"
                      >
                        <Input
                          type="textarea"
                          placeholder="请输入服务说明"
                          value={this.state.taskComment}
                          onChange={(e) => {
                            this.setState({ taskComment: e.target.value });
                          }}
                        />
                      </FormItem>
                    </div>
                    <FormItem
                      wrapperCol={{ span: 12, offset: 4 }}
                      className="half-middle"
                    >
                      <Button
                        className="submitSave"
                        type="primary"
                        htmlType="submit"
                      >
                        保存
                      </Button>
                      <Button
                        className="submitSave"
                        type="ghost"
                        onClick={this.nextCancel}
                      >
                        取消
                      </Button>
                    </FormItem>
                  </div>
                ) : (
                  <div className="clearfix">
                    {this.props.deleteSign === 3 ||
                    this.state.processStatus == 0 ? (
                      <div className="clearfix">
                        <FormItem
                          className="half-item"
                          {...formItemLayout}
                          label="项目名称"
                        >
                          <span>{this.state.commodityName}</span>
                        </FormItem>
                        <FormItem
                          className="half-item"
                          {...formItemLayout}
                          label="项目数量"
                        >
                          <Input
                            placeholder="请输入数量"
                            value={this.state.commodityQuantity}
                            style={{ width: "200px" }}
                            onChange={(e) => {
                              this.setState({
                                commodityQuantity: e.target.value,
                              });
                            }}
                          />
                          <span className="mandatory">*</span>
                        </FormItem>
                        <FormItem
                          className="half-item"
                          {...formItemLayout}
                          label="金额(万元)"
                        >
                          <Input
                            placeholder="请输入签单金额"
                            value={this.state.commodityPrice}
                            style={{ width: "200px" }}
                            onChange={(e) => {
                              this.setState({ commodityPrice: e.target.value });
                            }}
                          />
                          <span className="mandatory">*</span>
                        </FormItem>
                        <FormItem
                          className="half-item"
                          {...formItemLayout}
                          label="主要项目"
                        >
                          <Select
                            placeholder="选择是否为主要业务"
                            style={{ width: "200px" }}
                            value={this.state.main}
                            onChange={(e) => {
                              this.setState({ main: e });
                            }}
                          >
                            {boutique.map(function (item) {
                              return (
                                <Select.Option key={item.value}>
                                  {item.key}
                                </Select.Option>
                              );
                            })}
                          </Select>
                          <span className="mandatory">*</span>
                        </FormItem>
                        <div className="clearfix">
                          <FormItem
                            labelCol={{ span: 4 }}
                            wrapperCol={{ span: 16 }}
                            label="服务说明"
                          >
                            <Input
                              type="textarea"
                              placeholder="请输入服务说明"
                              value={this.state.taskComment}
                              onChange={(e) => {
                                this.setState({ taskComment: e.target.value });
                              }}
                            />
                          </FormItem>
                        </div>
                        <FormItem
                          wrapperCol={{ span: 12, offset: 4 }}
                          className="half-middle"
                        >
                          <Button
                            className="submitSave"
                            type="primary"
                            onClick={this.tabRowSave}
                          >
                            保存
                          </Button>
                          <Button
                            className="submitSave"
                            type="ghost"
                            onClick={this.nextCancel}
                          >
                            取消
                          </Button>
                        </FormItem>
                      </div>
                    ) : (
                      <div className="clearfix">
                        <FormItem
                          className="half-item"
                          {...formItemLayout}
                          label="项目名称"
                        >
                          <span>{this.state.commodityName}</span>
                        </FormItem>
                        <FormItem
                          className="half-item"
                          {...formItemLayout}
                          label="项目数量"
                        >
                          <span>{this.state.commodityQuantity}</span>
                        </FormItem>
                        <FormItem
                          className="half-item"
                          {...formItemLayout}
                          label="金额(万元)"
                        >
                          <span>{this.state.commodityPrice}</span>
                        </FormItem>
                        <FormItem
                          className="half-item"
                          {...formItemLayout}
                          label="主要项目"
                        >
                          <span>{getboutique(this.state.main)}</span>
                        </FormItem>
                        <div className="clearfix">
                          <FormItem
                            labelCol={{ span: 4 }}
                            wrapperCol={{ span: 16 }}
                            label="服务说明"
                          >
                            <span>{this.state.taskComment}</span>
                          </FormItem>
                        </div>
                      </div>
                    )}
                  </div>
                )}
              </Spin>
            </Form>
          </Modal>
          <Modal
            maskClosable={false}
            visible={this.state.lookVisible}
            onOk={this.noCancel}
            onCancel={this.noCancel}
            width="800px"
            title={"退单申请"}
            footer=""
            className="admin-desc-content"
          >
            <Form layout="horizontal" id="demand-form">
              <Spin spinning={this.state.loading}>
                <div className="clearfix">
                  <FormItem
                    labelCol={{ span: 4 }}
                    wrapperCol={{ span: 16 }}
                    label="终止合同"
                  >
                    <Picture
                      fileList={(e) => {
                        this.setState({ contractUrl: e });
                      }}
                      pictureUrl={this.state.contractUrl}
                      visible={this.props.visible}
                      data={{
                        sign: "order_refund_file",
                        url: "/api/admin/newOrder/uploadRefundOrderFile",
                        number: 8,
                      }}
                    />
                  </FormItem>
                </div>
                <div className="clearfix">
                  <FormItem
                    labelCol={{ span: 4 }}
                    wrapperCol={{ span: 16 }}
                    label="退单申请表"
                  >
                    <Picture
                      fileList={(e) => {
                        this.setState({ applicationUrl: e });
                      }}
                      pictureUrl={this.state.applicationUrl}
                      visible={this.props.visible}
                      data={{
                        sign: "order_refund_file",
                        url: "/api/admin/newOrder/uploadRefundOrderFile",
                        number: 8,
                      }}
                    />
                  </FormItem>
                </div>
                <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.tuidanOk}
                    style={{ marginLeft: "50px" }}
                    htmlType="submit"
                  >
                    确定退单
                  </Button>
                  <Button
                    className="cancel"
                    type="ghost"
                    onClick={this.noCancel}
                    style={{ marginLeft: "50px" }}
                  >
                    取消
                  </Button>
                </div>
              </Spin>
            </Form>
          </Modal>
          <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>
        </div>
      );
    },
  })
);

export default Addorders;