Files
DiunaBI/WebAPI/dataParsers/googleSheet.parser.cs

50 lines
1.4 KiB
C#
Raw Normal View History

2022-12-21 22:15:17 +01:00
using Google.Apis.Sheets.v4;
using System.Globalization;
using WebAPI.Models;
namespace WebAPI.dataParsers
{
public class googleSheetParser
{
private SpreadsheetsResource.ValuesResource googleSheetValues;
public googleSheetParser(SpreadsheetsResource.ValuesResource _googleSheetValues)
{
googleSheetValues = _googleSheetValues;
}
2022-12-27 14:12:45 +01:00
public dynamic parse(string sheetId)
2022-12-21 22:15:17 +01:00
{
var range = "Arkusz1!A:B";
var request = googleSheetValues.Get(sheetId, range);
var response = request.Execute();
var data = response.Values;
2023-01-05 19:25:32 +01:00
List<Record> records = new List<Record>();
2022-12-21 22:15:17 +01:00
2022-12-27 14:12:45 +01:00
string date = (string)data[0][0];
2022-12-21 22:15:17 +01:00
for (int i = 1; i < data.Count; i++)
{
float value = float.Parse(data[i][1].ToString(), CultureInfo.GetCultureInfo("pl-PL"));
if (value > 0)
{
2023-01-05 19:25:32 +01:00
Record record = new Record();
record.Id = Guid.NewGuid();
record.Code = data[i][0].ToString();
record.Value = value;
record.CreatedAt = DateTime.UtcNow;
record.ModifiedAt = DateTime.UtcNow;
records.Add(record);
2022-12-21 22:15:17 +01:00
}
}
2022-12-27 14:12:45 +01:00
return new
{
2023-01-05 19:25:32 +01:00
records = records,
2022-12-27 14:12:45 +01:00
date = date
};
2022-12-21 22:15:17 +01:00
}
}
}