import React from 'react';
import $ from 'jquery/src/ajax';
import moment from 'moment';
import './public.less';
import {Button, InputNumber, Select, Input, Spin, Table, message, DatePicker, Tabs, Tooltip} from 'antd';
import Receivable from './receivable';
import Examine from './examine';
import OrderDesc from '../orderDetail/orderDesc';
import { getLiquidationStatus, getNewOrderStatus, getRefundStatus } from '@/tools';
import { ChooseList } from "../../order/orderNew/chooseList";
const { TabPane } = Tabs
const TuiDan = React.createClass({
  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);
          }
        } else {
          thedata.map(function (item, index) {
            theArr.push({
              key: index,
              name: item.name,
              id: item.id
            });
          });
        }
        this.setState({
          departmentArr: theArr
        });
      }.bind(this)
    }).always(
      function () {
        this.setState({
          loading: false
        });
      }.bind(this)
    );
  },
  loadData(pageNo) {
    this.state.data = [];
    this.setState({
      selectedRowKeys: [],
      selectedRowKey: [],
      page: pageNo,
      loading: true
    });
    $.ajax({
      method: "get",
      dataType: "json",
      crossDomain: false,
      url: globalConfig.context + "/api/admin/financial/getRefundList",
      data: {
        pageNo: pageNo || 1,
        pageSize: this.state.pagination.pageSize,
        id: this.state.orderRefundSearch,
        buyName: this.state.nameSearch, //客户名称
        orderNo: this.state.orderNoSearch,
        refundStatus: this.state.refundStatus,
        startTime: this.state.releaseDate[0],
        endTime: this.state.releaseDate[1],
        departmentId: this.state.departmenttList
      },
      success: function (data) {
        let theArr = [];
        if (!data.data || !data.data.list) {
          if (data.error && data.error.length) {
            message.warning(data.error[0].message);
          }
        } else {
          for (let i = 0; i < data.data.list.length; i++) {
            let thisdata = data.data.list[i];
            theArr.push({
              key: i,
              id: thisdata.id,
              orderNo: thisdata.orderNo,
              orderType: thisdata.orderType,
              buyName: thisdata.buyName,
              companyName: thisdata.buyName,
              buyerName: thisdata.saleName,
              contractNo: thisdata.contractNo,
              buyerId: "0",
              refundAmount: thisdata.refundAmount,
              companyId: thisdata.buyid,
              orderStatus: thisdata.orderStatus,
              liquidationStatus: thisdata.liquidationStatus,
              refundStatus: thisdata.refundStatus,
              saleName: thisdata.saleName,
              createTime: thisdata.createTime
                ? new Date(thisdata.createTime).toLocaleString()
                : ""
            });
          }
        }
        this.state.pagination.current = data.data.pageNo;
        this.state.pagination.total = data.data.totalCount;
        if (data.data && data.data.list && !data.data.list.length) {
          this.state.pagination.current = 0;
          this.state.pagination.total = 0;
        }
        this.setState({
          totalPage: data.data.totalPage,
          dataSource: theArr,
          pagination: this.state.pagination
        });
      }.bind(this)
    }).always(
      function () {
        this.setState({
          loading: false
        });
      }.bind(this)
    );
  },
  getInitialState() {
    return {
      searchMore: true,
      assignVisible: false,
      releaseDate: [],
      totalPage: 0,
      assignData: [],
      // 子组件改变的表格title数组
      changeList: undefined,
      boHuivisible: false,
      selectedRowKeys: [],
      selectedRows: [],
      loading: false,
      pagination: {
        defaultCurrent: 1,
        defaultPageSize: 10,
        showQuickJumper: true,
        pageSize: 10,
        onChange: function (page) {
          this.loadData(page);
        }.bind(this),
        showTotal: function (total) {
          return "共" + total + "条数据";
        }
      },
      columns: [
        {
          title: "退单编号",
          dataIndex: "id",
          key: "id"
          //   fixed: "left"
        },
        {
          title: "申请退单时间",
          dataIndex: "createTime",
          key: "createTime"
        },
        {
          title: "订单编号",
          dataIndex: "orderNo",
          key: "orderNo"
        },
        {
          title: "客户名称",
          dataIndex: "buyName",
          key: "buyName",
          width: 150,
          render: (text) => {
            return (