diff --git a/Aucma.Core.BoxFoam/Business/InStoreBusiness.cs b/Aucma.Core.BoxFoam/Business/InStoreBusiness.cs index 0a26b5d0..0a494958 100644 --- a/Aucma.Core.BoxFoam/Business/InStoreBusiness.cs +++ b/Aucma.Core.BoxFoam/Business/InStoreBusiness.cs @@ -111,11 +111,11 @@ namespace Aucma.Core.BoxFoam.Business spaceAddresses.Add(spaceConfig.GetSpaceAddress(storeCode, space.SpaceCode)); } // 模拟入库 - Task.Run(() => - { - Thread.Sleep(2000); - InStore("B24010181060282920011"); - }); + //Task.Run(() => + //{ + // Thread.Sleep(2000); + // InStore("B24010181060282920011"); + //}); //实时监测入库任务下发和入库任务完成 StartPassDownAndRealInstoreFinish(); @@ -191,12 +191,13 @@ namespace Aucma.Core.BoxFoam.Business { logHelper.Info($"下发泡前入库任务:{taskInfo.TaskCode};仓库{taskInfo.StoreCode};货道:{taskInfo.SpaceCode}"); - LogDelegateEvent?.Invoke($"下发泡前入库任务:{taskInfo.TaskCode};仓库{taskInfo.StoreCode};货道:{taskInfo.SpaceCode}"); + LogDelegateEvent?.Invoke($"下发泡前入库任务:{taskInfo.TaskCode};仓库{taskInfo.StoreCode};货道:{taskInfo.SpaceCode},等待plc反馈"); if (SendFoamTask_InStore(taskInfo)) { logHelper.Info($"泡前入库任务:{taskInfo.TaskCode};下发成功,等待PLC执行反馈"); semaphore.Wait(); //一直堵塞直到信号量释放 logHelper.Info($"箱壳入库任务:{taskInfo.TaskCode};开始执行"); + LogDelegateEvent?.Invoke($"箱壳入库任务:{taskInfo.TaskCode};开始执行"); taskInfo.TaskStatus = 2; _realTaskInfoService.UpdateAsync(taskInfo); @@ -206,7 +207,7 @@ namespace Aucma.Core.BoxFoam.Business _baseSpaceInfoServices.UpdateSpaceInfo(spaceInfo); #endregion - RefreshInStoreTaskEvent?.Invoke(taskInfo);//刷新datagrid 列表 + RefreshDataGridDelegateEvent?.Invoke();//刷新datagrid 列表 // logHelper.Info($"泡后入库任务:{taskInfo.TaskCode};执行完成"); // 刷新入库任务列表 @@ -291,7 +292,7 @@ namespace Aucma.Core.BoxFoam.Business //completion.CompleteDate = DateTime.Now; //await _iMaterialCompletionServices.AddAsync(completion); #endregion - // RefreshDataGridDelegateEvent?.Invoke(); + RefreshDataGridDelegateEvent?.Invoke(); await _baseSpaceInfoServices.UpdateSpaceInfo(spaceInfo); } } @@ -585,7 +586,11 @@ namespace Aucma.Core.BoxFoam.Business { LogDelegateEvent?.Invoke($"入库完成,更新数据库成功"); } + else + { LogDelegateEvent?.Invoke($"更新数据库异常"); + } + } ////清除任务信息 //await _realTaskInfoService.DeleteTaskInfo(taskCode, storeCode); diff --git a/Aucma.Core.BoxFoam/ViewModels/IndexPageViewModel.cs b/Aucma.Core.BoxFoam/ViewModels/IndexPageViewModel.cs index 9849e5f8..9845b19e 100644 --- a/Aucma.Core.BoxFoam/ViewModels/IndexPageViewModel.cs +++ b/Aucma.Core.BoxFoam/ViewModels/IndexPageViewModel.cs @@ -12,6 +12,8 @@ using Admin.Core.Common; using Admin.Core.Model.ViewModels; using System.Threading; using Aucma.Core.BoxFoam.Business; +using Admin.Core.Model; +using System.Collections.Generic; /* * 首页信息 */ @@ -24,29 +26,24 @@ namespace Aucma.Core.BoxFoam.ViewModels private ObservableCollection listItems = new ObservableCollection(); private static readonly log4net.ILog log = LogManager.GetLogger(typeof(IndexPageViewModel)); public readonly IRecordInStoreServices? _recordInstoreServices; + private readonly IRealTaskInfoServices? _realTaskInfoService; private InStoreBusiness inStoreBusiness = InStoreBusiness.Instance; public IndexPageViewModel() { inStoreBusiness.init(); _recordInstoreServices = App.ServiceProvider.GetService(); - //Job_BoxFoamInStoreTask_Quartz.RefreshDataGridDelegateEvent += LoadData;//刷新底部列表 + _realTaskInfoService =App.ServiceProvider.GetService(); + //Job_BoxFoamInStoreTask_Quartz.RefreshDataGridDelegateEvent += LoadData;//刷新底部列表 InStoreBusiness.RefreshDataGridDelegateEvent += LoadData;//刷新底部列表 // Job_TestTask_Quartz.DataGridDelegateEvent += ExecMethod;//刷新日志 // Job_BoxFoamInStoreTask_Quartz.RefreshScanMateriaCodeEvent += RefreshScanInfo;//扫码信息刷新 InStoreBusiness.RefreshScanMateriaCodeEvent += RefreshScanInfo;//扫码信息刷新 // Job_BoxFoamInStoreTask_Quartz.LogDelegateEvent += PrintMessageToListBox;//入库日志事件 InStoreBusiness.LogDelegateEvent += PrintMessageToListBox;//入库日志事件 - ExecMethod(); + LoadData(); } - public async Task ExecMethod() - { - System.Windows.Application.Current.Dispatcher.Invoke((Action)(async () => - { - PlanInfoDataGrid.Clear(); - await LoadData(); - })); - } + #region 扫描记录 data @@ -57,28 +54,23 @@ namespace Aucma.Core.BoxFoam.ViewModels var storeCode = Appsettings.app("StoreInfo", "BeforeStoreCode"); DateTime startTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 00:00:00")); DateTime endTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 23:59:59")); - + List list = _realTaskInfoService.QueryAsync(x=>x.StoreCode.Equals(storeCode)).Result.OrderBy(x=>x.CreateTime).Take(4).ToList(); System.Windows.Application.Current.Dispatcher.Invoke((Action)(async () => { PlanInfoDataGrid.Clear(); - int i = 1; try { - - var list = await _recordInstoreServices.SaveRecordToDb(storeCode, startTime, endTime); - foreach (var item in list.OrderByDescending(d => d.No)) + foreach (var item in list) { - PlanInfoDataGrid.Add(new EnterLibView() + PlanInfoDataGrid.Add(new RealTaskInfo() { - No = i, - PlanCode = item.PlanCode, + TaskCode = item.TaskCode, MaterialCode = item.MaterialCode, - MaterialName = item.MaterialName, - MaterialBarCode = item.MaterialBarCode, - EnterSpace = item.EnterSpace, - ExecDateTime = item.ExecDateTime, - Status = item.Status + MaterialType = item.MaterialType, + SpaceName = item.SpaceName, + CreateTime = item.CreateTime, + TaskStatus = item.TaskStatus }); i++; }; @@ -95,8 +87,8 @@ namespace Aucma.Core.BoxFoam.ViewModels #endregion #region 初始化datagrid - private ObservableCollection planInfoDataGrid = new ObservableCollection(); - public ObservableCollection PlanInfoDataGrid + private ObservableCollection planInfoDataGrid = new ObservableCollection(); + public ObservableCollection PlanInfoDataGrid { get { return planInfoDataGrid; } set diff --git a/Aucma.Core.BoxFoam/Views/IndexPageView.xaml b/Aucma.Core.BoxFoam/Views/IndexPageView.xaml index a9cb67c5..c013dc7e 100644 --- a/Aucma.Core.BoxFoam/Views/IndexPageView.xaml +++ b/Aucma.Core.BoxFoam/Views/IndexPageView.xaml @@ -12,7 +12,7 @@