wyq 3 月之前
父節點
當前提交
430aab14b8

+ 1 - 1
DW5S.App/CorTools/DetectToolForm.cs

@@ -29,7 +29,7 @@ namespace DW5S.App.CorTools
         public DetectToolForm()
         {
             InitializeComponent();
-            this.gcCheckCgRes.UseDefault(gridSource, showScrollH: true);
+            this.gcCheckCgRes.UseDefault(gridSource);
             txtFileTime.UseDefault().UseDoubleClickToSelectAll();
             gridView1.Columns[nameof(CafResultDto.file1)].MaxWidth = 300;
             gridView1.Columns[nameof(CafResultDto.file2)].MaxWidth = 300;

+ 3 - 3
DW5S.App/EditForms/X2D1DTOParamEditor.cs

@@ -74,11 +74,11 @@ namespace DW5S.App.EditForms
                 //    cg.Adja1Z = -49504.0378;
                 //}
                 this.txtDtoSx.Text = $"{cg.Dto1}";
-                this.txtDtoCdb.Text = $"{cg.Dto2.Value}";
+                this.txtDtoCdb.Text = cg.Dto2.HasValue? $"{cg.Dto2.Value}":"0";
                 if (info.PosResType == EnumPosResType.X2D1)
                 {
-                    this.txtYbMain.Text = $"{cg.RefYbDto1}";
-                    this.txtYbAdja.Text = $"{cg.RefYbDto2}";
+                    this.txtYbMain.Text = cg.RefYbDto1.HasValue? $"{cg.RefYbDto1}" : "0";
+                    this.txtYbAdja.Text =cg.RefYbDto2.HasValue? $"{cg.RefYbDto2}" : "0";
                 }
                 this.txtSigTime.EditValue = info.SigTime;
                 ucEphXYZMain.SetXYZ("主星", cg.MainCode, (cg.MainX, cg.MainY, cg.MainZ), Color.Black);

+ 9 - 1
DW5S.App/Program.cs

@@ -33,11 +33,19 @@ namespace DW5S
        
                 DxHelper.WaitHelper.ShowSplashScreen(title, screenCompany);
                 DxHelper.WaitHelper.UpdateSplashMessage("正在加载程序资源文件...");
-                MainForm mainForm = new MainForm() { Text = title };
+                System.Windows.Forms.Application.ThreadException += Application_ThreadException;
+               MainForm mainForm = new MainForm() { Text = title };
                 DxHelper.WaitHelper.UpdateSplashMessage("正在初始化...");
                 System.Windows.Forms.Application.Run(mainForm);
 
             });
         }
+
+        private static void Application_ThreadException(object sender, System.Threading.ThreadExceptionEventArgs e)
+        {
+            IocContainer.Logger.Error(e.Exception, e.Exception.Message);
+            DxHelper.MsgBoxHelper.ShowError($"检测到异常,请联系管理员,异常信息:{e.Exception.Message}");
+        }
+
     }
 }

+ 1 - 1
DW5S.App/UserControl/CtrlAdRes.cs

@@ -45,7 +45,7 @@ namespace DW5S.App.UserControl
                 ctrlPage.SetOnQuery(LoadPageData);
                 txtSigStartTime.UseDefault();
                 txtSigEndTime.UseDefault();
-                gridAdRes.UseDefault(list, showScrollH: true).UseEmptyText("无结果").UseMultiSelect().UseRowNumber().UseDeleteAsync<AdRes>(DelAd);
+                gridAdRes.UseDefault(list).UseEmptyText("无结果").UseMultiSelect().UseRowNumber().UseDeleteAsync<AdRes>(DelAd);
                 List<SatInfo> satList = new List<SatInfo>();
                 var unitOfWork = IocContainer.UnitOfWork;
                 var repsSat = unitOfWork.Of<SatInfo>();

+ 1 - 1
DW5S.App/UserControl/CtrlCgRes.cs

@@ -36,7 +36,7 @@ namespace DW5S.App.UserControl
                 ctrlPage1.SetOnQuery(LoadPageData);
                 txtStartTime.UseDefault();
                 txtEndTime.UseDefault();
-                gridCg.UseDefault(list, showScrollH: true).UseMultiSelect().UseRowNumber().UseDeleteAsync<CgRes>(DelCg);
+                gridCg.UseDefault(list).UseMultiSelect().UseRowNumber().UseDeleteAsync<CgRes>(DelCg);
 
                 var unitOfWork = IocContainer.UnitOfWork;
                 var repsTask = unitOfWork.Of<TaskInfo>();

+ 69 - 46
DW5S.App/UserControl/CtrlHome.cs

@@ -152,7 +152,11 @@ namespace DW5S.App.UserControl
             gridView1.FocusedRowObjectChanged += GridView1_FocusedRowObjectChanged;
             gridView2.FocusedRowObjectChanged += GridView2_FocusedRowObjectChanged;
             btnIncludeInvalidate.CheckedChanged += BtnIncludeInvalidate_CheckedChanged;
+
             txtTimeCho_SelectedIndexChanged(null, null);
+            var firstTask = list.FirstOrDefault();
+            GridView1_FocusedRowObjectChanged(null, new DevExpress.XtraGrid.Views.Base.FocusedRowObjectChangedEventArgs(0, firstTask));
+            
             WaitHelper.CloseForm();
 
             // await Task.Run(() =>
@@ -255,8 +259,7 @@ namespace DW5S.App.UserControl
                 queryable = queryable.Where(p => p.FrequpHz == (long)txtFrequpMHz.EditValue);
             if (!btnIncludeInvalidate.Checked)
             {
-                //???无效点怎么不见了
-                //queryable = queryable.Where(p => p.Validate == true);
+                queryable = queryable.Where(p => p.PosLon != 999);
             }
             if (txtTimeCho.Text == "自定义")
             {
@@ -337,41 +340,51 @@ namespace DW5S.App.UserControl
         }
         private async void GridView1_FocusedRowObjectChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowObjectChangedEventArgs e)
         {
-            mapControl1.DelFixedImg("Sat");
-            mapControl1.DelFixedImg("Tx");
-            tsk = (e.Row as TaskViewModel);
-            if (tsk == null) return;
-            this.txtFrequpMHz.Properties.Items.Clear();
-            this.txtFrequpMHz.Properties.Items.Add(new ImageComboBoxItem("全部", null));
-            var sigs = new List<TaskFreqResDto>();
-            var dto = new TaskFreqQueryDto()
+            try
             {
-                TaskInfoID = tsk.Id
-            };
-            var res = await HttpHelper.PostRequestAsync<List<TaskFreqResDto>>(SysConfig.GetUrl("Result/GetTaskFreqs"), dto);
-            if (res.code == 200)
-                sigs = res.data;
-            foreach (var item in sigs)
+                mapControl1.DelFixedImg("Sat");
+                mapControl1.DelFixedImg("Tx");
+                tsk = (e.Row as TaskViewModel);
+                if (tsk == null) return;
+                this.txtFrequpMHz.Properties.Items.Clear();
+                this.txtFrequpMHz.Properties.Items.Add(new ImageComboBoxItem("全部", null));
+                var sigs = new List<TaskFreqResDto>();
+                var dto = new TaskFreqQueryDto()
+                {
+                    TaskInfoID = tsk.Id
+                };
+                var res = await HttpHelper.PostRequestAsync<List<TaskFreqResDto>>(SysConfig.GetUrl("Result/GetTaskFreqs"), dto);
+                if (res.code == 200)
+                    sigs = res.data;
+                foreach (var item in sigs)
+                {
+                    this.txtFrequpMHz.Properties.Items.Add(new ImageComboBoxItem((item.FreqUpHz / 1e6).ToString("f3"), item.FreqUpHz));
+                }
+
+                txtFrequpMHz.SelectedIndex = 0;
+                var btnEdit = (layoutControlGroup1.CustomHeaderButtons[1] as GroupBoxButton);
+                var btnDel = (layoutControlGroup1.CustomHeaderButtons[2] as GroupBoxButton);
+                btnDel.Enabled = btnEdit.Enabled = tsk.TaskState != EnumTaskState.Running;
+                var unitOfWork = IocContainer.UnitOfWork;
+                var repsSat = unitOfWork.Of<SatInfo>();
+                var sat1 = await repsSat.FirstOrDefaultAsync(p => p.SatCode == tsk.MainSat);
+                var sat2 = await repsSat.FirstOrDefaultAsync(p => p.SatCode == tsk.Adja1Sat);
+                var sat3 = await repsSat.FirstOrDefaultAsync(p => p.SatCode == tsk.Adja2Sat);
+                if (sat1 != null && sat1.SatLon != null)
+                    mapControl1.DrawFixedImg("Sat", "Sat1", 0, sat1.SatLon.Value, DxHelper.SvgHelper.CreateSat(width: 16, height: 16), $"主星\r\n{sat1.Sat}");
+                if (sat2 != null && sat2.SatLon != null)
+                    mapControl1.DrawFixedImg("Sat", "Sat2", 0, sat2.SatLon.Value, DxHelper.SvgHelper.CreateSat(width: 16, height: 16), $"邻1星\r\n{sat2.Sat}");
+                if (sat3 != null && sat3.SatLon != null)
+                    mapControl1.DrawFixedImg("Sat", "Sat3", 0, sat3.SatLon.Value, DxHelper.SvgHelper.CreateSat(width: 16, height: 16), $"邻2星\r\n{sat3.Sat}");
+                this.ctrlPagePos.RefreshData();
+            }
+            catch (Exception ex)
             {
-                this.txtFrequpMHz.Properties.Items.Add(new ImageComboBoxItem((item.FreqUpHz / 1e6).ToString("f3"), item.FreqUpHz));
+                string msg = $"切换任务信息失败";
+                IocContainer.Logger.Error(ex, msg);
+                DxHelper.MsgBoxHelper.ShowWarning(msg);
             }
-
-            txtFrequpMHz.SelectedIndex = 0;
-            var btnEdit = (layoutControlGroup1.CustomHeaderButtons[1] as GroupBoxButton);
-            var btnDel = (layoutControlGroup1.CustomHeaderButtons[2] as GroupBoxButton);
-            btnDel.Enabled = btnEdit.Enabled = tsk.TaskState != EnumTaskState.Running;
-            var unitOfWork = IocContainer.UnitOfWork;
-            var repsSat = unitOfWork.Of<SatInfo>();
-            var sat1 = await repsSat.FirstOrDefaultAsync(p => p.SatCode == tsk.MainSat);
-            var sat2 = await repsSat.FirstOrDefaultAsync(p => p.SatCode == tsk.Adja1Sat);
-            var sat3 = await repsSat.FirstOrDefaultAsync(p => p.SatCode == tsk.Adja2Sat);
-            if (sat1 != null && sat1.SatLon != null)
-                mapControl1.DrawFixedImg("Sat", "Sat1", 0, sat1.SatLon.Value, DxHelper.SvgHelper.CreateSat(width: 16, height: 16), $"主星\r\n{sat1.Sat}");
-            if (sat2 != null && sat2.SatLon != null)
-                mapControl1.DrawFixedImg("Sat", "Sat2", 0, sat2.SatLon.Value, DxHelper.SvgHelper.CreateSat(width: 16, height: 16), $"邻1星\r\n{sat2.Sat}");
-            if (sat3 != null && sat3.SatLon != null)
-                mapControl1.DrawFixedImg("Sat", "Sat3", 0, sat3.SatLon.Value, DxHelper.SvgHelper.CreateSat(width: 16, height: 16), $"邻2星\r\n{sat3.Sat}");
-            this.ctrlPagePos.RefreshData();
+          
 
         }
         private void GridView1_DoubleClick(object sender, EventArgs e)
@@ -914,20 +927,30 @@ namespace DW5S.App.UserControl
         //绘制时差线
         public void DrawDtoLine(PosResViewModel item)
         {
-            switch (item.PosResType)
+            try
             {
-                case EnumPosResType.X1D1CX:
-                    X1D1DTOParamEditor frm = new X1D1DTOParamEditor(item, mapControl1);
-                    DxHelper.PopupHelper.ShowPopup(frm, layoutControl1, 600);
-                    break;
-                case EnumPosResType.X2D1:
-                case EnumPosResType.X2D1NoRef:
-                    X2D1DTOParamEditor X2D1frm = new X2D1DTOParamEditor(item, mapControl1);
-                    DxHelper.PopupHelper.ShowPopup(X2D1frm, layoutControl1, 600);
-                    break;
-                default:
-                    break;
+                switch (item.PosResType)
+                {
+                    case EnumPosResType.X1D1CX:
+                        X1D1DTOParamEditor frm = new X1D1DTOParamEditor(item, mapControl1);
+                        DxHelper.PopupHelper.ShowPopup(frm, layoutControl1, 600);
+                        break;
+                    case EnumPosResType.X2D1:
+                    case EnumPosResType.X2D1NoRef:
+                        X2D1DTOParamEditor X2D1frm = new X2D1DTOParamEditor(item, mapControl1);
+                        DxHelper.PopupHelper.ShowPopup(X2D1frm, layoutControl1, 600);
+                        break;
+                    default:
+                        break;
+                }
+            }
+            catch (Exception ex)
+            {
+                string msg = $"绘制{item.PosResType.GetEnumDisplayName()}时差线失败";
+                IocContainer.Logger.Error(ex, msg);
+                DxHelper.MsgBoxHelper.ShowWarning(msg);
             }
+           
         }
         //绘制GDOP
         public void DrawGdopLine(PosResViewModel item)