import {getDetails} from "@/api/admin/user";

var validateUsername = (rule, value, callback) => {
  getDetails(value).then(response => {
    if (window.boxType === 'edit') callback()
    let result = response.data.data
    if (result !== null) {
      callback(new Error('用户名已经存在'))
    } else {
      callback()
    }
  });
};
export const tableOption = {
  border: true,
  index: true,
  indexLabel: '序号',
  stripe: true,
  menuAlign: 'center',
  editBtn: false,
  delBtn: false,
  align: 'center',
  addBtn: false,
  filterBtn: false,
  size:"small",
  column: [{
    fixed: true,
    label: 'id',
    prop: 'userId',
    span: 24,
    hide: true,
    editDisabled: true,
    editDisplay: false,
    addDisplay: false,
  }, {
    fixed: true,
    label: '用户名',
    prop: 'username',
    editDisabled: true,

    search: true,
    span: 24,
    rules: [{
      required: true,
      message: "请输入用户名",
    },
      {
        min: 3,
        max: 20,
        message: "长度在 3 到 20 个字符",
        trigger: "blur"
      },
      {validator: validateUsername, trigger: 'blur'}
    ]
  }, {
    label: '真实姓名',
    prop: 'realName',
    search: true,
    span: 24,
    rules: [{
      required: true,
      message: "请输入真实姓名",
    }]
  },
    {
      label: '用户类型',
      prop: 'userType',
      hide:true,
      addDisplay:false,
      editDisplay:false,
      search:true,
      dicUrl:'/admin/dict/item/type/sys_user_type',
      type: 'select',
    },

    {
    label: '密码',
    prop: 'password',
    type: 'password',
    value: '',
    hide: true,
    span: 24,
    rules: [{
      min: 6,
      max: 20,
      message: "长度在 6 到 20 个字符",
      trigger: "blur"
    }]
  }, {
    label: '所属部门',
    prop: 'deptId',
    formslot: true,
    slot: true,
    span: 24,
    hide: true,
    editDisabled: true,
    editDisplay: false,
    addDisplay: false,
    rules: [{
      required: true,
      message: "请选择部门",
      trigger: "blur"
    }]
  }, {
    label: '手机号',
    prop: 'phone',
    value: '',
    hide: true,
    span: 24,
    editDisplay: false,
    rules: [{
      min: 6,
      max: 20,
      message: "长度在 11 个字符",
      trigger: "blur"
    }]
  }, {
    label: '角色',
    prop: 'role',
    formslot: true,
    slot: true,
    overHidden: true,
    span: 24,
    rules: [{
      required: true,
      message: "请选择角色",
      trigger: "blur"
    }],
  }, {
    label: '状态',
    prop: "lockFlag",
    type: "select",
    span: 24,
    rules: [{
      required: true,
      message: "请选择状态",
      trigger: "blur"
    }],
    dicData: [{
      label: '有效',
      value: "0"
    }, {
      label: '锁定',
      value: "9"
    }]
  }, {
    width: 180,
    label: '创建时间',
    prop: 'createTime',
    type: 'datetime',
    format: 'yyyy-MM-dd HH:mm',
    valueFormat: 'yyyy-MM-dd HH:mm:ss',
    hide: true,
    editDisabled: true,
    addDisplay: false,
    editDisplay: false,
    span: 24,
  },
    {
      width: 300,
      label: '头像',
      prop: 'imageUrl',
      hide:true,
      // slot:true,
      formslot:true
    },
  ]
}
