You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

395 lines
16 KiB
C#

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

using CommonFunc;
using CommonFunc.Tools;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
using XGL.Data.DBService;
using XGL.Models;
namespace XGLFinishPro.Views
{
/// <summary>
/// FirstInspectionReport.xaml 的交互逻辑
/// </summary>
public partial class FirstInspectionReport : Window
{
string deviceCode = Utils.GetAppSetting("DeviceCode");
public List<FirstInspectionReportModel> ReportModels = new List<FirstInspectionReportModel>();
FormingMachineService formingMachineService = new FormingMachineService();
public static List<string> Hours = new List<string>()
{
"00","01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23"
};
public static List<string> Minutes = new List<string>()
{
"00","05","10","15","20","25","30","35","40","45","50","55"
};
public FirstInspectionReport()
{
InitializeComponent();
}
private void ComboBox_Change(object sender, SelectionChangedEventArgs e)
{
try
{
if (sender is ComboBox comboBox)
{
string proName = comboBox.Name.Substring(0, comboBox.Name.Length - 2);
string index = comboBox.Name.Substring(comboBox.Name.Length - 1, 1);
int currentIndex = int.Parse(index) - 1;
var firstInspectionReportModel = ReportModels[currentIndex];
firstInspectionReportModel.WorkDateLeft = CheckDate1.Text;
firstInspectionReportModel.UserName = LoginUser.UserName;
firstInspectionReportModel.WorkDateRight = CheckDate2.Text;
//根据proName的值获取对应的属性并且赋值
switch (proName)
{
case "InspectionTime":
firstInspectionReportModel.InspectionTime = comboBox.SelectedItem?.ToString();
break;
case "CheckTimeLeft":
string time = "";
if (FindName("HourLeft" + index) is ComboBoxItem item)
{
time += item.Content.ToString();
time += ":";
}
if (FindName("MintueLeft" + index) is ComboBoxItem item2)
{
time += item2.Content.ToString();
}
firstInspectionReportModel.CheckTimeLeft = time;
break;
case "CheckTimeRight":
string time2 = "";
if (FindName("HourRight" + index) is ComboBoxItem item3)
{
time2 += item3.Content.ToString();
time2 += ":";
}
if (FindName("MintueRight" + index) is ComboBoxItem item4)
{
time2 += item4.Content.ToString();
}
firstInspectionReportModel.CheckTimeRight = time2;
break;
case "MaterialLeft":
firstInspectionReportModel.MaterialLeft = comboBox.SelectedItem?.ToString();
break;
case "MaterialRight":
firstInspectionReportModel.MaterialRight = comboBox.SelectedItem?.ToString();
break;
case "AppearanceLeft":
firstInspectionReportModel.AppearanceLeft = comboBox.SelectedItem?.ToString();
break;
case "AppearanceRight":
firstInspectionReportModel.AppearanceRight = comboBox.SelectedItem?.ToString();
break;
case "StampLeft":
firstInspectionReportModel.StampLeft = comboBox.SelectedItem?.ToString();
break;
case "StampRight":
firstInspectionReportModel.StampRight = comboBox.SelectedItem?.ToString();
break;
case "SprayLeft":
firstInspectionReportModel.SprayLeft = comboBox.SelectedItem?.ToString();
break;
case "SprayRight":
firstInspectionReportModel.SprayRight = comboBox.SelectedItem?.ToString();
break;
case "PackageLeft":
firstInspectionReportModel.PackageLeft = comboBox.SelectedItem?.ToString();
break;
case "PackageRight":
firstInspectionReportModel.PackageRight = comboBox.SelectedItem?.ToString();
break;
case "GenerateLeft":
firstInspectionReportModel.GenerateLeft = comboBox.SelectedItem?.ToString();
break;
case "GenerateRight":
firstInspectionReportModel.GenerateRight = comboBox.SelectedItem?.ToString();
break;
case "DeviceLeft":
firstInspectionReportModel.DeviceLeft = comboBox.SelectedItem?.ToString();
break;
case "DeviceRight":
firstInspectionReportModel.DeviceRight = comboBox.SelectedItem?.ToString();
break;
case "WorkLeft":
firstInspectionReportModel.WorkLeft = comboBox.SelectedItem?.ToString();
break;
case "WorkRight":
firstInspectionReportModel.WorkRight = comboBox.SelectedItem?.ToString();
break;
case "OtherLeft":
firstInspectionReportModel.OtherLeft = comboBox.SelectedItem?.ToString();
break;
case "OtherRight":
firstInspectionReportModel.OtherRight = comboBox.SelectedItem?.ToString();
break;
case "OverLeft":
firstInspectionReportModel.OverLeft = comboBox.SelectedItem?.ToString();
break;
case "OverRight":
firstInspectionReportModel.OverRight = comboBox.SelectedItem?.ToString();
break;
}
}
}
catch
{
}
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
try
{
foreach (var item in this.MainGrid.Children)
{
if (item is StackPanel panel)
{
foreach (var item2 in panel.Children)
{
if (item2 is ComboBox comboBox)
{
if (comboBox.Name.Contains("Hour"))
{
comboBox.ItemsSource = Hours;
}
else if (comboBox.Name.Contains("Mintue"))
{
comboBox.ItemsSource = Minutes;
}
}
}
}
else
{
if (item is ComboBox comboBox)
{
comboBox.ItemsSource = new List<string> { string.Empty, "√", "×" };
}
}
CheckDate1.Text = LoginUser.WorkDate;
CheckDate2.Text = DateTime.Parse(LoginUser.WorkDate).AddDays(1).ToString("yyyy-MM-dd");
}
}
catch
{
}
GetData();
}
private void GetData()
{
ReportModels = formingMachineService.GetFirstInspectionReportModels(LoginUser.UserName, LoginUser.WorkDate);
DataTable dataTable = formingMachineService.GetProOrderWorkorder(deviceCode, LoginUser.WorkDate);
if (dataTable != null)
{
this.ProductName1.Text = dataTable.Rows[0]["product_name"].ToString();
this.ProductName2.Text = dataTable.Rows[0]["product_name"].ToString();
}
UpdateUI();
}
private void ToggleButton_Click(object sender, RoutedEventArgs e)
{
if (((ToggleButton)sender).TemplatedParent is ComboBox comboBox)
{
comboBox.IsDropDownOpen = !comboBox.IsDropDownOpen;
}
}
private void UpdateUI()
{
try
{
NickName1.Text = ReportModels[0].UserName;
NickName2.Text = ReportModels[1].UserName;
for (int i = 0; i < ReportModels.Count; i++)
{
if (FindName("MaterialLeft") is ComboBox box)
{
box.SelectedItem = ReportModels[i].MaterialLeft;
}
if (FindName("MaterialRight") is ComboBox box2)
{
box2.SelectedItem = ReportModels[i].MaterialRight;
}
if (FindName("AppearanceLeft") is ComboBox box3)
{
box3.SelectedItem = ReportModels[i].AppearanceLeft;
}
if (FindName("AppearanceRight") is ComboBox box4)
{
box4.SelectedItem = ReportModels[i].AppearanceRight;
}
if (FindName("StampLeft") is ComboBox box5)
{
box5.SelectedItem = ReportModels[i].StampLeft;
}
if (FindName("StampRight") is ComboBox box6)
{
box6.SelectedItem = ReportModels[i].StampRight;
}
if (FindName("SprayLeft") is ComboBox box7)
{
box7.SelectedItem = ReportModels[i].SprayLeft;
}
if (FindName("SprayRight") is ComboBox box8)
{
box8.SelectedItem = ReportModels[i].SprayRight;
}
if (FindName("PackageLeft") is ComboBox box9)
{
box9.SelectedItem = ReportModels[i].PackageLeft;
}
if (FindName("PackageRight") is ComboBox box10)
{
box10.SelectedItem = ReportModels[i].PackageRight;
}
if (FindName("GenerateLeft") is ComboBox box11)
{
box11.SelectedItem = ReportModels[i].GenerateLeft;
}
if (FindName("GenerateRight") is ComboBox box12)
{
box12.SelectedItem = ReportModels[i].GenerateRight;
}
if (FindName("DeviceLeft") is ComboBox box13)
{
box13.SelectedItem = ReportModels[i].DeviceLeft;
}
if (FindName("DeviceRight") is ComboBox box14)
{
box14.SelectedItem = ReportModels[i].DeviceRight;
}
if (FindName("WorkLeft") is ComboBox box15)
{
box15.SelectedItem = ReportModels[i].WorkLeft;
}
if (FindName("WorkRight") is ComboBox box16)
{
box16.SelectedItem = ReportModels[i].WorkRight;
}
if (FindName("OtherLeft") is ComboBox box17)
{
box17.SelectedItem = ReportModels[i].OtherLeft;
}
if (FindName("OtherRight") is ComboBox box18)
{
box18.SelectedItem = ReportModels[i].OtherRight;
}
if (FindName("OverLeft") is ComboBox box19)
{
box19.SelectedItem = ReportModels[i].OverLeft;
}
if (FindName("OverRight") is ComboBox box20)
{
box20.SelectedItem = ReportModels[i].OverRight;
}
if (FindName("InspectionTime") is ComboBox box21)
{
box21.SelectedItem = ReportModels[i].InspectionTime;
}
if (FindName("CheckTimeLeft") is ComboBox box22)
{
string[] times = ReportModels[i].CheckTimeLeft.Split(':');
if (times.Length == 2)
{
if (FindName("HourLeft" + (i + 1)) is ComboBoxItem item)
{
item.Content = times[0];
}
if (FindName("MintueLeft" + (i + 1)) is ComboBoxItem item2)
{
item2.Content = times[1];
}
}
}
if (FindName("CheckTimeRight") is ComboBox box23)
{
string[] times = ReportModels[i].CheckTimeRight.Split(':');
if (times.Length == 2)
{
if (FindName("HourRight" + (i + 1)) is ComboBoxItem item3)
{
item3.Content = times[0];
}
if (FindName("MintueRight" + (i + 1)) is ComboBoxItem item4)
{
item4.Content = times[1];
}
}
}
}
}
catch
{
}
}
private void Refresh_Click(object sender, RoutedEventArgs e)
{
GetData();
}
private void Add_Click(object sender, RoutedEventArgs e)
{
ReportModels = formingMachineService.GetFirstInspectionReportModels(LoginUser.UserName, LoginUser.WorkDate);
ReportModels.Insert(0, new FirstInspectionReportModel());
ReportModels.Remove(ReportModels.Last());
UpdateUI();
}
private void Submit_Click(object sender, RoutedEventArgs e)
{
try
{
foreach (var item in ReportModels)
{
if (string.IsNullOrEmpty(item.Id))
{
if (!string.IsNullOrEmpty(item.UserName))
{
formingMachineService.AddFirstInspectionReportModel(item);
}
}
else
{
formingMachineService.UpdateFirstInspectionReportModel(item);
}
}
MessageBox.Show("提交成功!");
}
catch
{
}
GetData();
}
private void Close_Click(object sender, RoutedEventArgs e)
{
this.Close();
}
}
}