gongqiuhong 1 năm trước cách đây
mục cha
commit
0acfda8570

+ 2 - 2
XdCxRhDW.App/EditForms/PosTimeEditor.cs

@@ -59,12 +59,12 @@ namespace XdCxRhDW.App.EditForms
             dxErrorProvider1.ClearErrors();
             if (this.txtStartTime.DateTime == DateTime.MinValue)
             {
-                DxHelper.MsgBoxHelper.ShowWarning("开始时间不能为空!");
+                dxErrorProvider1.SetError(txtStartTime, "开始时间不能为空");
                 return;
             }
             if (this.txtEndTime.DateTime == DateTime.MinValue)
             {
-                DxHelper.MsgBoxHelper.ShowWarning("结束时间不能为空!");
+                dxErrorProvider1.SetError(txtEndTime, "结束时间不能为空");
                 return;
             }
             start = DateTime.Parse(txtStartTime.DateTime.ToString("yyyy-MM-dd HH:mm:ss"));//通过转换移除掉毫秒部分

+ 1 - 0
XdCxRhDW.App/EditForms/SigDelayEditor.cs

@@ -62,6 +62,7 @@ namespace XdCxRhDW.App.EditForms
         {
             try
             {
+                dxErrorProvider.ClearErrors();
                 if (txtSat.EditValue == null)
                 {
                     dxErrorProvider.SetError(txtSat, "请选择卫星");

+ 0 - 6
XdCxRhDW.App/EditForms/SigEditor.Designer.cs

@@ -131,8 +131,6 @@
             this.txtSnr.Properties.AllowNullInput = DevExpress.Utils.DefaultBoolean.True;
             this.txtSnr.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
             new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph, "dB", -1, false, true, false, editorButtonImageOptions1, new DevExpress.Utils.KeyShortcut(System.Windows.Forms.Keys.None), serializableAppearanceObject1, serializableAppearanceObject2, serializableAppearanceObject3, serializableAppearanceObject4, "", null, null, DevExpress.Utils.ToolTipAnchor.Default)});
-            this.txtSnr.Properties.MaskSettings.Set("MaskManagerType", typeof(DevExpress.Data.Mask.NumericMaskManager));
-            this.txtSnr.Properties.MaskSettings.Set("mask", "f3");
             this.txtSnr.Size = new System.Drawing.Size(205, 23);
             this.txtSnr.StyleController = this.layoutControl1;
             this.txtSnr.TabIndex = 4;
@@ -144,8 +142,6 @@
             this.txtFreqDown.Properties.AllowNullInput = DevExpress.Utils.DefaultBoolean.True;
             this.txtFreqDown.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
             new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph, "MHz", -1, false, true, false, editorButtonImageOptions2, new DevExpress.Utils.KeyShortcut(System.Windows.Forms.Keys.None), serializableAppearanceObject5, serializableAppearanceObject6, serializableAppearanceObject7, serializableAppearanceObject8, "", null, null, DevExpress.Utils.ToolTipAnchor.Default)});
-            this.txtFreqDown.Properties.MaskSettings.Set("MaskManagerType", typeof(DevExpress.Data.Mask.NumericMaskManager));
-            this.txtFreqDown.Properties.MaskSettings.Set("mask", "f3");
             this.txtFreqDown.Size = new System.Drawing.Size(205, 23);
             this.txtFreqDown.StyleController = this.layoutControl1;
             this.txtFreqDown.TabIndex = 2;
@@ -157,8 +153,6 @@
             this.txtFreqUp.Name = "txtFreqUp";
             this.txtFreqUp.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
             new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph, "MHz", -1, false, true, false, editorButtonImageOptions3, new DevExpress.Utils.KeyShortcut(System.Windows.Forms.Keys.None), serializableAppearanceObject9, serializableAppearanceObject10, serializableAppearanceObject11, serializableAppearanceObject12, "", null, null, DevExpress.Utils.ToolTipAnchor.Default)});
-            this.txtFreqUp.Properties.MaskSettings.Set("MaskManagerType", typeof(DevExpress.Data.Mask.NumericMaskManager));
-            this.txtFreqUp.Properties.MaskSettings.Set("mask", "f3");
             this.txtFreqUp.Size = new System.Drawing.Size(205, 23);
             this.txtFreqUp.StyleController = this.layoutControl1;
             this.txtFreqUp.TabIndex = 0;

+ 18 - 24
XdCxRhDW.App/EditForms/SigEditor.cs

@@ -24,6 +24,9 @@ namespace XdCxRhDW.App.EditForms
         {
             InitializeComponent();
             this.layoutControl1.UseDefault();
+            txtFreqUp.UseDoubleClickToSelectAll();
+            txtFreqDown.UseDoubleClickToSelectAll();
+            txtSnr.UseDoubleClickToSelectAll();
             this.Text = "添加信号";
             info = new SigInfo();
             this.StartPosition = FormStartPosition.CenterParent;
@@ -43,21 +46,12 @@ namespace XdCxRhDW.App.EditForms
                 this.txtFreqUp.EditValue = info.FreqUp;
                 this.txtFreqDown.EditValue = info.FreqDown;
                 this.txtSnr.EditValue = info.Snr;
-                //List<EnumSigCheckType> deWay = new List<EnumSigCheckType>();
-                //if (info.SigType.HasFlag(EnumSigCheckType.DAMA))
-                //{
-                //    deWay.Add(EnumSigCheckType.DAMA);
-                //}
-                //if (info.SigType.HasFlag(EnumSigCheckType.IBS))
-                //{
-                //    deWay.Add(EnumSigCheckType.IBS);
-                //}
-                //if (info.SigType.HasFlag(EnumSigCheckType.Ky5758))
-                //{
-                //    deWay.Add(EnumSigCheckType.Ky5758);
-                //}
-                //this.txtSigType.EditValue = string.Join(",", deWay);
-                //this.txtSigType.EditValue = info.SigType.ToString();
+                var arr = Enum.GetValues(typeof(EnumSigCheckType));
+                foreach (EnumSigCheckType item in arr)
+                {
+                    if (info.SigType.HasFlag(item))
+                        txtSigType.Items[item].CheckState = CheckState.Checked;
+                }
             }
         }
 
@@ -70,28 +64,28 @@ namespace XdCxRhDW.App.EditForms
             try
             {
                 dxErrorProvider.ClearErrors();
-                if (txtFreqUp.EditValue == null)
+                if (!double.TryParse(txtFreqUp.Text, out double freqUp))
                 {
-                    dxErrorProvider.SetError(txtFreqUp, "请输入上行频点");
+                    dxErrorProvider.SetError(txtFreqUp, "上行频点格式错误");
                     return;
                 }
-                if (txtFreqDown.EditValue == null)
+                if (!double.TryParse(txtFreqDown.Text, out double freqDown))
                 {
-                    dxErrorProvider.SetError(txtFreqDown, "请输入下行频点");
+                    dxErrorProvider.SetError(txtFreqUp, "下行频点格式错误");
                     return;
                 }
                 if (!txtSigType.Items.Any(p => p.CheckState == CheckState.Checked))
                 {
-                    dxErrorProvider.SetError(txtSigType, "请选择信号类型");
+                    DxHelper.MsgBoxHelper.ShowError("请选择信号类型");
                     return;
                 }
-                if (txtSnr.EditValue == null)
+                if (!double.TryParse(txtSnr.Text, out double snr))
                 {
-                    dxErrorProvider.SetError(txtSnr, "请输入门限");
+                    dxErrorProvider.SetError(txtFreqUp, "门限格式错误");
                     return;
                 }
-                info.FreqUp = Convert.ToDouble(txtFreqUp.EditValue);
-                info.FreqDown = Convert.ToDouble(txtFreqDown.EditValue);
+                info.FreqUp = freqUp;
+                info.FreqDown = freqDown;
                 info.Snr = Convert.ToDouble(txtSnr.EditValue);
                 var res = txtSigType.Items.Where(p => p.CheckState == CheckState.Checked).Select(t => (EnumSigCheckType)t.Value).ToList();
                 EnumSigCheckType sigType = res.First();

+ 2 - 0
XdCxRhDW.App/EditForms/TaskHistoryTimeEditor.cs

@@ -1,4 +1,5 @@
 using DevExpress.XtraEditors;
+using DevExpress.XtraEditors.DXErrorProvider;
 using ExtensionsDev;
 using System;
 using System.Collections.Generic;
@@ -55,6 +56,7 @@ namespace XdCxRhDW.App.EditForms
         }
         private void btnOk_Click(object sender, EventArgs e)
         {
+            dxErrorProvider1.ClearErrors();
             start = DateTime.Parse(txtStartTime.DateTime.ToString("yyyy-MM-dd HH:mm:ss"));//通过转换移除掉毫秒部分
             end = DateTime.Parse(txtEndTime.DateTime.ToString("yyyy-MM-dd HH:mm:ss"));//通过转换移除掉毫秒部分
             if (start > end)

+ 1 - 0
XdCxRhDW.App/ExtensionsDev/BaseEditExtension.cs

@@ -23,6 +23,7 @@ namespace ExtensionsDev
         }
         public static bool CheckLonLat(this TextEdit @this, DXErrorProvider dxErrorProvider, string msg)
         {
+            dxErrorProvider.ClearErrors();
             if (string.IsNullOrWhiteSpace(@this.Text.Trim()))
             {
                 dxErrorProvider.SetError(@this, $"{msg}经纬度不能为空!");

+ 1 - 1
XdCxRhDW.App/UserControl/CtrlSignal.Designer.cs

@@ -63,7 +63,7 @@
             // 
             this.gridViewSignal.GridControl = this.gridSignal;
             this.gridViewSignal.Name = "gridViewSignal";
-            this.gridViewSignal.FocusedRowChanged += new DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventHandler(this.gridViewSignal_FocusedRowChanged);
+            this.gridViewSignal.FocusedRowObjectChanged += new DevExpress.XtraGrid.Views.Base.FocusedRowObjectChangedEventHandler(this.gridViewSignal_FocusedRowObjectChanged);
             // 
             // layoutControl1
             // 

+ 5 - 4
XdCxRhDW.App/UserControl/CtrlSignal.cs

@@ -106,6 +106,8 @@ namespace XdCxRhDW.App.UserControl
                 var ids = list.Select(p => p.ID);
                 using (RHDWContext db = new RHDWContext())
                 {
+                    var delayItems= db.SigDelays.Where(p => ids.Contains(p.SigInfoId));
+                    db.SigDelays.RemoveRange(delayItems);
                     var delItems = await db.SigInfos.Where(p => ids.Contains(p.ID)).ToListAsync();
                     db.SigInfos.RemoveRange(delItems);
                     await db.SaveChangesAsync();
@@ -190,17 +192,16 @@ namespace XdCxRhDW.App.UserControl
             }
         }
 
-        private async void gridViewSignal_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
+        private async void gridViewSignal_FocusedRowObjectChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowObjectChangedEventArgs e)
         {
             listSigDelay.Clear();
             var sigInfoId = gridViewSignal.GetFocusedRow() as SigInfo;
             if (sigInfoId == null) return;
             using (var db = new RHDWContext())
             {
-                var delayItems = await db.SigDelays.ToListAsync();
-                var delayItemsRes = delayItems.Where(w => w.SigInfoId == sigInfoId.ID);
+                var delayItems = await db.SigDelays.Where(w => w.SigInfoId == sigInfoId.ID).ToListAsync();
                 var sats = await db.SatInfos.ToListAsync();
-                foreach (var delayItem in delayItemsRes)
+                foreach (var delayItem in delayItems)
                 {
                     SigDelay sigDelay = delayItem as SigDelay;
                     var satInfo = sats.FirstOrDefault(f => f.SatCode == sigDelay.SatInfoSatCode);