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

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.*;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.poi.ss.usermodel.HorizontalAlignment;

import java.util.Date;

@Data
@HeadStyle(horizontalAlignment = HorizontalAlignment.CENTER)
@HeadRowHeight(25)
@ContentStyle(horizontalAlignment = HorizontalAlignment.CENTER)
@ColumnWidth(12)
@ContentRowHeight(15)
@HeadFontStyle(fontHeightInPoints = 9)
@ExcelIgnoreUnannotated
public class SaasMatterRepairExcelVo {


    @ApiModelProperty(name = "repairNo", value = "报修单号")
    @ExcelProperty(value = {"报事报修表", "派工单号"}, index = 1)
    private String repairNo;

    @ApiModelProperty(name = "repairStatus", value = "报修状态(1:待受理 2:待派工 3:待处理 4:处理中 5:待确认 6:待回访 7:已关闭 8:已作废)")
    private Integer repairStatus;

    @ApiModelProperty(name = "repairStatusName", value = "报修状态名称")
    @ExcelProperty(value = {"报事报修表", "报修状态"}, index = 2)
    private String repairStatusName;

    @ApiModelProperty(name = "repairTypeId", value = "报修类型ID")
    private Long repairTypeId;

    @ApiModelProperty(name = "repairTypeName", value = "报修类型名称")
    @ExcelProperty(value = {"报事报修表", "报修类型"}, index = 3)
    private String repairTypeName;

    @ApiModelProperty(name = "workOrderNo", value = "工单单号")
    @ExcelProperty(value = {"报事报修表", "工单单号"}, index = 4)
    private String workOrderNo;

    @ApiModelProperty(name = "workOrderStatus", value = "工单状态(1:待开始 2:处理中 3:待确认 4:已关闭)")
    private Integer workOrderStatus;

    @ApiModelProperty(name = "workOrderStatusName", value = "工单状态名称")
    @ExcelProperty(value = {"报事报修表", "工单状态"}, index = 5)
    private String workOrderStatusName;

    @ApiModelProperty(name = "repairUserId", value = "报修人")
    private Long repairUserId;

    @ApiModelProperty(name = "repairUserName", value = "报修人")
    @ExcelProperty(value = {"报事报修表", "报修人"}, index = 6)
    private String repairUserName;

    @ApiModelProperty(name = "linkPhone", value = "联系电话")
    @ExcelProperty(value = {"报事报修表", "报修人电话"}, index = 7)
    private String linkPhone;

    @ApiModelProperty(name = "repairArea", value = "报修区域(1:户内 2:公区)")
    private Integer repairArea;
    @ApiModelProperty(name = "repairAreaName", value = "报修区域名称")
    @ExcelProperty(value = {"报事报修表", "报修区域名称"}, index = 8)
    private String repairAreaName;

    @ApiModelProperty(name = "repairTime", value = "报修时间")
    @ExcelProperty(value = {"报事报修表", "报修时间"}, index = 9)
    private Date repairTime;

    @ApiModelProperty(name = "appointTime", value = "预约时间")
    @ExcelProperty(value = {"报事报修表", "预约时间"}, index = 10)
    private Date appointTime;

    @ApiModelProperty(name = "projectId", value = "项目ID")
    private Long projectId;

    @ApiModelProperty(name = "projectName", value = "项目名称")
    @ExcelProperty(value = {"报事报修表", "项目"}, index = 11)
    private String projectName;

    @ApiModelProperty(name = "repairDetail", value = "报修详情")
    @ExcelProperty(value = {"报事报修表", "要求处理事项"}, index = 12)
    private String repairDetail;

    @ApiModelProperty(name = "handleResult", value = "处理结果(1:问题已解决 2:问题未解决 3:无需处理)")
    private Integer handleResult;
    @ApiModelProperty(name = "handleResultName", value = "处理结果名称")
    @ExcelProperty(value = {"报事报修表", "回单情况"}, index = 13)
    private String handleResultName;

    @ApiModelProperty(name = "confirmResult", value = "确认结果(1:驳回再处理 2:确认已完成并关闭工单 3:确认未完成并关闭工单)")
    private Integer confirmResult;
    @ApiModelProperty(name = "confirmResultName", value = "确认结果名称")
    @ExcelProperty(value = {"报事报修表", "确认结果"}, index = 14)
    private String confirmResultName;

    @ApiModelProperty(name = "backUserId", value = "回访人员")
    private Long backUserId;
    @ApiModelProperty(name = "backUserName", value = "回访人员")
    @ExcelProperty(value = {"报事报修表", "回访人员"}, index = 15)
    private String backUserName;

    @ApiModelProperty(name = "backTime", value = "回访时间")
    @ExcelProperty(value = {"报事报修表", "回访时间"}, index = 16)
    private Date backTime;

    @ApiModelProperty(name = "evaluateLevel", value = "评价等级(1:好评 2:中评 3:差评)")
    private Integer evaluateLevel;
    @ApiModelProperty(name = "evaluateLevelName", value = "评价等级名称")
    @ExcelProperty(value = {"报事报修表", "评价等级"}, index = 17)
    private String evaluateLevelName;


    @ApiModelProperty(name = "evaluateContent", value = "评价内容")
    @ExcelProperty(value = {"报事报修表", "评价内容"}, index = 18)
    private String evaluateContent;

    @ApiModelProperty(name = "appId", value = "应用ID")
    private Long appId;
    @ApiModelProperty(name = "appName", value = "应用名称")
    @ExcelProperty(value = {"报事报修表", "应用名称"}, index = 19)
    private String appName;

}
