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 } }