新增功能:

1 修改升压站采集控制系统的CRC校验的高低位,对数据解析错误进行修改;
2 解决地震仪连接后,软件崩溃的问题;
This commit is contained in:
春风过客 2024-07-08 18:02:01 +08:00
parent 10698e42d3
commit 61ab0351f9
54 changed files with 335 additions and 307 deletions

View File

@ -2,37 +2,40 @@
"Version": 1,
"WorkspaceRootPath": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\",
"Documents": [
{
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|f:\\code\\jseq\\20240301_jseq_upperpc\\jiangsuearthquake\\jiangsuearthquake\\models\\servermodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\models\\servermodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|f:\\code\\jseq\\20240301_jseq_upperpc\\jiangsuearthquake\\jiangsuearthquake\\models\\clientmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\models\\clientmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|f:\\code\\jseq\\20240301_jseq_upperpc\\jiangsuearthquake\\jiangsuearthquake\\viewmodels\\mainviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\viewmodels\\mainviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|f:\\code\\jseq\\20240301_jseq_upperpc\\jiangsuearthquake\\jiangsuearthquake\\models\\lowercomputermodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\models\\lowercomputermodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\models\\lowercomputermodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\app.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\app.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
},
{
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\mainwindow.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\mainwindow.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
},
{
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|f:\\code\\jseq\\20240301_jseq_upperpc\\jiangsuearthquake\\jiangsuearthquake\\views\\systemcontrolview.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\views\\systemcontrolview.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\views\\systemcontrolview.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
},
{
"AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\adm\\AppData\\Local\\Temp\\.vsdbgsrc\\793d914da17c09bdc8d37c92770294fd4f8e6e28e7f354949aefb80506ef516b\\DependencyObject.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|f:\\code\\jseq\\20240301_jseq_upperpc\\jiangsuearthquake\\jiangsuearthquake\\viewmodels\\boosterstationstatedataviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\viewmodels\\boosterstationstatedataviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\app.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\app.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}"
},
{
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\app.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\app.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
},
{
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|f:\\code\\jseq\\20240301_jseq_upperpc\\jiangsuearthquake\\jiangsuearthquake\\common\\tools.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\common\\tools.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
@ -42,76 +45,87 @@
"DocumentGroups": [
{
"DockedWidth": 163,
"SelectedChildIndex": 2,
"SelectedChildIndex": 8,
"Children": [
{
"$type": "Document",
"DocumentIndex": 7,
"DocumentIndex": 6,
"Title": "App.config",
"DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\App.config",
"RelativeDocumentMoniker": "JiangsuEarthquake\\App.config",
"ToolTip": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\App.config",
"RelativeToolTip": "JiangsuEarthquake\\App.config",
"ViewState": "AQIAADkAAAAAAAAAAAAAAGsAAAATAAAA",
"ViewState": "AQIAABIAAAAAAAAAAAAAAC4AAAAoAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000601|",
"WhenOpened": "2024-04-24T08:54:53.626Z",
"IsPinned": true,
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 4,
"Title": "DependencyObject.cs",
"DocumentMoniker": "C:\\Users\\adm\\AppData\\Local\\Temp\\.vsdbgsrc\\793d914da17c09bdc8d37c92770294fd4f8e6e28e7f354949aefb80506ef516b\\DependencyObject.cs",
"ToolTip": "C:\\Users\\adm\\AppData\\Local\\Temp\\.vsdbgsrc\\793d914da17c09bdc8d37c92770294fd4f8e6e28e7f354949aefb80506ef516b\\DependencyObject.cs [\u53EA\u8BFB]",
"ViewState": "AQIAAKoFAAAAAAAAAIAzwL8FAAACAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-07-08T08:35:05.858Z",
"EditorCaption": " [\u53EA\u8BFB]"
},
{
"$type": "Document",
"DocumentIndex": 5,
"Title": "BoosterStationStateDataViewModel.cs",
"DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\ViewModels\\BoosterStationStateDataViewModel.cs",
"RelativeDocumentMoniker": "JiangsuEarthquake\\ViewModels\\BoosterStationStateDataViewModel.cs",
"ToolTip": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\ViewModels\\BoosterStationStateDataViewModel.cs",
"RelativeToolTip": "JiangsuEarthquake\\ViewModels\\BoosterStationStateDataViewModel.cs",
"ViewState": "AQIAAAQDAAAAAAAAAAAuwBkDAAAwAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-07-08T08:20:55.119Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 8,
"Title": "Tools.cs",
"DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Common\\Tools.cs",
"RelativeDocumentMoniker": "JiangsuEarthquake\\Common\\Tools.cs",
"ToolTip": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Common\\Tools.cs",
"RelativeToolTip": "JiangsuEarthquake\\Common\\Tools.cs",
"ViewState": "AQIAAFgBAAAAAAAAAAAUwAAAAAAAAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-07-08T08:19:12.338Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 1,
"Title": "ClientModel.cs",
"DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Models\\ClientModel.cs",
"RelativeDocumentMoniker": "JiangsuEarthquake\\Models\\ClientModel.cs",
"ToolTip": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Models\\ClientModel.cs",
"RelativeToolTip": "JiangsuEarthquake\\Models\\ClientModel.cs",
"ViewState": "AQIAALQAAAAAAAAAAAAkwDEAAAAXAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-07-05T07:41:03.947Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 0,
"Title": "ServerModel.cs",
"DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Models\\ServerModel.cs",
"RelativeDocumentMoniker": "JiangsuEarthquake\\Models\\ServerModel.cs",
"ToolTip": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Models\\ServerModel.cs",
"RelativeToolTip": "JiangsuEarthquake\\Models\\ServerModel.cs",
"ViewState": "AQIAAGkAAAAAAAAAAAAuwIwAAAAQAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-07-05T07:39:49.265Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 3,
"Title": "LowerComputerModel.cs",
"DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Models\\LowerComputerModel.cs",
"RelativeDocumentMoniker": "JiangsuEarthquake\\Models\\LowerComputerModel.cs",
"ToolTip": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Models\\LowerComputerModel.cs",
"RelativeToolTip": "JiangsuEarthquake\\Models\\LowerComputerModel.cs",
"ViewState": "AQIAAHAAAAAAAAAAAADgv4QAAAAAAAAA",
"ViewState": "AQIAAMkAAAAAAAAAAAAkwNQAAAAlAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-07-05T07:31:43.911Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 6,
"DocumentIndex": 3,
"Title": "SystemControlView.xaml",
"DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Views\\SystemControlView.xaml",
"RelativeDocumentMoniker": "JiangsuEarthquake\\Views\\SystemControlView.xaml",
"ToolTip": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Views\\SystemControlView.xaml",
"RelativeToolTip": "JiangsuEarthquake\\Views\\SystemControlView.xaml",
"ToolTip": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Views\\SystemControlView.xaml*",
"RelativeToolTip": "JiangsuEarthquake\\Views\\SystemControlView.xaml*",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
"WhenOpened": "2024-07-05T06:33:41.961Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 5,
"DocumentIndex": 2,
"Title": "MainWindow.xaml",
"DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\MainWindow.xaml",
"RelativeDocumentMoniker": "JiangsuEarthquake\\MainWindow.xaml",
@ -123,7 +137,7 @@
},
{
"$type": "Document",
"DocumentIndex": 4,
"DocumentIndex": 7,
"Title": "App.xaml",
"DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\App.xaml",
"RelativeDocumentMoniker": "JiangsuEarthquake\\App.xaml",
@ -135,13 +149,13 @@
},
{
"$type": "Document",
"DocumentIndex": 2,
"DocumentIndex": 0,
"Title": "MainViewModel.cs",
"DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\ViewModels\\MainViewModel.cs",
"RelativeDocumentMoniker": "JiangsuEarthquake\\ViewModels\\MainViewModel.cs",
"ToolTip": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\ViewModels\\MainViewModel.cs",
"RelativeToolTip": "JiangsuEarthquake\\ViewModels\\MainViewModel.cs",
"ViewState": "AQIAAF4NAAAAAAAAAAAkwAsIAAAIAAAA",
"ToolTip": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\ViewModels\\MainViewModel.cs*",
"RelativeToolTip": "JiangsuEarthquake\\ViewModels\\MainViewModel.cs*",
"ViewState": "AQIAAPoIAAAAAAAAAAAswB8JAAAbAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-06-26T09:47:38.344Z",
"EditorCaption": ""

View File

@ -37,14 +37,14 @@
<!--升压站连接信息1-->
<add key="PortName1" value="COM11"/>
<add key="BaudRate1" value="9600"/>
<add key="DeviceAddress1" value="11"/>
<add key="DeviceAddress1" value="01"/>
<add key="SYZ_Client_IP1" value="10.20.102.201"/>
<add key="SYZ_Client_Port1" value="55000"/>
<!--升压站连接信息2-->
<add key="PortName2" value="COM2"/>
<add key="BaudRate2" value="9600"/>
<add key="DeviceAddress2" value="2"/>
<add key="DeviceAddress2" value="02"/>
<add key="SYZ_Client_IP2" value="10.20.102.201"/>
<add key="SYZ_Client_Port2" value="55001"/>

View File

@ -0,0 +1,30 @@
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Data;
namespace JiangsuEarthquake.Common
{
public class ConnectConvert4 : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value.ToString() == "True")
{
return "已连接";
}
else
{
return "未连接";
}
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
}

View File

@ -245,6 +245,7 @@ namespace JiangsuEarthquake.Common
0x44, 0x84, 0x85, 0x45, 0x87, 0x47, 0x46, 0x86, 0x82, 0x42, 0x43, 0x83,
0x41, 0x81, 0x80, 0x40
};
public static byte[] Crc16(byte[] pucFrame, int usLen)
{
int i = 0;
@ -294,6 +295,39 @@ namespace JiangsuEarthquake.Common
crc16[1] = (byte)(crc & 0xff);
return crc16;
}
/// <summary>
/// CRC校验参数data为byte数组
/// </summary>
/// <param name="data">校验数据,字节数组</param>
/// <returns>字节0是高8位字节1是低8位</returns>
public static byte[] CRCCalcRev(byte[] data)
{
//crc计算赋初始值
int crc = 0xffff;
for (int i = 0; i < data.Length; i++)
{
crc = crc ^ data[i];
for (int j = 0; j < 8; j++)
{
int temp;
temp = crc & 1;
crc = crc >> 1;
crc = crc & 0x7fff;
if (temp == 1)
{
crc = crc ^ 0xa001;
}
crc = crc & 0xffff;
}
}
//CRC寄存器的高低位进行互换
byte[] crc16 = new byte[2];
crc16[1] = (byte)((crc >> 8) & 0xff);
crc16[0] = (byte)(crc & 0xff);
return crc16;
}
#endregion

View File

@ -300,17 +300,17 @@ namespace JiangsuEarthquake.DataAccess
//public static void InsertSwitchInfo(SwitchInfoModel switchInfo)
//{
// //首先判断数据库中是否有这一条数据
// string sql = string.Format("select id from switchinfo where SwitchName = '{0}';", switchInfo.SwitchName);
// string sql = string.Format("select id from switch_info where SwitchName = '{0}';", switchInfo.SwitchName);
// if (ExecuteScalar(sql, 1) == null) //如果没有那就新增一条信息
// {
// sql = string.Format("insert into switchinfo(StationID,RecordTime,DataTime,SwitchName,SwitchState) VALUES({0},'{1}','{2}','{3}','{4}')", switchInfo.StationID, switchInfo.RecordTime, switchInfo.DataTime, switchInfo.SwitchName, switchInfo.SwitchState);
// sql = string.Format("insert into switch_info(StationID,RecordTime,DataTime,SwitchName,SwitchState) VALUES({0},'{1}','{2}','{3}','{4}')", switchInfo.StationID, switchInfo.RecordTime, switchInfo.DataTime, switchInfo.SwitchName, switchInfo.SwitchState);
// }
// else //如果有那就更新这条信息
// {
// sql = string.Format("update switchinfo set SwitchState='{0}',RecordTime='{1}',DataTime='{2}' where SwitchName = '{3}'", switchInfo.SwitchState, switchInfo.RecordTime, switchInfo.DataTime, switchInfo.SwitchName);
// sql = string.Format("update switch_info set SwitchState='{0}',RecordTime='{1}',DataTime='{2}' where SwitchName = '{3}'", switchInfo.SwitchState, switchInfo.RecordTime, switchInfo.DataTime, switchInfo.SwitchName);
// }
// ExecuteNonQuery(sql, 1);
// sql = string.Format("insert into switchinfohis(StationID,RecordTime,DataTime,SwitchName,SwitchState) VALUES({0},'{1}','{2}','{3}','{4}')", switchInfo.StationID, switchInfo.RecordTime, switchInfo.DataTime, switchInfo.SwitchName, switchInfo.SwitchState);
// sql = string.Format("insert into switch_info_his(StationID,RecordTime,DataTime,SwitchName,SwitchState) VALUES({0},'{1}','{2}','{3}','{4}')", switchInfo.StationID, switchInfo.RecordTime, switchInfo.DataTime, switchInfo.SwitchName, switchInfo.SwitchState);
// ExecuteNonQuery(sql, 1);
//}
}

View File

@ -96,6 +96,7 @@
<converters:ConnectConvert x:Key="ConnectConvert" />
<converters:ConnectConvert1 x:Key="ConnectConvert1" />
<converters:ConnectConvert4 x:Key="ConnectConvert4" />
</ResourceDictionary>
</Window.Resources>
@ -201,8 +202,18 @@
Foreground="{Binding serverModel2.IsOpened, Converter={StaticResource ResourceKey=ConnectConvert}}"
Text="{Binding serverModel2.IsOpened, Converter={StaticResource ResourceKey=ConnectConvert1}}"/>
<TextBlock Margin="20,0,20,0" VerticalAlignment="Center" Foreground="Green"
Text=""/>
<TextBlock Margin="20,0,0,0" VerticalAlignment="Center" Foreground="#99FFFFFF" Text="升压站通信①:"
FontSize="14"/>
<TextBlock VerticalAlignment="Center" FontSize="14"
Foreground="{Binding clientModel1.IsConnected, Converter={StaticResource ResourceKey=ConnectConvert}}"
Text="{Binding clientModel1.IsConnected, Converter={StaticResource ResourceKey=ConnectConvert4}}"/>
<TextBlock Margin="20,0,0,0" VerticalAlignment="Center" Foreground="#99FFFFFF" Text="升压站通信②:"
FontSize="14"/>
<TextBlock VerticalAlignment="Center" FontSize="14"
Foreground="{Binding clientModel2.IsConnected, Converter={StaticResource ResourceKey=ConnectConvert}}"
Text="{Binding clientModel2.IsConnected, Converter={StaticResource ResourceKey=ConnectConvert4}}"/>
<Button Width="60" Click="DetailButton_Click" Content="详情" Style="{StaticResource ControlButtonStyle}" Visibility="Hidden">
<!--<Button.ToolTip>
<Border BorderBrush="Black" BorderThickness="1">

View File

@ -53,7 +53,7 @@ namespace JiangsuEarthquake.Models
checkCloseByte.AddRange(new byte[] { 0xA0, 0x50 }); //CMD
checkCloseByte.AddRange(new byte[] { 0x00, 0x04 }); //LENGTH
checkCloseByte.AddRange(msg); //DATA
checkCloseCode = Tools.CRCCalc(checkCloseByte.ToArray()); //CHK_SUM
checkCloseCode = Tools.ComputeChecksum(checkCloseByte.ToArray()); //CHK_SUM
sendCloseDataSeis.AddRange(checkCloseCode);
return sendCloseDataSeis.ToArray();
@ -65,7 +65,7 @@ namespace JiangsuEarthquake.Models
return;
//原始数据存储
string sql = $"insert into earthquakeoriginaldata(StationID,RecordTime,OriginalData) values('{id}','{DateTime.Now}','{BitConverter.ToString(byteList.ToArray())}');";
string sql = $"insert into seismograph_originaldata(StationID,RecordTime,OriginalData) values('{id}','{DateTime.Now}','{BitConverter.ToString(byteList.ToArray())}');";
DBHelper.ExecuteNonQuery(sql, 1);
//同步字校验
@ -82,7 +82,7 @@ namespace JiangsuEarthquake.Models
//CRC16校验和校验
for (int i = 4; i < byteList.Count - 2; i++)
checkByte.Add(byteList[i]);
if (!Tools.CompareByte(new byte[] { byteList[^2], byteList[^1] }, Tools.CRCCalc(checkCode.ToArray())))
if (!Tools.CompareByte(new byte[] { byteList[^2], byteList[^1] }, Tools.ComputeChecksum(checkCode.ToArray())))
{
string content = "地震仪数据CRC16校验和校验失败";
sql = $"insert into alarm_run_info(StationID,RecordTime,ParaName,ParaContent) values('{id}','{DateTime.Now}','地震仪数据校验','{content}');";
@ -166,7 +166,7 @@ namespace JiangsuEarthquake.Models
checkByte.AddRange(lengthSend);
checkByte.AddRange(userByteArray);
checkByte.AddRange(passwordByteArray);
checkCode = Tools.CRCCalc(checkByte.ToArray());
checkCode = Tools.ComputeChecksum(checkByte.ToArray());
dataSend.AddRange(checkCode);
if (id == 1)
@ -633,7 +633,7 @@ namespace JiangsuEarthquake.Models
string softVersion = Encoding.UTF8.GetString(softVersionList.ToArray());
//数据存储
sql = $"insert into earthquakeoriginaldata(StationID,RecordTime,StationNo,StationName," +
sql = $"insert into seismograph_originaldata(StationID,RecordTime,StationNo,StationName," +
$"StationShortName,EarthQuakeCount,ChannelsNo,WD,JD,GaoCheng,StartTime,Station_Id," +
$"Software_Version) values('{id}','{DateTime.Now}','{stationNum}','{stationName}','{stationNameAbb}','{seisNum}','{passNum}','{latitude}','{longitude}','{elevation}','{enablingDate}','{tetworkLogo}','{softVersion}');";
DBHelper.ExecuteNonQuery(sql, 1);
@ -789,11 +789,11 @@ namespace JiangsuEarthquake.Models
name = "BackupSeisSetZero";
//存储历史设置
sql = $"insert into switchinfohis(StationID,RecordTime,SwitchName,SwitchState) values('{id}','{DateTime.Now}','{name}','On');";
sql = $"insert into switch_info_his(StationID,RecordTime,SwitchName,SwitchState) values('{id}','{DateTime.Now}','{name}','On');";
DBHelper.ExecuteNonQuery(sql, 1);
//存储最新设置
sql = $"update switchinfo set SwitchState='On',RecordTime='{DateTime.Now}' where SwitchName='{name}' and StationID={id};";
sql = $"update switch_info set SwitchState='On',RecordTime='{DateTime.Now}' where SwitchName='{name}' and StationID={id};";
DBHelper.ExecuteNonQuery(sql, 1);
string seisDevice = isMain == true ? "海底地震监测基站-主地震仪" : "海底地震监测基站-备地震仪";
@ -835,11 +835,11 @@ namespace JiangsuEarthquake.Models
name = "BackupSeisSetZero";
//存储历史设置
sql = $"insert into switchinfohis(StationID,RecordTime,SwitchName,SwitchState) values('{id}','{DateTime.Now}','{name}','Off');";
sql = $"insert into switch_info_his(StationID,RecordTime,SwitchName,SwitchState) values('{id}','{DateTime.Now}','{name}','Off');";
DBHelper.ExecuteNonQuery(sql, 1);
//存储最新设置
sql = $"update switchinfo set SwitchState='Off',RecordTime='{DateTime.Now}' where SwitchName='{name}' and StationID={id};";
sql = $"update switch_info set SwitchState='Off',RecordTime='{DateTime.Now}' where SwitchName='{name}' and StationID={id};";
DBHelper.ExecuteNonQuery(sql, 1);
string seisDevice = isMain == true ? "海底地震监测基站-主地震仪" : "海底地震监测基站-备地震仪";
@ -948,11 +948,11 @@ namespace JiangsuEarthquake.Models
name = "BackupSeisSetLevel";
//存储历史设置
sql = $"insert into switchinfohis(StationID,RecordTime,SwitchName,SwitchState) values('{id}','{DateTime.Now}','{name}','On');";
sql = $"insert into switch_info_his(StationID,RecordTime,SwitchName,SwitchState) values('{id}','{DateTime.Now}','{name}','On');";
DBHelper.ExecuteNonQuery(sql, 1);
//存储最新设置
sql = $"update switchinfo set SwitchState='On',RecordTime='{DateTime.Now}' where SwitchName='{name}' and StationID={id};";
sql = $"update switch_info set SwitchState='On',RecordTime='{DateTime.Now}' where SwitchName='{name}' and StationID={id};";
DBHelper.ExecuteNonQuery(sql, 1);
string seisDevice = isMain == true ? "海底地震监测基站-主地震仪" : "海底地震监测基站-备地震仪";
@ -993,11 +993,11 @@ namespace JiangsuEarthquake.Models
name = "BackupSeisSetLevel";
//存储历史设置
sql = $"insert into switchinfohis(StationID,RecordTime,SwitchName,SwitchState) values('{id}','{DateTime.Now}','{name}','Off');";
sql = $"insert into switch_info_his(StationID,RecordTime,SwitchName,SwitchState) values('{id}','{DateTime.Now}','{name}','Off');";
DBHelper.ExecuteNonQuery(sql, 1);
//存储最新设置
sql = $"update switchinfo set SwitchState='Off',RecordTime='{DateTime.Now}' where SwitchName='{name}' and StationID={id};";
sql = $"update switch_info set SwitchState='Off',RecordTime='{DateTime.Now}' where SwitchName='{name}' and StationID={id};";
DBHelper.ExecuteNonQuery(sql, 1);
string seisDevice = isMain == true ? "海底地震监测基站-主地震仪" : "海底地震监测基站-备地震仪";

View File

@ -70,14 +70,14 @@ namespace JiangsuEarthquake.Models
return;
//原始数据存储
string sql = $"insert into boosterstationoriginaldata(StationID,RecordTime,OriginalData) values('{id}','{DateTime.Now}','{BitConverter.ToString(byteList.ToArray())}');";
string sql = $"insert into boosterstation_state_originaldata(StationID,RecordTime,OriginalData) values('{id}','{DateTime.Now}','{BitConverter.ToString(byteList.ToArray())}');";
DBHelper.ExecuteNonQuery(sql, 1);
checkByte.Clear();
//CRC校验
for (int i = 0; i < byteList.Count - 2; i++)
checkByte.Add(byteList[i]);
checkCodeCRC = Tools.CRCCalc(checkByte.ToArray());
checkCodeCRC = Tools.CRCCalcRev(checkByte.ToArray());
//CRC校验失败
if (!Tools.CompareByte(checkCodeCRC, new byte[2] { byteList[byteList.Count - 2], byteList[byteList.Count - 1] }))
{
@ -95,7 +95,7 @@ namespace JiangsuEarthquake.Models
//目前为读取寄存器 0000H-000FH即所有数据
//长度校验
dataAreaBytes = byteList[2];
if (dataAreaBytes + 5 != byteList.Count)
if (dataAreaBytes + 4 != byteList.Count)
{
string content = "升压站电控通信系统状态数据长度校验失败";
@ -115,16 +115,16 @@ namespace JiangsuEarthquake.Models
voltage = BitConverter.ToInt16(new byte[2] { byteList[4], byteList[3] }) / 10000f * VoltageRange;
current = BitConverter.ToInt16(new byte[2] { byteList[6], byteList[5] }) / 10000f * CurrentRange;
power = BitConverter.ToInt16(new byte[2] { byteList[7], byteList[8] }) / 10000f * VoltageRange * CurrentRange;
posEleDegree = BitConverter.ToUInt32(new byte[4] { byteList[9], byteList[10], byteList[11], byteList[12] }) * VoltageRange * CurrentRange / (1000 * 3600);
revEleDegree = BitConverter.ToUInt32(new byte[4] { byteList[13], byteList[14], byteList[15], byteList[16] }) * VoltageRange * CurrentRange / (1000 * 3600);
uVoltage = BitConverter.ToUInt16(new byte[2] { byteList[17], byteList[18] }) / 10000f * VoltageRange;
uCurrent = BitConverter.ToUInt16(new byte[2] { byteList[19], byteList[20] }) / 10000f * VoltageRange;
relayStatus = BitConverter.ToUInt16(new byte[2] { byteList[21], byteList[22] });
highResVoltage = BitConverter.ToInt16(new byte[2] { byteList[23], byteList[24] }) / 50000f * VoltageRange;
highResCurrent = BitConverter.ToInt16(new byte[2] { byteList[25], byteList[26] }) / 50000f * CurrentRange;
forAmpereHour = BitConverter.ToUInt32(new byte[4] { byteList[27], byteList[28], byteList[29], byteList[30] }) * CurrentRange / 3600;
revAmpereHour = BitConverter.ToUInt32(new byte[4] { byteList[31], byteList[32], byteList[33], byteList[34] }) * CurrentRange / 3600;
power = BitConverter.ToInt16(new byte[2] { byteList[8], byteList[7] }) / 10000f * VoltageRange * CurrentRange;
posEleDegree = BitConverter.ToUInt32(new byte[4] { byteList[12], byteList[11], byteList[10], byteList[9] }) * VoltageRange * CurrentRange / (1000 * 3600);
revEleDegree = BitConverter.ToUInt32(new byte[4] { byteList[16], byteList[15], byteList[14], byteList[13] }) * VoltageRange * CurrentRange / (1000 * 3600);
uVoltage = BitConverter.ToUInt16(new byte[2] { byteList[18], byteList[17] }) / 10000f * VoltageRange;
uCurrent = BitConverter.ToUInt16(new byte[2] { byteList[20], byteList[19] }) / 10000f * VoltageRange;
relayStatus = byteList[21];
//highResVoltage = BitConverter.ToInt16(new byte[2] { byteList[23], byteList[22] }) / 50000f * VoltageRange;
//highResCurrent = BitConverter.ToInt16(new byte[2] { byteList[25], byteList[24] }) / 50000f * CurrentRange;
//forAmpereHour = BitConverter.ToUInt32(new byte[4] { byteList[29], byteList[28], byteList[27], byteList[26] }) * CurrentRange / 3600;
//revAmpereHour = BitConverter.ToUInt32(new byte[4] { byteList[33], byteList[32], byteList[31], byteList[30] }) * CurrentRange / 3600;
recordTime = DateTime.Now;
sql = $"insert into boosterstation_state(StationID,RecordTime,In_Vol,In_Cur,Power,PosEleDegree," +

View File

@ -59,7 +59,7 @@ namespace JiangsuEarthquake.Models
return;
//原始数据存储
string sql = $"insert into boosterstationoriginaldata(StationID,RecordTime,OriginalData) values('{id}','{DateTime.Now}','{BitConverter.ToString(byteList.ToArray())}');";
string sql = $"insert into boosterstation_state_originaldata(StationID,RecordTime,OriginalData) values('{id}','{DateTime.Now}','{BitConverter.ToString(byteList.ToArray())}');";
DBHelper.ExecuteNonQuery(sql, 1);
if (byteList[1] == 0x03) //查询从设备寄存器内容
@ -77,7 +77,7 @@ namespace JiangsuEarthquake.Models
//CRC校验
for (int i = 0; i < byteList.Count - 2; i++)
checkByte.Add(byteList[i]);
checkCodeCRC = Tools.CRCCalc(checkByte.ToArray());
checkCodeCRC = Tools.CRCCalcRev(checkByte.ToArray());
//CRC校验失败
if (!Tools.CompareByte(checkCodeCRC, new byte[2] { byteList[byteList.Count - 2], byteList[byteList.Count - 1] }))
return;
@ -140,7 +140,7 @@ namespace JiangsuEarthquake.Models
//CRC校验
for (int i = 0; i < byteList.Count - 2; i++)
checkByte.Add(byteList[i]);
checkCodeCRC = Tools.CRCCalc(checkByte.ToArray());
checkCodeCRC = Tools.CRCCalcRev(checkByte.ToArray());
byte[] code = new byte[2] { byteList[byteList.Count - 2], byteList[byteList.Count - 1] };
//CRC校验失败
if (!Tools.CompareByte(checkCodeCRC, code))
@ -225,7 +225,7 @@ namespace JiangsuEarthquake.Models
//CRC校验
for (int i = 0; i < byteList.Count - 2; i++)
checkByte.Add(byteList[i]);
checkCodeCRC = Tools.CRCCalc(checkByte.ToArray());
checkCodeCRC = Tools.CRCCalcRev(checkByte.ToArray());
//CRC校验失败
if (!Tools.CompareByte(checkCodeCRC, new byte[2] { byteList[byteList.Count - 2], byteList[byteList.Count - 1] }))
return;

View File

@ -592,14 +592,14 @@ namespace JiangsuEarthquake.ViewModels
functionCode = 0x03; //功能码
startingRegisterAddress = new byte[2] { 0x00, 0x00 }; //起始寄存器地址
registerNumber = new byte[2] { 0x00, 0x10 }; //寄存器个数
registerNumber = new byte[2] { 0x00, 0x0A }; //寄存器个数
//校验码计算
checkByte.Clear();
checkByte.Add(fromDeviceAddress);
checkByte.Add(functionCode);
checkByte.AddRange(startingRegisterAddress);
checkByte.AddRange(registerNumber);
checkCodeCRC = Tools.CRCCalc(checkByte.ToArray());
checkCodeCRC = Tools.CRCCalcRev(checkByte.ToArray());
//发送指令
sendBytes.Clear();
sendBytes.Add(fromDeviceAddress);
@ -793,7 +793,7 @@ namespace JiangsuEarthquake.ViewModels
checkByte.Add(functionCode);
checkByte.AddRange(registerAddress);
checkByte.AddRange(writeData);
checkCodeCRC = Tools.CRCCalc(checkByte.ToArray());
checkCodeCRC = Tools.CRCCalcRev(checkByte.ToArray());
//发送指令
sendBytes.Clear();
sendBytes.Add(fromDeviceAddress);
@ -883,7 +883,7 @@ namespace JiangsuEarthquake.ViewModels
checkByte.Add(functionCode);
checkByte.AddRange(registerAddress);
checkByte.AddRange(writeData);
checkCodeCRC = Tools.CRCCalc(checkByte.ToArray());
checkCodeCRC = Tools.CRCCalcRev(checkByte.ToArray());
//发送指令
sendBytes.Clear();
sendBytes.Add(fromDeviceAddress);
@ -1195,7 +1195,7 @@ namespace JiangsuEarthquake.ViewModels
checkByte.Add(functionCode);
checkByte.AddRange(registerAddress);
checkByte.AddRange(writeData);
checkCodeCRC = Tools.CRCCalc(checkByte.ToArray());
checkCodeCRC = Tools.CRCCalcRev(checkByte.ToArray());
//发送指令
sendBytes.Clear();
sendBytes.Add(fromDeviceAddress);
@ -1263,7 +1263,7 @@ namespace JiangsuEarthquake.ViewModels
checkByte.Add(functionCode);
checkByte.AddRange(registerAddress);
checkByte.AddRange(writeData);
checkCodeCRC = Tools.CRCCalc(checkByte.ToArray());
checkCodeCRC = Tools.CRCCalcRev(checkByte.ToArray());
//发送指令
sendBytes.Clear();
sendBytes.Add(fromDeviceAddress);
@ -1343,7 +1343,7 @@ namespace JiangsuEarthquake.ViewModels
checkByte.Add(functionCode);
checkByte.AddRange(registerAddress);
checkByte.AddRange(writeData);
checkCodeCRC = Tools.CRCCalc(checkByte.ToArray());
checkCodeCRC = Tools.CRCCalcRev(checkByte.ToArray());
//发送指令
sendBytes.Clear();
sendBytes.Add(fromDeviceAddress);
@ -1425,7 +1425,7 @@ namespace JiangsuEarthquake.ViewModels
checkByte.AddRange(registerNumber);
checkByte.Add(dataNumber);
checkByte.AddRange(writeData);
checkCodeCRC = Tools.CRCCalc(checkByte.ToArray());
checkCodeCRC = Tools.CRCCalcRev(checkByte.ToArray());
//发送指令
sendBytes.Clear();
sendBytes.Add(fromDeviceAddress);
@ -1441,7 +1441,7 @@ namespace JiangsuEarthquake.ViewModels
AlarmThresholdRecvList.Add(functionCode);
AlarmThresholdRecvList.AddRange(startingRegisterAddress);
AlarmThresholdRecvList.AddRange(registerNumber);
checkCodeCRC = Tools.CRCCalc(AlarmThresholdRecvList.ToArray());
checkCodeCRC = Tools.CRCCalcRev(AlarmThresholdRecvList.ToArray());
AlarmThresholdRecvList.AddRange(checkCodeCRC);
if (station_id == 1)

View File

@ -2245,12 +2245,13 @@ namespace JiangsuEarthquake.ViewModels
checkCloseByte.AddRange(new byte[] { 0xA0, 0x50 }); //CMD
checkCloseByte.AddRange(new byte[] { 0x00, 0x04 }); //LENGTH
checkCloseByte.AddRange(msg); //DATA
checkCloseCode = Tools.CRCCalc(checkCloseByte.ToArray()); //CHK_SUM
checkCloseCode = Tools.ComputeChecksum(checkCloseByte.ToArray()); //CHK_SUM
sendCloseDataSeis.AddRange(checkCloseCode);
return sendCloseDataSeis.ToArray();
}
#region MainSeis1ConnectMsg
private void TimerMainSeis1ConnectMsgHidden_Tick(object sender, EventArgs e)
{
@ -2293,6 +2294,7 @@ namespace JiangsuEarthquake.ViewModels
}
#endregion
/// <summary>
/// DoSocketMainSeis1Connect连接
/// </summary>
@ -2310,9 +2312,12 @@ namespace JiangsuEarthquake.ViewModels
clientModelMainSeis1.DisConnect();
IsMainSeis1CertSucs = false;
MainSeis1ConnectMsgVisibility = Visibility.Visible;
MainSeis1ConnectMsg = "连接断开!";
MainSeis1ConnectMsgForeground = new SolidColorBrush(Colors.Red);
App.Current.Dispatcher.Invoke(() =>
{
MainSeis1ConnectMsgVisibility = Visibility.Visible;
MainSeis1ConnectMsg = "连接断开!";
MainSeis1ConnectMsgForeground = new SolidColorBrush(Colors.Red);
});
}));
string sql = $"insert into log_record(StationID,RecordTime,Device_Name,Operation_Type,Record) values('1','{DateTime.Now}','海底地震监测基站-主地震仪','通信连接','连接已断开');";
@ -2326,9 +2331,12 @@ namespace JiangsuEarthquake.ViewModels
if (clientModelMainSeis1.DoConnect(SocketInfoMainSeis1))
{
MainSeis1ConnectMsgVisibility = Visibility.Visible;
MainSeis1ConnectMsg = "初步连接,等待消息帧!";
MainSeis1ConnectMsgForeground = new SolidColorBrush(Colors.Green);
App.Current.Dispatcher.Invoke(() =>
{
MainSeis1ConnectMsgVisibility = Visibility.Visible;
MainSeis1ConnectMsg = "初步连接,等待消息帧!";
MainSeis1ConnectMsgForeground = new SolidColorBrush(Colors.Green);
});
IsMainSeis1CertSucs = false;
@ -2341,6 +2349,8 @@ namespace JiangsuEarthquake.ViewModels
string sql = $"insert into log_record(StationID,RecordTime,Device_Name,Operation_Type,Record) values('1','{DateTime.Now}','海底地震监测基站-主地震仪','通信连接','{record}');";
DBHelper.ExecuteNonQuery(sql, 1);
//切到主地震仪显示
}
}));
}
@ -2407,9 +2417,12 @@ namespace JiangsuEarthquake.ViewModels
clientModelMainSeis2.DisConnect();
IsMainSeis2CertSucs = false;
MainSeis2ConnectMsgVisibility = Visibility.Visible;
MainSeis2ConnectMsg = "连接断开!";
MainSeis2ConnectMsgForeground = new SolidColorBrush(Colors.Red);
App.Current.Dispatcher.Invoke(() =>
{
MainSeis2ConnectMsgVisibility = Visibility.Visible;
MainSeis2ConnectMsg = "连接断开!";
MainSeis2ConnectMsgForeground = new SolidColorBrush(Colors.Red);
});
string sql = $"insert into log_record(StationID,RecordTime,Device_Name,Operation_Type,Record) values('2','{DateTime.Now}','海底地震监测基站-主地震仪','通信连接','连接已断开');";
DBHelper.ExecuteNonQuery(sql, 1);
@ -2423,9 +2436,12 @@ namespace JiangsuEarthquake.ViewModels
if (clientModelMainSeis2.DoConnect(SocketInfoMainSeis2))
{
MainSeis2ConnectMsgVisibility = Visibility.Visible;
MainSeis2ConnectMsg = "初步连接,等待消息帧!";
MainSeis2ConnectMsgForeground = new SolidColorBrush(Colors.Green);
App.Current.Dispatcher.Invoke(() =>
{
MainSeis2ConnectMsgVisibility = Visibility.Visible;
MainSeis2ConnectMsg = "初步连接,等待消息帧!";
MainSeis2ConnectMsgForeground = new SolidColorBrush(Colors.Green);
});
IsMainSeis2CertSucs = false;
@ -2502,9 +2518,12 @@ namespace JiangsuEarthquake.ViewModels
clientModelBackupSeis1.DisConnect();
IsBackupSeis1CertSucs = false;
BackupSeis1ConnectMsgVisibility = Visibility.Visible;
BackupSeis1ConnectMsg = "连接断开!";
BackupSeis1ConnectMsgForeground = new SolidColorBrush(Colors.Red);
App.Current.Dispatcher.Invoke(() =>
{
BackupSeis1ConnectMsgVisibility = Visibility.Visible;
BackupSeis1ConnectMsg = "连接断开!";
BackupSeis1ConnectMsgForeground = new SolidColorBrush(Colors.Red);
});
string sql = $"insert into log_record(StationID,RecordTime,Device_Name,Operation_Type,Record) values('1','{DateTime.Now}','海底地震监测基站-备地震仪','通信连接','连接已断开');";
DBHelper.ExecuteNonQuery(sql, 1);
@ -2518,9 +2537,12 @@ namespace JiangsuEarthquake.ViewModels
if (clientModelBackupSeis1.DoConnect(SocketInfoBackupSeis1))
{
BackupSeis1ConnectMsgVisibility = Visibility.Visible;
BackupSeis1ConnectMsg = "初步连接,等待消息帧!";
BackupSeis1ConnectMsgForeground = new SolidColorBrush(Colors.Green);
App.Current.Dispatcher.Invoke(() =>
{
BackupSeis1ConnectMsgVisibility = Visibility.Visible;
BackupSeis1ConnectMsg = "初步连接,等待消息帧!";
BackupSeis1ConnectMsgForeground = new SolidColorBrush(Colors.Green);
});
IsBackupSeis1CertSucs = false;
@ -2597,9 +2619,12 @@ namespace JiangsuEarthquake.ViewModels
clientModelBackupSeis2.DisConnect();
IsBackupSeis2CertSucs = false;
BackupSeis2ConnectMsgVisibility = Visibility.Visible;
BackupSeis2ConnectMsg = "连接断开!";
BackupSeis2ConnectMsgForeground = new SolidColorBrush(Colors.Red);
App.Current.Dispatcher.Invoke(() =>
{
BackupSeis2ConnectMsgVisibility = Visibility.Visible;
BackupSeis2ConnectMsg = "连接断开!";
BackupSeis2ConnectMsgForeground = new SolidColorBrush(Colors.Red);
});
string sql = $"insert into log_record(StationID,RecordTime,Device_Name,Operation_Type,Record) values('2','{DateTime.Now}','海底地震监测基站-备地震仪','通信连接','连接已断开');";
DBHelper.ExecuteNonQuery(sql, 1);
@ -2613,9 +2638,12 @@ namespace JiangsuEarthquake.ViewModels
if (clientModelBackupSeis2.DoConnect(SocketInfoBackupSeis2))
{
BackupSeis2ConnectMsgVisibility = Visibility.Visible;
BackupSeis2ConnectMsg = "初步连接,等待消息帧!";
BackupSeis2ConnectMsgForeground = new SolidColorBrush(Colors.Green);
App.Current.Dispatcher.Invoke(() =>
{
BackupSeis2ConnectMsgVisibility = Visibility.Visible;
BackupSeis2ConnectMsg = "初步连接,等待消息帧!";
BackupSeis2ConnectMsgForeground = new SolidColorBrush(Colors.Green);
});
IsBackupSeis2CertSucs = false;
@ -3463,7 +3491,7 @@ namespace JiangsuEarthquake.ViewModels
functionCode = 0x06; //功能码
registerAddress = new byte[] { 0x01, 0x30 };
//值 0000继电器继开
writeData = new byte[] { 0x00, 0x00 };
writeData = new byte[] { 0xFF, 0x00 };
//校验码计算
checkByte.Clear();
@ -3471,7 +3499,7 @@ namespace JiangsuEarthquake.ViewModels
checkByte.Add(functionCode);
checkByte.AddRange(registerAddress);
checkByte.AddRange(writeData);
checkCodeCRC = Tools.CRCCalc(checkByte.ToArray());
checkCodeCRC = Tools.CRCCalcRev(checkByte.ToArray());
//发送指令
sendBytes.Clear();
sendBytes.Add(fromDeviceAddress);
@ -3560,7 +3588,7 @@ namespace JiangsuEarthquake.ViewModels
functionCode = 0x06; //功能码
registerAddress = new byte[] { 0x01, 0x30 };
//值 FF00(16 进制):继电器一直闭合,需手动发命令打开
writeData = new byte[] { 0xFF, 0x00 };
writeData = new byte[] { 0x00, 0x00 };
//校验码计算
checkByte.Clear();
@ -3568,7 +3596,7 @@ namespace JiangsuEarthquake.ViewModels
checkByte.Add(functionCode);
checkByte.AddRange(registerAddress);
checkByte.AddRange(writeData);
checkCodeCRC = Tools.CRCCalc(checkByte.ToArray());
checkCodeCRC = Tools.CRCCalcRev(checkByte.ToArray());
//发送指令
sendBytes.Clear();
sendBytes.Add(fromDeviceAddress);
@ -4071,7 +4099,7 @@ namespace JiangsuEarthquake.ViewModels
checkByteSeisZero.AddRange(new byte[] { 0xA0, 0x50 }); //CMD
checkByteSeisZero.AddRange(new byte[] { 0x00, 0x04 }); //LENGTH
checkByteSeisZero.AddRange(numDZJ); //DATA
checkCodeSeisZero = Tools.CRCCalc(checkByteSeisZero.ToArray()); //CHK_SUM
checkCodeSeisZero = Tools.ComputeChecksum(checkByteSeisZero.ToArray()); //CHK_SUM
sendDataSeisZero.AddRange(checkCodeSeisZero);
bool result = false;
@ -4213,7 +4241,7 @@ namespace JiangsuEarthquake.ViewModels
checkByteSeisZero.AddRange(new byte[] { 0xA0, 0x51 }); //CMD
checkByteSeisZero.AddRange(new byte[] { 0x00, 0x04 }); //LENGTH
checkByteSeisZero.AddRange(numDZJ); //DATA
checkCodeSeisZero = Tools.CRCCalc(checkByteSeisZero.ToArray()); //CHK_SUM
checkCodeSeisZero = Tools.ComputeChecksum(checkByteSeisZero.ToArray()); //CHK_SUM
sendDataSeisZero.AddRange(checkCodeSeisZero);
bool result = false;
@ -4355,7 +4383,7 @@ namespace JiangsuEarthquake.ViewModels
checkByteSeisLevel.AddRange(new byte[] { 0xA0, 0x90 }); //CMD
checkByteSeisLevel.AddRange(new byte[] { 0x00, 0x04 }); //LENGTH
checkByteSeisLevel.AddRange(numDZJ); //DATA
checkCodeSeisLevel = Tools.CRCCalc(checkByteSeisLevel.ToArray()); //CHK_SUM
checkCodeSeisLevel = Tools.ComputeChecksum(checkByteSeisLevel.ToArray()); //CHK_SUM
sendDataSeisLevel.AddRange(checkCodeSeisLevel);
bool result = false;
@ -4497,7 +4525,7 @@ namespace JiangsuEarthquake.ViewModels
checkByteSeisLevel.AddRange(new byte[] { 0xA0, 0x91 }); //CMD
checkByteSeisLevel.AddRange(new byte[] { 0x00, 0x04 }); //LENGTH
checkByteSeisLevel.AddRange(numDZJ); //DATA
checkCodeSeisLevel = Tools.CRCCalc(checkByteSeisLevel.ToArray()); //CHK_SUM
checkCodeSeisLevel = Tools.ComputeChecksum(checkByteSeisLevel.ToArray()); //CHK_SUM
sendDataSeisLevel.AddRange(checkCodeSeisLevel);
bool result = false;

View File

@ -685,7 +685,7 @@ namespace JiangsuEarthquake.ViewModels
checkByteSeisPara.AddRange(startTime);
checkByteSeisPara.AddRange(stationid);
checkByteSeisPara.AddRange(software_version);
checkCodeSeisPara = Tools.CRCCalc(checkByteSeisPara.ToArray()); //CHK_SUM
checkCodeSeisPara = Tools.ComputeChecksum(checkByteSeisPara.ToArray()); //CHK_SUM
sendDataSeisPara.AddRange(checkCodeSeisPara);
@ -830,7 +830,7 @@ namespace JiangsuEarthquake.ViewModels
checkByteSeisParaRead.AddRange(new byte[] { 0xB0, 0x00 }); //CMD
checkByteSeisParaRead.AddRange(new byte[] { 0x00, 0x02 }); //LENGTH
checkByteSeisParaRead.AddRange(numDZJ); //地震计号
checkCodeSeisParaRead = Tools.CRCCalc(checkByteSeisParaRead.ToArray()); //CHK_SUM
checkCodeSeisParaRead = Tools.ComputeChecksum(checkByteSeisParaRead.ToArray()); //CHK_SUM
sendDataSeisParaRead.AddRange(checkCodeSeisParaRead);

View File

@ -474,7 +474,7 @@ namespace JiangsuEarthquake.ViewModels
checkByte.AddRange(new byte[] { 0xA0, 0x50 }); //CMD
checkByte.AddRange(new byte[] { 0x00, 0x04 }); //LENGTH
checkByte.AddRange(numDZJ); //DATA
checkCode = Tools.CRCCalc(checkByte.ToArray()); //CHK_SUM
checkCode = Tools.ComputeChecksum(checkByte.ToArray()); //CHK_SUM
sendDataSeis.AddRange(checkCode);
bool result = false;

View File

@ -450,7 +450,7 @@
<TextBlock Name="AskDataMsg" Grid.Row="2" Text="{Binding AskDataMsg}" FontSize="12"
Foreground="{Binding AskDataMsgForeground}"
VerticalAlignment="Center" Margin="120,5,0,0"
VerticalAlignment="Center" Margin="400,5,0,0"
Visibility="{Binding AskDataMsgVisibility}"/>
<StackPanel Grid.Row="1" Orientation="Horizontal" VerticalAlignment="Bottom" HorizontalAlignment="Center"

View File

@ -259,10 +259,6 @@
<StackPanel Orientation="Horizontal" Grid.Row="1" Margin="20,0,0,0"
HorizontalAlignment="Left" VerticalAlignment="Center">
<StackPanel Orientation="Vertical">
<TextBlock Name="RefreshDataMsg" Text=""
Foreground="{Binding RefreshDataMsgForeground}" FontSize="12" HorizontalAlignment="Left"
VerticalAlignment="Bottom" Margin="15,0,0,0"
Visibility="{Binding RefreshDataMsgVisibility}"/>
<Button Name="RefreshDataBtn" HorizontalAlignment="Left" VerticalAlignment="Center" Height="34"
BorderThickness="0" Command="{Binding RefreshDataCommand}" Width="34"
Style="{StaticResource ButtonStyle}" Background="Transparent">

View File

@ -8,7 +8,7 @@
</connectionStrings>
<appSettings>
<add key="XWJ_Service_IP1" value="10.20.102.72" />
<add key="XWJ_Service_IP1" value="10.20.102.201" />
<add key="XWJ_Service_Port1" value="9527" />
<add key="XWJ_Service_IPEndPoint1" value="10.20.102.201:0" />
<add key="XWJ_Service_IP2" value="10.20.102.201" />
@ -24,15 +24,15 @@
<add key="FTPPassword2" value="Acwy@700715" />
<add key="PortName1" value="COM11" />
<add key="BaudRate1" value="9600" />
<add key="DeviceAddress1" value="11" />
<add key="SYZ_Client_IP1" value="10.20.102.201" />
<add key="DeviceAddress1" value="01" />
<add key="SYZ_Client_IP1" value="10.20.102.72" />
<add key="SYZ_Client_Port1" value="55000" />
<add key="PortName2" value="COM2" />
<add key="BaudRate2" value="9600" />
<add key="DeviceAddress2" value="2" />
<add key="DeviceAddress2" value="02" />
<add key="SYZ_Client_IP2" value="10.20.102.201" />
<add key="SYZ_Client_Port2" value="55001" />
<add key="MainSeis_Client_IP1" value="10.20.102.201" />
<add key="MainSeis_Client_IP1" value="10.20.102.72" />
<add key="MainSeis_Client_Port1" value="55002" />
<add key="MainSeis_Client_IP2" value="10.20.102.201" />
<add key="MainSeis_Client_Port2" value="55004" />

View File

@ -14,7 +14,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("JiangsuEarthquake")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+5e3eee173c207d4148a989186f6fa8bf4b4813ca")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+10698e42d329b3559ad9f77c7a31533b33917db9")]
[assembly: System.Reflection.AssemblyProductAttribute("JiangsuEarthquake")]
[assembly: System.Reflection.AssemblyTitleAttribute("JiangsuEarthquake")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
73529fe1bec257b321e4c50ececd188ee3af5e8a8b0e91e6adfddc00cdc488c8
6aa20e8fbbeaa6ee6283ce2ebd044f4cec30917e17ff0e97cb3872964db05f71

View File

@ -1 +1 @@
9f848be8074bce1db6ede387cade89b6c16987a826deada38583f0d34fa0fcf9
6f5e943423d81b654bfed23118c4248de0caadf453e1ce67545f05d0b1ff66bd

View File

@ -12,7 +12,7 @@ TRACE;DEBUG;NET;NET6_0;NETCOREAPP
F:\Code\JSEQ\20240301_JSEQ_upperpc\JiangsuEarthquake\JiangsuEarthquake\App.xaml
20-1982183921
11052456543
92404197732
93-1330565260
227-921550327
Assets\Styles\DefaultStyle.xaml;ImageDictionary.xaml;MainWindow.xaml;Views\AlarmRecordView.xaml;Views\BoosterStationStateDataView.xaml;Views\LogRecordView.xaml;Views\RealTimeDataView.xaml;Views\SeismometerParameterView.xaml;Views\SeismometerStateDataView.xaml;Views\SystemControlView.xaml;Views\SystemEnvironDataView.xaml;Views\SystemMonitorDataView.xaml;Views\UserControls\AlarmSettingView.xaml;Views\UserControls\BaseStationModel.xaml;Views\UserControls\FTPConnectSstView.xaml;Views\UserControls\FTPSettingView.xaml;Views\UserControls\InitialView.xaml;Views\UserControls\InitialView1.xaml;Views\UserControls\OtherSettingView.xaml;Views\UserControls\TextDialog.xaml;

View File

@ -12,9 +12,9 @@ TRACE;DEBUG;NET;NET6_0;NETCOREAPP
F:\Code\JSEQ\20240301_JSEQ_upperpc\JiangsuEarthquake\JiangsuEarthquake\App.xaml
20-1982183921
11052456543
941533400909
95-201362083
227-921550327
Assets\Styles\DefaultStyle.xaml;ImageDictionary.xaml;MainWindow.xaml;Views\AlarmRecordView.xaml;Views\BoosterStationStateDataView.xaml;Views\LogRecordView.xaml;Views\RealTimeDataView.xaml;Views\SeismometerParameterView.xaml;Views\SeismometerStateDataView.xaml;Views\SystemControlView.xaml;Views\SystemEnvironDataView.xaml;Views\SystemMonitorDataView.xaml;Views\UserControls\AlarmSettingView.xaml;Views\UserControls\BaseStationModel.xaml;Views\UserControls\FTPConnectSstView.xaml;Views\UserControls\FTPSettingView.xaml;Views\UserControls\InitialView.xaml;Views\UserControls\InitialView1.xaml;Views\UserControls\OtherSettingView.xaml;Views\UserControls\TextDialog.xaml;
False
True

View File

@ -1,4 +1,4 @@
#pragma checksum "..\..\..\MainWindow.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "D15571BDE66D92800E1408CA6815317F201E205E"
#pragma checksum "..\..\..\MainWindow.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "0FCE694782B890D641F847DF9C8CC61ACF941585"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
@ -44,7 +44,7 @@ namespace JiangsuEarthquake {
public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
#line 218 "..\..\..\MainWindow.xaml"
#line 229 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock DataTime;
@ -52,7 +52,7 @@ namespace JiangsuEarthquake {
#line hidden
#line 221 "..\..\..\MainWindow.xaml"
#line 232 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock Date;
@ -60,7 +60,7 @@ namespace JiangsuEarthquake {
#line hidden
#line 222 "..\..\..\MainWindow.xaml"
#line 233 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock Week;
@ -99,7 +99,7 @@ namespace JiangsuEarthquake {
{
case 1:
#line 140 "..\..\..\MainWindow.xaml"
#line 141 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Border)(target)).MouseLeftButtonDown += new System.Windows.Input.MouseButtonEventHandler(this.Border_MouseLeftButtonDown);
#line default
@ -107,7 +107,7 @@ namespace JiangsuEarthquake {
return;
case 2:
#line 145 "..\..\..\MainWindow.xaml"
#line 146 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.MinButton_Click);
#line default
@ -115,7 +115,7 @@ namespace JiangsuEarthquake {
return;
case 3:
#line 155 "..\..\..\MainWindow.xaml"
#line 156 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Button_Click);
#line default
@ -123,7 +123,7 @@ namespace JiangsuEarthquake {
return;
case 4:
#line 206 "..\..\..\MainWindow.xaml"
#line 217 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.DetailButton_Click);
#line default

View File

@ -1,4 +1,4 @@
#pragma checksum "..\..\..\MainWindow.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "D15571BDE66D92800E1408CA6815317F201E205E"
#pragma checksum "..\..\..\MainWindow.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "0FCE694782B890D641F847DF9C8CC61ACF941585"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
@ -44,7 +44,7 @@ namespace JiangsuEarthquake {
public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
#line 218 "..\..\..\MainWindow.xaml"
#line 229 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock DataTime;
@ -52,7 +52,7 @@ namespace JiangsuEarthquake {
#line hidden
#line 221 "..\..\..\MainWindow.xaml"
#line 232 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock Date;
@ -60,7 +60,7 @@ namespace JiangsuEarthquake {
#line hidden
#line 222 "..\..\..\MainWindow.xaml"
#line 233 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock Week;
@ -99,7 +99,7 @@ namespace JiangsuEarthquake {
{
case 1:
#line 140 "..\..\..\MainWindow.xaml"
#line 141 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Border)(target)).MouseLeftButtonDown += new System.Windows.Input.MouseButtonEventHandler(this.Border_MouseLeftButtonDown);
#line default
@ -107,7 +107,7 @@ namespace JiangsuEarthquake {
return;
case 2:
#line 145 "..\..\..\MainWindow.xaml"
#line 146 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.MinButton_Click);
#line default
@ -115,7 +115,7 @@ namespace JiangsuEarthquake {
return;
case 3:
#line 155 "..\..\..\MainWindow.xaml"
#line 156 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Button_Click);
#line default
@ -123,7 +123,7 @@ namespace JiangsuEarthquake {
return;
case 4:
#line 206 "..\..\..\MainWindow.xaml"
#line 217 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.DetailButton_Click);
#line default

View File

@ -1,4 +1,4 @@
#pragma checksum "..\..\..\..\Views\BoosterStationStateDataView.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "F2C24F73E4E73974793972B681E0BC1BF8A04CBC"
#pragma checksum "..\..\..\..\Views\BoosterStationStateDataView.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "80D54956EF859805BA33CE5E3CCBFFA89B5E33AD"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。

View File

@ -1,4 +1,4 @@
#pragma checksum "..\..\..\..\Views\BoosterStationStateDataView.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "F2C24F73E4E73974793972B681E0BC1BF8A04CBC"
#pragma checksum "..\..\..\..\Views\BoosterStationStateDataView.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "80D54956EF859805BA33CE5E3CCBFFA89B5E33AD"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。

View File

@ -1,4 +1,4 @@
#pragma checksum "..\..\..\..\Views\LogRecordView.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "B95FA3BD278216A51721A66B08DDFDE7D6318923"
#pragma checksum "..\..\..\..\Views\LogRecordView.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "4A61266657D5B4C138DC35493EC5CAA92EBE0C39"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
@ -90,21 +90,13 @@ namespace JiangsuEarthquake.Views {
#line 262 "..\..\..\..\Views\LogRecordView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock RefreshDataMsg;
#line default
#line hidden
#line 266 "..\..\..\..\Views\LogRecordView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Button RefreshDataBtn;
#line default
#line hidden
#line 279 "..\..\..\..\Views\LogRecordView.xaml"
#line 275 "..\..\..\..\Views\LogRecordView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock DownloadDataMsg;
@ -112,7 +104,7 @@ namespace JiangsuEarthquake.Views {
#line hidden
#line 283 "..\..\..\..\Views\LogRecordView.xaml"
#line 279 "..\..\..\..\Views\LogRecordView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Button DownloadDataBtn;
@ -159,15 +151,12 @@ namespace JiangsuEarthquake.Views {
this.LogRecordDataGrid = ((System.Windows.Controls.DataGrid)(target));
return;
case 4:
this.RefreshDataMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 5:
this.RefreshDataBtn = ((System.Windows.Controls.Button)(target));
return;
case 6:
case 5:
this.DownloadDataMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 7:
case 6:
this.DownloadDataBtn = ((System.Windows.Controls.Button)(target));
return;
}

View File

@ -1,4 +1,4 @@
#pragma checksum "..\..\..\..\Views\LogRecordView.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "B95FA3BD278216A51721A66B08DDFDE7D6318923"
#pragma checksum "..\..\..\..\Views\LogRecordView.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "4A61266657D5B4C138DC35493EC5CAA92EBE0C39"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
@ -90,21 +90,13 @@ namespace JiangsuEarthquake.Views {
#line 262 "..\..\..\..\Views\LogRecordView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock RefreshDataMsg;
#line default
#line hidden
#line 266 "..\..\..\..\Views\LogRecordView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Button RefreshDataBtn;
#line default
#line hidden
#line 279 "..\..\..\..\Views\LogRecordView.xaml"
#line 275 "..\..\..\..\Views\LogRecordView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock DownloadDataMsg;
@ -112,7 +104,7 @@ namespace JiangsuEarthquake.Views {
#line hidden
#line 283 "..\..\..\..\Views\LogRecordView.xaml"
#line 279 "..\..\..\..\Views\LogRecordView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Button DownloadDataBtn;
@ -159,15 +151,12 @@ namespace JiangsuEarthquake.Views {
this.LogRecordDataGrid = ((System.Windows.Controls.DataGrid)(target));
return;
case 4:
this.RefreshDataMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 5:
this.RefreshDataBtn = ((System.Windows.Controls.Button)(target));
return;
case 6:
case 5:
this.DownloadDataMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 7:
case 6:
this.DownloadDataBtn = ((System.Windows.Controls.Button)(target));
return;
}

View File

@ -1,4 +1,4 @@
#pragma checksum "..\..\..\..\Views\SystemControlView.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "1529A6C4CB24F93CCC1976E07E2B48E10002BBE7"
#pragma checksum "..\..\..\..\Views\SystemControlView.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "D90B73B6350492082EF261B816EB9173AC6A9679"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
@ -168,14 +168,6 @@ namespace JiangsuEarthquake.Views {
#line hidden
#line 634 "..\..\..\..\Views\SystemControlView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock BackupSeis1ConnectMsg;
#line default
#line hidden
#line 682 "..\..\..\..\Views\SystemControlView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox MainSeisIP2;
@ -192,14 +184,6 @@ namespace JiangsuEarthquake.Views {
#line hidden
#line 715 "..\..\..\..\Views\SystemControlView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock MainSeis2ConnectMsg;
#line default
#line hidden
#line 763 "..\..\..\..\Views\SystemControlView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox BackupSeisIP2;
@ -216,14 +200,6 @@ namespace JiangsuEarthquake.Views {
#line hidden
#line 796 "..\..\..\..\Views\SystemControlView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock BackupSeis2ConnectMsg;
#line default
#line hidden
#line 865 "..\..\..\..\Views\SystemControlView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Button BaseStationPowerPicker;
@ -415,66 +391,57 @@ namespace JiangsuEarthquake.Views {
this.BackupSeisPort1 = ((System.Windows.Controls.TextBox)(target));
return;
case 15:
this.BackupSeis1ConnectMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 16:
this.MainSeisIP2 = ((System.Windows.Controls.TextBox)(target));
return;
case 17:
case 16:
this.MainSeisPort2 = ((System.Windows.Controls.TextBox)(target));
return;
case 18:
this.MainSeis2ConnectMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 19:
case 17:
this.BackupSeisIP2 = ((System.Windows.Controls.TextBox)(target));
return;
case 20:
case 18:
this.BackupSeisPort2 = ((System.Windows.Controls.TextBox)(target));
return;
case 21:
this.BackupSeis2ConnectMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 22:
case 19:
this.BaseStationPowerPicker = ((System.Windows.Controls.Button)(target));
return;
case 23:
case 20:
this.MainSeisPowerPicker = ((System.Windows.Controls.Button)(target));
return;
case 24:
case 21:
this.BackupSeisPowerPicker = ((System.Windows.Controls.Button)(target));
return;
case 25:
case 22:
this.ElectPowerPicker = ((System.Windows.Controls.Button)(target));
return;
case 26:
case 23:
this.BaseStationMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 27:
case 24:
this.MainSeisMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 28:
case 25:
this.BackupSeisMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 29:
case 26:
this.ElectMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 30:
case 27:
this.SeisZeroSetStart = ((System.Windows.Controls.Button)(target));
return;
case 31:
case 28:
this.SeisZeroSetStop = ((System.Windows.Controls.Button)(target));
return;
case 32:
case 29:
this.OpenSetMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 33:
case 30:
this.CloseSetMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 34:
case 31:
this.SeisLevelSetStart = ((System.Windows.Controls.Button)(target));
return;
case 35:
case 32:
this.SeisLevelSetStop = ((System.Windows.Controls.Button)(target));
return;
}

View File

@ -1,5 +1,5 @@
// Updated by XamlIntelliSenseFileGenerator 2024/7/5 17:14:30
#pragma checksum "..\..\..\..\Views\SystemControlView.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "1529A6C4CB24F93CCC1976E07E2B48E10002BBE7"
// Updated by XamlIntelliSenseFileGenerator 2024/7/8 17:02:22
#pragma checksum "..\..\..\..\Views\SystemControlView.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "D90B73B6350492082EF261B816EB9173AC6A9679"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
@ -166,14 +166,6 @@ namespace JiangsuEarthquake.Views
#line hidden
#line 634 "..\..\..\..\Views\SystemControlView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock BackupSeis1ConnectMsg;
#line default
#line hidden
#line 682 "..\..\..\..\Views\SystemControlView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox MainSeisIP2;
@ -190,14 +182,6 @@ namespace JiangsuEarthquake.Views
#line hidden
#line 715 "..\..\..\..\Views\SystemControlView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock MainSeis2ConnectMsg;
#line default
#line hidden
#line 763 "..\..\..\..\Views\SystemControlView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox BackupSeisIP2;
@ -214,14 +198,6 @@ namespace JiangsuEarthquake.Views
#line hidden
#line 796 "..\..\..\..\Views\SystemControlView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock BackupSeis2ConnectMsg;
#line default
#line hidden
#line 865 "..\..\..\..\Views\SystemControlView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Button BaseStationPowerPicker;
@ -417,66 +393,57 @@ namespace JiangsuEarthquake.Views
this.BackupSeisPort1 = ((System.Windows.Controls.TextBox)(target));
return;
case 15:
this.BackupSeis1ConnectMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 16:
this.MainSeisIP2 = ((System.Windows.Controls.TextBox)(target));
return;
case 17:
case 16:
this.MainSeisPort2 = ((System.Windows.Controls.TextBox)(target));
return;
case 18:
this.MainSeis2ConnectMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 19:
case 17:
this.BackupSeisIP2 = ((System.Windows.Controls.TextBox)(target));
return;
case 20:
case 18:
this.BackupSeisPort2 = ((System.Windows.Controls.TextBox)(target));
return;
case 21:
this.BackupSeis2ConnectMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 22:
case 19:
this.BaseStationPowerPicker = ((System.Windows.Controls.Button)(target));
return;
case 23:
case 20:
this.MainSeisPowerPicker = ((System.Windows.Controls.Button)(target));
return;
case 24:
case 21:
this.BackupSeisPowerPicker = ((System.Windows.Controls.Button)(target));
return;
case 25:
case 22:
this.ElectPowerPicker = ((System.Windows.Controls.Button)(target));
return;
case 26:
case 23:
this.BaseStationMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 27:
case 24:
this.MainSeisMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 28:
case 25:
this.BackupSeisMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 29:
case 26:
this.ElectMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 30:
case 27:
this.SeisZeroSetStart = ((System.Windows.Controls.Button)(target));
return;
case 31:
case 28:
this.SeisZeroSetStop = ((System.Windows.Controls.Button)(target));
return;
case 32:
case 29:
this.OpenSetMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 33:
case 30:
this.CloseSetMsg = ((System.Windows.Controls.TextBlock)(target));
return;
case 34:
case 31:
this.SeisLevelSetStart = ((System.Windows.Controls.Button)(target));
return;
case 35:
case 32:
this.SeisLevelSetStop = ((System.Windows.Controls.Button)(target));
return;
}
@ -484,6 +451,9 @@ namespace JiangsuEarthquake.Views
}
internal System.Windows.Controls.UserControl SystemControlPage;
internal System.Windows.Controls.TextBlock BackupSeis1ConnectMsg;
internal System.Windows.Controls.TextBlock MainSeis2ConnectMsg;
internal System.Windows.Controls.TextBlock BackupSeis2ConnectMsg;
}
}

View File

@ -14,7 +14,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Models")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+5e3eee173c207d4148a989186f6fa8bf4b4813ca")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+10698e42d329b3559ad9f77c7a31533b33917db9")]
[assembly: System.Reflection.AssemblyProductAttribute("Models")]
[assembly: System.Reflection.AssemblyTitleAttribute("Models")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
f916f338dd8fb6feee95f36ce0b15342aaf0fc9b1543d4c5737079a95595499f
9558e2034606c7e693adbf29abbaffe216e8c0f11ae7c0927bfe88717547251c