123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486 |
- using System;
- using System.Data;
- using StandardLibrary;
- using MainForm.Models;
- using MainForm.DbHelper;
- using MainForm.ClassFile.ProjectClass;
- namespace MainForm
- {
- /// <summary>
- /// 全局变量
- /// </summary>
- public class GlobalContext
- {
- #region 变量
- //消息委托和事件
- public static Action Set; // 更新UI的委托方法
- public static Action Save; // 保存的委托方法
- public static Action Close; // 关闭的委托方法
- /// <summary>
- /// 日志文件保存位置
- /// </summary>
- public static string FilePath = AppDomain.CurrentDomain.BaseDirectory + "Config.ini";
- public static string MainDir = @"D:\MESFile\";
- public static string WorkLogDir = MainDir + @"WorkLog\"; // 运行日志
- public static string PlcLogDir = MainDir + @"PLCLog\"; // plc写入日志
- public static string MqttLogDir = MainDir + @"MqttLog\"; // mqtt日志
- public static string ProcessDataDir = MainDir + @"ProcessData\"; // 加工数据日志
- public static string OneCheckDataDir = MainDir + @"OneCheckData\"; // 点检数据日志
- public static string SQLLogDir = MainDir + @"SQLLog\"; // sql日志
- public static string DBDir = @"D:\LocalDataBase\";
- public static string MESConfig = MainDir + @"MESConfig.ini"; // MES接口的配置文件
- public static string MqttServerPath = AppDomain.CurrentDomain.BaseDirectory + @"\ThingsMode\MqttServer.exe";
- public static string MqttServerName = "MqttServer";
- /// <summary>
- /// 点检数据文件
- /// </summary>
- public static string CheckOneDataPath = AppDomain.CurrentDomain.BaseDirectory + "CheckOneData.ini";
- // 产线及产品信息
- public static string Project_Code; // 项⽬编码
- public static string Factory_Code; // ⼯⼚ID
- public static string Process_Section_Code; // ⼯段编码
- public static string LineCode; // 线体编码
- public static string LineName; // 线体名称
- public static string ProgramName; // 程序名
- public static string WorkOrderCode; // 车间订单号
- public static string BatchNumber; // 批次号(splcode)
- public static string Mtltmrk; // 产品型号(mtltmrk)
- public static string S1_work_station; // [S1] ⼯站
- public static string S1_device_code; // [S1] 装备编码
- public static string S1_station; // [S1] ⼯位Id
- public static string S2_work_station; // [S2] ⼯站
- public static string S2_device_code; // [S2] 装备编码
- public static string S2_station; // [S2] ⼯位Id
- public static string S3_work_station; // [S3] ⼯站
- public static string S3_device_code; // [S3] 装备编码
- public static string S3_station; // [S3] ⼯位Id
- public static string S4_1_work_station; // [S4_1] ⼯站
- public static string S4_1_device_code; // [S4_1] 装备编码
- public static string S4_1_station; // [S4_1] ⼯位Id
- public static string S4_3_work_station; // [S4_3] ⼯站
- public static string S4_3_device_code; // [S4_3] 装备编码
- public static string S4_3_station; // [S4_3] ⼯位Id
- public static string S4_4_work_station; // [S4_4] ⼯站
- public static string S4_4_device_code; // [S4_4] 装备编码
- public static string S4_4_station; // [S4_4] ⼯位Id
- public static string S4_5_work_station; // [S4_5] ⼯站
- public static string S4_5_device_code; // [S4_5] 装备编码
- public static string S4_5_station; // [S4_5] ⼯位Id
- public static string S5_work_station; // [S5] ⼯站
- public static string S5_device_code; // [S5] 装备编码
- public static string S5_station; // [S5] ⼯位Id
- // 设备
- //public static string PCAddress="192.168.1.244";
- public static bool IsUsePLC1;
- public static bool IsUsePLC2;
- public static bool IsUsePLC3;
- public static bool IsUsePLC4;
- public static bool IsUsePLC5;
- public static bool IsUsePLC6;
- public static bool IsUsePLC7;
- public static bool IsUsePLC8;
- public static bool IsUsePLC9;
- public static string Machine1Address;
- public static string Machine2Address;
- public static string Machine3Address;
- public static string Machine4Address;
- public static string Machine5Address;
- public static string Machine6Address;
- public static string Machine7Address;
- public static string Machine8Address;
- public static string Machine9Address;
- public static string PC1Address;
- public static string PC2Address;
- public static string PC3Address;
- public static string PC4Address;
- public static string PC5Address;
- public static string PC6Address;
- public static string PC7Address;
- public static string PC8Address;
- public static string PC9Address;
- public static int MachinePort;
- public static string AtlasAddressLeft;
- public static string AtlasAddressRight;
- public static int AtlasAddressPort;
- // TCP
- public static string QrCodeTCPAddress1;
- public static int QrCodeTCPPort1;
- public static string QrCodeTCPAddress2;
- public static int QrCodeTCPPort2;
- public static string QrCodeTCPAddress3;
- public static int QrCodeTCPPort3;
- public static string QrCodeTCPAddress4;
- public static int QrCodeTCPPort4;
- public static string QrCodeTCPAddress5;
- public static int QrCodeTCPPort5;
- // MES
- public static bool IsUseMES; // 是否 启用MES
- public static string MESAppId; // 应用ID;mes_test
- public static string MESAppKey; // API接口名称;mes
- public static string MESUserId; // 用户ID
- public static string ServerHost; // 主服务器地址
- public static string StationInMESUrl; // 入站接口Url
- public static string StationOutMESUrl; // 出站接口Url
- public static string ServerIp; // 主服务器IP-解析所得
- //public static string StationInMESUrl; // 入站接口Url
- //public static string StationOutMESUrl; // 出站接口Url
- public static bool IsSendStationIn; // 启用上传进站
- public static bool IsSendProcessData; // 启用上传出站
- public static bool IsSendCheckOneData; // 启用上传点检
- public static bool IsSendWorkingData; // 启用上传状态
- public static bool IsSendAlarmData; // 启用上传报警
- public static bool IsUseMESRoute; // 启用边线MES软件
- public static bool MESIsConnect; // MES是否正常连接
- // IOT - MQTT
- public static bool IsUseIot; // 是否 启用IOT
- public static string MQTTServerHost; // 服务器IP
- public static int MQTTServerPort; // 服务器Port
- public static bool IsMqttSendProcessData; // 上传过站数据
- public static bool IsMqttDeviceState; // 上传设备状态
- public static bool IsMqttFaultLog; // 上传故障⽇志
- public static bool IsMqttSensorData; // 上传传感器数据
- public static bool IsMqttStationInputBegin; // 上传节拍⽇志
- public static bool IsMqttOperateLog; // 上传操作记录
- public static bool IsMqttEquiConfig; // 上传装备配置
- public static bool IsMqttProcConfig; // 上传⼯艺配置
- // IOT-AGV
- public static bool IsUseAGV; // 是否 启用AGV
- public static string AGVHttpHost; // Http 服务器地址
- public static string AGVHttpIp; // Http IP地址
- public static string AGVMQTTHost; // MQTT IP地址
- public static int AGVMQTTPort; // MQTT端口
- public static string AGVMQTTDeviceCode; // MQTT设备Code
- public static bool AGVMQTTIsConnect; // AGV MQTT是否正常连接
- // MES进出站 配置信息
- public static string S1_MachineId; // 工站1 - 壳体清洁上料装备
- public static string S1_StationId; // 工站1 - 壳体清洁上料装备
- public static string S2_MachineId; // 工站2 - 上盖板上料装备
- public static string S2_StationId; // 工站2 - 上盖板上料装备
- public static string S3_MachineId; // 工站3 - 点散热胶装备
- public static string S3_StationId; // 工站3 - 点散热胶装备
- public static string S3_StationId_1; // 工站3 - 点散热胶装备
- public static string S3_StationId_2; // 工站3 - 点散热胶装备
- public static string S4_MachineId; // 工站4 - 胶线检测装备
- public static string S4_StationId; // 工站4 - 胶线检测装备
- public static string S5_MachineId; // 工站5 - ADD板上料组装装备
- public static string S5_StationId; // 工站5 - ADD板上料组装装备
- public static string S6_MachineId; // 工站6 - 组上盖板装备
- public static string S6_StationId; // 工站6 - 组上盖板装备
- public static string S7_MachineId; // 工站7 - 上盖板锁螺丝装备
- public static string S7_StationId; // 工站7 - 上盖板锁螺丝装备
- public static string S7_StationId_1; // 工站7 - 上盖板锁螺丝装备
- public static string S7_StationId_2; // 工站7 - 上盖板锁螺丝装备
- public static string S8_MachineId; // 工站8 - NG下料装备
- public static string S8_StationId; // 工站8 - NG下料装备
- public static string S9_MachineId; // 工站9 - 产品下料装备
- public static string S9_StationId; // 工站9 - 产品下料装备
- // 本地数据库
- public static string Server;
- public static string User;
- public static string PassWord;
- //其它
- public static string CurrentUser = "";
- public static string MacStr = "";
- #region 是否可连接PLC-用户手动控制用(后加)
- public static bool _IsCon_Funs1 = true;
- public static bool _IsCon_Funs2 = true;
- public static bool _IsCon_Funs3 = true;
- public static bool _IsCon_Funs4 = true;
- public static bool _IsCon_Funs5 = true;
- public static bool _IsCon_plc1Heat = true;
- public static bool _IsCon_plc1Alarm = true;
- #endregion 是否可连接PLC-用户手动控制用(后加)
- #endregion 变量
- #region 常量
- //产品常量
- public const string ConstLineCode = "A1";
- public const string ConstLineName = "A1产线";
- public const string ConstProgramName = "A1程序名";
- public const string ConstSono = " ";
- public const string ConstWorkOrderCode = " ";
- public const string ConstBatchNumber = " ";
- public const string ConstMtltmrk = " ";
- public const string ConstSupplierCode = " ";
- //设备常量
- public const string ConstMachine1Address = "192.168.10.87";
- public const string ConstMachine2Address = "192.168.2.1";
- public const string ConstMachine3Address = "192.168.4.111";
- public const string ConstMachine4Address = "192.168.4.1";
- public const string ConstMachine5Address = "192.168.6.111";
- public const string ConstMachine6Address = "192.168.6.1";
- public const string ConstMachine7Address = "192.168.6.71";
- public const string ConstMachine8Address = "192.168.6.81";
- public const string ConstMachine9Address = "192.168.1.91";
- public const string ConstPc1Address = "192.168.1.10";
- public const string ConstPc2Address = "192.168.1.10";
- public const string ConstPc3Address = "192.168.1.10";
- public const string ConstPc4Address = "192.168.1.10";
- public const string ConstPc5Address = "192.168.1.10";
- public const string ConstPc6Address = "192.168.1.10";
- public const string ConstPc7Address = "192.168.1.10";
- public const string ConstPc8Address = "192.168.1.10";
- public const string ConstPc9Address = "192.168.1.10";
- public const string ConstMachinePort = "1217";
- //MES常量
- public const string ConstServerHost = "10.1.19.33:8080";
- public const string ConstIsSend = "false";
- #endregion 常量
- public GlobalContext()
- {
- UpdateData();
- }
- /// <summary>
- /// 更新全局变量
- /// </summary>
- public static void UpdateData()
- {
- try
- {
- // 产线及产品信息
- Project_Code = IniFile.INIGetStringValue(FilePath, "Product", "ProjectCode", "");
- Factory_Code = IniFile.INIGetStringValue(FilePath, "Product", "FactoryCode", "");
- Process_Section_Code = IniFile.INIGetStringValue(FilePath, "Product", "ProcessSectionCode", "");
- LineCode = IniFile.INIGetStringValue(FilePath, "Product", "LineCode", ConstLineCode);
- LineName = IniFile.INIGetStringValue(FilePath, "Product", "LineName", ConstLineName);
- ProgramName = IniFile.INIGetStringValue(FilePath, "Product", "ProgramName", ConstProgramName);
- WorkOrderCode = IniFile.INIGetStringValue(FilePath, "Product", "WorkOrderCode", ConstWorkOrderCode); // 车间订单号
- BatchNumber = IniFile.INIGetStringValue(FilePath, "Product", "BatchNumber", ConstBatchNumber); // 批次号(splcode)
- Mtltmrk = IniFile.INIGetStringValue(FilePath, "Product", "Mtltmrk", ConstMtltmrk); // 产品型号(mtltmrk)
- // 工位信息
- S1_work_station = IniFile.INIGetStringValue(FilePath, "Station", "s1_work_station", ""); // [S1] ⼯站
- S1_device_code = IniFile.INIGetStringValue(FilePath, "Station", "s1_device_code", ""); // [S1] 装备编码
- S1_station = IniFile.INIGetStringValue(FilePath, "Station", "s1_station", ""); // [S1] ⼯位Id
- S2_work_station = IniFile.INIGetStringValue(FilePath, "Station", "s2_work_station", ""); // [S2] ⼯站
- S2_device_code = IniFile.INIGetStringValue(FilePath, "Station", "s2_device_code", ""); // [S2] 装备编码
- S2_station = IniFile.INIGetStringValue(FilePath, "Station", "s2_station", ""); // [S2] ⼯位Id
- S3_work_station = IniFile.INIGetStringValue(FilePath, "Station", "s3_work_station", ""); // [S3] ⼯站
- S3_device_code = IniFile.INIGetStringValue(FilePath, "Station", "s3_device_code", ""); // [S3] 装备编码
- S3_station = IniFile.INIGetStringValue(FilePath, "Station", "s3_station", ""); // [S3] ⼯位Id
- S4_1_work_station = IniFile.INIGetStringValue(FilePath, "Station", "s4_1_work_station", ""); // [S4_1] ⼯站
- S4_1_device_code = IniFile.INIGetStringValue(FilePath, "Station", "s4_1_device_code", ""); // [S4_1] 装备编码
- S4_1_station = IniFile.INIGetStringValue(FilePath, "Station", "s4_1_station", ""); // [S4_1] ⼯位Id
- S4_3_work_station = IniFile.INIGetStringValue(FilePath, "Station", "s4_3_work_station", ""); // [S4_3] ⼯站
- S4_3_device_code = IniFile.INIGetStringValue(FilePath, "Station", "s4_3_device_code", ""); // [S4_3] 装备编码
- S4_3_station = IniFile.INIGetStringValue(FilePath, "Station", "s4_3_station", ""); // [S4_3] ⼯位Id
- S4_4_work_station = IniFile.INIGetStringValue(FilePath, "Station", "s4_4_work_station", ""); // [S4_4] ⼯站
- S4_4_device_code = IniFile.INIGetStringValue(FilePath, "Station", "s4_4_device_code", ""); // [S4_4] 装备编码
- S4_4_station = IniFile.INIGetStringValue(FilePath, "Station", "s4_4_station", ""); // [S4_4] ⼯位Id
- S4_5_work_station = IniFile.INIGetStringValue(FilePath, "Station", "s4_5_work_station", ""); // [S4_5] ⼯站
- S4_5_device_code = IniFile.INIGetStringValue(FilePath, "Station", "s4_5_device_code", ""); // [S4_5] 装备编码
- S4_5_station = IniFile.INIGetStringValue(FilePath, "Station", "s4_5_station", ""); // [S4_5] ⼯位Id
- S5_work_station = IniFile.INIGetStringValue(FilePath, "Station", "s5_work_station", ""); // [S5] ⼯站
- S5_device_code = IniFile.INIGetStringValue(FilePath, "Station", "s5_device_code", ""); // [S5] 装备编码
- S5_station = IniFile.INIGetStringValue(FilePath, "Station", "s5_station", ""); // [S5] ⼯位Id
- // 设备
- IsUsePLC1 = bool.Parse(IniFile.INIGetStringValue(FilePath, "Machine", "IsUsePLC1", "false"));
- IsUsePLC2 = bool.Parse(IniFile.INIGetStringValue(FilePath, "Machine", "IsUsePLC2", "false"));
- IsUsePLC3 = bool.Parse(IniFile.INIGetStringValue(FilePath, "Machine", "IsUsePLC3", "false"));
- IsUsePLC4 = bool.Parse(IniFile.INIGetStringValue(FilePath, "Machine", "IsUsePLC4", "false"));
- IsUsePLC5 = bool.Parse(IniFile.INIGetStringValue(FilePath, "Machine", "IsUsePLC5", "false"));
- IsUsePLC6 = bool.Parse(IniFile.INIGetStringValue(FilePath, "Machine", "IsUsePLC6", "false"));
- IsUsePLC7 = bool.Parse(IniFile.INIGetStringValue(FilePath, "Machine", "IsUsePLC7", "false"));
- IsUsePLC8 = bool.Parse(IniFile.INIGetStringValue(FilePath, "Machine", "IsUsePLC8", "false"));
- IsUsePLC9 = bool.Parse(IniFile.INIGetStringValue(FilePath, "Machine", "IsUsePLC9", "false"));
- Machine1Address = IniFile.INIGetStringValue(FilePath, "Machine", "Machine1Address", ConstMachine1Address);
- Machine2Address = IniFile.INIGetStringValue(FilePath, "Machine", "Machine2Address", ConstMachine2Address);
- Machine3Address = IniFile.INIGetStringValue(FilePath, "Machine", "Machine3Address", ConstMachine3Address);
- Machine4Address = IniFile.INIGetStringValue(FilePath, "Machine", "Machine4Address", ConstMachine4Address);
- Machine5Address = IniFile.INIGetStringValue(FilePath, "Machine", "Machine5Address", ConstMachine5Address);
- Machine6Address = IniFile.INIGetStringValue(FilePath, "Machine", "Machine6Address", ConstMachine6Address);
- Machine7Address = IniFile.INIGetStringValue(FilePath, "Machine", "Machine7Address", ConstMachine7Address);
- Machine8Address = IniFile.INIGetStringValue(FilePath, "Machine", "Machine8Address", ConstMachine8Address);
- Machine9Address = IniFile.INIGetStringValue(FilePath, "Machine", "Machine9Address", ConstMachine9Address);
- PC1Address = IniFile.INIGetStringValue(FilePath, "Machine", "Pc1Address", ConstPc1Address);
- PC2Address = IniFile.INIGetStringValue(FilePath, "Machine", "Pc2Address", ConstPc2Address);
- PC3Address = IniFile.INIGetStringValue(FilePath, "Machine", "Pc3Address", ConstPc3Address);
- PC4Address = IniFile.INIGetStringValue(FilePath, "Machine", "Pc4Address", ConstPc4Address);
- PC5Address = IniFile.INIGetStringValue(FilePath, "Machine", "Pc5Address", ConstPc5Address);
- PC6Address = IniFile.INIGetStringValue(FilePath, "Machine", "Pc6Address", ConstPc6Address);
- PC7Address = IniFile.INIGetStringValue(FilePath, "Machine", "Pc7Address", ConstPc7Address);
- PC8Address = IniFile.INIGetStringValue(FilePath, "Machine", "Pc8Address", ConstPc8Address);
- PC9Address = IniFile.INIGetStringValue(FilePath, "Machine", "Pc9Address", ConstPc9Address);
- MachinePort = int.Parse(IniFile.INIGetStringValue(FilePath, "Machine", "MachinePort", ConstMachinePort));
- AtlasAddressLeft = IniFile.INIGetStringValue(FilePath, "Machine", "AtlasAddressLeft", "");
- AtlasAddressRight = IniFile.INIGetStringValue(FilePath, "Machine", "AtlasAddressRight", "");
- AtlasAddressPort = int.Parse(IniFile.INIGetStringValue(FilePath, "Machine", "AtlasAddressPort", ""));
- QrCodeTCPAddress1 = IniFile.INIGetStringValue(FilePath, "TCP", "TCPAddress1", "127.0.0.1");
- QrCodeTCPPort1 = int.Parse(IniFile.INIGetStringValue(FilePath, "TCP", "TCPPort1", "0"));
- QrCodeTCPAddress2 = IniFile.INIGetStringValue(FilePath, "TCP", "TCPAddress2", "127.0.0.1");
- QrCodeTCPPort2 = int.Parse(IniFile.INIGetStringValue(FilePath, "TCP", "TCPPort2", "0"));
- QrCodeTCPAddress3 = IniFile.INIGetStringValue(FilePath, "TCP", "TCPAddress3", "127.0.0.1");
- QrCodeTCPPort3 = int.Parse(IniFile.INIGetStringValue(FilePath, "TCP", "TCPPort3", "0"));
- QrCodeTCPAddress4 = IniFile.INIGetStringValue(FilePath, "TCP", "TCPAddress4", "127.0.0.1");
- QrCodeTCPPort4 = int.Parse(IniFile.INIGetStringValue(FilePath, "TCP", "TCPPort4", "0"));
- QrCodeTCPAddress5 = IniFile.INIGetStringValue(FilePath, "TCP", "TCPAddress5", "127.0.0.1");
- QrCodeTCPPort5 = int.Parse(IniFile.INIGetStringValue(FilePath, "TCP", "TCPPort5", "0"));
- // MES
- MESAppId = IniFile.INIGetStringValue(FilePath, "MES", "MESAppId", "mes_test");
- MESAppKey = IniFile.INIGetStringValue(FilePath, "MES", "MESAppKey", "mes");
- MESUserId = IniFile.INIGetStringValue(FilePath, "MES", "MESUserId", "mes_userid");
- ServerHost = IniFile.INIGetStringValue(FilePath, "MES", "ServerHost", ConstServerHost);
- StationInMESUrl = IniFile.INIGetStringValue(FilePath, "MES", "StationInMESUrl", "");
- StationInMESUrl = string.Format(StationInMESUrl, ServerHost);
- StationOutMESUrl = IniFile.INIGetStringValue(FilePath, "MES", "StationOutMESUrl", "");
- StationOutMESUrl = string.Format(StationOutMESUrl, ServerHost);
- if (ServerHost.Contains(":"))
- {
- string[] mesServers = ServerHost.Split(':');
- ServerIp = mesServers[0];
- ServerIp = ServerHost.Replace("\\", "/");
- mesServers = ServerHost.Split('/');
- if (mesServers.Length > 3)
- ServerIp = mesServers[2];
- }
- else
- {
- ServerHost = ServerHost.Replace("\\", "/");
- string[] mesServers = ServerHost.Split('/');
- if (mesServers.Length > 3)
- ServerIp = mesServers[2];
- }
- //StationInMESUrl = IniFile.INIGetStringValue(MESConfig, "MES", "StationInMESUrl", "");
- //StationInMESUrl = string.Format(StationInMESUrl, ServerHost);
- //StationOutMESUrl = IniFile.INIGetStringValue(MESConfig, "MES", "StationOutMESUrl", "");
- //StationOutMESUrl = string.Format(StationOutMESUrl, ServerHost);
- IsUseMES = bool.Parse(IniFile.INIGetStringValue(FilePath, "MES", "IsUseMES", ConstIsSend));
- IsSendStationIn = bool.Parse(IniFile.INIGetStringValue(FilePath, "MES", "IsSendStationIn", ConstIsSend));
- IsSendProcessData = bool.Parse(IniFile.INIGetStringValue(FilePath, "MES", "IsSendProcessData", ConstIsSend));
- IsSendCheckOneData = bool.Parse(IniFile.INIGetStringValue(FilePath, "MES", "IsSendCheckOneData", ConstIsSend));
- IsSendWorkingData = bool.Parse(IniFile.INIGetStringValue(FilePath, "MES", "IsSendWorkingData", ConstIsSend));
- IsSendAlarmData = bool.Parse(IniFile.INIGetStringValue(FilePath, "MES", "IsSendAlarmData", ConstIsSend));
- IsUseMESRoute = bool.Parse(IniFile.INIGetStringValue(FilePath, "MES", "IsUseMESRoute", ConstIsSend));
- // MQTT
- IsUseIot = bool.Parse(IniFile.INIGetStringValue(FilePath, "MES", "IsUseIot", "false"));
- MQTTServerHost = IniFile.INIGetStringValue(FilePath, "MQTT", "MQTTServerHost", "127.0.0.1");
- MQTTServerPort = int.Parse(IniFile.INIGetStringValue(FilePath, "MQTT", "MQTTServerPort", "80"));
- IsMqttSendProcessData = bool.Parse(IniFile.INIGetStringValue(FilePath, "MQTT", "IsMqttSendProcessData", ConstIsSend));
- IsMqttDeviceState = bool.Parse(IniFile.INIGetStringValue(FilePath, "MQTT", "IsMqttDeviceState", ConstIsSend));
- IsMqttFaultLog = bool.Parse(IniFile.INIGetStringValue(FilePath, "MQTT", "IsMqttFaultLog", ConstIsSend));
- IsMqttSensorData = bool.Parse(IniFile.INIGetStringValue(FilePath, "MQTT", "IsMqttSensorData", ConstIsSend));
- IsMqttStationInputBegin = bool.Parse(IniFile.INIGetStringValue(FilePath, "MQTT", "IsMqttStationInputBegin", ConstIsSend));
- IsMqttOperateLog = bool.Parse(IniFile.INIGetStringValue(FilePath, "MQTT", "IsMqttOperateLog", ConstIsSend));
- IsMqttEquiConfig = bool.Parse(IniFile.INIGetStringValue(FilePath, "MQTT", "IsMqttEquiConfig", ConstIsSend));
- IsMqttProcConfig = bool.Parse(IniFile.INIGetStringValue(FilePath, "MQTT", "IsMqttProcConfig", ConstIsSend));
- // AGV配置
- IsUseAGV = bool.Parse(IniFile.INIGetStringValue(FilePath, "AGV", "IsUseAGV", "false")); // 是否 启用AGV
- AGVHttpHost = IniFile.INIGetStringValue(FilePath, "AGV", "AGVHttpHost", "127.0.0.1:80"); // Http IP地址
- string[] AGVHttps = AGVHttpHost.Split(':');
- AGVHttpIp = AGVHttps[0];
- AGVMQTTHost = IniFile.INIGetStringValue(FilePath, "AGV", "AGVMQTTHost", "127.0.0.1"); // MQTT IP地址
- AGVMQTTPort = int.Parse(IniFile.INIGetStringValue(FilePath, "AGV", "AGVMQTTPort", "80")); // MQTT端口
- AGVMQTTDeviceCode = IniFile.INIGetStringValue(FilePath, "AGV", "AGVMQTTDeviceCode", ""); // portCode
- // 入出站参数
- S1_MachineId = IniFile.INIGetStringValue(FilePath, "StationOut", "S1_MachineId", "MId");
- S1_StationId = IniFile.INIGetStringValue(FilePath, "StationOut", "S1_StationId", "SId");
- S2_MachineId = IniFile.INIGetStringValue(FilePath, "StationOut", "S2_MachineId", "MId");
- S2_StationId = IniFile.INIGetStringValue(FilePath, "StationOut", "S2_StationId", "SId");
- S3_MachineId = IniFile.INIGetStringValue(FilePath, "StationOut", "S3_MachineId", "MId");
- S3_StationId = IniFile.INIGetStringValue(FilePath, "StationOut", "S3_StationId", "SId");
- S3_StationId_1 = IniFile.INIGetStringValue(FilePath, "StationOut", "S3_StationId_1", "SId");
- S3_StationId_2 = IniFile.INIGetStringValue(FilePath, "StationOut", "S3_StationId_2", "SId");
- S4_MachineId = IniFile.INIGetStringValue(FilePath, "StationOut", "S4_MachineId", "MId");
- S4_StationId = IniFile.INIGetStringValue(FilePath, "StationOut", "S4_StationId", "SId");
- S5_MachineId = IniFile.INIGetStringValue(FilePath, "StationOut", "S5_MachineId", "MId");
- S5_StationId = IniFile.INIGetStringValue(FilePath, "StationOut", "S5_StationId", "SId");
- S6_MachineId = IniFile.INIGetStringValue(FilePath, "StationOut", "S6_MachineId", "MId");
- S6_StationId = IniFile.INIGetStringValue(FilePath, "StationOut", "S6_StationId", "SId");
- S7_MachineId = IniFile.INIGetStringValue(FilePath, "StationOut", "S7_MachineId", "MId");
- S7_StationId = IniFile.INIGetStringValue(FilePath, "StationOut", "S7_StationId", "SId");
- S7_StationId_1 = IniFile.INIGetStringValue(FilePath, "StationOut", "S7_StationId_1", "SId");
- S7_StationId_2 = IniFile.INIGetStringValue(FilePath, "StationOut", "S7_StationId_2", "SId");
- S8_MachineId = IniFile.INIGetStringValue(FilePath, "StationOut", "S8_MachineId", "MId");
- S8_StationId = IniFile.INIGetStringValue(FilePath, "StationOut", "S8_StationId", "SId");
- S9_MachineId = IniFile.INIGetStringValue(FilePath, "StationOut", "S9_MachineId", "MId");
- S9_StationId = IniFile.INIGetStringValue(FilePath, "StationOut", "S9_StationId", "SId");
- // 本地数据库
- Server = IniFile.INIGetStringValue(FilePath, "LocalDB", "Server", @"localhost");
- User = IniFile.INIGetStringValue(FilePath, "LocalDB", "User", "sa");
- PassWord = IniFile.INIGetStringValue(FilePath, "LocalDB", "PassWord", "Aa123456");
- MacStr = IPHelper.GetMoAddress();
- // 同步一次数据库当前订单信息到配置文件-后加的(加完后,设置页修改订单信息的功能不可用)
- //SyncCurOrderInfo();
- Set?.Invoke();
- }
- catch (Exception ex) { }
- }
- /// <summary>
- /// 同步数据量存储的当前订单信息到配置文件中
- /// </summary>
- public static void SyncCurOrderInfo()
- {
- #region 校验配置文件是否和数据库实际订单一致,如果配置文件的订单和数据库不一致,以数据库优先
- string sql = @" SELECT TOP 1
- WorkOrderNum,
- BatchNumber,
- ProductMtltmrk,
- SupplierCode
- FROM OrderTable
- WHERE WorkOrderStatus = '正在处理订单'
- ORDER BY
- CreatedTime DESC ";
- SqlHelper _sqlHelper = new SqlHelper();
- DataTable dt_data = _sqlHelper.Db.SqlQueryable<OrderTable>(sql).ToDataTable(); // 查询订单数据
- if (dt_data != null && dt_data.Rows.Count > 0)
- {
- string _workOrderNum = dt_data.Rows[0][1].ToString().Trim();
- if (WorkOrderCode != _workOrderNum)
- {
- IniFile.INIWriteValue(FilePath, "Product", "WorkOrderCode", dt_data.Rows[0][0].ToString().Trim());
- IniFile.INIWriteValue(FilePath, "Product", "BatchNumber", dt_data.Rows[0][1].ToString().Trim());
- IniFile.INIWriteValue(FilePath, "Product", "Mtltmrk", dt_data.Rows[0][2].ToString().Trim());
- }
- else
- {
- IniFile.INIWriteValue(FilePath, "Product", "WorkOrderCode", string.Empty);
- IniFile.INIWriteValue(FilePath, "Product", "BatchNumber", string.Empty);
- IniFile.INIWriteValue(FilePath, "Product", "Mtltmrk", string.Empty);
- }
- }
- else
- {
- IniFile.INIWriteValue(FilePath, "Product", "WorkOrderCode", string.Empty);
- IniFile.INIWriteValue(FilePath, "Product", "BatchNumber", string.Empty);
- IniFile.INIWriteValue(FilePath, "Product", "Mtltmrk", string.Empty);
- }
- #endregion
- }
- }
- }
|