package com.goomood.phm.domain;

import java.sql.Time;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.goomood.common.annotation.Excel;
import lombok.Data;

import java.io.Serializable;

/**
 * 故障监控对象 fault_monitor
 */
@Data
@TableName("fault_monitor")
public class FaultMonitorA  implements Serializable {

    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** 日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date incidentDate;

    /** 战区 */
    @Excel(name = "战区")
    private String militaryRegion;

    /** 军 */
    @Excel(name = "军")
    private String army;

    /** 师 */
    @Excel(name = "师")
    private String division;

    /** 团 */
    @Excel(name = "团")
    private String regiment;

    /** 中队 */
    @Excel(name = "中队")
    private String squadron;

    /** 飞机号 */
    @Excel(name = "飞机号")
    private String aircraftNo;

    /** 机型 */
    @Excel(name = "机型")
    private String aircraftType;

    /** 出厂号码 */
    @Excel(name = "出厂号码")
    private String factoryNo;

    /** 机件类型 */
    @Excel(name = "机件类型")
    private String partCategory;

    /** 机件号 */
    @Excel(name = "机件号")
    private String partNo;

    /** 机件型别 */
    @Excel(name = "机件型别")
    private String partModel;

    /** 机件名称 */
    @Excel(name = "机件名称")
    private String partName;

    /** 起落 */
    @Excel(name = "起落")
    private Long landingCount;

    /** 专业 */
    @Excel(name = "专业")
    private String specialty;

    /** 故障件名称 */
    @Excel(name = "故障件名称")
    private String faultyPartName;

    /** 故障件型别 */
    @Excel(name = "故障件型别")
    private String faultyPartModel;

    /** 故障件号码 */
    @Excel(name = "故障件号码")
    private String faultyPartNo;

    /** 故障件所属发动机型别 */
    @Excel(name = "故障件所属发动机型别")
    private String engineType;

    /** 故障件所属发动机号码 */
    @Excel(name = "故障件所属发动机号码")
    private String engineNo;

    /** 故障件所属发动机序号 */
    @Excel(name = "故障件所属发动机序号")
    private String engineSerialNo;

    /** 故障件位置 */
    @Excel(name = "故障件位置")
    private String faultLocation;

    /** 故障现象 */
    @Excel(name = "故障现象")
    private String faultDescription;

    /** 故障发生地点 */
    @Excel(name = "故障发生地点")
    private String faultLocationSite;

    /** 发现时机 */
    @Excel(name = "发现时机")
    private String detectionTiming;

    /** 系统 */
    @Excel(name = "系统")
    private String useSystem;

    /** 计时类型 */
    @Excel(name = "计时类型")
    private String timingType;

    /** 故障件制造厂 */
    @Excel(name = "故障件制造厂")
    private String manufacturer;

    /** 故障件翻修厂 */
    @Excel(name = "故障件翻修厂")
    private String repairFacility;

    /** 故障件装本机工作时次 */

    @JsonFormat(pattern = "HH:mm:ss")
    @Excel(name = "故障件装本机工作时次", width = 30, dateFormat = "HH:mm:ss")
    private Time workHoursCurrent;

    /** 故障件总工作时次 */
    @JsonFormat(pattern = "HH:mm:ss")
    @Excel(name = "故障件总工作时次", width = 30, dateFormat = "HH:mm:ss")
    private Time workHoursTotal;

    /** 故障件修后时次 */
    @JsonFormat(pattern = "HH:mm:ss")
    @Excel(name = "故障件修后时次", width = 30, dateFormat = "HH:mm:ss")
    private Time workHoursAfterRepair;

    /** 故换件型别 */
    @Excel(name = "故换件型别")
    private String replacementPartModel;

    /** 故换件号码 */
    @Excel(name = "故换件号码")
    private String replacementPartNo;

    /** 故换件制造厂 */
    @Excel(name = "故换件制造厂")
    private String replacementManufacturer;

    /** 故换件总工作时次 */
    @JsonFormat(pattern = "HH:mm:ss")
    @Excel(name = "故换件总工作时次", width = 30, dateFormat = "HH:mm:ss")
    private Time replacementWorkHoursTotal;

    /** 故换件翻修厂 */
    @Excel(name = "故换件翻修厂")
    private String replacementRepairFacility;

    /** 故换件修后时次 */
    @JsonFormat(pattern = "HH:mm:ss")
    @Excel(name = "故换件修后时次", width = 30, dateFormat = "HH:mm:ss")
    private Time replacementHoursAfterRepair;

    /** 故障失常码 */
    @Excel(name = "故障失常码")
    private String faultCode;

    /** 故障件装机日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "故障件装机日期", width = 30, dateFormat = "yyyy-MM-dd")

    private Date installationDate;

    /** 故障原因 */
    @Excel(name = "故障原因")
    private String faultCause;

    /** 故障性质 */
    @Excel(name = "故障性质")
    private String faultNature;

    /** 故障责任 */
    @Excel(name = "故障责任")
    private String faultResponsibility;

    /** 故障后果 */
    @Excel(name = "故障后果")
    private String faultConsequence;

    /** 处理意见 */
    @Excel(name = "处理意见")
    private String handlingSuggestion;

    /** 影响次数 */
    @Excel(name = "影响次数")
    private Long impactCount;

    /** 误飞次数 */
    @Excel(name = "误飞次数")
    private Long missedFlightCount;

    /** 判明方法 */
    @Excel(name = "判明方法")
    private String detectionMethod;

    /** 发现人 */
    @Excel(name = "发现人")
    private String discoverer;

    /** 排除方法 */
    @Excel(name = "排除方法")
    private String resolutionMethod;

    /** 排故人 */
    @Excel(name = "排故人")
    private String maintainer;

    /** 审核人 */
    @Excel(name = "审核人")
    private String reviewer;

    /** 审核时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date reviewTime;

    /** 排除日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "排除日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date resolutionDate;

    /** 排故工时 */
    @JsonFormat(pattern = "HH:mm:ss")
    @Excel(name = "排故工时", width = 30, dateFormat = "HH:mm:ss")
    private Time maintenanceHours;

    /** 排故人数 */
    @Excel(name = "排故人数")
    private Long maintenanceStaffCount;

    /** 排故时间 */
    @JsonFormat(pattern = "HH:mm:ss")
    @Excel(name = "排故时间", width = 30, dateFormat = "HH:mm:ss")
    private Time maintenanceTime;

    /** 是否立功 */
    @Excel(name = "是否立功", readConverterExp = "fault_yes=是,fault_no=否")
    private String meritAwarded;

    /** 需要试飞 */
    @Excel(name = "需要试飞", readConverterExp = "fault_yes=是,fault_no=否")
    private String testFlightRequired;

    /** 备注 */
    @Excel(name = "备注")
    private String remarks;

    /** 文件路径 */
    private String filePath;

    /** 监控状态 */
    @Excel(name = "监控状态")
    private String status;
    /** 创建者 */
    private String createBy;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /** 更新者 */
    private String updateBy;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

}    