using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; using Aitex.Core.UI.View.Common; using Aitex.Sorter.Common; using Aitex.Sorter.UI.ViewModel; using ExcelLibrary.SpreadSheet; namespace Aitex.Sorter.UI.Views { /// /// HistoryView.xaml 的交互逻辑 /// public partial class HistoryView : UserControl, IBaseView { HistoryViewModel _viewModel { get; set; } public HistoryView() { InitializeComponent(); _viewModel = new HistoryViewModel(); DataContext = _viewModel; var now = DateTime.Now; dateBegin.DisplayDate = now - new TimeSpan(1, 0, 0, 0); dateEnd.DisplayDate = now; dateBegin.SelectedDate = now; dateEnd.SelectedDate = now; timeBegin.Value = new DateTime(now.Year, now.Month, now.Day, 0, 0, 0, 0); timeEnd.Value = new DateTime(now.Year, now.Month, now.Day, 23, 59, 59, 999); } private DateTime BeginTime { get { var BeginDate = dateBegin.SelectedDate.HasValue ? dateBegin.SelectedDate.Value : DateTime.Now; return new DateTime(BeginDate.Year, BeginDate.Month, BeginDate.Day, timeBegin.Value.Value.Hour, timeBegin.Value.Value.Minute, timeBegin.Value.Value.Second); } } private string cmbChecked { get { return cmbprocess.Text; } } private DateTime EndTime { get { var EndDate = dateEnd.SelectedDate.HasValue ? dateEnd.SelectedDate.Value : DateTime.Now; return new DateTime(EndDate.Year, EndDate.Month, EndDate.Day, timeEnd.Value.Value.Hour, timeEnd.Value.Value.Minute, timeEnd.Value.Value.Second, 999); } } private void buttonQuery_Click(object sender, RoutedEventArgs e) { _viewModel.UpdateProcessData(BeginTime, EndTime, cmbChecked); Checklist.Text = cmbChecked + " List"; //_viewModel.UpdateCarrierData(BeginTime, EndTime); } private void GridProcessList_SelectionChanged(object sender, SelectionChangedEventArgs e) { var item = GridProcessList.SelectedItem as HistoryProcessData; if (item != null) { if (cmbChecked == "Recipe") _viewModel.UpdateWaferDataByProcess(item.Guid); if (cmbChecked == "Carrier") _viewModel.UpdateWaferDataByCarrier(item.Guid); if (cmbChecked == "Lot") _viewModel.UpdateWaferDataByLot(item.LotId); if (cmbChecked == "ProcessJob") _viewModel.UpdateWaferDataByPj(item.Guid); if (cmbChecked == "ControlJob") _viewModel.UpdateWaferDataByCj(item.Guid); } } private void GridWaferList_SelectionChanged(object sender, SelectionChangedEventArgs e) { var item = GridWaferList.SelectedItem as HistoryWaferData; if (item != null) { _viewModel.UpdateMovementData(item.Guid); _viewModel.UpdateOcrData(item.WaferId); } } private void GridCarrierList_SelectionChanged(object sender, SelectionChangedEventArgs e) { //var item = GridCarrierList.SelectedItem as HistoryCarrierData; //if (item != null) // _viewModel.UpdateWaferDataByCarrier(item.Guid); } private void buttonExportProcessCode_Click(object sender, RoutedEventArgs e) { _viewModel.ExportProcessData(BeginTime); } private void buttonExportMovement_Click(object sender, RoutedEventArgs e) { _viewModel.ExportMovement(BeginTime); } private void buttonExportCarrier_Click(object sender, RoutedEventArgs e) { _viewModel.ExportCarrier(BeginTime); } private void buttonExportProcess_Click(object sender, RoutedEventArgs e) { _viewModel.ExportProcess(BeginTime); } private void buttonExportWafer_Click(object sender, RoutedEventArgs e) { _viewModel.ExportWafer(BeginTime); } } }