Ver código fonte

Merge branch '52台铃产线生产管理系统' of http://www.imaodou.com.cn:30030/c_jack/EICP3.0_48 into 52台铃产线生产管理系统

zhangliwen 1 ano atrás
pai
commit
07660cf7df

BIN
Lib/MQTTnet.dll


BIN
Lib/MQTTnet.pdb


BIN
Lib/SCADA.CNC.FANUC.dll


BIN
Lib/SCADA.CommonCtrl.dll


+ 276 - 1
Lib/SCADA.CommonCtrl.xml

@@ -1029,6 +1029,11 @@
             EvolutionChartItemToolTip
             </summary>
         </member>
+        <member name="M:SCADA.CommonCtrl.Dashboard.EvolutionChartItemToolTip.#ctor">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="M:SCADA.CommonCtrl.Dashboard.EvolutionChartItemToolTip.InitializeComponent">
             <summary>
             InitializeComponent
@@ -2334,6 +2339,16 @@
             <param name="hotKeyModelList"></param>
             <returns></returns>
         </member>
+        <member name="T:SCADA.CommonCtrl.SCADAUI.DeviceConfigUpdateModel">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.CommonCtrl.SCADAUI.DeviceConfigUpdateModel.Simulated">
+            <summary>
+            模拟
+            </summary>
+        </member>
         <member name="T:SCADA.CommonCtrl.SCADAUI.RegViewPanel">
             <summary>
             RegViewPanel.xaml 的交互逻辑
@@ -2523,6 +2538,31 @@
             InitializeComponent
             </summary>
         </member>
+        <member name="T:SCADA.CommonCtrl.SCADAUI.BaseRegReadingView">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.CommonCtrl.SCADAUI.BaseRegReadingView.ShowTitle">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="F:SCADA.CommonCtrl.SCADAUI.BaseRegReadingView.ShowTitleProperty">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.CommonCtrl.SCADAUI.BaseRegReadingView.Title">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="F:SCADA.CommonCtrl.SCADAUI.BaseRegReadingView.TitleProperty">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="P:SCADA.CommonCtrl.SCADAUI.BaseRegReadingView.DisplayModel">
             <summary>
             
@@ -2633,6 +2673,11 @@
             单机取反
             </summary>
         </member>
+        <member name="F:SCADA.CommonCtrl.SCADAUI.TriggerMode.LongPress">
+            <summary>
+            长按取反
+            </summary>
+        </member>
         <member name="F:SCADA.CommonCtrl.SCADAUI.TriggerMode.Set">
             <summary>
             置位
@@ -2769,6 +2814,11 @@
             </summary>
             <param name="e"></param>
         </member>
+        <member name="T:SCADA.CommonCtrl.SCADAUI.RegReadingView">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="T:SCADA.CommonCtrl.WpfControl.Accordion">
             <summary>
             
@@ -3802,6 +3852,75 @@
             </summary>
             
         </member>
+        <member name="F:SCADA.CommonCtrl.WpfControl.BaseIconButton.LongPressTimeProperty">
+            <summary>
+            DepedencyProperty for LongPressTime
+            </summary>
+        </member>
+        <member name="F:SCADA.CommonCtrl.WpfControl.BaseIconButton.IsLongPressProperty">
+            <summary>
+            DependencyProperty for IsLongPress 
+            </summary>
+        </member>
+        <member name="F:SCADA.CommonCtrl.WpfControl.BaseIconButton.LongPressEvent">
+            <summary>
+            LongPress Routed Event
+            </summary>
+        </member>
+        <member name="F:SCADA.CommonCtrl.WpfControl.BaseIconButton.LongPressReleaseEvent">
+            <summary>
+            LongPressRelease Routed Event
+            </summary>
+        </member>
+        <member name="P:SCADA.CommonCtrl.WpfControl.BaseIconButton.LongPressTime">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.CommonCtrl.WpfControl.BaseIconButton.IsLongPress">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="E:SCADA.CommonCtrl.WpfControl.BaseIconButton.LongPress">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="E:SCADA.CommonCtrl.WpfControl.BaseIconButton.LongPressRelease">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="F:SCADA.CommonCtrl.WpfControl.BaseIconButton._pressDispatcherTimer">
+            <summary>
+            DispatcherTimer to listen whether the button is long clicked.
+            </summary>
+        </member>
+        <member name="M:SCADA.CommonCtrl.WpfControl.BaseIconButton.OnDispatcherTimeOut(System.Object,System.EventArgs)">
+            <summary>
+            
+            </summary>
+            <param name="sender"></param>
+            <param name="e"></param>
+        </member>
+        <member name="M:SCADA.CommonCtrl.WpfControl.BaseIconButton.OnMouseLeftButtonDown(System.Windows.Input.MouseButtonEventArgs)">
+            <summary>
+            
+            </summary>
+            <param name="e"></param>
+        </member>
+        <member name="M:SCADA.CommonCtrl.WpfControl.BaseIconButton.OnMouseLeftButtonUp(System.Windows.Input.MouseButtonEventArgs)">
+            <summary>
+            
+            </summary>
+            <param name="e"></param>
+        </member>
+        <member name="M:SCADA.CommonCtrl.WpfControl.BaseIconButton.OnClick">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="T:SCADA.CommonCtrl.WpfControl.IconButton">
             <summary>
             
@@ -4418,11 +4537,31 @@
             正态分布值
             </summary>
         </member>
+        <member name="T:SCADA.CommonCtrl.WpfControl.Charts.CPKModel">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.Parent">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.DateTime">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="P:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.HiLimit">
             <summary>
             统计上限
             </summary>
         </member>
+        <member name="P:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.LowLimit">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="P:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.CpuLimit">
             <summary>
             CPU 上限
@@ -4438,6 +4577,11 @@
             CPK 中心线
             </summary>
         </member>
+        <member name="P:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.CenterLimit">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="P:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.Avg">
             <summary>
             平均值
@@ -4458,11 +4602,35 @@
             样本数量
             </summary>
         </member>
+        <member name="M:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.SetSource(System.Collections.Generic.IEnumerable{System.Int32})">
+            <summary>
+            
+            </summary>
+            <param name="dataSource"></param>
+        </member>
+        <member name="P:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.DataSource">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="M:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.SetSource(System.Collections.Generic.IEnumerable{System.Double})">
+            <summary>
+            
+            </summary>
+            <param name="dataSource"></param>
+        </member>
         <member name="P:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.DataCount">
             <summary>
             有效数据数量,不包括被排除的
             </summary>
         </member>
+        <member name="M:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.GetNormDist(System.Double)">
+            <summary>
+            
+            </summary>
+            <param name="value"></param>
+            <returns></returns>
+        </member>
         <member name="P:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.StDev">
             <summary>
             样本标准差
@@ -4478,11 +4646,31 @@
             上CPK
             </summary>
         </member>
+        <member name="P:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.UCL">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.LCL">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="P:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.CpkL">
             <summary>
             下CPK
             </summary>
         </member>
+        <member name="P:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.CpkValue">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="E:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.PropertyChanged">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="P:SCADA.CommonCtrl.WpfControl.Charts.CPKModel.IsControlled">
             <summary>
             当前是否受控
@@ -4503,6 +4691,11 @@
             不受控的类型
             </summary>
         </member>
+        <member name="F:SCADA.CommonCtrl.WpfControl.Charts.OutControlType.InControled">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="F:SCADA.CommonCtrl.WpfControl.Charts.OutControlType.Rule1">
             <summary>
             1点落在A区以外
@@ -4543,6 +4736,11 @@
             8点在中心线两侧,但无一在C区
             </summary>
         </member>
+        <member name="T:SCADA.CommonCtrl.WpfControl.Charts.NormalDistribution">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="M:SCADA.CommonCtrl.WpfControl.Charts.NormalDistribution.GetValue(System.Double,System.Double,System.Double)">
             <summary>
             求正态分布的值
@@ -4552,6 +4750,13 @@
             <param name="Value">样本区间值</param>
             <returns></returns>
         </member>
+        <member name="M:SCADA.CommonCtrl.WpfControl.Charts.NormalDistribution.NORMSDIST(System.Double)">
+            <summary>
+            
+            </summary>
+            <param name="a"></param>
+            <returns></returns>
+        </member>
         <member name="T:SCADA.CommonCtrl.WpfControl.Charts.PassRateChart">
             <summary>
             OutPutChart.xaml 的交互逻辑
@@ -5101,6 +5306,56 @@
             <param name="oldValue">Old value of the source.</param>
             <param name="newValue">New value of the source.</param>
         </member>
+        <member name="T:SCADA.CommonCtrl.WpfControl.CommonQueryFrm`2">
+            <summary>
+            MDI 父窗口的子窗体都要继承于此类
+            </summary>
+        </member>
+        <member name="M:SCADA.CommonCtrl.WpfControl.CommonQueryFrm`2.#ctor">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="M:SCADA.CommonCtrl.WpfControl.CommonQueryFrm`2.OnApplyTemplate">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="M:SCADA.CommonCtrl.WpfControl.CommonQueryFrm`2.Query">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.CommonCtrl.WpfControl.CommonQueryFrm`2.IsAutoUpdate">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="F:SCADA.CommonCtrl.WpfControl.CommonQueryFrm`2.IsAutoUpdateProperty">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.CommonCtrl.WpfControl.CommonQueryFrm`2.QueryFrm">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="F:SCADA.CommonCtrl.WpfControl.CommonQueryFrm`2.QueryFrmProperty">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.CommonCtrl.WpfControl.CommonQueryFrm`2.Child">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="F:SCADA.CommonCtrl.WpfControl.CommonQueryFrm`2.ChildProperty">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="T:SCADA.CommonCtrl.WpfControl.DateSelecter">
             <summary>
             
@@ -6263,6 +6518,13 @@
             <param name="path"></param>
             <returns></returns>
         </member>
+        <member name="M:SCADA.CommonCtrl.WpfControl.BaseMainWindow.SetChildAccesstype(System.String,SCADA.CommonLib.AccessTypes)">
+            <summary>
+            
+            </summary>
+            <param name="path"></param>
+            <param name="accessType"></param>
+        </member>
         <member name="E:SCADA.CommonCtrl.WpfControl.BaseMainWindow.PropertyChanged">
             <summary>
             
@@ -6518,11 +6780,19 @@
         </member>
         <member name="M:SCADA.CommonCtrl.WpfControl.MainGrid.SelectItem(System.String)">
             <summary>
-            
+            选中菜单,如果菜单存在,返回true
             </summary>
             <param name="path"></param>
             <returns></returns>
         </member>
+        <member name="M:SCADA.CommonCtrl.WpfControl.MainGrid.SetChildAccesstype(System.String,SCADA.CommonLib.AccessTypes)">
+            <summary>
+            设定菜单的权限
+            </summary>
+            <param name="path"></param>
+            <param name="accessType"></param>
+            <returns></returns>
+        </member>
         <member name="M:SCADA.CommonCtrl.WpfControl.MainGrid.CloseAll(System.Boolean)">
             <summary>
             关闭所有
@@ -7028,6 +7298,11 @@
             
             </summary>
         </member>
+        <member name="M:SCADA.CommonCtrl.WpfControl.UctShowMsg.CloseThis">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="M:SCADA.CommonCtrl.WpfControl.UctShowMsg.InitializeComponent">
             <summary>
             InitializeComponent

BIN
Lib/SCADA.CommonLib.dll


+ 89 - 2
Lib/SCADA.CommonLib.xml

@@ -304,6 +304,41 @@
             </summary>
             <param name="label"></param>
         </member>
+        <member name="T:SCADA.CommonLib.ChildTableAttribute">
+            <summary>
+            数据库子表
+            </summary>
+        </member>
+        <member name="M:SCADA.CommonLib.ChildTableAttribute.#ctor">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.CommonLib.ChildTableAttribute.Id">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.CommonLib.ChildTableAttribute.TitleBindingPath">
+            <summary>
+            标题的绑定路径
+            </summary>
+        </member>
+        <member name="P:SCADA.CommonLib.ChildTableAttribute.TitleStringFormat">
+            <summary>
+            标题字符串格式
+            </summary>
+        </member>
+        <member name="F:SCADA.CommonLib.ChildTableAttribute._icon">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.CommonLib.ChildTableAttribute.Icon">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="T:SCADA.CommonLib.ColumnAttribute">
             <summary>
             
@@ -2800,7 +2835,18 @@
             <param name="orderByString"></param>
             <param name="parameters"></param>
         </member>
-        <!-- Badly formed XML comment ignored for member "M:SCADA.CommonLib.Data.DIL.BaseTable.GetTopN``1(System.Int32,System.Int32,System.String,System.String,System.Data.Common.DbParameter[])" -->
+        <member name="M:SCADA.CommonLib.Data.DIL.BaseTable.GetTopN``1(System.Int32,System.Int32,System.String,System.String,System.Data.Common.DbParameter[])">
+            <summary>
+            
+            </summary>
+            <typeparam name="T"></typeparam>
+            <param name="topN"></param>
+            <param name="skip"></param>
+            <param name="filterString"></param>
+            <param name="orderByString"></param>
+            <param name="parameters"></param>
+            <returns></returns>
+        </member>
         <member name="M:SCADA.CommonLib.Data.DIL.BaseTable.GetTopN``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Int32,System.Int32,System.String)">
             <summary>
             
@@ -3297,6 +3343,21 @@
             </summary>
             <returns></returns>
         </member>
+        <member name="M:SCADA.CommonLib.Data.DIL.IDB.CreateTable(System.String)">
+            <summary>
+            
+            </summary>
+            <param name="id"></param>
+            <returns></returns>
+        </member>
+        <member name="M:SCADA.CommonLib.Data.DIL.IDB.CreateTable(System.String,System.String)">
+            <summary>
+            
+            </summary>
+            <param name="id"></param>
+            <param name="tableName"></param>
+            <returns></returns>
+        </member>
         <member name="M:SCADA.CommonLib.Data.DIL.IDB.Insert(System.Object@,System.String,SCADA.CommonLib.Data.DIL.UpdateItem[])">
             <summary>
             
@@ -6339,6 +6400,7 @@
             </summary>
             <typeparam name="T"></typeparam>
             <param name="row"></param>
+            <param name="autoMapper">是否自动映射</param>
             <param name="ignoreCase">忽略大小写</param>
             <param name="mapping"></param>
             <returns></returns>
@@ -6379,6 +6441,7 @@
             <typeparam name="T"></typeparam>
             <param name="ignoreCase"></param>
             <param name="rowView"></param>
+            <param name="autoMapper"></param>
             <param name="mapping"></param>
             <returns></returns>
         </member>
@@ -8416,6 +8479,11 @@
                 否需要注明转载来源
             </summary>
         </member>
+        <member name="T:SCADA.CommonLib.Helper.WeiXinHelper.Models.TempalateMessageResponse">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="P:SCADA.CommonLib.Helper.WeiXinHelper.Models.TempalateMessageResponse.Errcode">
             <summary>
             
@@ -9629,7 +9697,11 @@
             
             </summary>
         </member>
-        <!-- Badly formed XML comment ignored for member "P:SCADA.CommonLib.LoggerHelper.LogQueryModel.CreateDate" -->
+        <member name="P:SCADA.CommonLib.LoggerHelper.LogQueryModel.CreateDate">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="P:SCADA.CommonLib.LoggerHelper.LogQueryModel.LogLevel">
             <summary>
             
@@ -10224,6 +10296,21 @@
             工厂名称
             </summary>
         </member>
+        <member name="T:SCADA.CommonLib.DateTimeChangedArgs">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.CommonLib.DateTimeChangedArgs.ChangeType">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.CommonLib.DateTimeChangedArgs.TimeFlag">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="T:SCADA.CommonLib.Scheduler.BaseJob">
             <summary>
             调度器

BIN
Lib/SCADA.NetCamera.dll


BIN
Lib/SCADA.dll


+ 103 - 64
Lib/SCADA.xml

@@ -1212,6 +1212,24 @@
             设备分组
             </summary>
         </member>
+        <member name="P:SCADA.BaseDevice.PackageIsChanged">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="F:SCADA.BaseDevice.CmdBuffer">
+            <summary>命令缓冲避免每次读取的时候要重新编码
+            </summary>
+        </member>
+        <member name="F:SCADA.BaseDevice.RegLenRegRangeName">
+            <summary> 寄存器长度转换成寄存器范围
+            </summary>
+        </member>
+        <member name="P:SCADA.BaseDevice.Simulated">
+            <summary>
+            是否模拟
+            </summary>
+        </member>
         <member name="P:SCADA.BaseDevice.IsReady">
             <summary>
             设备第一次扫描已经完成
@@ -1317,6 +1335,13 @@
             <param name="regNames"></param>
             <param name="pollRate"></param>
         </member>
+        <member name="M:SCADA.BaseDevice.GetRegsRange(System.Collections.Generic.Dictionary{System.String,SCADA.Drive.RegInfo})">
+            <summary>
+            
+            </summary>
+            <param name="regs"></param>
+            <returns></returns>
+        </member>
         <member name="M:SCADA.BaseDevice.OnBeforeScan(System.Collections.Generic.List{System.String})">
             <summary>
             
@@ -1338,6 +1363,13 @@
             <param name="regName"></param>
             <param name="regInfo"></param>
         </member>
+        <member name="M:SCADA.BaseDevice.RemoveListenReg(System.String)">
+            <summary>
+            移除掉寄存器
+            </summary>
+            <param name="regName"></param>
+            <returns></returns>
+        </member>
         <member name="M:SCADA.BaseDevice.OnScan">
             <summary>
             
@@ -1644,6 +1676,11 @@
             <param name="key"></param>
             <returns></returns>
         </member>
+        <member name="M:SCADA.BaseDevice.HotLoadConfig(System.Collections.Generic.List{System.String})">
+            <summary>
+            热加载寄存器
+            </summary>
+        </member>
         <member name="T:SCADA.BaseNotifyPropertyChanged">
             <summary>
             
@@ -2346,6 +2383,11 @@
             定义了结束标志后收到数据将引发事件
             </summary>
         </member>
+        <member name="P:SCADA.Comm.BaseComm.Simulated">
+            <summary>
+            
+            </summary>
+        </member>
         <member name="P:SCADA.Comm.BaseComm.ResponseInfos">
             <summary>
             
@@ -3098,6 +3140,11 @@
             </summary>
             <returns>错误描述</returns>
         </member>
+        <member name="P:SCADA.Comm.IComm.Simulated">
+            <summary>
+            是否模拟
+            </summary>
+        </member>
         <member name="M:SCADA.Comm.IComm.ReadBytes(System.Collections.Generic.List{System.Byte},SCADA.Comm.CommEndFlag)">
             <summary>
             发送指令并接收数据
@@ -4612,14 +4659,6 @@
             </summary>
             <param name="node"></param>
         </member>
-        <member name="F:SCADA.Drive.BaseProtocol.CmdBuffer">
-            <summary>命令缓冲避免每次读取的时候要重新编码
-            </summary>
-        </member>
-        <member name="F:SCADA.Drive.BaseProtocol.RegLenRegRangeName">
-            <summary> 寄存器长度转换成寄存器范围
-            </summary>
-        </member>
         <member name="P:SCADA.Drive.BaseProtocol.RangeDesc">
             <summary> 访问范围描述
             </summary>
@@ -4824,61 +4863,6 @@
             <param name="message"></param>
             <returns></returns>
         </member>
-        <member name="T:SCADA.Drive.BaseProtocol.ListenPackage">
-            <summary>
-            监听包信息
-            </summary>
-        </member>
-        <member name="P:SCADA.Drive.BaseProtocol.ListenPackage.PackageName">
-            <summary>
-            
-            </summary>
-        </member>
-        <member name="P:SCADA.Drive.BaseProtocol.ListenPackage.IsGood">
-            <summary>
-            
-            </summary>
-        </member>
-        <member name="P:SCADA.Drive.BaseProtocol.ListenPackage.StartReg">
-            <summary>
-            启始寄存器
-            </summary>
-        </member>
-        <member name="P:SCADA.Drive.BaseProtocol.ListenPackage.RegArea">
-            <summary>
-            寄存器区域
-            </summary>
-        </member>
-        <member name="P:SCADA.Drive.BaseProtocol.ListenPackage.ReadLength">
-            <summary>
-            读取次数
-            </summary>
-        </member>
-        <member name="P:SCADA.Drive.BaseProtocol.ListenPackage.ContinuousNG">
-            <summary>
-            连续读取失败次数
-            </summary>
-        </member>
-        <member name="P:SCADA.Drive.BaseProtocol.ListenPackage.Regs">
-            <summary>
-            包含的寄存器
-            </summary>
-        </member>
-        <member name="P:SCADA.Drive.BaseProtocol.ListenPackage.ScanPeriod">
-            <summary>
-            
-            </summary>
-        </member>
-        <member name="P:SCADA.Drive.BaseProtocol.ListenPackage.LastScanTime">
-            <summary>
-            最后一次扫描的时间
-            </summary>
-        </member>
-        <member name="P:SCADA.Drive.BaseProtocol.ListenPackage.ErrorMsg">
-            <summary>
-            包错误信息
-            </summary>
-        </member>
         <member name="T:SCADA.Drive.CIP.BaseCIP">
             <summary>
             AllenBradley PLC 基类
@@ -6113,6 +6097,61 @@
             
             </summary>
         </member>
+        <member name="T:SCADA.Drive.ListenPackage">
+            <summary>
+            监听包信息
+            </summary>
+        </member>
+        <member name="P:SCADA.Drive.ListenPackage.PackageName">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.Drive.ListenPackage.IsGood">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.Drive.ListenPackage.StartReg">
+            <summary>
+            启始寄存器
+            </summary>
+        </member>
+        <member name="P:SCADA.Drive.ListenPackage.RegArea">
+            <summary>
+            寄存器区域
+            </summary>
+        </member>
+        <member name="P:SCADA.Drive.ListenPackage.ReadLength">
+            <summary>
+            读取次数
+            </summary>
+        </member>
+        <member name="P:SCADA.Drive.ListenPackage.ContinuousNG">
+            <summary>
+            连续读取失败次数
+            </summary>
+        </member>
+        <member name="P:SCADA.Drive.ListenPackage.Regs">
+            <summary>
+            包含的寄存器
+            </summary>
+        </member>
+        <member name="P:SCADA.Drive.ListenPackage.ScanPeriod">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:SCADA.Drive.ListenPackage.LastScanTime">
+            <summary>
+            最后一次扫描的时间
+            </summary>
+        </member>
+        <member name="P:SCADA.Drive.ListenPackage.ErrorMsg">
+            <summary>
+            包错误信息
+            </summary>
+        </member>
         <member name="T:SCADA.Drive.Mitsubishi.BaseMitsubishi">
             <summary>
             
@@ -8325,7 +8364,7 @@
         </member>
         <member name="P:SCADA.Drive.RegInfo.UInt64">
             <summary>
-            32位无符号数
+            64位无符号数
             </summary>
         </member>
         <member name="P:SCADA.Drive.RegInfo.Float">

BIN
Lib/SCADA_DAQ.Plugin.Core.dll


BIN
Lib/SCADA_DAQ.Plugin.CoreUI.dll


BIN
Lib/SCADA_DAQ.Plugin.Machine.dll


BIN
Lib/SCADA_DAQ.Plugin.MachineUI.dll


BIN
Lib/SCADA_DAQ.Plugin.RESTful.dll


BIN
Lib/Topshelf.dll


BIN
Lib/Xceed.Wpf.Toolkit.dll


+ 6 - 0
SCADA_DAQ.Plugin.TailgMain/App.config

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<configuration>
+    <startup> 
+        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7" />
+    </startup>
+</configuration>

+ 40 - 0
SCADA_DAQ.Plugin.TailgMain/Env.cs

@@ -0,0 +1,40 @@
+using DIL;
+using SCADA.CommonCtrl.Wpf;
+using SCADA.CommonCtrl.WpfControl;
+using SCADA.CommonCtrl.WpfHelper;
+using SCADA.CommonLib;
+using SCADA.CommonLib.Data.DIL;
+using SCADA.CommonLib.Data.DIL.Sqlite;
+using SCADA.CommonLib.Helper;
+using SCADA_DAQ.Plugin.Core.License;
+using SysManage.User;
+using System;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.IO;
+using System.Linq;
+using System.Reflection;
+using System.Windows;
+using System.Windows.Media;
+using System.Xml.Schema;
+
+namespace SCADA_DAQ.Plugin.TailgMain
+{
+    class Env
+    {
+        // SQLite
+        public static DILDB DAL = null;
+
+        // SQL Server
+        public static SqlSchema.DIL.DILDB SgIDAL = new SqlSchema.DIL.DILDB("127.0.0.1", "TL_DB", "sa", "M+123456");
+        //public static SqlSchema.DIL.DILDB SgIDAL = new SqlSchema.DIL.DILDB(@"10.255.254.250", "TL_DB", "sa", "M+123456");
+
+
+        public static bool EnvInitFinish = false;
+        public static User NewUser;
+
+        public static Schedual Schedual { get; internal set; } = Schedual.Instance;
+    
+    }
+}
+

+ 55 - 0
SCADA_DAQ.Plugin.TailgMain/Properties/AssemblyInfo.cs

@@ -0,0 +1,55 @@
+using System.Reflection;
+using System.Resources;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+using System.Windows;
+
+// 有关程序集的一般信息由以下
+// 控制。更改这些特性值可修改
+// 与程序集关联的信息。
+[assembly: AssemblyTitle("SCADA_DAQ.Plugin.TailgMain")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("SCADA_DAQ.Plugin.TailgMain")]
+[assembly: AssemblyCopyright("Copyright ©  2023")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// 将 ComVisible 设置为 false 会使此程序集中的类型
+//对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型
+//请将此类型的 ComVisible 特性设置为 true。
+[assembly: ComVisible(false)]
+
+//若要开始生成可本地化的应用程序,请设置
+//.csproj 文件中的 <UICulture>CultureYouAreCodingWith</UICulture>
+//例如,如果您在源文件中使用的是美国英语,
+//使用的是美国英语,请将 <UICulture> 设置为 en-US。  然后取消
+//对以下 NeutralResourceLanguage 特性的注释。  更新
+//以下行中的“en-US”以匹配项目文件中的 UICulture 设置。
+
+//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
+
+
+[assembly: ThemeInfo(
+    ResourceDictionaryLocation.None, //主题特定资源词典所处位置
+                                     //(未在页面中找到资源时使用,
+                                     //或应用程序资源字典中找到时使用)
+    ResourceDictionaryLocation.SourceAssembly //常规资源词典所处位置
+                                              //(未在页面中找到资源时使用,
+                                              //、应用程序或任何主题专用资源字典中找到时使用)
+)]
+
+
+// 程序集的版本信息由下列四个值组成: 
+//
+//      主版本
+//      次版本
+//      生成号
+//      修订号
+//
+//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
+//通过使用 "*",如下所示:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]

+ 71 - 0
SCADA_DAQ.Plugin.TailgMain/Properties/Resources.Designer.cs

@@ -0,0 +1,71 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     此代码由工具生成。
+//     运行时版本: 4.0.30319.42000
+//
+//     对此文件的更改可能导致不正确的行为,如果
+//     重新生成代码,则所做更改将丢失。
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+namespace SCADA_DAQ.Plugin.TailgMain.Properties
+{
+
+
+    /// <summary>
+    ///   强类型资源类,用于查找本地化字符串等。
+    /// </summary>
+    // 此类是由 StronglyTypedResourceBuilder
+    // 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
+    // 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen
+    // (以 /str 作为命令选项),或重新生成 VS 项目。
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+    internal class Resources
+    {
+
+        private static global::System.Resources.ResourceManager resourceMan;
+
+        private static global::System.Globalization.CultureInfo resourceCulture;
+
+        [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+        internal Resources()
+        {
+        }
+
+        /// <summary>
+        ///   返回此类使用的缓存 ResourceManager 实例。
+        /// </summary>
+        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+        internal static global::System.Resources.ResourceManager ResourceManager
+        {
+            get
+            {
+                if ((resourceMan == null))
+                {
+                    global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("SCADA_DAQ.Plugin.TailgMain.Properties.Resources", typeof(Resources).Assembly);
+                    resourceMan = temp;
+                }
+                return resourceMan;
+            }
+        }
+
+        /// <summary>
+        ///   重写当前线程的 CurrentUICulture 属性,对
+        ///   使用此强类型资源类的所有资源查找执行重写。
+        /// </summary>
+        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+        internal static global::System.Globalization.CultureInfo Culture
+        {
+            get
+            {
+                return resourceCulture;
+            }
+            set
+            {
+                resourceCulture = value;
+            }
+        }
+    }
+}

+ 117 - 0
SCADA_DAQ.Plugin.TailgMain/Properties/Resources.resx

@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 30 - 0
SCADA_DAQ.Plugin.TailgMain/Properties/Settings.Designer.cs

@@ -0,0 +1,30 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     This code was generated by a tool.
+//     Runtime Version:4.0.30319.42000
+//
+//     Changes to this file may cause incorrect behavior and will be lost if
+//     the code is regenerated.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+namespace SCADA_DAQ.Plugin.TailgMain.Properties
+{
+
+
+    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
+    internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
+    {
+
+        private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
+
+        public static Settings Default
+        {
+            get
+            {
+                return defaultInstance;
+            }
+        }
+    }
+}

+ 7 - 0
SCADA_DAQ.Plugin.TailgMain/Properties/Settings.settings

@@ -0,0 +1,7 @@
+<?xml version='1.0' encoding='utf-8'?>
+<SettingsFile xmlns="uri:settings" CurrentProfile="(Default)">
+  <Profiles>
+    <Profile Name="(Default)" />
+  </Profiles>
+  <Settings />
+</SettingsFile>

+ 125 - 0
SCADA_DAQ.Plugin.TailgMain/SCADA_DAQ.Plugin.TailgMain.csproj

@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProjectGuid>{A5CBC6C3-7025-4775-877E-520789CFF5BF}</ProjectGuid>
+    <OutputType>Library</OutputType>
+    <RootNamespace>SCADA_DAQ.Plugin.TailgMain</RootNamespace>
+    <AssemblyName>SCADA_DAQ.Plugin.TailgMain</AssemblyName>
+    <TargetFrameworkVersion>v4.7</TargetFrameworkVersion>
+    <FileAlignment>512</FileAlignment>
+    <ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+    <WarningLevel>4</WarningLevel>
+    <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
+    <Deterministic>true</Deterministic>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <PlatformTarget>AnyCPU</PlatformTarget>
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <PlatformTarget>AnyCPU</PlatformTarget>
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup>
+    <StartupObject />
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="SCADA">
+      <HintPath>..\Lib\SCADA.dll</HintPath>
+    </Reference>
+    <Reference Include="SCADA.CNC.FANUC">
+      <HintPath>..\Lib\SCADA.CNC.FANUC.dll</HintPath>
+    </Reference>
+    <Reference Include="SCADA.CommonCtrl">
+      <HintPath>..\Lib\SCADA.CommonCtrl.dll</HintPath>
+    </Reference>
+    <Reference Include="SCADA.CommonLib">
+      <HintPath>..\Lib\SCADA.CommonLib.dll</HintPath>
+    </Reference>
+    <Reference Include="SCADA.NetCamera">
+      <HintPath>..\Lib\SCADA.NetCamera.dll</HintPath>
+    </Reference>
+    <Reference Include="SCADA_DAQ.Plugin.Core">
+      <HintPath>..\Lib\SCADA_DAQ.Plugin.Core.dll</HintPath>
+    </Reference>
+    <Reference Include="SCADA_DAQ.Plugin.CoreUI">
+      <HintPath>..\Lib\SCADA_DAQ.Plugin.CoreUI.dll</HintPath>
+    </Reference>
+    <Reference Include="SCADA_DAQ.Plugin.Machine">
+      <HintPath>..\Lib\SCADA_DAQ.Plugin.Machine.dll</HintPath>
+    </Reference>
+    <Reference Include="SCADA_DAQ.Plugin.MachineUI">
+      <HintPath>..\Lib\SCADA_DAQ.Plugin.MachineUI.dll</HintPath>
+    </Reference>
+    <Reference Include="SCADA_DAQ.Plugin.RESTful">
+      <HintPath>..\Lib\SCADA_DAQ.Plugin.RESTful.dll</HintPath>
+    </Reference>
+    <Reference Include="System" />
+    <Reference Include="System.Data" />
+    <Reference Include="System.Xml" />
+    <Reference Include="Microsoft.CSharp" />
+    <Reference Include="System.Core" />
+    <Reference Include="System.Xml.Linq" />
+    <Reference Include="System.Data.DataSetExtensions" />
+    <Reference Include="System.Net.Http" />
+    <Reference Include="System.Xaml">
+      <RequiredTargetFramework>4.0</RequiredTargetFramework>
+    </Reference>
+    <Reference Include="WindowsBase" />
+    <Reference Include="PresentationCore" />
+    <Reference Include="PresentationFramework" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Env.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Properties\Resources.Designer.cs">
+      <AutoGen>True</AutoGen>
+      <DesignTime>True</DesignTime>
+      <DependentUpon>Resources.resx</DependentUpon>
+    </Compile>
+    <Compile Include="Properties\Settings.Designer.cs">
+      <AutoGen>True</AutoGen>
+      <DependentUpon>Settings.settings</DependentUpon>
+      <DesignTimeSharedInput>True</DesignTimeSharedInput>
+    </Compile>
+    <Compile Include="Service\CustomerService.cs" />
+    <Compile Include="Service\CustomerServiceConfig.cs" />
+    <EmbeddedResource Include="Properties\Resources.resx">
+      <Generator>ResXFileCodeGenerator</Generator>
+      <LastGenOutput>Resources.Designer.cs</LastGenOutput>
+    </EmbeddedResource>
+    <None Include="Properties\Settings.settings">
+      <Generator>SettingsSingleFileGenerator</Generator>
+      <LastGenOutput>Settings.Designer.cs</LastGenOutput>
+    </None>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="App.config" />
+  </ItemGroup>
+  <ItemGroup>
+    <Resource Include="Service\00 此目录存放自定义后台服务.txt" />
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="..\SCADA_DAQ.DAL\SCADA_DAQ.DAL.csproj">
+      <Project>{483009ad-8213-4c71-a0ae-1e8d6f7af8ec}</Project>
+      <Name>SCADA_DAQ.DAL</Name>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+</Project>

+ 1 - 0
SCADA_DAQ.Plugin.TailgMain/Service/00 此目录存放自定义后台服务.txt

@@ -0,0 +1 @@
+

+ 159 - 0
SCADA_DAQ.Plugin.TailgMain/Service/CustomerService.cs

@@ -0,0 +1,159 @@
+using LiveCharts.Helpers;
+using SCADA;
+using SCADA.Comm;
+using SCADA.CommonLib;
+using SCADA.CommonLib.Helper;
+using SCADA.CommonLib.Service;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Linq;
+using System.Reflection;
+using System.Text;
+using System.Threading;
+using System.Threading.Tasks;
+using System.Windows.Documents;
+
+namespace SCADA_DAQ.Plugin.TailgMain.Service
+{
+    /// <summary>
+    /// 
+    /// </summary>
+    [DisplayName("测试")]
+    public class CustomerService : BaseService
+    {
+        // 数据库对象
+        private static SqlSchema.DIL.DILDB DAL = Env.SgIDAL;
+
+        // 静态缓存时长/s
+        private static int staticCacheDuration = 2;
+
+        // 静态缓存持续时间/s
+        private static int taskInfoStaticCacheDuration = 0;
+        private static int outputAndOrderStaticCacheDuration = 0;
+
+        // 静态缓存结果
+        private object taskInfoStaticCache = null;
+        private object OutputAndOrderStaticCache = null;
+
+
+        private static CustomerService _instance;
+        private CustomerServiceConfig _customerServiceConfig;
+        /// <summary>
+        /// 
+        /// </summary>
+        public override ObservableObject ServiceConfig
+        {
+            get => _customerServiceConfig;
+            set { _customerServiceConfig = (CustomerServiceConfig)value; }
+        }
+
+
+        /// <summary>
+        /// 
+        /// </summary>
+        public static CustomerService Instance { get => _instance ?? (_instance = new CustomerService()); }
+
+
+        /// <summary>
+        /// 
+        /// </summary>
+        public override Type ConfigType => typeof(CustomerServiceConfig);
+
+
+        private CustomerService()
+        {
+            if (_instance == null)
+            {
+                _instance = this;
+            }
+        }
+
+
+
+        /// <summary>
+        /// 
+        /// </summary>
+        /// <returns></returns>
+        public override bool Start()
+        {
+            RpcService.GetInstance().Regiseter(this);   //将服务中方法注册到RPC服务器,可以给WebApi调用
+            Env.Schedual.DateTimeChanged += Schedual_DateTimeChanged;
+            return base.Start();
+        }
+
+        /// <summary>
+        /// 定时器
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void Schedual_DateTimeChanged(object sender, DateTimeChangedArgs e)
+        {
+            if (e.TimeFlag.Second % 1 == 0)
+            {
+                if (taskInfoStaticCacheDuration > 0)
+                    taskInfoStaticCacheDuration--;
+
+                if (outputAndOrderStaticCacheDuration > 0)
+                    outputAndOrderStaticCacheDuration--;
+            }
+        }
+
+
+
+        /// <summary>
+        /// PDA扫码获取产品信息
+        /// </summary>
+        /// <param name="barcode"></param>
+        /// <returns></returns>
+        public object GetData(string barcode)
+        {
+            return new object();
+        }
+
+        /// <summary>
+        /// PDA提交产品信息
+        /// </summary>
+        /// <param name="model"></param>
+        /// <returns></returns>
+        public bool SubmitData(object model)
+        {
+            return true;
+        }
+
+        /// <summary>
+        /// PDA查询历史提交记录
+        /// </summary>
+        /// <param name="count"></param>
+        /// <param name="skip"></param>
+        /// <param name="filter"></param>
+        /// <returns></returns>
+        public object GetHistoryData(int count, int skip, string filter)
+        {
+            return new object();
+        }
+
+
+
+        /// <summary>
+        /// 获取公告信息
+        /// </summary>
+        /// <returns></returns>
+        public RpcResponse<string> test()
+        {
+            return new RpcResponse<string>() { Data = "aaaaa", Message = null };
+        }
+
+
+        /// <summary>
+        /// 停止服务
+        /// </summary>
+        /// <returns></returns>
+        public override bool Stop()
+        {
+            Env.Schedual.DateTimeChanged -= Schedual_DateTimeChanged;  // 销毁定时器
+            return base.Stop();
+        }
+    }
+}

+ 35 - 0
SCADA_DAQ.Plugin.TailgMain/Service/CustomerServiceConfig.cs

@@ -0,0 +1,35 @@
+using SCADA.CommonLib;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace SCADA_DAQ.Plugin.TailgMain.Service
+{
+    /// <summary>
+    /// 参数
+    /// </summary>
+    public class CustomerServiceConfig:ObservableObject
+    {
+
+		private int _MyProperty;
+		[AutoViewProperty("test")]
+		/// <summary>
+		/// 
+		/// </summary>
+		public int MyProperty
+		{
+			get { return _MyProperty; }
+			set
+			{
+				if (value != _MyProperty)
+				{
+					_MyProperty = value;
+					OnPropertyChanged(nameof(MyProperty));
+				}
+			}
+		}
+
+	}
+}

BIN
SCADA_DAQ/Content.zip