zoulei 1 jaar geleden
bovenliggende
commit
7065d6c8cb
3 gewijzigde bestanden met toevoegingen van 493 en 423 verwijderingen
  1. 467 421
      XdCxRhDW.App/Controllers/PosController.cs
  2. 1 1
      XdCxRhDW.App/Controllers/XlController.cs
  3. 25 1
      XdCxRhDW.Repostory/XlRepository.cs

File diff suppressed because it is too large
+ 467 - 421
XdCxRhDW.App/Controllers/PosController.cs


+ 1 - 1
XdCxRhDW.App/Controllers/XlController.cs

@@ -76,7 +76,7 @@ namespace XdCxRhDW.App.Controllers
             }
             catch (Exception ex)
             {
-                Serilog.Log.Error(ex, $"{line}星历导入异常");
+                Serilog.Log.Error(ex, $"{line}星历导入异常,不支持的格式");
                 return Error<RecordRes>(ex.Message);
 
             }

+ 25 - 1
XdCxRhDW.Repostory/XlRepository.cs

@@ -47,7 +47,7 @@ namespace XdCxRhDW.Repostory
             {
                 using (RHDWContext db = new RHDWContext())
                 {
-                  var res= await db.XlInfos.SqlQuery(sql).FirstOrDefaultAsync();
+                    var res = await db.XlInfos.SqlQuery(sql).FirstOrDefaultAsync();
                     return res;
                 }
             }
@@ -57,5 +57,29 @@ namespace XdCxRhDW.Repostory
                 return null;
             }
         }
+
+        /// <summary>
+        /// 获取某个星某个时刻最近的双行根(可能返回null)
+        /// </summary>
+        /// <param name="satCode">卫星编号</param>
+        /// <param name="sigTime">时刻</param>
+        /// <returns></returns>
+        public static async Task<XlInfo> GetLatest2Async(int satCode, DateTime sigTime)
+        {
+            var sql = $"SELECT min(abs(JULIANDAY(TimeUTC)-JULIANDAY('{sigTime:yyyy-MM-dd HH:mm:ss}')))" +
+                        $" as NearDaySpan,* FROM XlInfo where satcode={satCode}";
+            try
+            {
+                using (RHDWContext db = new RHDWContext())
+                {
+                    var res = await db.XlInfos.SqlQuery(sql).FirstOrDefaultAsync();
+                    return res;
+                }
+            }
+            catch
+            {
+                throw new Exception($"获取双行根数出错.Sql={sql}");
+            }
+        }
     }
 }

Some files were not shown because too many files changed in this diff