From 5970654ffe72da8e5d747cec01d51c44a6a279bc Mon Sep 17 00:00:00 2001
From: maqiao <625215135@qq.com>
Date: Thu, 19 Jun 2025 14:22:51 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=A0=B8=E5=AF=B9=E9=BA=BB?=
=?UTF-8?q?=E9=86=89=E5=8D=95=E6=97=B6=E4=BF=AE=E6=94=B9channelList?=
=?UTF-8?q?=E7=8A=B6=E6=80=81=20=E6=9B=BF=E6=8D=A2=E8=8D=AF=E7=AE=B1bug?=
=?UTF-8?q?=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
DM_Weight/Models/MachineRecord.cs | 2 +-
.../BindBoxPackageWindowViewModel.cs | 43 ++++++++++++++-----
.../ViewModels/CheckStockWindowViewModel.cs | 10 ++---
.../ViewModels/ExchangeDialogViewModel.cs | 18 ++++----
4 files changed, 49 insertions(+), 24 deletions(-)
diff --git a/DM_Weight/Models/MachineRecord.cs b/DM_Weight/Models/MachineRecord.cs
index 51c90d7..250acde 100644
--- a/DM_Weight/Models/MachineRecord.cs
+++ b/DM_Weight/Models/MachineRecord.cs
@@ -73,7 +73,7 @@ namespace DM_Weight.Models
[SugarColumn(ColumnName = "eff_date")]
public DateTime? EffDate { get; set; }
///
- /// 出库入库类型(1入库2出库31还药32还空瓶,21药箱移出移入,69药箱替换)
+ /// 出库入库类型(1入库2出库31还药32还空瓶,21药箱移出移入,69药箱替换,55绑定药品操作(绑定、解绑、修改基数))
///
[SugarColumn(ColumnName = "type")]
public int Type { get; set; }
diff --git a/DM_Weight/ViewModels/BindBoxPackageWindowViewModel.cs b/DM_Weight/ViewModels/BindBoxPackageWindowViewModel.cs
index 55c1bd6..737fd54 100644
--- a/DM_Weight/ViewModels/BindBoxPackageWindowViewModel.cs
+++ b/DM_Weight/ViewModels/BindBoxPackageWindowViewModel.cs
@@ -66,8 +66,18 @@ namespace DM_Weight.ViewModels
{
if (value != null)
{
- DrugInfo = DrugInfos.Where(di => di.DrugId == value.Drug.DrugId).First();
- BaseQuantity = value.BaseQuantity.ToString();
+ try
+ {
+ DrugInfo = DrugInfos.Where(di => di.DrugId == value.Drug.DrugId).First();
+ BaseQuantity = value.BaseQuantity.ToString();
+
+ }
+ catch (Exception ex)
+ {
+ RequestDrug();
+ DrugInfo = DrugInfos.Where(di => di.DrugId == value.Drug.DrugId).First();
+ BaseQuantity = value.BaseQuantity.ToString();
+ }
//DrugManuNo = DrugManuNos.Where(dm => dm.DrugId == value.DrugId && dm.ManuNo == value.ManuNo).First();
}
SetProperty(ref _channelList, value);
@@ -264,7 +274,7 @@ namespace DM_Weight.ViewModels
SnackbarMessageQueue.Enqueue("药品基数请输入正确的整数");
return;
}
- if (_ChannelList != null)
+ if (_ChannelLists != null)
{
int iNum = _ChannelLists.Where(cs => cs.DrugId == DrugInfo.DrugId.ToString()).Count();
if (iNum > 0)
@@ -289,11 +299,12 @@ namespace DM_Weight.ViewModels
{
Id = chnguid,
DrawerNo = (DrawerNo + 1),
- ColNo=(colNoCount+1),
+ ColNo = (colNoCount + 1),
DrugId = DrugInfo.DrugId,
BaseQuantity = baseQuantity,
MachineId = "DM5",
- DrawerType=1
+ DrawerType = 1,
+ State = 0
}).ExecuteCommand();
SqlSugarHelper.Db.Insertable(new ChannelStock()
{
@@ -365,7 +376,7 @@ namespace DM_Weight.ViewModels
}
if (_ChannelList != null)
{
- if(_channelList.channelStocks.Where(cs=>cs.Quantity>0).Count() > 0)
+ if (_channelList.channelStocks.Where(cs => cs.Quantity > 0).Count() > 0)
{
SnackbarBackground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#b71c1c"));
SnackbarMessageQueue.Enqueue("药品还有库存不能操作解绑");
@@ -450,19 +461,31 @@ namespace DM_Weight.ViewModels
{
_ChannelList.channelStocks[0].NeedNum = 0;
}
+ int oldBaseQty = _ChannelList.BaseQuantity;
_ChannelList.BaseQuantity = baseQty;
//_ChannelList.channelStocks[0].BaseQuantity = baseQty;
//int iUpdate = SqlSugarHelper.Db.Updateable(_ChannelList.channelStocks[0]).ExecuteCommand();
- _ChannelList.channelStocks.ForEach(cs=>cs.BaseQuantity= baseQty);
- int iBaseUpdate= SqlSugarHelper.Db.Updateable(_ChannelList.channelStocks).UpdateColumns(cs => cs.BaseQuantity).ExecuteCommand();
-
+ _ChannelList.channelStocks.ForEach(cs => cs.BaseQuantity = baseQty);
+ int iBaseUpdate = SqlSugarHelper.Db.Updateable(_ChannelList.channelStocks).UpdateColumns(cs => new { cs.BaseQuantity, cs.NeedNum }).ExecuteCommand();
+
//更新ChannelList表中的BaseQuantity
int iUpdateChannelList = SqlSugarHelper.Db.Updateable()
.SetColumns(it => new ChannelList() { BaseQuantity = baseQty })
.Where(it => it.Id == _ChannelList.Id).ExecuteCommand();
if (iBaseUpdate > 0 && iUpdateChannelList > 0)
{
-
+ //保存操作记录
+ SqlSugarHelper.Db.Insertable(new MachineRecord()
+ {
+ MachineId = "DM5",
+ DrawerNo = _ChannelList.DrawerNo,
+ DrugId = _ChannelList.DrugId,
+ Operator = HomeWindowViewModel.Operator?.Id,
+ OperationTime = DateTime.Now,
+ Quantity = _ChannelList.channelStocks[0].NeedNum,
+ Type = 55,
+ InvoiceId = $"修改药品基数{oldBaseQty}改为{baseQty},Quantity值为需要加药数量",
+ }).ExecuteCommand();
SnackbarBackground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#00e676"));
SnackbarMessageQueue.Enqueue("保存修改完成!");
RequestData();
diff --git a/DM_Weight/ViewModels/CheckStockWindowViewModel.cs b/DM_Weight/ViewModels/CheckStockWindowViewModel.cs
index b041f63..a0ea27c 100644
--- a/DM_Weight/ViewModels/CheckStockWindowViewModel.cs
+++ b/DM_Weight/ViewModels/CheckStockWindowViewModel.cs
@@ -171,11 +171,11 @@ namespace DM_Weight.ViewModels
AddToJJNum=0
}).UpdateColumns(it => new { it.Quantity, it.ManuNo, it.EffDate,it.NeedNum,it.AddToJJNum }).ExecuteCommand();
- //SqlSugarHelper.Db.Updateable(new ChannelList()
- //{
- // State=0,
- // Id=it.Chnguid
- //}).UpdateColumns(cl => new { cl.State }).ExecuteCommand();
+ SqlSugarHelper.Db.Updateable(new ChannelList()
+ {
+ State = 0,
+ Id = it.Chnguid
+ }).UpdateColumns(cl => new { cl.State }).ExecuteCommand();
// 保存数据 盘点记录
SqlSugarHelper.Db.Insertable(new MachineRecord()
diff --git a/DM_Weight/ViewModels/ExchangeDialogViewModel.cs b/DM_Weight/ViewModels/ExchangeDialogViewModel.cs
index 0f9465c..7457c11 100644
--- a/DM_Weight/ViewModels/ExchangeDialogViewModel.cs
+++ b/DM_Weight/ViewModels/ExchangeDialogViewModel.cs
@@ -328,13 +328,15 @@ namespace DM_Weight.ViewModels
.Where(cs => cs.ManuNo.Equals(currentChannelStock.ManuNo))
.First();
//修改已替换的药品批次数量(现库存数-已替换总数)
- _ChannelStock.Quantity = _ChannelStock.Quantity - sumQuantity;
- SqlSugarHelper.Db.Updateable(_ChannelStock).UpdateColumns(it => new { it.Quantity }).ExecuteCommand();
-
+ if (_ChannelStock.Quantity > 0)
+ {
+ _ChannelStock.Quantity = _ChannelStock.Quantity - sumQuantity;
+ SqlSugarHelper.Db.Updateable(_ChannelStock).UpdateColumns(it => new { it.Quantity }).ExecuteCommand();
+ }
if (ReplaceChannelStockList != null)
{
//有该批次药品则更新
- csId = ReplaceChannelStockList.Id;
+ //csId = ReplaceChannelStockList.Id;
ReplaceChannelStockList.Quantity = ReplaceChannelStockList.Quantity + currentChannelStock.TakeQuantity;
SqlSugarHelper.Db.Updateable(ReplaceChannelStockList).UpdateColumns(it => new { it.Quantity }).ExecuteCommand();
@@ -348,14 +350,14 @@ namespace DM_Weight.ViewModels
DrawerNo = _ChannelStock.DrawerNo,
DrugId = _ChannelStock.DrugId,
ManuNo = currentChannelStock.ManuNo,
- EffDate=currentChannelStock.EffDate,
+ EffDate = currentChannelStock.EffDate,
Quantity = currentChannelStock.TakeQuantity,
DrawerType = 1,
Chnguid = _ChannelStock.Chnguid,
Id = csId,
}).ExecuteCommand();
}
-
+ string csToId = Guid.NewGuid().ToString();
// 保存数据 替换药记录
SqlSugarHelper.Db.Insertable(new MoveChannelStock()
{
@@ -394,13 +396,13 @@ namespace DM_Weight.ViewModels
SqlSugarHelper.Db.Insertable(new ChannelStock()
{
MachineId = _ChannelStock.MachineId,
- DrawerNo = _ChannelStock.DrawerNo,
+ DrawerNo = currentChannelStock.DrawerNo,
DrugId = _ChannelStock.DrugId,
ManuNo = _ChannelStock.ManuNo,
Quantity = currentChannelStock.TakeQuantity,
DrawerType = 1,
Chnguid = currentChannelStock.Chnguid,
- Id = csId,
+ Id = csToId,
}).ExecuteCommand();
}
}