diff --git a/SlnMesnac.Common/ExpressionExtensions.cs b/SlnMesnac.Common/ExpressionExtensions.cs index 0a0e879..a5348c0 100644 --- a/SlnMesnac.Common/ExpressionExtensions.cs +++ b/SlnMesnac.Common/ExpressionExtensions.cs @@ -4,6 +4,28 @@ using System.Linq.Expressions; using System.Linq; using System.Text; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Common +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Common { /// diff --git a/SlnMesnac.Common/StringChange.cs b/SlnMesnac.Common/StringChange.cs index 7a52411..6c4ff13 100644 --- a/SlnMesnac.Common/StringChange.cs +++ b/SlnMesnac.Common/StringChange.cs @@ -5,21 +5,32 @@ using System.IO; using System.Linq; using System.Text; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Common +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Common { public class StringChange { - //private static readonly Lazy lazy = new Lazy(() => new StringChange()); - //public static StringChange Instance - //{ - // get - // { - // return lazy.Value; - // } - //} - - //private StringChange() { } - /// /// 将字符串强制转换成int,转换失败则返回0 /// diff --git a/SlnMesnac.Config/AppConfig.cs b/SlnMesnac.Config/AppConfig.cs index fac4e8b..64f58ea 100644 --- a/SlnMesnac.Config/AppConfig.cs +++ b/SlnMesnac.Config/AppConfig.cs @@ -2,11 +2,34 @@ using System; using System.Collections.Generic; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Config +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Config { /// /// 系统配置 /// + #pragma warning disable CS8618 // Non-nullable field 'Data' must contain a non-null value when exiting constructor. Consider declaring the field as nullable. public class AppConfig : IOptions { /// diff --git a/SlnMesnac.Config/PlcConfig.cs b/SlnMesnac.Config/PlcConfig.cs index c061dd4..6be7fb7 100644 --- a/SlnMesnac.Config/PlcConfig.cs +++ b/SlnMesnac.Config/PlcConfig.cs @@ -1,8 +1,31 @@ +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Config +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Config { /// /// PLC配置,通过AppConfig进行获取 /// + #pragma warning disable CS8618 // Non-nullable field 'Data' must contain a non-null value when exiting constructor. Consider declaring the field as nullable. public class PlcConfig { /// diff --git a/SlnMesnac.Config/RfidConfig.cs b/SlnMesnac.Config/RfidConfig.cs index 1e1b98c..87622ea 100644 --- a/SlnMesnac.Config/RfidConfig.cs +++ b/SlnMesnac.Config/RfidConfig.cs @@ -1,4 +1,26 @@ -namespace SlnMesnac.Config +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Config +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> +namespace SlnMesnac.Config { public class RfidConfig { @@ -10,7 +32,7 @@ /// /// 设备 IP /// - public string equipIp { get; set; } + public string? equipIp { get; set; } /// /// 设备 Port @@ -20,7 +42,7 @@ /// /// 设备 Key /// - public string equipKey { get; set; } + public string? equipKey { get; set; } /// /// 是否启用 diff --git a/SlnMesnac.Config/SqlConfig.cs b/SlnMesnac.Config/SqlConfig.cs index 7adeab7..cc3de31 100644 --- a/SlnMesnac.Config/SqlConfig.cs +++ b/SlnMesnac.Config/SqlConfig.cs @@ -1,8 +1,31 @@ +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Config +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Config { /// /// Sql连接配置 /// + #pragma warning disable CS8618 // Non-nullable field 'Data' must contain a non-null value when exiting constructor. Consider declaring the field as nullable. public class SqlConfig { /// diff --git a/SlnMesnac.Ioc/DependencyConfigurator.cs b/SlnMesnac.Ioc/DependencyConfigurator.cs new file mode 100644 index 0000000..a95ae35 --- /dev/null +++ b/SlnMesnac.Ioc/DependencyConfigurator.cs @@ -0,0 +1,120 @@ +using Autofac; +using SlnMesnac.Repository; +using System.Reflection; +using TouchSocket.Sockets; + +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Ioc +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> +namespace SlnMesnac.Ioc +{ + /// + /// Utility class for configuring dependency injection. + /// + public static class DependencyConfigurator + { + /// + /// Configures dependency injection for the application. + /// + /// The Autofac container builder. + public static void Configure(ContainerBuilder builder) + { + //注入Repository + builder.RegisterGeneric(typeof(Repository<>)).As(typeof(Repository<>)); + RegisterImplementations(builder, Assembly.LoadFrom("SlnMesnac.Repository.dll")); + + //注入Plc + RegisterType(builder, Assembly.LoadFrom("SlnMesnac.Plc.dll")); + + //注入Rfid + RegisterType(builder, Assembly.LoadFrom("SlnMesnac.Rfid.dll")); + + //注入通用类 + RegisterType(builder, Assembly.LoadFrom("SlnMesnac.Common.dll")); + + //注入MQTT + RegisterType(builder, Assembly.LoadFrom("SlnMesnac.Mqtt.dll")); + + //注入TouchSocket + builder.RegisterType(typeof(TcpService)); + RegisterType(builder, Assembly.LoadFrom("SlnMesnac.TouchSocket.dll")); + + //注入业务类 + RegisterType(builder, Assembly.LoadFrom("SlnMesnac.Business.dll")); + } + + + /// + /// 自动注入接口实现 + /// + /// + /// + private static void RegisterImplementations(ContainerBuilder builder, Assembly assembly) + { + //自动注入仓储层的接口实现类 + var types = assembly.GetTypes() + .Where(t => t.IsClass && !t.IsAbstract && !t.IsGenericType) + .ToList(); + + foreach (var type in types) + { + var interfaces = type.GetInterfaces(); + + foreach (var @interface in interfaces) + { + builder.RegisterType(type).As(@interface); + } + } + } + + /// + /// 自动注入自定义类、抽象类 + /// + /// + /// + private static void RegisterType(ContainerBuilder builder, Assembly assembly) + { + var types = assembly.GetTypes() + .Where(t => t.IsClass && !t.IsAbstract && !t.IsGenericType) + .ToList(); + + foreach (var type in types) + { + var interfaces = type.GetInterfaces(); + var baseType = type.BaseType; + + #region 只注入抽象类 Delete By wenjy 2024-03-27 + //if (baseType != null && baseType.IsAbstract && baseType == typeof(PlcAbsractFactory)) + //{ + // builder.RegisterType(type); + //} + #endregion + + + if (!typeof(Delegate).IsAssignableFrom(type)) //不注入委托事件 + { + builder.RegisterType(type).SingleInstance(); + } + } + } + } +} diff --git a/SlnMesnac.Ioc/SlnMesnac.Ioc.csproj b/SlnMesnac.Ioc/SlnMesnac.Ioc.csproj new file mode 100644 index 0000000..f9ed572 --- /dev/null +++ b/SlnMesnac.Ioc/SlnMesnac.Ioc.csproj @@ -0,0 +1,18 @@ + + + + net6.0 + enable + enable + + + + + + + + + + + + diff --git a/SlnMesnac.Model/domain/BaseMaterialInfo.cs b/SlnMesnac.Model/domain/BaseMaterialInfo.cs index 333aa8c..c62d5aa 100644 --- a/SlnMesnac.Model/domain/BaseMaterialInfo.cs +++ b/SlnMesnac.Model/domain/BaseMaterialInfo.cs @@ -5,10 +5,35 @@ using System.Runtime.Serialization; using System.Text; using System.Xml.Linq; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Model.domain +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Model.domain { + + [SugarTable("BasMaterial"), TenantAttribute("mes")] [DataContract(Name = "BasMaterial 物料信息")] + #pragma warning disable CS8618 // Non-nullable field 'Data' must contain a non-null value when exiting constructor. Consider declaring the field as nullable. public class BaseMaterialInfo { /// diff --git a/SlnMesnac.Model/domain/BaseUser.cs b/SlnMesnac.Model/domain/BaseUser.cs index c6f3e28..04dd56f 100644 --- a/SlnMesnac.Model/domain/BaseUser.cs +++ b/SlnMesnac.Model/domain/BaseUser.cs @@ -6,6 +6,28 @@ using System.Security.Principal; using System.Text; using System.Xml.Linq; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Model.domain +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Model.domain { /// @@ -13,6 +35,7 @@ namespace SlnMesnac.Model.domain /// [SugarTable("BasUser"), TenantAttribute("mes")] [DataContract(Name = "BaseUser 人员基础资料")] + #pragma warning disable CS8618 // Non-nullable field 'Data' must contain a non-null value when exiting constructor. Consider declaring the field as nullable. public class BaseUser { /// diff --git a/SlnMesnac.Model/dto/TagInfo.cs b/SlnMesnac.Model/dto/TagInfo.cs index dbe04de..d4f28b6 100644 --- a/SlnMesnac.Model/dto/TagInfo.cs +++ b/SlnMesnac.Model/dto/TagInfo.cs @@ -1,7 +1,30 @@ using System; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Model.dto +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Model.dto { + #pragma warning disable CS8618 // Non-nullable field 'Data' must contain a non-null value when exiting constructor. Consider declaring the field as nullable. public class TagInfo { public byte[] PC = new byte[2]; diff --git a/SlnMesnac.Mqtt/MqttClient.cs b/SlnMesnac.Mqtt/MqttClient.cs index 92bd2d0..44baecf 100644 --- a/SlnMesnac.Mqtt/MqttClient.cs +++ b/SlnMesnac.Mqtt/MqttClient.cs @@ -7,6 +7,28 @@ using System.Security.Authentication; using MQTTnet; using Microsoft.Extensions.Logging; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Mqtt +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Mqtt { /// diff --git a/SlnMesnac.Plc/Factory/InovanceFactory.cs b/SlnMesnac.Plc/Factory/InovanceFactory.cs index 3884959..d9eebc1 100644 --- a/SlnMesnac.Plc/Factory/InovanceFactory.cs +++ b/SlnMesnac.Plc/Factory/InovanceFactory.cs @@ -3,6 +3,28 @@ using HslCommunication; using HslCommunication.Profinet.Inovance; using SlnMesnac.Common; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Plc.Factory +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Plc.Factory { public class InovanceFactory:PlcAbsractFactory diff --git a/SlnMesnac.Plc/Factory/MelsecBinaryFactory.cs b/SlnMesnac.Plc/Factory/MelsecBinaryFactory.cs index 94fccd9..28b9a8e 100644 --- a/SlnMesnac.Plc/Factory/MelsecBinaryFactory.cs +++ b/SlnMesnac.Plc/Factory/MelsecBinaryFactory.cs @@ -3,6 +3,28 @@ using HslCommunication; using HslCommunication.Profinet.Melsec; using SlnMesnac.Common; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Plc.Factory +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Plc.Factory { public class MelsecBinaryFactory:PlcAbsractFactory diff --git a/SlnMesnac.Plc/Factory/OmronNJFactory.cs b/SlnMesnac.Plc/Factory/OmronNJFactory.cs index 29b0b15..a3812e9 100644 --- a/SlnMesnac.Plc/Factory/OmronNJFactory.cs +++ b/SlnMesnac.Plc/Factory/OmronNJFactory.cs @@ -3,6 +3,28 @@ using HslCommunication; using HslCommunication.Profinet.Omron; using SlnMesnac.Common; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Plc.Factory +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Plc.Factory { public class OmronNJFactory:PlcAbsractFactory diff --git a/SlnMesnac.Plc/Factory/SiemensFactory.cs b/SlnMesnac.Plc/Factory/SiemensFactory.cs index f2b6805..2e0ed6d 100644 --- a/SlnMesnac.Plc/Factory/SiemensFactory.cs +++ b/SlnMesnac.Plc/Factory/SiemensFactory.cs @@ -3,6 +3,28 @@ using HslCommunication; using HslCommunication.Profinet.Siemens; using SlnMesnac.Common; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Plc.Factory +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Plc.Factory { public class SiemensFactory:PlcAbsractFactory diff --git a/SlnMesnac.Plc/PlcAbsractFactory.cs b/SlnMesnac.Plc/PlcAbsractFactory.cs index 2771d75..d309ec6 100644 --- a/SlnMesnac.Plc/PlcAbsractFactory.cs +++ b/SlnMesnac.Plc/PlcAbsractFactory.cs @@ -1,4 +1,26 @@ -namespace SlnMesnac.Plc +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Plc +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> +namespace SlnMesnac.Plc { public abstract class PlcAbsractFactory { diff --git a/SlnMesnac.Plc/PlcPool.cs b/SlnMesnac.Plc/PlcPool.cs index 6a89ff8..cf332c7 100644 --- a/SlnMesnac.Plc/PlcPool.cs +++ b/SlnMesnac.Plc/PlcPool.cs @@ -5,6 +5,28 @@ using System.Collections.Generic; using System.Threading.Tasks; using SlnMesnac.Plc.Factory; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Plc +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Plc { /// @@ -15,7 +37,7 @@ namespace SlnMesnac.Plc private ILogger _logger; private readonly AppConfig _appConfig; - private Dictionary keyValuePairs = new Dictionary(); + private Dictionary keyValuePairs ; private readonly InovanceFactory _inovance; private readonly MelsecBinaryFactory _melsecBinary; @@ -30,6 +52,8 @@ namespace SlnMesnac.Plc _omronNj = omronNj; _siemens = siemens; _appConfig = appConfig; + + keyValuePairs = new Dictionary(); } public void Init() { diff --git a/SlnMesnac.Plc/PlcSetup.cs b/SlnMesnac.Plc/PlcSetup.cs index 0fdfa54..95256f5 100644 --- a/SlnMesnac.Plc/PlcSetup.cs +++ b/SlnMesnac.Plc/PlcSetup.cs @@ -4,14 +4,39 @@ using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.DependencyInjection; using SlnMesnac.Plc.Factory; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Plc +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Plc { public static class PlcSetup { public static IApplicationBuilder UsePlcExtensions(this IApplicationBuilder app) { - var plcPool = app.ApplicationServices.GetService(); - plcPool.Init(); + PlcPool? plcPool = app.ApplicationServices.GetService(); + if(plcPool != null) + { + plcPool.Init(); + } return app; } diff --git a/SlnMesnac.Quartz/Job/Job2.cs b/SlnMesnac.Quartz/Job/Job2.cs index 47791ce..cba1528 100644 --- a/SlnMesnac.Quartz/Job/Job2.cs +++ b/SlnMesnac.Quartz/Job/Job2.cs @@ -5,6 +5,28 @@ using System.Collections.Generic; using System.Text; using System.Threading.Tasks; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Quartz.Job +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Quartz.Job { internal class Job2 : IJob diff --git a/SlnMesnac.Quartz/Job/MyJob.cs b/SlnMesnac.Quartz/Job/MyJob.cs index 67fe4cb..735f08c 100644 --- a/SlnMesnac.Quartz/Job/MyJob.cs +++ b/SlnMesnac.Quartz/Job/MyJob.cs @@ -5,6 +5,28 @@ using System.Collections.Generic; using System.Text; using System.Threading.Tasks; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Quartz.Job +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Quartz.Job { public class MyJob : IJob diff --git a/SlnMesnac.Quartz/QuartzSetUp.cs b/SlnMesnac.Quartz/QuartzSetUp.cs index 94bc14d..1a6bb23 100644 --- a/SlnMesnac.Quartz/QuartzSetUp.cs +++ b/SlnMesnac.Quartz/QuartzSetUp.cs @@ -3,6 +3,28 @@ using Quartz; using SlnMesnac.Quartz.Job; using System; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Quartz +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Quartz { public static class QuartzSetUp diff --git a/SlnMesnac.Repository/Repository.cs b/SlnMesnac.Repository/Repository.cs index 31856b6..7216a1c 100644 --- a/SlnMesnac.Repository/Repository.cs +++ b/SlnMesnac.Repository/Repository.cs @@ -1,6 +1,28 @@ using SqlSugar; using System; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Repository +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Repository { public class Repository : SimpleClient where T : class, new() diff --git a/SlnMesnac.Repository/SqlsugarSetup.cs b/SlnMesnac.Repository/SqlsugarSetup.cs index 779899f..3f3557b 100644 --- a/SlnMesnac.Repository/SqlsugarSetup.cs +++ b/SlnMesnac.Repository/SqlsugarSetup.cs @@ -7,6 +7,28 @@ using System; using System.Collections.Generic; using System.Text; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Repository +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Repository { public static class SqlsugarSetup diff --git a/SlnMesnac.Repository/service/IBaseMaterialService.cs b/SlnMesnac.Repository/service/IBaseMaterialService.cs index 638d67e..ac4f62f 100644 --- a/SlnMesnac.Repository/service/IBaseMaterialService.cs +++ b/SlnMesnac.Repository/service/IBaseMaterialService.cs @@ -3,6 +3,28 @@ using System; using System.Collections.Generic; using System.Text; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Repository.service +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Repository.service { public interface IBaseMaterialService diff --git a/SlnMesnac.Repository/service/IBaseUserService.cs b/SlnMesnac.Repository/service/IBaseUserService.cs index 35bbea0..bac80e5 100644 --- a/SlnMesnac.Repository/service/IBaseUserService.cs +++ b/SlnMesnac.Repository/service/IBaseUserService.cs @@ -3,6 +3,28 @@ using System; using System.Collections.Generic; using System.Text; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Repository.service +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Repository.service { public interface IBaseUserService diff --git a/SlnMesnac.Repository/service/Impl/BaseMaterialServiceImpl.cs b/SlnMesnac.Repository/service/Impl/BaseMaterialServiceImpl.cs index 8985d53..7487cd3 100644 --- a/SlnMesnac.Repository/service/Impl/BaseMaterialServiceImpl.cs +++ b/SlnMesnac.Repository/service/Impl/BaseMaterialServiceImpl.cs @@ -6,6 +6,28 @@ using System.Collections.Generic; using System.Linq.Expressions; using System.Text; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Repository.service.Impl +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Repository.service.Impl { public class BaseMaterialServiceImpl : IBaseMaterialService diff --git a/SlnMesnac.Repository/service/Impl/BaseUserServiceImpl.cs b/SlnMesnac.Repository/service/Impl/BaseUserServiceImpl.cs index 942774b..d2d99ef 100644 --- a/SlnMesnac.Repository/service/Impl/BaseUserServiceImpl.cs +++ b/SlnMesnac.Repository/service/Impl/BaseUserServiceImpl.cs @@ -4,6 +4,28 @@ using System; using System.Collections.Generic; using System.Text; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Repository.service.Impl +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Repository.service.Impl { public class BaseUserServiceImpl : IBaseUserService diff --git a/SlnMesnac.Rfid/Dto/MessagePack.cs b/SlnMesnac.Rfid/Dto/MessagePack.cs index 8ef347a..284d42f 100644 --- a/SlnMesnac.Rfid/Dto/MessagePack.cs +++ b/SlnMesnac.Rfid/Dto/MessagePack.cs @@ -1,4 +1,26 @@ -namespace SlnMesnac.Rfid.Dto +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Rfid.Dto +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> +namespace SlnMesnac.Rfid.Dto { public class MessagePack { diff --git a/SlnMesnac.Rfid/Enum/RecvState.cs b/SlnMesnac.Rfid/Enum/RecvState.cs index 68c253c..f9f1708 100644 --- a/SlnMesnac.Rfid/Enum/RecvState.cs +++ b/SlnMesnac.Rfid/Enum/RecvState.cs @@ -1,4 +1,26 @@ -namespace SlnMesnac.Rfid.Enum +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Rfid.Enum +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> +namespace SlnMesnac.Rfid.Enum { public enum RecvState { diff --git a/SlnMesnac.Rfid/Factory/RflyFactory.cs b/SlnMesnac.Rfid/Factory/RflyFactory.cs index b193e00..27f015a 100644 --- a/SlnMesnac.Rfid/Factory/RflyFactory.cs +++ b/SlnMesnac.Rfid/Factory/RflyFactory.cs @@ -12,6 +12,28 @@ using SlnMesnac.Rfid.Enum; using TouchSocket.Core; using TouchSocket.Sockets; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Rfid.Factory +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Rfid.Factory { public class RflyFactory:RfidAbsractFactory diff --git a/SlnMesnac.Rfid/RfidAbsractFactory.cs b/SlnMesnac.Rfid/RfidAbsractFactory.cs index 287a922..bc4e1e9 100644 --- a/SlnMesnac.Rfid/RfidAbsractFactory.cs +++ b/SlnMesnac.Rfid/RfidAbsractFactory.cs @@ -2,6 +2,28 @@ using System.Collections.Generic; using SlnMesnac.Model.dto; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Rfid +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Rfid { /// diff --git a/SlnMesnac.Rfid/RfidPool.cs b/SlnMesnac.Rfid/RfidPool.cs index c0ff660..b2cdabd 100644 --- a/SlnMesnac.Rfid/RfidPool.cs +++ b/SlnMesnac.Rfid/RfidPool.cs @@ -4,6 +4,28 @@ using Microsoft.Extensions.Logging; using SlnMesnac.Config; using SlnMesnac.Rfid.Factory; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Rfid +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Rfid { public class RfidPool diff --git a/SlnMesnac.Rfid/RfidSetup.cs b/SlnMesnac.Rfid/RfidSetup.cs index 746f4fa..5fe4e99 100644 --- a/SlnMesnac.Rfid/RfidSetup.cs +++ b/SlnMesnac.Rfid/RfidSetup.cs @@ -2,6 +2,28 @@ using Microsoft.Extensions.DependencyInjection; using SlnMesnac.Rfid.Factory; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Rfid +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Rfid { public static class RfidSetup diff --git a/SlnMesnac.Serilog/SerilogExtensions.cs b/SlnMesnac.Serilog/SerilogExtensions.cs index b2f1846..d65e0b6 100644 --- a/SlnMesnac.Serilog/SerilogExtensions.cs +++ b/SlnMesnac.Serilog/SerilogExtensions.cs @@ -6,6 +6,28 @@ using SlnMesnac.Config; using System; using System.IO; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Serilog +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.Serilog { /// diff --git a/SlnMesnac.TouchSocket/TcpServer.cs b/SlnMesnac.TouchSocket/TcpServer.cs index fc3ecb7..70f8afc 100644 --- a/SlnMesnac.TouchSocket/TcpServer.cs +++ b/SlnMesnac.TouchSocket/TcpServer.cs @@ -5,6 +5,28 @@ using System.Text; using TouchSocket.Core; using TouchSocket.Sockets; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.TouchSocket +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.TouchSocket { public class TcpServer diff --git a/SlnMesnac.TouchSocket/TouchSocketSetup.cs b/SlnMesnac.TouchSocket/TouchSocketSetup.cs index 293f3d3..31ca7db 100644 --- a/SlnMesnac.TouchSocket/TouchSocketSetup.cs +++ b/SlnMesnac.TouchSocket/TouchSocketSetup.cs @@ -5,6 +5,28 @@ using System.Text; using Microsoft.AspNetCore.Builder; using TouchSocket.Sockets; +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.TouchSocket +* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-03-27 21:58:35 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> namespace SlnMesnac.TouchSocket { /// diff --git a/SlnMesnac.WPF/App.xaml.cs b/SlnMesnac.WPF/App.xaml.cs index d5e67e1..bd1a4f1 100644 --- a/SlnMesnac.WPF/App.xaml.cs +++ b/SlnMesnac.WPF/App.xaml.cs @@ -22,6 +22,7 @@ using SlnMesnac.Rfid; using SlnMesnac.TouchSocket; using SlnMesnac.Mqtt; using SlnMesnac.Business; +using SlnMesnac.Plc; namespace SlnMesnac.WPF { @@ -30,9 +31,9 @@ namespace SlnMesnac.WPF /// public partial class App : Application { - private System.Threading.Mutex mutex; + private System.Threading.Mutex? mutex = null; private LierdaCracker cracker = new LierdaCracker(); - public static IServiceProvider ServiceProvider; + public static IServiceProvider? ServiceProvider = null; // Startup事件 protected override async void OnStartup(StartupEventArgs e) diff --git a/SlnMesnac.WPF/SlnMesnac.WPF.csproj b/SlnMesnac.WPF/SlnMesnac.WPF.csproj index bd6e928..b241d67 100644 --- a/SlnMesnac.WPF/SlnMesnac.WPF.csproj +++ b/SlnMesnac.WPF/SlnMesnac.WPF.csproj @@ -22,6 +22,7 @@ + diff --git a/SlnMesnac.WPF/Startup.cs b/SlnMesnac.WPF/Startup.cs index 5a8c98a..047ebe8 100644 --- a/SlnMesnac.WPF/Startup.cs +++ b/SlnMesnac.WPF/Startup.cs @@ -3,23 +3,14 @@ using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using SlnMesnac.Config; -using SlnMesnac.Common; -using SlnMesnac.Quartz; using SlnMesnac.Repository; using SlnMesnac.Plc; using SlnMesnac.Serilog; using System; -using System.Collections.Generic; -using System.Linq; -using System.Reflection; -using System.Text; -using System.Threading.Tasks; using Autofac; using Microsoft.Extensions.Configuration; -using SlnMesnac.Mqtt; using SlnMesnac.Rfid; -using SlnMesnac.TouchSocket; -using TouchSocket.Sockets; +using SlnMesnac.Ioc; namespace SlnMesnac.WPF { @@ -55,84 +46,8 @@ namespace SlnMesnac.WPF /// public void ConfigureContainer(ContainerBuilder builder) { - //注入Repository - builder.RegisterGeneric(typeof(Repository<>)).As(typeof(Repository<>)); - RegisterImplementations(builder, Assembly.LoadFrom("SlnMesnac.Repository.dll")); - - //注入Plc - RegisterType(builder, Assembly.LoadFrom("SlnMesnac.Plc.dll")); - - //注入Rfid - RegisterType(builder, Assembly.LoadFrom("SlnMesnac.Rfid.dll")); - - //注入通用类 - RegisterType(builder, Assembly.LoadFrom("SlnMesnac.Common.dll")); - - //注入MQTT - RegisterType(builder, Assembly.LoadFrom("SlnMesnac.Mqtt.dll")); - - //注入TouchSocket - builder.RegisterType(typeof(TcpService)); - RegisterType(builder, Assembly.LoadFrom("SlnMesnac.TouchSocket.dll")); - - //注入业务类 - RegisterType(builder, Assembly.LoadFrom("SlnMesnac.Business.dll")); + DependencyConfigurator.Configure(builder); } - - /// - /// 自动注入接口实现 - /// - /// - /// - private static void RegisterImplementations(ContainerBuilder builder, Assembly assembly) - { - //自动注入仓储层的接口实现类 - var types = assembly.GetTypes() - .Where(t => t.IsClass && !t.IsAbstract && !t.IsGenericType) - .ToList(); - - foreach (var type in types) - { - var interfaces = type.GetInterfaces(); - - foreach (var @interface in interfaces) - { - builder.RegisterType(type).As(@interface); - } - } - } - - /// - /// 自动注入自定义类、抽象类 - /// - /// - /// - private static void RegisterType(ContainerBuilder builder, Assembly assembly) - { - var types = assembly.GetTypes() - .Where(t => t.IsClass && !t.IsAbstract && !t.IsGenericType) - .ToList(); - - foreach (var type in types) - { - var interfaces = type.GetInterfaces(); - var baseType = type.BaseType; - - #region 只注入抽象类 Delete By wenjy 2024-03-27 - //if (baseType != null && baseType.IsAbstract && baseType == typeof(PlcAbsractFactory)) - //{ - // builder.RegisterType(type); - //} - #endregion - - - if (!typeof(Delegate).IsAssignableFrom(type)) //不注入委托事件 - { - builder.RegisterType(type); - } - } - } - /// /// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. diff --git a/SlnMesnac.WPF/appsettings.json b/SlnMesnac.WPF/appsettings.json index a1f2ad9..02d4e43 100644 --- a/SlnMesnac.WPF/appsettings.json +++ b/SlnMesnac.WPF/appsettings.json @@ -36,7 +36,7 @@ "plcIp": "127.0.0.1", "plcPort": 6000, "plcKey": "cwss", - "isFlage": false + "isFlage": true } ], "RfidConfig": [ diff --git a/SlnMesnac.sln b/SlnMesnac.sln index 1a63097..9013297 100644 --- a/SlnMesnac.sln +++ b/SlnMesnac.sln @@ -27,7 +27,9 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SlnMesnac.TouchSocket", "Sl EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SlnMesnac.Mqtt", "SlnMesnac.Mqtt\SlnMesnac.Mqtt.csproj", "{7D908FF5-88AE-42AB-A193-F2896EF44AB1}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SlnMesnac.Rfid", "SlnMesnac.Rfid\SlnMesnac.Rfid.csproj", "{40D23A4B-8372-4145-936C-08AE63C6D1F9}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SlnMesnac.Rfid", "SlnMesnac.Rfid\SlnMesnac.Rfid.csproj", "{40D23A4B-8372-4145-936C-08AE63C6D1F9}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SlnMesnac.Ioc", "SlnMesnac.Ioc\SlnMesnac.Ioc.csproj", "{30A3F86B-774E-4153-9A00-FD3173C710EB}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -87,6 +89,10 @@ Global {40D23A4B-8372-4145-936C-08AE63C6D1F9}.Debug|Any CPU.Build.0 = Debug|Any CPU {40D23A4B-8372-4145-936C-08AE63C6D1F9}.Release|Any CPU.ActiveCfg = Release|Any CPU {40D23A4B-8372-4145-936C-08AE63C6D1F9}.Release|Any CPU.Build.0 = Release|Any CPU + {30A3F86B-774E-4153-9A00-FD3173C710EB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {30A3F86B-774E-4153-9A00-FD3173C710EB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {30A3F86B-774E-4153-9A00-FD3173C710EB}.Release|Any CPU.ActiveCfg = Release|Any CPU + {30A3F86B-774E-4153-9A00-FD3173C710EB}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE