vue枚举统一管理

// 全局枚举
/**
 * 枚举类
 * @author meilin.huang
 */
export class Enum {
  /**
	 * 添加枚举字段
	 * field: 枚举字段
	 * label: 界面显示
	 * value: 枚举值
	 */
  add(field, label, value) {
    this[field] = {
      label,
      value
    }
    return this
  }

  /**
	 * 根据枚举value获取其label
	 */
  getLabelByValue(value) {
    // 字段不存在返回‘’
    if (value === undefined || value === null) {
      return ''
    }
    for (const i in this) {
      const e = this[i]
      if (e && e.value === value) {
        return e.label
      }
    }

    return ''
  }
}

const enumStatu = {
  // 租客状态
  renterStatus: new Enum()
    .add('ALL', '全部', null)
    .add('SETTLE', '未租房', 0)
    .add('SETTLED', '入住中', 1)
    .add('CANCEL', '已退租', 2),
  // 租客身份
  renterIdentity: new Enum()
    .add('ALL', '全部', null)
    .add('SETTLE', '承租人', 0)
    .add('SETTLED', '同住人', 1),
  // 托管状态
  housekeeperStatus: new Enum()
    .add('ALL', '全部', null)
    .add('SETTLE', '待分配管家', 0)
    .add('SETTLED', '已分配管家', 1),
  // 落户任务状态
  settleTaskStatusEnum: new Enum()
    .add('ALL', '全部', null)
    .add('SETTLE', '待落户', 0)
    .add('SETTLED', '已落户', 1)
    .add('CANCEL', '已取消', 2),
  // 租客实名认证状态
  verifiedStatus: new Enum()
    .add('ALL', '全部', null)
    .add('SETTLED', '未认证', 0)
    .add('SETTLE', '已认证', 1),
  // 房东实名认证状态
  landlordStatus: new Enum()
    .add('ALL', '全部', null)
    .add('SETTLED', '未认证', 0)
    .add('SETTLE', '已认证', 1),
  // 管家实名认证状态
  chamberlainStatus: new Enum()
    .add('ALL', '全部', null)
    .add('SETTLED', '未认证', 0)
    .add('SETTLE', '已认证', 1),
  // 房产认证状态
  certifiedStatus: new Enum()
    .add('ALL', '全部', null)
    .add('SETTLE', '待认证', 0)
    .add('SETTLED', '认证通过', 1)
    .add('SETTLED', '认证拒绝', 2),
  lockFlagStatus: new Enum()
    .add('ALL', '全部', null)
    .add('SETTLE', '启用', 0)
    .add('SETTLED', '禁用', 1),
  lockFlagRoleStatus: new Enum()
    .add('ALL', '全部', null)
    .add('SETTLE', '启用', 1)
    .add('SETTLED', '禁用', 0),
  lockFlagMenuStatus: new Enum()
    .add('ALL', '全部', null)
    .add('SETTLE', '菜单', 0)
    .add('SETTLED', '按钮', 1)
}
export default enumStatu
// // 租客状态
// getRenterStatus(row, column, obj) {
//   console.log(obj)
//   return this.$enums.settleTaskStatusEnum.getLabelByValue(Number(obj))
// },
// // 租客实名认证状态
// getVerifiedStatus(row, column, obj) {
//   return this.$enums.verifiedStatus.getLabelByValue(Number(obj))
// }

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值