diff --git a/DM_Weight/ViewModels/CheckSelfOrderWindowViewModel.cs b/DM_Weight/ViewModels/CheckSelfOrderWindowViewModel.cs index 3213566..3168865 100644 --- a/DM_Weight/ViewModels/CheckSelfOrderWindowViewModel.cs +++ b/DM_Weight/ViewModels/CheckSelfOrderWindowViewModel.cs @@ -554,12 +554,11 @@ namespace DM_Weight.ViewModels IDialogService _dialogService; SocketHelper _socketHelper; - public CheckSelfOrderWindowViewModel(IEventAggregator eventAggregator, SocketHelper socketHelper, IDialogService dialogService) + public CheckSelfOrderWindowViewModel(IEventAggregator eventAggregator, SocketHelper socketHelper) { //_portUtil = portUtil; _eventAggregator = eventAggregator; _socketHelper = socketHelper; - _dialogService = dialogService; } private string? _searchValue; @@ -620,6 +619,7 @@ namespace DM_Weight.ViewModels if (OrderInfoList != null && OrderInfoList.Count() > 0) { + OrderInfoList.ForEach(oi => oi.ItemIsChecked = true); OrderInfoList.ForEach(oi => oi._OrderDetail.DrugInfo = oi._OrderDetail.DrugInfo ?? new DrugInfo()); OrderInfoList.Where(oi=>oi._OrderDetail.surgicalResidual?.SendNo==DrawerNo.ToString()).ToList()?.ForEach(oi => oi.ItemIsChecked = true); //TotalDrugList = OrderInfoList.Where(oi => oi.ItemIsChecked).GroupBy(oi => oi.OrderDetailList.DrugInfo.DrugName).Select(oi => new TotalDrug { DrugName = oi.Key, TotalCount = oi.Sum(item => item.OrderDetailList.Quantity) }).ToList(); @@ -800,6 +800,7 @@ namespace DM_Weight.ViewModels if (DrawerNo > 0) { + RequestData(); Status = 1; _socketHelper.speechSynthesizer.SpeakAsyncCancelAll(); _socketHelper.speechSynthesizer.Resume(); @@ -826,71 +827,71 @@ namespace DM_Weight.ViewModels } _socketHelper.OpenStatus = true; //记录药箱打开时间 - //ChannelList channelList = SqlSugarHelper.Db.Queryable().Where(cl => cl.MachineId == "DM5" && cl.DrawerNo == DrawerNo).First(); - //if (channelList != null && (channelList.EffDate is null || Convert.ToDateTime(channelList.EffDate).ToString("yyyy-MM-dd") != DateTime.Now.ToString("yyyy-MM-dd"))) - //{ - //channelList.DrawerState = 0; - //channelList.EffDate = DateTime.Now.ToString(); - //SqlSugarHelper.Db.Updateable(channelList).UpdateColumns(it => new { it.EffDate,it.DrawerState }).ExecuteCommand(); - // SqlSugarHelper.Db.Updateable().SetColumns(it=>it.EffDate== DateTime.Now.ToString()).SetColumns(it => it.DrawerState == 0) - // .Where(it => it.MachineId == "DM5" && it.DrawerNo == DrawerNo).ExecuteCommand(); - //} - if (OperationType == 1) + ChannelList channelList = SqlSugarHelper.Db.Queryable().Where(cl => cl.MachineId == "DM5" && cl.DrawerNo == DrawerNo).First(); + if (channelList != null && (channelList.EffDate is null || Convert.ToDateTime(channelList.EffDate).ToString("yyyy-MM-dd") != DateTime.Now.ToString("yyyy-MM-dd"))) { - //取药箱,将当前药箱号记录到当前登录人身上 - if (!string.IsNullOrEmpty(HomeWindowViewModel.Operator.BoxNumber)) - { - HomeWindowViewModel.Operator.BoxNumber += $",{DrawerNo.ToString()}"; - SqlSugarHelper.Db.Updateable(HomeWindowViewModel.Operator).UpdateColumns(it => new { it.BoxNumber }).ExecuteCommand(); - } - else - { - HomeWindowViewModel.Operator.BoxNumber = $",{DrawerNo.ToString()}"; - SqlSugarHelper.Db.Updateable(HomeWindowViewModel.Operator).UpdateColumns(it => new { it.BoxNumber }).ExecuteCommand(); - } + channelList.DrawerState = 0; + channelList.EffDate = DateTime.Now.ToString(); + SqlSugarHelper.Db.Updateable(channelList).UpdateColumns(it => new { it.EffDate, it.DrawerState }).ExecuteCommand(); SqlSugarHelper.Db.Updateable().SetColumns(it => it.EffDate == DateTime.Now.ToString()).SetColumns(it => it.DrawerState == 0) - .Where(it => it.MachineId == "DM5" && it.DrawerNo == DrawerNo).ExecuteCommand(); - //记录取药箱信息 - SqlSugarHelper.Db.Insertable(new MachineRecord() - { - MachineId = ConfigurationManager.AppSettings["machineId"].ToString(), - DrawerNo = DrawerNo, - Operator = HomeWindowViewModel.Operator?.Id, - Reviewer = HomeWindowViewModel.Reviewer?.Id, - OperationTime = DateTime.Now, - Type = 70, - Status= 70, - InvoiceId = $"{DateTime.Now} 取出药箱" - }).ExecuteCommand(); - } - else if (OperationType == 0) - { - RequestData(); - //还药箱,将当前药箱号从当前登录人身上删除 - if (HomeWindowViewModel.Operator.BoxNumber == $",{DrawerNo.ToString()}") - { - HomeWindowViewModel.Operator.BoxNumber = string.Empty; - } - else - { - HomeWindowViewModel.Operator.BoxNumber = HomeWindowViewModel.Operator.BoxNumber.Replace($",{DrawerNo.ToString()},", ","); - } - SqlSugarHelper.Db.Updateable(HomeWindowViewModel.Operator).UpdateColumns(it => new { it.BoxNumber }).ExecuteCommand(); - SqlSugarHelper.Db.Updateable().SetColumns(it => it.EffDate ==null).SetColumns(it => it.DrawerState == 1) .Where(it => it.MachineId == "DM5" && it.DrawerNo == DrawerNo).ExecuteCommand(); - //记录还药箱时间 - MachineRecord returnRecord = SqlSugarHelper.Db.Queryable().Where(mc => mc.MachineId == "DM5" && mc.DrawerNo == DrawerNo&&mc.Type==70&&mc.Operator==HomeWindowViewModel.Operator.Id).First(); - if(returnRecord!=null) - { - returnRecord.EffDate = DateTime.Now; - returnRecord.Status = 71; - returnRecord.Type = 71; - returnRecord.InvoiceId += $";{DateTime.Now} 还回药箱"; - - SqlSugarHelper.Db.Updateable(returnRecord).UpdateColumns(it => new { it.EffDate,it.Status,it.Type,it.InvoiceId }).ExecuteCommand(); - } - } + //if (OperationType == 1) + //{ + // //取药箱,将当前药箱号记录到当前登录人身上 + // if (!string.IsNullOrEmpty(HomeWindowViewModel.Operator.BoxNumber)) + // { + // HomeWindowViewModel.Operator.BoxNumber += $",{DrawerNo.ToString()}"; + // SqlSugarHelper.Db.Updateable(HomeWindowViewModel.Operator).UpdateColumns(it => new { it.BoxNumber }).ExecuteCommand(); + // } + // else + // { + // HomeWindowViewModel.Operator.BoxNumber = $",{DrawerNo.ToString()}"; + // SqlSugarHelper.Db.Updateable(HomeWindowViewModel.Operator).UpdateColumns(it => new { it.BoxNumber }).ExecuteCommand(); + // } + // SqlSugarHelper.Db.Updateable().SetColumns(it => it.EffDate == DateTime.Now.ToString()).SetColumns(it => it.DrawerState == 0) + // .Where(it => it.MachineId == "DM5" && it.DrawerNo == DrawerNo).ExecuteCommand(); + // //记录取药箱信息 + // SqlSugarHelper.Db.Insertable(new MachineRecord() + // { + // MachineId = ConfigurationManager.AppSettings["machineId"].ToString(), + // DrawerNo = DrawerNo, + // Operator = HomeWindowViewModel.Operator?.Id, + // Reviewer = HomeWindowViewModel.Reviewer?.Id, + // OperationTime = DateTime.Now, + // Type = 70, + // Status= 70, + // InvoiceId = $"{DateTime.Now} 取出药箱" + // }).ExecuteCommand(); + //} + //else if (OperationType == 0) + //{ + // RequestData(); + // //还药箱,将当前药箱号从当前登录人身上删除 + // if (HomeWindowViewModel.Operator.BoxNumber == $",{DrawerNo.ToString()}") + // { + // HomeWindowViewModel.Operator.BoxNumber = string.Empty; + // } + // else + // { + // HomeWindowViewModel.Operator.BoxNumber = HomeWindowViewModel.Operator.BoxNumber.Replace($",{DrawerNo.ToString()},", ","); + // } + // SqlSugarHelper.Db.Updateable(HomeWindowViewModel.Operator).UpdateColumns(it => new { it.BoxNumber }).ExecuteCommand(); + // SqlSugarHelper.Db.Updateable().SetColumns(it => it.EffDate ==null).SetColumns(it => it.DrawerState == 1) + // .Where(it => it.MachineId == "DM5" && it.DrawerNo == DrawerNo).ExecuteCommand(); + // //记录还药箱时间 + // MachineRecord returnRecord = SqlSugarHelper.Db.Queryable().Where(mc => mc.MachineId == "DM5" && mc.DrawerNo == DrawerNo&&mc.Type==70&&mc.Operator==HomeWindowViewModel.Operator.Id).First(); + // if(returnRecord!=null) + // { + // returnRecord.EffDate = DateTime.Now; + // returnRecord.Status = 71; + // returnRecord.Type = 71; + // returnRecord.InvoiceId += $";{DateTime.Now} 还回药箱"; + + // SqlSugarHelper.Db.Updateable(returnRecord).UpdateColumns(it => new { it.EffDate,it.Status,it.Type,it.InvoiceId }).ExecuteCommand(); + // } + + //} Thread.Sleep(200); int iException = 0; new PromiseUtil().taskAsyncLoop(500, 0, async (options, next, stop) => @@ -1123,7 +1124,7 @@ namespace DM_Weight.ViewModels private void GetUseBox() { List chlList = SqlSugarHelper.Db.Queryable().Where(cl => cl.MachineId == "DM5").ToList();//.Select(cl => cl.BelongUser).First(); - chlList = chlList.GroupBy(cl => cl.DrawerNo).Select(cl => cl.FirstOrDefault()).ToList(); + //chlList = chlList.GroupBy(cl => cl.DrawerNo).Select(cl => cl.FirstOrDefault()).ToList(); if (chlList != null && chlList.Count > 0) { for (int i = 0; i < chlList.Count; i++) @@ -1137,32 +1138,32 @@ namespace DM_Weight.ViewModels //DrawerType== 1为公共药箱 if (chl.DrawerType == 1) { - if (OperationType == 1) - { - //取药箱,在库则可取,不在则不可取 - if (chl.DrawerState == 1) - { + //if (OperationType == 1) + //{ + // //取药箱,在库则可取,不在则不可取 + // if (chl.DrawerState == 1) + // { + // SetBtnEnable(chl.DrawerNo, true); + // } + // else + // { + // SetBtnEnable(chl.DrawerNo, false); + // } + //} + //else + //{ + // //还药箱,只能还自己取过的药箱 + // //查询用户取过哪些药箱 + // string[] BoxNumber = HomeWindowViewModel.Operator.BoxNumber.Split(','); + // if (BoxNumber != null && BoxNumber.Contains(chl.DrawerNo.ToString())) + // { + // SetBtnEnable(chl.DrawerNo, true); + // } + // else + // { SetBtnEnable(chl.DrawerNo, true); - } - else - { - SetBtnEnable(chl.DrawerNo, false); - } - } - else - { - //还药箱,只能还自己取过的药箱 - //查询用户取过哪些药箱 - string[] BoxNumber = HomeWindowViewModel.Operator.BoxNumber.Split(','); - if (BoxNumber != null && BoxNumber.Contains(chl.DrawerNo.ToString())) - { - SetBtnEnable(chl.DrawerNo, true); - } - else - { - SetBtnEnable(chl.DrawerNo, false); - } - } + //} + //} } if (!string.IsNullOrEmpty(chl.BelongUser) && chl.BelongUser == HomeWindowViewModel.Operator.UserBarcode) { @@ -1179,8 +1180,8 @@ namespace DM_Weight.ViewModels public void OnNavigatedTo(NavigationContext navigationContext) { logger.Info("进入OnNavigatedTo"); - OpenOrderDialog(); - //RequestData(); + //OpenOrderDialog(); + RequestData(); logger.Info("结束RequestData"); } public async Task OpenOrderDialog() @@ -1221,28 +1222,28 @@ namespace DM_Weight.ViewModels /// /// 点击取药箱按钮 /// - public DelegateCommand TakeBoxCommand - { - get => new DelegateCommand(TakeBoxMethod); - } - public void TakeBoxMethod() - { - OperationType = 1; - GetUseBox(); - } + //public DelegateCommand TakeBoxCommand + //{ + // get => new DelegateCommand(TakeBoxMethod); + //} + //public void TakeBoxMethod() + //{ + // OperationType = 1; + // GetUseBox(); + //} /// /// 点击还药箱按钮 /// - public DelegateCommand ReturnBoxCommand - { - get => new DelegateCommand(ReturnBoxMethod); - } - public void ReturnBoxMethod() - { + //public DelegateCommand ReturnBoxCommand + //{ + // get => new DelegateCommand(ReturnBoxMethod); + //} + //public void ReturnBoxMethod() + //{ - OperationType = 0; - GetUseBox(); - RequestData(); - } + // OperationType = 0; + // GetUseBox(); + // RequestData(); + //} } } diff --git a/DM_Weight/Views/CheckSelfOrderWindow.xaml b/DM_Weight/Views/CheckSelfOrderWindow.xaml index 7475841..f6be391 100644 --- a/DM_Weight/Views/CheckSelfOrderWindow.xaml +++ b/DM_Weight/Views/CheckSelfOrderWindow.xaml @@ -15,7 +15,6 @@ -