package com.jojubanking.boot.module.system.controller.admin.student.vo;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.metadata.data.WriteCellData;
import com.jojubanking.boot.framework.excel.core.annotations.DictFormat;
import com.jojubanking.boot.framework.excel.core.convert.DictConvert;
import com.jojubanking.boot.module.system.enums.DictTypeConstants;
import lombok.*;
import java.util.*;
import io.swagger.annotations.*;

import com.alibaba.excel.annotation.ExcelProperty;

/**
 * 学生信息 Excel VO
 *
 * @author admin
 */
@Data
@ContentRowHeight(value = 150)
public class StudentExcelVO {

//    @ExcelProperty("用户ID")
    @ExcelIgnore
    private Long id;

//    @ExcelProperty("家长openid")
    @ExcelIgnore
    private String openid;

//    @ExcelProperty("病人唯一标识")
    @ExcelProperty(value ={"${bigHead}","就诊ID"},index = 0)
    @ColumnWidth(value = 15)
    private String patid;

//    @ExcelProperty("姓名")
    @ExcelProperty(value ={"${bigHead}","姓名"},index = 3)
    @ColumnWidth(value = 20)
    private String name;

    @ExcelProperty(value ={"${bigHead}","性别"},index = 4, converter = DictConvert.class)
    @DictFormat(DictTypeConstants.USER_SEX)
    @ColumnWidth(value = 10)
    private Integer sex;

    @ExcelProperty(value ={"${bigHead}","年龄"},index = 5)
    @ColumnWidth(value = 10)
    private Long age;

    @ExcelProperty(value ={"${bigHead}","身份证号"},index = 6)
    @ColumnWidth(value = 20)
    private String nationId;

    //    @ExcelProperty("班级ID")
    @ExcelIgnore
    private Long deptId;

    @ExcelProperty(value ={"${bigHead}","部门"},index = 2)
    @ColumnWidth(value = 15)
    private String className;

    @ExcelProperty(value ={"${bigHead}","单位"},index = 1)
    @ColumnWidth(value = 20)
    private String schoolName;

    @ExcelProperty(value ={"${bigHead}","民族"},index = 7)
    @ColumnWidth(value = 10)
    private String sqName;

//    @ExcelProperty("街道名称")
    @ExcelIgnore
    private String jdName;

//    @ExcelProperty("用户邮箱")
    @ExcelIgnore
    private String email;

//    @ExcelProperty("手机号码")
    @ExcelIgnore
    private String mobile;

//    @ExcelProperty("备注")
    @ExcelIgnore
    private String remark;

//    @ExcelProperty("帐号状态（0正常 1停用）")
    @ExcelIgnore
    private Integer status;

//    @ExcelProperty("创建时间")
    @ExcelIgnore
    private Date createTime;

    @ExcelProperty(value ={"${bigHead}","乙肝两对半"},index = 8)
    @ColumnWidth(value = 40)
    private String tjpkgmx;

    @ExcelProperty(value ={"${bigHead}","乙肝两对半总额(元)"},index = 9)
    @ColumnWidth(value = 25)
    private String tjpkgfee;

    @ExcelProperty(value ={"${bigHead}","可选项目"},index = 10)
    @ColumnWidth(value = 80)
    private String tjkxmx;

    @ExcelProperty(value ={"${bigHead}","可选项目总额(元)"},index = 11)
    @ColumnWidth(value = 20)
    private String tjkxfee;

//    @ExcelProperty(value ={"${bigHead}","体检订单号"},index = 11)
//    @ColumnWidth(value = 10)
    @ExcelIgnore
    private String orderno;

    @ExcelIgnore
    private byte[] tjQrcode;

    @ExcelProperty(value ={"${bigHead}","缴费标识"},index = 12, converter = DictConvert.class)
    @DictFormat(DictTypeConstants.FEE_FLAG)
    @ColumnWidth(value = 15)
    private Integer feeflag;

    @ExcelProperty(value ={"${bigHead}","体检二维码"},index = 13)
    @ColumnWidth(value = 40)
    private WriteCellData<Void> writeCellDataFile;

}
