using System.ComponentModel.DataAnnotations;
using SqlSugar;

namespace Entity.Api.Req
{
    ///<summary>
    ///修改充电订单
    ///</summary>
    public  class ModifyChargeOrderReq
    {
        /// <summary>
        /// Desc:id
        /// Default:
        /// Nullable:False
        /// </summary>      
        [Required]
        public int Id { get; set; }

        /// <summary>
        /// Desc:订单编号
        /// Default:
        /// Nullable:True
        /// </summary>
        public string? Sn { get; set; }

        /// <summary>
        /// Desc:电池编号
        /// Default:
        /// Nullable:True
        /// </summary>
        public string? BatteryNo { get; set; }

        /// <summary>
        /// Desc:启动报文状态;0-初始化;1-启动成功
        /// Default:0
        /// Nullable:True
        /// </summary>
        public int? CmdStatus { get; set; }

        /// <summary>
        /// Desc:充电机编号
        /// Default:
        /// Nullable:True
        /// </summary>
        public string? ChargerNo { get; set; }

        /// <summary>
        /// Desc:充电枪编号
        /// Default:
        /// Nullable:True
        /// </summary>
        public string? ChargerGunNo { get; set; }
        /// <summary>
        /// 0:站内充电 1:站外充电
        /// </summary>

        public int ChargeMode { get; set; }
        /// <summary>
        /// 1:站控启动 2:本地启动
        /// </summary>

        public string? StartMode { get; set; }

        /// <summary>
        /// Desc:充电开始时间
        /// Default:
        /// Nullable:True
        /// </summary>
        public DateTime? StartTime { get; set; }

        /// <summary>
        /// Desc:充电结束时间
        /// Default:
        /// Nullable:True
        /// </summary>
        public DateTime? EndTime { get; set; }

        /// <summary>
        /// Desc:充电开始soc
        /// Default:
        /// Nullable:True
        /// </summary>
        public int? StartSoc { get; set; }

        /// <summary>
        /// Desc:充电结束soc
        /// Default:
        /// Nullable:True
        /// </summary>
        public int? StopSoc { get; set; }

        /// <summary>
        /// Desc:充电时长
        /// Default:
        /// Nullable:True
        /// </summary>
        public int? ChargeTimeCount { get; set; }

        /// <summary>
        /// Desc:充电电量
        /// Default:
        /// Nullable:True
        /// </summary>
        public decimal? ElecCount { get; set; }

        /// <summary>
        /// Desc:充电开始交流表电量
        /// Default:
        /// Nullable:True
        /// </summary>
        public decimal? StartAcElec { get; set; }

        /// <summary>
        /// Desc:充电结束交流表电量
        /// Default:
        /// Nullable:True
        /// </summary>
        public decimal? StopAcElec { get; set; }

        /// <summary>
        /// Desc:充电开始直流表电量
        /// Default:
        /// Nullable:True
        /// </summary>
        public decimal? StartDcElec { get; set; }

        /// <summary>
        /// Desc:充电结束直流表电量
        /// Default:
        /// Nullable:True
        /// </summary>
        public decimal? StopDcElec { get; set; }

        /// <summary>
        /// Desc:停止原因;0:满电自动停止;1-人工停止
        /// Default:0
        /// Nullable:True
        /// </summary>
        public int? StopReason { get; set; }

        /// <summary>
        /// Desc:尖时段电量
        /// Default:
        /// Nullable:True
        /// </summary>
        public decimal? SharpElecCount { get; set; }

        /// <summary>
        /// Desc:峰时段电量
        /// Default:
        /// Nullable:True
        /// </summary>
        public decimal? PeakElecCount { get; set; }

        /// <summary>
        /// Desc:平时段电量
        /// Default:
        /// Nullable:True
        /// </summary>
        public decimal? FlatElecCount { get; set; }

        /// <summary>
        /// Desc:谷时段电量
        /// Default:
        /// Nullable:True
        /// </summary>
        public decimal? ValleyElecCount { get; set; }

        /// <summary>
        /// Desc:尖时段交流电量
        /// Default:
        /// Nullable:True
        /// </summary>
        public decimal? ACSharpElecCount { get; set; }

        /// <summary>
        /// Desc:峰时段交流电量
        /// Default:
        /// Nullable:True
        /// </summary>
        public decimal? ACPeakElecCount { get; set; }

        /// <summary>
        /// Desc:平时段交流电量
        /// Default:
        /// Nullable:True
        /// </summary>
        public decimal? ACFlatElecCount { get; set; }

        /// <summary>
        /// Desc:谷时段交流电量
        /// Default:
        /// Nullable:True
        /// </summary>
        public decimal? ACValleyElecCount { get; set; }

        /// <summary>
        /// Desc:电价版本号
        /// Default:
        /// Nullable:True
        /// </summary>
        public string? ElecPriceModelVersion { get; set; }

        /// <summary>
        /// Desc:换电订单编号
        /// Default:
        /// Nullable:True
        /// </summary>
        public string? SwapOrderSn { get; set; }

        /// <summary>
        /// Desc:上传云平台状态;0-未上传;1-已上传
        /// Default:0
        /// Nullable:True
        /// </summary>
        public int? CloudReportStatus { get; set; }

        /// <summary>
        /// Desc:创建人
        /// Default:
        /// Nullable:True
        /// </summary>
        public string? CreatedBy { get; set; }

        /// <summary>
        /// Desc:创建时间
        /// Default:CURRENT_TIMESTAMP
        /// Nullable:True
        /// </summary>
        public DateTime? CreatedTime { get; set; }

        /// <summary>
        /// Desc:更新人
        /// Default:
        /// Nullable:True
        /// </summary>
        public string? UpdatedBy { get; set; }

        /// <summary>
        /// Desc:更新时间
        /// Default:CURRENT_TIMESTAMP
        /// Nullable:True
        /// </summary>
        public DateTime? UpdatedTime { get; set; }

        /// <summary>
        /// 云平台充电订单
        /// </summary>
        public string? CloudSn { get; set; }


    }
}