From d991212980c5212da076e6b1ba527850ff9d8e87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Patrik=20Pa=C5=A1ko?= <patrik.pasko@twinzo.eu> Date: Thu, 8 Aug 2024 13:46:38 +0000 Subject: [PATCH] Develop --- README.md | 6 +++ SDK/Connection/V3/SensorDatas.cs | 53 ++++++++++++++++++++++++ SDK/Contracts/Data/SensorDataContract.cs | 4 ++ SDK/Helpers/Address.cs | 2 + SDK/SDK.csproj | 2 +- 5 files changed, 66 insertions(+), 1 deletion(-) create mode 100644 SDK/Connection/V3/SensorDatas.cs diff --git a/README.md b/README.md index 43ec1ee..7a52bf1 100644 --- a/README.md +++ b/README.md @@ -245,6 +245,12 @@ await devkitConnector.AddSensorData(sensorContracts); * `AddSensorData(sensors)` - Add sensor data for multiple sensors in batch mode * `AddSensorData(sensorData)` - Add sensor data for single sensor (in order to do this you need to be **authenticated** as said sensor - this can be avoided when using the batch mode above - [Example](#sensor-data)) * `GetSensorAppInfo()` - Get information (version, size) about the sensor app +* **SensorDatas** + * `GetSensorDatas()` - Get all sensor datas + * `GetSensorData(id)` - Get sensor data by ID + * `AddSensorData(sensorDataContract)` - Add a sensor data with specified properties + * `UpdateSensorData(id, sensorDataContract)` - Update an existing sensor data with new properties + * `DeleteSensorData(id)` - Delete an existing sensor data by ID * **Shifts** * `GetShifts()` - Get all shifts * `GetShift(id)` - Get shift by ID diff --git a/SDK/Connection/V3/SensorDatas.cs b/SDK/Connection/V3/SensorDatas.cs new file mode 100644 index 0000000..ecc1596 --- /dev/null +++ b/SDK/Connection/V3/SensorDatas.cs @@ -0,0 +1,53 @@ +using SDK.Communication; +using SDK.Exceptions; +using SDK.Models; +using System; +using System.Threading.Tasks; + +namespace SDK +{ + //(2/2) + public partial class DevkitConnectorV3 + { + public async Task<SensorDataContract[]> GetSensorDatas(string queryString = "") + { + string subUrl = Address.UrlCombine(Address.SensorDatas, queryString); + var response = await GetRequest<SensorDataContract[]>(subUrl); + + return response; + } + + public async Task<SensorDataContract> GetSensorData(int id, string queryString = "") + { + string subUrl = Address.UrlCombine(Address.SensorDatas, Convert.ToString(id), queryString); + var response = await GetRequest<SensorDataContract>(subUrl); + + return response; + } + + public async Task<PostResponseContract> AddSensorData(SensorDataContract shiftContract) + { + string subUrl = Address.UrlCombine(Address.SensorDatas); + var response = await PostRequest<AddSensorDataResponseContract>(subUrl, shiftContract); + + if (response.ErrorMessage != null) + { + throw new ServerResponseException(ServerResponseException.message + " " + response.ErrorMessage); + } + + return response; + } + + public async Task UpdateSensorData(int id, object changes) + { + string subUrl = Address.UrlCombine(Address.SensorDatas, id.ToString()); + await PatchRequest(subUrl, changes); + } + + public async Task DeleteSensorData(int id) + { + string subUrl = Address.UrlCombine(Address.SensorDatas, Convert.ToString(id)); + await DeleteRequest(subUrl); + } + } +} diff --git a/SDK/Contracts/Data/SensorDataContract.cs b/SDK/Contracts/Data/SensorDataContract.cs index 431da93..328ecbe 100644 --- a/SDK/Contracts/Data/SensorDataContract.cs +++ b/SDK/Contracts/Data/SensorDataContract.cs @@ -6,6 +6,8 @@ namespace SDK.Models { public int Id { get; set; } + public int SensorId { get; set; } + public string Quantity { get; set; } public string Value { get; set; } @@ -19,5 +21,7 @@ namespace SDK.Models public int Index { get; set; } public bool VisibleInApp { get; set; } + + public RangeContract Range { get; set; } } } diff --git a/SDK/Helpers/Address.cs b/SDK/Helpers/Address.cs index be67972..16c08ad 100644 --- a/SDK/Helpers/Address.cs +++ b/SDK/Helpers/Address.cs @@ -59,6 +59,8 @@ namespace SDK.Models public const string SensorsAddData = "sensors/sensor-data/"; public const string SensorsLogin = "sensors/login/"; + public const string SensorDatas = "sensor-datas/"; + public const string Shifts = "shifts/"; public const string Users = "users/detail"; diff --git a/SDK/SDK.csproj b/SDK/SDK.csproj index c1c2a0e..b7429ea 100644 --- a/SDK/SDK.csproj +++ b/SDK/SDK.csproj @@ -13,7 +13,7 @@ <TargetFrameworks Condition="'$(TargetFrameworkOverride)' != ''">$(TargetFrameworkOverride)</TargetFrameworks> <AssemblyVersion>2021.6.28.25</AssemblyVersion> <FileVersion>2021.6.28.25</FileVersion> - <Version>5.6.0</Version> + <Version>5.7.0</Version> <GeneratePackageOnBuild>true</GeneratePackageOnBuild> </PropertyGroup> -- GitLab