diff --git a/BackendWorkerService/Quartz/Jobs/ArchiveElectricMeterDayJob.cs b/BackendWorkerService/Quartz/Jobs/ArchiveElectricMeterDayJob.cs index e76d204..b0fe780 100644 --- a/BackendWorkerService/Quartz/Jobs/ArchiveElectricMeterDayJob.cs +++ b/BackendWorkerService/Quartz/Jobs/ArchiveElectricMeterDayJob.cs @@ -1231,7 +1231,7 @@ namespace BackendWorkerService.Quartz.Jobs update device set archive_lastDate = @start_timestamp, archive_lastActionDate = @updated_at where device_number = @device_number;"; //archive_lastDate 前次完成時間 ,archive_lastActionDate 本次作業時間 - await backgroundServiceRepository.ExecuteSql(mySql, electericArchiveDayRawDatas); + await backgroundServiceRepository.ExecuteSql(mySql, row); } #region 明志 沒有mssql //if (!string.IsNullOrEmpty(saveToMSDB) && saveToMSDB == "1") diff --git a/BackendWorkerService/Services/Implement/ProcEletricMeterService.cs b/BackendWorkerService/Services/Implement/ProcEletricMeterService.cs index 9971416..4063f05 100644 --- a/BackendWorkerService/Services/Implement/ProcEletricMeterService.cs +++ b/BackendWorkerService/Services/Implement/ProcEletricMeterService.cs @@ -965,9 +965,9 @@ namespace BackendWorkerService.Services.Implement logger.LogInformation($@"s0 DeviceNumberPoints.Count() = {DeviceNumberPoints.Count().ToString()}"); foreach (var deviceNumberPoint in DeviceNumberPoints) { - if (deviceNumberPoint.DeviceNumber == "NTPC_G6_EE_E4_B1F_CB3_WHT_N1") + if (deviceNumberPoint.DeviceNumber == "NTPC_G6_EE_E4_B1F_CB1_WHT_N1") //NTPC_G6_EE_E4_B1F_CB2_WHT_N1 NTPC_G6_EE_E4_B1F_MVCB_WHT_N1 { - logger.LogInformation($@"s1 devie_number = NTPC_G6_EE_E4_B1F_CB3_WHT_N1 archive_lastDate={deviceNumberPoint.archive_lastDate}"); + logger.LogInformation($@"s1 devie_number = NTPC_G6_EE_E4_B1F_CB1_WHT_N1 archive_lastDate={deviceNumberPoint.archive_lastDate}"); } if (deviceNumberPoint.archive_lastDate.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd")) { @@ -975,9 +975,13 @@ namespace BackendWorkerService.Services.Implement continue; //如果是今天 就不要用歸檔了 } - var startDay = string.Format("{0}T00:00:00.000+08:00", deviceNumberPoint.archive_lastDate.ToString("yyyy-MM-dd").Replace(" ", "T")); + //var startDay = string.Format("{0}T00:00:00.000+08:00", deviceNumberPoint.archive_lastDate.ToString("yyyy-MM-dd").Replace(" ", "T")); + var startDay = deviceNumberPoint.archive_lastDate.ToString("yyyy-MM-dd"); var endDay = System.DateTime.Now.ToString("yyyy-MM-dd"); - + + //var startDay = string.Format("{0}T00:00:00.000+08:00", deviceNumberPoint.archive_lastDate.ToString("yyyy-MM-dd").Replace(" ", "T")); + //var endDay = System.DateTime.Now.AddDays(-29).ToString(); + //logger.LogInformation($@"before startDay = {startDay} endDay={endDay}"); // ----------- log #region @@ -986,9 +990,8 @@ namespace BackendWorkerService.Services.Implement if (day.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd")) { //logger.LogInformation($@"s2 foreach (DateTime day in EachDay(startDay, endDay)) 判斷為今天 不用跑 day = {day} "); // ----------- log - continue; //如果是今天 就不要用歸檔了 + break; //如果是今天 就不要用歸檔了 } - //logger.LogInformation(@$"obix query for {deviceNumberPoint.DeviceNumber} day = {day.ToString("yyyy-MM-dd")}"); var sDay = string.Format("{0}T00:00:00.000+08:00", day.ToString("yyyy-MM-dd").Replace(" ", "T")); @@ -1120,19 +1123,20 @@ namespace BackendWorkerService.Services.Implement //} var startDay = deviceNumberPoint.archive_lastDate.ToString("yyyy-MM-dd"); - var endDay = DateTime.Now.ToString("yyyy-MM-dd"); + var endDay = DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd"); logger.LogInformation($@"before startDay = {startDay} endDay={endDay}"); // ----------- log #region - foreach (DateTime day in EachMonth(startDay , endDay)) - { + //foreach (DateTime day in EachMonth(startDay , endDay)) + //{ // 需要比原定日期增加 1天:因 Niagara 內部判斷為 < lastData, 並未包含結束當天 add by jiahao @2023-09-16 //var dayInMonth = DateTime.DaysInMonth(day.Year, day.Month) +1; 、、(DateTime.Now - DateTime.Parse(startDay)).Days - var dayInMonth = (DateTime.Now - DateTime.Parse(day.ToString("yyyy-MM-") + "01")).Days + 1; + DateTime today = DateTime.Now; + var dayInMonth = (DateTime.Now - DateTime.Parse(today.ToString("yyyy-MM-") + "01")).Days + 1; - var startTimestamp = string.Format("{0}T00:00:00.000+08:00", day.ToString("yyyy-MM-") + "01"); + var startTimestamp = string.Format("{0}T00:00:00.000+08:00", today.ToString("yyyy-MM-") + "01"); //var endTimestamp = string.Format("{0}T23:59:59.000+08:00", LastDay.ToString("yyyy-MM-dd")); //var endTimestamp = string.Format("{0}T00:00:10.000+08:00", day.AddMonths(1).ToString("yyyy-MM-") + "01"); // by jiahao @2023-09-26 var endTimestamp = string.Format("{0}T00:00:10.000+08:00", DateTime.Now.ToString("yyyy-MM-dd")); // by jiahao @2023-10-03 @@ -1168,7 +1172,7 @@ namespace BackendWorkerService.Services.Implement archiveResponse.Dispose(); archiveResponse.Close(); - logger.LogInformation(@$"【ArchiveElectricMeterMonth】{device_number} startTimestamp={startTimestamp} endTimestamp= {endTimestamp} interval = PT{dayInMonth.ToString()}D url = {$"{obixApiConfig.ApiBase}obix/histories/{station}/{deviceNumberPoint.FullDeviceNumberPoint.Replace("$3", "")}/~historyRollup/"}"); + //logger.LogInformation(@$"【ArchiveElectricMeterMonth】{device_number} startTimestamp={startTimestamp} endTimestamp= {endTimestamp} interval = PT{dayInMonth.ToString()}D url = {$"{obixApiConfig.ApiBase}obix/histories/{station}/{deviceNumberPoint.FullDeviceNumberPoint.Replace("$3", "")}/~historyRollup/"}"); xmlDocument.LoadXml(archiveResponseContent); @@ -1212,7 +1216,7 @@ namespace BackendWorkerService.Services.Implement resultArchiveDayRawDatas.AddRange(ArrangeRawDatas); } } - } + //} #endregion } @@ -1414,7 +1418,7 @@ namespace BackendWorkerService.Services.Implement { var strtday = DateTime.Parse(from); var endday = DateTime.Parse(thru); - for (var _month = strtday.Date; _month.Month <= endday.Month; _month = _month.AddMonths(1)) + for (var _month = strtday.Date; _month.Month <= endday.Month; _month = _month.AddDays(1)) yield return _month; } diff --git a/FrontendWebApi/ApiControllers/HydroMeterController.cs b/FrontendWebApi/ApiControllers/HydroMeterController.cs index e7e29d5..c9749ab 100644 --- a/FrontendWebApi/ApiControllers/HydroMeterController.cs +++ b/FrontendWebApi/ApiControllers/HydroMeterController.cs @@ -80,11 +80,17 @@ namespace FrontendWebApi.ApiControllers ? input.startTime + "-01" : input.tableType == "month" || input.tableType == "year" ? input.startTime + "-01-01" : null; - var endTime = input.tableType == "day" || input.tableType == "week" - ? input.startTime.Split("-")[0] + "-" + (Int32.Parse(input.startTime.Split("-")[1]) + 1).ToString().PadLeft(2, '0') + "-01" - : input.tableType == "month" ? (Int32.Parse(input.startTime.Split("-")[0]) + 1) + "-01-01" - : input.tableType == "year" ? (Int32.Parse(input.endTime) + 1).ToString() + "-01-01" - : null; + var yyyymmdd = System.DateTime.Parse(input.startTime + "-01").AddMonths(1); + //var endTime = input.tableType == "day" || input.tableType == "week" + // ? input.startTime.Split("-")[0] + "-" + (Int32.Parse(input.startTime.Split("-")[1]) + 1).ToString().PadLeft(2, '0') + "-01" + // : input.tableType == "month" ? (Int32.Parse(input.startTime.Split("-")[0]) + 1) + "-01-01" + // : input.tableType == "year" ? (Int32.Parse(input.endTime) + 1).ToString() + "-01-01" + // : null; + var endTime = input.tableType == "day" || input.tableType == "week" + ? yyyymmdd.ToString("yyyy-MM-dd") + : input.tableType == "month" ? (Int32.Parse(input.startTime.Split("-")[0]) + 1) + "-01-01" + : input.tableType == "year" ? (Int32.Parse(input.endTime) + 1).ToString() + "-01-01" + : null; string sqlWhere = ""; string sqlGroup = ""; string sqlAvgRawData = ""; diff --git a/FrontendWebApi/appsettings.Development.json b/FrontendWebApi/appsettings.Development.json index 2548a1a..9f72e64 100644 --- a/FrontendWebApi/appsettings.Development.json +++ b/FrontendWebApi/appsettings.Development.json @@ -14,15 +14,14 @@ }, "DBConfig": { "MySqlDBConfig": { - "Server": "FYlY+w0XDIz+jmF2rlZWJw==", //0.201 - "Port": "js2LutKe+rdjzdxMPQUrvQ==", - //"Database": "VJB2XC+lAtzuHObDGMVOAA==", //30 + "Server": "CYGthbCeGtAXT4s1NOSJHQ==", //0.132 + "Port": "mkF51jVbg40V5K5eTh2Ckw==", + //"Database": "VJB2XC+lAtzuHObDGMVOAA==", //30 //"Database": "IgYBsgG2VLKKxFb64j7LOA==", //wsp //"Database": "7gWfmZ28HGIJZbxEbK+0yg==", //tpe_dome_dome //"Database": "siTUcDaC/g2yGTMFWD72Kg==", //tpe_dome_hotel - //"Database": "iuaY0h0+TWkir44/eZLDqw==", //tpe_dome_office - //"Database": "Rq7Gn4x6LwBvVtl7GY8LbA==", //MCUT - "Database": "j9LOmjFh2/9PpuwnVB8ugqnKdBDJHx1AAT7aTWeh37E=", // ibms_mcut_online + //"Database": "Rq7Gn4x6LwBvVtl7GY8LbA==", //mcut + "Database": "XZ2fOBnta9kdVGEb7y92cg==", //ibms_mcut "Root": "SzdxEgaJJ7tcTCrUl2zKsA==", "Password": "FVAPxztxpY4gJJKQ/se4bQ==" }