From c752ff5dfca041ba2796d62989182071caf5dfad Mon Sep 17 00:00:00 2001 From: tanglong <842690096@qq.com> Date: Mon, 7 Jul 2025 13:17:45 +0800 Subject: [PATCH] huancun --- .../Services/Impl/LargeScreenService.cs | 19 ++++++++++++++---- .../YD_AllHeartRates.Api.AssemblyInfo.cs | 2 +- ...AllHeartRates.Api.AssemblyInfoInputs.cache | 2 +- .../obj/Debug/net6.0/YD_AllHeartRates.Api.dll | Bin 247808 -> 247808 bytes .../obj/Debug/net6.0/YD_AllHeartRates.Api.pdb | Bin 71784 -> 71780 bytes .../obj/Debug/net6.0/apphost.exe | Bin 151552 -> 151552 bytes .../Debug/net6.0/ref/YD_AllHeartRates.Api.dll | Bin 67584 -> 67584 bytes .../net6.0/refint/YD_AllHeartRates.Api.dll | Bin 67584 -> 67584 bytes 8 files changed, 17 insertions(+), 6 deletions(-) diff --git a/YD_AllHeartRates.Api/Services/Impl/LargeScreenService.cs b/YD_AllHeartRates.Api/Services/Impl/LargeScreenService.cs index d7b1737..c69233b 100644 --- a/YD_AllHeartRates.Api/Services/Impl/LargeScreenService.cs +++ b/YD_AllHeartRates.Api/Services/Impl/LargeScreenService.cs @@ -147,10 +147,21 @@ namespace YD_AllHeartRates.Api.Services.Impl var now = DateTime.Now; var tenMinutesAgo = now.AddMinutes(-10); - // 班级学生列表 - var studentList = await _sportsContext.Student - .Where(x => x.ClassId == classId && x.SchoolCode == schoolCode && x.StudentStatus == 1) - .ToListAsync(); + // 1. 构建缓存 key + string studentListKey = $"students:{schoolCode}:{classId}"; + + // 2. 尝试从缓存获取 + var studentList = _caching.Get>(studentListKey); + + // 3. 如果缓存没有 → 查询数据库 + 写入缓存 + if (studentList == null) + { + studentList = await _sportsContext.Student + .Where(x => x.ClassId == classId && x.SchoolCode == schoolCode && x.StudentStatus == 1) + .ToListAsync(); + + _caching.AddObject(studentListKey, studentList, 28800); // 缓存 8 小时 + } int warmUp = 0, low = 0, medium = 0, high = 0, warning = 0; diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfo.cs b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfo.cs index 9c08893..fedc0dd 100644 --- a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfo.cs +++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfo.cs @@ -14,7 +14,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("YD_AllHeartRates.Api")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+ee9116aea22701bf6d184657d96c4e24b2bc0095")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+d6d2020f505a0bb193e3e5458b5eea828a0319bf")] [assembly: System.Reflection.AssemblyProductAttribute("YD_AllHeartRates.Api")] [assembly: System.Reflection.AssemblyTitleAttribute("YD_AllHeartRates.Api")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfoInputs.cache b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfoInputs.cache index 37d8aa0..85b0287 100644 --- a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfoInputs.cache +++ b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.AssemblyInfoInputs.cache @@ -1 +1 @@ -1c24cdf25780b49d3cd275d101f9545d4bc591310051a502fe2c6f782554626d +a530ed2a87c580cfd903afba773c538f851e82dd409265bf8c14464bcc334d6f diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.dll b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.dll index b4e00eadf4441e26922686a45bb6209c8e25f9de..d0551985e8689011a959c23a3c55f290f9211b36 100644 GIT binary patch delta 252 zcmZpez~3-|e?kX~O6Q>!jXkYBjIBLPTYH#q7zw<()U&8MhpTc0qkiuZZU;xHx45mPqDMKQVOaekf21^EGhEy;%WiSECSO7&$fg-6u YH5NcU7GSl;V3kP>Y1{7~WL9JY0CFfa1d+izO6y~LQ= zAx=vX984X1jNZe^#(v0)9v>UGAptH04(ZLJpcdz diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.pdb b/YD_AllHeartRates.Api/obj/Debug/net6.0/YD_AllHeartRates.Api.pdb index f473d3f2da861b53bb853e0497583973f2208d27..e06819fef19df76d97d705c62aaf1576be89fe4b 100644 GIT binary patch delta 9019 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 diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/apphost.exe b/YD_AllHeartRates.Api/obj/Debug/net6.0/apphost.exe index bbd5ab0f397840c365141cf4b4bd25af9a518a38..fe33671e08df39f20a4a1924143047235903950c 100644 GIT binary patch delta 99 zcmZozz}WyqEsR^38od2e7|a+_7>pPUz&MS;6v#4VNCc8eKxoKd$zaTo3dW`kCO{br epr|QOBo(N}0;tCVtkxK;GKnE=`+09BLlywo4-ydo delta 99 zcmZozz}WyqEsR^38od2e8B!T684Q8Yj3E)oPGm3wLURTKphyx!8c;L^$g*HC0kTYi j;weDYW(>(dekxF%2~dp@5GMoG8vtcYx1aZBGGqY&;9U{x diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/ref/YD_AllHeartRates.Api.dll b/YD_AllHeartRates.Api/obj/Debug/net6.0/ref/YD_AllHeartRates.Api.dll index 042180feabaf8127e6adbd62b370c524cadb72fc..7a4c9f3d52028eb59dd24536d783e481d9b3cf12 100644 GIT binary patch delta 198 zcmZpez|t^*WkLr_Z|l+h8+%Ha1^&({in{slhEJ>2{9FBIjdwN+vb<;9{GavbQA{b0 zGw1m=Qp{3}42%rYObtvE4U&=!Esax+Q%y}wEs{)AQxh$WED{Zj4K0(>HvhjpQPn?% z!Hgk=!HB^CjMErQfh<#oL?D?2goX^348{zpU~I}@0+g`;ikbpNQh{nLfO;&zYK_4v OlNi#r-)Cf0WCH+7x;^j! delta 198 zcmZpez|t^*WkLrFXHDYwjXfpI0;ytrzLJ+*{Fe78?Q7uCd$U=PkO*WaG8h4&IfDUEB#9vnD4GIfSumIYS*Aeo6rgG|hGZZ=6{yYxsKyA0 SlY#0DfHJ1r?=vzgvH<{Wjy4ql diff --git a/YD_AllHeartRates.Api/obj/Debug/net6.0/refint/YD_AllHeartRates.Api.dll b/YD_AllHeartRates.Api/obj/Debug/net6.0/refint/YD_AllHeartRates.Api.dll index 042180feabaf8127e6adbd62b370c524cadb72fc..7a4c9f3d52028eb59dd24536d783e481d9b3cf12 100644 GIT binary patch delta 198 zcmZpez|t^*WkLr_Z|l+h8+%Ha1^&({in{slhEJ>2{9FBIjdwN+vb<;9{GavbQA{b0 zGw1m=Qp{3}42%rYObtvE4U&=!Esax+Q%y}wEs{)AQxh$WED{Zj4K0(>HvhjpQPn?% z!Hgk=!HB^CjMErQfh<#oL?D?2goX^348{zpU~I}@0+g`;ikbpNQh{nLfO;&zYK_4v OlNi#r-)Cf0WCH+7x;^j! delta 198 zcmZpez|t^*WkLrFXHDYwjXfpI0;ytrzLJ+*{Fe78?Q7uCd$U=PkO*WaG8h4&IfDUEB#9vnD4GIfSumIYS*Aeo6rgG|hGZZ=6{yYxsKyA0 SlY#0DfHJ1r?=vzgvH<{Wjy4ql