У меня есть рабочий API, который возвращает набор «Смен» (рассмотрите их в контексте расписания). Данные успешно возвращаются из API, как выделено в выдержке ниже.:
[{"id":1006,"wI_Date":"2020-05-01T00:00:00","wI_Start_Time":"2020-05-01T08:00:00","wI_End_Time":"2020-05-01T17:00:00","name":"Surgery 1","rate":60.0000,"paid":"N ","revenue":"540 "},{"id":1007,"wI_Date":"2020-05-04T00:00:00","wI_Start_Time":"2020-05-04T08:00:00","wI_End_Time":"2020-05-04T17:00:00","name":"Medical Surgery 2","rate":45.0000,"paid":"N ","revenue":"405 "},{"id":1008,"wI_Date":"2020-05-07T00:00:00","wI_Start_Time":"2020-05-07T08:00:00","wI_End_Time":"2020-05-07T17:00:00","name":"TEST Medical Surgery","rate":45.0000,"paid":"N ","revenue":"405"}]
У меня есть сотни записей в отчете, которые охватывают весь календарный год (по wI_Date), и действительно, с течением времени и ростом набора данных он также будет охватывать несколько лет.
Я пытаюсь понять, как сгруппировать записи по месяцу\году, чтобы я мог добавить их в список записей для Micorcharts.BarGraph - без группировки в бэкэнде. Затем он хочет суммировать значения дохода за этот месяц и это значение, которое я хочу передать на свою диаграмму в качестве записи.
Сдвиг определяется как:
public class Shift
{
[PrimaryKey, AutoIncrement]
public int Id { get; set; }
public DateTime WiDate { get; set; }
public DateTime WiStartTime { get; set; }
public DateTime WiEndTime { get; set; }
public int Practice { get; set; }
public string Rate { get; set; }
public string Paid { get; set; }
public string Revenue { get; set; }
}
Мой вызов API выглядит так:
var content = await _client.GetStringAsync(URL);
var shifts= = JsonConvert.DeserializeObject<List<Shift>>(content);
OShifts = new ObservableCollection<Shift>(shifts);
Итак, у меня есть ObservableCollection. Я изо всех сил пытаюсь сгруппировать это по году \ дате, чтобы добавить к записям для Micorcharts.BarGraph..
чтобы помочь ниже, приведен пример того, как заполнить диаграмму.
private List<Entry> _entries = new List<Entry>
{
new Entry(200)
{
Color = SKColor.Parse("#3333FF"),
Label = "TEST LABEL 1",
ValueLabel = "200",
},
new Entry(400)
{
Color = SKColor.Parse("#FF141F"),
Label = "TEST LABEL 2",
ValueLabel = "400",
},
new Entry(300)
{
Color = SKColor.Parse("#49FF33"),
Label = "TEST LABEL 3",
ValueLabel = "300",
},
MyBarChart.Chart = new BarChart { Entries = _entries };
У кого-нибудь есть идеи или пример кода..??
Спасибо за прочтение..