using Admin.Core.IService;
using Admin.Core.Model;
using CommunityToolkit.Mvvm.ComponentModel;
using CommunityToolkit.Mvvm.Input;
using CommunityToolkit.Mvvm.Messaging;
using log4net;
using Microsoft.Extensions.DependencyInjection;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
namespace Aucma.Core.BoxFoam.ViewModels
{
public partial class QuantityIssuedViewModel : ObservableObject
{
private static readonly log4net.ILog logHelper = LogManager.GetLogger(typeof(QuantityIssuedViewModel));
private IBaseBomInfoServices _bomInfoServices;
private IBaseSpaceDetailServices _spaceDetailServices;
protected readonly IExecutePlanInfoServices? _executePlanInfoServices;
#region 构造函数
public QuantityIssuedViewModel()
{
}
#endregion
#region 属性
//private ProductPlanInfoModel _PlanInfo = new ProductPlanInfoModel();
//public ProductPlanInfoModel PlanInfo
//{
// get => _PlanInfo;
// set => SetProperty(ref _PlanInfo, value);
//}
//private string _TransmitAmount = string.Empty;
//public string TransmitAmount
//{
// get => _TransmitAmount;
// set => SetProperty(ref _TransmitAmount, value);
//}
#endregion
//#region 下传计划
/////
///// 下传计划
/////
//[RelayCommand]
//private async Task PlanInfoTransmit()
//{
// var productPlanInfo = _PlanInfo;
// if (productPlanInfo != null)
// {
// //下传到PLC
// var list = await _executePlanInfoServices.QueryAsync(d => d.ProductLineCode.Equals("1001"));
// ExecutePlanInfo task = new ExecutePlanInfo();
// task.ExecutePlanCode = Guid.NewGuid().ToString();
// task.ProductPlanCode = PlanInfo.PlanCode;
// task.OrderCode = PlanInfo.OrderCode;
// task.MaterialCode = PlanInfo.MaterialCode;
// task.MaterialName = PlanInfo.MaterialName;
// task.ProductLineCode = "1001";//计划工位
// if (list.Count == 0)
// task.ExecuteOrder = 1;
// if (list.Count != 0)
// task.ExecuteOrder = list.Max(d => d.ExecuteOrder) + 1;
// task.ExecuteMethod = 1;//不做要求,系统自动确定
// task.ExecuteStatus = 1;
// task.PlanAmount = PlanInfo.SpliteResidueAmount;
// task.CompleteAmount = PlanInfo.CompleteAmount;
// task.CreatedTime = DateTime.Now;
// var result = await _executePlanInfoServices.AddAsync(task);
// if (result > 0)
// {
// MessageBox.Show("计划拆分成功!", "系统提醒");
// WeakReferenceMessenger.Default.Send("Refresh");//刷新窗口
// }
// else
// {
// MessageBox.Show("计划拆分失败,请检查后重试!", "系统提醒");
// }
// //拆分计划到任务表中
// //bool result = PlanTransmitByProductPlan(_PlanInfo.PlanCode, Convert.ToInt32(_TransmitAmount));
// //if (result)
// //{
// // MessageBox.Show("执行计划维护成功", "提示", MessageBoxButton.OK, MessageBoxImage.Information, MessageBoxResult.OK, MessageBoxOptions.DefaultDesktopOnly);
// //}
// }
// else
// {
// MessageBox.Show("生产计划获取失败,加载为空", "提示", MessageBoxButton.OK, MessageBoxImage.Error, MessageBoxResult.OK, MessageBoxOptions.DefaultDesktopOnly);
// return;
// }
//}
//#endregion
//#region 清除
/////
///// 清除
/////
//[RelayCommand]
//private void ClearTransmitAmount()
//{
// string amount = _TransmitAmount.ToString();
// if (amount.Length > 0)
// {
// TransmitAmount = amount.Substring(0, amount.Length - 1);
// }
//}
//#endregion
//#region KeypadButton
//[RelayCommand]
//private void KeypadButton(object obj)
//{
// var info = obj as string;
// TransmitAmount += info;
//}
//#endregion
//#region 关闭
/////
///// 关闭
/////
/////
//[RelayCommand]
//private void CloseWindow(object parameter)
//{
// var window = parameter as Window;
// if (window != null)
// {
// window.Close();
// }
//}
//#endregion
}
}