package com.ltgk.catches.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.Date;
import java.util.List;

/**
 * @Author: wan kun
 * @Description: TODO
 * @Date: 2025/1/20 17:37
 * @Version: 1.0
 */
@Data
public class FishLogNetVo {
    /**
     * 主键
     */
    @JsonProperty(value = "id")
    @ApiModelProperty(value = "主键")
    private String id;

    /**
     * 捕捞日志id
     */
    @JsonProperty(value = "logId")
    @ApiModelProperty(value = "捕捞日志id")
    private String logId;

    /**
     * 网序序号
     */
    @JsonProperty(value = "netNum")
    @ApiModelProperty(value = "网序序号")
    private Integer netNum;

    /**
     * 放网时间
     */
    @JsonProperty(value = "putNetTime")
    @ApiModelProperty(value = "放网时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date putNetTime;

    /**
     * 起网时间
     */
    @JsonProperty(value = "riseNetTime")
    @ApiModelProperty(value = "起网时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date riseNetTime;

    /**
     * 放网经度
     */
    @JsonProperty(value = "putNetLongitude")
    @ApiModelProperty(value = "放网经度")
    private BigDecimal putNetLongitude;

    /**
     * 放网纬度
     */
    @JsonProperty(value = "putNetLatitude")
    @ApiModelProperty(value = "放网纬度")
    private BigDecimal putNetLatitude;

    /**
     * 起网经度
     */
    @JsonProperty(value = "riseNetLongitude")
    @ApiModelProperty(value = "起网经度")
    private BigDecimal riseNetLongitude;

    /**
     * 放网纬度
     */
    @JsonProperty(value = "riseNetLatitude")
    @ApiModelProperty(value = "放网纬度")
    private BigDecimal riseNetLatitude;

    /**
     * 网次产量 kg
     */
    @JsonProperty(value = "netYield")
    @ApiModelProperty(value = "网次产量 kg")
    private BigDecimal netYield;

    /**
     * 网次产量详情
     */
    @JsonProperty(value = "netYieldDetails")
    @ApiModelProperty(value = "网次产量详情")
    private String netYieldDetails;
    /**
     * 捕捞日志日期
     */
    @JsonProperty(value = "date")
    @ApiModelProperty(value = "捕捞日志日期")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate date;

    @JsonProperty(value = "netYieldList")
    @ApiModelProperty(value = "网次产量详情列表")
    private List<FishLogNetYieldVo> netYieldList;
}
