package org.eco.als.domain.vo;

import org.eco.als.domain.WarningResult;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.eco.common.excel.annotation.ExcelDictFormat;
import org.eco.common.excel.convert.ExcelDictConvert;
import com.eco.common.mapper.constant.MapperConstant;
import com.eco.common.mapper.annotation.FieldMapper;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.io.Serializable;
import org.eco.common.orm.core.domain.BaseEntity;

/**
 * 警告结果视图对象 als_warning_result_t
 *
 * @author wgk
 * @date 2025-02-27
 */
@Data
@ExcelIgnoreUnannotated
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = WarningResult.class)
public class WarningResultVo extends BaseEntity implements Serializable {

@Serial
private static final long serialVersionUID = 1L;

    /** 编号 */
    @ExcelProperty(value = "编号")
    private Long id;

    /** 架次号 */
    @ExcelProperty(value = "架次号")
    private String sortieNo;

    /** 机号 */
    @ExcelProperty(value = "机号")
    private String aircraftId;

    /** 警告代码 */
    @ExcelProperty(value = "警告代码")
    private String code;

    /** 警告名称 */
    @ExcelProperty(value = "警告名称")
    private String name;

    /** hmc */
    @ExcelProperty(value = "hmc")
    private String hmc;

    /** 警告描述 */
    @ExcelProperty(value = "警告描述")
    private String describe;

    /** 状态（1正常） */
    @ExcelProperty(value = "状态", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "1=正常")
    private String status;

    /** 结果内容 */
    @ExcelProperty(value = "结果内容")
    private String resultContent;

    /** 属性1 */
    @ExcelProperty(value = "属性1")
    private String attribute1;

    /** 属性2 */
    @ExcelProperty(value = "属性2")
    private String attribute2;

    /** 属性3 */
    @ExcelProperty(value = "属性3")
    private String attribute3;

    /** 属性4 */
    @ExcelProperty(value = "属性4")
    private String attribute4;

    /** 属性5 */
    @ExcelProperty(value = "属性5")
    private String attribute5;

    /** 删除标识（1删除 0未删除） */
    @ExcelProperty(value = "删除标识（1删除 0未删除）")
    private Integer delFlag;


    /**
     * 创建人名称
     */
    @FieldMapper(type = MapperConstant.USER_ID_TO_NAME, mapper = "createBy")
    private String createByName;

    /**
     * 创建人名称
     */
    @FieldMapper(type = MapperConstant.USER_ID_TO_NAME, mapper = "updateBy")
    private String updateByName;

}
