import React from 'react';
import ReactDom from 'react-dom';
import ajax from 'jquery/src/ajax/xhr.js';
import $ from 'jquery/src/ajax';
import '../content.less';
import { citySelect } from '../../../NewDicProvinceList';
import {
  getNewDiccityArr,
} from "@/tools.js";
import { Form, Radio, Icon, Button, Input, Select, Spin, Table, Switch, message, DatePicker, Modal, Upload, Popconfirm, AutoComplete, Tabs, Tag } from 'antd';
import { patternOrganization, conditionOrganization } from '../../../dataDic.js';
import { getPattern, getCondition } from '../../../tools.js';
import { ChooseList } from "../../order/orderNew/chooseList";
import StaffSearch from '../../../../component/common/staffSearch';

const confirm = Modal.confirm;

const { TabPane } = Tabs
const Organization = Form.create()(React.createClass({
  loadData(pageNo) {
    this.state.data = [];
    this.setState({
      loading: true,
    });
    $.ajax({
      method: "post",
      dataType: "json",
      crossDomain: false,
      url: globalConfig.context + '/api/admin/organization/listOrganizationManagement',
      data: {
        pageNo: pageNo || 1,
        pageSize: this.state.pagination.pageSize,
        name: this.state.name, //组织名称
        superId: this.state.superId,//上级组织
        type: this.state.type,//组织类型
        depNo: this.state.depNo1,//组织编号
      },
      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,//每一条记录的ID
              depNo: thisdata.depNo,//组织编号
              name: thisdata.name,//组织名称
              type: thisdata.type,//组织类型
              managerId: thisdata.managerName,//负责人
              superId: thisdata.superName,//上级组织
              status: thisdata.status,//组织状态
              workingHoursName: thisdata.workingHoursName,
              hideSign: thisdata.hideSign,//显示标识
              approval: thisdata.approval,
            });
          };
          this.state.pagination.current = data.data.pageNo;
          this.state.pagination.total = data.data.totalCount;
          this.setState({
            dataSource: theArr,
            page: data.data.pageNo,
            pagination: this.state.pagination
          });
        };
      }.bind(this),
    }).always(function () {
      this.setState({
        loading: false
      });
    }.bind(this));

  },
  getInitialState() {
    return {
      approval: 1,
      editvisible: false,
      workingHoursType: 0,
      searchMore: true,
      selectedRowKeys: [],
      selectedRows: [],
      loading: false,
      workTimeList: [],
      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: 'depNo',
          key: 'depNo',
        }, {
          title: '组织名称',
          dataIndex: 'name',
          key: 'name',
        }, {
          title: '负责人',
          dataIndex: 'managerId',
          key: 'managerId',
        }, {
          title: '组织类型',
          dataIndex: 'type',
          key: 'type',
          render: text => { return getPattern(text) }
        }, {
          title: '上级组织',
          dataIndex: 'superId',
          key: 'superId',
        }, {
          title: '组织状态',
          dataIndex: 'status',
          key: 'status',
          render: text => { return getCondition(text) }
        }, {
          title: '作息时间类型',
          dataIndex: 'workingHoursName',
          key: 'workingHoursName',
        }, {
          title: '显示标识',
          dataIndex: 'hideSign',
          key: 'hideSign',
          render: text => { return ["不显示", "显示"][text] }
        },
      ],
      dataSource: [],
      searchTime: [,],
    };
  },
  componentWillMount() {
    this.selectSuperId();
    this.getWorkTimeList();
  },
  //获取上级组织
  selectSuperId() {
    this.state.data = []
    $.ajax({
      method: "get",
      dataType: "json",
      crossDomain: false,
      url: globalConfig.context + "/api/admin/organization/selectSuperId",
      data: {
        hideSign: 2,//查询所有（0不显示 1显示 2所有）
      },
      success: function (data) {
        let theArr = [];
        let theId = [];//用于保存上级组织的ID和名称
        let thedata = data.data;
        if (!thedata) {
          if (data.error && data.error.length) {
            message.warning(data.error[0].message);
          };
          thedata = {};
        };
        var contactIds = [];
        for (var i = 0; i < data.data.length; i++) {
          let theData = data.data[i];
          theArr.push(
            <Select.Option value={theData.id} key={theData.id}>{theData.name}</Select.Option>
          );
          theId.push(
            [theData.id, theData.name]
          );
        };
        this.setState({
          SuperArr: thedata,
          contactsOption: theArr,
          theId: theId,
          orderStatusOptions: data.data,
        });

      }.bind(this),
    }).always(function () {
      this.loadData(this.state.page);
      this.setState({
        loading: false
      });
    }.bind(this));
  },
  //获取作息时间
  getWorkTimeList() {
    $.ajax({
      method: "get",
      dataType: "json",
      crossDomain: false,
      url: globalConfig.context + "/api/admin/department/workingHours/list",
      data: {},
      success: function (data) {
        if (data.error.length === 0) {
          this.setState({
            workTimeList: data.data,
          });
        } else {
          message.warning(data.error[0].message);
        }
      }.bind(this),
    }).always(function () {
      this.setState({
        loading: false
      });
    }.bind(this));
  },
  //编辑部门，保存
  edithandleSubmit(e) {
    e.preventDefault();
    if (!this.state.depNo) {
      message.warning('请填写组织编号');
      return
    }
    //上级组织字典
    let nameText = this.state.SuperArr
    let superText = this.state.editSuperId;
    let upId = this.state.theId;
    let oldId = '';
    let superOne = this.state.editDataSource[0].editSuperId;
    if (superOne == superText) {
      for (let j = 0; j < upId.length; j++) {
        if (superText == upId[j][1]) {
          oldId = upId[j][0]
        }
      }
    };
    let remarksText = (this.state.editRemarks) ? this.state.editRemarks : '该组织没有职能说明，请完善！';
    let isStatus = this.state.editStatus;
    let _this = this;
    if (isStatus == 1) {
      confirm({
        title: '是否要解散该部门？',
        onOk() {
          if (!(superOne == superText)) {
            confirm({
              title: '上级组织已修改，是否保存？',
              onOk() {
                $.ajax({
                  method: "post",
                  dataType: "json",
                  crossDomain: false,
                  url:
                    globalConfig.context +
                    "/api/admin/organization/updateOrganization",
                  data: {
                    name: _this.state.editName, //组织名称
                    type: _this.state.editType, //组织类型
                    managerId: _this.state.theTypes
                      ? _this.state.theTypes
                      : _this.state.managerIdOrganizationId, //负责人ID
                    financeId: _this.state.theTypes2
                      ? _this.state.theTypes2
                      : _this.state.financeId, //负责人ID
                    approvalAid: _this.state.theTypes1
                      ? _this.state.theTypes1
                      : _this.state.approvalAid, //审核人ID
                    retrialFinanceId: _this.state.theTypes3
                      ? _this.state.theTypes3
                      : _this.state.reviewerId, // 复审人
                    expenseFinanceId: _this.state.theTypes4
                      ? _this.state.theTypes4
                      : _this.state.accountrId, // 报销审核人
                    superId: _this.state.editSuperId, //上级组织
                    status: _this.state.editStatus, //组织状态
                    remarks: remarksText, //组织职能说明
                    id: _this.state.editId, //组织ID
                    updateOrganization: _this.state.updateOrganization,
                    abbreviation: _this.state.abbreviation,
                    workingHoursType: _this.state.workingHoursType,
                    hideSign: _this.state.hideSign,//显示标识
                    depNo: _this.state.depNo,//组织编号
                    approval: _this.state.approval, //是否需要特批审核
                    expenseRetrialFinanceExamine: _this.state.expenseRetrialFinanceExamine, // 财务复审
                    ceoExamine: _this.state.ceoExamine, // 董事长审核
                    cfoExamine: _this.state.cfoExamine, // 财务总监审核
                    viceCeoExamine: _this.state.viceCeoExamine, // 集团副总审核
                    cashierExamine: _this.state.cashierExamine, // 出纳审核
                    techAdminId: _this.state.techAdminId, // 技术总监
                  }
                }).done(
                  function (data) {
                    _this.setState({
                      loading: false
                    });
                    if (!data.error.length) {
                      message.success("保存成功！");
                      _this.edithandleCancel();
                      _this.selectSuperId();
                    } else {
                      message.warning(data.error[0].message);
                    }
                  }.bind(_this)
                );
                return false
              }
            })
          } else {
            $.ajax({
              method: "post",
              dataType: "json",
              crossDomain: false,
              url:
                globalConfig.context +
                "/api/admin/organization/updateOrganization",
              data: {
                name: _this.state.editName, //组织名称
                type: _this.state.editType, //组织类型
                managerId: _this.state.theTypes
                  ? _this.state.theTypes
                  : _this.state.managerIdOrganizationId, //负责人ID
                financeId: _this.state.theTypes2
                  ? _this.state.theTypes2
                  : _this.state.financeId, //负责人ID
                approvalAid: _this.state.theTypes1
                  ? _this.state.theTypes1
                  : _this.state.approvalAid, //审核人ID
                retrialFinanceId: _this.state.theTypes3
                  ? _this.state.theTypes3
                  : _this.state.reviewerId, // 复审人
                expenseFinanceId: _this.state.theTypes4
                  ? _this.state.theTypes4
                  : _this.state.accountrId, // 报销审核人
                superId: oldId, //上级组织
                status: _this.state.editStatus, //组织状态
                remarks: remarksText, //组织职能说明
                id: _this.state.editId, //组织ID
                abbreviation: _this.state.abbreviation,
                workingHoursType: _this.state.workingHoursType,
                hideSign: _this.state.hideSign,//显示标识
                depNo: _this.state.depNo,//组织编号
                approval: _this.state.approval, //是否需要特批审核
                expenseRetrialFinanceExamine: _this.state.expenseRetrialFinanceExamine, // 财务复审
                ceoExamine: _this.state.ceoExamine, // 董事长审核
                cfoExamine: _this.state.cfoExamine, // 财务总监审核
                viceCeoExamine: _this.state.viceCeoExamine, // 集团副总审核
                cashierExamine: _this.state.cashierExamine, // 出纳审核
                techAdminId: _this.state.techAdminId, // 技术总监
              }
            }).done(
              function (data) {
                _this.setState({
                  loading: false
                });
                if (!data.error.length) {
                  message.success("保存成功！");
                  _this.edithandleCancel();
                  _this.selectSuperId();
                } else {
                  message.warning(data.error[0].message);
                }
              }.bind(_this)
            );
          }
        }
      })
    } else {
      if (!(superOne == superText)) {
        confirm({
          title: '上级组织已修改，是否保存？',
          onOk() {
            $.ajax({
              method: "post",
              dataType: "json",
              crossDomain: false,
              url:
                globalConfig.context +
                "/api/admin/organization/updateOrganization",
              data: {
                name: _this.state.editName, //组织名称
                type: _this.state.editType, //组织类型
                managerId: _this.state.theTypes
                  ? _this.state.theTypes
                  : _this.state.managerIdOrganizationId, //负责人ID
                financeId: _this.state.theTypes2
                  ? _this.state.theTypes2
                  : _this.state.financeId, //负责人ID
                approvalAid: _this.state.theTypes1
                  ? _this.state.theTypes1
                  : _this.state.approvalAid, //审核人ID
                retrialFinanceId: _this.state.theTypes3
                  ? _this.state.theTypes3
                  : _this.state.reviewerId, // 复审人
                expenseFinanceId: _this.state.theTypes4
                  ? _this.state.theTypes4
                  : _this.state.accountrId, // 报销审核人
                superId: _this.state.editSuperId, //上级组织
                status: _this.state.editStatus, //组织状态
                province: _this.state.province,//省份
                remarks: remarksText, //组织职能说明
                id: _this.state.editId, //组织ID
                abbreviation: _this.state.abbreviation,
                workingHoursType: _this.state.workingHoursType,
                hideSign: _this.state.hideSign,//显示标识
                depNo: _this.state.depNo,//组织编号
                approval: _this.state.approval, //是否需要特批审核
                expenseRetrialFinanceExamine: _this.state.expenseRetrialFinanceExamine, // 财务复审
                ceoExamine: _this.state.ceoExamine, // 董事长审核
                cfoExamine: _this.state.cfoExamine, // 财务总监审核
                viceCeoExamine: _this.state.viceCeoExamine, // 集团副总审核
                cashierExamine: _this.state.cashierExamine, // 出纳审核
                techAdminId: _this.state.techAdminId, // 技术总监
              }
            }).done(
              function (data) {
                _this.setState({
                  loading: false
                });
                if (!data.error.length) {
                  message.success("保存成功！");
                  _this.edithandleCancel();
                  _this.selectSuperId();
                } else {
                  message.warning(data.error[0].message);
                }
              }.bind(_this)
            );
            return false
          }
        })
      } else {
        $.ajax({
          method: "post",
          dataType: "json",
          crossDomain: false,
          url:
            globalConfig.context +
            "/api/admin/organization/updateOrganization",
          data: {
            name: _this.state.editName, //组织名称
            type: _this.state.editType, //组织类型
            managerId: _this.state.theTypes
              ? _this.state.theTypes
              : _this.state.managerIdOrganizationId, //负责人ID
            financeId: _this.state.theTypes2
              ? _this.state.theTypes2
              : _this.state.financeId, //负责人ID
            approvalAid: _this.state.theTypes1
              ? _this.state.theTypes1
              : _this.state.approvalAid, //审核人ID
            retrialFinanceId: _this.state.theTypes3
              ? _this.state.theTypes3
              : _this.state.reviewerId, // 复审人
            expenseFinanceId: _this.state.theTypes4
              ? _this.state.theTypes4
              : _this.state.accountrId, // 报销审核人
            superId: oldId, //上级组织
            status: _this.state.editStatus, //组织状态
            remarks: remarksText, //组织职能说明
            id: _this.state.editId, //组织ID
            abbreviation: _this.state.abbreviation,
            province: _this.state.province,
            workingHoursType: _this.state.workingHoursType,
            hideSign: _this.state.hideSign,//显示标识
            depNo: _this.state.depNo,//组织编号
            approval: _this.state.approval, // 是否需要特批
            expenseRetrialFinanceExamine: _this.state.expenseRetrialFinanceExamine, // 财务复审
            ceoExamine: _this.state.ceoExamine, // 董事长审核
            cfoExamine: _this.state.cfoExamine, // 财务总监审核
            viceCeoExamine: _this.state.viceCeoExamine, // 集团副总审核
            cashierExamine: _this.state.cashierExamine, // 出纳审核
            techAdminId: _this.state.techAdminId, // 技术总监
          }
        }).done(
          function (data) {
            _this.setState({
              loading: false
            });
            if (!data.error.length) {
              message.success("保存成功！");
              _this.edithandleCancel();
              _this.selectSuperId();
            } else {
              message.warning(data.error[0].message);
            }
          }.bind(_this)
        );
      }
    }
  },
  //整行点击
  tableRowClick(record, index) {
    this.selectSuperId();
    this.state.RowData = record;
    this.setState({
      editvisible: true,
      selectedRowKeys: [],
      rowId: record.businessId,
    })
    $.ajax({
      method: "post",
      dataType: "json",
      crossDomain: false,
      url: globalConfig.context + "/api/admin/organization/selectAllById",
      data: {
        id: record.id
      },
      success: function (data) {
        let theArr = [];
        let thisdata = data.data;
        if (data.error.length === 0) {
          theArr.push({
            editId: thisdata.id, //每一条记录的ID
            editName: thisdata.name, //组织名称
            editManagerId: thisdata.managerId, //负责人
            editType: thisdata.type, //组织类型
            editStatus: thisdata.status, //组织状态
            province: thisdata.province,//省份
            editSuperId: thisdata.superId, //上级组织
            depNo: thisdata.depNo, //组织编号
            editCreateId: thisdata.createId, //创建人
            editTime: thisdata.createTime, //创建时间
            editRemarks: thisdata.remarks, //组织职能说明
            workingHoursType: thisdata.workingHoursType,//作息时间类型
            financeId: thisdata.financeId, // 财务负责人
            approvalAid: thisdata.approvalAid, // 审核人
            reviewerId: thisdata.retrialFinanceId, // 财务复审
            reviewerName: thisdata.retrialFinanceName,
            accountrId: thisdata.expenseFinanceId, // 报销审核
            accountrName: thisdata.expenseFinanceName,
            hideSign: thisdata.hideSign,//显示标识
            approval: thisdata.approval, // 特批审核
            expenseRetrialFinanceExamine: thisdata.expenseRetrialFinanceExamine, //财务复审
            expenseRetrialFinanceExamineList: thisdata.expenseRetrialFinanceExamineList,
            ceoExamine: thisdata.ceoExamine, //董事长审核
            ceoExamineList: thisdata.ceoExamineList,
            cfoExamine: thisdata.cfoExamine, //财务总监审核
            cfoExamineList: thisdata.cfoExamineList,
            viceCeoExamine: thisdata.viceCeoExamine, //集团副总审核
            viceCeoExamineList: thisdata.viceCeoExamineList,
            cashierExamine: thisdata.cashierExamine, //出纳审核
            cashierExamineList: thisdata.cashierExamineList,
            techAdminId: thisdata.techAdminId, // 技术总监
            techAdminName: thisdata.techAdminName,
          });
          this.setState({
            editId: thisdata.id, //每一条记录的ID
            financeId: thisdata.financeId,
            financeName: thisdata.financeName,
            approvalAid: thisdata.approvalAid, // 审核人
            approvalName: thisdata.approvalName, // 审核人
            editName: thisdata.name, //组织名称
            managerIdOrganization: thisdata.managerName, //负责人名字
            managerIdOrganizationId: thisdata.managerId, //负责人idmanagerName
            reviewerId: thisdata.retrialFinanceId, // 财务复审
            reviewerName: thisdata.retrialFinanceName,
            accountrId: thisdata.expenseFinanceId, // 报销审核
            accountrName: thisdata.expenseFinanceName,
            editType: thisdata.type, //组织类型
            editStatus: thisdata.status, //组织状态
            province: thisdata.province, //省份
            editSuperId: thisdata.superId, //上级组织
            depNo: thisdata.depNo, //组织编号
            editCreateId: thisdata.createId, //创建人
            editTime: thisdata.createTime, //创建时间
            editRemarks: thisdata.remarks, //组织职能说明
            workingHoursType: thisdata.workingHoursType,//作息时间类型
            editDataSource: theArr,
            abbreviation: thisdata.abbreviation,
            hideSign: thisdata.hideSign,//显示标识
            approval: thisdata.approval, // 特批审核
            expenseRetrialFinanceExamine: thisdata.expenseRetrialFinanceExamine, //财务复审
            expenseRetrialFinanceExamineList: thisdata.expenseRetrialFinanceExamineList,
            ceoExamine: thisdata.ceoExamine, //董事长审核
            ceoExamineList: thisdata.ceoExamineList,
            cfoExamine: thisdata.cfoExamine, //财务总监审核
            cfoExamineList: thisdata.cfoExamineList,
            viceCeoExamine: thisdata.viceCeoExamine, //集团副总审核
            viceCeoExamineList: thisdata.viceCeoExamineList,
            cashierExamine: thisdata.cashierExamine, //出纳审核
            cashierExamineList: thisdata.cashierExamineList,
            techAdminId: thisdata.techAdminId, // 技术总监
            techAdminName: thisdata.techAdminName,
          });
        } else {
          message.warning(data.error[0].message);
        }
      }.bind(this),
    }).always(function (data) {
      this.setState({
        loading: false
      });
    }.bind(this));
  },
  //整行删除
  delectRow() {
    let deletedIds = '';
    for (let idx = 0; idx < this.state.selectedRows.length; idx++) {
      let rowItem = this.state.selectedRows[idx];
      if (rowItem.id) {
        deletedIds = rowItem.id;
      };
    };
    this.setState({
      selectedRowKeys: [],
      loading: deletedIds.length > 0
    });
    $.ajax({
      method: "POST",
      dataType: "json",
      crossDomain: false,
      url: globalConfig.context + "/api/admin/organization/deleteById",
      data: {
        id: deletedIds
      }
    }).done(function (data) {
      if (!data.error.length) {
        message.success('删除成功！');
        this.setState({
          loading: false,
        });
      } else {
        message.warning(data.error[0].message);
      };
      this.selectSuperId();
    }.bind(this));
  },
  //新增一个部门，保存
  addhandleSubmit(e) {
    e.preventDefault();
    //  	if(!this.state.theTypes){
    //  		message.warning('请输入负责人姓名');
    //  		return false;
    //  	}
    if (!this.state.typeOrganization) {
      message.warning('请选择组织类型');
      return false;
    }
    if (!this.state.upOrganization) {
      message.warning('请选择上级组织');
      return false;
    }
    if (!this.state.depNo) {
      message.warning('请填写组织编号');
      return false;
    }
    this.props.form.validateFields((err, values) => {
      if (!err) {
        this.setState({
          loading: true
        });
        $.ajax({
          method: "post",
          dataType: "json",
          crossDomain: false,
          url: globalConfig.context + '/api/admin/organization/addOrganization',
          data: {
            name: this.state.nameOrganization,//组织名称
            managerId: this.state.theTypes,//负责人ID
            type: this.state.typeOrganization, //组织类型
            superId: this.state.upOrganization,//上级组织
            remarks: this.state.remarksOrganization,//组织职能说明
            workingHoursType: this.state.workingHoursType,//作息时间
            hideSign: this.state.hideSign,//显示标识
            depNo: this.state.depNo,//组织编号
          }
        }).done(function (data) {
          this.setState({
            loading: false
          });
          if (!data.error.length) {
            message.success('保存成功！');
            this.handleCancel();
            this.selectSuperId();
          } else {
            message.warning(data.error[0].message);
          }
        }.bind(this));
      }
    });
  },
  //主管初始加载(自动补全)
  supervisor(e) {
    $.ajax({
      method: "post",
      dataType: "json",
      crossDomain: false,
      url: globalConfig.context + "/api/admin/organization/selectName",
      data: {
        name: 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({
          customerArr: thedata,
        });
      }.bind(this),
    }).always(function () {
      this.setState({
        loading: false
      });
    }.bind(this));
  },
  selectAutosel(value) {
    this.setState({
      adminName: value
    })
    let theType = '';
    let contactLists = this.state.customerArr || [];
    if (value) {
      contactLists.map(function (item) {
        if (item.name == value.toString()) {
          theType = item.id;
        }
      });
    }
    this.setState({
      aid: theType
    })
  },
  //上级主管输入框失去焦点是判断客户是否存在
  selectAuto(value, options) {
    this.setState({
      managerIdOrganization: value
    })
    let theType = '';
    let contactLists = this.state.customerArr || [];
    if (value) {
      contactLists.map(function (item) {
        if (item.name == value.toString()) {
          theType = item.id;
        }
      });
    }
    this.setState({
      theTypes: theType
    })
  },
  selectAuto1(value, options) {
    this.setState({
      approvalAid: value
    })
    let theType = '';
    let contactLists = this.state.customerArr || [];
    if (value) {
      contactLists.map(function (item) {
        if (item.name == value.toString()) {
          theType = item.id;
        }
      });
    }
    this.setState({
      theTypes1: theType
    })
  },
  selectAuto2(value, options) {
    this.setState({
      financeId: value
    })
    let theType = '';
    let contactLists = this.state.customerArr || [];
    if (value) {
      contactLists.map(function (item) {
        if (item.name == value.toString()) {
          theType = item.id;
        }
      });
    }
    this.setState({
      theTypes2: theType
    })
  },
  selectAuto3(value, options) {
    this.setState({
      reviewerId: value
    })
    let theType = '';
    let contactLists = this.state.customerArr || [];
    if (value) {
      contactLists.map(function (item) {
        if (item.name == value.toString()) {
          theType = item.id;
        }
      });
    }
    this.setState({
      theTypes3: theType
    })
  },
  selectAuto4(value, options) {
    this.setState({
      accountrId: value
    })
    let theType = '';
    let contactLists = this.state.customerArr || [];
    if (value) {
      contactLists.map(function (item) {
        if (item.name == value.toString()) {
          theType = item.id;
        }
      });
    }
    this.setState({
      theTypes4: theType
    })
  },
  //失去焦点时
  blurChange(e) {
    let theType = '';
    let contactLists = this.state.customerArr || [];
    if (e) {
      contactLists.map(function (item) {
        if (item.name == e.toString()) {
          theType = item.id
        }
      });
    } else {
      this.setState({
        reviewerId: null
      })
    }
    this.setState({
      theTypes3: theType,
    })
  },
  httpChangesel(e) {
    if (e.length >= 1) {
      this.supervisor(e);
    }
    this.setState({
      adminName: e
    })
  },
  //值改变时请求客户名称
  httpChange(e) {
    if (e.length >= 1) {
      this.supervisor(e);
    }
    this.setState({
      managerIdOrganization: e
    })
  },
  httpChange1(e) {
    if (e.length >= 1) {
      this.supervisor(e);
    }
    this.setState({
      approvalName: e
    })
  },
  httpChange2(e) {
    if (e.length >= 1) {
      this.supervisor(e);
    }
    this.setState({
      financeName: e
    })
  },
  httpChange3(e) {
    if (e.length >= 1) {
      this.supervisor(e);
    }
    this.setState({
      reviewerName: e
    })
  },
  httpChange4(e) {
    if (e.length >= 1) {
      this.supervisor(e);
    }
    this.setState({
      accountrName: e
    })
  },
  addClick() {
    this.state.DepN = '';//组织编号
    this.state.theTypes = '';
    this.state.nameOrganization = '';//组织名称清零
    this.state.managerIdOrganization = '';//负责人ID清零
    this.state.financeId = "";//负责人ID清零
    this.state.financeName = "";//负责人ID清零
    this.state.approvalAid = "";//审核人ID清零
    this.state.approvalName = "";//审核人清零
    this.state.techAdminId = ""; // 技术总监
    this.state.techAdminName = "";
    this.state.reviewerId = "";//复审人
    this.state.reviewerName = "";//复审人
    this.state.accountrId = "";//报销审核人
    this.state.accountrName = "";//报销审核人
    this.state.approvalName = ""; //特批审核人
    this.state.typeOrganization = undefined; //组织类型清零
    this.state.upOrganization = undefined;//上级组织清零
    this.state.remarksOrganization = '';//组织职能说明清零
    this.state.hideSign = 1;//显示标识默认为1（显示）
    this.state.approval = 1;//特批审核 1（需要）
    this.state.RowData = {};
    this.setState({
      workingHoursType: 0,
      visible: true
    });
    this.selectSuperId();

  },
  editClick() {
    this.state.RowData = {};
    this.setState({
      editvisible: true
    });
  },
  handleCancel() {
    this.setState({ visible: false })
  },
  edithandleCancel() {
    this.loadData(this.state.page);
    this.setState({ editvisible: false })
  },
  search() {
    this.loadData();
  },
  //把搜索的部分置零
  reset() {
    this.state.superId = undefined;//上级组织清零
    this.state.name = '';//组织名称清零
    this.state.type = undefined;//组织类型清零
    this.state.depNo1 = '';//组织编号清零
    this.loadData();
  },
  searchSwitch() {
    this.setState({
      searchMore: !this.state.searchMore
    });
  },
  changeList(arr) {
    const newArr = [];
    this.state.columns.forEach(item => {
      arr.forEach(val => {
        if (val === item.title) {
          newArr.push(item);
        }
      });
    });
    this.setState({
      changeList: newArr
    });
  },


  handleOk() {
    $.ajax({
      method: "post",
      dataType: "json",
      crossDomain: false,
      url: globalConfig.context + '/api/admin/expenseConfig/addDeTails',
      data: {
        type: this.state.addtype, // 类型
        aid: this.state.aid, // 管理员编号
        adminName: this.state.adminName, // 管理员名称
        depId: this.state.editId, // 部门编号
      }
    }).done(function (data) {
      this.setState({
        loading: false
      });
      if (!data.error.length) {
        message.success('添加成功！');
        let list = this.state.addtype == 1
          ? this.state.expenseRetrialFinanceExamineList : this.state.addtype == 2
            ? this.state.ceoExamineList : this.state.addtype == 3
              ? this.state.cfoExamineList : this.state.addtype == 4
                ? this.state.viceCeoExamineList : this.state.addtype == 5
                  ? this.state.cashierExamineList : []
        list.push(data.data)
        if (this.state.addtype == 1) {
          this.setState({
            expenseRetrialFinanceExamineList: list
          })
        } else if (this.state.addtype == 2) {
          this.setState({
            ceoExamineList: list
          })
        } if (this.state.addtype == 3) {
          this.setState({
            cfoExamineList: list
          })
        } if (this.state.addtype == 4) {
          this.setState({
            viceCeoExamineList: list
          })
        } if (this.state.addtype == 5) {
          this.setState({
            cashierExamineList: list
          })
        }
        this.handleNo()
      } else {
        message.warning(data.error[0].message);
      }
    }.bind(this));
  },

  handleNo() {
    this.setState({
      addtype: -1,
      aid: "",
      adminName: "",
    })
  },

  deleteDeTails(type, dataList, id) {
    $.ajax({
      method: "post",
      dataType: "json",
      crossDomain: false,
      url: globalConfig.context + '/api/admin/expenseConfig/deleteDeTails',
      data: {
        id, // 
      }
    }).done(function (data) {
      this.setState({
        loading: false
      });
      if (!data.error.length) {
        message.success('移除成功！');
        let lx = dataList.findIndex(item => item.id === id)
        dataList.splice(lx, 1)
        if (type == 1) {
          this.setState({
            expenseRetrialFinanceExamineList: dataList
          })
        } else if (type == 2) {
          this.setState({
            ceoExamineList: dataList
          })
        } if (type == 3) {
          this.setState({
            cfoExamineList: dataList
          })
        } if (type == 4) {
          this.setState({
            viceCeoExamineList: dataList
          })
        } if (type == 5) {
          this.setState({
            cashierExamineList: dataList
          })
        }
      } else {
        message.warning(data.error[0].message);
      }
    }.bind(this));
  },


  render() {
    const FormItem = Form.Item
    const rowSelection = {
      selectedRowKeys: this.state.selectedRowKeys,
      onChange: (selectedRowKeys, selectedRows) => {
        this.setState({
          selectedRows: selectedRows.slice(-1),
          selectedRowKeys: selectedRowKeys.slice(-1)
        });
      },
      onSelect: (recordt, selected, selectedRows) => {
        this.setState({
          recordt: recordt.id
        })
      },
    };
    const formItemLayout = {
      labelCol: { span: 6 },
      wrapperCol: { span: 18 },
    };
    const { getFieldDecorator } = this.props.form;
    const hasSelected = this.state.selectedRowKeys.length > 0;
    const { RangePicker } = DatePicker;
    const dataSources = this.state.customerArr || [];
    const options = dataSources.map((group, index) =>
      <Option key={index} value={group.name}>{group.name}</Option>
    )
    const options2 = dataSources.map((group, index) =>
      <Option key={index} value={group.name}>{group.name}</Option>
    )
    return (
      <div className="user-content" >
        <div className="content-title">
          <Tabs
            defaultActiveKey="1"
            onChange={this.callback}
            className="test">
            <TabPane tab="搜索" key="1">
              <div className="user-search">
                <Input placeholder="组织名称" style={{ width: '150px', marginRight: '10px', marginBottom: '10px' }}
                  value={this.state.name}
                  onChange={(e) => { this.setState({ name: e.target.value }); }} />
                <Select placeholder="上级组织"
                  style={{ width: '200px', marginRight: '10px' }}
                  value={this.state.superId}
                  onChange={(e) => { this.setState({ superId: e }) }} notFoundContent="未获取到上级组织列表">
                  {this.state.contactsOption}
                </Select>
                <Button type="primary" onClick={this.search} style={{ marginRight: '10px' }}>搜索</Button>
                <Button onClick={this.reset} style={{ marginRight: '10px' }}>重置</Button>
                <Popconfirm title="是否删除?" onConfirm={this.delectRow} okText="是" cancelText="否">
                  <Button style={{ background: "#ea0862", border: "none", color: "#fff", marginRight: '10px', marginLeft: '10px' }}
                    disabled={!hasSelected}
                  >删除<Icon type="minus" />
                  </Button>
                </Popconfirm>
                <span style={{ marginRight: '20px' }}>更多搜索    <Switch defaultChecked={false} onChange={this.searchSwitch} /></span>
                <div style={this.state.searchMore ? { display: 'none' } : { display: 'inline-block' }}>
                  <Input placeholder="组织编号" style={{ width: '150px', marginRight: '10px' }}
                    value={this.state.depNo1}
                    onChange={(e) => { this.setState({ depNo1: e.target.value }); }} />
                  <Select placeholder="组织类型"
                    style={{ width: '150px', marginRight: '50px' }}
                    value={this.state.type}
                    onChange={(e) => { this.setState({ type: e }) }}>
                    <Select.Option value="0" >公司</Select.Option>
                    <Select.Option value="1" >部门</Select.Option>
                    <Select.Option value="2" >团队</Select.Option>
                  </Select>
                </div>
              </div>
            </TabPane>
            <TabPane tab="新增组织" key="2"   >
              <Button
                type="primary"
                className="addButton"
                onClick={this.addClick}
                style={{ marginBottom: '10px', float: 'left' }}
              >新增组织<Icon type="plus" /></Button>
            </TabPane>
            <TabPane tab="更改表格显示数据" key="3">
              <div style={{ marginLeft: 10 }}>
                <ChooseList
                  columns={this.state.columns}
                  changeFn={this.changeList}
                  changeList={this.state.changeList}
                  top={55}
                  margin={11}
                />
              </div>
            </TabPane>
          </Tabs>
          <div className="patent-table">
            <Spin spinning={this.state.loading}>
              <Table size="middle" columns={
                this.state.changeList
                  ? this.state.changeList
                  : this.state.columns
              }
                dataSource={this.state.dataSource}
                rowSelection={rowSelection}
                style={{
                  cursor: 'pointer',
                }}
                pagination={this.state.pagination}
                onRowClick={this.tableRowClick} />
            </Spin>
          </div>

          <div className="patent-desc">
            <Modal maskClosable={false} visible={this.state.visible}
              onOk={this.checkPatentProcess} onCancel={this.handleCancel}
              width='600px'
              title='新增组织'
              footer=''
              className="admin-desc-content">
              <Form horizontal onSubmit={this.addhandleSubmit} id="add-form">
                <Spin spinning={this.state.loading}>
                  <div className="clearfix">
                    <FormItem
                      labelCol={{ span: 7 }}
                      wrapperCol={{ span: 12 }}
                      label="组织名称" >
                      <Input placeholder="组织名称" value={this.state.nameOrganization} style={{ width: '95%' }}
                        onChange={(e) => { this.setState({ nameOrganization: e.target.value }) }} required="required" />
                      <span className="mandatory" style={{ color: 'red', marginLeft: '5px' }}>*</span>
                    </FormItem>
                  </div>
                  <div className="clearfix">
                    <FormItem
                      labelCol={{ span: 7 }}
                      wrapperCol={{ span: 12 }}
                      label="负责人"
                    >
                      <AutoComplete
                        className="certain-category-search"
                        dropdownClassName="certain-category-search-dropdown"
                        dropdownMatchSelectWidth={false}
                        dataSource={options}
                        placeholder="输入名称"
                        value={this.state.managerIdOrganization}
                        onChange={this.httpChange}
                        filterOption={true}
                        // onBlur={this.blurChange}
                        onSelect={this.selectAuto}
                      // style={{ width: '95%' }}
                      >
                        <Input />
                      </AutoComplete>
                      {/*<span className="mandatory" style={{color:'red',marginLeft:'5px'}}>*</span>*/}
                    </FormItem>
                  </div>

                  <div className="clearfix">
                    <FormItem
                      labelCol={{ span: 7 }}
                      wrapperCol={{ span: 12 }}
                      label="组织类型"
                    >
                      <Select placeholder="组织类型" value={this.state.typeOrganization}
                        onChange={(e) => { this.setState({ typeOrganization: e }) }} style={{ width: '95%' }} required="required">
                        {
                          patternOrganization.map(function (item) {
                            return <Select.Option key={item.value} >{item.key}</Select.Option>
                          })
                        }
                      </Select>
                      <span className="mandatory" style={{ color: 'red', marginLeft: '5px' }}>*</span>
                    </FormItem>
                  </div>
                  <div className="clearfix">
                    <FormItem
                      labelCol={{ span: 7 }}
                      wrapperCol={{ span: 12 }}
                      label="上级组织"
                    >
                      <Select placeholder="请选择上级组织"
                        value={this.state.upOrganization}
                        onChange={(e) => { this.setState({ upOrganization: e }) }}
                        notFoundContent="未获取到上级组织列表"
                        style={{ width: '95%' }} required="required">
                        {this.state.contactsOption}
                      </Select>
                      <span className="mandatory" style={{ color: 'red', marginLeft: '5px' }}>*</span>
                    </FormItem>
                  </div>
                  <div className="clearfix">
                    <FormItem
                      labelCol={{ span: 7 }}
                      wrapperCol={{ span: 12 }}
                      label="选择作息时间类型"
                    >
                      <Select placeholder="请选择作息时间类型"
                        style={{ width: '95%' }}
                        value={this.state.workingHoursType}
                        onChange={(e) => { this.setState({ workingHoursType: e }) }}
                        notFoundContent="未获取到作息时间类型">
                        {this.state.workTimeList.map((v, k) => (
                          <Select.Option value={v.type} key={k}>{v.name}</Select.Option>
                        ))}
                      </Select>
                    </FormItem>
                  </div>
                  <div className="clearfix">
                    <FormItem
                      labelCol={{ span: 7 }}
                      wrapperCol={{ span: 12 }}
                      label="组织编号"
                    >
                      <Input
                        placeholder='组织编号'
                        value={this.state.depNo}
                        onChange={(e) => {
                          this.setState({
                            depNo: e.target.value
                          })
                        }}
                      />
                    </FormItem>
                  </div>
                  <div className="clearfix">
                    <FormItem
                      labelCol={{ span: 7 }}
                      wrapperCol={{ span: 12 }}
                      label="组织职能说明" >
                      <Input type="textarea" rows={4} placeholder="组织职能说明" value={this.state.remarksOrganization}
                        onChange={(e) => { this.setState({ remarksOrganization: e.target.value }) }} style={{ width: '95%' }} />
                    </FormItem>
                  </div>
                  <div className="clearfix">
                    <FormItem
                      labelCol={{ span: 7 }}
                      wrapperCol={{ span: 12 }}
                      label="显示标识"
                    >
                      <Select placeholder="显示标识"
                        value={this.state.hideSign}
                        onChange={(e) => { this.setState({ hideSign: e }) }}
                        style={{ width: '95%' }}
                        required="required"
                      >
                        <Option value={0}>不显示</Option>
                        <Option value={1}>显示</Option>
                      </Select>
                      <span className="mandatory" style={{ color: 'red', marginLeft: '5px' }}>*</span>
                    </FormItem>
                  </div>
                  <FormItem wrapperCol={{ span: 12, offset: 7 }}>
                    <Button className="set-submit" type="primary" htmlType="submit">保存</Button>
                    <Button className="set-submit" type="ghost" onClick={this.handleCancel} style={{ marginLeft: '100px' }}>取消</Button>
                  </FormItem>
                </Spin>
              </Form >
            </Modal>
          </div>

          <div className="patent-desc">
            <Modal maskClosable={false} visible={this.state.editvisible}
              onOk={this.checkPatentProcess} onCancel={this.edithandleCancel}
              width='1000px'
              title='编辑组织'
              footer=''
              className="admin-desc-content">
              <Form horizontal onSubmit={this.edithandleSubmit} id="edit-form">
                <Spin spinning={this.state.loading}>
                  <div className="clearfix">
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="组织名称" >
                      <Input placeholder="组织名称" value={this.state.editName}
                        style={{ width: '70%' }}
                        onChange={(e) => { this.setState({ editName: e.target.value }) }} />
                    </FormItem>
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="特批审核"
                    >
                      <Select placeholder="特批审核"
                        value={this.state.approval}
                        style={{ width: '70%' }}
                        onChange={(e) => { this.setState({ approval: e }) }}
                        required="required"
                      >
                        <Option value={0}>不需要</Option>
                        <Option value={1}>需要</Option>
                      </Select>
                      <span style={{ color: "red" }}> 订单/合同特批</span>
                    </FormItem>
                  </div>
                  <div className="clearfix">
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="负责人"
                    >
                      <AutoComplete
                        className="certain-category-search"
                        dropdownClassName="certain-category-search-dropdown"
                        dropdownMatchSelectWidth={false}
                        dataSource={options}
                        placeholder="输入名称"
                        value={this.state.managerIdOrganization}
                        onChange={this.httpChange}
                        filterOption={true}
                        // onBlur={this.blurChange}
                        onSelect={this.selectAuto}
                        style={{ width: '70%' }}
                      >
                        <Input />
                      </AutoComplete>
                      {/* <span className="mandatory" style={{color:'red',marginLeft:'5px'}}>*</span> */}
                    </FormItem>

                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="审核人"
                    >
                      <AutoComplete
                        disabled={this.state.approval != 1}
                        className="certain-category-search"
                        dropdownClassName="certain-category-search-dropdown"
                        dropdownMatchSelectWidth={false}
                        dataSource={options}
                        placeholder="输入名称"
                        value={this.state.approvalName}
                        onChange={this.httpChange1}
                        filterOption={true}
                        // onBlur={this.blurChange}
                        onSelect={this.selectAuto1}
                        style={{ width: '70%' }}
                      >
                        <Input />
                      </AutoComplete>
                      {/* <span className="mandatory" style={{color:'red',marginLeft:'5px'}}>特批/变更审核</span> */}
                    </FormItem>
                  </div>

                  <div className="clearfix">
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="组织类型"
                    >
                      <Select
                        placeholder="组织类型"
                        value={this.state.editType}
                        style={{ width: '70%' }}
                        onChange={(e) => { this.setState({ editType: e }) }}>
                        {
                          patternOrganization.map(function (item) {
                            return <Select.Option key={item.value} >{item.key}</Select.Option>
                          })
                        }
                      </Select>
                    </FormItem>

                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="财务负责人"
                    >
                      <AutoComplete
                        className="certain-category-search"
                        dropdownClassName="certain-category-search-dropdown"
                        dropdownMatchSelectWidth={false}
                        dataSource={options2}
                        placeholder="输入名称"
                        value={this.state.financeName}
                        onChange={this.httpChange2}
                        filterOption={true}
                        // onBlur={this.blurChange}
                        onSelect={this.selectAuto2}
                        style={{ width: '70%' }}
                      >
                        <Input />
                      </AutoComplete>
                      {/* <span className="mandatory" style={{color:'red',marginLeft:'5px'}}>*</span> */}
                    </FormItem>
                  </div>
                  <div className="clearfix">
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="组织状态"
                    >
                      <Select
                        placeholder="组织状态"
                        value={this.state.editStatus}
                        style={{ width: '70%' }}
                        onChange={(e) => { this.setState({ editStatus: e }) }}>
                        {
                          conditionOrganization.map(function (item) {
                            return <Select.Option key={item.value} >{item.key}</Select.Option>
                          })
                        }
                      </Select>
                    </FormItem>

                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="财务复审"
                    >
                      <AutoComplete
                        className="certain-category-search"
                        dropdownClassName="certain-category-search-dropdown"
                        dropdownMatchSelectWidth={false}
                        dataSource={options}
                        placeholder="输入名称"
                        value={this.state.reviewerName}
                        onChange={this.httpChange3}
                        filterOption={true}
                        onBlur={this.blurChange}
                        onSelect={this.selectAuto3}
                        style={{ width: '70%' }}
                      >
                        <Input />
                      </AutoComplete>
                      <span style={{ color: 'red' }}> 订单/合同复审</span>
                    </FormItem>
                  </div>
                  <div className="clearfix">
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="省份"
                    >
                      <Select
                        placeholder="请选择省份"
                        value={getNewDiccityArr(this.state.province)}
                        style={{ width: '70%' }}
                        onChange={e => {
                          this.setState({ province: e });
                        }}
                      >
                        {citySelect().map(function (item) {
                          return (
                            <Select.Option key={item.value} value={item.value}>{item.label}</Select.Option>
                          );
                        })}
                      </Select>
                    </FormItem>

                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="技术总监审核"
                    >
                      <StaffSearch
                        valueName={this.state.techAdminName}
                        placeholder="输入名称"
                        width="70%"
                        onBlurText={e => {
                          this.setState({
                            techAdminName: e.title
                          })
                        }}
                        onBlurChange={(obj) => {
                          this.setState({
                            techAdminId: obj.value,
                          })
                        }}
                      />
                    </FormItem>
                  </div>
                  <div className="clearfix">
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="上级组织"
                    >
                      <Select placeholder="请选择上级组织"
                        value={this.state.editSuperId}
                        style={{ width: '70%' }}
                        onChange={(e) => { this.setState({ editSuperId: e }) }}
                        notFoundContent="未获取到上级组织列表">
                        {this.state.contactsOption}
                      </Select>
                    </FormItem>

                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="报销审核人"
                    >
                      <AutoComplete
                        className="certain-category-search"
                        dropdownClassName="certain-category-search-dropdown"
                        dropdownMatchSelectWidth={false}
                        dataSource={options}
                        placeholder="输入名称"
                        value={this.state.accountrName}
                        onChange={this.httpChange4}
                        filterOption={true}
                        // onBlur={this.blurChange}
                        onSelect={this.selectAuto4}
                        style={{ width: '70%' }}
                      >
                        <Input />
                      </AutoComplete>
                      {/* <span className="mandatory" style={{color:'red',marginLeft:'5px'}}>*</span> */}
                    </FormItem>
                  </div>
                  <div className="clearfix">
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="缩写" >
                      <Input placeholder="缩写"
                        value={this.state.abbreviation}
                        style={{ width: '70%' }}
                        onChange={(e) => { this.setState({ abbreviation: e.target.value }) }} />
                    </FormItem>

                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="报销财务复审"
                    >
                      <Select placeholder="请选择"
                        value={this.state.expenseRetrialFinanceExamine}
                        style={{ width: '70%' }}
                        onChange={(e) => { this.setState({ expenseRetrialFinanceExamine: e }) }}
                      >
                        <Option value={0}>不需要</Option>
                        <Option value={1}>需要</Option>
                      </Select>
                      <div>
                        {
                          this.state.expenseRetrialFinanceExamine == 1 &&
                          !!this.state.expenseRetrialFinanceExamineList &&
                          this.state.expenseRetrialFinanceExamineList.map(item =>
                            <Popconfirm
                              title="是否确认删除？"
                              okText="确定"
                              onConfirm={() => {
                                this.deleteDeTails(1, this.state.expenseRetrialFinanceExamineList, item.id);
                              }}
                              cancelText="取消"
                            >
                              <Tag key={item.id}>
                                {item.adminName + " "}<Icon type="close" />
                              </Tag>
                            </Popconfirm>
                          )
                        }
                        {
                          this.state.expenseRetrialFinanceExamine == 1 &&
                          <Button
                            type="primary"
                            style={{ marginTop: 10 }}
                            onClick={() => {
                              this.setState({
                                addtype: 1
                              })
                            }}>添加</Button>
                        }
                      </div>
                    </FormItem>
                  </div>

                  <div className="clearfix">
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="选择作息时间类型"
                    >
                      <Select placeholder="请选择作息时间类型"
                        value={this.state.workingHoursType}
                        style={{ width: '70%' }}
                        onChange={(e) => { this.setState({ workingHoursType: e }) }}
                        notFoundContent="未获取到作息时间类型">
                        {this.state.workTimeList.map((v, k) => (
                          <Select.Option value={v.type} key={k}>{v.name}</Select.Option>
                        ))}
                      </Select>
                    </FormItem>

                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="董事长特批"
                    >
                      <Select placeholder="请选择"
                        value={this.state.ceoExamine}
                        style={{ width: '70%' }}
                        onChange={(e) => { this.setState({ ceoExamine: e }) }}
                      >
                        <Option value={0}>不需要</Option>
                        <Option value={1}>需要</Option>
                      </Select>
                      <div>
                        {
                          this.state.ceoExamine == 1 &&
                          !!this.state.ceoExamineList &&
                          this.state.ceoExamineList.map(item =>
                            <Popconfirm
                              title="是否确认删除？"
                              okText="确定"
                              onConfirm={() => {
                                this.deleteDeTails(2, this.state.ceoExamineList, item.id);
                              }}
                              cancelText="取消"
                            >
                              <Tag key={item.id}>
                                {item.adminName + " "}<Icon type="close" />
                              </Tag>
                            </Popconfirm>
                          )
                        }
                        {
                          this.state.ceoExamine == 1 &&
                          <Button
                            type="primary"
                            style={{ marginTop: 10 }}
                            onClick={() => {
                              this.setState({
                                addtype: 2
                              })
                            }}>添加</Button>
                        }
                      </div>
                      <div style={{ color: "red" }}>注：启用董事长审核后，还需要财务指向，是否需要董事长特批</div>
                    </FormItem>
                  </div>
                  <div className="clearfix">
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="组织编号"
                    >
                      <Input
                        placeholder='组织编号'
                        value={this.state.depNo}
                        style={{ width: '70%' }}
                        onChange={(e) => {
                          this.setState({
                            depNo: e.target.value
                          })
                        }}
                      />
                    </FormItem>

                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="财务总监审核"
                    >
                      <Select placeholder="请选择"
                        value={this.state.cfoExamine}
                        style={{ width: '70%' }}
                        onChange={(e) => { this.setState({ cfoExamine: e }) }}
                      >
                        <Option value={0}>不需要</Option>
                        <Option value={1}>需要</Option>
                      </Select>
                      <div>
                        {
                          this.state.cfoExamine == 1 &&
                          !!this.state.cfoExamineList &&
                          this.state.cfoExamineList.map(item =>
                            <Popconfirm
                              title="是否确认删除？"
                              okText="确定"
                              onConfirm={() => {
                                this.deleteDeTails(3, this.state.cfoExamineList, item.id);
                              }}
                              cancelText="取消"
                            >
                              <Tag key={item.id}>
                                {item.adminName + " "}<Icon type="close" />
                              </Tag>
                            </Popconfirm>
                          )
                        }
                        {
                          this.state.cfoExamine == 1 &&
                          <Button
                            type="primary"
                            style={{ marginTop: 10 }}
                            onClick={() => {
                              this.setState({
                                addtype: 3
                              })
                            }}>添加</Button>
                        }
                      </div>
                    </FormItem>
                  </div>
                  <div className="clearfix" >
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="创建人"
                    >
                      <span>{this.state.editCreateId}</span>
                    </FormItem>

                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="集团副总复审"
                    >
                      <Select placeholder="请选择"
                        value={this.state.viceCeoExamine}
                        style={{ width: '70%' }}
                        onChange={(e) => { this.setState({ viceCeoExamine: e }) }}
                      >
                        <Option value={0}>不需要</Option>
                        <Option value={1}>需要</Option>
                      </Select>
                      <div>
                        {
                          this.state.viceCeoExamine == 1 &&
                          !!this.state.viceCeoExamineList &&
                          this.state.viceCeoExamineList.map(item =>
                            <Popconfirm
                              title="是否确认删除？"
                              okText="确定"
                              onConfirm={() => {
                                this.deleteDeTails(3, this.state.viceCeoExamineList, item.id);
                              }}
                              cancelText="取消"
                            >
                              <Tag key={item.id}>
                                {item.adminName + " "}<Icon type="close" />
                              </Tag>
                            </Popconfirm>
                          )
                        }
                        {
                          this.state.viceCeoExamine == 1 &&
                          <Button
                            type="primary"
                            style={{ marginTop: 10 }}
                            onClick={() => {
                              this.setState({
                                addtype: 4
                              })
                            }}>添加</Button>
                        }
                      </div>
                    </FormItem>
                  </div>
                  <div className="clearfix">
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="创建时间"
                    >
                      <span>{this.state.editTime}</span>
                    </FormItem>

                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="报销出纳"
                    >
                      <Select placeholder="请选择"
                        value={this.state.cashierExamine}
                        style={{ width: '70%' }}
                        onChange={(e) => { this.setState({ cashierExamine: e }) }}
                      >
                        <Option value={0}>不需要</Option>
                        <Option value={1}>需要</Option>
                      </Select>
                      <div>
                        {
                          this.state.cashierExamine == 1 &&
                          !!this.state.cashierExamineList &&
                          this.state.cashierExamineList.map(item =>
                            <Popconfirm
                              title="是否确认删除？"
                              okText="确定"
                              onConfirm={() => {
                                this.deleteDeTails(3, this.state.cashierExamineList, item.id);
                              }}
                              cancelText="取消"
                            >
                              <Tag key={item.id}>
                                {item.adminName + " "}<Icon type="close" />
                              </Tag>
                            </Popconfirm>
                          )
                        }
                        {
                          this.state.cashierExamine == 1 &&
                          <Button
                            type="primary"
                            style={{ marginTop: 10 }}
                            onClick={() => {
                              this.setState({
                                addtype: 5
                              })
                            }}>添加</Button>
                        }
                      </div>
                    </FormItem>
                  </div>
                  <div className="clearfix">
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="组织职能说明" >
                      <Input type="textarea"
                        rows={4}
                        placeholder="组织职能说明"
                        value={this.state.editRemarks}
                        style={{ width: '70%' }}
                        onChange={(e) => { this.setState({ editRemarks: e.target.value }) }} />
                    </FormItem>
                  </div>
                  <div className="clearfix">
                    <FormItem
                      className="half-item"
                      {...formItemLayout}
                      label="显示标识"
                    >
                      <Select placeholder="显示标识"
                        value={this.state.hideSign}
                        style={{ width: '70%' }}
                        onChange={(e) => { this.setState({ hideSign: e }) }}
                        required="required"
                      >
                        <Option value={0}>不显示</Option>
                        <Option value={1}>显示</Option>
                      </Select>
                    </FormItem>
                  </div>
                  <FormItem wrapperCol={{ span: 12, offset: 7 }}>
                    <Button className="set-submit" type="primary" htmlType="submit">保存</Button>
                    <Button className="set-submit" type="ghost" onClick={this.edithandleCancel} style={{ marginLeft: '100px' }}>取消</Button>
                  </FormItem>
                </Spin>
              </Form >
            </Modal>
          </div>

          <Modal
            title="设置审核名单"
            width='300px'
            visible={this.state.addtype > 0}
            onOk={this.handleOk}
            onCancel={this.handleNo}
            okText="确认"
            cancelText="取消"
          >
            <AutoComplete
              className="certain-category-search"
              dropdownClassName="certain-category-search-dropdown"
              style={{ width: 250 }}
              dropdownMatchSelectWidth={false}
              dataSource={options}
              placeholder="输入名称"
              value={this.state.adminName}
              onChange={this.httpChangesel}
              filterOption={true}
              onSelect={this.selectAutosel}
            >
              <Input />
            </AutoComplete>
          </Modal>

        </div>
      </div>
    );
  }
}));

export default Organization;
