2015-04-27 13:40:57 -04:00
|
|
|
|
using System;
|
2021-08-29 14:10:10 -04:00
|
|
|
|
using SharedLibraryCore.Dtos;
|
2015-04-27 13:40:57 -04:00
|
|
|
|
|
2018-04-08 02:44:42 -04:00
|
|
|
|
namespace SharedLibraryCore.Helpers
|
2015-04-27 13:40:57 -04:00
|
|
|
|
{
|
2015-08-22 02:04:30 -04:00
|
|
|
|
public class PlayerHistory
|
2015-04-27 13:40:57 -04:00
|
|
|
|
{
|
2017-11-02 12:49:45 -04:00
|
|
|
|
// how many minutes between updates
|
|
|
|
|
public static readonly int UpdateInterval = 5;
|
|
|
|
|
|
2017-09-27 16:07:43 -04:00
|
|
|
|
public PlayerHistory(int cNum)
|
2015-04-27 13:40:57 -04:00
|
|
|
|
{
|
2017-09-27 16:07:43 -04:00
|
|
|
|
DateTime t = DateTime.UtcNow;
|
2017-11-02 12:49:45 -04:00
|
|
|
|
When = new DateTime(t.Year, t.Month, t.Day, t.Hour, Math.Min(59, UpdateInterval * (int)Math.Round(t.Minute / (float)UpdateInterval)), 0);
|
2019-04-06 22:48:49 -04:00
|
|
|
|
y = cNum;
|
2017-09-27 16:07:43 -04:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private DateTime When;
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Used by CanvasJS as a point on the x axis
|
|
|
|
|
/// </summary>
|
2017-10-15 21:40:27 -04:00
|
|
|
|
public string x
|
2017-09-27 16:07:43 -04:00
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
2017-10-15 21:40:27 -04:00
|
|
|
|
return When.ToString("yyyy-MM-ddTHH:mm:ssZ");
|
2017-09-27 16:07:43 -04:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Used by CanvasJS as a point on the y axis
|
|
|
|
|
/// </summary>
|
2019-04-06 22:48:49 -04:00
|
|
|
|
public int y { get; }
|
2021-08-29 14:10:10 -04:00
|
|
|
|
|
|
|
|
|
public ClientCountSnapshot ToClientCountSnapshot()
|
|
|
|
|
{
|
|
|
|
|
return new ClientCountSnapshot
|
|
|
|
|
{
|
|
|
|
|
ClientCount = y,
|
|
|
|
|
Time = When
|
|
|
|
|
};
|
|
|
|
|
}
|
2015-04-27 13:40:57 -04:00
|
|
|
|
}
|
|
|
|
|
}
|