package com.zcloud.basic.info.dto.clientobject;

import com.alibaba.cola.dto.ClientObject;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.zcloud.gbscommon.translateaop.TranslateEunm;
import com.zcloud.gbscommon.translateaop.ZCloudTranslate;
import com.zcloud.gbscommon.translateaop.ZCloudTranslates;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;


/**
 * web-client
 *
 * @Author zhangyue
 * @Date 2025-11-04 14:07:33
 */
@Data
public class UserXmfCO extends ClientObject {
    //GBS用户id
    @ApiModelProperty(value = "GBS用户id")
    private Long id;
    //业务主键id老系统id
    @ApiModelProperty(value = "业务主键id老系统id")
    private String userId;
    //登录账号
    @ApiModelProperty(value = "登录账号")
    private String username;
    //姓名
    @ApiModelProperty(value = "姓名")
    private String name;
    //企业id
    @ApiModelProperty(value = "企业id")
    private Long corpinfoId;
    @ApiModelProperty(value = "企业名称")
    private String corpinfoName;
    //是否主账号1是0否
    @ApiModelProperty(value = "是否主账号1是0否")
    private Integer mainCorpFlag;
    //用户类型,1监管2企业3相关方
    @ApiModelProperty(value = "用户类型,1监管2企业3相关方")
    private Integer userType;
    //部门id
    @ApiModelProperty(value = "部门id")
    private Long departmentId;
    //部门id
    @ApiModelProperty(value = "部门名称")
    private String departmentName;
    //岗位id
    @ApiModelProperty(value = "岗位id")
    private Long postId;
    //岗位id
    @ApiModelProperty(value = "岗位名称")
    private String postName;
    //角色id
    @ApiModelProperty(value = "角色id")
    private Long roleId;
    //邮箱
    @ApiModelProperty(value = "邮箱")
    private String email;
    //人员类型编码（主要负责人等）
    @ApiModelProperty(value = "人员类型编码（主要负责人等）")
    private String personnelType;
    //人员类型翻译
    @ApiModelProperty(value = "人员类型翻译")
    private String personnelTypeName;
    //民族编码问一下有没有组件
    @ApiModelProperty(value = "民族编码问一下有没有组件")
    private String nation;
    //民族名称
    @ApiModelProperty(value = "民族名称")
    private String nationName;
    //身份证号
    @ApiModelProperty(value = "身份证号")
    private String userIdCard;
    //人脸头像url
    @ApiModelProperty(value = "人脸头像url")
    private String userAvatarUrl;
    //现住址
    @ApiModelProperty(value = "现住址")
    private String currentAddress;
    //户口所在地
    @ApiModelProperty(value = "户口所在地")
    private String locationAddress;

    @ApiModelProperty(value = "职级")
    private String rankLevel;
    @ApiModelProperty(value = "职级名称")
    private String rankLevelName;
    @ApiModelProperty(value = "手机号")
    private String phone;
    //人员在部门中的排序
    @ApiModelProperty(value = "人员在部门中的排序")
    private Integer sort;
    //乐观锁
    @ApiModelProperty(value = "乐观锁")
    private Integer version;
    //创建人
    @ApiModelProperty(value = "创建人")
    private Long createId;
    //创建人姓名
    @ApiModelProperty(value = "创建人姓名")
    private String createName;
    //创建时间
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date createTime;
    //更新人
    @ApiModelProperty(value = "更新人")
    private Long updateId;
    //修改人名称
    @ApiModelProperty(value = "修改人名称")
    private String updateName;
    //更新时间
    @ApiModelProperty(value = "更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date updateTime;
    //描述
    @ApiModelProperty(value = "描述")
    private String remarks;
    //是否删除
    @ApiModelProperty(value = "是否删除")
    private String deleteEnum;
    //租户ID
    @ApiModelProperty(value = "租户ID")
    private Long tenantId;
    //机构ID
    @ApiModelProperty(value = "机构ID")
    private Long orgId;
    //环境
    @ApiModelProperty(value = "环境")
    private String env;
    //是否部门领导0否1是
    @ApiModelProperty(value = "是否部门领导0否1是")
    private Integer departmentLeaderFlag;
    //是否分管领导0否1是
    @ApiModelProperty(value = "是否分管领导0否1是")
    private Integer deputyLeaderFlag;
    //文化程度 数据字典
    @ApiModelProperty(value = "文化程度 数据字典")
    private String culturalLevel;
    //文化程度名称
    @ApiModelProperty(value = "文化程度名称")
    private String culturalLevelName;
    //婚姻状态
    @ApiModelProperty(value = "婚姻状态")
    private String maritalStatus;
    //婚姻状态名称
    @ApiModelProperty(value = "婚姻状态名称")
    private String maritalStatusName;
    //政治面貌
    @ApiModelProperty(value = "政治面貌")
    private String politicalAffiliation;
    //政治面貌名称
    @ApiModelProperty(value = "政治面貌名称")
    private String politicalAffiliationName;
    private String mappingName;
    private String mappingUserName;
    private String mappingPostName;
    private String mappingDeptName;
    // 入职状态
    @ApiModelProperty(value = "入职状态，1-在职 0-离职, 11-入职待审核, 10-离职待审核")
    private Integer employmentFlag;
    // 入职状态
    @ApiModelProperty(value = "是否流动人员，1-流动，0-固定人员")
    private Integer flowFlag;
    //用户所属企业id
    @ApiModelProperty(value = "用户所属企业id")
    private String userCorpId;

    // 年龄
    @ApiModelProperty(value = "年龄")
    private Integer age;

    //生日
    @ApiModelProperty(value = "生日")
    private String birthday;

    // 性别
    @ApiModelProperty(value = "性别")
    private String sex;
}

