package com.yuchen.saas.park.api.vo.pldoor;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.*;
import com.yuchen.saas.park.api.entity.pldoor.PlPropertyPassImg;
import com.yuchen.saas.park.api.entity.pldoor.PlPropertyPassObject;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.poi.ss.usermodel.HorizontalAlignment;

import java.util.Date;
import java.util.List;

/**
 * @ClassName PlPropertyPassVO
 * @Description TODO
 * @Author mqs
 * @Date 2024/7/3 10:54
 * @Version 1.0
 */
@Data
@HeadStyle(horizontalAlignment = HorizontalAlignment.CENTER)
@HeadRowHeight(25)
@ContentStyle(horizontalAlignment = HorizontalAlignment.CENTER)
@ColumnWidth(12)
@ContentRowHeight(15)
@HeadFontStyle(fontHeightInPoints = 9)
@ExcelIgnoreUnannotated
public class PlPropertyPassVO {

    @ApiModelProperty(name = "id", value = "主键")
    private Long id;
    /**
     * 项目
     */
    //@ExcelProperty(value = {"物品放行", "项目"}, index = 1)
    @ApiModelProperty(name = "parkId", value = "项目")
    private Long parkId;

    @ExcelProperty(value = {"物品放行", "项目名称"}, index = 1)
    @ApiModelProperty(name = "parkName", value = "项目名称")
    private String parkName;
    /**
     * 楼栋
     */
    //@ExcelProperty(value = {"物品放行", "楼栋"}, index = 2)
    @ApiModelProperty(name = "buildingId", value = "楼栋")
    private Long buildingId;
    /**
     * 单元
     */
    //@ExcelProperty(value = {"物品放行", "单元"}, index = 3)
    @ApiModelProperty(name = "elementId", value = "单元")
    private Long elementId;
    /**
     * 房号
     */
    //@ExcelProperty(value = {"物品放行", "房号"}, index = 4)
    @ApiModelProperty(name = "roomNumberId", value = "房号")
    private Long roomNumberId;

    @ExcelProperty(value = {"物品放行", "房屋地址"}, index = 2)
    @ApiModelProperty(name = "roomAdress", value = "房屋地址")
    private String roomAdress;
    /**
     * 出行人
     */
    @ExcelProperty(value = {"物品放行", "出行人"}, index = 3)
    @ApiModelProperty(name = "passer", value = "出行人")
    private String passer;
    /**
     * 手机号码
     */
    @ExcelProperty(value = {"物品放行", "手机号码"}, index = 4)
    @ApiModelProperty(name = "passerPhone", value = "手机号码")
    private String passerPhone;
    /**
     * 放行开始时间
     */
    @ApiModelProperty(name = "passStartTime", value = "放行开始时间")
    private Date passStartTime;
    /**
     * 放行结束时间
     */
    @ApiModelProperty(name = "passEndTime", value = "放行结束时间")
    private Date passEndTime;
    /**
     * 放行时间
     */
    @ExcelProperty(value = {"物品放行", "放行时间"}, index = 5)
    @ApiModelProperty(name = "passedTime", value = "放行时间")
    private Date passedTime;
    /**
     * 物品数量
     */
    @ExcelProperty(value = {"物品放行", "物品数量"}, index = 6)
    private int objectNum;
    /**
     * 登记时间
     */
    @ExcelProperty(value = {"物品放行", "登记时间"}, index = 7)
    @ApiModelProperty(name = "checkInTime", value = "登记时间")
    private Date checkInTime;
    /**
     * 审核状态 0:待审核;1:审核通过;2:审核不通过
     */
    @ApiModelProperty(name = "auditState", value = "审核状态 0:待审核;1:审核通过;2:审核不通过;3:取消;")
    private String auditState;

    @ExcelProperty(value = {"物品放行", "审核状态"}, index = 8)
    @ApiModelProperty(name = "auditStateStr", value = "审核状态 0:待审核;1:审核通过;2:审核不通过;3:取消;")
    private String auditStateStr;
    /**
     * 审核人
     */
    @ExcelProperty(value = {"物品放行", "审核人"}, index = 9)
    @ApiModelProperty(name = "auditUser", value = "审核人")
    private String auditUser;

    /**
     * 审核时间
     */
    @ExcelProperty(value = {"物品放行", "审核时间"}, index = 10)
    @ApiModelProperty(name = "auditTime", value = "审核时间")
    private Date auditTime;
    /**
     * 审核说明
     */
    @ApiModelProperty(name = "auditRemark", value = "审核说明")
    private String auditRemark;
    /**
     * 备注
     */
    @ApiModelProperty(name = "remark", value = "备注")
    private String remark;

    @ApiModelProperty(name = "propertyPassQrcode", value = "二维码")
    private String propertyPassQrcode;


    /**
     * 放行图片
     */
    private List<PlPropertyPassImg> PlPropertyPassImgList;
    /**
     * 放行物品数量
     */
    private List<PlPropertyPassObject> PlPropertyPassObjectList;
}
