package org.jeecg.modules.newWarning.common;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.modules.newWarning.entity.TabQi;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.List;

@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class WarningCatch implements Serializable {

    /**
     * 井号
     */
    private String jh;

    /**
     * 正常柱数组
     */
    private List<TabQi> normalList;

    /**
     * 当前柱数组
     */
    private List<TabQi> nowList;

    /**
     * 是否开始记录正常柱数据
     */
    private Boolean isStartRecord;

    /**
     * 是否开始记录计算柱数据
     */
    private Boolean isStartRecordNowList;

    /***
     * 记录柱数据状态:0:第一柱开始添加 1:第一柱添加结束 2:第二柱开始添加 3:第二柱添加结束 4:监测预警数据
     */
    private Integer recordDataStatus;
    /**
     * 当前柱是否为正常柱
     */
    private Boolean nowIsNormal;

    /**
     * 正常柱与最新点间隔柱数量
     */
    private Integer normaNum;

    /**
     * 正常柱大钩最低位置
     */
    private Float minhkh;

    /**
     * 正常柱大钩最高位置
     */
    private Float maxhkh;
    /**
     * 当前井筒状态
     * 4:起钻 8下钻
     */
    private Integer status;

    /**
     * 大钩位置变化趋势
     */
    private Integer trend;

    /**
     * 当前工况起点时间
     */
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private java.util.Date startTime;

    /**
     * 上提摩阻
     */
    private Float upperFriction;

    /**
     * 下方摩阻
     */
    private Float belowFriction;

    /**
     * 正常点钩载最值
     */
    private Double mostWoh;

    /**
     * 当前点是否正常
     */
    private  Boolean isNormal;

    /**
     * 异常点
     */
    private  TabQi outlier;

    /**
     * 空钩载
     */
    private Float  emptyWoh;

    /**
     * 非空钩载
     */
    private Float notEmptyWoh;
}
