Merge branch 'develop' into Recipe快照保存
This commit is contained in:
commit
027c078534
|
@ -691,21 +691,6 @@
|
|||
</Button>
|
||||
</StackPanel>
|
||||
</GroupBox>
|
||||
|
||||
<!-- Open Log Viewer Button -->
|
||||
<Button
|
||||
Grid.Row="10"
|
||||
Height="30"
|
||||
Margin="0,10,0,0"
|
||||
Content="Open Detailed-log Viewer"
|
||||
FontFamily="Arial">
|
||||
<i:Interaction.Triggers>
|
||||
<i:EventTrigger EventName="Click">
|
||||
<micro:ActionMessage MethodName="OpenDetailedLogViewer" />
|
||||
</i:EventTrigger>
|
||||
</i:Interaction.Triggers>
|
||||
</Button>
|
||||
|
||||
</StackPanel>
|
||||
<Grid Grid.Column="1" Margin="10,0,0,0">
|
||||
<Grid>
|
||||
|
|
|
@ -448,48 +448,6 @@ namespace MECF.Framework.UI.Client.CenterViews.DataLogs.Event
|
|||
Query();
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 打开YALV日志管理器。
|
||||
/// </summary>
|
||||
public void OpenDetailedLogViewer()
|
||||
{
|
||||
try
|
||||
{
|
||||
// 检查YALV是否已经打开
|
||||
var yalv = Process.GetProcesses().FirstOrDefault(p => p.ProcessName.ToLower().Contains("yalv"));
|
||||
if (yalv != null)
|
||||
throw new InvalidOperationException("日志管理器已经打开。");
|
||||
|
||||
const string PATH_YALV = @"yalv\yalv.exe";
|
||||
var yalvPath = Path.Combine(Environment.CurrentDirectory, PATH_YALV);
|
||||
|
||||
// check the existence of the YALV
|
||||
if (File.Exists(yalvPath) == false)
|
||||
{
|
||||
throw new FileNotFoundException("日志管理器可执行文件不存在。");
|
||||
}
|
||||
|
||||
var logFile = Path.Combine(Environment.CurrentDirectory, $"logs\\log{DateTime.Now:yyyyMMdd}.xlog");
|
||||
|
||||
var proc = new Process()
|
||||
{
|
||||
StartInfo = new ProcessStartInfo
|
||||
{
|
||||
FileName = yalvPath,
|
||||
Arguments = $"\"{logFile}\""
|
||||
}
|
||||
};
|
||||
|
||||
proc.Start();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LOG.Write(ex);
|
||||
MessageBox.Show($"打开日志管理器失败,{ex.Message}", "错误", MessageBoxButton.OK, MessageBoxImage.Error);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Event Source中全选和全不选逻辑实现。
|
||||
/// <see cref="_isEventSourceFilterSelectionReentered"/>
|
||||
|
@ -686,7 +644,7 @@ namespace MECF.Framework.UI.Client.CenterViews.DataLogs.Event
|
|||
|
||||
|
||||
|
||||
return $" LIMIT {countPerPage} OFFSET {countPerPage * (currentPage - 1)}";
|
||||
return $" ORDER BY \"occur_time\" LIMIT {countPerPage} OFFSET {countPerPage * (currentPage - 1)}";
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
|
|
@ -6,39 +6,39 @@ namespace MECF.Framework.UI.Client.ClientBase
|
|||
{
|
||||
public class WaferInfo : PropertyChangedBase
|
||||
{
|
||||
private int _WaferStatus = 0; // WaferStatus.Empty;
|
||||
private int _waferStatus = 0; // WaferStatus.Empty;
|
||||
public int WaferStatus
|
||||
{
|
||||
get { return _WaferStatus; }
|
||||
set { _WaferStatus = value; NotifyOfPropertyChange("WaferStatus"); }
|
||||
get => _waferStatus;
|
||||
set { _waferStatus = value; NotifyOfPropertyChange(); }
|
||||
}
|
||||
|
||||
private int _WaferTrayStatus = 0;
|
||||
private int _waferTrayStatus = 0;
|
||||
public int WaferTrayStatus
|
||||
{
|
||||
get { return _WaferTrayStatus; }
|
||||
set { _WaferTrayStatus = value; NotifyOfPropertyChange("WaferTrayStatus"); }
|
||||
get => _waferTrayStatus;
|
||||
set { _waferTrayStatus = value; NotifyOfPropertyChange(); }
|
||||
}
|
||||
|
||||
private int _TrayProcessCount = 0;
|
||||
private int _trayProcessCount = 0;
|
||||
public int TrayProcessCount
|
||||
{
|
||||
get { return _TrayProcessCount; }
|
||||
set { _TrayProcessCount = value; NotifyOfPropertyChange("TrayProcessCount"); }
|
||||
get => _trayProcessCount;
|
||||
set { _trayProcessCount = value; NotifyOfPropertyChange(); }
|
||||
}
|
||||
|
||||
private string _RecipeName;
|
||||
private string _recipeName;
|
||||
public string RecipeName
|
||||
{
|
||||
get { return _RecipeName; }
|
||||
set { _RecipeName = value; NotifyOfPropertyChange("RecipeName"); }
|
||||
get => _recipeName;
|
||||
set { _recipeName = value; NotifyOfPropertyChange(); }
|
||||
}
|
||||
|
||||
private bool _isTrayExhausted;
|
||||
public bool IsTrayExhausted
|
||||
{
|
||||
get { return _isTrayExhausted; }
|
||||
set { _isTrayExhausted = value; NotifyOfPropertyChange("IsTrayExhausted"); }
|
||||
get => _isTrayExhausted;
|
||||
set { _isTrayExhausted = value; NotifyOfPropertyChange(); }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -47,8 +47,8 @@ namespace MECF.Framework.UI.Client.ClientBase
|
|||
private int _slotID;
|
||||
public int SlotID
|
||||
{
|
||||
get { return _slotID; }
|
||||
set { _slotID = value; NotifyOfPropertyChange("SlotID"); }
|
||||
get => _slotID;
|
||||
set { _slotID = value; NotifyOfPropertyChange(); }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -57,75 +57,70 @@ namespace MECF.Framework.UI.Client.ClientBase
|
|||
private int _slotIndex;
|
||||
public int SlotIndex
|
||||
{
|
||||
get { return _slotIndex; }
|
||||
set { _slotIndex = value; NotifyOfPropertyChange("SlotIndex"); }
|
||||
get => _slotIndex;
|
||||
set { _slotIndex = value; NotifyOfPropertyChange(); }
|
||||
}
|
||||
|
||||
private string _moduleID;
|
||||
public string ModuleID
|
||||
{
|
||||
get { return _moduleID; }
|
||||
set { _moduleID = value; NotifyOfPropertyChange("ModuleID"); }
|
||||
get => _moduleID;
|
||||
set { _moduleID = value; NotifyOfPropertyChange(); }
|
||||
}
|
||||
|
||||
private string _waferid;
|
||||
private string _waferId;
|
||||
public string WaferID
|
||||
{
|
||||
get { return _waferid; }
|
||||
set { _waferid = value; NotifyOfPropertyChange("WaferID"); }
|
||||
get => _waferId;
|
||||
set { _waferId = value; NotifyOfPropertyChange(); }
|
||||
}
|
||||
|
||||
private string _sourceName;
|
||||
public string SourceName
|
||||
{
|
||||
get { return _sourceName; }
|
||||
set { _sourceName = value; NotifyOfPropertyChange("SourceName"); }
|
||||
get => _sourceName;
|
||||
set { _sourceName = value; NotifyOfPropertyChange(); }
|
||||
}
|
||||
|
||||
private string _lotID;
|
||||
public string LotID
|
||||
{
|
||||
get { return _lotID; }
|
||||
set { _lotID = value; NotifyOfPropertyChange("LotID"); }
|
||||
get => _lotID;
|
||||
set { _lotID = value; NotifyOfPropertyChange(); }
|
||||
}
|
||||
|
||||
private string _sequenceName = string.Empty;
|
||||
public string SequenceName
|
||||
{
|
||||
get { return _sequenceName; }
|
||||
set { _sequenceName = value; NotifyOfPropertyChange("SequenceName"); }
|
||||
get => _sequenceName;
|
||||
set { _sequenceName = value; NotifyOfPropertyChange(); }
|
||||
}
|
||||
|
||||
private string _originName = string.Empty;
|
||||
public string OriginName
|
||||
{
|
||||
get { return _originName; }
|
||||
set { _originName = value; NotifyOfPropertyChange("OriginName"); }
|
||||
get => _originName;
|
||||
set { _originName = value; NotifyOfPropertyChange(); }
|
||||
}
|
||||
|
||||
private ToolTip _toolTip;
|
||||
public ToolTip ToolTip
|
||||
{
|
||||
get { return _toolTip; }
|
||||
set { _toolTip = value; NotifyOfPropertyChange("ToolTip"); }
|
||||
get => _toolTip;
|
||||
set { _toolTip = value; NotifyOfPropertyChange(); }
|
||||
}
|
||||
|
||||
private bool isChecked;
|
||||
private bool _isChecked;
|
||||
public bool IsChecked
|
||||
{
|
||||
get
|
||||
{ return isChecked; }
|
||||
get => _isChecked;
|
||||
set
|
||||
{
|
||||
isChecked = value;
|
||||
NotifyOfPropertyChange("IsChecked");
|
||||
_isChecked = value;
|
||||
NotifyOfPropertyChange();
|
||||
}
|
||||
}
|
||||
|
||||
public Visibility IsVisibility
|
||||
{
|
||||
get
|
||||
{ return _WaferStatus > 0 ? Visibility.Visible : Visibility.Hidden; }
|
||||
}
|
||||
public Visibility IsVisibility => _waferStatus > 0 ? Visibility.Visible : Visibility.Hidden;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue