package com.brilliance.isc.vo.manager;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

@Data
public class UserVo {

    // 用户ID
    private int id;

    // 登录名称
    private String logName;

    // 密码
    private String logPass;

    // 姓名
    private String name;

    // 状态，是否冻结   1-否 2-临时冻结（10min） 3-是
    // 当置为2时，stopTime赋值为当前时间；其他情况时，stopTime为空
    private int state;

    // 停止时间
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date stopTime;

    // 错误次数
    private int errorNumber;

    // 密码有效时间
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date passwordTime;

    // 所属实体
    private String entity;

    // 默认实体
    private String defaultEntity;

    // 业务ID
    private String businessId;

    // 随机数
    private String randomCode;

    // 更新时间
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date updateTime;

    // 性别
    private Integer sex;

    // 生日
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date birthday;

    // 国籍
    private Integer nationality;

    // 省份
    private Integer province;

    // 城市
    private Integer city;

    // 地区
    private Integer district;

    // 街道
    private String street;

    // 邮编
    private String postalcode;

    // 固定电话
    private String fixedPhone;

    // 移动电话
    private String mobilePhone;

    // 传真
    private String faxaPhone;

    // 邮箱
    private String email;

    // 创建时间
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date createTime;

    // 生效时间
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date validateTime;

    // 最后登录时间
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date lastLogTime;

    // 最后登录IP
    private String lastLogIP;

    // 归属行
    private String workorg;

    // 扩展字段1
    private String extfield1;

    // 扩展字段2
    private String extfield2;

    // 扩展字段3
    private String extfield3;

    // 扩展字段4
    private String extfield4;

    // 扩展字段5
    private String extfield5;

    // 密码存储时加盐的值, 每个用户绑定一个10位数字
    @JsonIgnore
    private String salt;

    // 唯一ID，主键
    private String inr;

    // 柜员号
    private String extkey;

    // 默认实体
    private String ety;

    // 柜员名字
    private String nam;

    // 授权币种
    private String relcur;

    // 授权金额
    private BigDecimal relamt;

    // 授权权限，N-无授权权限，A-有授权权限
    private String relgrp;

    // 授权档次
    private String authlevel;

    // GISP报文G转S权限 0-否 1-是
    private String authority;

    // 用户详情ID,关联ec_org_persondetails表
    private Integer userdetailsid;


    // 是否禁止登陆系统，空为Login Profile enabled，Y为No Login Profil
    private String lgiflg;

    // 最新登录系统时间
    @JsonFormat(pattern="yyyy-MM-dd  HH:mm:ss",timezone="GMT+8")
    private Date ssnbegdattim;

    // 关联的用户会话信息表主键INR
    private String ssninr;

    // 版本号
    private String ver;

    // 多实体环境下的新实体初始化用户标志
    private String pri;

    // 所属用户组
    private String usg;

    // 最新查看备忘录日期
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date lstdiadat;

    // 可以授权本人经办业务的金额
    private  BigDecimal relamt2nd;

    // 电话
    private String tel;

    // 传真
    private String fax;

    // 电子邮件地址
    private String eml;

    // 面函抬头
    private String letoenr;

    // 队列处理能力
    private  BigDecimal quepow;

    // 柜员所属实体
    private String etyextkey;

    // 组织单位
    private String oenr;

    // 柜员所属实体地址
    private String etaextkey;

    // 客户经理标志
    private String resusrflg;

    // 用户状态，Y为Normal，N为Blocked
    private String secsta;

}
