数据接口问题整理 #287

Open
opened 2026-02-26 11:22:20 +08:00 by lrss3 · 8 comments
Owner

一侧实时数据没有返回值

这里的盾构机没有实时数据,找了一下,东西都是正确的,测试了一下金塘侧的数据没有返回

image.png

image.png

话说这里的这个实时数据的委托引用连线没有识别到,有引用计数,但是对象没找到,是个bug,也抽个时间改了吧

# 一侧实时数据没有返回值 这里的盾构机没有实时数据,找了一下,东西都是正确的,测试了一下金塘侧的数据没有返回 <img width="315" alt="image.png" src="attachments/1d286929-0a4a-4ed3-9c52-40b0e52454ae"> ![image.png](/attachments/1297f942-d4c7-4336-896e-5fadb6b2090a) 话说这里的这个实时数据的委托引用连线没有识别到,有引用计数,但是对象没找到,是个bug,也抽个时间改了吧
158 KiB
275 KiB
Author
Owner

上面那个问题是场景中放的接口脚本请求没有返回导致的,在代码中使用我的连接池就行了。

刀盘系统:返回数据没有正确呈现

没有显示横轴内容,可能是更新时忘了,加上就好了。
不过有有个奇怪的现象,总数据有16,图表1会有32个数据,图2却只有16个,明明是一起添加的。

导向系统:返回值为空

ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
System.Collections.Generic.List`1[T].get_Item (System.Int32 index) (at <6073cf49ed704e958b8a66d540dea948>:0)
LiRuochen.Element.UI.LineChartWithTimeSelect.SetAxisTimeCategory[T] (System.Int32 chartIndex, System.Collections.Generic.List`1[T] srouce, System.Func`2[T,TResult] getTime, System.String format) (at Assets/Script/LiRuochen/Element/UI/LineChartWithTimeSelect.cs:189)
LiRuochen.Manager.DataDrive.GuidanceSystemDataDrive+<>c__DisplayClass32_0.<ExcuteUpdateCurrentSystemSchrduleWithChartData>b__0 (System.String s) (at Assets/Script/LiRuochen/Manager/DataDrive/GuidanceSystemDataDrive.cs:236)
LiRuochen.Manager.DataDrive.DataDriveAPI+DataExecuteStep.Invoke (System.String data) (at Assets/Script/LiRuochen/Manager/DataDrive/DataDriveApi.cs:2364)
ProcessTools.Data.DataSourceBase.EventLogic (System.String data, System.Boolean isError) (at Assets/ProcessTools/Scripts/Runtime/Data/DataSourceBase.cs:608)
LiRuochen.Manager.DataDrive.DataDriveAPI+ManualDataSource.EventLogic (System.String data, System.Boolean isError) (at Assets/Script/LiRuochen/Manager/DataDrive/DataDriveApi.cs:2290)
ProcessTools.Data.DataSourceBase+<GetData>d__47.MoveNext () (at Assets/ProcessTools/Scripts/Runtime/Data/DataSourceBase.cs:586)
UnityEngine.SetupCoroutine.InvokeMoveNext (System.Collections.IEnumerator enumerator, System.IntPtr returnValueAddress) (at <40205bb2cb25478a9cb0f5e54cf11441>:0)

推进系统:返回为空

推进信息历史数据 0
UnityEngine.Debug:Log (object)
LiRuochen.Manager.DataDrive.PropulsionSystemDataDrive/<>c__DisplayClass38_0:<ExcuteUpdateCurrentSystemSchrduleData>b__0 (string) (at Assets/Script/LiRuochen/Manager/DataDrive/PropulsionSystemDataDrive.cs:258)
LiRuochen.Manager.DataDrive.DataDriveAPI/DataExecuteStep:Invoke (string) (at Assets/Script/LiRuochen/Manager/DataDrive/DataDriveApi.cs:2364)
ProcessTools.Data.DataSourceBase:EventLogic (string,bool) (at Assets/ProcessTools/Scripts/Runtime/Data/DataSourceBase.cs:608)
LiRuochen.Manager.DataDrive.DataDriveAPI/ManualDataSource:EventLogic (string,bool) (at Assets/Script/LiRuochen/Manager/DataDrive/DataDriveApi.cs:2290)
ProcessTools.Data.DataSourceBase/<GetData>d__47:MoveNext () (at Assets/ProcessTools/Scripts/Runtime/Data/DataSourceBase.cs:586)
UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr)

注浆系统 ,返回为空

注浆量历史数据数量无效或为空
UnityEngine.Debug:LogError (object)
LiRuochen.Manager.DataDrive.GroutingSystemDataDrive:SetHistoryRingData (System.Collections.Generic.List`1<LiRuochen.Manager.DataDrive.DataDriveAPI/Spon_GroutinSystem>) (at Assets/Script/LiRuochen/Manager/DataDrive/GroutingSystemDataDrive.cs:310)
LiRuochen.Manager.DataDrive.GroutingSystemDataDrive:OnHistroyData (string) (at Assets/Script/LiRuochen/Manager/DataDrive/GroutingSystemDataDrive.cs:247)
ProcessTools.Data.DataSourceBase:EventLogic (string,bool) (at Assets/ProcessTools/Scripts/Runtime/Data/DataSourceBase.cs:608)
LiRuochen.Manager.DataDrive.DataDriveAPI/HistroyDataSource:EventLogic (string,bool) (at Assets/Script/LiRuochen/Manager/DataDrive/DataDriveApi.cs:2270)
ProcessTools.Data.DataSourceBase/<GetData>d__47:MoveNext () (at Assets/ProcessTools/Scripts/Runtime/Data/DataSourceBase.cs:586)
UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr)
  • 盾尾密封,返回为空
选中 前腔压力
UnityEngine.Debug:Log (object)
LiRuochen.Manager.DataDrive.UropeltidaeSealDataDrive:OnSelectLinkPage (string) (at Assets/Script/LiRuochen/Manager/DataDrive/UropeltidaeSealDataDrive.cs:258)
Script.LiRuochen.Manager.DataDriveNew.DataPopupPanleManager/ViewPage/<>c__DisplayClass5_0:<.ctor>b__0 (bool) (at Assets/Script/LiRuochen/Manager/DataDriveNew/DataPopupPanleManager.cs:181)
UnityEngine.UI.Toggle:set_isOn (bool)
Script.LiRuochen.Manager.DataDriveNew.DataPopupPanleManager:OnEnable () (at Assets/Script/LiRuochen/Manager/DataDriveNew/DataPopupPanleManager.cs:320)
Script.LiRuochen.Manager.DataDriveNew.DataPopupPanleManager:DisplayPanle (bool) (at Assets/Script/LiRuochen/Manager/DataDriveNew/DataPopupPanleManager.cs:344)
LiRuochen.Manager.DataDrive.UropeltidaeSealDataDrive:OnSerieClick (XCharts.Runtime.SerieEventData) (at Assets/Script/LiRuochen/Manager/DataDrive/UropeltidaeSealDataDrive.cs:248)
XCharts.Runtime.SerieHandler`1<XCharts.Runtime.Pie>:OnPointerClick (UnityEngine.EventSystems.PointerEventData) (at Assets/XCharts/Runtime/Serie/SerieHandler.cs:835)
XCharts.Runtime.BaseChart:OnPointerClick (UnityEngine.EventSystems.PointerEventData) (at Assets/XCharts/Runtime/Internal/BaseChart.cs:532)
UnityEngine.EventSystems.EventSystem:Update () (at Library/PackageCache/com.unity.ugui@1.0.0/Runtime/EventSystem/EventSystem.cs:501)

选择页面:前腔压力
UnityEngine.Debug:Log (object)
LiRuochen.Manager.DataDrive.DataDriveBase:OnSelectLinkPage (string) (at Assets/Script/LiRuochen/Manager/DataDrive/DataDriveBase.cs:280)
LiRuochen.Manager.DataDrive.UropeltidaeSealDataDrive:OnSelectLinkPage (string) (at Assets/Script/LiRuochen/Manager/DataDrive/UropeltidaeSealDataDrive.cs:261)
Script.LiRuochen.Manager.DataDriveNew.DataPopupPanleManager/ViewPage/<>c__DisplayClass5_0:<.ctor>b__0 (bool) (at Assets/Script/LiRuochen/Manager/DataDriveNew/DataPopupPanleManager.cs:181)
UnityEngine.UI.Toggle:set_isOn (bool)
Script.LiRuochen.Manager.DataDriveNew.DataPopupPanleManager:OnEnable () (at Assets/Script/LiRuochen/Manager/DataDriveNew/DataPopupPanleManager.cs:320)
Script.LiRuochen.Manager.DataDriveNew.DataPopupPanleManager:DisplayPanle (bool) (at Assets/Script/LiRuochen/Manager/DataDriveNew/DataPopupPanleManager.cs:344)
LiRuochen.Manager.DataDrive.UropeltidaeSealDataDrive:OnSerieClick (XCharts.Runtime.SerieEventData) (at Assets/Script/LiRuochen/Manager/DataDrive/UropeltidaeSealDataDrive.cs:248)
XCharts.Runtime.SerieHandler`1<XCharts.Runtime.Pie>:OnPointerClick (UnityEngine.EventSystems.PointerEventData) (at Assets/XCharts/Runtime/Serie/SerieHandler.cs:835)
XCharts.Runtime.BaseChart:OnPointerClick (UnityEngine.EventSystems.PointerEventData) (at Assets/XCharts/Runtime/Internal/BaseChart.cs:532)
UnityEngine.EventSystems.EventSystem:Update () (at Library/PackageCache/com.unity.ugui@1.0.0/Runtime/EventSystem/EventSystem.cs:501)

[ManualDataSource-OnlGlbIns]:[]
UnityEngine.Debug:Log (object,UnityEngine.Object)
ProcessTools.Data.DataSourceBase/<GetData>d__47:MoveNext () (at Assets/ProcessTools/Scripts/Runtime/Data/DataSourceBase.cs:580)
UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr)

隧道环境:有数据,但界面上不显示

image.png image.png image.png

这是因为隧道环境只显示最新的数据,超时了就不显示了。
意思是没有任何数据在最近的时间范围内,可以手动切换到开累。

上面那个问题是场景中放的接口脚本请求没有返回导致的,在代码中使用我的连接池就行了。 # 刀盘系统:返回数据没有正确呈现 没有显示横轴内容,可能是更新时忘了,加上就好了。 不过有有个奇怪的现象,总数据有16,图表1会有32个数据,图2却只有16个,明明是一起添加的。 # 导向系统:返回值为空 ``` ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index System.Collections.Generic.List`1[T].get_Item (System.Int32 index) (at <6073cf49ed704e958b8a66d540dea948>:0) LiRuochen.Element.UI.LineChartWithTimeSelect.SetAxisTimeCategory[T] (System.Int32 chartIndex, System.Collections.Generic.List`1[T] srouce, System.Func`2[T,TResult] getTime, System.String format) (at Assets/Script/LiRuochen/Element/UI/LineChartWithTimeSelect.cs:189) LiRuochen.Manager.DataDrive.GuidanceSystemDataDrive+<>c__DisplayClass32_0.<ExcuteUpdateCurrentSystemSchrduleWithChartData>b__0 (System.String s) (at Assets/Script/LiRuochen/Manager/DataDrive/GuidanceSystemDataDrive.cs:236) LiRuochen.Manager.DataDrive.DataDriveAPI+DataExecuteStep.Invoke (System.String data) (at Assets/Script/LiRuochen/Manager/DataDrive/DataDriveApi.cs:2364) ProcessTools.Data.DataSourceBase.EventLogic (System.String data, System.Boolean isError) (at Assets/ProcessTools/Scripts/Runtime/Data/DataSourceBase.cs:608) LiRuochen.Manager.DataDrive.DataDriveAPI+ManualDataSource.EventLogic (System.String data, System.Boolean isError) (at Assets/Script/LiRuochen/Manager/DataDrive/DataDriveApi.cs:2290) ProcessTools.Data.DataSourceBase+<GetData>d__47.MoveNext () (at Assets/ProcessTools/Scripts/Runtime/Data/DataSourceBase.cs:586) UnityEngine.SetupCoroutine.InvokeMoveNext (System.Collections.IEnumerator enumerator, System.IntPtr returnValueAddress) (at <40205bb2cb25478a9cb0f5e54cf11441>:0) ``` # 推进系统:返回为空 ``` 推进信息历史数据 0 UnityEngine.Debug:Log (object) LiRuochen.Manager.DataDrive.PropulsionSystemDataDrive/<>c__DisplayClass38_0:<ExcuteUpdateCurrentSystemSchrduleData>b__0 (string) (at Assets/Script/LiRuochen/Manager/DataDrive/PropulsionSystemDataDrive.cs:258) LiRuochen.Manager.DataDrive.DataDriveAPI/DataExecuteStep:Invoke (string) (at Assets/Script/LiRuochen/Manager/DataDrive/DataDriveApi.cs:2364) ProcessTools.Data.DataSourceBase:EventLogic (string,bool) (at Assets/ProcessTools/Scripts/Runtime/Data/DataSourceBase.cs:608) LiRuochen.Manager.DataDrive.DataDriveAPI/ManualDataSource:EventLogic (string,bool) (at Assets/Script/LiRuochen/Manager/DataDrive/DataDriveApi.cs:2290) ProcessTools.Data.DataSourceBase/<GetData>d__47:MoveNext () (at Assets/ProcessTools/Scripts/Runtime/Data/DataSourceBase.cs:586) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) ``` # 注浆系统 ,返回为空 ``` 注浆量历史数据数量无效或为空 UnityEngine.Debug:LogError (object) LiRuochen.Manager.DataDrive.GroutingSystemDataDrive:SetHistoryRingData (System.Collections.Generic.List`1<LiRuochen.Manager.DataDrive.DataDriveAPI/Spon_GroutinSystem>) (at Assets/Script/LiRuochen/Manager/DataDrive/GroutingSystemDataDrive.cs:310) LiRuochen.Manager.DataDrive.GroutingSystemDataDrive:OnHistroyData (string) (at Assets/Script/LiRuochen/Manager/DataDrive/GroutingSystemDataDrive.cs:247) ProcessTools.Data.DataSourceBase:EventLogic (string,bool) (at Assets/ProcessTools/Scripts/Runtime/Data/DataSourceBase.cs:608) LiRuochen.Manager.DataDrive.DataDriveAPI/HistroyDataSource:EventLogic (string,bool) (at Assets/Script/LiRuochen/Manager/DataDrive/DataDriveApi.cs:2270) ProcessTools.Data.DataSourceBase/<GetData>d__47:MoveNext () (at Assets/ProcessTools/Scripts/Runtime/Data/DataSourceBase.cs:586) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) ``` * 盾尾密封,返回为空 ``` 选中 前腔压力 UnityEngine.Debug:Log (object) LiRuochen.Manager.DataDrive.UropeltidaeSealDataDrive:OnSelectLinkPage (string) (at Assets/Script/LiRuochen/Manager/DataDrive/UropeltidaeSealDataDrive.cs:258) Script.LiRuochen.Manager.DataDriveNew.DataPopupPanleManager/ViewPage/<>c__DisplayClass5_0:<.ctor>b__0 (bool) (at Assets/Script/LiRuochen/Manager/DataDriveNew/DataPopupPanleManager.cs:181) UnityEngine.UI.Toggle:set_isOn (bool) Script.LiRuochen.Manager.DataDriveNew.DataPopupPanleManager:OnEnable () (at Assets/Script/LiRuochen/Manager/DataDriveNew/DataPopupPanleManager.cs:320) Script.LiRuochen.Manager.DataDriveNew.DataPopupPanleManager:DisplayPanle (bool) (at Assets/Script/LiRuochen/Manager/DataDriveNew/DataPopupPanleManager.cs:344) LiRuochen.Manager.DataDrive.UropeltidaeSealDataDrive:OnSerieClick (XCharts.Runtime.SerieEventData) (at Assets/Script/LiRuochen/Manager/DataDrive/UropeltidaeSealDataDrive.cs:248) XCharts.Runtime.SerieHandler`1<XCharts.Runtime.Pie>:OnPointerClick (UnityEngine.EventSystems.PointerEventData) (at Assets/XCharts/Runtime/Serie/SerieHandler.cs:835) XCharts.Runtime.BaseChart:OnPointerClick (UnityEngine.EventSystems.PointerEventData) (at Assets/XCharts/Runtime/Internal/BaseChart.cs:532) UnityEngine.EventSystems.EventSystem:Update () (at Library/PackageCache/com.unity.ugui@1.0.0/Runtime/EventSystem/EventSystem.cs:501) 选择页面:前腔压力 UnityEngine.Debug:Log (object) LiRuochen.Manager.DataDrive.DataDriveBase:OnSelectLinkPage (string) (at Assets/Script/LiRuochen/Manager/DataDrive/DataDriveBase.cs:280) LiRuochen.Manager.DataDrive.UropeltidaeSealDataDrive:OnSelectLinkPage (string) (at Assets/Script/LiRuochen/Manager/DataDrive/UropeltidaeSealDataDrive.cs:261) Script.LiRuochen.Manager.DataDriveNew.DataPopupPanleManager/ViewPage/<>c__DisplayClass5_0:<.ctor>b__0 (bool) (at Assets/Script/LiRuochen/Manager/DataDriveNew/DataPopupPanleManager.cs:181) UnityEngine.UI.Toggle:set_isOn (bool) Script.LiRuochen.Manager.DataDriveNew.DataPopupPanleManager:OnEnable () (at Assets/Script/LiRuochen/Manager/DataDriveNew/DataPopupPanleManager.cs:320) Script.LiRuochen.Manager.DataDriveNew.DataPopupPanleManager:DisplayPanle (bool) (at Assets/Script/LiRuochen/Manager/DataDriveNew/DataPopupPanleManager.cs:344) LiRuochen.Manager.DataDrive.UropeltidaeSealDataDrive:OnSerieClick (XCharts.Runtime.SerieEventData) (at Assets/Script/LiRuochen/Manager/DataDrive/UropeltidaeSealDataDrive.cs:248) XCharts.Runtime.SerieHandler`1<XCharts.Runtime.Pie>:OnPointerClick (UnityEngine.EventSystems.PointerEventData) (at Assets/XCharts/Runtime/Serie/SerieHandler.cs:835) XCharts.Runtime.BaseChart:OnPointerClick (UnityEngine.EventSystems.PointerEventData) (at Assets/XCharts/Runtime/Internal/BaseChart.cs:532) UnityEngine.EventSystems.EventSystem:Update () (at Library/PackageCache/com.unity.ugui@1.0.0/Runtime/EventSystem/EventSystem.cs:501) [ManualDataSource-OnlGlbIns]:[] UnityEngine.Debug:Log (object,UnityEngine.Object) ProcessTools.Data.DataSourceBase/<GetData>d__47:MoveNext () (at Assets/ProcessTools/Scripts/Runtime/Data/DataSourceBase.cs:580) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) ``` # 隧道环境:有数据,但界面上不显示 <img width="873" alt="image.png" src="attachments/394d3e55-55c1-4129-9e04-c7683326fd63"> <img width="419" alt="image.png" src="attachments/2df0615f-7260-4cc2-a533-cd7aa20d31b8"> <img width="729" alt="image.png" src="attachments/de16290d-3eec-4fb6-86f7-95dcf4151bdb"> 这是因为隧道环境只显示最新的数据,超时了就不显示了。 意思是没有任何数据在最近的时间范围内,可以手动切换到开累。
120 KiB
367 KiB
1.4 MiB
Author
Owner

数据返回都是空的,可能是甲方那边之前的数据库里的旧数据清了

数据返回都是空的,可能是甲方那边之前的数据库里的旧数据清了
lrss3 closed this issue 2026-02-27 14:46:30 +08:00
Author
Owner

这个风险源的测点接口有点东西,如果返回的数据正常,就没有外面的响应体类,反之就直接返回一个响应体。

image.png
这个风险源的测点接口有点东西,如果返回的数据正常,就没有外面的响应体类,反之就直接返回一个响应体。 <img width="729" alt="image.png" src="attachments/addb6693-654c-4975-af6d-b8eaf30babaa">
292 KiB
lrss3 reopened this issue 2026-03-02 14:25:21 +08:00
Author
Owner

首次进入时,数据是空的,

image.png
首次进入时,数据是空的, <img width="875" alt="image.png" src="attachments/3fae0041-ec42-4cc7-ae15-08f0633d7dd3">
647 KiB
Author
Owner

超前地质预报的实时数据是空的

image.png
# 超前地质预报的实时数据是空的 <img width="734" alt="image.png" src="attachments/dc7b839e-9765-458e-848f-64bbe17de932">
167 KiB
Author
Owner

接口地址中带有%0D导致地址错误

image.png image.png

问了一下,这个是换行符的字符,所以找到删掉应该就行了

# 接口地址中带有%0D导致地址错误 <img width="472" alt="image.png" src="attachments/be626982-58b4-488e-9fcc-b7df5caea616"> <img width="281" alt="image.png" src="attachments/aa283be5-50da-40f0-ac56-c63b5b9b9d6b"> 问了一下,这个是换行符的字符,所以找到删掉应该就行了
Author
Owner

实时数据无效

2026-03-05 19:06测试的时候,苏州东实时数据

image.png
# 实时数据无效 2026-03-05 19:06测试的时候,苏州东实时数据 <img width="634" alt="image.png" src="attachments/7b44a929-d9cc-4b60-8175-615bddaef2cd">
168 KiB
Author
Owner

苏州东的盾构机进度问题在这

image.png

接口要求提供一个字符串?

# 苏州东的盾构机进度问题在这 <img width="750" alt="image.png" src="attachments/4910142e-cd3a-4c2e-aa9e-5827fb4f0b84"> 接口要求提供一个字符串?
367 KiB
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: LRCWorkingTeam/ShieldTunnelDigitalTwin_Project#287