package com.jsowell.pile.domain.ykcCommond;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.time.LocalTime;
import java.util.Date;

/**
 * 预约充电指令
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class ReservationChargingCommand {
    /**
     * 交易流水号
     */
    private String transactionCode;

    /**
     * 充电桩编号
     */
    private String pileSn;

    /**
     * 枪口号
     */
    private String connectorCode;

    /**
     * 操作
     *  0x01:启动 0x02:取消 0x03:修改
     */
    private String operation;

    /**
     * 预约类型
     * 0x00:单次0x01:周期
     */
    private String reservationType;

    /**
     * vin1
     */
    private String vin1;

    /**
     * vin2
     */
    private String vin2;

    /**
     * vin3
     */
    private String vin3;

    /**
     * 开始时间
     * 2024年6月28日15点21分 改为时分秒
     */
    // @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    // @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    // private Date reservedStartTime;
    private LocalTime reservedStartTime;

    /**
     * 结束时间
     * 2024年6月28日15点21分 改为时分秒
     */
    // @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    // @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    // private Date reservedEndTime;
    private LocalTime reservedEndTime;

    /**
     * 启动金额
     */
    private BigDecimal amount;
}
