添加 MX-PD-盘古 项目文件
将 MX-PD-盘古 - new 目录下的所有文件添加到主仓库
This commit is contained in:
@@ -0,0 +1,240 @@
|
||||
using MainShell.Resources.CustomControl;
|
||||
using Stylet;
|
||||
using System;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Collections.Specialized;
|
||||
using System.Linq;
|
||||
|
||||
namespace MainShell.Manual.ViewModel.State
|
||||
{
|
||||
public class LogisticsOperationState : PropertyChangedBase
|
||||
{
|
||||
private SectionState _substrateLoad;
|
||||
public SectionState SubstrateLoad
|
||||
{
|
||||
get { return _substrateLoad; }
|
||||
set { SetAndNotify(ref _substrateLoad, value); }
|
||||
}
|
||||
|
||||
private SectionState _chipLoad;
|
||||
public SectionState ChipLoad
|
||||
{
|
||||
get { return _chipLoad; }
|
||||
set { SetAndNotify(ref _chipLoad, value); }
|
||||
}
|
||||
|
||||
private SectionState _substrateOut;
|
||||
public SectionState SubstrateOut
|
||||
{
|
||||
get { return _substrateOut; }
|
||||
set { SetAndNotify(ref _substrateOut, value); }
|
||||
}
|
||||
|
||||
private SectionState _chipUnload;
|
||||
public SectionState ChipUnload
|
||||
{
|
||||
get { return _chipUnload; }
|
||||
set { SetAndNotify(ref _chipUnload, value); }
|
||||
}
|
||||
|
||||
private MagazineMapViewModel _magazineMap;
|
||||
public MagazineMapViewModel MagazineMap
|
||||
{
|
||||
get { return _magazineMap; }
|
||||
set { SetAndNotify(ref _magazineMap, value); }
|
||||
}
|
||||
|
||||
private string _feedbackTitle;
|
||||
public string FeedbackTitle
|
||||
{
|
||||
get { return _feedbackTitle; }
|
||||
set { SetAndNotify(ref _feedbackTitle, value); }
|
||||
}
|
||||
|
||||
private bool _isScanning;
|
||||
public bool IsScanning
|
||||
{
|
||||
get { return _isScanning; }
|
||||
set { SetAndNotify(ref _isScanning, value); }
|
||||
}
|
||||
|
||||
private int _scanProgress;
|
||||
public int ScanProgress
|
||||
{
|
||||
get { return _scanProgress; }
|
||||
set { SetAndNotify(ref _scanProgress, value); }
|
||||
}
|
||||
|
||||
private bool _isManualWithoutEfem;
|
||||
public bool IsManualWithoutEfem
|
||||
{
|
||||
get { return _isManualWithoutEfem; }
|
||||
set { SetAndNotify(ref _isManualWithoutEfem, value); }
|
||||
}
|
||||
|
||||
public string LastFeedbackTime
|
||||
{
|
||||
get
|
||||
{
|
||||
var last = FeedbackRecords.LastOrDefault();
|
||||
return last == null ? "--:--:--" : last.Time.ToString("HH:mm:ss");
|
||||
}
|
||||
}
|
||||
|
||||
public ObservableCollection<FeedbackRecord> FeedbackRecords { get; } = new ObservableCollection<FeedbackRecord>();
|
||||
|
||||
public LogisticsOperationState()
|
||||
{
|
||||
FeedbackRecords.CollectionChanged += OnFeedbackRecordsChanged;
|
||||
AddFeedback("内部物流动作已独立触发并完成。");
|
||||
}
|
||||
|
||||
public void AddFeedback(string message, string level = "DEBUG")
|
||||
{
|
||||
FeedbackRecords.Add(new FeedbackRecord
|
||||
{
|
||||
Time = DateTime.Now,
|
||||
Level = level,
|
||||
Message = message
|
||||
});
|
||||
|
||||
while (FeedbackRecords.Count > 3)
|
||||
{
|
||||
FeedbackRecords.RemoveAt(0);
|
||||
}
|
||||
}
|
||||
|
||||
private void OnFeedbackRecordsChanged(object sender, NotifyCollectionChangedEventArgs e)
|
||||
{
|
||||
OnPropertyChanged(nameof(LastFeedbackTime));
|
||||
}
|
||||
}
|
||||
|
||||
public class SectionState : PropertyChangedBase
|
||||
{
|
||||
private string _title;
|
||||
public string Title
|
||||
{
|
||||
get { return _title; }
|
||||
set { SetAndNotify(ref _title, value); }
|
||||
}
|
||||
|
||||
private string _status;
|
||||
public string Status
|
||||
{
|
||||
get { return _status; }
|
||||
set { SetAndNotify(ref _status, value); }
|
||||
}
|
||||
|
||||
private string _primaryActionText;
|
||||
public string PrimaryActionText
|
||||
{
|
||||
get { return _primaryActionText; }
|
||||
set { SetAndNotify(ref _primaryActionText, value); }
|
||||
}
|
||||
|
||||
private string _secondaryActionText;
|
||||
public string SecondaryActionText
|
||||
{
|
||||
get { return _secondaryActionText; }
|
||||
set { SetAndNotify(ref _secondaryActionText, value); }
|
||||
}
|
||||
|
||||
public ObservableCollection<IndicatorState> Indicators { get; } = new ObservableCollection<IndicatorState>();
|
||||
|
||||
public ObservableCollection<PhaseStepState> PhaseSteps { get; } = new ObservableCollection<PhaseStepState>();
|
||||
}
|
||||
|
||||
public class PhaseStepState : PropertyChangedBase
|
||||
{
|
||||
private string _title;
|
||||
public string Title
|
||||
{
|
||||
get { return _title; }
|
||||
set { SetAndNotify(ref _title, value); }
|
||||
}
|
||||
|
||||
private string _status;
|
||||
public string Status
|
||||
{
|
||||
get { return _status; }
|
||||
set { SetAndNotify(ref _status, value); }
|
||||
}
|
||||
|
||||
private string _actionText;
|
||||
public string ActionText
|
||||
{
|
||||
get { return _actionText; }
|
||||
set { SetAndNotify(ref _actionText, value); }
|
||||
}
|
||||
|
||||
private bool _isEnabled;
|
||||
public bool IsEnabled
|
||||
{
|
||||
get { return _isEnabled; }
|
||||
set { SetAndNotify(ref _isEnabled, value); }
|
||||
}
|
||||
|
||||
private string _controlTag;
|
||||
public string ControlTag
|
||||
{
|
||||
get { return _controlTag; }
|
||||
set { SetAndNotify(ref _controlTag, value); }
|
||||
}
|
||||
|
||||
private bool _requiresEfemCommunication;
|
||||
public bool RequiresEfemCommunication
|
||||
{
|
||||
get { return _requiresEfemCommunication; }
|
||||
set { SetAndNotify(ref _requiresEfemCommunication, value); }
|
||||
}
|
||||
|
||||
private int _targetLayer = 1;
|
||||
public int TargetLayer
|
||||
{
|
||||
get { return _targetLayer; }
|
||||
set { SetAndNotify(ref _targetLayer, value); }
|
||||
}
|
||||
}
|
||||
|
||||
public class IndicatorState : PropertyChangedBase
|
||||
{
|
||||
private string _name;
|
||||
public string Name
|
||||
{
|
||||
get { return _name; }
|
||||
set { SetAndNotify(ref _name, value); }
|
||||
}
|
||||
|
||||
private bool _isOn;
|
||||
public bool IsOn
|
||||
{
|
||||
get { return _isOn; }
|
||||
set { SetAndNotify(ref _isOn, value); }
|
||||
}
|
||||
}
|
||||
|
||||
public class FeedbackRecord : PropertyChangedBase
|
||||
{
|
||||
private DateTime _time;
|
||||
public DateTime Time
|
||||
{
|
||||
get { return _time; }
|
||||
set { SetAndNotify(ref _time, value); }
|
||||
}
|
||||
|
||||
private string _level;
|
||||
public string Level
|
||||
{
|
||||
get { return _level; }
|
||||
set { SetAndNotify(ref _level, value); }
|
||||
}
|
||||
|
||||
private string _message;
|
||||
public string Message
|
||||
{
|
||||
get { return _message; }
|
||||
set { SetAndNotify(ref _message, value); }
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user