From 0164b9529d198476605a1fc257cf716b5a9dd5ad Mon Sep 17 00:00:00 2001 From: wenjy Date: Fri, 12 Apr 2024 17:43:12 +0800 Subject: [PATCH] =?UTF-8?q?change=20-=20=E6=B7=BB=E5=8A=A0=E4=B8=9A?= =?UTF-8?q?=E5=8A=A1=E5=9F=BA=E7=B1=BB=E8=8E=B7=E5=8F=96RFID=E3=80=81PLC?= =?UTF-8?q?=E8=BF=9E=E6=8E=A5=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SlnMesnac.Business/Class1.cs | 9 -- SlnMesnac.Business/SlnMesnac.Business.csproj | 5 + SlnMesnac.Business/base/BaseBusiness.cs | 106 +++++++++++++++++++ 3 files changed, 111 insertions(+), 9 deletions(-) delete mode 100644 SlnMesnac.Business/Class1.cs create mode 100644 SlnMesnac.Business/base/BaseBusiness.cs diff --git a/SlnMesnac.Business/Class1.cs b/SlnMesnac.Business/Class1.cs deleted file mode 100644 index 8124245..0000000 --- a/SlnMesnac.Business/Class1.cs +++ /dev/null @@ -1,9 +0,0 @@ -using System; - -namespace SlnMesnac.Business -{ - public class Class1 - { - //业务逻辑类 - } -} diff --git a/SlnMesnac.Business/SlnMesnac.Business.csproj b/SlnMesnac.Business/SlnMesnac.Business.csproj index 8ef8970..4e2cf5e 100644 --- a/SlnMesnac.Business/SlnMesnac.Business.csproj +++ b/SlnMesnac.Business/SlnMesnac.Business.csproj @@ -5,4 +5,9 @@ enable + + + + + diff --git a/SlnMesnac.Business/base/BaseBusiness.cs b/SlnMesnac.Business/base/BaseBusiness.cs new file mode 100644 index 0000000..644ff4d --- /dev/null +++ b/SlnMesnac.Business/base/BaseBusiness.cs @@ -0,0 +1,106 @@ +using SlnMesnac.Plc; +using SlnMesnac.Rfid; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +#region << 版 本 注 释 >> +/*-------------------------------------------------------------------- +* 版权所有 (c) 2024 WenJY 保留所有权利。 +* CLR版本:4.0.30319.42000 +* 机器名称:LAPTOP-E0N2L34V +* 命名空间:SlnMesnac.Business.base +* 唯一标识:b00d95c1-a164-43a3-9f34-2a5d2efb3f34 +* +* 创建者:WenJY +* 电子邮箱:wenjy@mesnac.com +* 创建时间:2024-04-12 17:36:19 +* 版本:V1.0.0 +* 描述: +* +*-------------------------------------------------------------------- +* 修改人: +* 时间: +* 修改说明: +* +* 版本:V1.0.0 +*--------------------------------------------------------------------*/ +#endregion << 版 本 注 释 >> +namespace SlnMesnac.Business.@base +{ + internal class BaseBusiness + { + private readonly List _plcFactories; + + private readonly List _rfidFactories; + + public BaseBusiness(List plcFactories, List rfidFactories) + { + _plcFactories = plcFactories; + _rfidFactories = rfidFactories; + } + + /// + /// 根据Key获取PLC连接信息 + /// + /// + /// + /// + /// + public PlcAbsractFactory GetPlcByKey(string key) + { + if(_plcFactories == null) + { + throw new ArgumentNullException($"根据Key获取PLC连接信息异常:PLC 连接信息为空"); + } + + if (string.IsNullOrEmpty(key)) + { + throw new ArgumentNullException("根据Key获取PLC连接信息异常:设备Key参数为空"); + } + + try + { + var info = _plcFactories.Where(x => x.ConfigKey == key).FirstOrDefault(); + + return info; + }catch(Exception ex) + { + throw new InvalidOperationException($"根据Key获取PLC连接信息异常:{ex.Message}"); + } + } + + + /// + /// 根据Key获取Rfid连接信息 + /// + /// + /// + /// + /// + public RfidAbsractFactory GetRfidByKey(string key) + { + if (_rfidFactories == null) + { + throw new ArgumentNullException($"根据Key获取RFID连接信息异常:PLC 连接信息为空"); + } + + if (string.IsNullOrEmpty(key)) + { + throw new ArgumentNullException("根据Key获取RFID连接信息异常:设备Key参数为空"); + } + + try + { + var info = _rfidFactories.Where(x => x.ConfigKey == key).FirstOrDefault(); + + return info; + } + catch (Exception ex) + { + throw new InvalidOperationException($"根据Key获取RFID连接信息异常:{ex.Message}"); + } + } + } +}