This commit is contained in:
tanglong 2025-07-15 09:45:28 +08:00
parent c98c4b2a74
commit def023cff0
38 changed files with 205 additions and 211 deletions

View File

@ -1369,6 +1369,12 @@
<member name="P:YD_AllHeartRates.Commons.Dto.Device.Fakes.ShimDevicePageListDto.AllInstances.DeviceTypeSetInt32">
<summary>设置 DevicePageListDto.set_DeviceType(DevicePageListDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.Device.Fakes.ShimDevicePageListDto.AllInstances.IdGet">
<summary>设置 DevicePageListDto.get_Id(DevicePageListDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.Device.Fakes.ShimDevicePageListDto.AllInstances.IdSetInt32">
<summary>设置 DevicePageListDto.set_Id(DevicePageListDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.Device.Fakes.ShimDevicePageListDto.AllInstances.IsBindGet">
<summary>设置 DevicePageListDto.get_IsBind(DevicePageListDto this) 的 填充码</summary>
</member>
@ -1411,6 +1417,12 @@
<member name="P:YD_AllHeartRates.Commons.Dto.Device.Fakes.ShimDevicePageListDto.DeviceTypeSetInt32">
<summary>设置 DevicePageListDto.set_DeviceType(DevicePageListDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.Device.Fakes.ShimDevicePageListDto.IdGet">
<summary>设置 DevicePageListDto.get_Id(DevicePageListDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.Device.Fakes.ShimDevicePageListDto.IdSetInt32">
<summary>设置 DevicePageListDto.set_Id(DevicePageListDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.Device.Fakes.ShimDevicePageListDto.IsBindGet">
<summary>设置 DevicePageListDto.get_IsBind(DevicePageListDto this) 的 填充码</summary>
</member>
@ -2968,12 +2980,24 @@
<member name="T:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.AllInstances">
<summary>为所有实例成员定义填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.AllInstances.HeartRateOnlineCountGet">
<summary>设置 HeartRateDataDto.get_HeartRateOnlineCount(HeartRateDataDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.AllInstances.HeartRateOnlineCountSetInt32">
<summary>设置 HeartRateDataDto.set_HeartRateOnlineCount(HeartRateDataDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.AllInstances.HighGet">
<summary>设置 HeartRateDataDto.get_High(HeartRateDataDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.AllInstances.HighSetInt32">
<summary>设置 HeartRateDataDto.set_High(HeartRateDataDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.AllInstances.JumpingRopeOnLineCountGet">
<summary>设置 HeartRateDataDto.get_JumpingRopeOnLineCount(HeartRateDataDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.AllInstances.JumpingRopeOnLineCountSetInt32">
<summary>设置 HeartRateDataDto.set_JumpingRopeOnLineCount(HeartRateDataDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.AllInstances.LowGet">
<summary>设置 HeartRateDataDto.get_Low(HeartRateDataDto this) 的 填充码</summary>
</member>
@ -3016,12 +3040,24 @@
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.Constructor">
<summary>设置 HeartRateDataDto.HeartRateDataDto(HeartRateDataDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.HeartRateOnlineCountGet">
<summary>设置 HeartRateDataDto.get_HeartRateOnlineCount(HeartRateDataDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.HeartRateOnlineCountSetInt32">
<summary>设置 HeartRateDataDto.set_HeartRateOnlineCount(HeartRateDataDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.HighGet">
<summary>设置 HeartRateDataDto.get_High(HeartRateDataDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.HighSetInt32">
<summary>设置 HeartRateDataDto.set_High(HeartRateDataDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.JumpingRopeOnLineCountGet">
<summary>设置 HeartRateDataDto.get_JumpingRopeOnLineCount(HeartRateDataDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.JumpingRopeOnLineCountSetInt32">
<summary>设置 HeartRateDataDto.set_JumpingRopeOnLineCount(HeartRateDataDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.LowGet">
<summary>设置 HeartRateDataDto.get_Low(HeartRateDataDto this) 的 填充码</summary>
</member>
@ -3076,36 +3112,12 @@
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.HeartRateAllCountSetInt32">
<summary>设置 SchoolDto.set_HeartRateAllCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.HeartRateOfflineCountGet">
<summary>设置 SchoolDto.get_HeartRateOfflineCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.HeartRateOfflineCountSetInt32">
<summary>设置 SchoolDto.set_HeartRateOfflineCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.HeartRateOnlineCountGet">
<summary>设置 SchoolDto.get_HeartRateOnlineCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.HeartRateOnlineCountSetInt32">
<summary>设置 SchoolDto.set_HeartRateOnlineCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.JumpingRopeAllCountGet">
<summary>设置 SchoolDto.get_JumpingRopeAllCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.JumpingRopeAllCountSetInt32">
<summary>设置 SchoolDto.set_JumpingRopeAllCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.JumpingRopeOfflineCountGet">
<summary>设置 SchoolDto.get_JumpingRopeOfflineCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.JumpingRopeOfflineCountSetInt32">
<summary>设置 SchoolDto.set_JumpingRopeOfflineCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.JumpingRopeOnLineCountGet">
<summary>设置 SchoolDto.get_JumpingRopeOnLineCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.JumpingRopeOnLineCountSetInt32">
<summary>设置 SchoolDto.set_JumpingRopeOnLineCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.NameGet">
<summary>设置 SchoolDto.get_Name(SchoolDto this) 的 填充码</summary>
</member>
@ -3142,36 +3154,12 @@
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.HeartRateAllCountSetInt32">
<summary>设置 SchoolDto.set_HeartRateAllCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.HeartRateOfflineCountGet">
<summary>设置 SchoolDto.get_HeartRateOfflineCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.HeartRateOfflineCountSetInt32">
<summary>设置 SchoolDto.set_HeartRateOfflineCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.HeartRateOnlineCountGet">
<summary>设置 SchoolDto.get_HeartRateOnlineCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.HeartRateOnlineCountSetInt32">
<summary>设置 SchoolDto.set_HeartRateOnlineCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.JumpingRopeAllCountGet">
<summary>设置 SchoolDto.get_JumpingRopeAllCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.JumpingRopeAllCountSetInt32">
<summary>设置 SchoolDto.set_JumpingRopeAllCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.JumpingRopeOfflineCountGet">
<summary>设置 SchoolDto.get_JumpingRopeOfflineCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.JumpingRopeOfflineCountSetInt32">
<summary>设置 SchoolDto.set_JumpingRopeOfflineCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.JumpingRopeOnLineCountGet">
<summary>设置 SchoolDto.get_JumpingRopeOnLineCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.JumpingRopeOnLineCountSetInt32">
<summary>设置 SchoolDto.set_JumpingRopeOnLineCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.NameGet">
<summary>设置 SchoolDto.get_Name(SchoolDto this) 的 填充码</summary>
</member>
@ -4624,6 +4612,9 @@
<member name="M:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimMemoryCaching.AllInstances.GetOf1String``1(Microsoft.QualityTools.Testing.Fakes.FakesDelegates.Func{YD_AllHeartRates.Commons.MemoryCaches.MemoryCaching,System.String,``0})">
<summary>设置 MemoryCaching.Get(MemoryCaching this, String key) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimMemoryCaching.AllInstances.GetSetCountString">
<summary>设置 MemoryCaching.GetSetCount(MemoryCaching this, String key) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimMemoryCaching.AllInstances.GetString">
<summary>设置 MemoryCaching.Get(MemoryCaching this, String cacheKey) 的 填充码</summary>
</member>
@ -4678,6 +4669,9 @@
<member name="M:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimMemoryCaching.GetOf1String``1(Microsoft.QualityTools.Testing.Fakes.FakesDelegates.Func{System.String,``0})">
<summary>设置 MemoryCaching.Get(MemoryCaching this, String key) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimMemoryCaching.GetSetCountString">
<summary>设置 MemoryCaching.GetSetCount(MemoryCaching this, String key) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimMemoryCaching.GetString">
<summary>设置 MemoryCaching.Get(MemoryCaching this, String cacheKey) 的 填充码</summary>
</member>
@ -4744,6 +4738,9 @@
<member name="M:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimRedisCacheService.AllInstances.GetOf1String``1(Microsoft.QualityTools.Testing.Fakes.FakesDelegates.Func{YD_AllHeartRates.Commons.MemoryCaches.RedisCacheService,System.String,``0})">
<summary>设置 RedisCacheService.Get(RedisCacheService this, String key) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimRedisCacheService.AllInstances.GetSetCountString">
<summary>设置 RedisCacheService.GetSetCount(RedisCacheService this, String key) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimRedisCacheService.AllInstances.GetString">
<summary>设置 RedisCacheService.Get(RedisCacheService this, String key) 的 填充码</summary>
</member>
@ -4792,6 +4789,9 @@
<member name="M:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimRedisCacheService.GetOf1String``1(Microsoft.QualityTools.Testing.Fakes.FakesDelegates.Func{System.String,``0})">
<summary>设置 RedisCacheService.Get(RedisCacheService this, String key) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimRedisCacheService.GetSetCountString">
<summary>设置 RedisCacheService.GetSetCount(RedisCacheService this, String key) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimRedisCacheService.GetString">
<summary>设置 RedisCacheService.Get(RedisCacheService this, String key) 的 填充码</summary>
</member>
@ -4834,6 +4834,9 @@
<member name="M:YD_AllHeartRates.Commons.MemoryCaches.Fakes.StubICaching.GetOf1String``1(Microsoft.QualityTools.Testing.Fakes.FakesDelegates.Func{System.String,``0})">
<summary>设置 Get(ICaching this, String key) 的存根</summary>
</member>
<member name="F:YD_AllHeartRates.Commons.MemoryCaches.Fakes.StubICaching.GetSetCountString">
<summary>设置 ICaching.GetSetCount(ICaching this, String key) 的 stub</summary>
</member>
<member name="F:YD_AllHeartRates.Commons.MemoryCaches.Fakes.StubICaching.GetString">
<summary>设置 ICaching.Get(ICaching this, String key) 的 stub</summary>
</member>
@ -4873,6 +4876,9 @@
<member name="M:YD_AllHeartRates.Commons.MemoryCaches.Fakes.StubICaching.YD_AllHeartRates#Commons#MemoryCaches#ICaching#Get(System.String)">
<summary>设置 ICaching.Get(ICaching this, String key) 的 存根</summary>
</member>
<member name="M:YD_AllHeartRates.Commons.MemoryCaches.Fakes.StubICaching.YD_AllHeartRates#Commons#MemoryCaches#ICaching#GetSetCount(System.String)">
<summary>设置 ICaching.GetSetCount(ICaching this, String key) 的 存根</summary>
</member>
<member name="M:YD_AllHeartRates.Commons.MemoryCaches.Fakes.StubICaching.YD_AllHeartRates#Commons#MemoryCaches#ICaching#LPush(System.String,System.String)">
<summary>设置 ICaching.LPush(ICaching this, String key, String val) 的 存根</summary>
</member>

View File

@ -159,11 +159,12 @@ namespace YD_AllHeartRates.Api.Mqtt
heartRateEntities.Add(entity);
var heartRateKey = $"heartRate:{student.StudentNo}";
_caching.AddObject(heartRateKey, entity, 600); // 10分钟缓存
_caching.AddObject(heartRateKey, entity, 60); // 1分钟缓存
// 更新学校学生编号集合Set
var studentSetKey = $"school:{student.SchoolCode}:students";
RedisHelper.SAdd(studentSetKey, student.StudentNo); // 自动去重
RedisHelper.Expire(studentSetKey, 60);
}
foreach (var ble in jumpRopeList)
@ -221,7 +222,7 @@ namespace YD_AllHeartRates.Api.Mqtt
}
var studentSetKey = $"school:{student.SchoolCode}:students";
var jumpKey = $"jumpRope:{student.StudentNo}";
_caching.AddObject(jumpKey, jumpData, 600);
_caching.AddObject(jumpKey, jumpData, 60);
RedisHelper.SAdd(studentSetKey, student.StudentNo);
}

View File

@ -1,6 +1,7 @@

using AutoMapper;
using Microsoft.EntityFrameworkCore;
using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime;
using System.Drawing;
using System.Reflection.PortableExecutable;
using YD_AllHeartRates.Api.Context;
@ -70,7 +71,6 @@ namespace YD_AllHeartRates.Api.Services.Impl
res.Grade = grades;
var devices = await _sportsContext.Device.Where(x => x.SchoolCode == schoolCode).ToListAsync();
var heartRateDevices = devices.Where(x => x.DeviceType == 1).ToList();
@ -79,60 +79,6 @@ namespace YD_AllHeartRates.Api.Services.Impl
res.HeartRateAllCount = heartRateDevices.Count();
res.JumpingRopeAllCount = jumpingRopeDevices.Count();
var tenMinutesAgo = DateTime.Now.AddMinutes(-10);
#region
var heartRateData = _userContext.HeartRateData
.Where(x => x.SchoolCode == schoolCode && x.ScoreTime >= tenMinutesAgo)
.ToList();
var onlineHeartRateDeviceCodes = heartRateData
.Select(x => x.Code)
.Distinct()
.ToHashSet();
// 在线设备
var onlineHeartRateDevices = heartRateDevices
.Where(x => onlineHeartRateDeviceCodes.Contains(x.Code))
.ToList();
// 离线设备 = 所有心率设备 - 在线设备
var offlineHeartRateDevices = heartRateDevices
.Where(x => !onlineHeartRateDeviceCodes.Contains(x.Code))
.ToList();
// 设置返回值或继续处理
res.HeartRateOnlineCount = onlineHeartRateDevices.Count;
res.HeartRateOfflineCount = offlineHeartRateDevices.Count;
#endregion
#region
var jumpRopeData = _userContext.JumpRopeData
.Where(x => x.SchoolCode == schoolCode && x.ScoreTime >= tenMinutesAgo)
.ToList();
var onlineJumpRopeDeviceCodes = jumpRopeData
.Select(x => x.Code)
.Distinct()
.ToHashSet();
// 在线设备
var onlineJumpRopeDevices = jumpingRopeDevices
.Where(x => onlineJumpRopeDeviceCodes.Contains(x.Code))
.ToList();
// 离线设备 = 所有心率设备 - 在线设备
var offlineJumpRopeDevices = jumpingRopeDevices
.Where(x => !onlineJumpRopeDeviceCodes.Contains(x.Code))
.ToList();
// 设置返回值或继续处理
res.JumpingRopeOnLineCount = onlineJumpRopeDevices.Count;
res.JumpingRopeOfflineCount = offlineJumpRopeDevices.Count;
#endregion
return res;
}
@ -145,7 +91,15 @@ namespace YD_AllHeartRates.Api.Services.Impl
var res = new HeartRateDataDto();
var now = DateTime.Now;
var tenMinutesAgo = now.AddMinutes(-10);
var tenMinutesAgo = now.AddMinutes(-1);
// 在线心率设备
int onlineHeartRateCount = RedisHelper.Keys("heartRate:*").Length;
res.HeartRateOnlineCount = onlineHeartRateCount;
// 在线跳绳设备
int onlineJumpRopeCount = RedisHelper.Keys("jumpRope:*").Length;
res.JumpingRopeOnLineCount = onlineJumpRopeCount;
// 1. 构建缓存 key
string studentListKey = $"students:{schoolCode}:{classId}";
@ -183,7 +137,7 @@ namespace YD_AllHeartRates.Api.Services.Impl
.FirstOrDefaultAsync();
if (heartRate != null)
_caching.AddObject(heartRateKey, heartRate, 600);
_caching.AddObject(heartRateKey, heartRate, 60);
}
// ❗跳绳缓存未命中 → 单独查数据库
@ -195,16 +149,30 @@ namespace YD_AllHeartRates.Api.Services.Impl
.FirstOrDefaultAsync();
if (jumpRope != null)
_caching.AddObject(jumpRopeKey, jumpRope, 600);
_caching.AddObject(jumpRopeKey, jumpRope, 60);
}
// 心率强度判断
int strength = heartRate?.Strength ?? 0;
if (strength < 50) warmUp++;
else if (strength < 60) low++;
else if (strength < 70) medium++;
else if (strength < 85) high++;
else warning++;
switch (strength)
{
case > 0 and < 50:
warmUp++;
break;
case >= 50 and < 60:
low++;
break;
case >= 60 and < 70:
medium++;
break;
case >= 70 and < 85:
high++;
break;
case >= 85:
warning++;
break;
}
res.StudentList.Add(new StudentDto
{
@ -218,12 +186,13 @@ namespace YD_AllHeartRates.Api.Services.Impl
});
}
int total = studentList.Count == 0 ? 1 : studentList.Count;
res.WarmUp = (int)Math.Round(warmUp * 100.0 / total);
res.Low = (int)Math.Round(low * 100.0 / total);
res.Medium = (int)Math.Round(medium * 100.0 / total);
res.High = (int)Math.Round(high * 100.0 / total);
res.Warning = (int)Math.Round(warning * 100.0 / total);
int total = RedisHelper.Keys("heartRate:*").Length;
res.WarmUp = total == 0 ? 0 : (int)Math.Round(warmUp * 100.0 / total);
res.Low = total == 0 ? 0 : (int)Math.Round(low * 100.0 / total);
res.Medium = total == 0 ? 0 : (int)Math.Round(medium * 100.0 / total);
res.High = total == 0 ? 0 : (int)Math.Round(high * 100.0 / total);
res.Warning = total == 0 ? 0 : (int)Math.Round(warning * 100.0 / total);
return res;
}

View File

@ -75,7 +75,7 @@ namespace YD_AllHeartRates.Api
services.AddSingleton(new MqttFactory().CreateMqttClient());
// ③ 后台批量写库服务
//services.AddHostedService<MqttBackgroundService>();
services.AddHostedService<MqttBackgroundService>();
services.AddSingleton<JwtHelper>();

View File

@ -825,6 +825,10 @@
"DevicePageListDto": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"code": {
"type": "string",
"nullable": true
@ -964,6 +968,14 @@
"HeartRateDataDto": {
"type": "object",
"properties": {
"heartRateOnlineCount": {
"type": "integer",
"format": "int32"
},
"jumpingRopeOnLineCount": {
"type": "integer",
"format": "int32"
},
"warmUp": {
"type": "integer",
"format": "int32"
@ -1029,26 +1041,10 @@
"type": "integer",
"format": "int32"
},
"heartRateOnlineCount": {
"type": "integer",
"format": "int32"
},
"heartRateOfflineCount": {
"type": "integer",
"format": "int32"
},
"jumpingRopeAllCount": {
"type": "integer",
"format": "int32"
},
"jumpingRopeOnLineCount": {
"type": "integer",
"format": "int32"
},
"jumpingRopeOfflineCount": {
"type": "integer",
"format": "int32"
},
"grade": {
"type": "array",
"items": {

View File

@ -1369,6 +1369,12 @@
<member name="P:YD_AllHeartRates.Commons.Dto.Device.Fakes.ShimDevicePageListDto.AllInstances.DeviceTypeSetInt32">
<summary>设置 DevicePageListDto.set_DeviceType(DevicePageListDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.Device.Fakes.ShimDevicePageListDto.AllInstances.IdGet">
<summary>设置 DevicePageListDto.get_Id(DevicePageListDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.Device.Fakes.ShimDevicePageListDto.AllInstances.IdSetInt32">
<summary>设置 DevicePageListDto.set_Id(DevicePageListDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.Device.Fakes.ShimDevicePageListDto.AllInstances.IsBindGet">
<summary>设置 DevicePageListDto.get_IsBind(DevicePageListDto this) 的 填充码</summary>
</member>
@ -1411,6 +1417,12 @@
<member name="P:YD_AllHeartRates.Commons.Dto.Device.Fakes.ShimDevicePageListDto.DeviceTypeSetInt32">
<summary>设置 DevicePageListDto.set_DeviceType(DevicePageListDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.Device.Fakes.ShimDevicePageListDto.IdGet">
<summary>设置 DevicePageListDto.get_Id(DevicePageListDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.Device.Fakes.ShimDevicePageListDto.IdSetInt32">
<summary>设置 DevicePageListDto.set_Id(DevicePageListDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.Device.Fakes.ShimDevicePageListDto.IsBindGet">
<summary>设置 DevicePageListDto.get_IsBind(DevicePageListDto this) 的 填充码</summary>
</member>
@ -2968,12 +2980,24 @@
<member name="T:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.AllInstances">
<summary>为所有实例成员定义填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.AllInstances.HeartRateOnlineCountGet">
<summary>设置 HeartRateDataDto.get_HeartRateOnlineCount(HeartRateDataDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.AllInstances.HeartRateOnlineCountSetInt32">
<summary>设置 HeartRateDataDto.set_HeartRateOnlineCount(HeartRateDataDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.AllInstances.HighGet">
<summary>设置 HeartRateDataDto.get_High(HeartRateDataDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.AllInstances.HighSetInt32">
<summary>设置 HeartRateDataDto.set_High(HeartRateDataDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.AllInstances.JumpingRopeOnLineCountGet">
<summary>设置 HeartRateDataDto.get_JumpingRopeOnLineCount(HeartRateDataDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.AllInstances.JumpingRopeOnLineCountSetInt32">
<summary>设置 HeartRateDataDto.set_JumpingRopeOnLineCount(HeartRateDataDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.AllInstances.LowGet">
<summary>设置 HeartRateDataDto.get_Low(HeartRateDataDto this) 的 填充码</summary>
</member>
@ -3016,12 +3040,24 @@
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.Constructor">
<summary>设置 HeartRateDataDto.HeartRateDataDto(HeartRateDataDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.HeartRateOnlineCountGet">
<summary>设置 HeartRateDataDto.get_HeartRateOnlineCount(HeartRateDataDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.HeartRateOnlineCountSetInt32">
<summary>设置 HeartRateDataDto.set_HeartRateOnlineCount(HeartRateDataDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.HighGet">
<summary>设置 HeartRateDataDto.get_High(HeartRateDataDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.HighSetInt32">
<summary>设置 HeartRateDataDto.set_High(HeartRateDataDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.JumpingRopeOnLineCountGet">
<summary>设置 HeartRateDataDto.get_JumpingRopeOnLineCount(HeartRateDataDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.JumpingRopeOnLineCountSetInt32">
<summary>设置 HeartRateDataDto.set_JumpingRopeOnLineCount(HeartRateDataDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimHeartRateDataDto.LowGet">
<summary>设置 HeartRateDataDto.get_Low(HeartRateDataDto this) 的 填充码</summary>
</member>
@ -3076,36 +3112,12 @@
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.HeartRateAllCountSetInt32">
<summary>设置 SchoolDto.set_HeartRateAllCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.HeartRateOfflineCountGet">
<summary>设置 SchoolDto.get_HeartRateOfflineCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.HeartRateOfflineCountSetInt32">
<summary>设置 SchoolDto.set_HeartRateOfflineCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.HeartRateOnlineCountGet">
<summary>设置 SchoolDto.get_HeartRateOnlineCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.HeartRateOnlineCountSetInt32">
<summary>设置 SchoolDto.set_HeartRateOnlineCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.JumpingRopeAllCountGet">
<summary>设置 SchoolDto.get_JumpingRopeAllCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.JumpingRopeAllCountSetInt32">
<summary>设置 SchoolDto.set_JumpingRopeAllCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.JumpingRopeOfflineCountGet">
<summary>设置 SchoolDto.get_JumpingRopeOfflineCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.JumpingRopeOfflineCountSetInt32">
<summary>设置 SchoolDto.set_JumpingRopeOfflineCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.JumpingRopeOnLineCountGet">
<summary>设置 SchoolDto.get_JumpingRopeOnLineCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.JumpingRopeOnLineCountSetInt32">
<summary>设置 SchoolDto.set_JumpingRopeOnLineCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.NameGet">
<summary>设置 SchoolDto.get_Name(SchoolDto this) 的 填充码</summary>
</member>
@ -3142,36 +3154,12 @@
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.HeartRateAllCountSetInt32">
<summary>设置 SchoolDto.set_HeartRateAllCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.HeartRateOfflineCountGet">
<summary>设置 SchoolDto.get_HeartRateOfflineCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.HeartRateOfflineCountSetInt32">
<summary>设置 SchoolDto.set_HeartRateOfflineCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.HeartRateOnlineCountGet">
<summary>设置 SchoolDto.get_HeartRateOnlineCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.HeartRateOnlineCountSetInt32">
<summary>设置 SchoolDto.set_HeartRateOnlineCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.JumpingRopeAllCountGet">
<summary>设置 SchoolDto.get_JumpingRopeAllCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.JumpingRopeAllCountSetInt32">
<summary>设置 SchoolDto.set_JumpingRopeAllCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.JumpingRopeOfflineCountGet">
<summary>设置 SchoolDto.get_JumpingRopeOfflineCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.JumpingRopeOfflineCountSetInt32">
<summary>设置 SchoolDto.set_JumpingRopeOfflineCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.JumpingRopeOnLineCountGet">
<summary>设置 SchoolDto.get_JumpingRopeOnLineCount(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.JumpingRopeOnLineCountSetInt32">
<summary>设置 SchoolDto.set_JumpingRopeOnLineCount(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.NameGet">
<summary>设置 SchoolDto.get_Name(SchoolDto this) 的 填充码</summary>
</member>
@ -4624,6 +4612,9 @@
<member name="M:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimMemoryCaching.AllInstances.GetOf1String``1(Microsoft.QualityTools.Testing.Fakes.FakesDelegates.Func{YD_AllHeartRates.Commons.MemoryCaches.MemoryCaching,System.String,``0})">
<summary>设置 MemoryCaching.Get(MemoryCaching this, String key) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimMemoryCaching.AllInstances.GetSetCountString">
<summary>设置 MemoryCaching.GetSetCount(MemoryCaching this, String key) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimMemoryCaching.AllInstances.GetString">
<summary>设置 MemoryCaching.Get(MemoryCaching this, String cacheKey) 的 填充码</summary>
</member>
@ -4678,6 +4669,9 @@
<member name="M:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimMemoryCaching.GetOf1String``1(Microsoft.QualityTools.Testing.Fakes.FakesDelegates.Func{System.String,``0})">
<summary>设置 MemoryCaching.Get(MemoryCaching this, String key) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimMemoryCaching.GetSetCountString">
<summary>设置 MemoryCaching.GetSetCount(MemoryCaching this, String key) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimMemoryCaching.GetString">
<summary>设置 MemoryCaching.Get(MemoryCaching this, String cacheKey) 的 填充码</summary>
</member>
@ -4744,6 +4738,9 @@
<member name="M:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimRedisCacheService.AllInstances.GetOf1String``1(Microsoft.QualityTools.Testing.Fakes.FakesDelegates.Func{YD_AllHeartRates.Commons.MemoryCaches.RedisCacheService,System.String,``0})">
<summary>设置 RedisCacheService.Get(RedisCacheService this, String key) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimRedisCacheService.AllInstances.GetSetCountString">
<summary>设置 RedisCacheService.GetSetCount(RedisCacheService this, String key) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimRedisCacheService.AllInstances.GetString">
<summary>设置 RedisCacheService.Get(RedisCacheService this, String key) 的 填充码</summary>
</member>
@ -4792,6 +4789,9 @@
<member name="M:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimRedisCacheService.GetOf1String``1(Microsoft.QualityTools.Testing.Fakes.FakesDelegates.Func{System.String,``0})">
<summary>设置 RedisCacheService.Get(RedisCacheService this, String key) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimRedisCacheService.GetSetCountString">
<summary>设置 RedisCacheService.GetSetCount(RedisCacheService this, String key) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.MemoryCaches.Fakes.ShimRedisCacheService.GetString">
<summary>设置 RedisCacheService.Get(RedisCacheService this, String key) 的 填充码</summary>
</member>
@ -4834,6 +4834,9 @@
<member name="M:YD_AllHeartRates.Commons.MemoryCaches.Fakes.StubICaching.GetOf1String``1(Microsoft.QualityTools.Testing.Fakes.FakesDelegates.Func{System.String,``0})">
<summary>设置 Get(ICaching this, String key) 的存根</summary>
</member>
<member name="F:YD_AllHeartRates.Commons.MemoryCaches.Fakes.StubICaching.GetSetCountString">
<summary>设置 ICaching.GetSetCount(ICaching this, String key) 的 stub</summary>
</member>
<member name="F:YD_AllHeartRates.Commons.MemoryCaches.Fakes.StubICaching.GetString">
<summary>设置 ICaching.Get(ICaching this, String key) 的 stub</summary>
</member>
@ -4873,6 +4876,9 @@
<member name="M:YD_AllHeartRates.Commons.MemoryCaches.Fakes.StubICaching.YD_AllHeartRates#Commons#MemoryCaches#ICaching#Get(System.String)">
<summary>设置 ICaching.Get(ICaching this, String key) 的 存根</summary>
</member>
<member name="M:YD_AllHeartRates.Commons.MemoryCaches.Fakes.StubICaching.YD_AllHeartRates#Commons#MemoryCaches#ICaching#GetSetCount(System.String)">
<summary>设置 ICaching.GetSetCount(ICaching this, String key) 的 存根</summary>
</member>
<member name="M:YD_AllHeartRates.Commons.MemoryCaches.Fakes.StubICaching.YD_AllHeartRates#Commons#MemoryCaches#ICaching#LPush(System.String,System.String)">
<summary>设置 ICaching.LPush(ICaching this, String key, String val) 的 存根</summary>
</member>

View File

@ -1 +1 @@
7def3707
149dafaa

View File

@ -1 +1 @@
ONwTLhkGOhz/28wj7kAwt2jbsNLGmVJjqL1QibQUlKE=WWmIfOUbyYPYdKFHlVpzo+vbEnfIsJNTTcG8+oWdtSc=
0uohCQ6UbfHd8G7ilvHCC/sDgU9t3aeppmjszUtaN84=WWmIfOUbyYPYdKFHlVpzo+vbEnfIsJNTTcG8+oWdtSc=

View File

@ -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+7e1bbaab315f2ae7502343f72735413eb2ac9405")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+c98c4b2a74890d0bb616aad014ba75a84433e906")]
[assembly: System.Reflection.AssemblyProductAttribute("YD_AllHeartRates.Api")]
[assembly: System.Reflection.AssemblyTitleAttribute("YD_AllHeartRates.Api")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
24d6911f3a4f57a1e85f43b3126d306b828d7978fb41f33c0e9f8a99145f7176
4c39aab942c93310bbce5068bcc5d00989b6b795a1b2889442bc4bd9ead58b4f

View File

@ -11,6 +11,25 @@ namespace YD_AllHeartRates.Commons.Dto.LargeScreen
/// </summary>
public class HeartRateDataDto
{
/// <summary>
/// 在线心率设备数量
/// </summary>
public int HeartRateOnlineCount { get; set; }
/// <summary>
/// 离线心率设备数量
/// </summary>
//public int HeartRateOfflineCount { get; set; }
/// <summary>
/// 在线跳绳设备数量
/// </summary>
public int JumpingRopeOnLineCount { get; set; }
/// <summary>
/// 离线跳绳设备数量
/// </summary>
//public int JumpingRopeOfflineCount { get; set; }
/// <summary>
/// 基本热身
/// </summary>

View File

@ -25,31 +25,11 @@ namespace YD_AllHeartRates.Commons.Dto.LargeScreen
/// </summary>
public int HeartRateAllCount { get; set; }
/// <summary>
/// 在线心率设备数量
/// </summary>
public int HeartRateOnlineCount { get; set; }
/// <summary>
/// 离线心率设备数量
/// </summary>
public int HeartRateOfflineCount { get; set; }
/// <summary>
/// 所有跳绳设备数量
/// </summary>
public int JumpingRopeAllCount { get; set; }
/// <summary>
/// 在线跳绳设备数量
/// </summary>
public int JumpingRopeOnLineCount { get; set; }
/// <summary>
/// 离线跳绳设备数量
/// </summary>
public int JumpingRopeOfflineCount { get; set; }
/// <summary>
/// 年级集合
/// </summary>

View File

@ -87,5 +87,12 @@ namespace YD_AllHeartRates.Commons.MemoryCaches
/// <param name="key">缓存Key</param>
/// <returns></returns>
string Get(string key);
/// <summary>
/// 获取集合中元素个数
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
int GetSetCount(string key);
}
}

View File

@ -98,5 +98,10 @@ namespace YD_AllHeartRates.Commons.MemoryCaches
{
throw new NotImplementedException();
}
public int GetSetCount(string key)
{
throw new NotImplementedException();
}
}
}

View File

@ -6,7 +6,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace YD_AllHeartRates.Commons.MemoryCaches
namespace YD_AllHeartRates.Commons.MemoryCaches
{
/// <summary>
/// 实例化缓存接口ICaching
@ -123,5 +123,10 @@ namespace YD_AllHeartRates.Commons.MemoryCaches
public void Dispose()
{
}
public int GetSetCount(string key)
{
return (int)RedisHelper.SCard(key);
}
}
}

View File

@ -14,7 +14,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("YD_AllHeartRates.Commons")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+d519db60065b57bb45c944c9712771e34f5a400e")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+c98c4b2a74890d0bb616aad014ba75a84433e906")]
[assembly: System.Reflection.AssemblyProductAttribute("YD_AllHeartRates.Commons")]
[assembly: System.Reflection.AssemblyTitleAttribute("YD_AllHeartRates.Commons")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
7b2bf23081d834e2ce2a9fc41cc27e53006e31644d5a7528d5f7ab365ea6bfcd
668b81ff389a83759bfd187d7c13f10ac2622c7ff6839336f1132ba32a93a9fb