| | |
| | | public IStation.CalcModel.AnaRequestBase requestBase { get; set; } |
| | | public bool isSubmit { get; set; } |
| | | } |
| | | |
| | | public class ZyPrjRequest |
| | | { |
| | | { |
| | | public string StartTime { get; set; } |
| | | public string EndTime { get; set; } |
| | | //public int? StartOpenCount { get; set; } = -1;//å·²ä½åº |
| | |
| | | public string IsSubmit { get; set; }//计ç®å®,æ¯å¦æ¨é |
| | | public string IsTemporary { get; set; }//æ¯å¦æ¯ä¸´æ¶ç®ä¸ä¸(æ°) |
| | | } |
| | | |
| | | public static void SavePrj(CalcModel.AnaRequest ana_request, CalcModel.AnaSetting ana_settting, CalcModel.AnaPrj prj, bool isSubmit) |
| | | { |
| | | if (!IStation.BLL.ServiceParas.IsRemote) |
| | | { |
| | | // IStation.Common.HistoryAnaPrjFileHelper.SavePrj(ana_settting, ana_request == null ? null : new CalcModel.AnaRequestBase(ana_request), prj); return; |
| | | IStation.Common.HistoryAnaPrjFileHelper.SavePrj(ana_settting, |
| | | true, |
| | | ana_request == null ? null : new CalcModel.AnaRequestBase(ana_request), prj); |
| | | return; |
| | | } |
| | | |
| | | if (string.IsNullOrEmpty(ServiceParas.ApiServiceUrl)) |
| | |
| | | return ret.Data; |
| | | } |
| | | |
| | | public static CalcModel.AnaPrj CalcPrj(CalcModel.AnaRequest ana_request, bool isUsePredictRecord, bool isTemp) |
| | | { |
| | | public static CalcModel.AnaPrj CalcPrj(CalcModel.AnaRequest ana_request,bool isUsePredictRecord, bool isTemp ) |
| | | { |
| | | if (string.IsNullOrEmpty(ServiceParas.ApiServiceUrl)) |
| | | { |
| | | return null; |
| | | } |
| | | |
| | | |
| | | string url = string.Format(@"{0}/AnaPrj/Calc", ServiceParas.ApiServiceUrl); |
| | | |
| | | ZyPrjRequest request = new ZyPrjRequest(); |
| | | request.StartTime = ana_request.StartTime.ToString("yyyy-MM-dd HH:mm:ss"); |
| | | request.EndTime = ana_request.EndTime.ToString("yyyy-MM-dd HH:mm:ss"); |
| | | request.IsTemporary = isTemp.ToString(); |
| | | request.IsTemporary = isTemp.ToString(); |
| | | request.IsSubmit = "false"; |
| | | if (ana_request.MaxReservoirLevel != null) |
| | | request.MaxReservoirLevel = ana_request.MaxReservoirLevel.ToString(); |
| | | if(ana_request.MaxReservoirLevel != null) |
| | | request.MaxReservoirLevel = ana_request.MaxReservoirLevel.ToString(); |
| | | request.MaxReservoirLevelTime = ana_request.MaxReservoirLevelTime; |
| | | request.StartReservoirLevel = ana_request.StartReservoirLevel.ToString(); |
| | | request.StartOpenPumpIndexArray = ana_request.StartOpenPumpIndexArray; |
| | | if (ana_request.TotalFlowIn != null) |
| | | request.TotalFlowIn = ana_request.TotalFlowIn.ToString(); |
| | | if(ana_request.TotalFlowIn != null) |
| | | request.TotalFlowIn = ana_request.TotalFlowIn.ToString(); |
| | | |
| | | if (!isUsePredictRecord) |
| | | request.TotalFlowOut = (ana_request.PerHourFlowOut.Sum() - ana_request.PerHourFlowOut.Last()).ToString(); |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | string parameterData = (new System.Web.Script.Serialization.JavaScriptSerializer()).Serialize(request); |
| | | //å
æ ¹æ®ç¨æ·è¯·æ±çuriæé 请æ±å°å |
| | |
| | | /// </summary> |
| | | /// <param name="time"></param> |
| | | /// <returns></returns> |
| | | public static CalcModel.ZyStartInfo GetAnaStartPara(DateTime time) |
| | | public static CalcModel.ZyStartInfo GetAnaStartPara(DateTime time ) |
| | | { |
| | | if (!ServiceParas.IsRemote) |
| | | { |
| | | return null; |
| | | { |
| | | return null; |
| | | } |
| | | |
| | | if (string.IsNullOrEmpty(ServiceParas.ApiServiceUrl)) |
| | |
| | | myResponse.Close(); |
| | | return null; |
| | | } |
| | | var ret = (new System.Web.Script.Serialization.JavaScriptSerializer()).Deserialize<IStation.Dto.ApiResult<string>>(returnData); |
| | | var ret = (new System.Web.Script.Serialization.JavaScriptSerializer()).Deserialize<IStation.Dto.ApiResult<string >>(returnData); |
| | | reader.Close(); |
| | | myResponse.Close(); |
| | | |
| | | var res_str = ret.Data; |
| | | if (string.IsNullOrEmpty(res_str)) |
| | | { |
| | | return null; |
| | | return null ; |
| | | } |
| | | List<int> list = new List<int>(); |
| | | foreach (var s in list) { list.Add(Convert.ToInt32(s)); } |
| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Security.Permissions; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | |
| | |
| | | optPrj = null; |
| | | return "æ°æ®åå§å失败"; |
| | | } |
| | | InitialElePrice(); |
| | | |
| | | if(! InitialElePrice()) |
| | | { |
| | | optPrj = null; |
| | | return "ElecPrice 为空"; |
| | | } |
| | | var calcHelper = GetCalcHelper(anaRequest); |
| | | |
| | | |
| | | string error_info; |
| | | optPrj = calcHelper.CalcOptPrj(out error_info); |
| | | |
| | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | private void InitialElePrice() |
| | | private bool InitialElePrice() |
| | | { |
| | | var allPrices = IStation.Common.ElecPrice.GetAll(); |
| | | if(allPrices == null) |
| | | { |
| | | IStation.LogHelper.Error("ElecPrice 为空"); |
| | | return false; |
| | | } |
| | | _elePriceMonthList = allPrices.First().Settings.MonthList; |
| | | return true; |
| | | } |
| | | |
| | | #endregion åå§å |
| | |
| | | protected void SetRiverWaterLevels(List<IStation.Model.TimeWaterLevel> riverWaterLevels) |
| | | { |
| | | this._riverWaterLevels = riverWaterLevels; |
| | | if (this._riverWaterLevels != null) |
| | | if (this._riverWaterLevels != null && this._riverWaterLevels.Count>0) |
| | | { |
| | | _riverWaterLevelStart = this._riverWaterLevels.First().Time; |
| | | _riverWaterLevelEnd = this._riverWaterLevels.Last().Time; |
| | |
| | | error = null; |
| | | return waterLevelsé¿æ±; |
| | | } |
| | | /// <summary> |
| | | /// 读å |
| | | /// </summary> |
| | | /// <param name="Startday"></param> |
| | | /// <param name="Endday"></param> |
| | | /// <param name="folder"></param> |
| | | /// <returns></returns> |
| | | public static List<Model.TimeWaterLevel> GetByTimeRange(DateTime StartTime, DateTime EndTime, out string error) |
| | | { |
| | | |
| | | DateTime Startday = StartTime.Date; |
| | | DateTime Endday = EndTime.Date.AddDays(1); |
| | | |
| | | var waterLevelsé¿æ± = new List<TimeWaterLevel>(); |
| | | for (DateTime currentDate = Startday; currentDate <= Endday; currentDate = currentDate.AddDays(1)) |
| | | { |
| | | var list1 = ReadList(currentDate); |
| | | if (list1 != null && list1.Count > 0) |
| | | { |
| | | for (int h = 0; h < 24; h++) |
| | | { |
| | | var t = new DateTime(currentDate.Year, currentDate.Month, currentDate.Day, h, 0, 0); |
| | | |
| | | if (t >= StartTime && t <= EndTime) |
| | | waterLevelsé¿æ±.Add(new TimeWaterLevel(t, list1[h].Level)); |
| | | } |
| | | } |
| | | } |
| | | error = null; |
| | | return waterLevelsé¿æ±; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | /// <param name="day"></param> |
| | | /// <returns></returns> |
| | | private static List<Model.TileLevel> ReadList(DateTime day) |
| | | { |
| | | var list = new List<Model.TileLevel>(); |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using IStation.Common; |
| | | using IStation.Dto; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Net; |
| | | using System.Net.Http; |
| | | using System.Threading.Tasks; |
| | | using System.Web; |
| | | using System.Web.Http; |
| | | |
| | | namespace IStation.WebApi.Controllers |
| | | { |
| | | /// <summary> |
| | | /// ç¨æ°´é颿µå¼ (对å¤å¼æ¾) |
| | | /// </summary> |
| | | [RoutePrefix("OpenApi/WaterSupplyPredict")] |
| | | public class OpenPredictController : ApiController |
| | | { |
| | | /// <summary> |
| | | /// è·å |
| | | /// </summary> |
| | | /// <param name="day"></param> |
| | | /// <returns></returns> |
| | | [Route("GetByRange")] |
| | | [HttpGet] |
| | | public IStation.Dto.ApiResult GetByRange(string start, string end) |
| | | { |
| | | DateTime startTime, endTime; |
| | | if (!DateTime.TryParse(start, out startTime)) |
| | | { |
| | | return new IStation.Dto.ApiResult<string>("start åæ°ä¸åç", Dto.ApiResultCode.Error); |
| | | } |
| | | if (!DateTime.TryParse(end, out endTime)) |
| | | { |
| | | return new IStation.Dto.ApiResult<string>("end åæ°ä¸åç", Dto.ApiResultCode.Error); |
| | | } |
| | | |
| | | |
| | | |
| | | IStation.DAL.WaterPredictRecord dal = new DAL.WaterPredictRecord(); |
| | | var water_records = dal.GetByHourRangle(startTime, endTime); |
| | | |
| | | if (water_records == null || water_records.Count == 0) |
| | | { |
| | | return new IStation.Dto.ApiResult<string>() { Code = ApiResultCode.Error, Data = "æ°´ä½é¢æµæ°æ®ä¸ºç©º,请å
ä¿ææ°´ä½é¢æµæå¡æ£å¸¸è¿è¡" }; |
| | | } |
| | | |
| | | List<PredictValue> list2 = new List<PredictValue>(); |
| | | |
| | | int offset=0; |
| | | foreach (var r in water_records) |
| | | { |
| | | if (r.States == 0) |
| | | { |
| | | var error_info11 = string.Format("颿µæ°æ®å¼å¸¸,æ æ³è¿è¡æ°´ä½è®¡ç®:{0} {1},{2}", r.DayHour, r.LastPredictValue, r.Description); |
| | | |
| | | return new IStation.Dto.ApiResult<string>() |
| | | { |
| | | Code = ApiResultCode.Error, |
| | | Data = error_info11 |
| | | }; |
| | | } |
| | | |
| | | list2.Add(new PredictValue(r) { Time = startTime.AddHours(offset) }); |
| | | offset++; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | return new IStation.Dto.ApiResult<List<PredictValue>>(list2); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | public class PredictValue |
| | | { |
| | | public PredictValue() { } |
| | | public PredictValue(IStation.Model.WaterPredictRecord rhs) |
| | | { |
| | | this.Value = rhs.LastPredictValue; |
| | | } |
| | | public PredictValue(DateTime time, double level) { this.Time = time; this.Value = level; } |
| | | public DateTime Time { get; set; } |
| | | public double Value { get; set; } |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using IStation.Common; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Net; |
| | | using System.Net.Http; |
| | | using System.Threading.Tasks; |
| | | using System.Web; |
| | | using System.Web.Http; |
| | | |
| | | namespace IStation.WebApi.Controllers |
| | | { |
| | | /// <summary> |
| | | /// é¿æ±Tide (对å¤å¼æ¾) |
| | | /// </summary> |
| | | [RoutePrefix("OpenApi/Tide")] |
| | | public class OpenTideController : ApiController |
| | | { |
| | | /// <summary> |
| | | /// è·å |
| | | /// </summary> |
| | | /// <param name="day"></param> |
| | | /// <returns></returns> |
| | | [Route("GetByRange")] |
| | | [HttpGet] |
| | | public IStation.Dto.ApiResult GetByRange(string start, string end) |
| | | { |
| | | string error; |
| | | |
| | | DateTime startTime, endTime; |
| | | if (!DateTime.TryParse(start, out startTime)) |
| | | { |
| | | return new IStation.Dto.ApiResult<string>("start åæ°ä¸åç", Dto.ApiResultCode.Error); |
| | | } |
| | | if (!DateTime.TryParse(end, out endTime)) |
| | | { |
| | | return new IStation.Dto.ApiResult<string>("end åæ°ä¸åç", Dto.ApiResultCode.Error); |
| | | } |
| | | var list = TideFromBookHelper.GetByTimeRange(startTime, endTime, out error); |
| | | |
| | | if (list == null || list.Count() == 0) |
| | | { |
| | | return new IStation.Dto.ApiResult<string>("è·å失败", Dto.ApiResultCode.Error); |
| | | } |
| | | List<TideValue> list2 = new List<TideValue>(); |
| | | foreach (var m in list) |
| | | { |
| | | list2.Add(new TideValue(m)); |
| | | } |
| | | |
| | | return new IStation.Dto.ApiResult<List<TideValue>>(list2); |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// è·åææ¥ |
| | | /// </summary> |
| | | /// <param name="day"></param> |
| | | /// <returns></returns> |
| | | [Route("GetByDay")] |
| | | [HttpGet] |
| | | public IStation.Dto.ApiResult GetByDay(string day) |
| | | { |
| | | string error; |
| | | |
| | | |
| | | DateTime startTime; |
| | | if (!DateTime.TryParse(day, out startTime)) |
| | | { |
| | | return new IStation.Dto.ApiResult<string>("day åæ°ä¸åç", Dto.ApiResultCode.Error); |
| | | } |
| | | var list = TideFromBookHelper.GetByDay2(startTime, out error); |
| | | |
| | | if(list == null || list.Count()==0) |
| | | { |
| | | return new IStation.Dto.ApiResult<string>("è·å失败", Dto.ApiResultCode.Error); |
| | | } |
| | | List<TideValue> list2 = new List<TideValue>(); |
| | | foreach(var m in list) |
| | | { |
| | | list2.Add(new TideValue(m)); |
| | | } |
| | | |
| | | return new IStation.Dto.ApiResult<List<TideValue>>(list2); |
| | | } |
| | | |
| | | |
| | | |
| | | public class TideValue |
| | | { |
| | | public TideValue() { } |
| | | public TideValue(Model.TimeWaterLevel rhs) |
| | | { |
| | | this.Time = rhs.Time; |
| | | this.Value = rhs.Level; |
| | | } |
| | | public TideValue(DateTime time, double level) { this.Time = time; this.Value = level; } |
| | | public DateTime Time { get; set; } |
| | | public double Value { get; set; } |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | } |
| | |
| | | [RoutePrefix("Tide")] |
| | | public class TideController : ApiController |
| | | { |
| | | |
| | | |
| | | /// <summary> |
| | | /// è·åæè¿ä¸å¤© |
| | | /// </summary> |
| | |
| | | else |
| | | { |
| | | list = TideFromBookHelper.GetByDayRange(DateTime.Parse(startday), DateTime.Parse(endday), out error); |
| | | |
| | | } |
| | | |
| | | |
| | |
| | | [HttpPost] |
| | | public IStation.Dto.ApiResult ImportByDay(ImportByDayRequest request) |
| | | { |
| | | |
| | | var ret = TideFromBookHelper.SaveList(DateTime.Parse(request.day), request.level); |
| | | |
| | | |
| | | return new IStation.Dto.ApiResult<bool>(ret); |
| | | } |
| | |
| | | IStation.LogHelper.Error(string.Format("ZyPrjRequest Time:{0}-{1} æ¶é´èå´é误,ä¸è½è¶
è¿24å°æ¶", start_timme, end_timme)); |
| | | return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "æ¶é´èå´é误,ä¸è½è¶
è¿24å°æ¶" }; |
| | | } |
| | | |
| | | |
| | | IStation.CalcModel.AnaRequest anaRequest = new AnaRequest(); |
| | | anaRequest.CalcOptType = (eCalcOptType)IStation.AnaGlobalParas.Setting.OptSortType; |
| | | anaRequest.StartTime = start_timme; |
| | | anaRequest.EndTime = end_timme; |
| | | anaRequest.WaterLevelsé¿æ± = GetTide3Day(_tideSouce, start_timme); |
| | | if(anaRequest.WaterLevelsé¿æ± ==null || anaRequest.WaterLevelsé¿æ±.Count()==0) |
| | | { |
| | | return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "æ æ³è·åé¿æ±æ°´ä½æ°æ®" }; |
| | | } |
| | | |
| | | #region åæ°´æ»é |
| | | double TotalFlowIn = 0; |
| | |
| | | } |
| | | |
| | | #endregion åæ°´æ»é |
| | | |
| | | |
| | | #region æ°´ä½è¦æ± |
| | | |
| | | if (!string.IsNullOrEmpty(request.MaxReservoirLevelTime)) |
| | |
| | | anaRequest.StartReservoirLevel) |
| | | }; |
| | | } |
| | | //bool isTemp = false; |
| | | //if (!string.IsNullOrEmpty(request.IsTemporary)) |
| | | //{ |
| | | // isTemp = Convert.ToBoolean(request.IsTemporary); |
| | | //} |
| | | |
| | | IStation.LogHelper.Info("kashi 计ç®åæ°´æ»é "); |
| | | |
| | | var calcHelper = new IStation.CalcPrjHelper(); |
| | | AnaPrj defaultPrj = null; |
| | |
| | | <Compile Include="Areas\HelpPage\SampleGeneration\SampleDirection.cs" /> |
| | | <Compile Include="Areas\HelpPage\SampleGeneration\TextSample.cs" /> |
| | | <Compile Include="Areas\HelpPage\XmlDocumentationProvider.cs" /> |
| | | <Compile Include="Controllers\OpenPredictController.cs" /> |
| | | <Compile Include="Controllers\OpenTideController.cs" /> |
| | | <Compile Include="Controllers\ZyPrjController.cs" /> |
| | | <Compile Include="Controllers\AnaPrjController.cs" /> |
| | | <Compile Include="Controllers\HomeController.cs" /> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | 2024-10-21 13:39:03,268|UnknowException,Exception:缺å°WaterPredictDsPathé
ç½®,StackTrace: å¨ IStation.DAL.WaterPredictRecord.CreateConnection(Int32 year) ä½ç½® D:\WorkData\IStation\ChEq\CodeV1.3\DAL\IStation.DAL.Project\DAL\WaterPredictRecord.cs:è¡å· 27 |
| | | å¨ IStation.DAL.WaterPredictRecord.GetByHourRangle(DateTime start_time, DateTime end_time) ä½ç½® D:\WorkData\IStation\ChEq\CodeV1.3\DAL\IStation.DAL.Project\DAL\WaterPredictRecord.cs:è¡å· 78 |
| | | å¨ IStation.WebApi.Controllers.ZyPrjController.Calc(ZyPrjRequest request) ä½ç½® D:\WorkData\IStation\ChEq\CodeV1.3\WebApi\Controllers\ZyPrjController.cs:è¡å· 170 |
| | | å¨ lambda_method(Closure , Object , Object[] ) |
| | | å¨ System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass6_2.<GetExecutor>b__2(Object instance, Object[] methodParameters) |
| | | å¨ System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary`2 arguments, CancellationToken cancellationToken) |
| | | --- å¼åå¼å¸¸çä¸ä¸ä½ç½®ä¸å æ è·è¸ªçæ«å°¾ --- |
| | | å¨ System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() |
| | | å¨ System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) |
| | | å¨ System.Web.Http.Controllers.ApiControllerActionInvoker.<InvokeActionAsyncCore>d__1.MoveNext() |
| | | --- å¼åå¼å¸¸çä¸ä¸ä½ç½®ä¸å æ è·è¸ªçæ«å°¾ --- |
| | | å¨ System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() |
| | | å¨ System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) |
| | | å¨ System.Web.Http.Controllers.ActionFilterResult.<ExecuteAsync>d__5.MoveNext() |
| | | --- å¼åå¼å¸¸çä¸ä¸ä½ç½®ä¸å æ è·è¸ªçæ«å°¾ --- |
| | | å¨ System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() |
| | | å¨ System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) |
| | | å¨ System.Web.Http.Controllers.ExceptionFilterResult.<ExecuteAsync>d__6.MoveNext()| |
¶Ô±ÈÐÂÎļþ |
| | |
| | | 2024-10-21 13:36:51,791|--------------------------START-----------------------------------------| |
| | | 2024-10-21 13:36:51,803|Zy Prj Calc Request: {"StartTime":"2024-10-21 22:00:00","EndTime":"2024-10-22 22:00:00","StartReservoirLevel":null,"StartOpenPumpIndexArray":"","TotalFlowIn":"","TotalFlowOut":"","MaxReservoirLevel":"6.8","MaxReservoirLevelTime":"2024-10-22 09:00:00"}| |
| | | 2024-10-21 13:39:19,265|--------------------------START-----------------------------------------| |
| | | 2024-10-21 13:39:19,284|Zy Prj Calc Request: {"StartTime":"2024-10-21 22:00:00","EndTime":"2024-10-22 22:00:00","StartReservoirLevel":null,"StartOpenPumpIndexArray":"","TotalFlowIn":"","TotalFlowOut":"","MaxReservoirLevel":"6.8","MaxReservoirLevelTime":"2024-10-22 09:00:00"}| |
| | | 2024-10-21 13:39:23,386|è·åæ°´é颿µå¼: 52891,52830,66099,66106,66112,66119,66125,66132,66138,66144,66151,66157,66164,66170,66177,66183,66190,66196,66203,66209,66215,66222,66228,66235 , 颿µå¼æ»ä¾æ°´æ»é:1561396 | |
| | | 2024-10-21 13:39:23,386| æªè®¾ç½®å¼å§æ¶æ°´åºæ°´ä½ (Error: StartReservoirLevel is null)| |
| | | 2024-10-21 13:39:57,087|--------------------------START-----------------------------------------| |
| | | 2024-10-21 13:39:57,495|Zy Prj Calc Request: {"StartTime":"2024-10-21 22:00:00","EndTime":"2024-10-22 22:00:00","StartReservoirLevel":null,"StartOpenPumpIndexArray":"","TotalFlowIn":"","TotalFlowOut":"","MaxReservoirLevel":"6.8","MaxReservoirLevelTime":"2024-10-22 09:00:00"}| |
| | | 2024-10-21 13:40:18,624|è·åæ°´é颿µå¼: 52891,52830,66099,66106,66112,66119,66125,66132,66138,66144,66151,66157,66164,66170,66177,66183,66190,66196,66203,66209,66215,66222,66228,66235 , 颿µå¼æ»ä¾æ°´æ»é:1561396 | |
| | | 2024-10-21 13:40:22,835| æªè®¾ç½®å¼å§æ¶æ°´åºæ°´ä½ (Error: StartReservoirLevel is null)| |
| | | 2024-10-21 13:40:45,145|--------------------------START-----------------------------------------| |
| | | 2024-10-21 13:40:45,145|Zy Prj Calc Request: {"StartTime":"2024-10-21 22:00:00","EndTime":"2024-10-22 22:00:00","StartReservoirLevel":null,"StartOpenPumpIndexArray":"","TotalFlowIn":"","TotalFlowOut":"","MaxReservoirLevel":"6.8","MaxReservoirLevelTime":"2024-10-22 09:00:00"}| |
| | | 2024-10-21 13:41:16,702|è·åæ°´é颿µå¼: 52891,52830,66099,66106,66112,66119,66125,66132,66138,66144,66151,66157,66164,66170,66177,66183,66190,66196,66203,66209,66215,66222,66228,66235 , 颿µå¼æ»ä¾æ°´æ»é:1561396 | |
| | | 2024-10-21 13:41:29,983| æªè®¾ç½®å¼å§æ¶æ°´åºæ°´ä½ (Error: StartReservoirLevel is null)| |
| | | 2024-10-21 13:41:55,079|--------------------------START-----------------------------------------| |
| | | 2024-10-21 13:41:55,079|Zy Prj Calc Request: {"StartTime":"2024-10-21 22:00:00","EndTime":"2024-10-22 22:00:00","StartReservoirLevel":null,"StartOpenPumpIndexArray":"","TotalFlowIn":"","TotalFlowOut":"","MaxReservoirLevel":"6.8","MaxReservoirLevelTime":"2024-10-22 09:00:00"}| |
| | | 2024-10-21 13:41:55,088|è·åæ°´é颿µå¼: 52891,52830,66099,66106,66112,66119,66125,66132,66138,66144,66151,66157,66164,66170,66177,66183,66190,66196,66203,66209,66215,66222,66228,66235 , 颿µå¼æ»ä¾æ°´æ»é:1561396 | |
| | | 2024-10-21 13:41:58,922| æªè®¾ç½®å¼å§æ¶æ°´åºæ°´ä½ (Error: StartReservoirLevel is null)| |
| | | 2024-10-21 13:42:32,108|--------------------------START-----------------------------------------| |
| | | 2024-10-21 13:42:32,124|Zy Prj Calc Request: {"StartTime":"2024-10-21 22:00:00","EndTime":"2024-10-22 22:00:00","StartReservoirLevel":"6","StartOpenPumpIndexArray":"","TotalFlowIn":"","TotalFlowOut":"","MaxReservoirLevel":"6.8","MaxReservoirLevelTime":"2024-10-22 09:00:00"}| |
| | | 2024-10-21 13:42:32,705|è·åæ°´é颿µå¼: 52891,52830,66099,66106,66112,66119,66125,66132,66138,66144,66151,66157,66164,66170,66177,66183,66190,66196,66203,66209,66215,66222,66228,66235 , 颿µå¼æ»ä¾æ°´æ»é:1561396 | |
| | | 2024-10-21 13:43:36,188|-----------------------------END--------------------------------------| |