package com.artfess.rescue.external.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;

/**
 * @Author: wsf
 * @Description: 阳光救援申请登记Model
 * @DateTime: 2025/4/17 11:15
 **/

@Data
@ApiModel(value = "SunshineRescueInfo", description = "阳光救援申请登记参数")
@JsonIgnoreProperties(ignoreUnknown = true)
public class SunshineRescueInfo {

    @ApiModelProperty(value = "故障车车牌", required = true)
    private String caseCarNum;

    @ApiModelProperty(value = "故障车车牌颜色", required = true)
    private String caseCarCoclor;

    @ApiModelProperty(value = "故障车车型", required = true)
    private String caseCarType;

    @ApiModelProperty(value = "故障车重量")
    private Long caeCarWeight;

    @ApiModelProperty(value = "报案电话", required = true)
    private String caseTel;

    @ApiModelProperty(value = "报案时间 yyyy-MM-dd HH:mm:ss", required = true)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date caseHappenTime;

    @ApiModelProperty(value = "事故纬度（gcj02）", required = true)
    private Double caseLat;

    @ApiModelProperty(value = "事故经度（gcj02）", required = true)
    private Double caseLng;

    @ApiModelProperty(value = "定位来源", required = true)
    private Long caseSource;

    @ApiModelProperty(value = "报案桩号KM")
    private String casePileKm;

    @ApiModelProperty(value = "报案桩号M")
    private String casePileM;

    @ApiModelProperty(value = "车主账号信息")
    private String caseId;

    @ApiModelProperty(value = "报案地址")
    private String caseAddress;

    @ApiModelProperty(value = "方向")
    private String direction;

    @ApiModelProperty(value = "占道情况（多选，逗号分隔）")
    private String jeeves;

    @ApiModelProperty(value = "用户期望目的地经度")
    private Double caseDestinationLng;

    @ApiModelProperty(value = "用户期望目的地纬度")
    private Double caseDestinationLat;

    @ApiModelProperty(value = "是否拥堵")
    private Long isCongestion;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "完整桩号")
    private String stake;

    @ApiModelProperty(value = "救援序号", required = true)
    private String pushId;
}