diff --git a/YD_AllHeartRates.Api/Controllers/DataPushController.cs b/YD_AllHeartRates.Api/Controllers/DataPushController.cs
new file mode 100644
index 0000000..05bdcd3
--- /dev/null
+++ b/YD_AllHeartRates.Api/Controllers/DataPushController.cs
@@ -0,0 +1,33 @@
+using Microsoft.AspNetCore.Authorization;
+using Microsoft.AspNetCore.Http;
+using Microsoft.AspNetCore.Mvc;
+using YD_AllHeartRates.Api.Services.Impl;
+using YD_AllHeartRates.Api.Services.Interface;
+using YD_AllHeartRates.Commons.Dto;
+using YD_AllHeartRates.Commons.Dto.Device;
+
+namespace YD_AllHeartRates.Api.Controllers
+{
+ ///
+ /// 数据上报
+ ///
+ [ApiVersion("1.0")]
+ [AllowAnonymous]
+ [Route("api/[controller]")]
+ public class DataPushController : ControllerBase
+ {
+ private readonly IDataPushService _dataPushService;
+
+ public DataPushController(IDataPushService dataPushService)
+ {
+ _dataPushService = dataPushService;
+ }
+
+ [HttpGet(nameof(GetToken))]
+ public async Task GetToken()
+ {
+ var res = await _dataPushService.GetToken();
+ return res;
+ }
+ }
+}
diff --git a/YD_AllHeartRates.Api/FakesAssemblies/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll b/YD_AllHeartRates.Api/FakesAssemblies/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll
index d46f48f..b52ab3d 100644
Binary files a/YD_AllHeartRates.Api/FakesAssemblies/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll and b/YD_AllHeartRates.Api/FakesAssemblies/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll differ
diff --git a/YD_AllHeartRates.Api/FakesAssemblies/YD_AllHeartRates.Commons.1.0.0.0.Fakes.messages b/YD_AllHeartRates.Api/FakesAssemblies/YD_AllHeartRates.Commons.1.0.0.0.Fakes.messages
new file mode 100644
index 0000000..5a2f267
--- /dev/null
+++ b/YD_AllHeartRates.Api/FakesAssemblies/YD_AllHeartRates.Commons.1.0.0.0.Fakes.messages
@@ -0,0 +1,6 @@
+C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\Fakes\YD_AllHeartRates.Commons.fakes : warning : 无法为 YD_AllHeartRates.Commons.Dto.ResponseMsg 生成存根: 类型没有对程序集可见的构造函数。构造函数本身或参数可能不可见。。
+C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\Fakes\YD_AllHeartRates.Commons.fakes : warning : 无法为 YD_AllHeartRates.Commons.MemoryCaches.MemoryCacheSetup 生成存根: 类型没有对程序集可见的构造函数。构造函数本身或参数可能不可见。。
+C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\Fakes\YD_AllHeartRates.Commons.fakes : warning : 无法为 YD_AllHeartRates.Commons.Middlewares.SystemExceptionApplicationBuilderExtensions 生成存根: 类型没有对程序集可见的构造函数。构造函数本身或参数可能不可见。。
+C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\Fakes\YD_AllHeartRates.Commons.fakes : warning : 无法为 YD_AllHeartRates.Commons.Utils.Util 生成存根: 类型没有对程序集可见的构造函数。构造函数本身或参数可能不可见。。
+C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\Fakes\YD_AllHeartRates.Commons.fakes : warning : 正在跳过 method System.Int32 YD_AllHeartRates.Commons.Utils.Util.GetRank(!!0 score),method System.Int32 YD_AllHeartRates.Commons.Utils.Util.GetRank(!!0 score) unstubbable: 无法同时指定类约束和 "class" 或 "struct" 约束
+C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\Fakes\YD_AllHeartRates.Commons.fakes : warning : 正在跳过 method System.String YD_AllHeartRates.Commons.Utils.Util.GetRankStr(!!0 score),method System.String YD_AllHeartRates.Commons.Utils.Util.GetRankStr(!!0 score) unstubbable: 无法同时指定类约束和 "class" 或 "struct" 约束
diff --git a/YD_AllHeartRates.Api/Services/Impl/DataPushService.cs b/YD_AllHeartRates.Api/Services/Impl/DataPushService.cs
new file mode 100644
index 0000000..b621298
--- /dev/null
+++ b/YD_AllHeartRates.Api/Services/Impl/DataPushService.cs
@@ -0,0 +1,100 @@
+using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
+using YD_AllHeartRates.Api.Services.Interface;
+using YD_AllHeartRates.Api.Utilities;
+
+namespace YD_AllHeartRates.Api.Services.Impl
+{
+ ///
+ /// 数据上报服务类
+ ///
+ public class DataPushService : IDataPushService
+ {
+ public async Task GetToken()
+ {
+ long timestamp = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();
+ Console.WriteLine($"[GetToken] Timestamp: {timestamp}");
+
+ // 1. 构造字典参数
+ var dict = new SortedDictionary
+ {
+ { "APPID", AppSettings.DataPush.Appid },
+ { "CLIENT_ID", AppSettings.DataPush.ClientId },
+ { "TIMESTAMP", timestamp.ToString() }
+ };
+ Console.WriteLine($"[GetToken] Params dict: {string.Join(", ", dict.Select(kv => kv.Key + "=" + kv.Value))}");
+
+ // 2. 按字典序拼接值
+ string bodyPlain = string.Join(",", dict.Values);
+ Console.WriteLine($"[GetToken] Plain BODY string: {bodyPlain}");
+
+ // 3. 使用 SM2 加密
+ string bodyEncrypted;
+ try
+ {
+ bodyEncrypted = DataEncryptHelper.EncryptSm2(bodyPlain, AppSettings.DataPush.PublicKey);
+ Console.WriteLine($"[GetToken] Encrypted BODY (hex): {bodyEncrypted}");
+ }
+ catch (Exception ex)
+ {
+ Console.WriteLine($"[GetToken] SM2 encryption failed: {ex}");
+ throw;
+ }
+
+ string bodyEncoded = Uri.EscapeDataString(bodyEncrypted);
+ Console.WriteLine($"[GetToken] URL-encoded BODY: {bodyEncoded}");
+
+ // 4. 构造 GET 请求 URL
+ string url = $"{AppSettings.DataPush.Hous}oauth2/getToken?CLIENT_ID={AppSettings.DataPush.ClientId}&TIMESTAMP={timestamp}&BODY={bodyEncoded}";
+ Console.WriteLine($"[GetToken] Request URL: {url}");
+
+ // 5. 调用接口
+ string response;
+ try
+ {
+ response = await HttpManager.HttpGetAsync(url);
+ Console.WriteLine($"[GetToken] Response: {response}");
+ }
+ catch (Exception ex)
+ {
+ Console.WriteLine($"[GetToken] HTTP GET failed: {ex}");
+ throw;
+ }
+
+ // 6. 解析 token
+ if (!string.IsNullOrWhiteSpace(response) && response.StartsWith("{"))
+ {
+ try
+ {
+ var json = JsonConvert.DeserializeObject>(response);
+ if (json != null && json.ContainsKey("code") && json["code"].ToString() == "200")
+ {
+ if (json.TryGetValue("data", out var dataObj))
+ {
+ var dataJson = dataObj.ToString();
+ var dataDict = JsonConvert.DeserializeObject>(dataJson);
+ if (dataDict != null && dataDict.ContainsKey("token"))
+ {
+ string token = dataDict["token"].ToString();
+ Console.WriteLine($"[GetToken] Token: {token}");
+ return token;
+ }
+ }
+ }
+ Console.WriteLine($"[GetToken] No token found in response or code != 200");
+ }
+ catch (Exception ex)
+ {
+ Console.WriteLine($"[GetToken] JSON parse failed: {ex}");
+ }
+ }
+ else
+ {
+ Console.WriteLine("[GetToken] Response is empty or not JSON");
+ }
+
+ return string.Empty;
+ }
+
+ }
+}
diff --git a/YD_AllHeartRates.Api/Services/Interface/IDataPushService.cs b/YD_AllHeartRates.Api/Services/Interface/IDataPushService.cs
new file mode 100644
index 0000000..b936f1e
--- /dev/null
+++ b/YD_AllHeartRates.Api/Services/Interface/IDataPushService.cs
@@ -0,0 +1,10 @@
+namespace YD_AllHeartRates.Api.Services.Interface
+{
+ ///
+ /// 数据上报服务类
+ ///
+ public interface IDataPushService
+ {
+ Task GetToken();
+ }
+}
diff --git a/YD_AllHeartRates.Api/Startup.cs b/YD_AllHeartRates.Api/Startup.cs
index 1a2fac1..6ca8729 100644
--- a/YD_AllHeartRates.Api/Startup.cs
+++ b/YD_AllHeartRates.Api/Startup.cs
@@ -89,6 +89,7 @@ namespace YD_AllHeartRates.Api
services.AddScoped();
services.AddScoped();
services.AddScoped();
+ services.AddScoped();
services.AddScoped();
services.AddSession();
services.AddMemoryCache();
diff --git a/YD_AllHeartRates.Api/Utilities/AppSettings.cs b/YD_AllHeartRates.Api/Utilities/AppSettings.cs
index 6677d0f..c64bb39 100644
--- a/YD_AllHeartRates.Api/Utilities/AppSettings.cs
+++ b/YD_AllHeartRates.Api/Utilities/AppSettings.cs
@@ -13,6 +13,7 @@
public static string RedisConnectionString { get; set; }
public static string[] CorsUrls { get; set; }
public static MqttConfig Mqtt { get; set; }
+ public static DataPush DataPush { get; set; }
public static string StudentListCacheKey = $"student_list";
@@ -32,43 +33,53 @@
RedisConnectionString = configuration["RedisConnectionString"];
CorsUrls = configuration["CorsUrls"].Split(',');
Mqtt = configuration.GetSection("Mqtt").Get();
- }
- public class LoggingConfig
- {
- public LogLevelConfig LogLevel { get; set; }
- }
-
- public class LogLevelConfig
- {
- public string Default { get; set; }
- public string Microsoft { get; set; }
- public string MicrosoftHostingLifetime { get; set; }
- }
-
- public class VirtualPathConfig
- {
- public string StaticFile { get; set; }
- public string FolderName { get; set; }
- }
-
- public class SecretConfig
- {
- public string JWT { get; set; }
- public string Audience { get; set; }
- public string Issuer { get; set; }
- public string User { get; set; }
- public string DB { get; set; }
- public string Redis { get; set; }
- }
-
- public class MqttConfig
- {
- public string Host { get; set; }
- public int Port { get; set; }
- public string Topic { get; set; }
- public int BatchSize { get; set; }
+ DataPush = configuration.GetSection("DataPush").Get();
}
}
+ public class LoggingConfig
+ {
+ public LogLevelConfig LogLevel { get; set; }
+ }
+ public class LogLevelConfig
+ {
+ public string Default { get; set; }
+ public string Microsoft { get; set; }
+ public string MicrosoftHostingLifetime { get; set; }
+ }
+
+ public class VirtualPathConfig
+ {
+ public string StaticFile { get; set; }
+ public string FolderName { get; set; }
+ }
+
+ public class SecretConfig
+ {
+ public string JWT { get; set; }
+ public string Audience { get; set; }
+ public string Issuer { get; set; }
+ public string User { get; set; }
+ public string DB { get; set; }
+ public string Redis { get; set; }
+ }
+
+ public class MqttConfig
+ {
+ public string Host { get; set; }
+ public int Port { get; set; }
+ public string Topic { get; set; }
+ public int BatchSize { get; set; }
+ }
+ public class DataPush
+ {
+ public string Hous { get; set; }
+ public string Appid { get; set; }
+ public string ClientId { get; set; }
+ public string PublicKey { get; set; }
+ public string SecretKey { get; set; }
+ public string Sm4key { get; set; }
+ public string Sm4iv { get; set; }
+ }
}
diff --git a/YD_AllHeartRates.Api/Utilities/DataEncryptHelper.cs b/YD_AllHeartRates.Api/Utilities/DataEncryptHelper.cs
new file mode 100644
index 0000000..3634d10
--- /dev/null
+++ b/YD_AllHeartRates.Api/Utilities/DataEncryptHelper.cs
@@ -0,0 +1,91 @@
+using Newtonsoft.Json;
+using Org.BouncyCastle.Asn1.GM;
+using Org.BouncyCastle.Asn1.Sec;
+using Org.BouncyCastle.Asn1.X9;
+using Org.BouncyCastle.Crypto;
+using Org.BouncyCastle.Crypto.Engines;
+using Org.BouncyCastle.Crypto.Modes;
+using Org.BouncyCastle.Crypto.Paddings;
+using Org.BouncyCastle.Crypto.Parameters;
+using Org.BouncyCastle.Security;
+using System.Security.Cryptography;
+using System.Text;
+
+namespace YD_AllHeartRates.Api.Utilities
+{
+ public static class DataEncryptHelper
+ {
+ ///
+ /// SM2 公钥加密(C1C3C2 顺序,输出十六进制)
+ ///
+ /// 明文字符串
+ /// 公钥十六进制(压缩或非压缩)
+ /// 加密后的十六进制密文
+ public static string EncryptSm2(string plainText, string pubKeyHex)
+ {
+ if (string.IsNullOrEmpty(plainText))
+ throw new ArgumentException("plainText 不能为空");
+ if (string.IsNullOrEmpty(pubKeyHex))
+ throw new ArgumentException("pubKeyHex 不能为空");
+
+ byte[] plainBytes = Encoding.UTF8.GetBytes(plainText);
+
+ // 获取 SM2 曲线参数
+ var sm2Curve = GMNamedCurves.GetByName("sm2p256v1");
+ var curve = sm2Curve.Curve;
+ var ecParams = new ECDomainParameters(curve, sm2Curve.G, sm2Curve.N);
+
+ // 解析公钥
+ byte[] pubKeyBytes = HexStringToBytes(pubKeyHex);
+ if (pubKeyBytes.Length != 33 && pubKeyBytes.Length != 65)
+ throw new ArgumentException("公钥长度错误,应为 33(压缩)或 65(非压缩)字节");
+
+ Org.BouncyCastle.Math.EC.ECPoint q;
+ try
+ {
+ q = curve.DecodePoint(pubKeyBytes);
+ }
+ catch (Exception ex)
+ {
+ throw new ArgumentException("公钥解析失败,请确认是有效 SM2 公钥(压缩或非压缩)", ex);
+ }
+
+ var pubKey = new ECPublicKeyParameters(q, ecParams);
+
+ // SM2 加密(C1C3C2)
+ var engine = new SM2Engine(SM2Engine.Mode.C1C3C2);
+ engine.Init(true, new ParametersWithRandom(pubKey, new SecureRandom()));
+
+ byte[] cipherBytes = engine.ProcessBlock(plainBytes, 0, plainBytes.Length);
+
+ return BytesToHex(cipherBytes);
+ }
+
+ #region 辅助方法
+ ///
+ /// 十六进制字符串转字节数组
+ ///
+ private static byte[] HexStringToBytes(string hex)
+ {
+ if (hex.Length % 2 != 0)
+ throw new ArgumentException("Hex string 必须为偶数长度");
+
+ byte[] bytes = new byte[hex.Length / 2];
+ for (int i = 0; i < hex.Length; i += 2)
+ bytes[i / 2] = Convert.ToByte(hex.Substring(i, 2), 16);
+ return bytes;
+ }
+
+ ///
+ /// 字节数组转十六进制字符串
+ ///
+ private static string BytesToHex(byte[] bytes)
+ {
+ StringBuilder sb = new StringBuilder(bytes.Length * 2);
+ foreach (var b in bytes)
+ sb.AppendFormat("{0:x2}", b);
+ return sb.ToString();
+ }
+ #endregion
+ }
+}
diff --git a/YD_AllHeartRates.Api/Utilities/HttpManager.cs b/YD_AllHeartRates.Api/Utilities/HttpManager.cs
new file mode 100644
index 0000000..ff5704a
--- /dev/null
+++ b/YD_AllHeartRates.Api/Utilities/HttpManager.cs
@@ -0,0 +1,66 @@
+using System.Text;
+
+namespace YD_AllHeartRates.Api.Utilities
+{
+ public class HttpManager
+ {
+ public static async Task HttpPostAsync(string url, string postData = null, string contentType = "application/json", int timeOut = 30, Dictionary headers = null)
+ {
+ using (var client = new HttpClient())
+ {
+ client.Timeout = TimeSpan.FromSeconds(timeOut);
+
+ if (headers != null)
+ {
+ foreach (var header in headers)
+ {
+ client.DefaultRequestHeaders.Add(header.Key, header.Value);
+ }
+ }
+
+ HttpContent content = null;
+ if (!string.IsNullOrEmpty(postData))
+ {
+ content = new StringContent(postData, Encoding.UTF8, contentType);
+ }
+
+ try
+ {
+ var response = await client.PostAsync(url, content);
+ response.EnsureSuccessStatusCode();
+ return await response.Content.ReadAsStringAsync();
+ }
+ catch (Exception ex)
+ {
+ return ex.Message;
+ }
+ }
+ }
+ public static async Task HttpGetAsync(string url, Dictionary headers = null)
+ {
+ using (var client = new HttpClient())
+ {
+ if (headers != null)
+ {
+ foreach (var header in headers)
+ {
+ client.DefaultRequestHeaders.Add(header.Key, header.Value);
+ }
+ }
+
+ try
+ {
+ var response = await client.GetAsync(url);
+
+ response.EnsureSuccessStatusCode();
+
+ return await response.Content.ReadAsStringAsync();
+ }
+ catch (Exception ex)
+ {
+ return ex.Message;
+ }
+ }
+ }
+ }
+}
diff --git a/YD_AllHeartRates.Api/YD_AllHeartRates.Api.csproj b/YD_AllHeartRates.Api/YD_AllHeartRates.Api.csproj
index 6ac72a9..f76598b 100644
--- a/YD_AllHeartRates.Api/YD_AllHeartRates.Api.csproj
+++ b/YD_AllHeartRates.Api/YD_AllHeartRates.Api.csproj
@@ -34,6 +34,7 @@
+
diff --git a/YD_AllHeartRates.Api/appsettings.json b/YD_AllHeartRates.Api/appsettings.json
index 629393e..47834c2 100644
--- a/YD_AllHeartRates.Api/appsettings.json
+++ b/YD_AllHeartRates.Api/appsettings.json
@@ -46,5 +46,14 @@
"Port": 1883,
"Topic": "heartrates/topic",
"BatchSize": 1
+ },
+ "DataPush": {
+ "Hous": "https://zxx.shedusoft.com/tzjk-watch/",
+ "Appid": "e96cde5c1908bc3cf09ebce13735765b7a2a617726ae122722bbbfb46f1d737c2df72c9773a75f4b7d5f89dfd4052cd47e22688fcf3ca829712f9f41d5b6d4558fffa081ac7d2f746744e5bc40451e04",
+ "ClientId": "a93d62bc-6517-40b5-849b-91beed8cf59e",
+ "PublicKey": "038412fc7ae2ed37c1335622257138fb730c7f7bf6e4c08795b2f011005faf7a7e",
+ "SecretKey": "87d00391b2807a32696abf8e3d639ac6ae8a9c2a476e45180f919966d71105af",
+ "Sm4key": "qU3pK6JOKXCFtNFK",
+ "Sm4iv": "hxXbu1vW8ObPhUJl"
}
}
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/ApiEndpoints.json b/YD_AllHeartRates.Api/obj/Debug/net6.0/ApiEndpoints.json
index 580e5e8..f90b81f 100644
--- a/YD_AllHeartRates.Api/obj/Debug/net6.0/ApiEndpoints.json
+++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/ApiEndpoints.json
@@ -1,4 +1,24 @@
[
+ {
+ "ContainingType": "YD_AllHeartRates.Api.Controllers.DataPushController",
+ "Method": "GetToken",
+ "RelativePath": "api/DataPush/GetToken",
+ "HttpMethod": "GET",
+ "IsController": true,
+ "Order": 0,
+ "Parameters": [],
+ "ReturnTypes": [
+ {
+ "Type": "System.String",
+ "MediaTypes": [
+ "text/plain",
+ "application/json",
+ "text/json"
+ ],
+ "StatusCode": 200
+ }
+ ]
+ },
{
"ContainingType": "YD_AllHeartRates.Api.Controllers.DeviceController",
"Method": "AddDevice",
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/EndpointInfo/YD_AllHeartRates.Api.json b/YD_AllHeartRates.Api/obj/Debug/net6.0/EndpointInfo/YD_AllHeartRates.Api.json
index dc0f64e..1ffc79f 100644
--- a/YD_AllHeartRates.Api/obj/Debug/net6.0/EndpointInfo/YD_AllHeartRates.Api.json
+++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/EndpointInfo/YD_AllHeartRates.Api.json
@@ -6,6 +6,35 @@
"version": "v1"
},
"paths": {
+ "/api/DataPush/GetToken": {
+ "get": {
+ "tags": [
+ "DataPush"
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "content": {
+ "text/plain": {
+ "schema": {
+ "type": "string"
+ }
+ },
+ "application/json": {
+ "schema": {
+ "type": "string"
+ }
+ },
+ "text/json": {
+ "schema": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
"/api/Device/DevicePageList": {
"get": {
"tags": [
@@ -1274,6 +1303,10 @@
}
],
"tags": [
+ {
+ "name": "DataPush",
+ "description": "数据上报"
+ },
{
"name": "Device",
"description": "设备"
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/b/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/b/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll
index d46f48f..b52ab3d 100644
Binary files a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/b/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll and b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/b/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll differ
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/b/YD_AllHeartRates.Commons.1.0.0.0.Fakes.pdb b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/b/YD_AllHeartRates.Commons.1.0.0.0.Fakes.pdb
index 1cd49d3..5a709e6 100644
Binary files a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/b/YD_AllHeartRates.Commons.1.0.0.0.Fakes.pdb and b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/b/YD_AllHeartRates.Commons.1.0.0.0.Fakes.pdb differ
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/f.ch b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/f.ch
index 99379ce..ea6589d 100644
--- a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/f.ch
+++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/f.ch
@@ -1 +1 @@
-G2sClDPPmDFS/EOaSoqbkBa/7z2yT7cv0qpHXVTKNvM=WWmIfOUbyYPYdKFHlVpzo+vbEnfIsJNTTcG8+oWdtSc=
\ No newline at end of file
+GP25Qx28NgShle3DoTgAmB1JVJdDmR8EBb22S5PIjgk=WWmIfOUbyYPYdKFHlVpzo+vbEnfIsJNTTcG8+oWdtSc=
\ No newline at end of file
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/f.cs b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/f.cs
index 6358f47..035bb40 100644
Binary files a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/f.cs and b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/f.cs differ
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/f.csproj b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/f.csproj
index 55735d6..5bb2227 100644
--- a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/f.csproj
+++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/f.csproj
@@ -9,7 +9,7 @@
$(OutputPath)\$(AssemblyName).xml
prompt
4
- $(NoWarn);1587;1591;
+ $(NoWarn);1587;1591;SYSLIB0050;
false
net6.0
True
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll
index d46f48f..b52ab3d 100644
Binary files a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll and b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll differ
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/YD_AllHeartRates.Commons.1.0.0.0.Fakes.pdb b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/YD_AllHeartRates.Commons.1.0.0.0.Fakes.pdb
index 1cd49d3..5a709e6 100644
Binary files a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/YD_AllHeartRates.Commons.1.0.0.0.Fakes.pdb and b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/YD_AllHeartRates.Commons.1.0.0.0.Fakes.pdb differ
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/f.GeneratedMSBuildEditorConfig.editorconfig b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/f.GeneratedMSBuildEditorConfig.editorconfig
index 3aef677..1fb8513 100644
--- a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/f.GeneratedMSBuildEditorConfig.editorconfig
+++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/f.GeneratedMSBuildEditorConfig.editorconfig
@@ -1,5 +1,7 @@
is_global = true
build_property.TargetFramework = net6.0
+build_property.TargetFrameworkIdentifier = .NETCoreApp
+build_property.TargetFrameworkVersion = v6.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/f.assets.cache b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/f.assets.cache
index 06f9968..20810a6 100644
Binary files a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/f.assets.cache and b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/f.assets.cache differ
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/ref/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/ref/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll
index 4f376b1..8ed6131 100644
Binary files a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/ref/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll and b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/ref/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll differ
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/refint/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/refint/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll
index 4f376b1..8ed6131 100644
Binary files a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/refint/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll and b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/o/net6.0/refint/YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll differ
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/obj/f.csproj.nuget.dgspec.json b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/obj/f.csproj.nuget.dgspec.json
index 83ffb05..f858809 100644
--- a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/obj/f.csproj.nuget.dgspec.json
+++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/obj/f.csproj.nuget.dgspec.json
@@ -45,7 +45,7 @@
"auditLevel": "low",
"auditMode": "direct"
},
- "SdkAnalysisLevel": "9.0.200"
+ "SdkAnalysisLevel": "10.0.100"
},
"frameworks": {
"net6.0": {
@@ -66,7 +66,7 @@
"privateAssets": "all"
}
},
- "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.201\\RuntimeIdentifierGraph.json"
+ "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\10.0.100-rc.2.25502.107\\RuntimeIdentifierGraph.json"
}
}
}
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/obj/f.csproj.nuget.g.props b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/obj/f.csproj.nuget.g.props
index bb8dce9..f613ba7 100644
--- a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/obj/f.csproj.nuget.g.props
+++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/obj/f.csproj.nuget.g.props
@@ -7,7 +7,7 @@
$(UserProfile)\.nuget\packages\
C:\Users\tangl\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages
PackageReference
- 6.13.2
+ 7.0.0
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/obj/project.assets.json b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/obj/project.assets.json
index 2b816dd..c9d471e 100644
--- a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/obj/project.assets.json
+++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/obj/project.assets.json
@@ -52,7 +52,7 @@
"auditLevel": "low",
"auditMode": "direct"
},
- "SdkAnalysisLevel": "9.0.200"
+ "SdkAnalysisLevel": "10.0.100"
},
"frameworks": {
"net6.0": {
@@ -73,7 +73,7 @@
"privateAssets": "all"
}
},
- "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.201\\RuntimeIdentifierGraph.json"
+ "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\10.0.100-rc.2.25502.107\\RuntimeIdentifierGraph.json"
}
}
}
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/obj/project.nuget.cache b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/obj/project.nuget.cache
index 2802cba..9748656 100644
--- a/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/obj/project.nuget.cache
+++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/Fakes/ydahrc/obj/project.nuget.cache
@@ -1,6 +1,6 @@
{
"version": 2,
- "dgSpecHash": "mks6pYvu6jM=",
+ "dgSpecHash": "/ZH8+E29T+U=",
"success": true,
"projectFilePath": "C:\\Users\\tangl\\Desktop\\Git\\YD_AllHeartRates.Api\\YD_AllHeartRates.Api\\obj\\Debug\\net6.0\\Fakes\\ydahrc\\f.csproj",
"expectedPackageFiles": [],
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfo.cs b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfo.cs
index 1949513..f61e2fe 100644
--- a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfo.cs
+++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfo.cs
@@ -14,7 +14,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("YD_AllHeartRates.Api")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
-[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+42bf593b1ae65e7186d60b546c18343fe32359ce")]
+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+730229b74a66f5ecb8bb885e934d6d7c1a2f8873")]
[assembly: System.Reflection.AssemblyProductAttribute("YD_AllHeartRates.Api")]
[assembly: System.Reflection.AssemblyTitleAttribute("YD_AllHeartRates.Api")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfoInputs.cache b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfoInputs.cache
index 63aface..393205f 100644
--- a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfoInputs.cache
+++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfoInputs.cache
@@ -1 +1 @@
-eb1ec2bd9ec7c97d715e7c99e1670f111d912952d1fec5a1c7f81163850698ea
+55a9d30174cf5cafd72eae0d92049b866215901403ae9201201eb8436d2b1d2d
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.assets.cache b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.assets.cache
index 8491065..3bfc0ef 100644
Binary files a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.assets.cache and b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.assets.cache differ
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.csproj.AssemblyReference.cache b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.csproj.AssemblyReference.cache
index ebb875a..ec0ff03 100644
Binary files a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.csproj.AssemblyReference.cache and b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.csproj.AssemblyReference.cache differ
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.csproj.CoreCompileInputs.cache b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.csproj.CoreCompileInputs.cache
index 5ccfd9d..0fde965 100644
--- a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.csproj.CoreCompileInputs.cache
+++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.csproj.CoreCompileInputs.cache
@@ -1 +1 @@
-846a3516aaec3b5432224ae8f87673da5c58fe1b47815620f1884994153056f4
+fd82c0d96bccd6e9b8950b9d22f9038cb2097b06878d6d322381fa17206e2814
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.csproj.FileListAbsolute.txt b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.csproj.FileListAbsolute.txt
index daa14dc..6446c42 100644
--- a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.csproj.FileListAbsolute.txt
+++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.csproj.FileListAbsolute.txt
@@ -1553,3 +1553,4 @@ C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\n
C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\rjsmcshtml.dswa.cache.json
C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\staticwebassets.build.json.cache
C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\swae.build.ex.cache
+C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\BouncyCastle.Crypto.dll
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.csprojFakesResolveAssemblyReference.cache b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.csprojFakesResolveAssemblyReference.cache
index e91b65a..6addd68 100644
Binary files a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.csprojFakesResolveAssemblyReference.cache and b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.csprojFakesResolveAssemblyReference.cache differ
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.dll b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.dll
index c806b73..7f022ad 100644
Binary files a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.dll and b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.dll differ
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.pdb b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.pdb
index d1115b0..72b4437 100644
Binary files a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.pdb and b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.pdb differ
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.xml b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.xml
index d9d5cb8..b478e20 100644
--- a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.xml
+++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.xml
@@ -14,6 +14,11 @@
用户服务上下文
+
+
+ 数据上报
+
+
设备
@@ -446,6 +451,11 @@
接受写入数据
+
+
+ 数据上报服务类
+
+
服务实现
@@ -592,6 +602,11 @@
+
+
+ 数据上报服务类
+
+
服务接口
@@ -1302,6 +1317,24 @@
+
+
+ SM2 公钥加密(C1C3C2 顺序,输出十六进制)
+
+ 明文字符串
+ 公钥十六进制(压缩或非压缩)
+ 加密后的十六进制密文
+
+
+
+ 十六进制字符串转字节数组
+
+
+
+
+ 字节数组转十六进制字符串
+
+
生成JWT
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/apphost.exe b/YD_AllHeartRates.Api/obj/Debug/net6.0/apphost.exe
index 9a638d8..41577bd 100644
Binary files a/YD_AllHeartRates.Api/obj/Debug/net6.0/apphost.exe and b/YD_AllHeartRates.Api/obj/Debug/net6.0/apphost.exe differ
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/ref/YD_AllHeartRates.Api.dll b/YD_AllHeartRates.Api/obj/Debug/net6.0/ref/YD_AllHeartRates.Api.dll
index bfc0b33..ada1478 100644
Binary files a/YD_AllHeartRates.Api/obj/Debug/net6.0/ref/YD_AllHeartRates.Api.dll and b/YD_AllHeartRates.Api/obj/Debug/net6.0/ref/YD_AllHeartRates.Api.dll differ
diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/refint/YD_AllHeartRates.Api.dll b/YD_AllHeartRates.Api/obj/Debug/net6.0/refint/YD_AllHeartRates.Api.dll
index bfc0b33..ada1478 100644
Binary files a/YD_AllHeartRates.Api/obj/Debug/net6.0/refint/YD_AllHeartRates.Api.dll and b/YD_AllHeartRates.Api/obj/Debug/net6.0/refint/YD_AllHeartRates.Api.dll differ
diff --git a/YD_AllHeartRates.Api/obj/YD_AllHeartRates.Api.csproj.nuget.dgspec.json b/YD_AllHeartRates.Api/obj/YD_AllHeartRates.Api.csproj.nuget.dgspec.json
index ef76b5f..e1fe230 100644
--- a/YD_AllHeartRates.Api/obj/YD_AllHeartRates.Api.csproj.nuget.dgspec.json
+++ b/YD_AllHeartRates.Api/obj/YD_AllHeartRates.Api.csproj.nuget.dgspec.json
@@ -63,6 +63,10 @@
"target": "Package",
"version": "[10.0.0, )"
},
+ "BouncyCastle.NetCore": {
+ "target": "Package",
+ "version": "[2.2.1, )"
+ },
"EPPlus.Core": {
"target": "Package",
"version": "[1.5.4, )"
diff --git a/YD_AllHeartRates.Api/obj/project.assets.json b/YD_AllHeartRates.Api/obj/project.assets.json
index 2a80843..01e1f8f 100644
--- a/YD_AllHeartRates.Api/obj/project.assets.json
+++ b/YD_AllHeartRates.Api/obj/project.assets.json
@@ -77,6 +77,19 @@
"lib/net6.0/AutoMapper.Collection.dll": {}
}
},
+ "BouncyCastle.NetCore/2.2.1": {
+ "type": "package",
+ "compile": {
+ "lib/netstandard2.0/BouncyCastle.Crypto.dll": {
+ "related": ".xml"
+ }
+ },
+ "runtime": {
+ "lib/netstandard2.0/BouncyCastle.Crypto.dll": {
+ "related": ".xml"
+ }
+ }
+ },
"CSRedisCore/3.8.804": {
"type": "package",
"dependencies": {
@@ -2462,6 +2475,21 @@
"lib/net6.0/AutoMapper.Collection.dll"
]
},
+ "BouncyCastle.NetCore/2.2.1": {
+ "sha512": "yfWn8JYPc4rkeM2kcsCqFVFOvwCuuQvIieGtQWcjoWxOioeznXQB3M/GmHgbCWbJjc8ycrwGhZaZPiasifYi4A==",
+ "type": "package",
+ "path": "bouncycastle.netcore/2.2.1",
+ "files": [
+ ".nupkg.metadata",
+ ".signature.p7s",
+ "bouncycastle.netcore.2.2.1.nupkg.sha512",
+ "bouncycastle.netcore.nuspec",
+ "lib/net45/BouncyCastle.Crypto.dll",
+ "lib/net45/BouncyCastle.Crypto.xml",
+ "lib/netstandard2.0/BouncyCastle.Crypto.dll",
+ "lib/netstandard2.0/BouncyCastle.Crypto.xml"
+ ]
+ },
"CSRedisCore/3.8.804": {
"sha512": "ZhxYDbEoRs5hD06UpxCWRBt3mYIYjEDCGVBz3Fjg0y01kAY7R6RtoYS8+S/NjkMaqfWApFHZVU7uVu62ZF8O4w==",
"type": "package",
@@ -7152,6 +7180,7 @@
"net6.0": [
"AutoMapper.Collection >= 10.0.0",
"Autofac.Extensions.DependencyInjection >= 10.0.0",
+ "BouncyCastle.NetCore >= 2.2.1",
"EPPlus.Core >= 1.5.4",
"MQTTnet >= 4.1.4.563",
"Microsoft.AspNetCore.Authentication.JwtBearer >= 6.0.0",
@@ -7231,6 +7260,10 @@
"target": "Package",
"version": "[10.0.0, )"
},
+ "BouncyCastle.NetCore": {
+ "target": "Package",
+ "version": "[2.2.1, )"
+ },
"EPPlus.Core": {
"target": "Package",
"version": "[1.5.4, )"
diff --git a/YD_AllHeartRates.Api/obj/project.nuget.cache b/YD_AllHeartRates.Api/obj/project.nuget.cache
index 705cb45..cf9d2dc 100644
--- a/YD_AllHeartRates.Api/obj/project.nuget.cache
+++ b/YD_AllHeartRates.Api/obj/project.nuget.cache
@@ -1,6 +1,6 @@
{
"version": 2,
- "dgSpecHash": "yrRs/HTlGY8=",
+ "dgSpecHash": "1kkuZSSkfMw=",
"success": true,
"projectFilePath": "C:\\Users\\tangl\\Desktop\\Git\\YD_AllHeartRates.Api\\YD_AllHeartRates.Api\\YD_AllHeartRates.Api.csproj",
"expectedPackageFiles": [
@@ -9,6 +9,7 @@
"C:\\Users\\tangl\\.nuget\\packages\\autofac.extensions.dependencyinjection\\10.0.0\\autofac.extensions.dependencyinjection.10.0.0.nupkg.sha512",
"C:\\Users\\tangl\\.nuget\\packages\\automapper\\13.0.0\\automapper.13.0.0.nupkg.sha512",
"C:\\Users\\tangl\\.nuget\\packages\\automapper.collection\\10.0.0\\automapper.collection.10.0.0.nupkg.sha512",
+ "C:\\Users\\tangl\\.nuget\\packages\\bouncycastle.netcore\\2.2.1\\bouncycastle.netcore.2.2.1.nupkg.sha512",
"C:\\Users\\tangl\\.nuget\\packages\\csrediscore\\3.8.804\\csrediscore.3.8.804.nupkg.sha512",
"C:\\Users\\tangl\\.nuget\\packages\\epplus.core\\1.5.4\\epplus.core.1.5.4.nupkg.sha512",
"C:\\Users\\tangl\\.nuget\\packages\\humanizer.core\\2.8.26\\humanizer.core.2.8.26.nupkg.sha512",
diff --git a/YD_AllHeartRates.Commons/bin/Debug/net6.0/YD_AllHeartRates.Commons.dll b/YD_AllHeartRates.Commons/bin/Debug/net6.0/YD_AllHeartRates.Commons.dll
index b14145c..1acfc3c 100644
Binary files a/YD_AllHeartRates.Commons/bin/Debug/net6.0/YD_AllHeartRates.Commons.dll and b/YD_AllHeartRates.Commons/bin/Debug/net6.0/YD_AllHeartRates.Commons.dll differ
diff --git a/YD_AllHeartRates.Commons/bin/Debug/net6.0/YD_AllHeartRates.Commons.pdb b/YD_AllHeartRates.Commons/bin/Debug/net6.0/YD_AllHeartRates.Commons.pdb
index 291f59e..47d79ac 100644
Binary files a/YD_AllHeartRates.Commons/bin/Debug/net6.0/YD_AllHeartRates.Commons.pdb and b/YD_AllHeartRates.Commons/bin/Debug/net6.0/YD_AllHeartRates.Commons.pdb differ
diff --git a/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.AssemblyInfo.cs b/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.AssemblyInfo.cs
index 3146dea..e0f90b8 100644
--- a/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.AssemblyInfo.cs
+++ b/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.AssemblyInfo.cs
@@ -14,7 +14,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("YD_AllHeartRates.Commons")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
-[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+42bf593b1ae65e7186d60b546c18343fe32359ce")]
+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+730229b74a66f5ecb8bb885e934d6d7c1a2f8873")]
[assembly: System.Reflection.AssemblyProductAttribute("YD_AllHeartRates.Commons")]
[assembly: System.Reflection.AssemblyTitleAttribute("YD_AllHeartRates.Commons")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
diff --git a/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.AssemblyInfoInputs.cache b/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.AssemblyInfoInputs.cache
index 77c3a96..e6e29d4 100644
--- a/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.AssemblyInfoInputs.cache
+++ b/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.AssemblyInfoInputs.cache
@@ -1 +1 @@
-d76e1874ee90c75e3dfb9be6d23862a5fe692dba765d1594bf4e0d8520c9c7d9
+b3283428dd39ff483981fba7fd4efc92e9010220bdd6783e1838aaf65ac09a6e
diff --git a/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.dll b/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.dll
index b14145c..1acfc3c 100644
Binary files a/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.dll and b/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.dll differ
diff --git a/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.pdb b/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.pdb
index 291f59e..47d79ac 100644
Binary files a/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.pdb and b/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.pdb differ
diff --git a/YD_AllHeartRates.Commons/obj/Debug/net6.0/ref/YD_AllHeartRates.Commons.dll b/YD_AllHeartRates.Commons/obj/Debug/net6.0/ref/YD_AllHeartRates.Commons.dll
index 9c4bbe4..bab48f5 100644
Binary files a/YD_AllHeartRates.Commons/obj/Debug/net6.0/ref/YD_AllHeartRates.Commons.dll and b/YD_AllHeartRates.Commons/obj/Debug/net6.0/ref/YD_AllHeartRates.Commons.dll differ
diff --git a/YD_AllHeartRates.Commons/obj/Debug/net6.0/refint/YD_AllHeartRates.Commons.dll b/YD_AllHeartRates.Commons/obj/Debug/net6.0/refint/YD_AllHeartRates.Commons.dll
index 9c4bbe4..bab48f5 100644
Binary files a/YD_AllHeartRates.Commons/obj/Debug/net6.0/refint/YD_AllHeartRates.Commons.dll and b/YD_AllHeartRates.Commons/obj/Debug/net6.0/refint/YD_AllHeartRates.Commons.dll differ