package com.app.dto.platform;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 响应账户dto
 *
 */
@ApiModel("响应账户dto")
@Data
@NoArgsConstructor
@AllArgsConstructor
public class ResponseAccountDto {
    @ApiModelProperty("标识")
    private String id;

    @ApiModelProperty("用户名")
    private String identifier;

    @ApiModelProperty("密码")
    private String credential;

    @ApiModelProperty("昵称")
    private String nickname;

    @ApiModelProperty("部门")
    private String deptId;

    @ApiModelProperty("部门名")
    private String deptName;

    @ApiModelProperty("性别")
    private Integer gender = 0;

    @ApiModelProperty("是否锁定")
    private Boolean isLocked;

    @ApiModelProperty("岗位ids")
    private List<String> jobIds;

    @ApiModelProperty("角色ids")
    private List<String> roleIds;

    @ApiModelProperty("过期时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime endDateTime;

    @ApiModelProperty("账号类型")
    private Integer type;

    @ApiModelProperty("更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateAt;
}
