package cn.iocoder.yudao.module.system.controller.admin.biz.vo;

import cn.iocoder.yudao.module.system.dal.dataobject.biz.ByodRegistrationDrugDO;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

import java.time.LocalDate;
import java.util.*;
import java.util.*;

import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;

import com.alibaba.excel.annotation.*;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.TIME_ZONE_DEFAULT;

@Schema(description = "管理后台 - 长者自带药登记 Response VO")
@Data
@ExcelIgnoreUnannotated
public class ByodRegistrationRespVO {

    @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1932")
    @ExcelProperty("主键ID")
    private Long id;

    @Schema(description = "长者ID", example = "9832")
    @ExcelProperty("长者ID")
    private Long elderId;

    @Schema(description = "长者名称")
    private String elderName;

    @Schema(description = "长者性别")
    private Integer elderSex;

    @Schema(description = "床位号")
    private String bedName;

    @Schema(description = "类型", example = "1")
    @ExcelProperty("类型")
    private Integer type;

    @Schema(description = "送药人姓名", example = "王五")
    @ExcelProperty("送药人姓名")
    private String deliveryPersonName;

    @Schema(description = "接收人姓名", example = "赵六")
    @ExcelProperty("接收人姓名")
    private String recipientName;

    @Schema(description = "登记时间")
    @ExcelProperty("登记时间")
    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY, timezone = TIME_ZONE_DEFAULT)
    private LocalDate registrationDate;

    @Schema(description = "备注")
    @ExcelProperty("备注")
    private String remarks;

    @Schema(description = "附件")
    @ExcelProperty("附件")
    private String files;

    @Schema(description = "创建时间")
    @ExcelProperty("创建时间")
    private LocalDateTime createdTime;

    @Schema(description = "创建人")
    @ExcelProperty("创建人")
    private String createdBy;

    @Schema(description = "药品列表")
    private List<ByodRegistrationDrugDO> drugList;

}