package com.changhu.pojo.dto;

import cn.hutool.core.util.DesensitizedUtil;
import com.alibaba.fastjson2.annotation.JSONField;
import com.changhu.common.annotation.Desensitized;
import com.changhu.common.db.enums.EducationLevel;
import com.changhu.common.db.enums.Sex;
import com.changhu.support.fastjson2.serializer.MinioPrefixSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

/**
 * @author 20252
 * @createTime 2024/11/18 上午10:43
 * @desc SecurityUserRosterDTO...
 */
@Data
public class SecurityUserRosterDTO {
    @Schema(description = "id")
    private Long snowFlakeId;
    @Schema(description = "照片")
    @JSONField(serializeUsing = MinioPrefixSerializer.class)
    private String photo;
    @Schema(description = "名称")
    private String name;
    @Schema(description = "性别")
    private Sex sex;
    @Schema(description = "年龄")
    private Integer age;
    @Desensitized(value = DesensitizedUtil.DesensitizedType.ID_CARD, keepOriginalField = true)
    @Schema(description = "身份证")
    private String idCard;
    @Desensitized(value = DesensitizedUtil.DesensitizedType.MOBILE_PHONE, keepOriginalField = true)
    @Schema(description = "手机号")
    private String telephone;
    @Schema(description = "企事业单位名")
    private String enterprisesUnitName;
    @Schema(description = "保安单位名")
    private String securityUnitName;
    @Schema(description = "保安证号")
    private String securityNumber;
    @Schema(description = "文化程度")
    private EducationLevel educationLevel;
}
