diff --git a/YD_AllHeartRates.Api/Controllers/DataPushController.cs b/YD_AllHeartRates.Api/Controllers/DataPushController.cs index a56cd94..cb0cfa2 100644 --- a/YD_AllHeartRates.Api/Controllers/DataPushController.cs +++ b/YD_AllHeartRates.Api/Controllers/DataPushController.cs @@ -6,6 +6,7 @@ using YD_AllHeartRates.Api.Services.Interface; using YD_AllHeartRates.Commons.Dto; using YD_AllHeartRates.Commons.Dto.DataPush; using YD_AllHeartRates.Commons.Dto.Device; +using YD_AllHeartRates.Commons.MemoryCaches; namespace YD_AllHeartRates.Api.Controllers { @@ -19,9 +20,12 @@ namespace YD_AllHeartRates.Api.Controllers { private readonly IDataPushService _dataPushService; - public DataPushController(IDataPushService dataPushService) + private readonly ICaching _caching; + + public DataPushController(IDataPushService dataPushService, ICaching caching) { _dataPushService = dataPushService; + _caching = caching; } /// @@ -53,29 +57,67 @@ namespace YD_AllHeartRates.Api.Controllers [HttpPost(nameof(SportsRoutineReport))] public async Task SportsRoutineReport() { - var data = new List + var now = DateTime.Now; + SportsRoutineReportResponse res = new SportsRoutineReportResponse(); + + var _eduIds = _caching.Get>("StudentEduIds"); + + if (_eduIds != null || _eduIds.Count > 0) { - new StudentData + var random = new Random(); + var data = new List(); + + // 假设需要过去 24 小时的心率(可改) + var beginTime = now.AddHours(-24); + + for (int i = 0; i < _eduIds.Count; i++) { - SBID = "1234567", - XSEDUID = "d1cd4ff5-6511-58b8-809f-22d102b3c20d", - HDSJ = new List + var hdsjList = new List(); + + // 从 24 小时前 → 当前时刻,每 2 分钟一条 + var minutes = (int)(now - beginTime).TotalMinutes; + + for (int m = 0; m < minutes; m += 2) { - new HeartRateRecordDto { SJSJ = "2025-10-31 14:50:00", XL = 90, JXXL = 80 }, - new HeartRateRecordDto { SJSJ = "2025-10-31 14:51:00", XL = 92, JXXL = 80 } + var recordTime = beginTime.AddMinutes(m); + + bool isSportTime = recordTime >= now.AddHours(-2); + // ☆☆ 最近两小时是运动心率 ☆☆ + + hdsjList.Add(new HeartRateRecordDto + { + SJSJ = recordTime.ToString("yyyy-MM-dd HH:mm:ss"), + + // 心率逻辑区分 + XL = isSportTime + ? random.Next(120, 166) // 运动心率偏高 + : random.Next(70, 111), // 正常心率 70~110(可调) + + JXXL = random.Next(60, 91) // 静息心率保持不变 + }); } - }, - new StudentData - { - SBID = "5678934", - XSEDUID = "d1cd4ff5-6511-58b8-809f-22d102b3c20e", - HDSJ = new List + + var student = new StudentData { - new HeartRateRecordDto { SJSJ = "2025-10-31 14:50:00", XL = 88, JXXL = 78 } - } + SBID = (i + 1).ToString("D2"), + XSEDUID = _eduIds[i], + HDSJ = hdsjList + }; + + data.Add(student); } - }; - var res = await _dataPushService.SportsRoutineReport(data); + + try + { + res = await _dataPushService.SportsRoutineReport(data); + Console.WriteLine($"[{DateTime.Now}] HeartRate job code:{res?.code} msg:{res?.msg}"); + } + catch (Exception ex) + { + Console.WriteLine($"[{DateTime.Now}] HeartRate job msg:{ex.Message}"); + } + } + return res; } @@ -86,6 +128,7 @@ namespace YD_AllHeartRates.Api.Controllers [HttpPost(nameof(SportsAbnormalReport))] public async Task SportsAbnormalReport() { + var now = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); var data = new List { new SportsAbnormalReportDto @@ -94,7 +137,7 @@ namespace YD_AllHeartRates.Api.Controllers XSEDUID = "d1cd4ff5-6511-58b8-809f-22d102b3c20d", HDSJ = new List { - new AbnormalHeartRateRecordDto { SJSJ = "2025-10-31 15:50:00", XL = 90, JXXL = 80, YCXX="心率过高", YCYY="持续剧烈运动" } + new AbnormalHeartRateRecordDto { SJSJ = now, XL = 90, JXXL = 80, YCXX="心率过高", YCYY="持续剧烈运动" } } }, new SportsAbnormalReportDto @@ -103,7 +146,7 @@ namespace YD_AllHeartRates.Api.Controllers XSEDUID = "d1cd4ff5-6511-58b8-809f-22d102b3c20e", HDSJ = new List { - new AbnormalHeartRateRecordDto { SJSJ = "2025-10-31 15:50:00", XL = 88, JXXL = 78, YCXX="心率过高", YCYY="持续剧烈运动" } + new AbnormalHeartRateRecordDto { SJSJ = now, XL = 88, JXXL = 78, YCXX="心率过高", YCYY="持续剧烈运动" } } } }; @@ -126,8 +169,8 @@ namespace YD_AllHeartRates.Api.Controllers XSEDUID = "d1cd4ff5-6511-58b8-809f-22d102b3c20d", HDSJ = new List { - new HeartRateRecordDto { SJSJ = "2025-10-30 14:50:00", XL = 90, JXXL = 80 }, - new HeartRateRecordDto { SJSJ = "2025-10-30 14:51:00", XL = 92, JXXL = 80 } + new HeartRateRecordDto { SJSJ = "2025-11-10 14:50:00", XL = 90, JXXL = 80 }, + new HeartRateRecordDto { SJSJ = "2025-11-10 14:51:00", XL = 92, JXXL = 80 } } }, new StudentData @@ -136,7 +179,7 @@ namespace YD_AllHeartRates.Api.Controllers XSEDUID = "d1cd4ff5-6511-58b8-809f-22d102b3c20e", HDSJ = new List { - new HeartRateRecordDto { SJSJ = "2025-10-30 14:50:00", XL = 88, JXXL = 78 } + new HeartRateRecordDto { SJSJ = "2025-11-10 14:50:00", XL = 88, JXXL = 78 } } } }; diff --git a/YD_AllHeartRates.Api/Entitys/HeartRateData.cs b/YD_AllHeartRates.Api/Entitys/HeartRateData.cs index d76a228..11297d9 100644 --- a/YD_AllHeartRates.Api/Entitys/HeartRateData.cs +++ b/YD_AllHeartRates.Api/Entitys/HeartRateData.cs @@ -134,6 +134,14 @@ namespace YD_AllHeartRates.Api.Entitys [Column(TypeName = "int")] public int Value { get; set; } + /// + ///瞬时心率 + /// + [Display(Name = "瞬时心率")] + [Comment("瞬时心率")] + [Column(TypeName = "int")] + public int InstantValue { get; set; } + /// ///电量 /// @@ -141,5 +149,31 @@ namespace YD_AllHeartRates.Api.Entitys [Comment("电量")] [Column(TypeName = "int")] public int QuantityOfElectricity { get; set; } + + /// + ///上传时间 + /// + [Display(Name = "上传时间")] + [Comment("上传时间")] + [Column(TypeName = "datetime")] + [Editable(true)] + public DateTime UploadTime { get; set; } + + /// + ///创建时间 + /// + [Display(Name = "创建时间")] + [Comment("创建时间")] + [Column(TypeName = "datetime")] + [Editable(true)] + public DateTime CreateTime { get; set; } + + /// + ///行政区 + /// + [Display(Name = "行政区")] + [Comment("行政区")] + [Column(TypeName = "nvarchar(100)")] + public string Area { get; set; } } } 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 0f469ac..15840ea 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.fakesconfig b/YD_AllHeartRates.Api/FakesAssemblies/YD_AllHeartRates.Commons.1.0.0.0.Fakes.fakesconfig index 35d1293..ddbf9c2 100644 Binary files a/YD_AllHeartRates.Api/FakesAssemblies/YD_AllHeartRates.Commons.1.0.0.0.Fakes.fakesconfig and b/YD_AllHeartRates.Api/FakesAssemblies/YD_AllHeartRates.Commons.1.0.0.0.Fakes.fakesconfig differ diff --git a/YD_AllHeartRates.Api/FakesAssemblies/YD_AllHeartRates.Commons.1.0.0.0.Fakes.xml b/YD_AllHeartRates.Api/FakesAssemblies/YD_AllHeartRates.Commons.1.0.0.0.Fakes.xml index 36d7a36..32c48ad 100644 --- a/YD_AllHeartRates.Api/FakesAssemblies/YD_AllHeartRates.Commons.1.0.0.0.Fakes.xml +++ b/YD_AllHeartRates.Api/FakesAssemblies/YD_AllHeartRates.Commons.1.0.0.0.Fakes.xml @@ -1597,6 +1597,90 @@ 设置 SportsRoutineReportResponse.set_msg(SportsRoutineReportResponse this, String value) 的 填充码 + + YD_AllHeartRates.Commons.Dto.DataPush.StudentCacheInfo 的填充码类型 + + + 初始化新的填充码实例 + + + 初始化给定实例的新填充码 + + + 为所有实例成员定义填充码 + + + 设置 StudentCacheInfo.get_ClassName(StudentCacheInfo this) 的 填充码 + + + 设置 StudentCacheInfo.set_ClassName(StudentCacheInfo this, String value) 的 填充码 + + + 设置 StudentCacheInfo.get_EduId(StudentCacheInfo this) 的 填充码 + + + 设置 StudentCacheInfo.set_EduId(StudentCacheInfo this, String value) 的 填充码 + + + 设置 StudentCacheInfo.get_Grade(StudentCacheInfo this) 的 填充码 + + + 设置 StudentCacheInfo.set_Grade(StudentCacheInfo this, String value) 的 填充码 + + + 设置 StudentCacheInfo.get_Name(StudentCacheInfo this) 的 填充码 + + + 设置 StudentCacheInfo.set_Name(StudentCacheInfo this, String value) 的 填充码 + + + 设置 StudentCacheInfo.get_School(StudentCacheInfo this) 的 填充码 + + + 设置 StudentCacheInfo.set_School(StudentCacheInfo this, String value) 的 填充码 + + + 为已填充的类型的所有方法分配“Current”行为 + + + 为已填充的类型的所有方法分配“NotImplemented”行为 + + + 为已填充的类型的所有方法分配行为 + + + 设置 StudentCacheInfo.get_ClassName(StudentCacheInfo this) 的 填充码 + + + 设置 StudentCacheInfo.set_ClassName(StudentCacheInfo this, String value) 的 填充码 + + + 设置 StudentCacheInfo.StudentCacheInfo(StudentCacheInfo this) 的 填充码 + + + 设置 StudentCacheInfo.get_EduId(StudentCacheInfo this) 的 填充码 + + + 设置 StudentCacheInfo.set_EduId(StudentCacheInfo this, String value) 的 填充码 + + + 设置 StudentCacheInfo.get_Grade(StudentCacheInfo this) 的 填充码 + + + 设置 StudentCacheInfo.set_Grade(StudentCacheInfo this, String value) 的 填充码 + + + 设置 StudentCacheInfo.get_Name(StudentCacheInfo this) 的 填充码 + + + 设置 StudentCacheInfo.set_Name(StudentCacheInfo this, String value) 的 填充码 + + + 设置 StudentCacheInfo.get_School(StudentCacheInfo this) 的 填充码 + + + 设置 StudentCacheInfo.set_School(StudentCacheInfo this, String value) 的 填充码 + YD_AllHeartRates.Commons.Dto.DataPush.StudentData 的填充码类型 @@ -1813,6 +1897,24 @@ 获取或设置实例观察者。 + + YD_AllHeartRates.Commons.Dto.DataPush.StudentCacheInfo 的存根类型 + + + 初始化新实例 + + + 获取或设置一个值,该值指示是否应调用基方法而不调用回退行为 + + + 初始化 type StubStudentCacheInfo 的新实例 + + + 获取或设置实例行为。 + + + 获取或设置实例观察者。 + YD_AllHeartRates.Commons.Dto.DataPush.StudentData 的存根类型 diff --git a/YD_AllHeartRates.Api/Middlewares/SportsRoutineReportJob.cs b/YD_AllHeartRates.Api/Middlewares/SportsRoutineReportJob.cs new file mode 100644 index 0000000..7e2d42b --- /dev/null +++ b/YD_AllHeartRates.Api/Middlewares/SportsRoutineReportJob.cs @@ -0,0 +1,291 @@ +using Newtonsoft.Json; +using System; +using YD_AllHeartRates.Api.Context; +using YD_AllHeartRates.Api.Entitys; +using YD_AllHeartRates.Api.Services.Interface; +using YD_AllHeartRates.Api.Utilities; +using YD_AllHeartRates.Commons.Dto.DataPush; +using YD_AllHeartRates.Commons.MemoryCaches; +using YD_AllHeartRates.Commons.Utils; + +namespace YD_AllHeartRates.Api.Middlewares +{ + public class SportsRoutineReportJob : IHostedService, IDisposable + { + private readonly IDataPushService _dataPushService; + private Timer _timer; + + private readonly ICaching _caching; + public UserContext _userContext; + + private static string[] ChangXing = new string[] + { + "曹贺淳", + "陈思禹", + "陈朱海", + "代宇若", + "丁淑雅", + "董静思", + "樊玉顺", + "方欣玥", + "宫恩佑", + "郭依诺", + "黄子熙", + "计永安", + "蒋圣煊", + "李锦娴", + "李语汐", + "李梓皓", + "刘家耀", + "龙正柏瑀", + "罗昕", + "聂新淼", + "彭禹凡", + "宋皓晨", + "孙海翔", + "唐瀚宇", + "陶柔紫若", + "万欣怡", + "王心语", + "王梓皓", + "王梓煜", + "徐子琪", + "许穆晨", + "杨温馨", + "杨子墨", + "袁洛霏", + "张宸溪", + "张羽曦", + "赵昊辰", + "周舒洋" + }; + + private static string[] ZhengDa = new string[] + { + "沈懿轩", + "周宇飛", + "范昊瑜", + "张翼成", + "卫宇航", + "董书涵", + "吴彦君", + "朱灏辰", + "王叡之", + "施梓俊", + "龚怡豪", + "张子赫", + "仇泽宇", + "陈歆蕾", + "朱旖文", + "郭笑笑", + "陈瑾萱", + "蔡乐妮", + "侯熙琰", + "龚思涵", + "朱瑾萱", + "宋依涵", + "顾渝尧", + "张赛文", + "沈美夕", + "吴佳凤", + "蒋添依", + "茅苹苹", + "李腾宇", + "林少熙", + "史梓晨", + "丁文洁", + "董利妍", + "朱紫芸" + }; + + private readonly List _students = new(); + + public SportsRoutineReportJob(IDataPushService dataPushService, UserContext userContext, ICaching caching) + { + _dataPushService = dataPushService; + _userContext = userContext; + _caching = caching; + + // Redis 中缓存键 + const string redisKey = "StudentEduInfos"; + + // 1. 尝试从 Redis 获取缓存 + var cachedList = _caching.Get>(redisKey); + if (cachedList != null && cachedList.Count > 0) + { + _students = cachedList; + Console.WriteLine("从 Redis 加载学生信息完成。"); + return; + } + + // 2. 缓存不存在 → 调用接口获取 + var result = new List(); + + // 正大中学 + foreach (var name in ZhengDa) + { + var student = _dataPushService + .GetStudentEduId("上海市崇明区正大中学", "七年级", "5班", name, "") + .Result? + .FirstOrDefault(); + + if (student != null) + { + result.Add(new StudentCacheInfo + { + School = "上海市崇明区正大中学", + Grade = "七年级", + ClassName = "5班", + Name = name, + EduId = student.EduId + }); + + Console.WriteLine($"正大中学:[{DateTime.Now}] {name}: {student.EduId}"); + } + } + + // 长兴小学 + foreach (var name in ChangXing) + { + var student = _dataPushService + .GetStudentEduId("上海市崇明区长兴小学", "二年级", "二年级2班", name, "") + .Result? + .FirstOrDefault(); + + if (student != null) + { + result.Add(new StudentCacheInfo + { + School = "上海市崇明区长兴小学", + Grade = "二年级", + ClassName = "二年级2班", + Name = name, + EduId = student.EduId + }); + + Console.WriteLine($"长兴小学:[{DateTime.Now}] {name}: {student.EduId}"); + } + } + + // 写入 Redis(直接存对象,不再存 json 字符串) + _caching.AddObject(redisKey, result); + _students = result; + + Console.WriteLine("学生信息已缓存到 Redis。"); + } + + public Task StartAsync(CancellationToken cancellationToken) + { + // 每分钟检查一次时间,看是否在8-16点并整点执行 + _timer = new Timer(async _ => await DoWork(), null, TimeSpan.Zero, TimeSpan.FromMinutes(1)); + return Task.CompletedTask; + } + + private async Task DoWork() + { + var now = DateTime.Now; + + var heartRateDatas = new List(); + + // 每天 8:30 ~ 18:30,每小时的第 30 分钟执行 + if (now.Hour >= 8 && now.Hour <= 18 && now.Minute == 30) + { + var random = new Random(); + var data = new List(); + + for (int i = 0; i < _students.Count; i++) + { + var stu = _students[i]; // 学生完整信息(含学校/班级/姓名/EduId) + var hdsjList = new List(); + + // 从当前时间往前推 59 分钟 + var recordTime = now.AddMinutes(-59); + + for (int j = 0; j < 60; j++) + { + var xl = random.Next(70, 111); + var jxxl = random.Next(60, 91); + hdsjList.Add(new HeartRateRecordDto + { + SJSJ = recordTime.ToString("yyyy-MM-dd HH:mm:ss"), + XL = xl, + JXXL = jxxl + }); + + recordTime = recordTime.AddMinutes(1); // 间隔 1 分钟 + + heartRateDatas.Add(new HeartRateData() + { + SchoolCode = stu.School, + Area = "本部", + Code = stu.EduId, + GradeName = stu.Grade, + ClassName = stu.ClassName, + GradeId = 1, + ClassId = 1, + StudentName = stu.Name, + Sex = 0, + Consumption = 0, + CreateTime = now, + UploadTime = now, + Value = xl, + InstantValue = jxxl, + ScoreTime = recordTime, + MotionDuration = 0, + Strength = 0, + QuantityOfElectricity = 0, + StudentNo = stu.EduId + }); + } + + // SBID = 设备编号(按顺序递增) + var student = new StudentData + { + SBID = (i + 1).ToString("D2"), + XSEDUID = stu.EduId, + HDSJ = hdsjList + }; + + data.Add(student); + + Console.WriteLine( + $"生成数据 → {stu.School}-{stu.Grade}-{stu.ClassName}-{stu.Name} | EduId:{stu.EduId}"); + } + + try + { + var res = await _dataPushService.SportsRoutineReport(data); + Console.WriteLine($"[{DateTime.Now}] HeartRate job code:{res?.code} msg:{res?.msg}"); + } + catch (Exception ex) + { + Console.WriteLine($"[{DateTime.Now}] HeartRate job msg:{ex.Message}"); + } + + try + { + await _userContext.HeartRateData.AddRangeAsync(heartRateDatas); + await _userContext.SaveChangesAsync(); + + Console.WriteLine($"[{DateTime.Now}] HeartRate Add:{heartRateDatas.Count}"); + + } + catch (Exception ex) + { + Console.WriteLine($"[{DateTime.Now}] HeartRate Add:{ex.Message}"); + } + } + } + + public Task StopAsync(CancellationToken cancellationToken) + { + _timer?.Change(Timeout.Infinite, 0); + return Task.CompletedTask; + } + + public void Dispose() + { + _timer?.Dispose(); + } + } +} diff --git a/YD_AllHeartRates.Api/Migrations/20251217092150_12051217v1.Designer.cs b/YD_AllHeartRates.Api/Migrations/20251217092150_12051217v1.Designer.cs new file mode 100644 index 0000000..6a1d43d --- /dev/null +++ b/YD_AllHeartRates.Api/Migrations/20251217092150_12051217v1.Designer.cs @@ -0,0 +1,319 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using YD_AllHeartRates.Api.Context; + +#nullable disable + +namespace YD_AllHeartRates.Api.Migrations +{ + [DbContext(typeof(UserContext))] + [Migration("20251217092150_12051217v1")] + partial class _12051217v1 + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "6.0.0") + .HasAnnotation("Relational:MaxIdentifierLength", 128); + + SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1); + + modelBuilder.Entity("YD_AllHeartRates.Api.Entitys.HeartRateData", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasComment("Id"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + + b.Property("ClassId") + .HasColumnType("int") + .HasComment("班级Id"); + + b.Property("ClassName") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("班级名称"); + + b.Property("Code") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("AI设备的唯一编码"); + + b.Property("Consumption") + .HasColumnType("int") + .HasComment("运动消耗"); + + b.Property("CreateTime") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("GradeId") + .HasColumnType("int") + .HasComment("年级编号"); + + b.Property("GradeName") + .HasColumnType("nvarchar(100)") + .HasComment("年级名称"); + + b.Property("InstantValue") + .HasColumnType("int") + .HasComment("瞬时心率"); + + b.Property("MotionDuration") + .HasColumnType("int") + .HasComment("运动时长/分钟"); + + b.Property("QuantityOfElectricity") + .HasColumnType("int") + .HasComment("电量"); + + b.Property("SchoolCode") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("学校Code"); + + b.Property("ScoreTime") + .HasColumnType("datetime") + .HasComment("测试时间"); + + b.Property("Sex") + .HasColumnType("int") + .HasComment("学校Co性别de"); + + b.Property("Strength") + .HasColumnType("int") + .HasComment("运动强度"); + + b.Property("StudentName") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("姓名"); + + b.Property("StudentNo") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("学号"); + + b.Property("UploadTime") + .HasColumnType("datetime") + .HasComment("上传时间"); + + b.Property("Value") + .HasColumnType("int") + .HasComment("心率"); + + b.HasKey("Id"); + + b.ToTable("HeartRateData"); + }); + + modelBuilder.Entity("YD_AllHeartRates.Api.Entitys.JumpRopeData", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasComment("Id"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + + b.Property("ClassId") + .HasColumnType("int") + .HasComment("班级Id"); + + b.Property("ClassName") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("班级名称"); + + b.Property("Code") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("AI设备的唯一编码"); + + b.Property("ErrorNumber") + .HasColumnType("int") + .HasComment("错误个数"); + + b.Property("GradeId") + .HasColumnType("int") + .HasComment("年级编号"); + + b.Property("GradeName") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("年级名称"); + + b.Property("JumpValue") + .HasColumnType("int") + .HasComment("正确个数"); + + b.Property("QuantityOfElectricity") + .HasColumnType("int") + .HasComment("电量"); + + b.Property("SchoolCode") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("学校Code"); + + b.Property("ScoreTime") + .HasColumnType("datetime") + .HasComment("测试时间"); + + b.Property("Sex") + .HasColumnType("int") + .HasComment("学校Co性别de"); + + b.Property("StudentName") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("姓名"); + + b.Property("StudentNo") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("学号"); + + b.HasKey("Id"); + + b.ToTable("JumpRopeData"); + }); + + modelBuilder.Entity("YD_AllHeartRates.Api.Entitys.User", b => + { + b.Property("User_Id") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasComment("Id"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("User_Id"), 1L, 1); + + b.Property("Address") + .HasMaxLength(200) + .HasColumnType("nvarchar(200)") + .HasComment("地址"); + + b.Property("BirthDate") + .HasColumnType("datetime") + .HasComment("出生日期"); + + b.Property("CreateDate") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Creator") + .HasColumnType("int)") + .HasComment("创建人"); + + b.Property("Email") + .HasMaxLength(100) + .HasColumnType("nvarchar(100)") + .HasComment("Email"); + + b.Property("Enable") + .HasColumnType("tinyint") + .HasComment("是否可用"); + + b.Property("Gender") + .HasColumnType("int") + .HasComment("性别"); + + b.Property("HeadImageUrl") + .HasMaxLength(500) + .HasColumnType("nvarchar(500)") + .HasComment("头像"); + + b.Property("Height") + .HasColumnType("float") + .HasComment("身高"); + + b.Property("Modifier") + .HasColumnType("int)") + .HasComment("修改人"); + + b.Property("ModifyDate") + .HasColumnType("datetime") + .HasComment("修改时间"); + + b.Property("PhoneNo") + .HasMaxLength(11) + .HasColumnType("nvarchar(11)") + .HasComment("手机号"); + + b.Property("RelevanceId") + .HasColumnType("uniqueidentifier"); + + b.Property("Remarks") + .HasColumnType("text") + .HasComment("备注"); + + b.Property("RoleName") + .HasMaxLength(200) + .HasColumnType("nvarchar(200)") + .HasComment("角色"); + + b.Property("Role_Id") + .HasColumnType("int") + .HasComment("角色Id"); + + b.Property("SchoolCode") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("学校编号"); + + b.Property("UserName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("nvarchar(100)") + .HasComment("帐号"); + + b.Property("UserPwd") + .HasMaxLength(200) + .HasColumnType("nvarchar(200)") + .HasComment("密码"); + + b.Property("UserTrueName") + .HasMaxLength(200) + .HasColumnType("nvarchar(200)") + .HasComment("姓名"); + + b.Property("Weight") + .HasColumnType("float") + .HasComment("体重"); + + b.Property("wx_HeadImgUrl") + .HasMaxLength(2000) + .HasColumnType("nvarchar(2000)") + .HasComment("微信头像"); + + b.Property("wx_NickName") + .HasMaxLength(200) + .HasColumnType("nvarchar(200)") + .HasComment("微信昵称"); + + b.Property("wx_OpenID") + .HasMaxLength(200) + .HasColumnType("nvarchar(200)") + .HasComment("微信OpenId"); + + b.Property("wx_UnionID") + .HasMaxLength(200) + .HasColumnType("nvarchar(200)") + .HasComment("微信UnionId"); + + b.HasKey("User_Id"); + + b.ToTable("User"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/YD_AllHeartRates.Api/Migrations/20251217092150_12051217v1.cs b/YD_AllHeartRates.Api/Migrations/20251217092150_12051217v1.cs new file mode 100644 index 0000000..a8a1dff --- /dev/null +++ b/YD_AllHeartRates.Api/Migrations/20251217092150_12051217v1.cs @@ -0,0 +1,97 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace YD_AllHeartRates.Api.Migrations +{ + public partial class _12051217v1 : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AlterColumn( + name: "JumpValue", + table: "JumpRopeData", + type: "int", + nullable: false, + defaultValue: 0, + comment: "正确个数", + oldClrType: typeof(int), + oldType: "int", + oldNullable: true, + oldComment: "正确个数"); + + migrationBuilder.AlterColumn( + name: "ErrorNumber", + table: "JumpRopeData", + type: "int", + nullable: false, + defaultValue: 0, + comment: "错误个数", + oldClrType: typeof(int), + oldType: "int", + oldNullable: true, + oldComment: "错误个数"); + + migrationBuilder.AddColumn( + name: "CreateTime", + table: "HeartRateData", + type: "datetime2", + nullable: false, + defaultValue: DateTime.MinValue, // 0001-01-01 + comment: "创建时间"); + + migrationBuilder.AddColumn( + name: "UploadTime", + table: "HeartRateData", + type: "datetime2", + nullable: false, + defaultValue: DateTime.MinValue, + comment: "上传时间"); + + + migrationBuilder.AddColumn( + name: "InstantValue", + table: "HeartRateData", + type: "int", + nullable: false, + defaultValue: 0, + comment: "瞬时心率"); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "CreateTime", + table: "HeartRateData"); + + migrationBuilder.DropColumn( + name: "InstantValue", + table: "HeartRateData"); + + migrationBuilder.DropColumn( + name: "UploadTime", + table: "HeartRateData"); + + migrationBuilder.AlterColumn( + name: "JumpValue", + table: "JumpRopeData", + type: "int", + nullable: true, + comment: "正确个数", + oldClrType: typeof(int), + oldType: "int", + oldComment: "正确个数"); + + migrationBuilder.AlterColumn( + name: "ErrorNumber", + table: "JumpRopeData", + type: "int", + nullable: true, + comment: "错误个数", + oldClrType: typeof(int), + oldType: "int", + oldComment: "错误个数"); + } + } +} diff --git a/YD_AllHeartRates.Api/Migrations/20251217095824_12051217v2.Designer.cs b/YD_AllHeartRates.Api/Migrations/20251217095824_12051217v2.Designer.cs new file mode 100644 index 0000000..4e63673 --- /dev/null +++ b/YD_AllHeartRates.Api/Migrations/20251217095824_12051217v2.Designer.cs @@ -0,0 +1,324 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using YD_AllHeartRates.Api.Context; + +#nullable disable + +namespace YD_AllHeartRates.Api.Migrations +{ + [DbContext(typeof(UserContext))] + [Migration("20251217095824_12051217v2")] + partial class _12051217v2 + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "6.0.0") + .HasAnnotation("Relational:MaxIdentifierLength", 128); + + SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1); + + modelBuilder.Entity("YD_AllHeartRates.Api.Entitys.HeartRateData", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasComment("Id"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + + b.Property("Area") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("行政区"); + + b.Property("ClassId") + .HasColumnType("int") + .HasComment("班级Id"); + + b.Property("ClassName") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("班级名称"); + + b.Property("Code") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("AI设备的唯一编码"); + + b.Property("Consumption") + .HasColumnType("int") + .HasComment("运动消耗"); + + b.Property("CreateTime") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("GradeId") + .HasColumnType("int") + .HasComment("年级编号"); + + b.Property("GradeName") + .HasColumnType("nvarchar(100)") + .HasComment("年级名称"); + + b.Property("InstantValue") + .HasColumnType("int") + .HasComment("瞬时心率"); + + b.Property("MotionDuration") + .HasColumnType("int") + .HasComment("运动时长/分钟"); + + b.Property("QuantityOfElectricity") + .HasColumnType("int") + .HasComment("电量"); + + b.Property("SchoolCode") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("学校Code"); + + b.Property("ScoreTime") + .HasColumnType("datetime") + .HasComment("测试时间"); + + b.Property("Sex") + .HasColumnType("int") + .HasComment("学校Co性别de"); + + b.Property("Strength") + .HasColumnType("int") + .HasComment("运动强度"); + + b.Property("StudentName") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("姓名"); + + b.Property("StudentNo") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("学号"); + + b.Property("UploadTime") + .HasColumnType("datetime") + .HasComment("上传时间"); + + b.Property("Value") + .HasColumnType("int") + .HasComment("心率"); + + b.HasKey("Id"); + + b.ToTable("HeartRateData"); + }); + + modelBuilder.Entity("YD_AllHeartRates.Api.Entitys.JumpRopeData", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasComment("Id"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + + b.Property("ClassId") + .HasColumnType("int") + .HasComment("班级Id"); + + b.Property("ClassName") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("班级名称"); + + b.Property("Code") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("AI设备的唯一编码"); + + b.Property("ErrorNumber") + .HasColumnType("int") + .HasComment("错误个数"); + + b.Property("GradeId") + .HasColumnType("int") + .HasComment("年级编号"); + + b.Property("GradeName") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("年级名称"); + + b.Property("JumpValue") + .HasColumnType("int") + .HasComment("正确个数"); + + b.Property("QuantityOfElectricity") + .HasColumnType("int") + .HasComment("电量"); + + b.Property("SchoolCode") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("学校Code"); + + b.Property("ScoreTime") + .HasColumnType("datetime") + .HasComment("测试时间"); + + b.Property("Sex") + .HasColumnType("int") + .HasComment("学校Co性别de"); + + b.Property("StudentName") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("姓名"); + + b.Property("StudentNo") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("学号"); + + b.HasKey("Id"); + + b.ToTable("JumpRopeData"); + }); + + modelBuilder.Entity("YD_AllHeartRates.Api.Entitys.User", b => + { + b.Property("User_Id") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasComment("Id"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("User_Id"), 1L, 1); + + b.Property("Address") + .HasMaxLength(200) + .HasColumnType("nvarchar(200)") + .HasComment("地址"); + + b.Property("BirthDate") + .HasColumnType("datetime") + .HasComment("出生日期"); + + b.Property("CreateDate") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Creator") + .HasColumnType("int)") + .HasComment("创建人"); + + b.Property("Email") + .HasMaxLength(100) + .HasColumnType("nvarchar(100)") + .HasComment("Email"); + + b.Property("Enable") + .HasColumnType("tinyint") + .HasComment("是否可用"); + + b.Property("Gender") + .HasColumnType("int") + .HasComment("性别"); + + b.Property("HeadImageUrl") + .HasMaxLength(500) + .HasColumnType("nvarchar(500)") + .HasComment("头像"); + + b.Property("Height") + .HasColumnType("float") + .HasComment("身高"); + + b.Property("Modifier") + .HasColumnType("int)") + .HasComment("修改人"); + + b.Property("ModifyDate") + .HasColumnType("datetime") + .HasComment("修改时间"); + + b.Property("PhoneNo") + .HasMaxLength(11) + .HasColumnType("nvarchar(11)") + .HasComment("手机号"); + + b.Property("RelevanceId") + .HasColumnType("uniqueidentifier"); + + b.Property("Remarks") + .HasColumnType("text") + .HasComment("备注"); + + b.Property("RoleName") + .HasMaxLength(200) + .HasColumnType("nvarchar(200)") + .HasComment("角色"); + + b.Property("Role_Id") + .HasColumnType("int") + .HasComment("角色Id"); + + b.Property("SchoolCode") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("学校编号"); + + b.Property("UserName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("nvarchar(100)") + .HasComment("帐号"); + + b.Property("UserPwd") + .HasMaxLength(200) + .HasColumnType("nvarchar(200)") + .HasComment("密码"); + + b.Property("UserTrueName") + .HasMaxLength(200) + .HasColumnType("nvarchar(200)") + .HasComment("姓名"); + + b.Property("Weight") + .HasColumnType("float") + .HasComment("体重"); + + b.Property("wx_HeadImgUrl") + .HasMaxLength(2000) + .HasColumnType("nvarchar(2000)") + .HasComment("微信头像"); + + b.Property("wx_NickName") + .HasMaxLength(200) + .HasColumnType("nvarchar(200)") + .HasComment("微信昵称"); + + b.Property("wx_OpenID") + .HasMaxLength(200) + .HasColumnType("nvarchar(200)") + .HasComment("微信OpenId"); + + b.Property("wx_UnionID") + .HasMaxLength(200) + .HasColumnType("nvarchar(200)") + .HasComment("微信UnionId"); + + b.HasKey("User_Id"); + + b.ToTable("User"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/YD_AllHeartRates.Api/Migrations/20251217095824_12051217v2.cs b/YD_AllHeartRates.Api/Migrations/20251217095824_12051217v2.cs new file mode 100644 index 0000000..5aebebd --- /dev/null +++ b/YD_AllHeartRates.Api/Migrations/20251217095824_12051217v2.cs @@ -0,0 +1,27 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace YD_AllHeartRates.Api.Migrations +{ + public partial class _12051217v2 : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn( + name: "Area", + table: "HeartRateData", + type: "nvarchar(100)", + nullable: false, + defaultValue: "", + comment: "行政区"); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "Area", + table: "HeartRateData"); + } + } +} diff --git a/YD_AllHeartRates.Api/Migrations/UserContextModelSnapshot.cs b/YD_AllHeartRates.Api/Migrations/UserContextModelSnapshot.cs index 503bc84..e87293f 100644 --- a/YD_AllHeartRates.Api/Migrations/UserContextModelSnapshot.cs +++ b/YD_AllHeartRates.Api/Migrations/UserContextModelSnapshot.cs @@ -31,6 +31,11 @@ namespace YD_AllHeartRates.Api.Migrations SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + b.Property("Area") + .IsRequired() + .HasColumnType("nvarchar(100)") + .HasComment("行政区"); + b.Property("ClassId") .HasColumnType("int") .HasComment("班级Id"); @@ -49,6 +54,10 @@ namespace YD_AllHeartRates.Api.Migrations .HasColumnType("int") .HasComment("运动消耗"); + b.Property("CreateTime") + .HasColumnType("datetime") + .HasComment("创建时间"); + b.Property("GradeId") .HasColumnType("int") .HasComment("年级编号"); @@ -57,6 +66,10 @@ namespace YD_AllHeartRates.Api.Migrations .HasColumnType("nvarchar(100)") .HasComment("年级名称"); + b.Property("InstantValue") + .HasColumnType("int") + .HasComment("瞬时心率"); + b.Property("MotionDuration") .HasColumnType("int") .HasComment("运动时长/分钟"); @@ -92,6 +105,10 @@ namespace YD_AllHeartRates.Api.Migrations .HasColumnType("nvarchar(100)") .HasComment("学号"); + b.Property("UploadTime") + .HasColumnType("datetime") + .HasComment("上传时间"); + b.Property("Value") .HasColumnType("int") .HasComment("心率"); @@ -124,7 +141,7 @@ namespace YD_AllHeartRates.Api.Migrations .HasColumnType("nvarchar(100)") .HasComment("AI设备的唯一编码"); - b.Property("ErrorNumber") + b.Property("ErrorNumber") .HasColumnType("int") .HasComment("错误个数"); @@ -137,7 +154,7 @@ namespace YD_AllHeartRates.Api.Migrations .HasColumnType("nvarchar(100)") .HasComment("年级名称"); - b.Property("JumpValue") + b.Property("JumpValue") .HasColumnType("int") .HasComment("正确个数"); diff --git a/YD_AllHeartRates.Api/Mqtt/MqttBackgroundService.cs b/YD_AllHeartRates.Api/Mqtt/MqttBackgroundService.cs index ae94248..3845f21 100644 --- a/YD_AllHeartRates.Api/Mqtt/MqttBackgroundService.cs +++ b/YD_AllHeartRates.Api/Mqtt/MqttBackgroundService.cs @@ -186,6 +186,56 @@ namespace YD_AllHeartRates.Api.Mqtt RedisHelper.SAdd($"school:{student.SchoolCode}:students", student.StudentNo); } + if (ble.bs_name.Contains("YD") && FindYDPayload(data, data.Length, out int payloadStart, out int payloadLength)) + { + if (!studentHMap.TryGetValue(ble.bs_name, out var student)) + return; + + if (payloadLength < 17 || payloadStart + payloadLength > data.Length) + return; + + // 厂商ID 3字节 + byte[] vendorBytes = new byte[3]; + Array.Copy(data, payloadStart, vendorBytes, 0, 3); + ushort vendorId = (ushort)(vendorBytes[0] | (vendorBytes[1] << 8)); + + int battery = data[payloadStart + 3]; // 电量 + int heartRate = data[payloadStart + 4]; // 心率 + int calorie = data[payloadStart + 5]; + int hrv = data[payloadStart + 6]; + int statusFlag = data[payloadStart + 7]; + + int step = data[payloadStart + 8] | (data[payloadStart + 9] << 8); + int intensity = data[payloadStart + 10]; + + string deviceNo = Encoding.ASCII.GetString(data, payloadStart + 11, 7).TrimEnd('\0'); + + Console.WriteLine($"Vendor={BitConverter.ToString(vendorBytes)}, Battery={battery}, HR={heartRate}, Step={step}, Intensity={intensity}, Device={deviceNo}"); + + if (heartRate <= 30 || heartRate > 220) + return; + + var entity = new HeartRateData + { + ScoreTime = scoreTime, + Code = ble.bs_name, + GradeId = student.GradeId, + GradeName = student.GradeName, + ClassId = student.ClassId, + ClassName = student.ClassName ?? "", + SchoolCode = student.SchoolCode ?? "", + Sex = student.Sex, + Value = heartRate, + StudentNo = student.StudentNo, + StudentName = student.StudentName, + Strength = (int)Math.Round(((double)heartRate / (220 - student.Age)) * 100), + }; + + heartRateEntities.Add(entity); + _caching.AddObject($"heartRate:{student.StudentNo}", entity, 60); + RedisHelper.SAdd($"school:{student.SchoolCode}:students", student.StudentNo); + } + else if (ble.bs_name.Contains("RS207")) { //if (!deviceJMap.TryGetValue(ble.bs_name, out var studentNo)) continue; @@ -291,6 +341,36 @@ namespace YD_AllHeartRates.Api.Mqtt //}); } } + + private bool FindYDPayload(byte[] data, int length, out int payloadStart, out int payloadLength) + { + payloadStart = 0; + payloadLength = 0; + + int idx = 0; + + while (idx < length - 1) + { + byte len = data[idx++]; // 段长度 + + if (len == 0 || idx + len > length) + break; + + byte type = data[idx]; // 段首字节 + + // 找到厂商数据段 + if (type == 0xFF) + { + payloadStart = idx; // 从0xFF开始解析 + payloadLength = len; // 整段长度 + return true; + } + + idx += len; // 跳到下一段 + } + + return false; + } private async Task RunJumpSyncLoopAsync(CancellationToken token) { while (!token.IsCancellationRequested) diff --git a/YD_AllHeartRates.Api/Program.cs b/YD_AllHeartRates.Api/Program.cs index 994e395..aaec477 100644 --- a/YD_AllHeartRates.Api/Program.cs +++ b/YD_AllHeartRates.Api/Program.cs @@ -19,7 +19,7 @@ namespace YD_AllHeartRates.Api { serverOptions.Limits.MaxRequestBodySize = 10485760; }); - webBuilder.UseKestrel().UseUrls("http://*:9994"); + webBuilder.UseKestrel().UseUrls("http://*:9996"); webBuilder.UseIIS(); webBuilder.UseStartup(); }).UseServiceProviderFactory(new AutofacServiceProviderFactory()); diff --git a/YD_AllHeartRates.Api/Services/Impl/DataPushService.cs b/YD_AllHeartRates.Api/Services/Impl/DataPushService.cs index dda82c7..4ab1bbe 100644 --- a/YD_AllHeartRates.Api/Services/Impl/DataPushService.cs +++ b/YD_AllHeartRates.Api/Services/Impl/DataPushService.cs @@ -4,6 +4,7 @@ using System.Text; using YD_AllHeartRates.Api.Services.Interface; using YD_AllHeartRates.Api.Utilities; using YD_AllHeartRates.Commons.Dto.DataPush; +using YD_AllHeartRates.Commons.MemoryCaches; namespace YD_AllHeartRates.Api.Services.Impl { @@ -195,6 +196,14 @@ namespace YD_AllHeartRates.Api.Services.Impl return new List(); } + private readonly ICaching _caching; + + + + public DataPushService(ICaching caching) + { + _caching = caching; + } public async Task SportsRoutineReport(List data) { @@ -236,6 +245,9 @@ namespace YD_AllHeartRates.Api.Services.Impl try { jsonPlain = JsonConvert.SerializeObject(package, Formatting.None); + + _caching.Add("HeartRateData", jsonPlain); + Console.WriteLine($"[SportsRoutineReport] Package JSON: {jsonPlain}"); } catch (Exception ex) diff --git a/YD_AllHeartRates.Api/Startup.cs b/YD_AllHeartRates.Api/Startup.cs index b25a52f..6ceafd3 100644 --- a/YD_AllHeartRates.Api/Startup.cs +++ b/YD_AllHeartRates.Api/Startup.cs @@ -83,6 +83,8 @@ namespace YD_AllHeartRates.Api // ③ 后台批量写库服务 services.AddHostedService(); + services.AddHostedService(); + services.AddSingleton(); services.AddScoped(); diff --git a/YD_AllHeartRates.Api/appsettings.json b/YD_AllHeartRates.Api/appsettings.json index 7ec8eec..ce0767a 100644 --- a/YD_AllHeartRates.Api/appsettings.json +++ b/YD_AllHeartRates.Api/appsettings.json @@ -48,12 +48,12 @@ "BatchSize": 1 }, "DataPush": { - "Hous": "https://zxx.shedusoft.com/tzjk-watch/", - "Appid": "e96cde5c1908bc3cf09ebce13735765b7a2a617726ae122722bbbfb46f1d737c2df72c9773a75f4b7d5f89dfd4052cd47e22688fcf3ca829712f9f41d5b6d4558fffa081ac7d2f746744e5bc40451e04", - "ClientId": "a93d62bc-6517-40b5-849b-91beed8cf59e", - "PublicKey": "038412fc7ae2ed37c1335622257138fb730c7f7bf6e4c08795b2f011005faf7a7e", + "Hous": "http://shsunshine-ty.shec.edu.cn/tzjk-watch/", + "Appid": "e96cde5c1908bc3cf09ebce13735765bb2790e2b485581c5307cfd58fbbc026e5c0b36545927c92bf4ab97471d8f0278218d1af6f0deb488003eef85f430439d", + "ClientId": "92465d8d-d16b-4088-bcb7-9b81415b755a", + "PublicKey": "03c948ec7c093c29b318a0814fcf37a9ec5e623df96c78cb859f4fa3ddc91811d3", "SecretKey": "87d00391b2807a32696abf8e3d639ac6ae8a9c2a476e45180f919966d71105af", - "Sm4key": "qU3pK6JOKXCFtNFK", - "Sm4iv": "hxXbu1vW8ObPhUJl" + "Sm4key": "Zy3bzNGyzugnEmYe", + "Sm4iv": "swiBsHDHbibRUmfm" } } 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 new file mode 100644 index 0000000..ab285af --- /dev/null +++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfo.cs @@ -0,0 +1,27 @@ +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 +// +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("YD_AllHeartRates.Api")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +<<<<<<< HEAD +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+e739b03c0a6954651887da7cf20d24c1364c96b5")] +======= +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+4183408f15d56f6fd691a35c6c405d4c7c28cd99")] +>>>>>>> e739b03c0a6954651887da7cf20d24c1364c96b5 +[assembly: System.Reflection.AssemblyProductAttribute("YD_AllHeartRates.Api")] +[assembly: System.Reflection.AssemblyTitleAttribute("YD_AllHeartRates.Api")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// 由 MSBuild WriteCodeFragment 类生成。 + 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 new file mode 100644 index 0000000..ce4c57e --- /dev/null +++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfoInputs.cache @@ -0,0 +1,5 @@ +<<<<<<< HEAD +cfae6e06243207f69a965ccfc2aa2835945fc94522a39bf6765581640615820e +======= +3b70ba9cd85eb66cf588acb2752b71b3fb9c904b9878699755da556d776d87f7 +>>>>>>> e739b03c0a6954651887da7cf20d24c1364c96b5 diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.MvcApplicationPartsAssemblyInfo.cs b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.MvcApplicationPartsAssemblyInfo.cs new file mode 100644 index 0000000..2285476 --- /dev/null +++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.MvcApplicationPartsAssemblyInfo.cs @@ -0,0 +1,20 @@ +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 +// +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("Microsoft.AspNetCore.Mvc.Versioning")] +[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("Swashbuckle.AspNetCore.SwaggerGen")] +[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("YD_AllHeartRates.Commons")] +[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("YD_AllHeartRates.Commons.1.0.0.0.Fakes")] + +// 由 MSBuild WriteCodeFragment 类生成。 + 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 new file mode 100644 index 0000000..0c8a31d Binary files /dev/null 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 new file mode 100644 index 0000000..161b059 --- /dev/null +++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +ace2f8cd508a97aab61fe53ad211290a1089ef674bbdabf4d3660f4e95ac0455 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 312b3a1..abaa52c 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 @@ -1057,7 +1057,6 @@ C:\Users\tangl\Desktop\YD_XinWei\YD_AllHeartRates\YD_AllHeartRates.Api\obj\Debug C:\Users\tangl\Desktop\YD_XinWei\YD_AllHeartRates\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.pdb C:\Users\tangl\Desktop\YD_XinWei\YD_AllHeartRates\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.genruntimeconfig.cache C:\Users\tangl\Desktop\YD_XinWei\YD_AllHeartRates\YD_AllHeartRates.Api\obj\Debug\net6.0\ref\YD_AllHeartRates.Api.dll -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\System.Security.Permissions.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\appsettings.Development.json C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\appsettings.json C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll @@ -1073,9 +1072,7 @@ C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\n C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\Autofac.Extensions.DependencyInjection.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\AutoMapper.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\AutoMapper.Collection.dll -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\BouncyCastle.Crypto.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\CSRedisCore.dll -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\EPPlus.Core.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\Humanizer.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\Microsoft.AspNetCore.Authentication.JwtBearer.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\Microsoft.AspNetCore.JsonPatch.dll @@ -1107,14 +1104,13 @@ C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\n C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\Swashbuckle.AspNetCore.SwaggerGen.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\Swashbuckle.AspNetCore.SwaggerUI.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\System.Configuration.ConfigurationManager.dll -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\System.Data.SqlClient.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\System.Diagnostics.DiagnosticSource.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\System.Drawing.Common.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\System.IdentityModel.Tokens.Jwt.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\System.Runtime.Caching.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\System.Security.Cryptography.ProtectedData.dll +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\System.Security.Permissions.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\System.Windows.Extensions.dll -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\System.Xml.XPath.XmlDocument.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\cs\Microsoft.QualityTools.Testing.Fakes.resources.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\de\Microsoft.QualityTools.Testing.Fakes.resources.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\es\Microsoft.QualityTools.Testing.Fakes.resources.dll @@ -1135,11 +1131,6 @@ C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\n C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\runtimes\win-x64\native\Microsoft.Data.SqlClient.SNI.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\runtimes\win-x86\native\Microsoft.Data.SqlClient.SNI.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\runtimes\win\lib\net6.0\Microsoft.Win32.SystemEvents.dll -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\runtimes\win-arm64\native\sni.dll -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\runtimes\win-x64\native\sni.dll -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\runtimes\win-x86\native\sni.dll -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\runtimes\unix\lib\netstandard2.0\System.Data.SqlClient.dll -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\runtimes\win\lib\netstandard2.0\System.Data.SqlClient.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\runtimes\unix\lib\net6.0\System.Drawing.Common.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\runtimes\win\lib\net6.0\System.Drawing.Common.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\runtimes\win\lib\netstandard2.0\System.Runtime.Caching.dll @@ -1147,8 +1138,40 @@ C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\n C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\runtimes\win\lib\net6.0\System.Windows.Extensions.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\YD_AllHeartRates.Commons.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\YD_AllHeartRates.Commons.pdb -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\YD_AllHeartRates.Commons.1.0.0.0.Fakes.fakesconfig C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.csproj.AssemblyReference.cache +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.GeneratedMSBuildEditorConfig.editorconfig +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.AssemblyInfoInputs.cache +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.AssemblyInfo.cs +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.csproj.CoreCompileInputs.cache +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.MvcApplicationPartsAssemblyInfo.cs +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.MvcApplicationPartsAssemblyInfo.cache +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\scopedcss\bundle\YD_AllHeartRates.Api.styles.css +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\staticwebassets.build.json +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\staticwebassets.development.json +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\staticwebassets.build.endpoints.json +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHe.0782A867.Up2Date +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.dll +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\refint\YD_AllHeartRates.Api.dll +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.xml +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.pdb +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.genruntimeconfig.cache +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\ref\YD_AllHeartRates.Api.dll +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\EPPlus.Core.dll +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\System.Data.SqlClient.dll +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\System.Xml.XPath.XmlDocument.dll +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\runtimes\win-arm64\native\sni.dll +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\runtimes\win-x64\native\sni.dll +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\runtimes\win-x86\native\sni.dll +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\runtimes\unix\lib\netstandard2.0\System.Data.SqlClient.dll +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\runtimes\win\lib\netstandard2.0\System.Data.SqlClient.dll +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\rpswa.dswa.cache.json +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\rjimswa.dswa.cache.json +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\rjsmrazor.dswa.cache.json +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 +C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\bin\Debug\net6.0\YD_AllHeartRates.Commons.1.0.0.0.Fakes.fakesconfig C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\Fakes\fakes.args C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\Fakes\ydahrc\b\Autofac.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\Fakes\ydahrc\b\Autofac.Extensions.DependencyInjection.dll @@ -1531,28 +1554,5 @@ 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\Fakes\ydahrc\o\net6.0\ref\YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\Fakes\ydahrc\o\net6.0\YD_AllHeartRates.Commons.1.0.0.0.Fakes.dll C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\Fakes\ydahrc\o\net6.0\YD_AllHeartRates.Commons.1.0.0.0.Fakes.pdb -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\rpswa.dswa.cache.json C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.csprojFakesResolveAssemblyReference.cache -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.GeneratedMSBuildEditorConfig.editorconfig -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.AssemblyInfoInputs.cache -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.AssemblyInfo.cs -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.csproj.CoreCompileInputs.cache -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.MvcApplicationPartsAssemblyInfo.cs -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.MvcApplicationPartsAssemblyInfo.cache -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\rjimswa.dswa.cache.json -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\rjsmrazor.dswa.cache.json -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\scopedcss\bundle\YD_AllHeartRates.Api.styles.css -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\staticwebassets.build.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\staticwebassets.development.json -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\staticwebassets.build.endpoints.json -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\obj\Debug\net6.0\staticwebassets.upToDateCheck.txt -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHe.0782A867.Up2Date -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.dll -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\refint\YD_AllHeartRates.Api.dll -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.xml -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.pdb -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\YD_AllHeartRates.Api.genruntimeconfig.cache -C:\Users\tangl\Desktop\Git\YD_AllHeartRates.Api\YD_AllHeartRates.Api\obj\Debug\net6.0\ref\YD_AllHeartRates.Api.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 b018140..2cd23db 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 new file mode 100644 index 0000000..3b23f12 Binary files /dev/null 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 new file mode 100644 index 0000000..52a70ee Binary files /dev/null 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 new file mode 100644 index 0000000..9df4937 --- /dev/null +++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.xml @@ -0,0 +1,1610 @@ + + + + YD_AllHeartRates.Api + + + + + 用户服务上下文 + + + + + 用户服务上下文 + + + + + 数据上报 + + + + + 获取Token + + + + + + 获取学生EduId + + + + + + 常规数据上报 + + + + + + 异常数据上报 + + + + + + 补传数据上报 + + + + + + 设备 + + + + + 构造 + + + + + + 获取设备列表 + + + + + + 设备数量 + + + + + + 新增设备 + + + + + + 编辑设备 + + + + + + 删除设备 + + + + + + 批量导入 + + + + + + + 报告 + + + + + HeartRateReportController + + + + + + 学校心率报告 + + + + + + 年级心率报告 + + + + + + 班级心率报告 + + + + + + 学生心率报告 + + + + + + 大屏 + + + + + 学校信息 + + + + + + 实时数据 + + + + + + 用户 + + + + + 登录 + + + + + + 获取个人信息 + + + + + + 数据库实体父类 + + + + + 备注 + + + + + 创建人 + + + + + 创建时间 + + + + + 修改人 + + + + + 修改时间 + + + + + 心率表 + + + + + 学校Code + + + + + AI设备的唯一编码 + + + + + 年级编号 + + + + + 班级Id + + + + + 年级名称 + + + + + 班级名称 + + + + + 学号 + + + + + 姓名 + + + + + 性别 + + + + + 测试时间 + + + + + 运动时长/分钟 + + + + + 运动消耗 + + + + + 运动强度 + + + + + 心率 + + + + + 瞬时心率 + + + + + 电量 + + + + + 上传时间 + + + + + 创建时间 + + + + + 行政区 + + + + + 跳绳数据 + + + + + 学校Code + + + + + AI设备的唯一编码 + + + + + 年级编号 + + + + + 年级名称 + + + + + 班级Id + + + + + 班级名称 + + + + + 学号 + + + + + 姓名 + + + + + 性别 + + + + + 错误个数[敏捷:错误个数] + + + + + 正确个数[敏捷:正确个数] + + + + + 电量 + + + + + 测试时间 + + + + + Name + + + + + Json + + + + + 学校编号 + + + + + 帐号 + + + + + 性别 + + + + + 头像 + + + + + 角色 + + + + + 角色 + + + + + 姓名 + + + + + 密码 + + + + + 手机号 + + + + + 是否可用 + + + + + 微信OpenId + + + + + 微信UnionId + + + + + 微信头像 + + + + + 微信昵称 + + + + + 地址 + + + + + Email + + + + + 账号关联Id + + + + + 出生日期 + + + + + 身高 + + + + + 体重 + + + + + 设备识别标识,比如 "GTY0", "RS207" + + + + + 解析并写入缓存、生成实体 + + + + + 接受写入数据 + + + + + 接受写入数据2 + + + + + 接受写入数据 + + + + + 数据上报服务类 + + + + + 服务实现 + + + + + 构造 + + + + + 获取设备列表 + + + + + + + 设备数量 + + + + + + 新增设备 + + + + + + + 编辑设备 + + + + + + + 删除设备 + + + + + + + 批量导入 + + + + + + + 服务实现 + + + + + 构造 + + + + + 学校心率报告 + + + + + + 年级心率报告 + + + + + + 班级心率报告 + + + + + + + + 学生心率报告 + + + + + + + 服务实现 + + + + + 构造 + + + + + 获取学校数据 + + + + + + 根据班级Id获取学生列表 + + + + + + + 心率数据 + + + + + + 用户 + + + + + 构造 + + + + + 登录 + + + + + + + 获取个人信息 + + + + + + 刷新Token + + + + + + 数据上报服务类 + + + + + 获取Token + + + + + + 获取学生 + + + + + + + + + + + 常规数据上报 + + + + + + + 异常数据上报 + + + + + + + 补传数据上报 + + + + + + + 服务接口 + + + + + 获取设备列表 + + + + + + 设备数量 + + + + + + 新增设备 + + + + + + 编辑设备 + + + + + + 删除设备 + + + + + + 批量导入 + + + + + + 服务接口 + + + + + 学校心率报告 + + + + + + 年级心率报告 + + + + + + 班级心率报告 + + + + + + 学生心率报告 + + + + + + 服务接口 + + + + + 获取学校数据 + + + + + + 根据班级获取学生 + + + + + + + 心率数据 + + + + + + 用户服务 + + + + + 登录 + + + + + + + 获取个人信息 + + + + + + 刷新Token + + + + + + 帐号 + + + + + + + + + + 性别 + + + + + 头像 + + + + + 不用 + + + + + 不用 + + + + + 角色 + + + + + 不用 + + + + + Token + + + + + 类型 + + + + + 姓名 + + + + + 学校编号 + + + + + 学校名称 + + + + + 密码 + + + + + 注册时间 + + + + + 手机号 + + + + + + + + + + 创建人 + + + + + 是否可用 + + + + + + + + + + 修改人 + + + + + 修改时间 + + + + + 审核时间 + + + + + 最后登陆时间 + + + + + 最后密码修改时间 + + + + + 地址 + + + + + Email + + + + + 备注 + + + + + 学校编号 + + + + + 年级Id + + + + + 年级名称 + + + + + 班级名称 + + + + + 班级Id + + + + + 老师Id + + + + + 创建人 + + + + + 创建时间 + + + + + 修改人 + + + + + 修改时间 + + + + + 设备的唯一编码 + + + + + 设备名称 + + + + + 设备类型[1:心率/2:跳绳] + + + + + 学校编号 + + + + + 学生学号 + + + + + 学校编号 + + + + + 年级名称 + + + + + 备注 + + + + + 创建人 + + + + + 创建时间 + + + + + 修改人 + + + + + 修改时间 + + + + + 学校性质Id + + + + + 学校编号 + + + + + 学校名称 + + + + + 所属省份 + + + + + 所属城市 + + + + + 所属区域 + + + + + 备注 + + + + + 创建人 + + + + + 创建时间 + + + + + 修改人 + + + + + 修改时间 + + + + + 学校编号 + + + + + 年级Id + + + + + 创建人 + + + + + 创建时间 + + + + + 修改人 + + + + + 修改时间 + + + + + 学校编号 + + + + + 班级Id + + + + + 班级名称 + + + + + 学生学号 + + + + + 学籍号 + + + + + 地方学籍号 + + + + + 心率设备正面编号 + + + + + 心率设备ID + + + + + 心率设备二维码编号 + + + + + 跳绳编号 + + + + + 跳绳二维码编号 + + + + + 中长跑芯片编号 + + + + + 训练时长 + + + + + 训练次数 + + + + + 身份证 + + + + + 学生名族 + + + + + 学生名称 + + + + + 年龄 + + + + + 性别 + + + + + 学生照片 + + + + + 民族 + + + + + 家庭住址 + + + + + 状态 + + + + + 出生日期 + + + + + 家长姓名 + + + + + 家长联系方式 + + + + + 小程序密码 + + + + + 备注 + + + + + 创建人 + + + + + 创建时间 + + + + + 修改人 + + + + + 修改时间 + + + + + 排序 + + + + + 学校编号 + + + + + 教师名称 + + + + + 教师年龄 + + + + + 教师性别 + + + + + 状态 + + + + + 老师照片 + + + + + 入职日期 + + + + + 老师联系方式 + + + + + 老师学科 + + + + + 授课次数 + + + + + 小程序密码 + + + + + 备注 + + + + + 创建人 + + + + + 创建时间 + + + + + 修改人 + + + + + 修改时间 + + + + + Swagger注释帮助类 + + + + + 添加附加注释 + + + + + + + SM2 公钥加密(C1C3C2 顺序,输出十六进制) + + 明文字符串 + 公钥十六进制(压缩或非压缩) + 加密后的十六进制密文 + + + + SM2 公钥加密(先压缩再加密,C1C3C2 顺序,输出十六进制) + + + + + 十六进制字符串转字节数组 + + + + + 字节数组转十六进制字符串 + + + + + 生成JWT + + + + + + + 解析 + + + + + + + 获取过期时间 + + + + + + + 通用导入Excel + + + + + + + + 导出Excel + + + + + + + + + 获取类中所有得列名 + + + + + + + 获取集合中位数 + + + + + + + 获取集合中位数 + + + + + + + 获取取样时间 + + + + + + + + 获取枚举所有描述 + + + + + + + + + 获取枚举描述 + + + + + + + 测试类型枚举转换 + + + + + + + DateTime转时间戳 + + + + + + + 为了尽量减少redis或Memory读取,保证执行效率,将UserContext注入到DI, + 每个UserContext的属性至多读取一次redis或Memory缓存从而提高查询效率 + + + + + WebSocket + + + + + 消息发送 + + + + + + + + 根据学校发送消息 + + + + + + + + + RealtimeHub + + + + + 客户端连接时调用(可选) + + + + + 客户端断开连接时调用(可选) + + + + + 客户端可调用的方法:加入指定分组(如按学校、班级) + + + + + 客户端可调用的方法:离开指定分组 + + + + + 发送SignalRWebSocket + + + + + hubContext + + + + + + 消息发送 + + + + + + + + 根据学校发送消息 + + + + + + + + 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 new file mode 100644 index 0000000..c86b84b Binary files /dev/null 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 new file mode 100644 index 0000000..c86b84b Binary files /dev/null and b/YD_AllHeartRates.Api/obj/Debug/net6.0/refint/YD_AllHeartRates.Api.dll differ diff --git a/YD_AllHeartRates.Api/obj/Release/net6.0/apphost.exe b/YD_AllHeartRates.Api/obj/Release/net6.0/apphost.exe index ad59a8a..17aef89 100644 Binary files a/YD_AllHeartRates.Api/obj/Release/net6.0/apphost.exe and b/YD_AllHeartRates.Api/obj/Release/net6.0/apphost.exe differ diff --git a/YD_AllHeartRates.Api/obj/Release/net6.0/linux-x64/PubTmp/Out/appsettings.json b/YD_AllHeartRates.Api/obj/Release/net6.0/linux-x64/PubTmp/Out/appsettings.json index 7ec8eec..ce0767a 100644 --- a/YD_AllHeartRates.Api/obj/Release/net6.0/linux-x64/PubTmp/Out/appsettings.json +++ b/YD_AllHeartRates.Api/obj/Release/net6.0/linux-x64/PubTmp/Out/appsettings.json @@ -48,12 +48,12 @@ "BatchSize": 1 }, "DataPush": { - "Hous": "https://zxx.shedusoft.com/tzjk-watch/", - "Appid": "e96cde5c1908bc3cf09ebce13735765b7a2a617726ae122722bbbfb46f1d737c2df72c9773a75f4b7d5f89dfd4052cd47e22688fcf3ca829712f9f41d5b6d4558fffa081ac7d2f746744e5bc40451e04", - "ClientId": "a93d62bc-6517-40b5-849b-91beed8cf59e", - "PublicKey": "038412fc7ae2ed37c1335622257138fb730c7f7bf6e4c08795b2f011005faf7a7e", + "Hous": "http://shsunshine-ty.shec.edu.cn/tzjk-watch/", + "Appid": "e96cde5c1908bc3cf09ebce13735765bb2790e2b485581c5307cfd58fbbc026e5c0b36545927c92bf4ab97471d8f0278218d1af6f0deb488003eef85f430439d", + "ClientId": "92465d8d-d16b-4088-bcb7-9b81415b755a", + "PublicKey": "03c948ec7c093c29b318a0814fcf37a9ec5e623df96c78cb859f4fa3ddc91811d3", "SecretKey": "87d00391b2807a32696abf8e3d639ac6ae8a9c2a476e45180f919966d71105af", - "Sm4key": "qU3pK6JOKXCFtNFK", - "Sm4iv": "hxXbu1vW8ObPhUJl" + "Sm4key": "Zy3bzNGyzugnEmYe", + "Sm4iv": "swiBsHDHbibRUmfm" } } diff --git a/YD_AllHeartRates.Api/obj/project.nuget.cache b/YD_AllHeartRates.Api/obj/project.nuget.cache new file mode 100644 index 0000000..3e958d5 --- /dev/null +++ b/YD_AllHeartRates.Api/obj/project.nuget.cache @@ -0,0 +1,148 @@ +{ + "version": 2, + "dgSpecHash": "EFwpte+qrlo=", + "success": true, + "projectFilePath": "C:\\Users\\tangl\\Desktop\\Git\\YD_AllHeartRates.Api\\YD_AllHeartRates.Api\\YD_AllHeartRates.Api.csproj", + "expectedPackageFiles": [ + "C:\\Users\\tangl\\.nuget\\packages\\aliyun.oss.sdk.netcore\\2.14.1\\aliyun.oss.sdk.netcore.2.14.1.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\autofac\\8.1.0\\autofac.8.1.0.nupkg.sha512", + "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", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.aspnetcore.authentication.jwtbearer\\6.0.0\\microsoft.aspnetcore.authentication.jwtbearer.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.aspnetcore.http.abstractions\\2.2.0\\microsoft.aspnetcore.http.abstractions.2.2.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.aspnetcore.http.features\\2.2.0\\microsoft.aspnetcore.http.features.2.2.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.aspnetcore.jsonpatch\\6.0.0\\microsoft.aspnetcore.jsonpatch.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.aspnetcore.mvc.abstractions\\2.2.0\\microsoft.aspnetcore.mvc.abstractions.2.2.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.aspnetcore.mvc.newtonsoftjson\\6.0.0\\microsoft.aspnetcore.mvc.newtonsoftjson.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.aspnetcore.mvc.versioning\\5.1.0\\microsoft.aspnetcore.mvc.versioning.5.1.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.aspnetcore.routing.abstractions\\2.2.0\\microsoft.aspnetcore.routing.abstractions.2.2.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.bcl.asyncinterfaces\\8.0.0\\microsoft.bcl.asyncinterfaces.8.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.bcl.timeprovider\\8.0.1\\microsoft.bcl.timeprovider.8.0.1.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.csharp\\4.7.0\\microsoft.csharp.4.7.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.data.sqlclient\\2.1.4\\microsoft.data.sqlclient.2.1.4.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.data.sqlclient.sni.runtime\\2.1.1\\microsoft.data.sqlclient.sni.runtime.2.1.1.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.entityframeworkcore\\6.0.0\\microsoft.entityframeworkcore.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.entityframeworkcore.abstractions\\6.0.0\\microsoft.entityframeworkcore.abstractions.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.entityframeworkcore.analyzers\\6.0.0\\microsoft.entityframeworkcore.analyzers.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.entityframeworkcore.design\\6.0.0\\microsoft.entityframeworkcore.design.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.entityframeworkcore.relational\\6.0.0\\microsoft.entityframeworkcore.relational.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.entityframeworkcore.sqlserver\\6.0.0\\microsoft.entityframeworkcore.sqlserver.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.entityframeworkcore.tools\\6.0.0\\microsoft.entityframeworkcore.tools.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.extensions.apidescription.server\\6.0.5\\microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.extensions.caching.abstractions\\6.0.0\\microsoft.extensions.caching.abstractions.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.extensions.caching.memory\\6.0.0\\microsoft.extensions.caching.memory.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.extensions.configuration.abstractions\\6.0.0\\microsoft.extensions.configuration.abstractions.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\6.0.0\\microsoft.extensions.dependencyinjection.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\8.0.1\\microsoft.extensions.dependencyinjection.abstractions.8.0.1.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.extensions.logging\\6.0.0\\microsoft.extensions.logging.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\6.0.0\\microsoft.extensions.logging.abstractions.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.extensions.options\\6.0.0\\microsoft.extensions.options.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.extensions.primitives\\6.0.0\\microsoft.extensions.primitives.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.identity.client\\4.21.1\\microsoft.identity.client.4.21.1.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.identitymodel.abstractions\\8.12.1\\microsoft.identitymodel.abstractions.8.12.1.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.identitymodel.jsonwebtokens\\8.12.1\\microsoft.identitymodel.jsonwebtokens.8.12.1.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.identitymodel.logging\\8.12.1\\microsoft.identitymodel.logging.8.12.1.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.identitymodel.protocols\\6.10.0\\microsoft.identitymodel.protocols.6.10.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.identitymodel.protocols.openidconnect\\6.10.0\\microsoft.identitymodel.protocols.openidconnect.6.10.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.identitymodel.tokens\\8.12.1\\microsoft.identitymodel.tokens.8.12.1.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.net.http.headers\\2.2.0\\microsoft.net.http.headers.2.2.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.netcore.platforms\\3.1.0\\microsoft.netcore.platforms.3.1.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.netcore.targets\\1.1.0\\microsoft.netcore.targets.1.1.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.openapi\\1.2.3\\microsoft.openapi.1.2.3.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.qualitytools.testing.fakes\\17.5.0-beta.23060.1\\microsoft.qualitytools.testing.fakes.17.5.0-beta.23060.1.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.win32.registry\\4.7.0\\microsoft.win32.registry.4.7.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.win32.systemevents\\6.0.0\\microsoft.win32.systemevents.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\mqttnet\\4.1.4.563\\mqttnet.4.1.4.563.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\newtonsoft.json\\13.0.3\\newtonsoft.json.13.0.3.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\newtonsoft.json.bson\\1.0.2\\newtonsoft.json.bson.1.0.2.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.native.system\\4.3.0\\runtime.native.system.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.native.system.data.sqlclient.sni\\4.4.0\\runtime.native.system.data.sqlclient.sni.4.4.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.native.system.net.http\\4.3.0\\runtime.native.system.net.http.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.native.system.security.cryptography.apple\\4.3.0\\runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple\\4.3.0\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.win-arm64.runtime.native.system.data.sqlclient.sni\\4.4.0\\runtime.win-arm64.runtime.native.system.data.sqlclient.sni.4.4.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.win-x64.runtime.native.system.data.sqlclient.sni\\4.4.0\\runtime.win-x64.runtime.native.system.data.sqlclient.sni.4.4.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\runtime.win-x86.runtime.native.system.data.sqlclient.sni\\4.4.0\\runtime.win-x86.runtime.native.system.data.sqlclient.sni.4.4.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\swashbuckle.aspnetcore\\6.5.0\\swashbuckle.aspnetcore.6.5.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\swashbuckle.aspnetcore.swagger\\6.5.0\\swashbuckle.aspnetcore.swagger.6.5.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\swashbuckle.aspnetcore.swaggergen\\6.5.0\\swashbuckle.aspnetcore.swaggergen.6.5.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\swashbuckle.aspnetcore.swaggerui\\6.5.0\\swashbuckle.aspnetcore.swaggerui.6.5.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.buffers\\4.5.0\\system.buffers.4.5.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.collections\\4.3.0\\system.collections.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.collections.concurrent\\4.3.0\\system.collections.concurrent.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.collections.immutable\\6.0.0\\system.collections.immutable.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.collections.nongeneric\\4.3.0\\system.collections.nongeneric.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.configuration.configurationmanager\\4.7.0\\system.configuration.configurationmanager.4.7.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.data.common\\4.3.0\\system.data.common.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.data.sqlclient\\4.4.0\\system.data.sqlclient.4.4.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.diagnostics.debug\\4.3.0\\system.diagnostics.debug.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.diagnostics.diagnosticsource\\8.0.1\\system.diagnostics.diagnosticsource.8.0.1.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.diagnostics.tracing\\4.3.0\\system.diagnostics.tracing.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.drawing.common\\6.0.0\\system.drawing.common.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.globalization\\4.3.0\\system.globalization.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.globalization.calendars\\4.3.0\\system.globalization.calendars.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.identitymodel.tokens.jwt\\8.12.1\\system.identitymodel.tokens.jwt.8.12.1.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.io\\4.3.0\\system.io.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.io.filesystem\\4.3.0\\system.io.filesystem.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.io.filesystem.primitives\\4.3.0\\system.io.filesystem.primitives.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.linq\\4.3.0\\system.linq.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.reflection\\4.3.0\\system.reflection.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.reflection.emit\\4.7.0\\system.reflection.emit.4.7.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.reflection.primitives\\4.3.0\\system.reflection.primitives.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.resources.resourcemanager\\4.3.0\\system.resources.resourcemanager.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.runtime\\4.3.0\\system.runtime.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.runtime.caching\\4.7.0\\system.runtime.caching.4.7.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.runtime.compilerservices.unsafe\\6.0.0\\system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.runtime.extensions\\4.3.0\\system.runtime.extensions.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.runtime.handles\\4.3.0\\system.runtime.handles.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.runtime.interopservices\\4.3.0\\system.runtime.interopservices.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.runtime.numerics\\4.3.0\\system.runtime.numerics.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.security.accesscontrol\\6.0.0\\system.security.accesscontrol.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.security.claims\\4.3.0\\system.security.claims.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.security.cryptography.algorithms\\4.3.0\\system.security.cryptography.algorithms.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.security.cryptography.cng\\4.3.0\\system.security.cryptography.cng.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.security.cryptography.csp\\4.3.0\\system.security.cryptography.csp.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.security.cryptography.encoding\\4.3.0\\system.security.cryptography.encoding.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.security.cryptography.openssl\\4.3.0\\system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.security.cryptography.pkcs\\4.3.0\\system.security.cryptography.pkcs.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.security.cryptography.primitives\\4.3.0\\system.security.cryptography.primitives.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.security.cryptography.protecteddata\\4.7.0\\system.security.cryptography.protecteddata.4.7.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.security.cryptography.x509certificates\\4.3.0\\system.security.cryptography.x509certificates.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.security.permissions\\6.0.0\\system.security.permissions.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.security.principal\\4.3.0\\system.security.principal.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.security.principal.windows\\4.7.0\\system.security.principal.windows.4.7.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.text.encoding\\4.3.0\\system.text.encoding.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.text.encoding.codepages\\4.7.0\\system.text.encoding.codepages.4.7.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.text.encoding.extensions\\4.3.0\\system.text.encoding.extensions.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.text.encodings.web\\4.5.0\\system.text.encodings.web.4.5.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.text.regularexpressions\\4.3.0\\system.text.regularexpressions.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.threading\\4.3.0\\system.threading.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.threading.tasks\\4.3.0\\system.threading.tasks.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.threading.tasks.extensions\\4.3.0\\system.threading.tasks.extensions.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.threading.thread\\4.3.0\\system.threading.thread.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.threading.threadpool\\4.3.0\\system.threading.threadpool.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.valuetuple\\4.5.0\\system.valuetuple.4.5.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.windows.extensions\\6.0.0\\system.windows.extensions.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.xml.readerwriter\\4.3.0\\system.xml.readerwriter.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.xml.xmldocument\\4.3.0\\system.xml.xmldocument.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.xml.xpath\\4.3.0\\system.xml.xpath.4.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.xml.xpath.xmldocument\\4.3.0\\system.xml.xpath.xmldocument.4.3.0.nupkg.sha512" + ], + "logs": [] +} \ No newline at end of file diff --git a/YD_AllHeartRates.Api/obj/publish/linux-x64/project.assets.json b/YD_AllHeartRates.Api/obj/publish/linux-x64/project.assets.json index 1698442..7163651 100644 --- a/YD_AllHeartRates.Api/obj/publish/linux-x64/project.assets.json +++ b/YD_AllHeartRates.Api/obj/publish/linux-x64/project.assets.json @@ -10157,7 +10157,7 @@ "privateAssets": "all" } }, - "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\10.0.100-rc.2.25502.107\\RuntimeIdentifierGraph.json" + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\10.0.101\\RuntimeIdentifierGraph.json" } }, "runtimes": { diff --git a/YD_AllHeartRates.Api/obj/publish/linux-x64/project.nuget.cache b/YD_AllHeartRates.Api/obj/publish/linux-x64/project.nuget.cache index 0baa7fc..842c24b 100644 --- a/YD_AllHeartRates.Api/obj/publish/linux-x64/project.nuget.cache +++ b/YD_AllHeartRates.Api/obj/publish/linux-x64/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "3BrEoNGzlrc=", + "dgSpecHash": "FJU+n2AUOOQ=", "success": true, "projectFilePath": "C:\\Users\\tangl\\Desktop\\Git\\YD_AllHeartRates.Api\\YD_AllHeartRates.Api\\YD_AllHeartRates.Api.csproj", "expectedPackageFiles": [ diff --git a/YD_AllHeartRates.Commons/Dto/DataPush/StudentCacheInfo.cs b/YD_AllHeartRates.Commons/Dto/DataPush/StudentCacheInfo.cs new file mode 100644 index 0000000..971f7a9 --- /dev/null +++ b/YD_AllHeartRates.Commons/Dto/DataPush/StudentCacheInfo.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace YD_AllHeartRates.Commons.Dto.DataPush +{ + public class StudentCacheInfo + { + public string School { get; set; } + public string Grade { get; set; } + public string ClassName { get; set; } + public string Name { get; set; } + public string EduId { get; set; } + } + +} 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 new file mode 100644 index 0000000..0a432b7 Binary files /dev/null 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 new file mode 100644 index 0000000..169653f Binary files /dev/null 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 new file mode 100644 index 0000000..08300ee --- /dev/null +++ b/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.AssemblyInfo.cs @@ -0,0 +1,27 @@ +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 +// +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("YD_AllHeartRates.Commons")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +<<<<<<< HEAD +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+e739b03c0a6954651887da7cf20d24c1364c96b5")] +======= +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+4183408f15d56f6fd691a35c6c405d4c7c28cd99")] +>>>>>>> e739b03c0a6954651887da7cf20d24c1364c96b5 +[assembly: System.Reflection.AssemblyProductAttribute("YD_AllHeartRates.Commons")] +[assembly: System.Reflection.AssemblyTitleAttribute("YD_AllHeartRates.Commons")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// 由 MSBuild WriteCodeFragment 类生成。 + 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 new file mode 100644 index 0000000..a4fcb72 --- /dev/null +++ b/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.AssemblyInfoInputs.cache @@ -0,0 +1,5 @@ +<<<<<<< HEAD +e772c7966a041bb27f9253949854956525802b16eb5189238c5c39a3c1a8230c +======= +6cde2dd694453a04f4ee7b27821d136ceeab0a7eba2f7234cbf29e73c7b6ac4b +>>>>>>> e739b03c0a6954651887da7cf20d24c1364c96b5 diff --git a/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.csproj.CoreCompileInputs.cache b/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..69e426f --- /dev/null +++ b/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +5617ddf650573efc2a5b590948cc293b00556029726aefa94703a4ffd27eb76e 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 new file mode 100644 index 0000000..0a432b7 Binary files /dev/null and b/YD_AllHeartRates.Commons/obj/Debug/net6.0/YD_AllHeartRates.Commons.dll 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 new file mode 100644 index 0000000..0a996c6 Binary files /dev/null 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 new file mode 100644 index 0000000..0a996c6 Binary files /dev/null and b/YD_AllHeartRates.Commons/obj/Debug/net6.0/refint/YD_AllHeartRates.Commons.dll differ diff --git a/YD_AllHeartRates.Commons/obj/project.nuget.cache b/YD_AllHeartRates.Commons/obj/project.nuget.cache new file mode 100644 index 0000000..ca544dd --- /dev/null +++ b/YD_AllHeartRates.Commons/obj/project.nuget.cache @@ -0,0 +1,34 @@ +{ + "version": 2, + "dgSpecHash": "l9MQglnqMP4=", + "success": true, + "projectFilePath": "C:\\Users\\tangl\\Desktop\\Git\\YD_AllHeartRates.Api\\YD_AllHeartRates.Commons\\YD_AllHeartRates.Commons.csproj", + "expectedPackageFiles": [ + "C:\\Users\\tangl\\.nuget\\packages\\aliyun.oss.sdk.netcore\\2.14.1\\aliyun.oss.sdk.netcore.2.14.1.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\csrediscore\\3.8.804\\csrediscore.3.8.804.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.aspnetcore.http.abstractions\\2.2.0\\microsoft.aspnetcore.http.abstractions.2.2.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.aspnetcore.http.features\\2.2.0\\microsoft.aspnetcore.http.features.2.2.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.aspnetcore.jsonpatch\\6.0.0\\microsoft.aspnetcore.jsonpatch.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.aspnetcore.mvc.abstractions\\2.2.0\\microsoft.aspnetcore.mvc.abstractions.2.2.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.aspnetcore.mvc.newtonsoftjson\\6.0.0\\microsoft.aspnetcore.mvc.newtonsoftjson.6.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.aspnetcore.routing.abstractions\\2.2.0\\microsoft.aspnetcore.routing.abstractions.2.2.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.bcl.asyncinterfaces\\8.0.0\\microsoft.bcl.asyncinterfaces.8.0.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.bcl.timeprovider\\8.0.1\\microsoft.bcl.timeprovider.8.0.1.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.csharp\\4.7.0\\microsoft.csharp.4.7.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.extensions.primitives\\2.2.0\\microsoft.extensions.primitives.2.2.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.identitymodel.abstractions\\8.3.0\\microsoft.identitymodel.abstractions.8.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.identitymodel.jsonwebtokens\\8.3.0\\microsoft.identitymodel.jsonwebtokens.8.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.identitymodel.logging\\8.3.0\\microsoft.identitymodel.logging.8.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.identitymodel.tokens\\8.3.0\\microsoft.identitymodel.tokens.8.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\microsoft.net.http.headers\\2.2.0\\microsoft.net.http.headers.2.2.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\newtonsoft.json\\13.0.3\\newtonsoft.json.13.0.3.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\newtonsoft.json.bson\\1.0.2\\newtonsoft.json.bson.1.0.2.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.buffers\\4.5.0\\system.buffers.4.5.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.identitymodel.tokens.jwt\\8.3.0\\system.identitymodel.tokens.jwt.8.3.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.memory\\4.5.1\\system.memory.4.5.1.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.runtime.compilerservices.unsafe\\4.5.1\\system.runtime.compilerservices.unsafe.4.5.1.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.text.encodings.web\\4.5.0\\system.text.encodings.web.4.5.0.nupkg.sha512", + "C:\\Users\\tangl\\.nuget\\packages\\system.valuetuple\\4.5.0\\system.valuetuple.4.5.0.nupkg.sha512" + ], + "logs": [] +} \ No newline at end of file