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.

110 lines
4.9 KiB
C#

using CommunityToolkit.Mvvm.ComponentModel;
using CommunityToolkit.Mvvm.Input;
using Aucma.Core.SheetMetal.Models;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
namespace Aucma.Core.SheetMetal.ViewModels
{
public partial class SplitPlanViewModel : ObservableObject
{
public SplitPlanViewModel() { LoadData(); }
List<OrderInfo> materialComplateInfos = new List<OrderInfo>();
#region 加载DataGrid数据
private void LoadData()
{
MaterialDataGrid.Add(new OrderInfo() { No = 1, ProductPlanCode = "8659452123", MaterialName = "SC-AUCMA-农夫山泉SC", PlanAmount = 50, CompleteAmount = 10, ResidueAmount=40, SchedulingAmount=0 });
MaterialDataGrid.Add(new OrderInfo() { No = 2, ProductPlanCode = "8659452123", MaterialName = "SC-AUCMA-农夫山泉SC", PlanAmount = 60, CompleteAmount = 40, ResidueAmount = 40, SchedulingAmount = 20 });
MaterialDataGrid.Add(new OrderInfo() { No = 3, ProductPlanCode = "8659452123", MaterialName = "SC-AUCMA-农夫山泉SC", PlanAmount = 50, CompleteAmount = 10, ResidueAmount = 40, SchedulingAmount = 20 });
MaterialDataGrid.Add(new OrderInfo() { No = 4, ProductPlanCode = "8659452123", MaterialName = "SC-AUCMA-农夫山泉SC", PlanAmount = 40, CompleteAmount = 10, ResidueAmount = 40, SchedulingAmount = 20 });
MaterialDataGrid.Add(new OrderInfo() { No = 5, ProductPlanCode = "8659452123", MaterialName = "SC-AUCMA-农夫山泉SC", PlanAmount = 30, CompleteAmount = 10, ResidueAmount = 40, SchedulingAmount = 10 });
MaterialDataGrid.Add(new OrderInfo() { No = 6, ProductPlanCode = "8659452123", MaterialName = "SC-AUCMA-农夫山泉SC", PlanAmount = 50, CompleteAmount = 20, ResidueAmount = 40, SchedulingAmount = 10 });
MaterialDataGrid.Add(new OrderInfo() { No = 7, ProductPlanCode = "8659452123", MaterialName = "SC-AUCMA-农夫山泉SC", PlanAmount = 10, CompleteAmount = 10, ResidueAmount = 40, SchedulingAmount = 10 });
MaterialDataGrid.Add(new OrderInfo() { No = 8, ProductPlanCode = "8659452123", MaterialName = "SC-AUCMA-农夫山泉SC", PlanAmount = 50, CompleteAmount = 10, ResidueAmount = 40, SchedulingAmount = 10 });
MaterialDataGrid.Add(new OrderInfo() { No = 9, ProductPlanCode = "8659452123", MaterialName = "SC-AUCMA-农夫山泉SC", PlanAmount = 80, CompleteAmount = 10, ResidueAmount = 40, SchedulingAmount = 10 });
MaterialDataGrid.Add(new OrderInfo() { No = 10, ProductPlanCode = "8659452123", MaterialName = "SC-AUCMA-农夫山泉SC", PlanAmount = 50, CompleteAmount = 10, ResidueAmount = 40, SchedulingAmount = 10 });
}
#endregion
#region 初始化datagrid
private ObservableCollection<OrderInfo> materialDataGrid = new ObservableCollection<OrderInfo>();
public ObservableCollection<OrderInfo> MaterialDataGrid
{
get { return materialDataGrid; }
set
{
materialDataGrid = value;
OnPropertyChanged();//属性通知
}
}
#endregion
#region 查询
/// <summary>
/// 查询
/// </summary>
[RelayCommand]
private void ExecQuery(object obj)
{
var result = (StatisticModel)obj;
if (string.IsNullOrEmpty(result.BeginTime))
{
MessageBox.Show("开始时间不能为空!");
return;
}
if (string.IsNullOrEmpty(result.EndTime))
{
MessageBox.Show("结束时间不能为空!");
return;
}
var beginTime = result.BeginTime;
var endTime = result.EndTime;
System.Windows.Application.Current.Dispatcher.Invoke((Action)(() =>
{
if (!string.IsNullOrEmpty(beginTime))
{
MaterialDataGrid.Clear();
MaterialDataGrid.Add(new OrderInfo() { No = 1, ProductPlanCode = "8659452123", MaterialName = "SC-AUCMA-可口可乐SC", PlanAmount = 50, CompleteAmount = 10, ResidueAmount = 40, SchedulingAmount = 10 });
}
else
{
MaterialDataGrid.Clear();
LoadData();
}
//Datalist.Insert(0, Datalist[Datalist.Count - 1]);
//Datalist.RemoveAt(Datalist.Count - 1);
}));
}
#endregion
#region 查询
/// <summary>
/// 查询
/// </summary>
[RelayCommand]
private void SelectedObject()
{
System.Windows.Application.Current.Dispatcher.Invoke((Action)(() =>
{
MaterialDataGrid.Clear();
LoadData();
}));
}
#endregion
}
}