18256738414
5 天以前 071a7efe34469cbfc0f5401291c6e3ba21f31b19
双钱,空托自动上线优先空托货架区
5个文件已修改
161 ■■■■■ 已修改文件
App.config 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HH.WCS.Mobox3.DoubleCoin.csproj 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/ApiHelper.cs 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
core/Monitor.cs 36 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages.config 40 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
App.config
@@ -51,7 +51,7 @@
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.1.1.3" newVersion="4.1.1.3" />
        <bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="BouncyCastle.Crypto" publicKeyToken="0e99375e54769942" culture="neutral" />
@@ -69,6 +69,10 @@
        <assemblyIdentity name="System.Diagnostics.DiagnosticSource" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-6.0.0.1" newVersion="6.0.0.1" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Runtime.InteropServices.RuntimeInformation" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>
HH.WCS.Mobox3.DoubleCoin.csproj
@@ -64,7 +64,7 @@
      <HintPath>packages\EasyModbusTCP.5.6.0\lib\net40\EasyModbus.dll</HintPath>
    </Reference>
    <Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
      <HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.8.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
      <HintPath>packages\Microsoft.Bcl.AsyncInterfaces.8.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
    </Reference>
    <Reference Include="Microsoft.Bcl.HashCode, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
      <HintPath>packages\Microsoft.Bcl.HashCode.1.1.1\lib\net461\Microsoft.Bcl.HashCode.dll</HintPath>
@@ -73,19 +73,19 @@
      <HintPath>packages\Microsoft.Extensions.Logging.Abstractions.3.1.32\lib\netstandard2.0\Microsoft.Extensions.Logging.Abstractions.dll</HintPath>
    </Reference>
    <Reference Include="Microsoft.Owin, Version=4.2.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
      <HintPath>..\packages\Microsoft.Owin.4.2.2\lib\net45\Microsoft.Owin.dll</HintPath>
      <HintPath>packages\Microsoft.Owin.4.2.2\lib\net45\Microsoft.Owin.dll</HintPath>
    </Reference>
    <Reference Include="Microsoft.Owin.Host.HttpListener, Version=4.2.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
      <HintPath>..\packages\Microsoft.Owin.Host.HttpListener.4.2.2\lib\net45\Microsoft.Owin.Host.HttpListener.dll</HintPath>
      <HintPath>packages\Microsoft.Owin.Host.HttpListener.4.2.2\lib\net45\Microsoft.Owin.Host.HttpListener.dll</HintPath>
    </Reference>
    <Reference Include="Microsoft.Owin.Hosting, Version=4.2.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
      <HintPath>..\packages\Microsoft.Owin.Hosting.4.2.2\lib\net45\Microsoft.Owin.Hosting.dll</HintPath>
      <HintPath>packages\Microsoft.Owin.Hosting.4.2.2\lib\net45\Microsoft.Owin.Hosting.dll</HintPath>
    </Reference>
    <Reference Include="Microsoft.Web.Infrastructure, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
      <HintPath>packages\Microsoft.Web.Infrastructure.2.0.0\lib\net40\Microsoft.Web.Infrastructure.dll</HintPath>
    </Reference>
    <Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
      <HintPath>..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
      <HintPath>packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
    </Reference>
    <Reference Include="Newtonsoft.Json.Bson, Version=1.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
      <HintPath>packages\Newtonsoft.Json.Bson.1.0.2\lib\net45\Newtonsoft.Json.Bson.dll</HintPath>
@@ -115,20 +115,20 @@
      <HintPath>packages\OPCFoundation.NetStandard.Opc.Ua.Server.1.5.374.126\lib\netstandard2.0\Opc.Ua.Server.dll</HintPath>
    </Reference>
    <Reference Include="Owin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f0ebd12fd5e55cc5, processorArchitecture=MSIL">
      <HintPath>..\packages\Owin.1.0\lib\net40\Owin.dll</HintPath>
      <HintPath>packages\Owin.1.0\lib\net40\Owin.dll</HintPath>
    </Reference>
    <Reference Include="S7.Net, Version=0.20.0.0, Culture=neutral, PublicKeyToken=d5812d469e84c693, processorArchitecture=MSIL">
      <HintPath>..\packages\S7netplus.0.20.0\lib\net452\S7.Net.dll</HintPath>
      <HintPath>packages\S7netplus.0.20.0\lib\net462\S7.Net.dll</HintPath>
    </Reference>
    <Reference Include="SqlSugar, Version=5.1.4.168, Culture=neutral, processorArchitecture=MSIL">
      <HintPath>packages\SqlSugar.5.1.4.169\lib\SqlSugar.dll</HintPath>
    <Reference Include="SqlSugar, Version=5.1.4.198, Culture=neutral, processorArchitecture=MSIL">
      <HintPath>packages\SqlSugar.5.1.4.198\lib\SqlSugar.dll</HintPath>
    </Reference>
    <Reference Include="Swashbuckle.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cd1bb07a5ac7c7bc, processorArchitecture=MSIL">
      <HintPath>..\packages\Swashbuckle.Core.5.6.0\lib\net40\Swashbuckle.Core.dll</HintPath>
      <HintPath>packages\Swashbuckle.Core.5.6.0\lib\net40\Swashbuckle.Core.dll</HintPath>
    </Reference>
    <Reference Include="System" />
    <Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
      <HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
      <HintPath>packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
    </Reference>
    <Reference Include="System.ComponentModel.Composition" />
    <Reference Include="System.Configuration" />
@@ -144,33 +144,48 @@
    <Reference Include="System.IO.Compression" />
    <Reference Include="System.Management" />
    <Reference Include="System.Memory, Version=4.0.1.2, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
      <HintPath>..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll</HintPath>
      <HintPath>packages\System.Memory.4.5.5\lib\net461\System.Memory.dll</HintPath>
    </Reference>
    <Reference Include="System.Net.Http, Version=4.1.1.3, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
      <HintPath>..\packages\System.Net.Http.4.3.4\lib\net46\System.Net.Http.dll</HintPath>
      <HintPath>packages\System.Net.Http.4.3.4\lib\net46\System.Net.Http.dll</HintPath>
      <Private>True</Private>
      <Private>True</Private>
    </Reference>
    <Reference Include="System.Net.Http.Formatting, Version=6.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
      <HintPath>packages\Microsoft.AspNet.WebApi.Client.6.0.0\lib\net45\System.Net.Http.Formatting.dll</HintPath>
    </Reference>
    <Reference Include="System.Numerics" />
    <Reference Include="System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
      <HintPath>..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
      <HintPath>packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
    </Reference>
    <Reference Include="System.Runtime.CompilerServices.Unsafe, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
      <HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
      <HintPath>packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
    </Reference>
    <Reference Include="System.Runtime.InteropServices.RuntimeInformation, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
      <HintPath>packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll</HintPath>
      <Private>True</Private>
      <Private>True</Private>
    </Reference>
    <Reference Include="System.Runtime.Serialization" />
    <Reference Include="System.Security.Cryptography.Algorithms, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
      <HintPath>..\packages\System.Security.Cryptography.Algorithms.4.3.1\lib\net461\System.Security.Cryptography.Algorithms.dll</HintPath>
      <HintPath>packages\System.Security.Cryptography.Algorithms.4.3.1\lib\net461\System.Security.Cryptography.Algorithms.dll</HintPath>
      <Private>True</Private>
      <Private>True</Private>
    </Reference>
    <Reference Include="System.Security.Cryptography.Encoding, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
      <HintPath>..\packages\System.Security.Cryptography.Encoding.4.3.0\lib\net46\System.Security.Cryptography.Encoding.dll</HintPath>
      <HintPath>packages\System.Security.Cryptography.Encoding.4.3.0\lib\net46\System.Security.Cryptography.Encoding.dll</HintPath>
      <Private>True</Private>
      <Private>True</Private>
    </Reference>
    <Reference Include="System.Security.Cryptography.Primitives, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
      <HintPath>..\packages\System.Security.Cryptography.Primitives.4.3.0\lib\net46\System.Security.Cryptography.Primitives.dll</HintPath>
      <HintPath>packages\System.Security.Cryptography.Primitives.4.3.0\lib\net46\System.Security.Cryptography.Primitives.dll</HintPath>
      <Private>True</Private>
      <Private>True</Private>
    </Reference>
    <Reference Include="System.Security.Cryptography.X509Certificates, Version=4.1.1.2, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
      <HintPath>packages\System.Security.Cryptography.X509Certificates.4.3.2\lib\net461\System.Security.Cryptography.X509Certificates.dll</HintPath>
      <Private>True</Private>
      <Private>True</Private>
    </Reference>
    <Reference Include="System.ServiceModel" />
    <Reference Include="System.ServiceModel.Primitives, Version=4.10.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
@@ -178,13 +193,13 @@
    </Reference>
    <Reference Include="System.ServiceProcess" />
    <Reference Include="System.Text.Encodings.Web, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
      <HintPath>..\packages\System.Text.Encodings.Web.8.0.0\lib\net462\System.Text.Encodings.Web.dll</HintPath>
      <HintPath>packages\System.Text.Encodings.Web.8.0.0\lib\net462\System.Text.Encodings.Web.dll</HintPath>
    </Reference>
    <Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
      <HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
      <HintPath>packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
    </Reference>
    <Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
      <HintPath>..\packages\System.ValueTuple.4.5.0\lib\net47\System.ValueTuple.dll</HintPath>
      <HintPath>packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
    </Reference>
    <Reference Include="System.Web" />
    <Reference Include="System.Web.Http, Version=5.3.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
@@ -203,10 +218,10 @@
    <Reference Include="System.Data" />
    <Reference Include="System.Xml" />
    <Reference Include="Topshelf, Version=4.3.0.0, Culture=neutral, PublicKeyToken=b800c4cfcdeea87b, processorArchitecture=MSIL">
      <HintPath>..\packages\Topshelf.4.3.0\lib\net452\Topshelf.dll</HintPath>
      <HintPath>packages\Topshelf.4.3.0\lib\net452\Topshelf.dll</HintPath>
    </Reference>
    <Reference Include="Topshelf.NLog, Version=4.3.0.0, Culture=neutral, PublicKeyToken=b800c4cfcdeea87b, processorArchitecture=MSIL">
      <HintPath>..\packages\Topshelf.NLog.4.3.0\lib\net452\Topshelf.NLog.dll</HintPath>
      <HintPath>packages\Topshelf.NLog.4.3.0\lib\net452\Topshelf.NLog.dll</HintPath>
    </Reference>
    <Reference Include="WebActivatorEx, Version=2.0.0.0, Culture=neutral, PublicKeyToken=7b26dc2a43f6a0d4, processorArchitecture=MSIL">
      <HintPath>packages\WebActivatorEx.2.2.0\lib\net40\WebActivatorEx.dll</HintPath>
api/ApiHelper.cs
@@ -387,17 +387,21 @@
                    endLoc.N_LOCK_STATE = 1;
                    endLoc.S_LOCK_STATE = "入库锁";
                    var locCntList = new List<TN_Loc_Container>();
                    string cntStr = "";
                    for (int i = 0; i < model.cntCount; i++)
                    {
                         cntStr += Guid.NewGuid().ToString("D")+",";
                    }
                    cntStr.Trim(',');
                    var locCnt = new TN_Loc_Container()
                    {
                        S_LOC_CODE = startLoc.S_CODE,
                        S_CNTR_CODE = cntStr,
                            S_CNTR_CODE = Guid.NewGuid().ToString("D"),
                    };
                        cntStr += locCnt.S_CNTR_CODE + ",";
                        locCntList.Add(locCnt);
                    }
                    cntStr= cntStr.Trim(',');
                    var task = new TN_Task()
                    {
@@ -411,19 +415,19 @@
                        N_SCHEDULE_TYPE = 1,
                        N_B_STATE = 0,
                        S_B_STATE = "等待",
                        S_CNTR_CODE = locCnt.S_CNTR_CODE,
                        S_CNTR_CODE = cntStr,
                    };
                    if (
                        db.Updateable<TN_Location>(startLoc).UpdateColumns(it => new { it.N_CURRENT_NUM, it.N_LOCK_STATE, it.S_LOCK_STATE }).ExecuteCommand() == 1 &&
                        db.Updateable<TN_Location>(endLoc).UpdateColumns(it => new { it.N_LOCK_STATE, it.S_LOCK_STATE }).ExecuteCommand() == 1 &&
                        db.Insertable<TN_Loc_Container>(locCnt).ExecuteCommand() == 1 &&
                        db.Insertable<TN_Loc_Container>(locCntList).ExecuteCommand() == 1 &&
                        db.Insertable<TN_Task>(task).ExecuteCommand() == 1
                        )
                    {
                        Task task1 = Task.Run(() =>
                        {
                            WMSHelper.InsertOpInfo(model.staff, "点对点", locCnt.S_CNTR_CODE);
                            WMSHelper.InsertOpInfo(model.staff, "点对点", cntStr);
                        });
                        trans.CommitTran();
core/Monitor.cs
@@ -380,11 +380,10 @@
                && o.N_LOCK_STATE == 0
                && o.S_LOCK_STATE == "无"
                && o.C_ENABLE == "Y"
                && o.N_CURRENT_NUM > 0
                && o.N_CURRENT_NUM == o.N_CAPACITY
                && SqlFunc.Subqueryable<TN_Loc_Container>().Where(b => b.S_LOC_CODE == o.S_CODE).Any()
                ).ToList().//空托堆叠库区
                OrderByDescending(o => o.N_CURRENT_NUM).
                First();
                FirstOrDefault();
                if (startLoc == null)
                {
@@ -393,16 +392,15 @@
                    && o.N_LOCK_STATE == 0
                    && o.S_LOCK_STATE == "无"
                    && o.C_ENABLE == "Y"
                    && o.N_CURRENT_NUM > 0
                    && o.N_CURRENT_NUM == o.N_CAPACITY
                    && SqlFunc.Subqueryable<TN_Loc_Container>().Where(b => b.S_LOC_CODE == o.S_CODE).Any()
                    ).ToList().//空托货架库区
                    OrderByDescending(o => o.N_CURRENT_NUM).
                    First();
                    FirstOrDefault();
                }
                if (startLoc == null)
                {
                    LogHelper.Info($"起点没有找到合适的空托货位,要求有货");
                    LogHelper.Info($"检测原材料产线下线附近是否有空位,起点没有找到合适的空托货位,要求有货");
                    return;
                }
@@ -410,7 +408,7 @@
                if (cntrList.Count < 1)
                {
                    LogHelper.Info($"起点{startLoc.S_CODE}未找到货位容器关系信息");
                    LogHelper.Info($"检测原材料产线下线附近是否有空位,起点{startLoc.S_CODE}未找到货位容器关系信息");
                    return;
                }
@@ -432,16 +430,16 @@
                    LocationHelper.LockLoc(startLoc.S_CODE, 2);//起点出库锁,
                    LocationHelper.LockLoc(endLoc.S_CODE, 1);//终点入库锁
                    LogHelper.Info($"生成空托自动上线任务成功,容器:{cntrString},起点:{startLoc.S_CODE}");
                    LogHelper.Info($"检测原材料产线下线附近是否有空位,生成空托自动上线任务成功,容器:{cntrString},起点:{startLoc.S_CODE}");
                }
                else
                {
                    LogHelper.Info($"生成空托自动上线任务失败,容器:{cntrString},起点:{startLoc.S_CODE}");
                    LogHelper.Info($"检测原材料产线下线附近是否有空位,生成空托自动上线任务失败,容器:{cntrString},起点:{startLoc.S_CODE}");
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex.Message, ex);
            }
        }
@@ -803,14 +801,14 @@
                            }
                            else
                            {
                                LogHelper.Info("重量相等,同步TN_DayProDetail跳过");
                                //LogHelper.Info("重量相等,同步TN_DayProDetail跳过");
                            }
                        }
                    }
                }
                else
                {
                    LogHelper.Info("当天的货品规格列表为0,同步TN_DayProDetail跳过");
                    //LogHelper.Info("当天的货品规格列表为0,同步TN_DayProDetail跳过");
                }
                // 同步 TN_WeekProSpcDetail
@@ -841,14 +839,14 @@
                            }
                            else
                            {
                                LogHelper.Info("重量相等,同步TN_WeekProSpcDetail跳过");
                                //LogHelper.Info("重量相等,同步TN_WeekProSpcDetail跳过");
                            }
                        }
                    }
                }
                else
                {
                    LogHelper.Info("当周的货品规格列表为0,同步TN_WeekProSpcDetail跳过");
                    //LogHelper.Info("当周的货品规格列表为0,同步TN_WeekProSpcDetail跳过");
                }
                // 同步 TN_MonthProSpcDetail
@@ -879,14 +877,14 @@
                            }
                            else
                            {
                                LogHelper.Info("重量相等,同步TN_MonthProSpcDetail跳过");
                                //LogHelper.Info("重量相等,同步TN_MonthProSpcDetail跳过");
                            }
                        }
                    }
                }
                else
                {
                    LogHelper.Info("当月的货品规格列表为0,同步TN_MonthProSpcDetail跳过");
                    //LogHelper.Info("当月的货品规格列表为0,同步TN_MonthProSpcDetail跳过");
                }
                // 同步 TN_YearProSpcDetail
@@ -918,14 +916,14 @@
                            }
                            else
                            {
                                LogHelper.Info("重量相等,同步TN_YearProSpcDetail跳过");
                                //LogHelper.Info("重量相等,同步TN_YearProSpcDetail跳过");
                            }
                        }
                    }
                }
                else
                {
                    LogHelper.Info("当年的货品规格列表为0,同步TN_YearProSpcDetail跳过");
                    //LogHelper.Info("当年的货品规格列表为0,同步TN_YearProSpcDetail跳过");
                }
            }
            catch (Exception ex)
packages.config
@@ -1,18 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="BouncyCastle.Cryptography" version="2.4.0" targetFramework="net462" />
  <package id="EasyModbusTCP" version="5.6.0" targetFramework="net461" />
  <package id="EasyModbusTCP" version="5.6.0" targetFramework="net462" />
  <package id="Microsoft.AspNet.WebApi.Client" version="6.0.0" targetFramework="net462" />
  <package id="Microsoft.AspNet.WebApi.Core" version="5.3.0" targetFramework="net462" />
  <package id="Microsoft.AspNet.WebApi.Owin" version="5.3.0" targetFramework="net462" />
  <package id="Microsoft.AspNet.WebApi.OwinSelfHost" version="5.3.0" targetFramework="net462" />
  <package id="Microsoft.AspNet.WebApi.WebHost" version="5.3.0" targetFramework="net462" />
  <package id="Microsoft.Bcl.AsyncInterfaces" version="8.0.0" targetFramework="net48" />
  <package id="Microsoft.Bcl.AsyncInterfaces" version="8.0.0" targetFramework="net462" />
  <package id="Microsoft.Bcl.HashCode" version="1.1.1" targetFramework="net462" />
  <package id="Microsoft.Extensions.Logging.Abstractions" version="3.1.32" targetFramework="net462" />
  <package id="Microsoft.Owin" version="4.2.2" targetFramework="net461" />
  <package id="Microsoft.Owin.Host.HttpListener" version="4.2.2" targetFramework="net461" />
  <package id="Microsoft.Owin.Hosting" version="4.2.2" targetFramework="net461" />
  <package id="Microsoft.Owin" version="4.2.2" targetFramework="net462" />
  <package id="Microsoft.Owin.Host.HttpListener" version="4.2.2" targetFramework="net462" />
  <package id="Microsoft.Owin.Hosting" version="4.2.2" targetFramework="net462" />
  <package id="Microsoft.Web.Infrastructure" version="2.0.0" targetFramework="net462" />
  <package id="Newtonsoft.Json" version="13.0.3" targetFramework="net462" />
  <package id="Newtonsoft.Json.Bson" version="1.0.2" targetFramework="net462" />
@@ -25,29 +25,29 @@
  <package id="OPCFoundation.NetStandard.Opc.Ua.Gds.Server.Common" version="1.5.374.126" targetFramework="net462" />
  <package id="OPCFoundation.NetStandard.Opc.Ua.Security.Certificates" version="1.5.374.126" targetFramework="net462" />
  <package id="OPCFoundation.NetStandard.Opc.Ua.Server" version="1.5.374.126" targetFramework="net462" />
  <package id="Owin" version="1.0" targetFramework="net461" />
  <package id="Owin" version="1.0" targetFramework="net462" />
  <package id="Portable.BouncyCastle" version="1.9.0" targetFramework="net462" />
  <package id="S7netplus" version="0.20.0" targetFramework="net461" requireReinstallation="true" />
  <package id="SqlSugar" version="5.1.4.169" targetFramework="net462" />
  <package id="Swashbuckle" version="5.6.0" targetFramework="net461" />
  <package id="Swashbuckle.Core" version="5.6.0" targetFramework="net461" />
  <package id="System.Buffers" version="4.5.1" targetFramework="net461" />
  <package id="S7netplus" version="0.20.0" targetFramework="net462" />
  <package id="SqlSugar" version="5.1.4.198" targetFramework="net462" />
  <package id="Swashbuckle" version="5.6.0" targetFramework="net462" />
  <package id="Swashbuckle.Core" version="5.6.0" targetFramework="net462" />
  <package id="System.Buffers" version="4.5.1" targetFramework="net462" />
  <package id="System.Diagnostics.DiagnosticSource" version="6.0.1" targetFramework="net462" />
  <package id="System.Formats.Asn1" version="8.0.1" targetFramework="net462" />
  <package id="System.Memory" version="4.5.5" targetFramework="net461" />
  <package id="System.Memory" version="4.5.5" targetFramework="net462" />
  <package id="System.Net.Http" version="4.3.4" targetFramework="net462" />
  <package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net461" />
  <package id="System.Runtime.CompilerServices.Unsafe" version="6.0.0" targetFramework="net461" />
  <package id="System.Runtime.InteropServices.RuntimeInformation" version="4.3.0" targetFramework="net452" />
  <package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net462" />
  <package id="System.Runtime.CompilerServices.Unsafe" version="6.0.0" targetFramework="net462" />
  <package id="System.Runtime.InteropServices.RuntimeInformation" version="4.3.0" targetFramework="net462" />
  <package id="System.Security.Cryptography.Algorithms" version="4.3.1" targetFramework="net462" />
  <package id="System.Security.Cryptography.Encoding" version="4.3.0" targetFramework="net462" />
  <package id="System.Security.Cryptography.Primitives" version="4.3.0" targetFramework="net462" />
  <package id="System.Security.Cryptography.X509Certificates" version="4.3.2" targetFramework="net462" />
  <package id="System.ServiceModel.Primitives" version="4.10.0" targetFramework="net462" />
  <package id="System.Text.Encodings.Web" version="8.0.0" targetFramework="net48" />
  <package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net461" />
  <package id="System.ValueTuple" version="4.5.0" targetFramework="net48" requireReinstallation="true" />
  <package id="Topshelf" version="4.3.0" targetFramework="net452" />
  <package id="Topshelf.NLog" version="4.3.0" targetFramework="net452" />
  <package id="System.Text.Encodings.Web" version="8.0.0" targetFramework="net462" />
  <package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net462" />
  <package id="System.ValueTuple" version="4.5.0" targetFramework="net462" />
  <package id="Topshelf" version="4.3.0" targetFramework="net462" />
  <package id="Topshelf.NLog" version="4.3.0" targetFramework="net462" />
  <package id="WebActivatorEx" version="2.2.0" targetFramework="net462" />
</packages>