package com.zcloud.accident.dto.clientobject;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 事故导出客户端对象
 * 用于Excel导出
 */
@Data
public class AccidentExportCO {

    @ApiModelProperty(value = "所属公司")
    @ExcelProperty(value = "所属公司", index = 0)
    @ColumnWidth(20)
    private String corpinfoName;

    @ApiModelProperty(value = "事故案号")
    @ExcelProperty(value = "事故案号", index = 1)
    @ColumnWidth(20)
    private String incidentNumber;

    @ApiModelProperty(value = "事故名称")
    @ExcelProperty(value = "事故名称", index = 2)
    @ColumnWidth(20)
    private String incidentName;

    @ApiModelProperty(value = "事故类型")
    @ExcelProperty(value = "事故类型", index = 3)
    @ColumnWidth(20)
    private String incidentTypeName;

    @ApiModelProperty(value = "事故级别")
    @ExcelProperty(value = "事故级别", index = 4)
    @ColumnWidth(20)
    private String incidentLevelName;

    @ApiModelProperty(value = "事故发生地点")
    @ExcelProperty(value = "事故发生地点", index = 5)
    @ColumnWidth(20)
    private String location;

    @ApiModelProperty(value = "事故发生时间")
    @DateTimeFormat("yyyy-MM-dd HH:mm:ss")
    @ExcelProperty(value = "事故发生时间", index = 6)
    @ColumnWidth(20)
    private LocalDateTime incidentDate;

    @ApiModelProperty(value = "直接经济损失（万元）")
    @ExcelProperty(value = "直接经济损失（万元）", index = 7)
    @ColumnWidth(20)
    private BigDecimal directLoss;

    @ApiModelProperty(value = "受伤人数")
    @ExcelProperty(value = "受伤人数", index = 8)
    @ColumnWidth(20)
    private Integer injured;

    @ApiModelProperty(value = "死亡人数")
    @ExcelProperty(value = "死亡人数", index = 9)
    @ColumnWidth(20)
    private Integer fatalities;

    @ApiModelProperty(value = "重伤人数")
    @ExcelProperty(value = "重伤人数", index = 10)
    @ColumnWidth(20)
    private Integer seriouslyInjured;

    @ApiModelProperty(value = "事故起因")
    @ExcelProperty(value = "事故起因", index = 11)
    @ColumnWidth(20)
    private String cause;

    @ApiModelProperty(value = "事故概述")
    @ExcelProperty(value = "事故概述", index = 12)
    @ColumnWidth(20)
    private String summary;

    @ApiModelProperty(value = "原因分析及责任认定")
    @ExcelProperty(value = "原因分析及责任认定", index = 13)
    @ColumnWidth(20)
    private String analysis;

    @ApiModelProperty(value = "考核建议")
    @ExcelProperty(value = "考核建议", index = 14)
    @ColumnWidth(20)
    private String suggestions;

    @ApiModelProperty(value = "整改措施")
    @ExcelProperty(value = "整改措施", index = 15)
    @ColumnWidth(20)
    private String measures;

    @ApiModelProperty(value = "填报人")
    @ExcelProperty(value = "填报人", index = 16)
    @ColumnWidth(20)
    private String reportUser;

    @ApiModelProperty(value = "报出日期")
    @ExcelProperty(value = "报出日期", index = 17)
    @ColumnWidth(20)
    @DateTimeFormat("yyyy-MM-dd HH:mm:ss")
    private LocalDateTime reportDate;

}
