This commit is contained in:
tanglong 2025-07-15 13:59:14 +08:00
parent e813d22174
commit 3c399871d7
32 changed files with 72 additions and 8 deletions

View File

@ -3100,6 +3100,12 @@
<member name="T:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances">
<summary>为所有实例成员定义填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.FlushTimeGet">
<summary>设置 SchoolDto.get_FlushTime(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.FlushTimeSetInt32">
<summary>设置 SchoolDto.set_FlushTime(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.GradeGet">
<summary>设置 SchoolDto.get_Grade(SchoolDto this) 的 填充码</summary>
</member>
@ -3142,6 +3148,12 @@
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.Constructor">
<summary>设置 SchoolDto.SchoolDto(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.FlushTimeGet">
<summary>设置 SchoolDto.get_FlushTime(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.FlushTimeSetInt32">
<summary>设置 SchoolDto.set_FlushTime(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.GradeGet">
<summary>设置 SchoolDto.get_Grade(SchoolDto this) 的 填充码</summary>
</member>

View File

@ -172,12 +172,12 @@ namespace YD_AllHeartRates.Api.Mqtt
if (string.IsNullOrWhiteSpace(ble.RawData)) continue;
var student = _studentList.FirstOrDefault(x => x.JumpRopeId == ble.BleName);
if (student == null || student.GradeId == 0 || student.ClassId == 0) continue;
if (student?.GradeId == 0 || student?.ClassId == 0) continue;
var data = ParseHexData(ble.RawData);
if (data == null) continue;
int mfIndex = Array.IndexOf(data, new byte[] { 0xFF, 0x04, 0xFF, 0xCF });
int mfIndex = IndexOfSequence(data, new byte[] { 0xFF, 0x04, 0xFF, 0xCF });
if (mfIndex < 0 || data.Length < mfIndex + 10) continue;
int jumpCount = data[mfIndex + 5] + (data[mfIndex + 6] << 8);
@ -297,5 +297,27 @@ namespace YD_AllHeartRates.Api.Mqtt
}
if (buffer.Count > 0) yield return buffer;
}
public static int IndexOfSequence(byte[] buffer, byte[] pattern)
{
if (pattern.Length == 0 || buffer.Length < pattern.Length)
return -1;
for (int i = 0; i <= buffer.Length - pattern.Length; i++)
{
bool matched = true;
for (int j = 0; j < pattern.Length; j++)
{
if (buffer[i + j] != pattern[j])
{
matched = false;
break;
}
}
if (matched)
return i;
}
return -1;
}
}
}

View File

@ -1045,6 +1045,10 @@
"type": "integer",
"format": "int32"
},
"flushTime": {
"type": "integer",
"format": "int32"
},
"grade": {
"type": "array",
"items": {

View File

@ -3100,6 +3100,12 @@
<member name="T:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances">
<summary>为所有实例成员定义填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.FlushTimeGet">
<summary>设置 SchoolDto.get_FlushTime(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.FlushTimeSetInt32">
<summary>设置 SchoolDto.set_FlushTime(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.AllInstances.GradeGet">
<summary>设置 SchoolDto.get_Grade(SchoolDto this) 的 填充码</summary>
</member>
@ -3142,6 +3148,12 @@
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.Constructor">
<summary>设置 SchoolDto.SchoolDto(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.FlushTimeGet">
<summary>设置 SchoolDto.get_FlushTime(SchoolDto this) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.FlushTimeSetInt32">
<summary>设置 SchoolDto.set_FlushTime(SchoolDto this, Int32 value) 的 填充码</summary>
</member>
<member name="P:YD_AllHeartRates.Commons.Dto.LargeScreen.Fakes.ShimSchoolDto.GradeGet">
<summary>设置 SchoolDto.get_Grade(SchoolDto this) 的 填充码</summary>
</member>

View File

@ -1 +1 @@
149dafaa
724556b4

View File

@ -1 +1 @@
0uohCQ6UbfHd8G7ilvHCC/sDgU9t3aeppmjszUtaN84=WWmIfOUbyYPYdKFHlVpzo+vbEnfIsJNTTcG8+oWdtSc=
LDKd/ti7yfL9FaEQumNp+Az5QM7oCIsd7o6hoX6U9Ag=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+c98c4b2a74890d0bb616aad014ba75a84433e906")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+e813d22174a36ed6a56d32c6680c8cbe3560475c")]
[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 @@
4c39aab942c93310bbce5068bcc5d00989b6b795a1b2889442bc4bd9ead58b4f
297fd43299ec4dd1d6e6586c0f993bcc28ee868403ee350c618e71c5827769a6

View File

@ -530,6 +530,13 @@
</summary>
<returns></returns>
</member>
<member name="M:YD_AllHeartRates.Api.Services.Impl.LargeScreenService.StudentList(System.Int32)">
<summary>
根据班级Id获取学生列表
</summary>
<param name="classId"></param>
<returns></returns>
</member>
<member name="M:YD_AllHeartRates.Api.Services.Impl.LargeScreenService.HeartRateData(System.Int32)">
<summary>
心率数据
@ -646,6 +653,13 @@
</summary>
<returns></returns>
</member>
<member name="M:YD_AllHeartRates.Api.Services.Interface.ILargeScreenService.StudentList(System.Int32)">
<summary>
根据班级获取学生
</summary>
<param name="classId"></param>
<returns></returns>
</member>
<member name="M:YD_AllHeartRates.Api.Services.Interface.ILargeScreenService.HeartRateData(System.Int32)">
<summary>
心率数据

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+c98c4b2a74890d0bb616aad014ba75a84433e906")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+e813d22174a36ed6a56d32c6680c8cbe3560475c")]
[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 @@
668b81ff389a83759bfd187d7c13f10ac2622c7ff6839336f1132ba32a93a9fb
39a63e2e900cc731a8b2ec5fe3e54de06c4f87e0157c7677c214e225c20963a4