package com.jsowell.pile.vo.zdl;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.List;

/**
 * 业务策略信息体VO
 *
 * @author Lemon
 * @Date 2024/1/3 16:24:51
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class EquipBusinessPolicyVO {
    /**
     * 业务策略查询流水号
     */
    @JsonProperty(value = "EquipBizSeq")
    private String equipBizSeq;

    /**
     * 充电设备接口编码
     */
    @JsonProperty(value = "ConnectorID")
    private String connectorId;

    /**
     * 操作结果
     * 0：成功
     * 1：失败
     */
    @JsonProperty(value = "SuccStat")
    private Integer succStat;

    /**
     * 失败原因
     * 0：无
     * 1：此充电桩业务策略不存在
     */
    @JsonProperty(value = "FailReason")
    private Integer failReason;

    /**
     * 时段数
     * 0-32
     */
    @JsonProperty(value = "SumPeriod")
    private Integer sumPeriod;

    /**
     * 计费信息
     */
    @JsonProperty(value = "PolicyInfos")
    private List<PolicyInfo> policyInfos;

    @Data
    public static class PolicyInfo {
        /**
         * 时段开始时间
         */
        @JsonProperty(value = "StartTime")
        private String startTime;

        /**
         * 电费
         * 保留小数点后四位
         */
        @JsonProperty(value = "ElecPrice")
        private BigDecimal elecPrice;

        /**
         * 服务费
         * 保留小数点后四位
         */
        @JsonProperty(value = "SevicePrice")
        private BigDecimal servicePrice;
    }
}
