package com.ltgk.catches.domain.vo;

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

import java.math.BigDecimal;
import java.time.LocalDate;

/**
 * @Author: wan kun
 * @Description: TODO
 * @Date: 2025/1/21 13:44
 * @Version: 1.0
 */
@Data
public class FishLimitEarlyVo {

    @JsonProperty(value = "id")
    @ApiModelProperty(value = "主键")
    private String id;

    @JsonProperty(value = "earlyType")
    @ApiModelProperty(value = "预警级别  1:渔船域名  2:整体预警  3:整体单一鱼获预警")
    private String earlyType;

    @JsonProperty(value = "logDate")
    @ApiModelProperty(value = "预警捕捞日期")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate logDate;

    @JsonProperty(value = "boatId")
    @ApiModelProperty(value = "预警触发船只id")
    private String boatId;

    @JsonProperty(value = "aquaticDictId")
    @ApiModelProperty(value = "预警触发水产字典表id")
    private String aquaticDictId;

    @JsonProperty(value = "aquaticName")
    @ApiModelProperty(value = "预警触发水产")
    private String aquaticName;

    @JsonProperty(value = "boatName")
    @ApiModelProperty(value = "预警触发船只名称")
    private String boatName;

    @ApiModelProperty(value = "限额数量 吨")
    @JsonProperty(value = "fishLimit")
    private Double fishLimit;

    @JsonProperty(value = "setId")
    @ApiModelProperty(value = "预警触发限额设置id")
    private String setId;

    @JsonProperty(value = "earlyWeight")
    @ApiModelProperty(value = "预警数量 吨")
    private BigDecimal earlyWeight;

    @JsonProperty(value = "handlePerson")
    @ApiModelProperty(value = "预警处理人员")
    private String handlePerson;

    @JsonProperty(value = "handlePhone")
    @ApiModelProperty(value = "预警处理人员手机号")
    private String handlePhone;

    @JsonProperty(value = "handleDate")
    @ApiModelProperty(value = "预警处理时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private String handleDate;

    @JsonProperty(value = "handleDesc")
    @ApiModelProperty(value = "核实情况")
    private String handleDesc;

    @JsonProperty(value = "handleResult")
    @ApiModelProperty(value = "处理结果")
    private String handleResult;

    @JsonProperty(value = "rationale")
    @ApiModelProperty(value = "原由")
    private String rationale;

    @JsonProperty(value = "beHandle")
    @ApiModelProperty(value = "是否处理 0 - 未处理，1 - 已处理")
    private Integer beHandle;
}
