From f4b859520dd43d6ecda0b28c1ea5a990b20972c3 Mon Sep 17 00:00:00 2001
From: maqiao <625215135@qq.com>
Date: Thu, 19 Dec 2024 19:55:35 +0800
Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BD=BF=E7=94=A8=E7=99=BB?=
=?UTF-8?q?=E8=AE=B0=E8=B4=A6=E5=86=8C=E6=8A=A5=E8=A1=A8=EF=BC=9B=20?=
=?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=BB=91=E5=AE=9A=E5=86=99=E6=A0=87=E7=AD=BE?=
=?UTF-8?q?=E5=8F=8A=E5=86=99=E6=95=B0=E9=87=8F=E7=9B=B8=E5=85=B3=E7=AD=89?=
=?UTF-8?q?=E5=BE=85=E6=97=B6=E9=97=B4=E5=8F=8A=E5=BC=80=E5=90=AF=E6=96=B0?=
=?UTF-8?q?=E7=BA=BF=E7=A8=8B=E5=86=99=E6=95=B0=E6=8D=AE=20=E8=B0=83?=
=?UTF-8?q?=E6=8B=A8=E5=85=A5=E5=BA=93=E6=95=B0=E9=87=8F=E6=A0=B9=E6=8D=AE?=
=?UTF-8?q?=E7=B3=BB=E6=95=B0=E8=BD=AC=E6=8D=A2=E6=88=90=E6=94=AF=E5=B0=86?=
=?UTF-8?q?=E6=9C=AA=E7=BB=91=E5=AE=9A=E8=8D=AF=E5=93=81=E6=98=BE=E7=A4=BA?=
=?UTF-8?q?=E5=87=BA=E6=9D=A5=E4=BF=9D=E5=AD=98=E6=97=B6=E4=B8=8D=E6=94=B9?=
=?UTF-8?q?=E6=9C=AA=E7=BB=91=E5=AE=9A=E8=8D=AF=E5=93=81status?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
DM_Weight/App.config | 10 +-
DM_Weight/App.xaml.cs | 2 +
DM_Weight/DM_Weight.csproj | 3 +
DM_Weight/Models/ChannelStock.cs | 2 +-
DM_Weight/Models/DrugInfo.cs | 3 +
DM_Weight/Port/PortUtil.cs | 76 ++-
DM_Weight/Report/GridReportUtil.cs | 35 ++
DM_Weight/ReportTemp/account_use_temp.grf | 452 ++++++++++++++++++
.../ViewModels/AddToJiaoJieDialogViewModel.cs | 67 ++-
.../ViewModels/AddToJiaoJieWindowViewModel.cs | 3 +-
.../ViewModels/ApplyInStockWindowViewModel.cs | 8 +-
.../BindingChannelDialogViewModel.cs | 178 ++++---
.../ViewModels/CheckStockWindowViewModel.cs | 42 +-
.../DrawerAddDrugWindowViewModel.cs | 62 +--
.../DrawerTakeDrugWindowViewModel.cs | 44 +-
.../ViewModels/InvoiceAddDialogViewModel.cs | 54 ++-
.../ViewModels/InvoiceInWindowViewModel.cs | 97 ++--
.../ViewModels/InvoiceTakeDialogViewModel.cs | 43 +-
.../ViewModels/OrderReturnDialogViewModel.cs | 37 +-
.../ViewModels/OrderTakeDialogViewModel.cs | 9 +-
.../ViewModels/ReturnDrugDialogViewModel.cs | 31 +-
.../ViewModels/RoleManagerWindowViewModel.cs | 7 +
.../ViewModels/SelfAddDialogViewModel.cs | 54 ++-
.../ViewModels/SelfTakeDialogViewModel.cs | 40 +-
.../ViewModels/UseAccountWindowViewModel.cs | 74 +++
.../Views/Dialog/BindingChannelDialog.xaml | 2 +-
DM_Weight/Views/UseAccountWindow.xaml | 69 +++
DM_Weight/Views/UseAccountWindow.xaml.cs | 28 ++
28 files changed, 1188 insertions(+), 344 deletions(-)
create mode 100644 DM_Weight/ReportTemp/account_use_temp.grf
create mode 100644 DM_Weight/ViewModels/UseAccountWindowViewModel.cs
create mode 100644 DM_Weight/Views/UseAccountWindow.xaml
create mode 100644 DM_Weight/Views/UseAccountWindow.xaml.cs
diff --git a/DM_Weight/App.config b/DM_Weight/App.config
index 72253dd..9346b5d 100644
--- a/DM_Weight/App.config
+++ b/DM_Weight/App.config
@@ -29,7 +29,7 @@
-
+
@@ -42,7 +42,7 @@
-
+
@@ -54,11 +54,11 @@
-
+
-
+
-
+
diff --git a/DM_Weight/App.xaml.cs b/DM_Weight/App.xaml.cs
index d355a08..28ee337 100644
--- a/DM_Weight/App.xaml.cs
+++ b/DM_Weight/App.xaml.cs
@@ -226,6 +226,8 @@ namespace DM_Weight
containerRegistry.RegisterForNavigation();
containerRegistry.RegisterForNavigation();
+ //使用登记册
+ containerRegistry.RegisterForNavigation();
#endregion
#region 系统设置
diff --git a/DM_Weight/DM_Weight.csproj b/DM_Weight/DM_Weight.csproj
index b35d455..98c1fd7 100644
--- a/DM_Weight/DM_Weight.csproj
+++ b/DM_Weight/DM_Weight.csproj
@@ -97,6 +97,9 @@
Always
+
+ Always
+
Always
diff --git a/DM_Weight/Models/ChannelStock.cs b/DM_Weight/Models/ChannelStock.cs
index 5a864ba..2b74885 100644
--- a/DM_Weight/Models/ChannelStock.cs
+++ b/DM_Weight/Models/ChannelStock.cs
@@ -112,7 +112,7 @@ namespace DM_Weight.Models
[SugarColumn(IsIgnore = true)]
public string Location
{
- get => ColNo == 0 ? DrawerNo + "号交接柜" : DrawerNo + "-" + ColNo;
+ get => ColNo == 0 ? DrawerNo + "号交接柜" :ColNo==-1?"未绑定": DrawerNo + "-" + ColNo;
}
private int _addQuantity = 0;
diff --git a/DM_Weight/Models/DrugInfo.cs b/DM_Weight/Models/DrugInfo.cs
index efeac45..fc41a64 100644
--- a/DM_Weight/Models/DrugInfo.cs
+++ b/DM_Weight/Models/DrugInfo.cs
@@ -72,6 +72,9 @@ namespace DM_Weight.Models
///
[SugarColumn(ColumnName = "max_stock")]
public int? MaxStock { get; set; }
+ ///
+ [SugarColumn(ColumnName = "convert_ratio")]
+ public int ConvertRatio { get; set; }
//[SugarColumn(IsIgnore=true)]
[Navigate(NavigateType.OneToMany, nameof(ChannelStock.DrugId), nameof(DrugId))]//BookA表中的studenId
public List channelStocks { get; set; }
diff --git a/DM_Weight/Port/PortUtil.cs b/DM_Weight/Port/PortUtil.cs
index d248b17..7334281 100644
--- a/DM_Weight/Port/PortUtil.cs
+++ b/DM_Weight/Port/PortUtil.cs
@@ -29,6 +29,7 @@ using System.Runtime.InteropServices;
using DM_Weight.Common;
using System.Net;
using System.Text.RegularExpressions;
+using System.Threading;
namespace DM_Weight.Port
{
@@ -1138,20 +1139,23 @@ namespace DM_Weight.Port
}
byte[] buffer = new byte[] { 0xaa, (byte)channel, 1, (byte)type, 0, 0, 0, 0xee };
canBusSerial.Write(buffer, 0, 8);
- await Task.Delay(20);
+ logger.Info($"Type:{type};content:{content};库位:{drawerNo}-{colNo};开始写指令:{Convert.ToHexString(buffer)}");
+ Thread.Sleep(20);
buffer[4] = 1;
for (int i = 0; i < contentBuf.Length; i += 2)
{
buffer[5] = contentBuf[i];
buffer[6] = contentBuf[i + 1];
canBusSerial.Write(buffer, 0, 8);
- await Task.Delay(20);
+ logger.Info($"Type:{type};content:{content};库位:{drawerNo}-{colNo};写指令:{Convert.ToHexString(buffer)}");
+ Thread.Sleep(20);
}
buffer[4] = 2;
buffer[5] = 0;
buffer[6] = 0;
canBusSerial.Write(buffer, 0, 8);
- await Task.Delay(20);
+ logger.Info($"Type:{type};content:{content};库位:{drawerNo}-{colNo};结束写指令:{Convert.ToHexString(buffer)}");
+ Thread.Sleep(20);
}
catch (Exception ex)
{
@@ -1226,12 +1230,14 @@ namespace DM_Weight.Port
{
try
{
+ var colNo2 = colNo % 3==0?3: colNo % 3;
canBusSerial.DiscardInBuffer();
- int channel = (drawerNo * 10 + colNo);
+ int channel = (drawerNo * 10 + colNo2);
byte[] buffer = new byte[] { 0xaa, (byte)channel, 0x21, 0, 0, 0, 0, 0xee };
buffer[5] = (byte)(quantity >> 8);
buffer[6] = (byte)(quantity & 0xff);
canBusSerial.Write(buffer, 0, 8);
+ logger.Info($"{drawerNo}-{colNo}写数量:{Convert.ToHexString(buffer)}");
}
catch (Exception ex)
{
@@ -1257,15 +1263,15 @@ namespace DM_Weight.Port
//var channel = drawerNo * 10 + Math.Ceiling(deColNo / 3);
int[] iNum = new int[] { 3, 2, 1 };
var colNo2 = colNo % 3 > 0 ? (colNo % 3) - 1 : 2;
- var bColNo = Convert.ToInt32((iNum[colNo2]+10).ToString(),16);
+ var bColNo = Convert.ToInt32((iNum[colNo2] + 10).ToString(), 16);
//var index = Convert.ToInt32(((colNo % 3 == 0 ? 3 : colNo % 3)+10).ToString(),16);
int channel = Convert.ToInt32((drawerNo * 10 + Math.Ceiling((decimal)colNo / 3)).ToString(), 16);
- byte[] buffer = new byte[] { 0xaa, (byte)channel, 0x09, (byte)bColNo, 0,0,0, 0xee };
+ byte[] buffer = new byte[] { 0xaa, (byte)channel, 0x09, (byte)bColNo, 0, 0, 0, 0xee };
canBusSerial.Write(buffer, 0, 8);
logger.Info($"清屏指令:{Convert.ToHexString(buffer)}");
}
//刷新内容
- public async Task ShowContentMethod(int drawerNo, int colNo)
+ public async void ShowContentMethod(int drawerNo, int colNo)
{
int channel = Convert.ToInt32((drawerNo * 10 + Math.Ceiling((decimal)colNo / 3)).ToString(), 16);
byte[] buffer = new byte[] { 0xaa, (byte)channel, 0x0c, 0x00, 0x00, 0x00, 0x00, 0xee };
@@ -1273,30 +1279,32 @@ namespace DM_Weight.Port
canBusSerial.Write(buffer, 0, 8);
}
// 基础数据写入方法
- public async Task WriteChannelInfoMethod(int type, string content, int drawerNo, int colNo)
+ public async void WriteChannelInfoMethod(int type, string content, int drawerNo, int colNo)
{
try
{
canBusSerial.DiscardInBuffer();
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
- byte[] contentBuf = Encoding.GetEncoding("gb2312").GetBytes(trim(content));
if (content.Length > 10)
{
content = content.Substring(0, 10);
}
+ byte[] contentBuf = Encoding.GetEncoding("gb2312").GetBytes(trim(content));
int channel = Convert.ToInt32((drawerNo * 10 + Math.Ceiling((decimal)colNo / 3)).ToString(), 16);
int[] iNum = new int[] { 3, 2, 1 };
var colNo2 = colNo % 3 > 0 ? (colNo % 3) - 1 : 2;
- var bColNo = iNum[colNo2]+160;
+ var bColNo = iNum[colNo2] + 160;
//var index = (colNo % 3 == 0 ? 3 : colNo % 3)+160;
if (contentBuf.Length % 2 != 0)
{
Array.Resize(ref contentBuf, contentBuf.Length + 1);
}
byte[] buffer = new byte[] { 0xaa, (byte)channel, (byte)bColNo, (byte)type, 0, 0, 0, 0xee };
+
+
canBusSerial.Write(buffer, 0, 8);
logger.Info($"开始写标签指令:{Convert.ToHexString(buffer)}");
- await Task.Delay(30);
+ Thread.Sleep(20);
buffer[4] = 1;
for (int i = 0; i < contentBuf.Length; i += 2)
{
@@ -1304,14 +1312,14 @@ namespace DM_Weight.Port
buffer[6] = contentBuf[i + 1];
canBusSerial.Write(buffer, 0, 8);
logger.Info($"写标签指令:{Convert.ToHexString(buffer)}");
- await Task.Delay(30);
+ Thread.Sleep(50);
}
buffer[4] = 2;
buffer[5] = 0;
buffer[6] = 0;
canBusSerial.Write(buffer, 0, 8);
logger.Info($"结束写标签指令:{Convert.ToHexString(buffer)}");
- await Task.Delay(30);
+ Thread.Sleep(20);
}
catch (Exception ex)
@@ -1326,6 +1334,48 @@ namespace DM_Weight.Port
}
}
+ public async Task WriteQuantityMethod(int quantity, int drawerNo, int colNo)
+ {
+ try
+ {
+ canBusSerial.DiscardInBuffer();
+ Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
+ string strQuantity = quantity.ToString("X");
+ if (strQuantity.Length % 2 != 0)
+ {
+ strQuantity = "0" + strQuantity;
+ }
+ int channel = Convert.ToInt32((drawerNo * 10 + Math.Ceiling((decimal)colNo / 3)).ToString(), 16);
+ int[] iNum = new int[] { 3, 2, 1 };
+ var colNo2 = colNo % 3 > 0 ? (colNo % 3) - 1 : 2;
+ var bColNo = iNum[colNo2] + 160;
+ byte[] buffer = new byte[] { 0xaa, (byte)channel, (byte)bColNo, 0xf2, 01, 0, 0, 0xee };
+ if (strQuantity.Length >= 4)
+ {
+ buffer[5] = Convert.ToByte(strQuantity.Substring(0, 2), 16);
+ buffer[6] = Convert.ToByte(strQuantity.Substring(2, 2), 16);
+ }
+ else
+ {
+
+ buffer[6] = Convert.ToByte(strQuantity.Substring(0, 2), 16);
+ }
+ logger.Info($"开始写标签指令:{Convert.ToHexString(buffer)}");
+ canBusSerial.Write(buffer, 0, 8);
+ logger.Info($"写标签指令:{Convert.ToHexString(buffer)}");
+ }
+ catch (Exception ex)
+ {
+ _eventAggregator.GetEvent().Publish(new util.DeviceMsg()
+ {
+ EventType = util.EventType.OPENERROR,
+ WindowName = WindowName,
+ Message = $"写标签数量异常{ex.Message}"
+ });
+ logger.Info($"写标签数量异常:ex:{ex.Message}");
+ }
+ }
+
#endregion
#region 回收箱操作
diff --git a/DM_Weight/Report/GridReportUtil.cs b/DM_Weight/Report/GridReportUtil.cs
index 41a152a..5ea14a7 100644
--- a/DM_Weight/Report/GridReportUtil.cs
+++ b/DM_Weight/Report/GridReportUtil.cs
@@ -365,5 +365,40 @@ namespace DM_Weight.Report
Report.PrintPreview(true);
}
+
+ ///
+ /// 使用登记册
+ /// 能按麻醉师名字、时间结合起来查找
+ ///
+ public static void UserAccount(DateTime? startDate, DateTime? endDate, string Name)
+ {
+
+ // 定义Grid++Report报表主对象
+ GridppReport Report = new GridppReport();
+ DateTime? p_startDate = startDate ?? Convert.ToDateTime("2010-1-1");
+ DateTime? p_endDate = endDate ?? DateTime.Now.AddDays(1);
+ string p_machine_id = (ConfigurationManager.AppSettings["machineId"] ?? "DM1");
+ string SQL = string.Empty;
+ Report.LoadFromFile(new FileInfo(AppDomain.CurrentDomain.BaseDirectory) + "ReportTemp//" + "account_use_temp.grf");
+
+ SQL = $@"
+ SELECT re.create_time as OptDate, di.drug_name as DrugName,di.Drug_spec as DrugSpec,re.manu_no as ManuNo,'' BedNum,re.patient_name as PName,
+ CONCAT(use_dose,dose_unit) as UDose,CONCAT(residual_dose,dose_unit) as ReDose,'' as Disposal,
+ re.anaesthetist_name as AName,re.operator_name as OName,re.supervisor_name as CName,'' EmpManuNO,'' EmpRecive,'' as EmpMedicRecive
+ from surgical_residual re inner join drug_info di on re.drug_id=di.drug_id
+ where re.create_time > '{startDate}' and re.create_time< '{endDate}'";
+
+
+
+ if (!string.IsNullOrEmpty(Name))
+ {
+ SQL += " AND re.anaesthetist_name='" + Name + "' ";
+ }
+ SQL += " ORDER BY re.create_time";
+ Report.DetailGrid.Recordset.ConnectionString = gridConnectionString;
+ Report.DetailGrid.Recordset.QuerySQL = SQL;
+
+ Report.PrintPreview(true);
+ }
}
}
diff --git a/DM_Weight/ReportTemp/account_use_temp.grf b/DM_Weight/ReportTemp/account_use_temp.grf
new file mode 100644
index 0000000..a2b98c5
--- /dev/null
+++ b/DM_Weight/ReportTemp/account_use_temp.grf
@@ -0,0 +1,452 @@
+{
+ "Version":"6.8.1.1",
+ "Font":{
+ "Name":"宋体",
+ "Size":105000,
+ "Weight":400,
+ "Charset":134
+ },
+ "Printer":{
+ "Oriention":"Landscape",
+ "LeftMargin":1,
+ "TopMargin":1.42875,
+ "RightMargin":1,
+ "BottomMargin":1.8
+ },
+ "DetailGrid":{
+ "CenterView":true,
+ "AppendBlankRow":true,
+ "Recordset":{
+ "Field":[
+ {
+ "Name":"日期",
+ "Type":"DateTime",
+ "Format":"M/d",
+ "DBFieldName":"OptDate"
+ },
+ {
+ "Name":"品名",
+ "DBFieldName":"DrugName"
+ },
+ {
+ "Name":"规格",
+ "DBFieldName":"DrugSpec"
+ },
+ {
+ "Name":"批号",
+ "DBFieldName":"ManuNo"
+ },
+ {
+ "Name":"床号",
+ "DBFieldName":"BedNum"
+ },
+ {
+ "Name":"病人姓名",
+ "DBFieldName":"PName"
+ },
+ {
+ "Name":"使用剂量",
+ "DBFieldName":"UDose"
+ },
+ {
+ "Name":"剩余剂量",
+ "DBFieldName":"ReDose"
+ },
+ {
+ "Name":"处理",
+ "DBFieldName":"Disposal"
+ },
+ {
+ "Name":"医师",
+ "DBFieldName":"AName"
+ },
+ {
+ "Name":"执行者",
+ "DBFieldName":"OName"
+ },
+ {
+ "Name":"核对者",
+ "DBFieldName":"CName"
+ },
+ {
+ "Name":"空安瓿批号",
+ "DBFieldName":"EmpManuNO"
+ },
+ {
+ "Name":"空安瓿回收者",
+ "DBFieldName":"EmpRecive"
+ },
+ {
+ "Name":"空安瓿药房接收者",
+ "DBFieldName":"EmpMedicRecive"
+ }
+ ]
+ },
+ "Column":[
+ {
+ "Name":"日期",
+ "Width":1.77271
+ },
+ {
+ "Name":"品名",
+ "Width":3.41313
+ },
+ {
+ "Name":"规格",
+ "Width":2.35479
+ },
+ {
+ "Name":"批号",
+ "Width":2.24896
+ },
+ {
+ "Name":"床号",
+ "Width":2.43417
+ },
+ {
+ "Name":"病人姓名",
+ "Width":1.79917
+ },
+ {
+ "Name":"使用剂量",
+ "Width":1.79917
+ },
+ {
+ "Name":"剩余剂量",
+ "Width":1.98438
+ },
+ {
+ "Name":"处理",
+ "Width":2.35479
+ },
+ {
+ "Name":"医师",
+ "Width":1.79917
+ },
+ {
+ "Name":"执行者",
+ "Width":1.61396
+ },
+ {
+ "Name":"核对者",
+ "Width":1.5875
+ },
+ {
+ "Name":"空安瓿批号",
+ "Width":1.61396
+ },
+ {
+ "Name":"空安瓿回收者",
+ "Width":2.19604
+ },
+ {
+ "Name":"空安瓿药房接收者",
+ "Width":1.61396
+ }
+ ],
+ "ColumnContent":{
+ "Height":0.85,
+ "ColumnContentCell":[
+ {
+ "Column":"日期",
+ "WordWrap":true,
+ "TextAlign":"MiddleCenter",
+ "ShrinkFontToFit":true,
+ "DataField":"日期"
+ },
+ {
+ "Column":"品名",
+ "TextAlign":"MiddleCenter",
+ "DataField":"品名"
+ },
+ {
+ "Column":"规格",
+ "TextAlign":"MiddleCenter",
+ "DataField":"规格"
+ },
+ {
+ "Column":"批号",
+ "TextAlign":"MiddleCenter",
+ "DataField":"批号"
+ },
+ {
+ "Column":"床号",
+ "TextAlign":"MiddleCenter",
+ "DataField":"床号"
+ },
+ {
+ "Column":"病人姓名",
+ "TextAlign":"MiddleCenter",
+ "DataField":"病人姓名"
+ },
+ {
+ "Column":"使用剂量",
+ "TextAlign":"MiddleCenter",
+ "DataField":"使用剂量"
+ },
+ {
+ "Column":"剩余剂量",
+ "TextAlign":"MiddleCenter",
+ "DataField":"剩余剂量"
+ },
+ {
+ "Column":"处理",
+ "TextAlign":"MiddleCenter",
+ "DataField":"处理"
+ },
+ {
+ "Column":"医师",
+ "TextAlign":"MiddleCenter",
+ "DataField":"医师"
+ },
+ {
+ "Column":"执行者",
+ "TextAlign":"MiddleCenter",
+ "DataField":"执行者"
+ },
+ {
+ "Column":"核对者",
+ "TextAlign":"MiddleCenter",
+ "DataField":"核对者"
+ },
+ {
+ "Column":"空安瓿批号",
+ "TextAlign":"MiddleCenter",
+ "DataField":"空安瓿批号"
+ },
+ {
+ "Column":"空安瓿回收者",
+ "TextAlign":"MiddleCenter",
+ "DataField":"空安瓿回收者"
+ },
+ {
+ "Column":"空安瓿药房接收者",
+ "TextAlign":"MiddleCenter",
+ "DataField":"空安瓿药房接收者"
+ }
+ ]
+ },
+ "ColumnTitle":{
+ "Height":1.19063,
+ "RepeatStyle":"OnPage",
+ "ColumnTitleCell":[
+ {
+ "GroupTitle":false,
+ "Column":"日期",
+ "Font":{
+ "Name":"宋体",
+ "Size":105000,
+ "Bold":true,
+ "Charset":134
+ },
+ "TextAlign":"MiddleCenter",
+ "Text":"日期"
+ },
+ {
+ "GroupTitle":false,
+ "Column":"品名",
+ "Font":{
+ "Name":"宋体",
+ "Size":105000,
+ "Bold":true,
+ "Charset":134
+ },
+ "TextAlign":"MiddleCenter",
+ "Text":"品名"
+ },
+ {
+ "GroupTitle":false,
+ "Column":"规格",
+ "Font":{
+ "Name":"宋体",
+ "Size":105000,
+ "Bold":true,
+ "Charset":134
+ },
+ "TextAlign":"MiddleCenter",
+ "Text":"规格"
+ },
+ {
+ "GroupTitle":false,
+ "Column":"批号",
+ "Font":{
+ "Name":"宋体",
+ "Size":105000,
+ "Bold":true,
+ "Charset":134
+ },
+ "TextAlign":"MiddleCenter",
+ "Text":"批号"
+ },
+ {
+ "GroupTitle":false,
+ "Column":"床号",
+ "Font":{
+ "Name":"宋体",
+ "Size":105000,
+ "Bold":true,
+ "Charset":134
+ },
+ "TextAlign":"MiddleCenter",
+ "Text":"床号"
+ },
+ {
+ "GroupTitle":false,
+ "Column":"病人姓名",
+ "Font":{
+ "Name":"宋体",
+ "Size":105000,
+ "Bold":true,
+ "Charset":134
+ },
+ "TextAlign":"MiddleCenter",
+ "Text":"病人\r\n姓名"
+ },
+ {
+ "GroupTitle":false,
+ "Column":"使用剂量",
+ "Font":{
+ "Name":"宋体",
+ "Size":105000,
+ "Bold":true,
+ "Charset":134
+ },
+ "TextAlign":"MiddleCenter",
+ "Text":"使用\r\n剂量"
+ },
+ {
+ "GroupTitle":false,
+ "Column":"剩余剂量",
+ "Font":{
+ "Name":"宋体",
+ "Size":105000,
+ "Bold":true,
+ "Charset":134
+ },
+ "TextAlign":"MiddleCenter",
+ "Text":"剩余\r\n剂量"
+ },
+ {
+ "GroupTitle":false,
+ "Column":"处理",
+ "Font":{
+ "Name":"宋体",
+ "Size":105000,
+ "Bold":true,
+ "Charset":134
+ },
+ "TextAlign":"MiddleCenter",
+ "Text":"剩余剂量\r\n是否双人\r\n在监控下\r\n用棉球或\r\n敷料作介质\r\n稀释后\r\n作医疗\r\n废物处理"
+ },
+ {
+ "GroupTitle":false,
+ "Column":"医师",
+ "Font":{
+ "Name":"宋体",
+ "Size":105000,
+ "Bold":true,
+ "Charset":134
+ },
+ "TextAlign":"MiddleCenter",
+ "Text":"医师"
+ },
+ {
+ "GroupTitle":false,
+ "Column":"执行者",
+ "Font":{
+ "Name":"宋体",
+ "Size":105000,
+ "Bold":true,
+ "Charset":134
+ },
+ "TextAlign":"MiddleCenter",
+ "Text":"执行者"
+ },
+ {
+ "GroupTitle":false,
+ "Column":"核对者",
+ "Font":{
+ "Name":"宋体",
+ "Size":105000,
+ "Bold":true,
+ "Charset":134
+ },
+ "TextAlign":"MiddleCenter",
+ "Text":"核对者"
+ },
+ {
+ "GroupTitle":false,
+ "Column":"空安瓿批号",
+ "Font":{
+ "Name":"宋体",
+ "Size":105000,
+ "Bold":true,
+ "Charset":134
+ },
+ "TextAlign":"MiddleCenter",
+ "Text":"空安瓿\r\n批号"
+ },
+ {
+ "GroupTitle":false,
+ "Column":"空安瓿回收者",
+ "Font":{
+ "Name":"宋体",
+ "Size":105000,
+ "Bold":true,
+ "Charset":134
+ },
+ "TextAlign":"MiddleCenter",
+ "Text":"空安瓿\r\n回收者"
+ },
+ {
+ "GroupTitle":false,
+ "Column":"空安瓿药房接收者",
+ "Font":{
+ "Name":"宋体",
+ "Size":105000,
+ "Bold":true,
+ "Charset":134
+ },
+ "TextAlign":"MiddleCenter",
+ "Text":"空安瓿\r\n药房\r\n接收者"
+ }
+ ]
+ }
+ },
+ "Parameter":[
+ {
+ "Name":"machine_id"
+ },
+ {
+ "Name":"startDate",
+ "DataType":"DateTime"
+ },
+ {
+ "Name":"endDate",
+ "DataType":"DateTime"
+ }
+ ],
+ "ReportHeader":[
+ {
+ "Name":"ReportHeader1",
+ "Height":1.79917,
+ "Control":[
+ {
+ "Type":"MemoBox",
+ "Name":"MemoBox1",
+ "Dock":"Fill",
+ "Center":"Both",
+ "Font":{
+ "Name":"宋体",
+ "Size":262500,
+ "Bold":true,
+ "Charset":134
+ },
+ "TextAlign":"MiddleCenter",
+ "Text":"麻醉药品、精神药品使用登记册"
+ }
+ ],
+ "RepeatOnPage":true
+ }
+ ]
+}
\ No newline at end of file
diff --git a/DM_Weight/ViewModels/AddToJiaoJieDialogViewModel.cs b/DM_Weight/ViewModels/AddToJiaoJieDialogViewModel.cs
index ea0e93b..68756f1 100644
--- a/DM_Weight/ViewModels/AddToJiaoJieDialogViewModel.cs
+++ b/DM_Weight/ViewModels/AddToJiaoJieDialogViewModel.cs
@@ -405,7 +405,7 @@ namespace DM_Weight.ViewModels
for (int i = 0; i < Jiaojie_ChannelStocks.Count; i++)
{
ChannelStock jiaoStock = Jiaojie_ChannelStocks[i];
- SqlSugarHelper.Db.Deleteable().Where(cs => cs.DrawerNo == jiaoStock.DrawerNo && cs.DrugId == jiaoStock.DrugId && cs.MachineId == jiaoStock.MachineId && cs.Quantity <= 0 && cs.AddToJJNum <= 0).ExecuteCommand();
+ SqlSugarHelper.Db.Deleteable().Where(cs => cs.DrawerNo == jiaoStock.DrawerNo && cs.DrugId == jiaoStock.DrugId && cs.MachineId == jiaoStock.MachineId && cs.Quantity <= 0).ExecuteCommand();
List csStockList = record.Where(cs => cs.DrugId == jiaoStock.DrugId && cs.TakeQuantity > 0).ToList();
if (csStockList != null && csStockList.Count > 0)
{
@@ -431,17 +431,18 @@ namespace DM_Weight.ViewModels
newStock.Id = Guid.NewGuid().ToString();
newStock.MachineId = jiaoStock.MachineId;
newStock.Id = Guid.NewGuid().ToString();
+ newStock.NeedNum = 0;
AddJJStock.Add(newStock);
csStock.TakeQuantity = 0;
- jiaoStock.NeedNum = jiaoStock.NeedNum - csStock.TakeQuantity;
+ jiaoStock.NeedNum = jiaoStock.NeedNum- csStock.TakeQuantity;
}
else
{
//够取
- jiaoStock.AddQuantity = jiaoStock.Quantity+ jiaoStock.NeedNum;
- jiaoStock.NeedNum = 0;
- AddJJStock.Add(jiaoStock);
- csStock.Quantity = csStock.Quantity - jiaoStock.NeedNum;
+ //jiaoStock.AddQuantity = jiaoStock.Quantity+ jiaoStock.NeedNum;
+ //jiaoStock.NeedNum = 0;
+ //AddJJStock.Add(jiaoStock);
+ //csStock.Quantity = csStock.Quantity - jiaoStock.NeedNum;
//csStockList[j].Quantity = csStock.Quantity - jiaoStock.NeedNum;
ChannelStock newStock = new ChannelStock();
@@ -450,12 +451,13 @@ namespace DM_Weight.ViewModels
newStock.ManuNo = jiaoStock.ManuNo;
newStock.DrawerNo = jiaoStock.DrawerNo;
newStock.DrugId = jiaoStock.DrugId;
- newStock.AddToJJNum = csStock.TakeQuantity;
+ newStock.AddToJJNum = jiaoStock.NeedNum;
newStock.Id = Guid.NewGuid().ToString();
newStock.MachineId = jiaoStock.MachineId;
newStock.Id=Guid.NewGuid().ToString();
+ newStock.NeedNum = 0;
AddJJStock.Add(newStock);
- csStock.TakeQuantity = jiaoStock.NeedNum - csStock.TakeQuantity;
+ csStock.TakeQuantity = csStock.TakeQuantity-jiaoStock.NeedNum;
jiaoStock.NeedNum = 0;
break;
}
@@ -466,16 +468,17 @@ namespace DM_Weight.ViewModels
{
//不够取
ChannelStock newStock = new ChannelStock();
+ newStock.BaseQuantity = jiaoStock.BaseQuantity;
newStock.Chnguid = jiaoStock.Chnguid;
- newStock.BaseQuantity = csStock.BaseQuantity;
newStock.DrawerNo = jiaoStock.DrawerNo;
newStock.DrugId = jiaoStock.DrugId;
newStock.ManuNo = csStock.ManuNo;
- newStock.AddToJJNum = csStock.Quantity;
+ newStock.AddToJJNum = csStock.TakeQuantity;
newStock.Id = Guid.NewGuid().ToString();
newStock.MachineId = jiaoStock.MachineId;
+ newStock.NeedNum= 0;
AddJJStock.Add(newStock);
- jiaoStock.NeedNum = jiaoStock.NeedNum - csStock.Quantity;
+ jiaoStock.NeedNum = jiaoStock.NeedNum - csStock.TakeQuantity;
csStockList[j].TakeQuantity = 0;
}
else
@@ -483,7 +486,7 @@ namespace DM_Weight.ViewModels
//够取
ChannelStock newStock = new ChannelStock();
newStock.Chnguid = jiaoStock.Chnguid;
- newStock.BaseQuantity = csStock.BaseQuantity;
+ newStock.BaseQuantity = jiaoStock.BaseQuantity;
newStock.DrawerNo = jiaoStock.DrawerNo;
newStock.DrugId = jiaoStock.DrugId;
newStock.ManuNo = csStock.ManuNo;
@@ -492,13 +495,24 @@ namespace DM_Weight.ViewModels
newStock.Id = Guid.NewGuid().ToString();
newStock.MachineId=jiaoStock.MachineId;
AddJJStock.Add(newStock);
- csStock.TakeQuantity = csStock.Quantity - newStock.AddToJJNum;
+ csStock.TakeQuantity = csStock.TakeQuantity - newStock.AddToJJNum;
break;
}
}
}
}
+ SqlSugarHelper.Db.Updateable()
+ .SetColumns(cs => new ChannelStock() { NeedNum = 0 })
+ .Where(cs => cs.DrawerNo == jiaoStock.DrawerNo)
+ .ExecuteCommand();
}
+ AddJJStock= AddJJStock.GroupBy(jj => new { jj.DrawerNo, jj.DrugId, jj.ManuNo })
+ .Select(jj =>
+ {
+ var ret = jj.First();
+ ret.AddToJJNum = jj.Sum(itx => itx.AddToJJNum);
+ return ret;
+ }).ToList();
//保存交接柜数据
SqlSugarHelper.Db.Insertable(AddJJStock).ExecuteCommand();
@@ -548,15 +562,28 @@ namespace DM_Weight.ViewModels
});
if (f.Data)
{
- // 更新屏显库存
- List singleChannels = record.FindAll(it => it.BoardType != 5);
- if (singleChannels.Count > 0)
+ Task.Factory.StartNew(() =>
{
- singleChannels.ForEach(it =>
+ // 更新屏显库存
+ List singleChannels = record.FindAll(it => it.BoardType != 5);
+ if (singleChannels.Count > 0)
{
- _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.Quantity - it.TakeQuantity);
- });
- }
+ singleChannels.ForEach(it =>
+ {
+ _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.Quantity - it.TakeQuantity);
+ Thread.Sleep(150);
+ });
+ }
+ List singleChannelsBoxSmart = record.FindAll(it => it.BoardType == 35);
+ if ((singleChannelsBoxSmart.Count > 0 ? singleChannelsBoxSmart[0].BoardType : 1) == 35)
+ {
+ singleChannels.ForEach(it =>
+ {
+ _portUtil.WriteQuantityMethod((it.Quantity - it.TakeQuantity), it.DrawerNo, it.ColNo);
+ Thread.Sleep(150);
+ });
+ }
+ });
AlertMsg alertMsg = new AlertMsg
{
Message = "抽屉取药完成,库存已更新",
diff --git a/DM_Weight/ViewModels/AddToJiaoJieWindowViewModel.cs b/DM_Weight/ViewModels/AddToJiaoJieWindowViewModel.cs
index 8752fc5..9f482c3 100644
--- a/DM_Weight/ViewModels/AddToJiaoJieWindowViewModel.cs
+++ b/DM_Weight/ViewModels/AddToJiaoJieWindowViewModel.cs
@@ -82,8 +82,9 @@ namespace DM_Weight.ViewModels
{
var ret = it.First();
ret.Quantity = it.Sum(itx => itx.Quantity);
+ ret.NeedNum=it.Sum(itx => itx.NeedNum);
return ret;
- })
+ }).Where(it=>it.BaseQuantity>it.Quantity)
.ToList();
ChannelStocks.ForEach(cs => cs.AddQuantity = cs.BaseQuantity - cs.Quantity);
diff --git a/DM_Weight/ViewModels/ApplyInStockWindowViewModel.cs b/DM_Weight/ViewModels/ApplyInStockWindowViewModel.cs
index 3386a2d..5ba686d 100644
--- a/DM_Weight/ViewModels/ApplyInStockWindowViewModel.cs
+++ b/DM_Weight/ViewModels/ApplyInStockWindowViewModel.cs
@@ -797,13 +797,13 @@ namespace DM_Weight.ViewModels
//将库位多批次的总库存数更新标签
await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(2, totalQuantity.ToString(), channelStockEffDate[0].DrawerNo, channelStockEffDate[0].ColNo);
+ _portUtil.WriteChannelInfoMethod(2, totalQuantity.ToString(), channelStockEffDate[0].DrawerNo, channelStockEffDate[0].ColNo);
await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(5, channelStockEffDate[0].EffDate, channelStockEffDate[0].DrawerNo, channelStockEffDate[0].ColNo);
+ _portUtil.WriteChannelInfoMethod(5, channelStockEffDate[0].EffDate, channelStockEffDate[0].DrawerNo, channelStockEffDate[0].ColNo);
await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(6, channelStockEffDate[0].ManuNo, channelStockEffDate[0].DrawerNo, channelStockEffDate[0].ColNo);
+ _portUtil.WriteChannelInfoMethod(6, channelStockEffDate[0].ManuNo, channelStockEffDate[0].DrawerNo, channelStockEffDate[0].ColNo);
await Task.Delay(200);
- await _portUtil.ShowContentMethod(channelStockEffDate[0].DrawerNo, channelStockEffDate[0].ColNo);
+ _portUtil.ShowContentMethod(channelStockEffDate[0].DrawerNo, channelStockEffDate[0].ColNo);
}
}
diff --git a/DM_Weight/ViewModels/BindingChannelDialogViewModel.cs b/DM_Weight/ViewModels/BindingChannelDialogViewModel.cs
index d7fc660..b3ef41c 100644
--- a/DM_Weight/ViewModels/BindingChannelDialogViewModel.cs
+++ b/DM_Weight/ViewModels/BindingChannelDialogViewModel.cs
@@ -17,6 +17,7 @@ using DM_Weight.msg;
using DM_Weight.Port;
using DM_Weight.util;
using log4net;
+using System.Threading;
namespace DM_Weight.ViewModels
{
@@ -204,12 +205,12 @@ namespace DM_Weight.ViewModels
public DelegateCommand BindingDrug
{
- get => new DelegateCommand(async () =>
+ get => new DelegateCommand(() =>
{
var SelectChannels = Channels.FindAll(item => item.IsSelected && item.Quantity == 0);
- if(SelectChannels is null || SelectChannels.Count <= 0)
+ if (SelectChannels is null || SelectChannels.Count <= 0)
{
SnackbarBackground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#b71c1c"));
SnackbarMessageQueue.Enqueue("未选中库位或库位还存在药品无法绑定");
@@ -240,28 +241,30 @@ namespace DM_Weight.ViewModels
_portUtil.WindowName = "BindingChannelDialog";
// 向显示屏写入库位信息
_portUtil.WriteChannelInfo(1, DrugInfo.DrugName, item.DrawerNo, item.ColNo);
- await Task.Delay(200);
+ Task.Delay(200);
_portUtil.WriteChannelInfo(2, DrugInfo.DrugSpec, item.DrawerNo, item.ColNo);
- await Task.Delay(200);
+ Task.Delay(200);
_portUtil.WriteChannelInfo(8, DrugInfo.Manufactory, item.DrawerNo, item.ColNo);
- await Task.Delay(200);
+ Task.Delay(200);
_portUtil.ShowContent(item.DrawerNo, item.ColNo);
+ Task.Delay(200);
}
//_screenUtil.SetStockInfo(item, 1);
- if(item.BoardType == 35)
+ if (item.BoardType == 35)
{
_portUtil.WindowName = "BindingChannelDialog";
- await _portUtil.WriteChannelInfoMethod(1,DrugInfo.DrugName, item.DrawerNo, item.ColNo);
- await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(3, DrugInfo.DrugSpec, item.DrawerNo, item.ColNo);
- await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(4, DrugInfo.Manufactory, item.DrawerNo, item.ColNo);
- await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(5, item.EffDate, item.DrawerNo, item.ColNo);
- await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(6, item.ManuNo, item.DrawerNo, item.ColNo);
- await Task.Delay(200);
- await _portUtil.ShowContentMethod(item.DrawerNo, item.ColNo);
+ _portUtil.WriteChannelInfoMethod(1, DrugInfo.DrugName, item.DrawerNo, item.ColNo);
+ Task.Delay(200);
+ _portUtil.WriteChannelInfoMethod(3, DrugInfo.DrugSpec, item.DrawerNo, item.ColNo);
+ Task.Delay(200);
+ _portUtil.WriteChannelInfoMethod(4, DrugInfo.Manufactory, item.DrawerNo, item.ColNo);
+ Task.Delay(200);
+ _portUtil.WriteChannelInfoMethod(5, item.EffDate, item.DrawerNo, item.ColNo);
+ Task.Delay(200);
+ _portUtil.WriteChannelInfoMethod(6, item.ManuNo, item.DrawerNo, item.ColNo);
+ Task.Delay(200);
+ _portUtil.ShowContentMethod(item.DrawerNo, item.ColNo);
+ Task.Delay(200);
}
}
@@ -292,54 +295,64 @@ namespace DM_Weight.ViewModels
if (c > 0)
{
- SelectChannels.ForEach(async (item) =>
+ SelectChannels.ForEach((item) =>
+ {
+ if (item.DrugId == null || !DrugInfo.DrugId.ToString().Equals(item.DrugId))
{
- if (item.DrugId == null || !DrugInfo.DrugId.ToString().Equals(item.DrugId))
- {
- item.PosNo = 0;
- }
- if(DrugManuNo.EffDate!=null&& DrugManuNo.EffDate.Length>=10)
- {
- DrugManuNo.EffDate= DrugManuNo.EffDate.Substring(0,10);
- }
- item.DrugId = DrugInfo.DrugId.ToString();
- item.ManuNo = DrugManuNo.ManuNo;
- item.DrugInfo = DrugInfo;
- item.EffDate = String.Format("{0:yyyy-MM-dd}", DrugManuNo.EffDate.Length>=10? DrugManuNo.EffDate.Substring(0,10): DrugManuNo.EffDate);
- SqlSugarHelper.Db.Updateable(item).UpdateColumns(it => new { it.DrugId, it.ManuNo, it.EffDate, it.PosNo }).ExecuteCommand();
+ item.PosNo = 0;
+ }
+ if (DrugManuNo.EffDate != null && DrugManuNo.EffDate.Length >= 10)
+ {
+ DrugManuNo.EffDate = DrugManuNo.EffDate.Substring(0, 10);
+ }
+ item.DrugId = DrugInfo.DrugId.ToString();
+ item.ManuNo = DrugManuNo.ManuNo;
+ item.DrugInfo = DrugInfo;
+ item.EffDate = String.Format("{0:yyyy-MM-dd}", DrugManuNo.EffDate.Length >= 10 ? DrugManuNo.EffDate.Substring(0, 10) : DrugManuNo.EffDate);
+ SqlSugarHelper.Db.Updateable(item).UpdateColumns(it => new { it.DrugId, it.ManuNo, it.EffDate, it.PosNo }).ExecuteCommand();
- if (item.BoardType == 5)
+
+ //_screenUtil.SetStockInfo(item, 1);
+ });
+ Task.Factory.StartNew(() =>
+ {
+ SelectChannels.ForEach((item) =>
{
- _portUtil.WindowName = "BindingChannelDialog";
- // 向显示屏写入库位信息
- await _portUtil.WriteChannelInfo(1, DrugInfo.DrugName, item.DrawerNo, item.ColNo);
- await Task.Delay(200);
- await _portUtil.WriteChannelInfo(2, DrugInfo.DrugSpec, item.DrawerNo, item.ColNo);
- await Task.Delay(200);
- await _portUtil.WriteChannelInfo(8, DrugInfo.Manufactory, item.DrawerNo, item.ColNo);
- await Task.Delay(200);
- await _portUtil.WriteChannelInfo(6, DrugManuNo.ManuNo, item.DrawerNo, item.ColNo);
- await Task.Delay(200);
- await _portUtil.WriteChannelInfo(5, String.Format("{0:yyyy-MM-dd}", DrugManuNo.EffDate.Length>=10? DrugManuNo.EffDate.Substring(0,10): DrugManuNo.EffDate), item.DrawerNo, item.ColNo);
- await Task.Delay(200);
- _portUtil.ShowContent(item.DrawerNo, item.ColNo);
- }
- if (item.BoardType == 35)
- {
- _portUtil.WindowName = "BindingChannelDialog";
- await _portUtil.WriteChannelInfoMethod(1, DrugInfo.DrugName, item.DrawerNo, item.ColNo);
- await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(3, DrugInfo.DrugSpec, item.DrawerNo, item.ColNo);
- await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(4, DrugInfo.Manufactory, item.DrawerNo, item.ColNo);
- await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(5, item.EffDate, item.DrawerNo, item.ColNo);
- await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(6, item.ManuNo, item.DrawerNo, item.ColNo);
- await Task.Delay(200);
- await _portUtil.ShowContentMethod(item.DrawerNo, item.ColNo);
- }
- //_screenUtil.SetStockInfo(item, 1);
+ if (item.BoardType == 5)
+ {
+ _portUtil.WindowName = "BindingChannelDialog";
+ // 向显示屏写入库位信息
+ _portUtil.WriteChannelInfo(1, DrugInfo.DrugName, item.DrawerNo, item.ColNo);
+ Thread.Sleep(200);
+ _portUtil.WriteChannelInfo(2, DrugInfo.DrugSpec, item.DrawerNo, item.ColNo);
+ Thread.Sleep(200);
+ _portUtil.WriteChannelInfo(8, DrugInfo.Manufactory, item.DrawerNo, item.ColNo);
+ Thread.Sleep(200);
+ _portUtil.WriteChannelInfo(5, DrugManuNo.ManuNo, item.DrawerNo, item.ColNo);
+ Thread.Sleep(200);
+ _portUtil.WriteChannelInfo(6, String.Format("{0:yyyy-MM-dd}", DrugManuNo.EffDate.Length >= 10 ? DrugManuNo.EffDate.Substring(0, 10) : DrugManuNo.EffDate), item.DrawerNo, item.ColNo);
+ Thread.Sleep(200);
+ _portUtil.ShowContent(item.DrawerNo, item.ColNo);
+ }
+ if (item.BoardType == 35)
+ {
+
+ _portUtil.WindowName = "BindingChannelDialog";
+ Thread.Sleep(200);
+ _portUtil.WriteChannelInfoMethod(1, DrugInfo.DrugName, item.DrawerNo, item.ColNo);
+ Thread.Sleep(200);
+ _portUtil.WriteChannelInfoMethod(3, DrugInfo.DrugSpec, item.DrawerNo, item.ColNo);
+ Thread.Sleep(200);
+ _portUtil.WriteChannelInfoMethod(4, DrugInfo.Manufactory, item.DrawerNo, item.ColNo);
+ Thread.Sleep(200);
+ _portUtil.WriteChannelInfoMethod(5, item.EffDate, item.DrawerNo, item.ColNo);
+ Thread.Sleep(200);
+ _portUtil.WriteChannelInfoMethod(6, item.ManuNo, item.DrawerNo, item.ColNo);
+ Thread.Sleep(200);
+ _portUtil.ShowContentMethod(item.DrawerNo, item.ColNo);
+
+ }
+ });
});
GetChannelsByDrawerNo();
}
@@ -360,34 +373,41 @@ namespace DM_Weight.ViewModels
public DelegateCommand RemoveBinding
{
- get => new DelegateCommand(async () =>
+ get => new DelegateCommand(() =>
{
var SelectChannels = Channels.FindAll(item => item.IsSelected && item.Quantity == 0);
var c = SelectChannels.Count;
if (c > 0)
{
- SelectChannels.ForEach(async item =>
+ SelectChannels.ForEach(item =>
{
item.DrugId = null;
item.ManuNo = null;
item.EffDate = null;
item.DrugInfo = null;
SqlSugarHelper.Db.Updateable(item).UpdateColumns(it => new { it.DrugId, it.ManuNo, it.EffDate }).ExecuteCommand();
- if (item.BoardType == 5)
+ });
+ Task.Factory.StartNew(() =>
+ {
+ SelectChannels.ForEach(item =>
{
- // 清除显示屏库位信息
- _portUtil.ClearContent(item.DrawerNo, item.ColNo);
- await Task.Delay(200);
- _portUtil.ShowContent(item.DrawerNo, item.ColNo);
- }
- if(item.BoardType == 35)
- {
- _portUtil.ClearContentMethod(item.DrawerNo, item.ColNo);
- await Task.Delay(300);
- _portUtil.ShowContentMethod(item.DrawerNo,item.ColNo);
- }
+ if (item.BoardType == 5)
+ {
+ // 清除显示屏库位信息
+ _portUtil.ClearContent(item.DrawerNo, item.ColNo);
+ Thread.Sleep(200);
+ _portUtil.ShowContent(item.DrawerNo, item.ColNo);
+ }
+ if (item.BoardType == 35)
+ {
+ Thread.Sleep(200);
+ _portUtil.ClearContentMethod(item.DrawerNo, item.ColNo);
+ Thread.Sleep(200);
+ _portUtil.ShowContentMethod(item.DrawerNo, item.ColNo);
+ }
- //_screenUtil.SetStockInfo(item, 1);
+ //_screenUtil.SetStockInfo(item, 1);
+ });
});
GetChannelsByDrawerNo();
}
@@ -438,12 +458,12 @@ namespace DM_Weight.ViewModels
{
string str = @"SELECT d.drug_id,d.py_code,d.drug_barcode,d.drug_name,d.drug_brand_name,d.drug_spec,d.dosage,d.pack_unit,
d.manufactory,d.max_stock,CONCAT(drug_name,' ',drug_spec)as drug_name_spec FROM `drug_info` d";
- if(string.IsNullOrEmpty(text))
+ if (string.IsNullOrEmpty(text))
{
DrugInfos = SqlSugarHelper.Db.SqlQueryable(str).OrderBy(di => di.DrugName).OrderBy(di => di.DrugId).ToList();
return;
}
- if(DrugInfos!=null)
+ if (DrugInfos != null)
{
DrugInfos.Clear();
}
diff --git a/DM_Weight/ViewModels/CheckStockWindowViewModel.cs b/DM_Weight/ViewModels/CheckStockWindowViewModel.cs
index c231b6d..b225083 100644
--- a/DM_Weight/ViewModels/CheckStockWindowViewModel.cs
+++ b/DM_Weight/ViewModels/CheckStockWindowViewModel.cs
@@ -15,6 +15,7 @@ using DM_Weight.Models;
using DM_Weight.msg;
using DM_Weight.Port;
using DM_Weight.util;
+using System.Threading;
namespace DM_Weight.ViewModels
{
@@ -141,7 +142,7 @@ namespace DM_Weight.ViewModels
// 完成按钮
public DelegateCommand TakeFinish
{
- get => new DelegateCommand(async() =>
+ get => new DelegateCommand(() =>
{
_isFinishClick = true;
List record = ChannelStocks.FindAll(it => it.Quantity != it.CheckQuantity).ToList();
@@ -183,7 +184,7 @@ namespace DM_Weight.ViewModels
Operator = HomeWindowViewModel.Operator?.Id,
Reviewer = HomeWindowViewModel.Reviewer?.Id,
OperationTime = DateTime.Now,
- Quantity = it.CheckQuantity - it.Quantity,
+ Quantity = it.CheckQuantity - it.Quantity,
Type = 4,
InvoiceId = InvoiceId
//,StockQuantity = nowChannels.Sum(it => it.Quantity),
@@ -197,26 +198,27 @@ namespace DM_Weight.ViewModels
});
if (f.Data)
{
- // 更新屏显库存
- List singleChannels = record.FindAll(it => it.BoardType != 1);
- if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 5)
+ Task.Factory.StartNew(() =>
{
- singleChannels.ForEach(async it =>
+ // 更新屏显库存
+ List singleChannels = record.FindAll(it => it.BoardType != 1);
+ if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 5)
{
- await Task.Delay(200);
- _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.CheckQuantity);
- });
- }
- if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 35)
- {
- for (int i = 0; i < singleChannels.Count; i++)
- {
- await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(2, (singleChannels[i].Quantity + singleChannels[i].AddQuantity).ToString(), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
- await Task.Delay(200);
- await _portUtil.ShowContentMethod(singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ singleChannels.ForEach(it =>
+ {
+ _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.CheckQuantity);
+ Thread.Sleep(150);
+ });
}
- }
+ if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 35)
+ {
+ for (int i = 0; i < singleChannels.Count; i++)
+ {
+ _portUtil.WriteQuantityMethod((singleChannels[i].CheckQuantity), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ Thread.Sleep(150);
+ }
+ }
+ });
RequestData();
AlertMsg alertMsg = new AlertMsg
{
@@ -327,7 +329,7 @@ namespace DM_Weight.ViewModels
//这个方法用于拦截请求
public void OnNavigatedFrom(NavigationContext navigationContext)
- {
+ {
// 取消消息订阅
_eventAggregator.GetEvent().Unsubscribe(DoMyPrismEvent);
}
diff --git a/DM_Weight/ViewModels/DrawerAddDrugWindowViewModel.cs b/DM_Weight/ViewModels/DrawerAddDrugWindowViewModel.cs
index 6bdcd5b..6a45b98 100644
--- a/DM_Weight/ViewModels/DrawerAddDrugWindowViewModel.cs
+++ b/DM_Weight/ViewModels/DrawerAddDrugWindowViewModel.cs
@@ -16,6 +16,7 @@ using DM_Weight.Models;
using DM_Weight.msg;
using DM_Weight.Port;
using DM_Weight.util;
+using System.Threading;
namespace DM_Weight.ViewModels
{
@@ -185,7 +186,7 @@ namespace DM_Weight.ViewModels
// 完成按钮
public DelegateCommand TakeFinish
{
- get => new DelegateCommand(async() =>
+ get => new DelegateCommand(() =>
{
if (!_isFinishClick)
{
@@ -327,38 +328,41 @@ namespace DM_Weight.ViewModels
});
if (f.Data)
{
- List singleChannels = ChannelStocks.Where(it => it.BoardType != 1)
- .GroupBy(it => it.ColNo)
- .Select(it =>
- {
- var ret = it.First();
- ret.Quantity = it.Sum(itx => itx.Quantity);
- ret.AddQuantity = it.Sum(itx => itx.AddQuantity);
- return ret;
- }).ToList();
- singleChannels = singleChannels.Where(it => it.AddQuantity > 0).ToList();
- if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 5)
+ Task.Factory.StartNew(() =>
{
- //将库位多批次的总库存数更新标签
- //_portUtil.WriteQuantity(singleChannels[0].DrawerNo, singleChannels[0].ColNo, singleChannels.Sum(it => it.Quantity) - singleChannels.Sum(it => it.TakeQuantity));
-
- singleChannels.ForEach(async it =>
+ List singleChannels = ChannelStocks.Where(it => it.BoardType != 1)
+ .GroupBy(it => it.ColNo)
+ .Select(it =>
+ {
+ var ret = it.First();
+ ret.Quantity = it.Sum(itx => itx.Quantity);
+ ret.AddQuantity = it.Sum(itx => itx.AddQuantity);
+ return ret;
+ }).ToList();
+ singleChannels = singleChannels.Where(it => it.AddQuantity > 0).ToList();
+ if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 5)
{
+ //将库位多批次的总库存数更新标签
+ //_portUtil.WriteQuantity(singleChannels[0].DrawerNo, singleChannels[0].ColNo, singleChannels.Sum(it => it.Quantity) - singleChannels.Sum(it => it.TakeQuantity));
- await Task.Delay(200);
- _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.Quantity + it.AddQuantity);
- });
- }
- if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 35)
- {
- for (int i = 0; i < singleChannels.Count; i++)
- {
- await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(2, (singleChannels[i].Quantity + singleChannels[i].AddQuantity).ToString(), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
- await Task.Delay(200);
- await _portUtil.ShowContentMethod(singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ singleChannels.ForEach(it =>
+ {
+ _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.Quantity + it.AddQuantity);
+ Thread.Sleep(150);
+ });
}
- }
+ if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 35)
+ {
+ for (int i = 0; i < singleChannels.Count; i++)
+ {
+ _portUtil.WriteQuantityMethod((singleChannels[i].Quantity + singleChannels[i].AddQuantity), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ //await _portUtil.WriteChannelInfoMethod(2, (singleChannels[i].Quantity + singleChannels[i].AddQuantity).ToString(), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ //await Task.Delay(200);
+ //await _portUtil.ShowContentMethod(singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ Thread.Sleep(150);
+ }
+ }
+ });
RequestData();
AlertMsg alertMsg = new AlertMsg
{
diff --git a/DM_Weight/ViewModels/DrawerTakeDrugWindowViewModel.cs b/DM_Weight/ViewModels/DrawerTakeDrugWindowViewModel.cs
index 194d18f..824c9c4 100644
--- a/DM_Weight/ViewModels/DrawerTakeDrugWindowViewModel.cs
+++ b/DM_Weight/ViewModels/DrawerTakeDrugWindowViewModel.cs
@@ -39,7 +39,7 @@ namespace DM_Weight.ViewModels
private static readonly DateTime Jan1st1970 = new DateTime
(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
- private bool _openBoxVisibility=false;
+ private bool _openBoxVisibility = false;
public bool OpenBoxVisibility
{
get => _openBoxVisibility;
@@ -339,27 +339,33 @@ namespace DM_Weight.ViewModels
return ret;
}).ToList();
singleChannels = singleChannels.Where(it => it.TakeQuantity > 0).ToList();
- if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 5)
+ Task.Factory.StartNew(() =>
{
- //将库位多批次的总库存数更新标签
- //_portUtil.WriteQuantity(singleChannels[0].DrawerNo, singleChannels[0].ColNo, singleChannels.Sum(it => it.Quantity) - singleChannels.Sum(it => it.TakeQuantity));
+ if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 5)
+ {
+ //将库位多批次的总库存数更新标签
+ //_portUtil.WriteQuantity(singleChannels[0].DrawerNo, singleChannels[0].ColNo, singleChannels.Sum(it => it.Quantity) - singleChannels.Sum(it => it.TakeQuantity));
- singleChannels.ForEach(async it =>
+ singleChannels.ForEach(it =>
+ {
+ _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.Quantity - it.TakeQuantity);
+ Thread.Sleep(150);
+ });
+ }
+ if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 35)
{
- await Task.Delay(200);
- _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.Quantity - it.TakeQuantity);
- });
- }
- if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 35)
- {
- singleChannels.ForEach(async it =>
- {
- await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(2, (it.Quantity - it.TakeQuantity).ToString(), it.DrawerNo, it.ColNo);
- await Task.Delay(200);
- await _portUtil.ShowContentMethod(it.DrawerNo, it.ColNo);
- });
- }
+
+ singleChannels.ForEach(it =>
+ {
+ //await Task.Delay(200);
+ //_portUtil.WriteChannelInfoMethod(2, (it.Quantity - it.TakeQuantity).ToString(), it.DrawerNo, it.ColNo);
+ //await Task.Delay(200);
+ //_portUtil.ShowContentMethod(it.DrawerNo, it.ColNo);
+ _portUtil.WriteQuantityMethod((it.Quantity - it.TakeQuantity), it.DrawerNo, it.ColNo);
+ Thread.Sleep(150);
+ });
+ }
+ });
RequestData();
AlertMsg alertMsg = new AlertMsg
{
diff --git a/DM_Weight/ViewModels/InvoiceAddDialogViewModel.cs b/DM_Weight/ViewModels/InvoiceAddDialogViewModel.cs
index db5b13d..0b4745a 100644
--- a/DM_Weight/ViewModels/InvoiceAddDialogViewModel.cs
+++ b/DM_Weight/ViewModels/InvoiceAddDialogViewModel.cs
@@ -224,7 +224,7 @@ namespace DM_Weight.ViewModels
// 完成按钮
public DelegateCommand TakeFinish
{
- get => new DelegateCommand(async () =>
+ get => new DelegateCommand(() =>
{
if (!_isFinishClick)
{
@@ -233,14 +233,16 @@ namespace DM_Weight.ViewModels
string InvoiceId = Invoice.InvoiceNo;
var f = SqlSugarHelper.Db.UseTran(() =>
{
- SqlSugarHelper.Db.Updateable(new InOutInvoice()
- {
- Status = 1,
- InvoiceNo = Invoice.InvoiceNo
- }).UpdateColumns(it => new { it.Status }).WhereColumns(it => new { it.InvoiceNo }).ExecuteCommand();
for (int i = 0; i < record.Count; i++)
{
+ SqlSugarHelper.Db.Updateable(new InOutInvoice()
+ {
+ Status = 3,
+ InvoiceNo = Invoice.InvoiceNo,
+ DrugId= record[i].DrugId,
+ DrugManuNo = record[i].ManuNo
+ }).UpdateColumns(it => new { it.Status }).WhereColumns(it => new { it.InvoiceNo,it.DrugId,it.DrugManuNo }).ExecuteCommand();
ChannelStock it = record[i];
if (it.BoardType == 6 && it.PosNo == 0)
{
@@ -369,27 +371,31 @@ namespace DM_Weight.ViewModels
});
if (f.Data)
{
- // 更新屏显库存
- List singleChannels = record.FindAll(it => it.BoardType != 1);
- if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 5)
+ Task.Factory.StartNew(() =>
{
- singleChannels.ForEach(async it =>
+ // 更新屏显库存
+ List singleChannels = record.FindAll(it => it.BoardType != 1);
+ if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 5)
{
- await Task.Delay(200);
- _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.Quantity + it.AddQuantity);
- });
- }
- if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 35)
- {
- for (int i = 0; i < singleChannels.Count; i++)
- {
- await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(2, (singleChannels[i].Quantity + singleChannels[i].AddQuantity).ToString(), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
- await Task.Delay(200);
- await _portUtil.ShowContentMethod(singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ singleChannels.ForEach(it =>
+ {
+ _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.Quantity + it.AddQuantity);
+ Thread.Sleep(100);
+ });
}
- }
-
+ if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 35)
+ {
+ for (int i = 0; i < singleChannels.Count; i++)
+ {
+ //await Task.Delay(200);
+ //_portUtil.WriteChannelInfoMethod(2, (singleChannels[i].Quantity + singleChannels[i].AddQuantity).ToString(), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ //await Task.Delay(200);
+ //_portUtil.ShowContentMethod(singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ _portUtil.WriteQuantityMethod((singleChannels[i].Quantity + singleChannels[i].AddQuantity), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ Thread.Sleep(100);
+ }
+ }
+ });
AlertMsg alertMsg = new AlertMsg
{
diff --git a/DM_Weight/ViewModels/InvoiceInWindowViewModel.cs b/DM_Weight/ViewModels/InvoiceInWindowViewModel.cs
index 6345ba1..8e2434d 100644
--- a/DM_Weight/ViewModels/InvoiceInWindowViewModel.cs
+++ b/DM_Weight/ViewModels/InvoiceInWindowViewModel.cs
@@ -194,18 +194,19 @@ namespace DM_Weight.ViewModels
ChannelStocks.Clear();
InOutInvoices.Clear();
List i = new List();
+ //string strMsg = string.Empty;
if (SelectedInvoice != null)
{
var invoices = SqlSugarHelper.Db.Queryable()
.Includes(i => i.DrugInfo)
- .InnerJoin(SqlSugarHelper.Db.Queryable().Where(cs => cs.DrawerType == 1).Where(cs => cs.MachineId.Equals(ConfigurationManager.AppSettings["machineId"] ?? "DM1")).GroupBy(cs => cs.DrugId), (i, t) => i.DrugId == t.DrugId)
- .Where(i => i.InvoiceNo == SelectedInvoice.InvoiceNo)
+ .LeftJoin(SqlSugarHelper.Db.Queryable().Where(cs => cs.DrawerType == 1).Where(cs => cs.MachineId.Equals(ConfigurationManager.AppSettings["machineId"] ?? "DM1")).GroupBy(cs => cs.DrugId), (i, t) => i.DrugId == t.DrugId)
+ .Where(i => i.InvoiceNo == SelectedInvoice.InvoiceNo&&i.Status==1&&i.Type==2&&i.CancelFlag==0)
.ToList();
foreach (var invoice in invoices)
{
List q = SqlSugarHelper.Db.Queryable()
.Includes(cs => cs.DrugInfo)
- .WhereIF(!string.IsNullOrEmpty(invoice.DrugEffDate), cs => cs.EffDate.Equals(invoice.DrugEffDate))
+ .WhereIF(!string.IsNullOrEmpty(invoice.DrugEffDate), cs => cs.EffDate.Equals(invoice.DrugEffDate.Substring(0, 10)))
.WhereIF(!string.IsNullOrEmpty(invoice.DrugManuNo), cs => cs.ManuNo.Equals(invoice.DrugManuNo))
.Where(cs => cs.DrugId == invoice.DrugId)
.Where(cs => cs.DrawerType == 1)
@@ -215,14 +216,23 @@ namespace DM_Weight.ViewModels
.OrderBy(cs => cs.ColNo)
.ToList();
-
-
-
- for (int j = 0; j < q.Count;j++)
+ if (q.Count <= 0)
+ {
+ //strMsg += $"药品{invoice.DrugInfo.DrugName}未绑定;";
+ ChannelStock cs= new ChannelStock();
+ cs.ColNo = -1;
+ cs.EffDate = invoice.DrugEffDate;
+ cs.ManuNo=invoice.DrugManuNo;
+ cs.DrugInfo = invoice.DrugInfo;
+ cs.Quantity = 0;
+ q.Add(cs);
+ }
+ for (int j = 0; j < q.Count; j++)
{
ChannelStock item = q[j];
- if(j == 0)
+ if (j == 0)
{
+ invoice.quantity = invoice.Units == "盒" ? invoice.quantity * invoice.DrugInfo.ConvertRatio : invoice.quantity;
item.AddQuantity = invoice.quantity;
}
item.Invoice = invoice;
@@ -235,7 +245,26 @@ namespace DM_Weight.ViewModels
ICollectionView vw = CollectionViewSource.GetDefaultView(i);
vw.GroupDescriptions.Add(new PropertyGroupDescription("Invoice"));
ChannelStocks = i;
-
+ //if (ChannelStocks == null || ChannelStocks.Count <= 0)
+ //{
+ // AlertMsg alertMsg = new AlertMsg
+ // {
+ // Message = "调拨单内药品未绑定,请先绑定",
+ // Type = MsgType.ERROR,
+ // };
+ // _eventAggregator.GetEvent().Publish(alertMsg);
+ // return;
+ //}
+ //if (strMsg.Length > 0)
+ //{
+ // AlertMsg alertMsg = new AlertMsg
+ // {
+ // Message = strMsg,
+ // Type = MsgType.ERROR,
+ // };
+ // _eventAggregator.GetEvent().Publish(alertMsg);
+ // return;
+ //}
}
public DelegateCommand OpenInvoiceAdd
@@ -243,18 +272,18 @@ namespace DM_Weight.ViewModels
get => new DelegateCommand(() =>
{
bool flag = true;
- for (int i = 0; i < InOutInvoices.Count; i++)
- {
- InOutInvoice invoices = InOutInvoices[i];
- if (invoices.quantity != ChannelStocks.FindAll(it => it.DrugId == invoices.DrugId).Sum(it => it.AddQuantity))
- {
- flag = false;
- break;
- }
- }
+ //for (int i = 0; i < InOutInvoices.Count; i++)
+ //{
+ // InOutInvoice invoices = InOutInvoices[i];
+ // if (invoices.quantity != ChannelStocks.FindAll(it => it.DrugId == invoices.DrugId).Sum(it => it.AddQuantity))
+ // {
+ // flag = false;
+ // break;
+ // }
+ //}
if (flag)
{
- AddChannels = ChannelStocks.FindAll(it => it.AddQuantity != 0);
+ AddChannels = ChannelStocks.FindAll(it => it.AddQuantity != 0&&it.Location!="未绑定");
AddChannels.Sort((a, b) =>
{
if ((a.DrawerNo - b.DrawerNo) == 0)
@@ -264,16 +293,17 @@ namespace DM_Weight.ViewModels
return a.DrawerNo - b.DrawerNo;
});
OpenOrderDialog();
- } else
- {
- AlertMsg alertMsg = new AlertMsg
- {
- Message = "库位添加数量小于应添加数量",
- Type = MsgType.ERROR,
- };
- _eventAggregator.GetEvent().Publish(alertMsg);
}
- },() => SelectedInvoice !=null).ObservesProperty(() => SelectedInvoice);
+ //else
+ //{
+ // AlertMsg alertMsg = new AlertMsg
+ // {
+ // Message = "库位添加数量小于应添加数量",
+ // Type = MsgType.ERROR,
+ // };
+ // _eventAggregator.GetEvent().Publish(alertMsg);
+ //}
+ }, () => SelectedInvoice != null).ObservesProperty(() => SelectedInvoice);
}
@@ -323,16 +353,17 @@ namespace DM_Weight.ViewModels
int totalCount = 0;
var sb = new StringBuilder();
- sb.Append("select i.invoice_no as InvoiceNo, i.invoice_date as InvoiceDate, COUNT(i.id) as `Count`, SUM(i.quantity) as quantity, p1.pharmacy_name as PharmacyName1, p2.pharmacy_name as PharmacyName2 from in_out_invoice i");
- sb.Append(" inner join ( select c.drug_id as drug_id from channel_stock c where c.machine_id = '" + (ConfigurationManager.AppSettings["machineId"] ?? "DM1") + "' group by c.drug_id ) di on di.drug_id = i.drug_id");
+ sb.Append("select i.invoice_no as InvoiceNo, i.invoice_date as InvoiceDate, COUNT(i.id) as `Count`, SUM(IF(i.units='盒',i.quantity*dr.convert_ratio,i.quantity)) as quantity, p1.pharmacy_name as PharmacyName1, p2.pharmacy_name as PharmacyName2 from in_out_invoice i");
+ sb.Append(" inner join drug_info dr on i.drug_id=dr.drug_id ");
+ sb.Append(" left join ( select c.drug_id as drug_id from channel_stock c where c.machine_id = '" + (ConfigurationManager.AppSettings["machineId"] ?? "DM1") + "' group by c.drug_id ) di on di.drug_id = i.drug_id");
sb.Append(" left join pharmacy_info p1 on p1.pharmacy = i.in_pharmacy_id");
sb.Append(" left join pharmacy_info p2 on p2.pharmacy = i.out_pharmacy_id");
sb.Append(" where i.status=@Status ");
- sb.Append(" and i.type!=@type ");
+ sb.Append(" and i.type=@type ");
sb.Append(" and i.cancel_flag=@CancelFlag ");
if (OrderDate != null)
{
- sb.Append(" and i.invoice_date = @CreateTime ");
+ sb.Append(" and DATE_FORMAT(i.invoice_date,'%Y-%m-%d') = @CreateTime ");
}
if (!String.IsNullOrEmpty(SearchValue))
{
@@ -347,7 +378,7 @@ namespace DM_Weight.ViewModels
Invoices = SqlSugarHelper.Db.SqlQueryable(sb.ToString())
.AddParameters(new
{
- Status = 0,
+ Status = 1,
type = 2,
CancelFlag = 0,
CreateTime = OrderDate,
diff --git a/DM_Weight/ViewModels/InvoiceTakeDialogViewModel.cs b/DM_Weight/ViewModels/InvoiceTakeDialogViewModel.cs
index 5c32dbd..f5160a8 100644
--- a/DM_Weight/ViewModels/InvoiceTakeDialogViewModel.cs
+++ b/DM_Weight/ViewModels/InvoiceTakeDialogViewModel.cs
@@ -288,7 +288,7 @@ namespace DM_Weight.ViewModels
// 完成按钮
public DelegateCommand TakeFinish
{
- get => new DelegateCommand(async() =>
+ get => new DelegateCommand(() =>
{
if (!_isFinishClick)
{
@@ -301,7 +301,7 @@ namespace DM_Weight.ViewModels
{
SqlSugarHelper.Db.Updateable(new InOutInvoice()
{
- Status = 1,
+ Status = 3,
InvoiceNo = Invoice.InvoiceNo
}).UpdateColumns(it => new { it.Status }).WhereColumns(it => new { it.InvoiceNo }).ExecuteCommand();
@@ -433,26 +433,31 @@ namespace DM_Weight.ViewModels
});
if (f.Data)
{
- // 更新屏显库存
- List singleChannels = record.FindAll(it => it.BoardType != 1);
- if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 5)
+ Task.Factory.StartNew(() =>
{
- singleChannels.ForEach(async it =>
+ // 更新屏显库存
+ List singleChannels = record.FindAll(it => it.BoardType != 1);
+ if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 5)
{
- await Task.Delay(200);
- _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.Quantity - it.TakeQuantity);
- });
- }
- if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 35)
- {
- for (int i = 0; i < singleChannels.Count; i++)
- {
- await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(2, (singleChannels[i].Quantity - singleChannels[i].TakeQuantity).ToString(), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
- await Task.Delay(200);
- await _portUtil.ShowContentMethod(singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ singleChannels.ForEach(it =>
+ {
+ _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.Quantity - it.TakeQuantity);
+ Thread.Sleep(100);
+ });
}
- }
+ if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 35)
+ {
+ for (int i = 0; i < singleChannels.Count; i++)
+ {
+ //await Task.Delay(200);
+ //_portUtil.WriteChannelInfoMethod(2, (singleChannels[i].Quantity - singleChannels[i].TakeQuantity).ToString(), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ //await Task.Delay(200);
+ //_portUtil.ShowContentMethod(singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ _portUtil.WriteQuantityMethod((singleChannels[i].Quantity - singleChannels[i].TakeQuantity), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ Thread.Sleep(100);
+ }
+ }
+ });
AlertMsg alertMsg = new AlertMsg
{
Message = "调拨取药完成,库存已更新",
diff --git a/DM_Weight/ViewModels/OrderReturnDialogViewModel.cs b/DM_Weight/ViewModels/OrderReturnDialogViewModel.cs
index 22e2bdc..66856a0 100644
--- a/DM_Weight/ViewModels/OrderReturnDialogViewModel.cs
+++ b/DM_Weight/ViewModels/OrderReturnDialogViewModel.cs
@@ -283,7 +283,7 @@ namespace DM_Weight.ViewModels
// 完成按钮
public DelegateCommand TakeFinish
{
- get => new DelegateCommand(async() =>
+ get => new DelegateCommand(() =>
{
if (!_isFinishClick)
{
@@ -427,26 +427,27 @@ namespace DM_Weight.ViewModels
});
if (f.Data)
{
- // 更新屏显库存
- List singleChannels = record.FindAll(it => it.BoardType != 1);
- if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 5)
+ Task.Factory.StartNew(() =>
{
- singleChannels.ForEach(async it =>
+ // 更新屏显库存
+ List singleChannels = record.FindAll(it => it.BoardType != 1);
+ if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 5)
{
- await Task.Delay(200);
- _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.Quantity + it.TakeQuantity);
- });
- }
- if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 35)
- {
- for (int i = 0; i < singleChannels.Count; i++)
- {
- await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(2, (singleChannels[i].Quantity + singleChannels[i].TakeQuantity).ToString(), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
- await Task.Delay(200);
- await _portUtil.ShowContentMethod(singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ singleChannels.ForEach(it =>
+ {
+ Thread.Sleep(100);
+ _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.Quantity + it.TakeQuantity);
+ });
}
- }
+ if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 35)
+ {
+ for (int i = 0; i < singleChannels.Count; i++)
+ {
+ _portUtil.WriteQuantityMethod((singleChannels[i].Quantity + singleChannels[i].TakeQuantity), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ Thread.Sleep(100);
+ }
+ }
+ });
AlertMsg alertMsg = new AlertMsg
{
Message = "处方退药完成,库存已更新",
diff --git a/DM_Weight/ViewModels/OrderTakeDialogViewModel.cs b/DM_Weight/ViewModels/OrderTakeDialogViewModel.cs
index fdb3a11..482a5fe 100644
--- a/DM_Weight/ViewModels/OrderTakeDialogViewModel.cs
+++ b/DM_Weight/ViewModels/OrderTakeDialogViewModel.cs
@@ -457,8 +457,8 @@ namespace DM_Weight.ViewModels
{
singleChannels.ForEach(async it =>
{
- await Task.Delay(200);
_portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.Quantity - it.TakeQuantity);
+ Thread.Sleep(150);
});
}
@@ -467,10 +467,13 @@ namespace DM_Weight.ViewModels
{
for (int i = 0; i < singleChannels.Count; i++)
{
+ //await Task.Delay(200);
+ //_portUtil.WriteChannelInfoMethod(2, (singleChannels[i].Quantity - singleChannels[i].TakeQuantity).ToString(), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ //await Task.Delay(200);
+ //_portUtil.ShowContentMethod(singleChannels[i].DrawerNo, singleChannels[i].ColNo);
await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(2, (singleChannels[i].Quantity - singleChannels[i].TakeQuantity).ToString(), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ _portUtil.WriteQuantityMethod((singleChannels[i].Quantity - singleChannels[i].TakeQuantity), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
await Task.Delay(200);
- await _portUtil.ShowContentMethod(singleChannels[i].DrawerNo, singleChannels[i].ColNo);
}
}
AlertMsg alertMsg = new AlertMsg
diff --git a/DM_Weight/ViewModels/ReturnDrugDialogViewModel.cs b/DM_Weight/ViewModels/ReturnDrugDialogViewModel.cs
index f629786..dbbd88b 100644
--- a/DM_Weight/ViewModels/ReturnDrugDialogViewModel.cs
+++ b/DM_Weight/ViewModels/ReturnDrugDialogViewModel.cs
@@ -16,6 +16,7 @@ using DM_Weight.Models;
using DM_Weight.msg;
using DM_Weight.Port;
using DM_Weight.util;
+using System.Threading;
namespace DM_Weight.ViewModels
{
@@ -223,7 +224,7 @@ namespace DM_Weight.ViewModels
// 完成按钮
public DelegateCommand TakeFinish
{
- get => new DelegateCommand(async() =>
+ get => new DelegateCommand(() =>
{
IsFinishClick = true;
string InvoiceId = "RETURN_" + CurrentTimeMillis();
@@ -359,19 +360,23 @@ namespace DM_Weight.ViewModels
});
if (f.Data)
{
- // 更新屏显库存
- if (ChannelStock.BoardType == 5)
+ Task.Factory.StartNew(() =>
{
- await Task.Delay(200);
- _portUtil.WriteQuantity(ChannelStock.DrawerNo, ChannelStock.ColNo, ChannelStock.Quantity + ReturnQuantity);
- }
- if(ChannelStock.BoardType==35)
- {
- await _portUtil.WriteChannelInfoMethod(2, (ChannelStock.Quantity + ChannelStock.ReturnQuantity).ToString(), ChannelStock.DrawerNo, ChannelStock.ColNo);
- await Task.Delay(200);
- await _portUtil.ShowContentMethod(ChannelStock.DrawerNo, ChannelStock.ColNo);
- }
-
+ // 更新屏显库存
+ if (ChannelStock.BoardType == 5)
+ {
+ _portUtil.WriteQuantity(ChannelStock.DrawerNo, ChannelStock.ColNo, ChannelStock.Quantity + ReturnQuantity);
+ Thread.Sleep(100);
+ }
+ if (ChannelStock.BoardType == 35)
+ {
+ //_portUtil.WriteChannelInfoMethod(2, (ChannelStock.Quantity + ChannelStock.ReturnQuantity).ToString(), ChannelStock.DrawerNo, ChannelStock.ColNo);
+ //await Task.Delay(200);
+ //_portUtil.ShowContentMethod(ChannelStock.DrawerNo, ChannelStock.ColNo);
+ _portUtil.WriteQuantityMethod((ChannelStock.Quantity + ChannelStock.TakeQuantity), ChannelStock.DrawerNo, ChannelStock.ColNo);
+ Thread.Sleep(100);
+ }
+ });
AlertMsg alertMsg = new AlertMsg
{
Message = "操作完成,库存已更新",
diff --git a/DM_Weight/ViewModels/RoleManagerWindowViewModel.cs b/DM_Weight/ViewModels/RoleManagerWindowViewModel.cs
index 18097d2..8725f6e 100644
--- a/DM_Weight/ViewModels/RoleManagerWindowViewModel.cs
+++ b/DM_Weight/ViewModels/RoleManagerWindowViewModel.cs
@@ -373,12 +373,19 @@ namespace DM_Weight.ViewModels
PremissionName = "账册",
PremissionPath = "AccountWindow",
};
+ PremissionDm kuguan7 = new PremissionDm
+ {
+ Id = 47,
+ PremissionName = "使用账册",
+ PremissionPath = "UseAccountWindow",
+ };
kuguanChild.Add(kuguan1);
kuguanChild.Add(kuguan2);
kuguanChild.Add(kuguan3);
kuguanChild.Add(kuguan4);
kuguanChild.Add(kuguan5);
kuguanChild.Add(kuguan6);
+ kuguanChild.Add(kuguan7);
kuguan.Children = kuguanChild;
defaultAll.Add(kuguan);
#endregion
diff --git a/DM_Weight/ViewModels/SelfAddDialogViewModel.cs b/DM_Weight/ViewModels/SelfAddDialogViewModel.cs
index 4f78978..f18c4df 100644
--- a/DM_Weight/ViewModels/SelfAddDialogViewModel.cs
+++ b/DM_Weight/ViewModels/SelfAddDialogViewModel.cs
@@ -218,7 +218,7 @@ namespace DM_Weight.ViewModels
// 完成按钮
public DelegateCommand TakeFinish
{
- get => new DelegateCommand(async () =>
+ get => new DelegateCommand(() =>
{
if (!_isFinishClick)
{
@@ -361,34 +361,38 @@ namespace DM_Weight.ViewModels
});
if (f.Data)
{
- // 更新屏显库存
- List singleChannels = record.FindAll(it => it.BoardType != 1);
- if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 5)
+ Task.Factory.StartNew(() =>
{
- singleChannels.ForEach(async it =>
+ // 更新屏显库存
+ List singleChannels = record.FindAll(it => it.BoardType != 1);
+ if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 5)
{
-
- await Task.Delay(200);
- _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.Quantity + it.AddQuantity);
- });
- }
- if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 35)
- {
- for (int i = 0; i < singleChannels.Count; i++)
- {
- await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(2, (singleChannels[i].Quantity + singleChannels[i].AddQuantity).ToString(), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
- await Task.Delay(200);
- await _portUtil.ShowContentMethod(singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ singleChannels.ForEach(it =>
+ {
+ _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.Quantity + it.AddQuantity);
+ Thread.Sleep(150);
+ });
}
- //singleChannels.ForEach(async it =>
- //{
- // await _portUtil.WriteChannelInfoMethod(2, (it.Quantity + it.AddQuantity).ToString(), it.DrawerNo, it.ColNo);
- // await Task.Delay(200);
- // await _portUtil.ShowContentMethod(it.DrawerNo, it.ColNo);
- //});
- }
+ if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 35)
+ {
+ for (int i = 0; i < singleChannels.Count; i++)
+ {
+ //await Task.Delay(200);
+ //_portUtil.WriteChannelInfoMethod(2, (singleChannels[i].Quantity + singleChannels[i].AddQuantity).ToString(), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ //await Task.Delay(200);
+ //_portUtil.ShowContentMethod(singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ _portUtil.WriteQuantityMethod((singleChannels[i].Quantity + singleChannels[i].AddQuantity), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ Thread.Sleep(150);
+ }
+ //singleChannels.ForEach(async it =>
+ //{
+ // await _portUtil.WriteChannelInfoMethod(2, (it.Quantity + it.AddQuantity).ToString(), it.DrawerNo, it.ColNo);
+ // await Task.Delay(200);
+ // await _portUtil.ShowContentMethod(it.DrawerNo, it.ColNo);
+ //});
+ }
+ });
AlertMsg alertMsg = new AlertMsg
{
Message = "操作完成,库存已更新",
diff --git a/DM_Weight/ViewModels/SelfTakeDialogViewModel.cs b/DM_Weight/ViewModels/SelfTakeDialogViewModel.cs
index 05584f2..f94b1f6 100644
--- a/DM_Weight/ViewModels/SelfTakeDialogViewModel.cs
+++ b/DM_Weight/ViewModels/SelfTakeDialogViewModel.cs
@@ -199,7 +199,7 @@ namespace DM_Weight.ViewModels
// 完成按钮
public DelegateCommand TakeFinish
{
- get => new DelegateCommand(async() =>
+ get => new DelegateCommand(() =>
{
if (!_isFinishClick)
{
@@ -336,25 +336,31 @@ namespace DM_Weight.ViewModels
if (f.Data)
{
// 更新屏显库存
- List singleChannels = record.FindAll(it => it.BoardType != 1);
- if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 5)
+ Task.Factory.StartNew(() =>
{
- singleChannels.ForEach(async it =>
+ List singleChannels = record.FindAll(it => it.BoardType != 1);
+ if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 5)
{
- await Task.Delay(200);
- _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.Quantity - it.TakeQuantity);
- });
- }
- if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 35)
- {
- for (int i = 0; i < singleChannels.Count; i++)
- {
- await Task.Delay(200);
- await _portUtil.WriteChannelInfoMethod(2, (singleChannels[i].Quantity - singleChannels[i].TakeQuantity).ToString(), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
- await Task.Delay(200);
- await _portUtil.ShowContentMethod(singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ singleChannels.ForEach(async it =>
+ {
+ _portUtil.WriteQuantity(it.DrawerNo, it.ColNo, it.Quantity - it.TakeQuantity);
+ Thread.Sleep(150);
+ });
}
- }
+ if ((singleChannels.Count > 0 ? singleChannels[0].BoardType : 1) == 35)
+ {
+
+ for (int i = 0; i < singleChannels.Count; i++)
+ {
+ //await Task.Delay(200);
+ //_portUtil.WriteChannelInfoMethod(2, (singleChannels[i].Quantity - singleChannels[i].TakeQuantity).ToString(), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ //await Task.Delay(200);
+ //_portUtil.ShowContentMethod(singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ _portUtil.WriteQuantityMethod((singleChannels[i].Quantity - singleChannels[i].TakeQuantity), singleChannels[i].DrawerNo, singleChannels[i].ColNo);
+ Thread.Sleep(150);
+ }
+ }
+ });
AlertMsg alertMsg = new AlertMsg
{
diff --git a/DM_Weight/ViewModels/UseAccountWindowViewModel.cs b/DM_Weight/ViewModels/UseAccountWindowViewModel.cs
new file mode 100644
index 0000000..a3c0de7
--- /dev/null
+++ b/DM_Weight/ViewModels/UseAccountWindowViewModel.cs
@@ -0,0 +1,74 @@
+using DM_Weight.Report;
+using Prism.Commands;
+using Prism.Mvvm;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace DM_Weight.ViewModels
+{
+ public class UseAccountWindowViewModel:BindableBase
+ {
+ private DateTime? _startDate = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day);
+
+ private DateTime? nowDate = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day);
+
+ public DateTime? StartDate
+ {
+ get => _startDate;
+ set
+ {
+ if (value != null)
+ {
+ SetProperty(ref _startDate, new DateTime(value?.Year ?? 0, value?.Month ?? 0, value?.Day ?? 0));
+ }
+ else
+ {
+ SetProperty(ref _startDate, value);
+ }
+ }
+ }
+
+ private DateTime? _endDate = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, 23, 59, 59);
+
+ public DateTime? EndDate
+ {
+ get => _endDate;
+ set
+ {
+ if (value != null)
+ {
+ TimeSpan ershisi = new TimeSpan(23, 59, 59);
+ SetProperty(ref _endDate, new DateTime(value?.Year ?? 0, value?.Month ?? 0, value?.Day ?? 0, 23, 59, 59));
+ }
+ else
+ {
+ SetProperty(ref _endDate, value);
+ }
+ }
+ }
+ private string _name;
+ public string Name { get => _name; set { SetProperty(ref _name, value); } }
+ private static readonly DateTime Jan1st1970 = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
+ public long CurrentTimeMillis()
+ {
+ return (long)(DateTime.UtcNow - Jan1st1970).TotalMilliseconds;
+ }
+
+ ///
+ /// 导出账册
+ ///
+ public DelegateCommand DownloadAccountBook
+ {
+ get => new DelegateCommand(() =>
+ {
+ GridReportUtil.UserAccount(StartDate, EndDate, Name ?? "");
+
+ });
+ }
+
+ public bool KeepAlive => true;
+ }
+}
diff --git a/DM_Weight/Views/Dialog/BindingChannelDialog.xaml b/DM_Weight/Views/Dialog/BindingChannelDialog.xaml
index a383533..ff930d7 100644
--- a/DM_Weight/Views/Dialog/BindingChannelDialog.xaml
+++ b/DM_Weight/Views/Dialog/BindingChannelDialog.xaml
@@ -88,7 +88,7 @@
Margin="12 0 12 0">
-
+
diff --git a/DM_Weight/Views/UseAccountWindow.xaml b/DM_Weight/Views/UseAccountWindow.xaml
new file mode 100644
index 0000000..8da871d
--- /dev/null
+++ b/DM_Weight/Views/UseAccountWindow.xaml
@@ -0,0 +1,69 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/DM_Weight/Views/UseAccountWindow.xaml.cs b/DM_Weight/Views/UseAccountWindow.xaml.cs
new file mode 100644
index 0000000..8d4a6be
--- /dev/null
+++ b/DM_Weight/Views/UseAccountWindow.xaml.cs
@@ -0,0 +1,28 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Data;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Imaging;
+using System.Windows.Navigation;
+using System.Windows.Shapes;
+
+namespace DM_Weight.Views
+{
+ ///
+ /// UseAccountWindow.xaml 的交互逻辑
+ ///
+ public partial class UseAccountWindow : UserControl
+ {
+ public UseAccountWindow()
+ {
+ InitializeComponent();
+ }
+ }
+}