package com.ltgk.boat.domain.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.ltgk.common.core.page.BasePage;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;

/**
 * 渔船进出港记录（数据来自船位动态监控）对象 ds_enter_out_port
 *
 * @author Qi ChengBin
 * @date 2024-12-19
 */
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "渔船进出港记录（数据来自船位动态监控）对象", description = "渔船进出港记录（数据来自船位动态监控）表")
public class DsEnterOutPortDTO extends BasePage {

    @ApiModelProperty(value = "渔船进出港记录主键")
    private String id;

    @ApiModelProperty(value = "船名号")
    private String boatName;

    @ApiModelProperty(value = "进出港类型：0进港/1出港")
    private Integer entryDir;

    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @ApiModelProperty(value = "进出港时间")
    private Date enterOutTime;

    @ApiModelProperty(value = "渔港名称")
    private String portName;

    @ApiModelProperty(value = "渔船标识")
    private String shipFlag;

    @ApiModelProperty(value = "设备类型")
    private String deviceType;

    @ApiModelProperty(value = "设备编码")
    private String deviceCode;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createAt;

    @ApiModelProperty(value = "行政区域编码")
    private String areaCoed;

    @ApiModelProperty(value = "行政区域名称")
    private String areaName;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "开始时间")
    private String startTime;

    @ApiModelProperty(value = "结束时间")
    private String endTime;

    @ApiModelProperty(value = "是不是本地渔船 0本地 1外地")
    @JsonProperty("is_local")
    private Integer isLocal = 0;

    @ApiModelProperty(value = "是否有渔船名")
    @JsonProperty("beHaveBoatName")
    private Integer beHaveBoatName;
}
