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

import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat;
import cn.iocoder.yudao.framework.excel.core.convert.DictConvert;
import cn.iocoder.yudao.module.system.convert.excel.LocalDateConvert;
import cn.iocoder.yudao.module.system.enums.DictTypeConstants;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

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

/**
 * 长者账单导出VO
 *
 * @author 系统管理员
 */
@Data
public class ElderlyContractInfoExportExcelVO {

    @ExcelProperty("序号")
    private Integer num;

    @ExcelProperty("档案号")
    private String fileNumber;

    @ExcelProperty("长者姓名")
    private String elderName;

    @ExcelProperty(value = "长者性别", converter = DictConvert.class)
    @DictFormat(DictTypeConstants.USER_SEX)
    private Integer elderSex;

    @ExcelProperty("年龄")
    private Integer elderAge;

    @ExcelProperty("出生日期")
    private Date birthday;

    @ExcelProperty(value = "证件类型", converter = DictConvert.class)
    @DictFormat(DictTypeConstants.PAPERS_TYPE)
    private String papersType;

    @ExcelProperty("证件号码")
    private String idCard;

    @ExcelProperty(value = "长者标签", converter = DictConvert.class)
    @DictFormat(DictTypeConstants.ELDERLY_TAB)
    private String elderTags;

    @ExcelProperty(value = "是否包房", converter = DictConvert.class)
    @DictFormat(DictTypeConstants.COMMON_STATUS6)
    private Integer isPrivateRoom;


    //=============合同信息===============//
    @ExcelProperty("合同号")
    private String contractNumber;

    @ExcelProperty("合同开始日期")
    private Date beginTime;

    @ExcelProperty("合同截止时间")
    private Date expireTime;

    @ExcelProperty("合同年限")
    private String contractTerm;


    //=============费用信息===============//
    @ExcelProperty("护理等级")
    private String nursingLevelName;

    @ExcelProperty("护理费")
    private BigDecimal nurseAmount;

    @ExcelProperty("床位号")
    private String bedName;

    @ExcelProperty("床位类型")
    private String bedItemName;

    @ExcelProperty("床位费")
    private BigDecimal bedAmount;


    @ExcelProperty("餐饮标准")
    private String mealItemName;

    @ExcelProperty("餐饮费")
    private BigDecimal mealAmount;


    //============评估信息===============//
    @ExcelProperty(value = "评估时间")
    private Date evaluatorDate;

    @ExcelProperty("评估结果")
    private String syntheticAbilityResult;


}