fix: 部分命名错误或者显示效果差

This commit is contained in:
denglihong2007
2025-04-19 21:59:47 +08:00
parent 1b6d00512a
commit 78574289d6
11 changed files with 106 additions and 96 deletions

View File

@@ -7,11 +7,13 @@ namespace CRSim.ScreenSimulator.ViewModels.Beijing
{
public class ArrivalScreenViewModel : ScreenViewModel
{
private ITimeService _timeService;
public ObservableCollection<TrainInfo> Screen { get; set; } = [];
public ArrivalScreenViewModel(ITimeService timeService, ISettingsService settingsService)
: base(timeService, settingsService)
{
StationType = StationType.Departure;
_timeService = timeService;
StationType = StationType.Arrival;
timeService.RefreshSecondsElapsed += RefreshDisplay;
Initialize();
}
@@ -32,5 +34,30 @@ namespace CRSim.ScreenSimulator.ViewModels.Beijing
}
});
}
public override void RefreshData(object? sender, EventArgs e)
{
List<TrainInfo> itemsToRemove = [];
foreach (TrainInfo trainInfo in TrainInfo)
{
if (trainInfo.DepartureTime == null)
{
if (trainInfo.ArrivalTime.Value.Add(_settings.StopDisplayFromArrivalDuration) < _timeService.GetDateTimeNow())
{
itemsToRemove.Add(trainInfo);
}
}
else
{
if (trainInfo.DepartureTime.Value < _timeService.GetDateTimeNow())
{
itemsToRemove.Add(trainInfo);
}
}
}
foreach (var item in itemsToRemove)
{
TrainInfo.Remove(item);
}
}
}
}

View File

@@ -3,12 +3,12 @@ using CRSim.Core.Services;
using CRSim.ScreenSimulator.Models;
using System.Collections.ObjectModel;
using System.Windows;
namespace CRSim.ScreenSimulator.ViewModels.Daqingdong
namespace CRSim.ScreenSimulator.ViewModels.DaqingDong
{
public class PlatformScreenViewModel : ScreenViewModel
public class ConcourseBridgeScreenViewModel : ScreenViewModel
{
public ObservableCollection<TrainInfo> Screen { get; set; } = [];
public PlatformScreenViewModel(ITimeService timeService, ISettingsService settingsService)
public ConcourseBridgeScreenViewModel(ITimeService timeService, ISettingsService settingsService)
: base(timeService, settingsService)
{
StationType = StationType.Departure;