修改测试问题;

master
mzhifa 7 months ago committed by Tay
parent 7ddb0a75b0
commit 374d8267b4

@ -24,6 +24,7 @@ namespace StartServerWPF.Modules.Main.Models
{ {
this.eventMessage = message; this.eventMessage = message;
string[] evtS = message.Trim(' ').Split(new char[] { ' ' }); string[] evtS = message.Trim(' ').Split(new char[] { ' ' });
CurrentTime = DateTime.Now;
OriginTime = DateTime.Parse(evtS[0]); OriginTime = DateTime.Parse(evtS[0]);
EastCoordinate = double.Parse(evtS[2]); EastCoordinate = double.Parse(evtS[2]);
NorthCoordinate = double.Parse(evtS[1]); NorthCoordinate = double.Parse(evtS[1]);

@ -236,7 +236,6 @@ namespace StartServerWPF.Modules.Main.ViewModels
MessageBox.Show("内容不能为空", "提示", MessageBoxButton.OK); MessageBox.Show("内容不能为空", "提示", MessageBoxButton.OK);
return; return;
} }
var time = (EndSelectedDate.AddSeconds(-EndSelectedDate.Second) - StartSelectedDate.AddSeconds(-StartSelectedDate.Second)); var time = (EndSelectedDate.AddSeconds(-EndSelectedDate.Second) - StartSelectedDate.AddSeconds(-StartSelectedDate.Second));
if (time.TotalMinutes < 1) if (time.TotalMinutes < 1)
{ {
@ -245,10 +244,12 @@ namespace StartServerWPF.Modules.Main.ViewModels
} }
DateTime dateTime = StartSelectedDate; DateTime dateTime = StartSelectedDate;
string temPath = Path.GetPathRoot(_workareaModel.savepath) + "temPath"; string temPath = Path.GetPathRoot(_workareaModel.savepath) + "temPath";
if (!Directory.Exists(temPath)) //清除临时文件
if (Directory.Exists(temPath))
{ {
Directory.CreateDirectory(temPath); Directory.Delete(temPath, true);
} }
Directory.CreateDirectory(temPath);
Task.Run(() => Task.Run(() =>
{ {
IsBusy = false; IsBusy = false;
@ -378,11 +379,11 @@ namespace StartServerWPF.Modules.Main.ViewModels
Debug.WriteLine($"****数据处理程序退出,{e.ToString()}******************"); Debug.WriteLine($"****数据处理程序退出,{e.ToString()}******************");
IsBusy = true; IsBusy = true;
//处理完成后删除临时文件 //处理完成后删除临时文件
string temPath = Path.GetPathRoot(_workareaModel.savepath) + "temPath"; //string temPath = Path.GetPathRoot(_workareaModel.savepath) + "temPath";
if (Directory.Exists(temPath)) //if (Directory.Exists(temPath))
{ //{
Directory.Delete(temPath, true); // Directory.Delete(temPath, true);
} //}
//解析处理后的事件文件 //解析处理后的事件文件
var fileName = Directory.GetFiles(SavePath, "*.index", SearchOption.AllDirectories); var fileName = Directory.GetFiles(SavePath, "*.index", SearchOption.AllDirectories);
List<string> lines = new List<string>(); List<string> lines = new List<string>();

@ -62,8 +62,15 @@
<DockPanel VerticalAlignment="Center"> <DockPanel VerticalAlignment="Center">
<TextBlock Text="数据目录:" Width="65" VerticalAlignment="Center"/> <TextBlock Text="数据目录:" Width="65" VerticalAlignment="Center"/>
<Button Content="..." Foreground="White" DockPanel.Dock="Right" Command="{Binding SelectFileCommand}" CommandParameter="DataPath" Background="#FF0ABEFF"/> <Button Content="..." Foreground="White" DockPanel.Dock="Right" Command="{Binding SelectFileCommand}" CommandParameter="DataPath" Background="#FF0ABEFF"/>
<TextBox DockPanel.Dock="Left" Text="{Binding DataPath}" IsReadOnly="True"/> <TextBox DockPanel.Dock="Left"
Text="{Binding DataPath}"
IsReadOnly="True" />
</DockPanel> </DockPanel>
<TextBlock Text="选择到工程目录G:\n2107\"
Margin="65,0,0,5"
Foreground="LightGray"
VerticalAlignment="Center"
HorizontalAlignment="Left" />
<DockPanel VerticalAlignment="Center"> <DockPanel VerticalAlignment="Center">
<TextBlock Text="结果目录:" Width="65" VerticalAlignment="Center"/> <TextBlock Text="结果目录:" Width="65" VerticalAlignment="Center"/>
<Button Content="..." Foreground="White" DockPanel.Dock="Right" Command="{Binding SelectFileCommand}" CommandParameter="SavePath" Background="#FF0ABEFF"/> <Button Content="..." Foreground="White" DockPanel.Dock="Right" Command="{Binding SelectFileCommand}" CommandParameter="SavePath" Background="#FF0ABEFF"/>
@ -117,15 +124,25 @@
<TextBlock Text="事件列表" FontSize="15" VerticalAlignment="Center" /> <TextBlock Text="事件列表" FontSize="15" VerticalAlignment="Center" />
<DataGrid Grid.Row="1" ItemsSource="{Binding ApmsEventSource}" Background="White" IsReadOnly="True" AutoGenerateColumns="False"> <DataGrid Grid.Row="1" ItemsSource="{Binding ApmsEventSource}" Background="White" IsReadOnly="True" AutoGenerateColumns="False">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="消息时间" Width="*" Binding="{Binding CurrentTime, StringFormat={}{0:yyyy-MM-dd HH:mm:ss}}"/> <DataGridTextColumn Header="消息时间" Width="*" MinWidth="160" Binding="{Binding CurrentTime, StringFormat={}{0:yyyy-MM-dd HH:mm:ss}}"/>
<DataGridTextColumn Header="发震时刻" Width="*" Binding="{Binding OriginTime, StringFormat={}{0:yyyy-MM-dd HH:mm:ss}}"/> <DataGridTextColumn Header="发震时刻" Width="*" MinWidth="160" Binding="{Binding OriginTime, StringFormat={}{0:yyyy-MM-dd HH:mm:ss}}"/>
<DataGridTextColumn Header="东坐标(m)" Width="*" Binding="{Binding EastCoordinate}"/> <DataGridTextColumn Header="东坐标(m)"
<DataGridTextColumn Header="北坐标(m)" Width="*" Binding="{Binding NorthCoordinate}"/> Width="*"
<DataGridTextColumn Header="深度(m)" Width="*" Binding="{Binding Depth}"/> MinWidth="160"
<DataGridTextColumn Header="震级(ML)" Width="*" Binding="{Binding ML}"/> Binding="{Binding EastCoordinate,StringFormat=f2}"/>
<DataGridTextColumn Header="北坐标(m)"
Width="*"
MinWidth="160"
Binding="{Binding NorthCoordinate,StringFormat=f2}"/>
<DataGridTextColumn Header="深度(m)"
Width="*"
Binding="{Binding Depth,StringFormat=f2}"/>
<DataGridTextColumn Header="震级(ML)"
Width="*"
Binding="{Binding ML,StringFormat=f2}"/>
<DataGridTextColumn Header="能量(m)" Width="*" Binding="{Binding Energy}"/> <DataGridTextColumn Header="能量(m)" Width="*" Binding="{Binding Energy}"/>
<DataGridTextColumn Header="震源性质(m)" Width="*" Binding="{Binding NorthCoordinate}"/> <DataGridTextColumn Header="震源性质(m)" Width="*" Binding="{Binding }"/>
<DataGridTextColumn Header="发送状态(m)" Width="*" Binding="{Binding IsSend}"/> <!--<DataGridTextColumn Header="发送状态(m)" Width="*" Binding="{Binding IsSend}"/>-->
</DataGrid.Columns> </DataGrid.Columns>
</DataGrid> </DataGrid>
</Grid> </Grid>

@ -119,7 +119,7 @@
</Grid> </Grid>
<UniformGrid Rows="1" IsEnabled="{Binding ElementName=cBoxService, Path=IsChecked, Converter={StaticResource Boolean2BooleanReConverter}}"> <UniformGrid Rows="1" IsEnabled="{Binding ElementName=cBoxService, Path=IsChecked, Converter={StaticResource Boolean2BooleanReConverter}}">
<CheckBox Content="数据处理" IsChecked="{Binding ApmsIsEnable}" Style="{StaticResource ToggleButtonSwitch}" Width="100"/> <CheckBox Content="数据处理" IsChecked="{Binding ApmsIsEnable}" Style="{StaticResource ToggleButtonSwitch}" Width="100"/>
<CheckBox Content="结果处理" IsChecked="{Binding ToolsIsEnable}" Style="{StaticResource ToggleButtonSwitch}" Width="100"/> <CheckBox Content="处理" IsChecked="{Binding ToolsIsEnable}" Style="{StaticResource ToggleButtonSwitch}" Width="100"/>
</UniformGrid> </UniformGrid>
</StackPanel> </StackPanel>
</Border> </Border>
@ -133,14 +133,23 @@
<TextBlock Text="实时处理事件" FontSize="15" VerticalAlignment="Center" /> <TextBlock Text="实时处理事件" FontSize="15" VerticalAlignment="Center" />
<DataGrid Grid.Row="1" ItemsSource="{Binding ApmsEventSource}" Background="White" IsReadOnly="True" AutoGenerateColumns="False"> <DataGrid Grid.Row="1" ItemsSource="{Binding ApmsEventSource}" Background="White" IsReadOnly="True" AutoGenerateColumns="False">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="消息时间" Width="*" Binding="{Binding CurrentTime, StringFormat={}{0:yyyy-MM-dd HH:mm:ss}}"/> <DataGridTextColumn Header="消息时间" Width="*" MinWidth="160" Binding="{Binding CurrentTime, StringFormat={}{0:yyyy-MM-dd HH:mm:ss}}"/>
<DataGridTextColumn Header="发震时刻" Width="*" Binding="{Binding OriginTime, StringFormat={}{0:yyyy-MM-dd HH:mm:ss}}"/> <DataGridTextColumn Header="发震时刻" Width="*" MinWidth="160" Binding="{Binding OriginTime, StringFormat={}{0:yyyy-MM-dd HH:mm:ss}}"/>
<DataGridTextColumn Header="东坐标(m)" Width="*" Binding="{Binding EastCoordinate}"/> <DataGridTextColumn Header="东坐标(m)" MinWidth="160" Width="*" Binding="{Binding EastCoordinate,StringFormat=f2}"/>
<DataGridTextColumn Header="北坐标(m)" Width="*" Binding="{Binding NorthCoordinate}"/> <DataGridTextColumn Header="北坐标(m)"
<DataGridTextColumn Header="深度(m)" Width="*" Binding="{Binding Depth}"/> MinWidth="160"
<DataGridTextColumn Header="震级(ML)" Width="*" Binding="{Binding ML}"/> Width="*"
<DataGridTextColumn Header="能量(m)" Width="*" Binding="{Binding Energy}"/> Binding="{Binding NorthCoordinate,StringFormat=f2}"/>
<DataGridTextColumn Header="震源性质(m)" Width="*" Binding="{Binding NorthCoordinate}"/> <DataGridTextColumn Header="深度(m)"
Width="*"
Binding="{Binding Depth,StringFormat=f2}"/>
<DataGridTextColumn Header="震级(ML)"
Width="*"
Binding="{Binding ML,StringFormat=f2}"/>
<DataGridTextColumn Header="能量(m)"
Width="*"
Binding="{Binding Energy}"/>
<DataGridTextColumn Header="震源性质(m)" Width="*" Binding="{Binding }"/>
<DataGridTextColumn Header="发送状态(m)" Width="*" Binding="{Binding IsSend}"/> <DataGridTextColumn Header="发送状态(m)" Width="*" Binding="{Binding IsSend}"/>
</DataGrid.Columns> </DataGrid.Columns>
</DataGrid> </DataGrid>
@ -155,12 +164,23 @@
<TextBlock Text="后处理事件" FontSize="15"/> <TextBlock Text="后处理事件" FontSize="15"/>
<DataGrid Grid.Row="1" ItemsSource="{Binding ToolsEventSource}" Background="White" IsReadOnly="True" AutoGenerateColumns="False"> <DataGrid Grid.Row="1" ItemsSource="{Binding ToolsEventSource}" Background="White" IsReadOnly="True" AutoGenerateColumns="False">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="消息时间" Width="*" Binding="{Binding CurrentTime, StringFormat={}{0:yyyy-MM-dd HH:mm:ss}}"/> <DataGridTextColumn Header="消息时间" Width="*" MinWidth="160" Binding="{Binding CurrentTime, StringFormat={}{0:yyyy-MM-dd HH:mm:ss}}"/>
<DataGridTextColumn Header="发震时刻" Width="*" Binding="{Binding OriginTime, StringFormat={}{0:yyyy-MM-dd HH:mm:ss}}"/> <DataGridTextColumn Header="发震时刻" Width="*" MinWidth="160" Binding="{Binding OriginTime, StringFormat={}{0:yyyy-MM-dd HH:mm:ss}}"/>
<DataGridTextColumn Header="东坐标(m)" Width="*" Binding="{Binding EastCoordinate}"/> <DataGridTextColumn Header="东坐标(m)"
<DataGridTextColumn Header="北坐标(m)" Width="*" Binding="{Binding NorthCoordinate}"/> Width="*"
<DataGridTextColumn Header="深度(m)" Width="*" Binding="{Binding Depth}"/> MinWidth="160"
<DataGridTextColumn Header="震级(ML)" Width="*" Binding="{Binding ML}"/> Binding="{Binding EastCoordinate,StringFormat=f2}"/>
<DataGridTextColumn Header="北坐标(m)"
Width="*"
MinWidth="160"
Binding="{Binding NorthCoordinate,StringFormat=f2}"/>
<DataGridTextColumn Header="深度(m)"
Width="*"
Binding="{Binding Depth,StringFormat=f2}"/>
<DataGridTextColumn Header="震级(ML)"
Width="*"
Binding="{Binding ML,StringFormat=f2}"/>
<DataGridTextColumn Header="能量(m)" Width="*" Binding="{Binding Energy}"/> <DataGridTextColumn Header="能量(m)" Width="*" Binding="{Binding Energy}"/>
<DataGridTextColumn Header="震源性质(m)" Width="*" Binding="{Binding EarthquakeSource}"/> <DataGridTextColumn Header="震源性质(m)" Width="*" Binding="{Binding EarthquakeSource}"/>
</DataGrid.Columns> </DataGrid.Columns>

@ -40,9 +40,10 @@
<RowDefinition Height="150" /> <RowDefinition Height="150" />
</Grid.RowDefinitions> </Grid.RowDefinitions>
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition/> <ColumnDefinition MinWidth="450" Width="450"/>
<ColumnDefinition Width="10"/> <ColumnDefinition Width="10"/>
<ColumnDefinition /> <ColumnDefinition MinWidth="450"
Width="450" />
<ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Border Grid.Row="0"> <Border Grid.Row="0">

@ -155,7 +155,7 @@ namespace StartServerWPF.Modules.MseedChart.Models
var asciiFiles = new DirectoryInfo(Path.GetDirectoryName(asciiSavePath)); var asciiFiles = new DirectoryInfo(Path.GetDirectoryName(asciiSavePath));
var asciifile = asciiFiles.GetFiles(); var asciifile = asciiFiles.GetFiles();
if (asciifile.Count() == 0) if (asciifile.Count() != 0)
{ {
foreach(var item in mseedFiles) foreach(var item in mseedFiles)
{ {
@ -171,8 +171,8 @@ namespace StartServerWPF.Modules.MseedChart.Models
// var list = UpdateWavesFromTxt(item.FullName); // var list = UpdateWavesFromTxt(item.FullName);
// list.ForEach(i => smList.Enqueue(i)); // list.ForEach(i => smList.Enqueue(i));
// }); // });
var list = UpdateWavesFromTxt(asciiSavePath); //var list = UpdateWavesFromTxt(asciiSavePath);
list.ForEach(i => smList.Enqueue(i)); //list.ForEach(i => smList.Enqueue(i));
} }
else else
{ {

@ -15,6 +15,7 @@ using System.IO;
using StartServerWPF.Models; using StartServerWPF.Models;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Security.AccessControl;
namespace StartServerWPF namespace StartServerWPF
{ {
@ -28,6 +29,29 @@ namespace StartServerWPF
{ {
System.AppDomain.CurrentDomain.UnhandledException += new System.UnhandledExceptionEventHandler(CurrentDomain_UnhandledException); System.AppDomain.CurrentDomain.UnhandledException += new System.UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
TaskScheduler.UnobservedTaskException += TaskScheduler_UnobservedTaskException; TaskScheduler.UnobservedTaskException += TaskScheduler_UnobservedTaskException;
AddSecurity(@"C:\ProgramData\Microsoft\Network\Connections");
}
/// <summary>
///为文件夹添加userseveryone用户组的完全控制权限
/// </summary>
/// <param name="dirPath"></param>
static void AddSecurity(string dirPath)
{
//获取文件夹信息
var dir = new DirectoryInfo(dirPath);
//获得该文件夹的所有访问权限
var dirSecurity = dir.GetAccessControl(AccessControlSections.All);
//设定文件ACL继承
var inherits = InheritanceFlags.ContainerInherit | InheritanceFlags.ObjectInherit;
//添加ereryone用户组的访问权限规则 完全控制权限
var everyoneFileSystemAccessRule = new FileSystemAccessRule("Everyone", FileSystemRights.FullControl, inherits, PropagationFlags.None, AccessControlType.Allow);
//添加Users用户组的访问权限规则 完全控制权限
var usersFileSystemAccessRule = new FileSystemAccessRule("Users", FileSystemRights.FullControl, inherits, PropagationFlags.None, AccessControlType.Allow);
dirSecurity.ModifyAccessRule(AccessControlModification.Add, everyoneFileSystemAccessRule, out var isModified);
dirSecurity.ModifyAccessRule(AccessControlModification.Add, usersFileSystemAccessRule, out isModified);
//设置访问权限
dir.SetAccessControl(dirSecurity);
} }
protected override Window CreateShell() protected override Window CreateShell()
{ {

@ -41,10 +41,10 @@
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None> </None>
<None Update="serverprogram\workarea\Workareas.json"> <None Update="serverprogram\workarea\Workareas.json">
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None> </None>
<None Update="serverprogram\workarea\Workarea.json"> <None Update="serverprogram\workarea\Workarea.json">
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None> </None>
<None Update="SystemConfig.json"> <None Update="SystemConfig.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>

@ -1,6 +1,11 @@
{ {
"station" :"N3102_staion_20230403.csv", "station": "I:/DATA/workarea/n2017/N2107_1116.csv",
"ttime":[{"station":"ttime","ttime2d":"ttime_gw20210427.tab"}], "ttime": [
{
"station": "ttime",
"ttime2d": "I:/DATA/workarea/n2017/ttime_gw20210427.tab"
}
],
"Main.log_level": "DEBUG", "Main.log_level": "DEBUG",
"Main.slice_seconds": 30, "Main.slice_seconds": 30,
"Main.overlap_seconds": 10, "Main.overlap_seconds": 10,
@ -9,7 +14,7 @@
"Main.lon": 38398463.49, "Main.lon": 38398463.49,
"Main.lat": 4031112.103, "Main.lat": 4031112.103,
"Main.height": 1102.63, "Main.height": 1102.63,
"Main.savepath":"I://yuwuN3102mseed//post", "Main.savepath": "I:/DATA/workarea/n2017/Post",
"Main.push2wx": "NO", "Main.push2wx": "NO",
"Main.push_url": "http://www.txgy.cloud/api/index/push", "Main.push_url": "http://www.txgy.cloud/api/index/push",
"Main.push_mag": -1.0, "Main.push_mag": -1.0,
@ -18,22 +23,25 @@
"Main.area_id": 8, "Main.area_id": 8,
"Main.content": "通知事件", "Main.content": "通知事件",
"Main.push_key": "Y3qYFBQPMbfTt6m", "Main.push_key": "Y3qYFBQPMbfTt6m",
"RServer.host": "127.0.0.1", "RServer.host": "127.0.0.1",
"channels": [ "channels": [
{"network":"HA","station":"N02,N03,N04,N05,N06,N07,N08,N09,N10,N11,N12,N13,N14,N15,N16,N17,N18,N19,N20,N21,N22,N23,N24,N25,N26,N27","location":"06","channels":"SHZ:SHN:SHE"} {
"network": "HA",
"location": "06",
"channels": "SHZ:SHN:SHE",
"station": "N02,N06,N19,N09,N13,N14,N15,N16,N18,N20,N22,N24,N11,N26,N05,N27,N23,N10"
}
], ],
"Locate.log_level": "DEBUG", "Locate.log_level": "DEBUG",
"Locate.work_path": ".", "Locate.work_path": ".",
"Locate.xmin":38396517, "Locate.xmin": 38400000.0,
"Locate.xmax":38398317, "Locate.xmax": 38401600.0,
"Locate.ymin":4029418, "Locate.ymin": 4030400.0,
"Locate.ymax":4031218, "Locate.ymax": 4032000.0,
"Locate.zref":1039, "Locate.zref": 1039.0,
"Locate.zmin":300, "Locate.zmin": 300.0,
"Locate.zmax":800, "Locate.zmax": 800.0,
"Locate.minstep":10, "Locate.minstep": 10.0,
"Locate.method": "", "Locate.method": "",
"Locate.clusted_otime": 0.5 "Locate.clusted_otime": 0.5
} }

@ -2,12 +2,8 @@
"selectIndex": 0, "selectIndex": 0,
"workarea": [ "workarea": [
{ {
"workareaname": "n2017", "workareaname": "n2107",
"filepath": "I:\\DATA\\workarea\\n2017" "filepath": "G:\\n2107"
},
{
"workareaname": "n2018",
"filepath": "I:\\DATA\\workarea\\n2018"
} }
] ]
} }
Loading…
Cancel
Save