gongqiuhong 1 year ago
parent
commit
1e76ed8b61

+ 5 - 11
XdCxRhDW.App/EditForms/SatEditor.cs

@@ -12,6 +12,7 @@ using System.Text;
 using System.Threading.Tasks;
 using System.Windows.Documents;
 using System.Windows.Forms;
+using XdCxRhDW.Repostory;
 using XdCxRhDW.Repostory.EFContext;
 using XdCxRhDW.Repostory.Model;
 
@@ -36,15 +37,8 @@ namespace XdCxRhDW.App.EditForms
         }
         private async void SatEditor_Load(object sender, EventArgs e)
         {
-            List<string> list = new List<string>();
-            using (RHDWPartContext db = RHDWPartContext.GetContext(DateTime.MinValue))
-            {
-                var res = await db.XlInfos.OrderBy(p => p.SatName).ToListAsync();
-                if (res != null)
-                    list.AddRange(res.Select(p=>p.Sat));
-            }
-            this.searchLookUpEdit1.UseDefault().SetStringData(list).UseDoubleClickToSelectAll();
-
+            var listXl = await XlCache.GetAllAsync();
+            this.searchLookUpEdit1.UseDefault().SetStringData(listXl.Select(p=>p.Sat)).UseDoubleClickToSelectAll();
             if (this.Text == "编辑卫星" && info != null)
             {
                 this.txtSatName.Text = info.SatName;
@@ -63,7 +57,7 @@ namespace XdCxRhDW.App.EditForms
             {
                 var sat = searchLookUpEdit1.Text;
                 var idx = sat.LastIndexOf('(');
-                var satCodeStr = sat.Substring(idx+1, sat.Length - idx - 2);
+                var satCodeStr = sat.Substring(idx + 1, sat.Length - idx - 2);
                 info.SatCode = Convert.ToInt32(satCodeStr);
                 info.SatName = txtSatName.Text.Trim();
                 if (!string.IsNullOrWhiteSpace(txtSatLon.Text))
@@ -72,7 +66,7 @@ namespace XdCxRhDW.App.EditForms
             }
             catch (Exception ex)
             {
-                Serilog.Log.Error(ex,"编辑卫星信息出错");
+                Serilog.Log.Error(ex, "编辑卫星信息出错");
                 DxHelper.MsgBoxHelper.ShowError("编辑卫星信息出错");
             }
         }

+ 2 - 1
XdCxRhDW.App/ExtensionsDev/SearchLookUpEditExtension.cs

@@ -26,6 +26,7 @@ namespace ExtensionsDev
         /// <param name="data">数据源</param>
         public static SearchLookUpEdit UseDefault(this SearchLookUpEdit ctrl, string nullText = "请选择", bool showClearBtn = false)
         {
+            ctrl.EditValue = null;
             ctrl.Properties.NullText = null;
             ctrl.Properties.NullValuePrompt = nullText;
             ctrl.Properties.AllowFocused = false;
@@ -58,7 +59,7 @@ namespace ExtensionsDev
         /// </summary>
         /// <param name="ctrl"></param>
         /// <param name="data">数据源</param>
-        public static SearchLookUpEdit SetData<T>(this SearchLookUpEdit ctrl, IEnumerable<T> data, string displayField = "")
+        public static SearchLookUpEdit SetData<T>(this SearchLookUpEdit ctrl, List<T> data, string displayField = "")
         {
             ctrl.QueryPopUp += Ctrl_QueryPopUp;
             ctrl.Properties.DataSource = data;

+ 76 - 75
XdCxRhDW.App/UserControl/CtrlCgRes.Designer.cs

@@ -36,15 +36,15 @@ namespace XdCxRhDW.App.UserControl
             this.txtStartTime = new DevExpress.XtraEditors.DateEdit();
             this.txtEndTime = new DevExpress.XtraEditors.DateEdit();
             this.btnSearch = new DevExpress.XtraEditors.SimpleButton();
+            this.txtTask = new DevExpress.XtraEditors.SearchLookUpEdit();
+            this.searchLookUpEdit1View = new DevExpress.XtraGrid.Views.Grid.GridView();
             this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup();
             this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem();
             this.layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem();
-            this.layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem();
-            this.layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem();
+            this.layoutControlItemStartTime = new DevExpress.XtraLayout.LayoutControlItem();
+            this.layoutControlItemEndTime = new DevExpress.XtraLayout.LayoutControlItem();
             this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem();
             this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem();
-            this.txtTask = new DevExpress.XtraEditors.SearchLookUpEdit();
-            this.searchLookUpEdit1View = new DevExpress.XtraGrid.Views.Grid.GridView();
             ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit();
             this.layoutControl1.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.gridCg)).BeginInit();
@@ -54,15 +54,15 @@ namespace XdCxRhDW.App.UserControl
             ((System.ComponentModel.ISupportInitialize)(this.txtStartTime.Properties.CalendarTimeProperties)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.txtEndTime.Properties)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.txtEndTime.Properties.CalendarTimeProperties)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.txtTask.Properties)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.searchLookUpEdit1View)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).BeginInit();
-            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).BeginInit();
-            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItemStartTime)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItemEndTime)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit();
-            ((System.ComponentModel.ISupportInitialize)(this.txtTask.Properties)).BeginInit();
-            ((System.ComponentModel.ISupportInitialize)(this.searchLookUpEdit1View)).BeginInit();
             this.SuspendLayout();
             // 
             // layoutControl1
@@ -110,9 +110,10 @@ namespace XdCxRhDW.App.UserControl
             new DevExpress.XtraEditors.Controls.ImageComboBoxItem("最近1天", 24, -1),
             new DevExpress.XtraEditors.Controls.ImageComboBoxItem("最近3天", 72, -1),
             new DevExpress.XtraEditors.Controls.ImageComboBoxItem("自定义", 0, -1)});
-            this.txtTimeCho.Size = new System.Drawing.Size(99, 22);
+            this.txtTimeCho.Size = new System.Drawing.Size(99, 20);
             this.txtTimeCho.StyleController = this.layoutControl1;
             this.txtTimeCho.TabIndex = 11;
+            this.txtTimeCho.SelectedIndexChanged += new System.EventHandler(this.txtTimeCho_SelectedIndexChanged);
             // 
             // txtStartTime
             // 
@@ -123,7 +124,7 @@ namespace XdCxRhDW.App.UserControl
             new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
             this.txtStartTime.Properties.CalendarTimeProperties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
             new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
-            this.txtStartTime.Size = new System.Drawing.Size(149, 22);
+            this.txtStartTime.Size = new System.Drawing.Size(149, 20);
             this.txtStartTime.StyleController = this.layoutControl1;
             this.txtStartTime.TabIndex = 7;
             // 
@@ -136,7 +137,7 @@ namespace XdCxRhDW.App.UserControl
             new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
             this.txtEndTime.Properties.CalendarTimeProperties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
             new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
-            this.txtEndTime.Size = new System.Drawing.Size(149, 22);
+            this.txtEndTime.Size = new System.Drawing.Size(149, 20);
             this.txtEndTime.StyleController = this.layoutControl1;
             this.txtEndTime.TabIndex = 8;
             // 
@@ -149,6 +150,27 @@ namespace XdCxRhDW.App.UserControl
             this.btnSearch.TabIndex = 9;
             this.btnSearch.Text = "查询";
             // 
+            // txtTask
+            // 
+            this.txtTask.EditValue = 1;
+            this.txtTask.Location = new System.Drawing.Point(35, 4);
+            this.txtTask.Name = "txtTask";
+            this.txtTask.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
+            new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
+            this.txtTask.Properties.NullText = "";
+            this.txtTask.Properties.PopupSizeable = false;
+            this.txtTask.Properties.PopupView = this.searchLookUpEdit1View;
+            this.txtTask.Size = new System.Drawing.Size(213, 20);
+            this.txtTask.StyleController = this.layoutControl1;
+            this.txtTask.TabIndex = 11;
+            // 
+            // searchLookUpEdit1View
+            // 
+            this.searchLookUpEdit1View.FocusRectStyle = DevExpress.XtraGrid.Views.Grid.DrawFocusRectStyle.RowFocus;
+            this.searchLookUpEdit1View.Name = "searchLookUpEdit1View";
+            this.searchLookUpEdit1View.OptionsSelection.EnableAppearanceFocusedCell = false;
+            this.searchLookUpEdit1View.OptionsView.ShowGroupPanel = false;
+            // 
             // layoutControlGroup1
             // 
             this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True;
@@ -156,8 +178,8 @@ namespace XdCxRhDW.App.UserControl
             this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
             this.layoutControlItem2,
             this.layoutControlItem3,
-            this.layoutControlItem4,
-            this.layoutControlItem5,
+            this.layoutControlItemStartTime,
+            this.layoutControlItemEndTime,
             this.layoutControlItem6,
             this.layoutControlItem1});
             this.layoutControlGroup1.Name = "Root";
@@ -191,41 +213,41 @@ namespace XdCxRhDW.App.UserControl
             this.layoutControlItem3.TextSize = new System.Drawing.Size(48, 14);
             this.layoutControlItem3.TextToControlDistance = 5;
             // 
-            // layoutControlItem4
-            // 
-            this.layoutControlItem4.Control = this.txtStartTime;
-            this.layoutControlItem4.ControlAlignment = System.Drawing.ContentAlignment.TopLeft;
-            this.layoutControlItem4.CustomizationFormText = "开始时间";
-            this.layoutControlItem4.Location = new System.Drawing.Point(410, 0);
-            this.layoutControlItem4.MaxSize = new System.Drawing.Size(210, 28);
-            this.layoutControlItem4.MinSize = new System.Drawing.Size(210, 28);
-            this.layoutControlItem4.Name = "layoutControlItem4";
-            this.layoutControlItem4.Size = new System.Drawing.Size(210, 28);
-            this.layoutControlItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom;
-            this.layoutControlItem4.Spacing = new DevExpress.XtraLayout.Utils.Padding(4, 0, 2, 0);
-            this.layoutControlItem4.Text = "开始时间";
-            this.layoutControlItem4.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.AutoSize;
-            this.layoutControlItem4.TextSize = new System.Drawing.Size(48, 14);
-            this.layoutControlItem4.TextToControlDistance = 5;
-            this.layoutControlItem4.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
-            // 
-            // layoutControlItem5
-            // 
-            this.layoutControlItem5.Control = this.txtEndTime;
-            this.layoutControlItem5.ControlAlignment = System.Drawing.ContentAlignment.TopLeft;
-            this.layoutControlItem5.CustomizationFormText = "结束时间";
-            this.layoutControlItem5.Location = new System.Drawing.Point(620, 0);
-            this.layoutControlItem5.MaxSize = new System.Drawing.Size(210, 28);
-            this.layoutControlItem5.MinSize = new System.Drawing.Size(210, 28);
-            this.layoutControlItem5.Name = "layoutControlItem5";
-            this.layoutControlItem5.Size = new System.Drawing.Size(210, 28);
-            this.layoutControlItem5.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom;
-            this.layoutControlItem5.Spacing = new DevExpress.XtraLayout.Utils.Padding(4, 0, 2, 0);
-            this.layoutControlItem5.Text = "结束时间";
-            this.layoutControlItem5.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.AutoSize;
-            this.layoutControlItem5.TextSize = new System.Drawing.Size(48, 14);
-            this.layoutControlItem5.TextToControlDistance = 5;
-            this.layoutControlItem5.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
+            // layoutControlItemStartTime
+            // 
+            this.layoutControlItemStartTime.Control = this.txtStartTime;
+            this.layoutControlItemStartTime.ControlAlignment = System.Drawing.ContentAlignment.TopLeft;
+            this.layoutControlItemStartTime.CustomizationFormText = "开始时间";
+            this.layoutControlItemStartTime.Location = new System.Drawing.Point(410, 0);
+            this.layoutControlItemStartTime.MaxSize = new System.Drawing.Size(210, 28);
+            this.layoutControlItemStartTime.MinSize = new System.Drawing.Size(210, 28);
+            this.layoutControlItemStartTime.Name = "layoutControlItemStartTime";
+            this.layoutControlItemStartTime.Size = new System.Drawing.Size(210, 28);
+            this.layoutControlItemStartTime.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom;
+            this.layoutControlItemStartTime.Spacing = new DevExpress.XtraLayout.Utils.Padding(4, 0, 2, 0);
+            this.layoutControlItemStartTime.Text = "开始时间";
+            this.layoutControlItemStartTime.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.AutoSize;
+            this.layoutControlItemStartTime.TextSize = new System.Drawing.Size(48, 14);
+            this.layoutControlItemStartTime.TextToControlDistance = 5;
+            this.layoutControlItemStartTime.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
+            // 
+            // layoutControlItemEndTime
+            // 
+            this.layoutControlItemEndTime.Control = this.txtEndTime;
+            this.layoutControlItemEndTime.ControlAlignment = System.Drawing.ContentAlignment.TopLeft;
+            this.layoutControlItemEndTime.CustomizationFormText = "结束时间";
+            this.layoutControlItemEndTime.Location = new System.Drawing.Point(620, 0);
+            this.layoutControlItemEndTime.MaxSize = new System.Drawing.Size(210, 28);
+            this.layoutControlItemEndTime.MinSize = new System.Drawing.Size(210, 28);
+            this.layoutControlItemEndTime.Name = "layoutControlItemEndTime";
+            this.layoutControlItemEndTime.Size = new System.Drawing.Size(210, 28);
+            this.layoutControlItemEndTime.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom;
+            this.layoutControlItemEndTime.Spacing = new DevExpress.XtraLayout.Utils.Padding(4, 0, 2, 0);
+            this.layoutControlItemEndTime.Text = "结束时间";
+            this.layoutControlItemEndTime.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.AutoSize;
+            this.layoutControlItemEndTime.TextSize = new System.Drawing.Size(48, 14);
+            this.layoutControlItemEndTime.TextToControlDistance = 5;
+            this.layoutControlItemEndTime.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
             // 
             // layoutControlItem6
             // 
@@ -260,27 +282,6 @@ namespace XdCxRhDW.App.UserControl
             this.layoutControlItem1.TextSize = new System.Drawing.Size(24, 14);
             this.layoutControlItem1.TextToControlDistance = 5;
             // 
-            // txtTask
-            // 
-            this.txtTask.EditValue = 1;
-            this.txtTask.Location = new System.Drawing.Point(35, 4);
-            this.txtTask.Name = "txtTask";
-            this.txtTask.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
-            new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
-            this.txtTask.Properties.NullText = "";
-            this.txtTask.Properties.PopupSizeable = false;
-            this.txtTask.Properties.PopupView = this.searchLookUpEdit1View;
-            this.txtTask.Size = new System.Drawing.Size(213, 22);
-            this.txtTask.StyleController = this.layoutControl1;
-            this.txtTask.TabIndex = 11;
-            // 
-            // searchLookUpEdit1View
-            // 
-            this.searchLookUpEdit1View.FocusRectStyle = DevExpress.XtraGrid.Views.Grid.DrawFocusRectStyle.RowFocus;
-            this.searchLookUpEdit1View.Name = "searchLookUpEdit1View";
-            this.searchLookUpEdit1View.OptionsSelection.EnableAppearanceFocusedCell = false;
-            this.searchLookUpEdit1View.OptionsView.ShowGroupPanel = false;
-            // 
             // CtrlCgRes
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F);
@@ -298,15 +299,15 @@ namespace XdCxRhDW.App.UserControl
             ((System.ComponentModel.ISupportInitialize)(this.txtStartTime.Properties)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.txtEndTime.Properties.CalendarTimeProperties)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.txtEndTime.Properties)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.txtTask.Properties)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.searchLookUpEdit1View)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).EndInit();
-            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).EndInit();
-            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItemStartTime)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItemEndTime)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit();
-            ((System.ComponentModel.ISupportInitialize)(this.txtTask.Properties)).EndInit();
-            ((System.ComponentModel.ISupportInitialize)(this.searchLookUpEdit1View)).EndInit();
             this.ResumeLayout(false);
 
         }
@@ -320,8 +321,8 @@ namespace XdCxRhDW.App.UserControl
         private DevExpress.XtraEditors.ImageComboBoxEdit txtTimeCho;
         private DevExpress.XtraEditors.DateEdit txtStartTime;
         private DevExpress.XtraEditors.DateEdit txtEndTime;
-        private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4;
-        private DevExpress.XtraLayout.LayoutControlItem layoutControlItem5;
+        private DevExpress.XtraLayout.LayoutControlItem layoutControlItemStartTime;
+        private DevExpress.XtraLayout.LayoutControlItem layoutControlItemEndTime;
         private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3;
         private DevExpress.XtraEditors.SimpleButton btnSearch;
         private DevExpress.XtraLayout.LayoutControlItem layoutControlItem6;

+ 102 - 1
XdCxRhDW.App/UserControl/CtrlCgRes.cs

@@ -1,21 +1,27 @@
 using DevExpress.Data;
+using DevExpress.XtraCharts;
 using DevExpress.XtraEditors;
 using DevExpress.XtraExport.Helpers;
 using DevExpress.XtraGrid.Columns;
 using DevExpress.XtraGrid.Views.Grid;
 using DxHelper;
+using ExtensionsDev;
 using System;
 using System.Collections.Generic;
 using System.ComponentModel;
 using System.Data;
 using System.Data.Entity;
+using System.Diagnostics;
 using System.Drawing;
+using System.IO;
 using System.Linq;
 using System.Text;
+using System.Threading;
 using System.Threading.Tasks;
 using System.Windows.Controls;
 using System.Windows.Documents;
 using System.Windows.Forms;
+using XdCxRhDW.Repostory;
 using XdCxRhDW.Repostory.EFContext;
 using XdCxRhDW.Repostory.Model;
 
@@ -26,6 +32,9 @@ namespace XdCxRhDW.App.UserControl
         public CtrlCgRes()
         {
             InitializeComponent();
+            layoutControl1.UseDefault();
+            txtStartTime.UseDefault();
+            txtEndTime.UseDefault();
             gridCg.Init<CgRes>().AddMenu("删除", SvgHelper.CreateClose(), async () =>
             {
                 try
@@ -45,7 +54,13 @@ namespace XdCxRhDW.App.UserControl
         {
             try
             {
-
+              
+                List<TaskInfo> tskList = new List<TaskInfo>();
+                using (RHDWContext db = new RHDWContext())
+                {
+                    tskList = await db.TaskInfos.OrderByDescending(p => p.UpdateTime).ToListAsync();
+                }
+                this.txtTask.UseDefault().SetData(tskList, nameof(TaskInfo.TaskName)).UseDoubleClickToSelectAll();
             }
             catch (Exception ex)
             {
@@ -55,5 +70,91 @@ namespace XdCxRhDW.App.UserControl
             }
         }
 
+        private async void txtTimeCho_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            this.gridCg.DataSource = new List<PosRes>();
+            if (txtTask.EditValue == null)
+            {
+                return;
+            }
+
+            switch (txtTimeCho.Text)
+            {
+                case "最近1小时":
+                case "最近6小时":
+                case "最近12小时":
+                case "最近1天":
+                case "最近3天":
+                    layoutControlItemStartTime.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
+                    layoutControlItemEndTime.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
+                    this.gridCg.DataSource = await searchPos();
+                    break;
+                case "自定义":
+                    layoutControlItemStartTime.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always;
+                    layoutControlItemEndTime.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always;
+                    break;
+            }
+        }
+        private async Task<List<CgRes>> searchPos()
+        {
+            try
+            {
+                DateTime start, end = DateTime.MinValue;
+                if (txtTimeCho.SelectedText == "自定义")
+                {
+                    start = txtStartTime.DateTime;
+                    end = txtEndTime.DateTime;
+                }
+                else
+                {
+                    if (!Directory.Exists("DbPart")) return new List<CgRes>();
+                    var yearDirs = Directory.EnumerateDirectories(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "DbPart")).OrderByDescending(p => Convert.ToInt32(new DirectoryInfo(p).Name));//年目录,倒叙排列
+                    foreach (var yearDir in yearDirs)
+                    {
+                        //每一天的db文件,倒序排列
+                        var dayFiles = Directory.EnumerateFiles(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, yearDir), "*.db").OrderByDescending(p => Convert.ToInt32(new DirectoryInfo(p).Name.Substring(0, 4)));
+                        foreach (var dayFile in dayFiles)
+                        {
+                            using (RHDWPartContext db = RHDWPartContext.GetContext(dayFile))
+                            {
+                                if (db.CgRes.Any(p => p.TaskID == ((CgRes)txtTask.EditValue).ID))
+                                    end = await db.CgRes.Where(p => p.TaskID == ((CgRes)txtTask.EditValue).ID).MaxAsync(p => p.SigTime);
+                            }
+                            if (end != DateTime.MinValue)
+                            {
+                                goto skip;
+                            }
+                        }
+                    }
+                }
+                skip:
+                if (end == DateTime.MinValue)
+                {
+                    return new List<CgRes>();//没有数据不查询
+                }
+                start = end.AddHours(-(int)txtTimeCho.EditValue);
+                DateTime endDay = new DateTime(end.Year, end.Month, end.Day);
+                DateTime startDay = new DateTime(start.Year, start.Month, start.Day);
+                List<CgRes> list = new List<CgRes>();
+                while (endDay >= startDay)
+                {
+                    using (RHDWPartContext db = RHDWPartContext.GetContext(endDay))
+                    {
+                        var cgRes = await db.CgRes.Where(w => w.SigTime >= start && w.SigTime <= end && w.TaskID == ((CgRes)txtTask.EditValue).ID).OrderByDescending(o => o.SigTime).ToListAsync();
+                        list.AddRange(cgRes);
+                    }
+                    endDay = endDay.AddDays(-1);
+                }
+                return list;
+
+            }
+            catch (TaskCanceledException) { }//屏蔽掉取消查询的异常
+            catch (Exception ex)
+            {
+                Serilog.Log.Error(ex, "定位结果查询异常");
+                MsgBoxHelper.ShowError("定位结果查询异常");
+            }
+            return new List<CgRes>();
+        }
     }
 }

+ 1 - 1
XdCxRhDW.App/UserControl/CtrlHome.cs

@@ -103,7 +103,7 @@ namespace XdCxRhDW.App.UserControl
                 List<TxInfo> txList = new List<TxInfo>();
                 using (RHDWContext db = new RHDWContext())
                 {
-                    var qq = db.TaskInfos.OrderByDescending(p => p.CreateTime).ToList();
+                    var qq = db.TaskInfos.OrderByDescending(p => p.UpdateTime).ToList();
                     list.AddRange(qq);
                     var runningList = await db.TaskInfos.Where(p => p.TaskState == EnumTaskState.Running).ToListAsync();
                     foreach (var item in runningList)

+ 6 - 0
XdCxRhDW.Repostory/Model/CgRes.cs

@@ -26,6 +26,12 @@ namespace XdCxRhDW.Repostory.Model
         [Display(Name = "站点ID")]
         public long StationResID { get; set; }
 
+        /// <summary>
+        /// 站点ID
+        /// </summary>
+        [Display(Name = "任务ID")]
+        public long TaskID { get; set; }
+
         /// <summary>
         /// 站点信息
         /// </summary>

+ 0 - 23
XdCxRhDW.Repostory/XlCache.cs

@@ -12,29 +12,6 @@ namespace XdCxRhDW.Repostory
 {
     public static class XlCache
     {
-        public static  List<XlInfo> GetAll()
-        {
-            try
-            {
-                DateTime now = DateTime.Now;
-                List<XlInfo> xlInfos = new List<XlInfo>();
-                for (int i = 0; i < 30; i++)
-                {
-                    using (RHDWPartContext db = RHDWPartContext.GetContext(now.AddDays(-i)))
-                    {
-                        var items =  db.XlInfos.OrderBy(p => p.SatName).OrderByDescending(p => p.TimeBJ).ToList();
-                        xlInfos.AddRange(items);
-                    }
-                }
-                return xlInfos;
-
-            }
-            catch (Exception ex)
-            {
-                Serilog.Log.Error(ex, "加载星历信息异常");
-                return null;
-            }
-        }
         public static async Task<List<XlInfo>> GetAllAsync()
         {
             try