From a25f95d7f561361575a96defa2a40e061cc654c2 Mon Sep 17 00:00:00 2001 From: SoulStar Date: Wed, 13 May 2026 17:44:17 +0800 Subject: [PATCH] =?UTF-8?q?feat=20-=20=E6=B7=BB=E5=8A=A0=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=EF=BC=8C=E4=BC=98=E5=8C=96=E5=86=99=E5=85=A5?= =?UTF-8?q?=E9=80=BB=E8=BE=91=EF=BC=8C=E6=B7=BB=E5=8A=A0=E5=BB=B6=E6=97=B6?= =?UTF-8?q?=EF=BC=8C=E4=BC=98=E5=8C=96=E8=AE=A2=E5=8D=95=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SlnMesnac.Config/DeviceInfoConfig.cs | 5 ++ SlnMesnac.Model/domain/MesOrderInfo.cs | 7 ++- SlnMesnac.Repository/SQLiteHelper.cs | 24 ++++++++ .../service/Impl/MesOrderInfoImpl.cs | 22 +++++++ .../service/Impl/RealReadDataImpl.cs | 9 +-- SlnMesnac.Rfid/Factory/RflyFactory.cs | 2 +- SlnMesnac.WPF/Model/Real_DataInfo.cs | 6 +- SlnMesnac.WPF/Page/IndexPage/ChangeType.xaml | 8 ++- .../Page/IndexPage/HistorySearch.xaml | 7 ++- .../IndexPage/ChangeTypeViewModel.cs | 60 +++++++++++++++---- .../IndexPage/HistorySearchViewModel.cs | 13 +++- .../IndexPage/ProductionLineViewModel.cs | 17 +++++- SlnMesnac.WPF/appsettings.json | 6 +- 13 files changed, 160 insertions(+), 26 deletions(-) create mode 100644 SlnMesnac.Repository/service/Impl/MesOrderInfoImpl.cs diff --git a/SlnMesnac.Config/DeviceInfoConfig.cs b/SlnMesnac.Config/DeviceInfoConfig.cs index 0b111f9..9dad17f 100644 --- a/SlnMesnac.Config/DeviceInfoConfig.cs +++ b/SlnMesnac.Config/DeviceInfoConfig.cs @@ -57,6 +57,11 @@ namespace SlnMesnac.Config /// 默认值: /// public int? Deleteflag { get; set; } + + /// + /// 首次读取写入延迟 + /// + public int? WriteDelaySet { get; set; } } } \ No newline at end of file diff --git a/SlnMesnac.Model/domain/MesOrderInfo.cs b/SlnMesnac.Model/domain/MesOrderInfo.cs index 6032763..b339522 100644 --- a/SlnMesnac.Model/domain/MesOrderInfo.cs +++ b/SlnMesnac.Model/domain/MesOrderInfo.cs @@ -1,4 +1,5 @@ -using System; +using SQLite; +using System; using System.Collections.Generic; using System.Text; using System.Text.Json.Serialization; @@ -13,6 +14,8 @@ namespace SlnMesnac.Model.domain } public class MesOrderInfo { + [PrimaryKey] + public string ID { get; set; } [JsonPropertyName("ProductSpec")] public string ProductSpec { get; set; } [JsonPropertyName("OrderNo")] @@ -27,5 +30,7 @@ namespace SlnMesnac.Model.domain public double PlanQty { get; set; } [JsonPropertyName("NextProductNo")] public int NextProductNo { get; set; } + + public DateTime InsertDate { get; set; } } } diff --git a/SlnMesnac.Repository/SQLiteHelper.cs b/SlnMesnac.Repository/SQLiteHelper.cs index c05bcfd..9136a51 100644 --- a/SlnMesnac.Repository/SQLiteHelper.cs +++ b/SlnMesnac.Repository/SQLiteHelper.cs @@ -69,6 +69,30 @@ namespace Sln.Iot.Repository return _connection.Delete(id); } + /// + /// 根据条件批量删除 + /// + /// 删除条件 + /// 删除的记录数 + public int Delete(Expression> predExpr) + { + var items = _connection.Table().Where(predExpr).ToList(); + int count = 0; + foreach (var item in items) + { + count += _connection.Delete(item); + } + return count; + } + + /// + /// 删除所有数据 + /// + public int DeleteAll() + { + return _connection.DeleteAll(); + } + /// /// sql直接执行 /// diff --git a/SlnMesnac.Repository/service/Impl/MesOrderInfoImpl.cs b/SlnMesnac.Repository/service/Impl/MesOrderInfoImpl.cs new file mode 100644 index 0000000..ac30812 --- /dev/null +++ b/SlnMesnac.Repository/service/Impl/MesOrderInfoImpl.cs @@ -0,0 +1,22 @@ +using Sln.Iot.Repository; +using System; +using System.Collections.Generic; +using System.Text; + +namespace SlnMesnac.Repository.service.Impl +{ + public class RealReadDataImpl + { + private static readonly Lazy lazy = new Lazy(() => new RealReadDataImpl()); + + public static RealReadDataImpl Instance + { + get + { + return lazy.Value; + } + } + + public SQLiteHelper _helper = new SQLiteHelper(); + } +} diff --git a/SlnMesnac.Repository/service/Impl/RealReadDataImpl.cs b/SlnMesnac.Repository/service/Impl/RealReadDataImpl.cs index ac30812..2146181 100644 --- a/SlnMesnac.Repository/service/Impl/RealReadDataImpl.cs +++ b/SlnMesnac.Repository/service/Impl/RealReadDataImpl.cs @@ -1,15 +1,16 @@ using Sln.Iot.Repository; +using SlnMesnac.Model.domain; using System; using System.Collections.Generic; using System.Text; namespace SlnMesnac.Repository.service.Impl { - public class RealReadDataImpl + public class MesOrderInfoImpl { - private static readonly Lazy lazy = new Lazy(() => new RealReadDataImpl()); + private static readonly Lazy lazy = new Lazy(() => new MesOrderInfoImpl()); - public static RealReadDataImpl Instance + public static MesOrderInfoImpl Instance { get { @@ -17,6 +18,6 @@ namespace SlnMesnac.Repository.service.Impl } } - public SQLiteHelper _helper = new SQLiteHelper(); + public SQLiteHelper _helper = new SQLiteHelper(); } } diff --git a/SlnMesnac.Rfid/Factory/RflyFactory.cs b/SlnMesnac.Rfid/Factory/RflyFactory.cs index d3abe0f..0a445e7 100644 --- a/SlnMesnac.Rfid/Factory/RflyFactory.cs +++ b/SlnMesnac.Rfid/Factory/RflyFactory.cs @@ -175,7 +175,7 @@ namespace SlnMesnac.Rfid.Factory } catch (Exception e) { - Log.Information($"{m_deviceID},IP:{m_strIP}数据接收异常" + e.Message); + Log.Information($"{m_deviceID},IP:{m_strIP}数据接收异常 Message:" + e.Message); return false; } } diff --git a/SlnMesnac.WPF/Model/Real_DataInfo.cs b/SlnMesnac.WPF/Model/Real_DataInfo.cs index deb80ab..ef59214 100644 --- a/SlnMesnac.WPF/Model/Real_DataInfo.cs +++ b/SlnMesnac.WPF/Model/Real_DataInfo.cs @@ -221,7 +221,11 @@ namespace SlnMesnac.WPF.Model /// public string? Connectstr { get; set; } - + /// + /// 备 注: + /// 默认值: + /// + public int? WriteDelaySet { get; set; } private string _isOnline ="未连接"; diff --git a/SlnMesnac.WPF/Page/IndexPage/ChangeType.xaml b/SlnMesnac.WPF/Page/IndexPage/ChangeType.xaml index 430dd7f..1c22228 100644 --- a/SlnMesnac.WPF/Page/IndexPage/ChangeType.xaml +++ b/SlnMesnac.WPF/Page/IndexPage/ChangeType.xaml @@ -99,7 +99,7 @@ - +