package com.aidex.common.plush.domain;

import javax.validation.constraints.NotBlank;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.aidex.common.utils.log.annotation.FieldRemark;
import com.aidex.common.utils.log.annotation.LogField;
import com.aidex.common.annotation.Excel;

/**
 * 船只信息扩展（查询站点数据使用）对象 sys_ship_extend
 * @author shs
 * @email shs@woshs.com
 * @date 2024-03-27
 */
@Data
public class SysShipExtend
{
    private static final long serialVersionUID = 1L;

    /** 船只Id */
    @Excel(name = "船只Id")
    @NotBlank(message = "船只Id不允许为空")
    @LogField
    @FieldRemark(name = "船只Id",field = "shipId")
    private String shipId;

    /** 设备MacId */
    @Excel(name = "设备MacId")
    @NotBlank(message = "设备MacId不允许为空")
    @LogField
    @FieldRemark(name = "设备MacId",field = "macId")
    private String macId;

    /** 船只运行速度 */
    @Excel(name = "船只运行速度")
    @LogField
    @FieldRemark(name = "船只运行速度",field = "speed")
    private String speed;

    /** 船只是否停靠(0:未停靠；1已停靠) */
    @Excel(name = "船只是否停靠(0:未停靠；1已停靠)")
    @LogField
    @FieldRemark(name = "船只是否停靠(0:未停靠；1已停靠)",field = "isStop")
    private Long isStop;

    /** 船只方位（默认从西到东） */
    @Excel(name = "船只方位")
    @LogField
    @FieldRemark(name = "船只方位",field = "dir")
    private String dir;

    /** 预计到达站点 */
    @Excel(name = "预计到达站点")
    @LogField
    @FieldRemark(name = "预计到达站点",field = "nextWharf")
    private String nextWharf;

    /** 停靠的站点 */
    @Excel(name = "停靠的站点")
    @LogField
    @FieldRemark(name = "停靠的站点",field = "wharfStop")
    private String wharfStop;

    /** 纬度（默认停靠名城广场码头） */
    @LogField
    @FieldRemark(name = "纬度",field = "lat")
    private String lat;

    /** 经度（默认停靠名城广场码头） */
    @LogField
    @FieldRemark(name = "经度",field = "lon")
    private String lon;

    /** 船只行驶里程 */
    @LogField
    @FieldRemark(name = "船只行驶里程",field = "mileage")
    private String mileage;

    /** 船只行驶方向（1正向，2反向） */
    @LogField
    @FieldRemark(name = "船只行驶方向",field = "travel")
    private Long travel;

    private String id;
    private String delFlag;

    private Long updateTime;



    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("shipId", getShipId())
            .append("macId", getMacId())
            .append("speed", getSpeed())
            .append("isStop", getIsStop())
            .append("dir", getDir())
            .append("nextWharf", getNextWharf())
            .append("wharfStop", getWharfStop())
            .append("lat", getLat())
            .append("lon", getLon())
            .append("mileage", getMileage())
            .append("travel", getTravel())
            .append("id", getId())
            .append("delFlag", getDelFlag())
            .append("updateTime",getUpdateTime())
            .toString();
    }
}
