diff --git a/DM_Weight/Models/ChannelStock.cs b/DM_Weight/Models/ChannelStock.cs index 80c14c5..accd99f 100644 --- a/DM_Weight/Models/ChannelStock.cs +++ b/DM_Weight/Models/ChannelStock.cs @@ -92,6 +92,12 @@ namespace DM_Weight.Models [SugarColumn(ColumnName = "state")] public int? State { get; set; } + /// + /// 入库时间:针对先入先出操作 + /// + [SugarColumn(ColumnName = "fill_time")] + public DateTime? FillTime { get; set; } + [SugarColumn(IsIgnore = true)] public bool IsSelected { get; set; } diff --git a/DM_Weight/ViewModels/AddDrugControlViewModel.cs b/DM_Weight/ViewModels/AddDrugControlViewModel.cs index 8b08d74..e500218 100644 --- a/DM_Weight/ViewModels/AddDrugControlViewModel.cs +++ b/DM_Weight/ViewModels/AddDrugControlViewModel.cs @@ -302,13 +302,14 @@ namespace DM_Weight.ViewModels DrawerNo = it.DrawerNo, ColNo = it.ColNo, DrawerType = it.DrawerType, - BoardType = it.BoardType - }).UpdateColumns(it => new { it.Quantity, it.ManuNo, it.EffDate, it.DrugId }).ExecuteCommand(); + BoardType = it.BoardType, + FillTime=it.Quantity<=0||it.FillTime==null ? DateTime.Now : it.FillTime, + }).UpdateColumns(it => new { it.Quantity, it.ManuNo, it.EffDate, it.DrugId,it.FillTime }).ExecuteCommand(); } else { //如果批号重复则不让添加 - List csCount = SqlSugarHelper.Db.Queryable().Where(cs => cs.DrawerNo == it.DrawerNo && cs.ManuNo == it.ManuNo && cs.MachineId.Equals(ConfigurationManager.AppSettings["machineId"] ?? "DM1")).ToList(); + List csCount = SqlSugarHelper.Db.Queryable().Where(cs => cs.DrawerNo == it.DrawerNo&&cs.ColNo==it.ColNo && cs.ManuNo == it.ManuNo && cs.MachineId.Equals(ConfigurationManager.AppSettings["machineId"] ?? "DM1")).ToList(); if (csCount.Count > 0) { //repeatList.Add(it.ManuNo); @@ -329,7 +330,8 @@ namespace DM_Weight.ViewModels DrawerType = it.DrawerType, BoardType = it.BoardType, Id = Guid.NewGuid().ToString(), - MachineId = ConfigurationManager.AppSettings["machineId"] ?? "DM1" + MachineId = ConfigurationManager.AppSettings["machineId"] ?? "DM1", + FillTime = DateTime.Now }).ExecuteCommand(); } // 获取更新完库存后的药品库存 diff --git a/DM_Weight/ViewModels/BindingChannelNewDialogViewModel .cs b/DM_Weight/ViewModels/BindingChannelNewDialogViewModel .cs index 9d0bf0a..0076143 100644 --- a/DM_Weight/ViewModels/BindingChannelNewDialogViewModel .cs +++ b/DM_Weight/ViewModels/BindingChannelNewDialogViewModel .cs @@ -420,7 +420,7 @@ namespace DM_Weight.ViewModels .Where(cs => cs.DrugId.Equals(DrugInfo.DrugId.ToString())) .Where(cs => cs.DrawerType == 1) .Where(cs => cs.MachineId.Equals(ConfigurationManager.AppSettings["machineId"] ?? "DM1")) - .Where(cs => cs.DrawerNo == item.DrawerNo) + .Where(cs => cs.DrawerNo == item.DrawerNo&&cs.ColNo==item.ColNo) .Count(); if (count > 0) diff --git a/DM_Weight/ViewModels/InvoiceAddDialogViewModel.cs b/DM_Weight/ViewModels/InvoiceAddDialogViewModel.cs index a155c44..7e0310e 100644 --- a/DM_Weight/ViewModels/InvoiceAddDialogViewModel.cs +++ b/DM_Weight/ViewModels/InvoiceAddDialogViewModel.cs @@ -317,7 +317,8 @@ namespace DM_Weight.ViewModels ManuNo = it.ManuNo, EffDate = it.EffDate, Id = it.Id, - }).UpdateColumns(it => new { it.Quantity, it.ManuNo, it.EffDate }).ExecuteCommand(); + FillTime=it.Quantity<=0||it.FillTime==null ? DateTime.Now : it.FillTime + }).UpdateColumns(it => new { it.Quantity, it.ManuNo, it.EffDate,it.FillTime }).ExecuteCommand(); } else { @@ -347,6 +348,7 @@ namespace DM_Weight.ViewModels ManuNo = recordList[0].ManuNo, EffDate = recordList[0].EffDate, Id = recordList[0].Id, + FillTime=recordList[0].Quantity <= 0 || recordList[0].FillTime == null ? DateTime.Now : recordList[0].FillTime }).Where(item => item.Id == item.Id).ExecuteCommand(); } else @@ -364,7 +366,8 @@ namespace DM_Weight.ViewModels DrawerType = it.DrawerType, BoardType = it.BoardType, Id = Guid.NewGuid().ToString(), - MachineId = ConfigurationManager.AppSettings["machineId"] ?? "DM1" + MachineId = ConfigurationManager.AppSettings["machineId"] ?? "DM1", + FillTime = DateTime.Now }).ExecuteCommand(); } } diff --git a/DM_Weight/ViewModels/MultiOrderTakeDialogViewModel.cs b/DM_Weight/ViewModels/MultiOrderTakeDialogViewModel.cs index 634175d..cb0d367 100644 --- a/DM_Weight/ViewModels/MultiOrderTakeDialogViewModel.cs +++ b/DM_Weight/ViewModels/MultiOrderTakeDialogViewModel.cs @@ -216,8 +216,9 @@ namespace DM_Weight.ViewModels .WhereIF(App.SingleModel, cs => cs.DrawerNo <= 2) //单人登录开前2个抽屉,双人登录开后14个抽屉 .WhereIF(!(App.SingleModel), cs => cs.DrawerNo > 2) .OrderBy(cs => cs.EffDate) - .OrderBy(cs => cs.DrawerNo) - .OrderBy(cs => cs.ManuNo) + //.OrderBy(cs => cs.DrawerNo) + //.OrderBy(cs => cs.ManuNo) + .OrderBy(cs=>cs.FillTime) .ToList(); int total = HasQChannels.Sum(it => it.Quantity); diff --git a/DM_Weight/ViewModels/OrderTakeDialogViewModel.cs b/DM_Weight/ViewModels/OrderTakeDialogViewModel.cs index 1ab9bfd..9befdd5 100644 --- a/DM_Weight/ViewModels/OrderTakeDialogViewModel.cs +++ b/DM_Weight/ViewModels/OrderTakeDialogViewModel.cs @@ -220,8 +220,9 @@ namespace DM_Weight.ViewModels .WhereIF(App.SingleModel, cs => cs.DrawerNo <= 2) //单人登录开前2个抽屉,双人登录开后14个抽屉 .WhereIF(!(App.SingleModel), cs => cs.DrawerNo > 2) .OrderBy(cs => cs.EffDate) - .OrderBy(cs => cs.DrawerNo) - .OrderBy(cs => cs.ManuNo) + //.OrderBy(cs => cs.DrawerNo) + //.OrderBy(cs => cs.ManuNo) + .OrderBy(cs=>cs.FillTime) .ToList(); int total = HasQChannels.Sum(it => it.Quantity); int TakeQ = orderDetail.Quantity;