|
|
|
|
using Magicodes.ExporterAndImporter.Core;
|
|
|
|
|
using Magicodes.ExporterAndImporter.Excel;
|
|
|
|
|
|
|
|
|
|
namespace Entity.Dto;
|
|
|
|
|
/// <summary>
|
|
|
|
|
///
|
|
|
|
|
/// </summary>
|
|
|
|
|
[ExcelExporter(Name = "Daily Operation Statistics of Battery Swap Station",
|
|
|
|
|
TableStyle = OfficeOpenXml.Table.TableStyles.None, AutoFitAllColumn = true)]
|
|
|
|
|
public class ExchangeStationDayRunDto2
|
|
|
|
|
{
|
|
|
|
|
[ExporterHeader(DisplayName = "Average Charging Time", IsBold = true)]
|
|
|
|
|
public string AvgChgTime { get; set; }
|
|
|
|
|
|
|
|
|
|
[ExporterHeader(DisplayName = "Average Swap Time", IsBold = true)]
|
|
|
|
|
public string AvgRepTime { get; set; }
|
|
|
|
|
|
|
|
|
|
[ExporterHeader(DisplayName = "Swap Date", IsBold = true, Width = 30, Format = "yyyy-MM-dd HH:mm:ss",
|
|
|
|
|
AutoCenterColumn = true)]
|
|
|
|
|
public string SwapDate { get; set; }
|
|
|
|
|
|
|
|
|
|
[ExporterHeader(DisplayName = "First Swap Time", IsBold = true, Width = 30, Format = "yyyy-MM-dd HH:mm:ss",
|
|
|
|
|
AutoCenterColumn = true)]
|
|
|
|
|
public string FristSwapTime { get; set; }
|
|
|
|
|
|
|
|
|
|
[ExporterHeader(DisplayName = "Stop Swap Time", IsBold = true, Width = 30, Format = "yyyy-MM-dd HH:mm:ss",
|
|
|
|
|
AutoCenterColumn = true)]
|
|
|
|
|
public string StopTime { get; set; }
|
|
|
|
|
|
|
|
|
|
[ExporterHeader(DisplayName = "Run Start Time", IsBold = true, Width = 30, Format = "yyyy-MM-dd HH:mm:ss",
|
|
|
|
|
AutoCenterColumn = true)]
|
|
|
|
|
public string RunStartTime { get; set; }
|
|
|
|
|
|
|
|
|
|
[ExporterHeader(DisplayName = "Run End Time", IsBold = true, Width = 30, Format = "yyyy-MM-dd HH:mm:ss",
|
|
|
|
|
AutoCenterColumn = true)]
|
|
|
|
|
public string RunEndTime { get; set; }
|
|
|
|
|
|
|
|
|
|
[ExporterHeader(DisplayName = "Total Charging Count", IsBold = true)]
|
|
|
|
|
public int ChgCount { get; set; }
|
|
|
|
|
|
|
|
|
|
[ExporterHeader(DisplayName = "Operational Status", IsBold = true)]
|
|
|
|
|
public string OperationalStatus
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return State switch
|
|
|
|
|
{
|
|
|
|
|
1 => "Operating Status",
|
|
|
|
|
2 => "Paused Operating Status",
|
|
|
|
|
3 => "Equipment Maintenance Status",
|
|
|
|
|
4 => "Closed Status",
|
|
|
|
|
_ => "Unknown"
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[ExporterHeader(IsIgnore = true)] public int State { get; set; }
|
|
|
|
|
|
|
|
|
|
[ExporterHeader(DisplayName = "Total Swap Count", IsBold = true)]
|
|
|
|
|
public int ToltalSwapCount { get; set; }
|
|
|
|
|
|
|
|
|
|
[ExporterHeader(DisplayName = "Total Swap Duration", IsBold = true)]
|
|
|
|
|
public float ToltalSwapAllTime { get; set; }
|
|
|
|
|
|
|
|
|
|
[ExporterHeader(DisplayName = "Total Operation Duration", IsBold = true)]
|
|
|
|
|
public float ToltalTimeCount { get; set; }
|
|
|
|
|
}
|