package com.jsowell.pile.domain;

import java.math.BigDecimal;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import lombok.experimental.SuperBuilder;

/**
    * 个人充电桩的充电记录
    */
@Data
@Accessors(chain = true)
@SuperBuilder
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class PersonalChargingRecord {
    /**
    * 主键
    */
    private Integer id;

    /**
    * 交易流水号
    */
    private String transactionCode;

    /**
    * 订单状态(0-未启动；1-充电中；2-待结算；3-待补缴；4-异常；5-可疑；6-订单完成；7-超时关闭)
    */
    private String status;

    /**
    * 会员id
    */
    private String memberId;

    /**
    * 站点id
    */
    private String stationId;

    /**
    * 运营商id
    */
    private String merchantId;

    /**
    * 充电桩sn
    */
    private String pileSn;

    /**
    * 充电桩枪口号
    */
    private String connectorCode;

    /**
    * 充电桩枪口编号
    */
    private String pileConnectorCode;

    /**
    * 卡启动时的卡号
    */
    private String logicCard;

    /**
    * vin启动时的vin码
    */
    private String vinCode;

    /**
    * 启动方式（0-后管启动；1-用户app启动；2-卡启动；3-离线卡启动; 4-第三方平台启动; 5-车辆vin码启动）
    */
    private String startMode;

    /**
    * 车牌号码
    */
    private String plateNumber;

    /**
    * 充电开始时间
    */
    private Date chargeStartTime;

    /**
    * 充电结束时间
    */
    private Date chargeEndTime;

    /**
    * 启动类型（now-立即启动；reservation-预约启动）
    */
    private String startType;

    /**
    * 预约开始时间
    */
    private Date reservationStartTime;

    /**
    * 预约结束时间
    */
    private Date reservationEndTime;

    /**
    * 开始SOC
    */
    private String startSoc;

    /**
    * 结束SOC
    */
    private String endSoc;

    /**
    * 总用电量
    */
    private BigDecimal totalUsedElectricity;

    /**
    * 尖时段用电量
    */
    private BigDecimal sharpUsedElectricity;

    /**
    * 峰时段用电量
    */
    private BigDecimal peakUsedElectricity;

    /**
    * 平时段用电量
    */
    private BigDecimal flatUsedElectricity;

    /**
    * 谷时段用电量
    */
    private BigDecimal valleyUsedElectricity;

    /**
    * 异常原因
    */
    private String reason;

    /**
    * 创建人
    */
    private String createBy;

    /**
    * 创建时间
    */
    private Date createTime;

    /**
    * 更新人
    */
    private String updateBy;

    /**
    * 更新时间
    */
    private Date updateTime;

    /**
    * 删除标识（0-正常；1-删除）
    */
    private String delFlag;
}