| | |
| | | /// </summary> |
| | | [Route("RepairEtaDayRecordList")] |
| | | [HttpGet] |
| | | public bool RepairEtaDayRecordList([FromQuery] long CorpID, long LogicAreaID, DateTime StartTime, DateTime EndTime) |
| | | public bool RepairEtaDayRecordList([FromQuery] long CorpID, DateTime StartTime, DateTime EndTime) |
| | | { |
| | | var corpId = CorpID; |
| | | var logicAreaId = LogicAreaID; |
| | | //获取业务区域 |
| | | var logic_catalog_list = new Service.LogicCatalog().GetByCorpID(CorpID); |
| | | if (logic_catalog_list == null || logic_catalog_list.Count < 1) |
| | | return false; |
| | | |
| | | var service_eta = new Service.EtaLogicRealRecord(); |
| | | var service_eta_sum = new Service.EtaSumLogicRecord(); |
| | | |
| | | var spanDays = (EndTime - StartTime).TotalDays; |
| | | var result = false; |
| | | for (int i = 0; i <= spanDays; i++) |
| | | //遍历业务类别 |
| | | foreach (var logicCataog in logic_catalog_list) |
| | | { |
| | | var currentTime = StartTime.AddDays(i); |
| | | var realRecordList = service_eta.GetByObjectOfDay(corpId, ObjectType.LogicArea, logicAreaId, currentTime); |
| | | var cureentDayRecord = service_eta_sum.GetDayByObjectOfDay(corpId, ObjectType.LogicArea, logicAreaId, currentTime); |
| | | var record = EtaSumLogicDayHelper.Sum(corpId, ObjectType.LogicArea, logicAreaId, currentTime, realRecordList); |
| | | if (cureentDayRecord == null) |
| | | { |
| | | result = service_eta_sum.Insert(record) > 0; |
| | | } |
| | | else |
| | | { |
| | | result = service_eta_sum.Update(record); |
| | | } |
| | | } |
| | | //获取业务清单 |
| | | var logicTreeList = new Service.LogicTree().GetByCatalogID(CorpID, logicCataog.ID); |
| | | //遍历业务清单 |
| | | if (logicTreeList == null || logicTreeList.Count < 1) |
| | | continue; |
| | | |
| | | return result; |
| | | foreach (var logicTree in logicTreeList) |
| | | { |
| | | RepairCore(CorpID, logicTree.LogicType, logicTree.LogicID, StartTime, EndTime); |
| | | if (logicTree.LogicType == IStation.ObjectType.Station) |
| | | { |
| | | var station = new Service.Station().GetByID(CorpID, logicTree.LogicID); |
| | | if (station == null) |
| | | continue; |
| | | //获取管路 |
| | | var pipeLineList = new Service.PipeLine().GetEnginePumpListByBelongTypeAndBelongID(CorpID, IStation.ObjectType.Station, station.ID); |
| | | if (pipeLineList == null || pipeLineList.Count < 1) |
| | | continue; |
| | | foreach (var pipeLine in pipeLineList) |
| | | { |
| | | RepairCore(CorpID, ObjectType.PipeLine, pipeLine.ID, StartTime, EndTime); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | return true; |
| | | } |
| | | |
| | | |
| | | private void RepairCore(long corpId, string objectType, long objectId, DateTime startTime, DateTime endTime) |
| | | { |
| | | var service_eta = new Service.EtaLogicRealRecord(); |
| | | var service_eta_sum = new Service.EtaSumLogicRecord(); |
| | | |
| | | var spanDays = (endTime - startTime).TotalDays; |
| | | for (int i = 0; i <= spanDays; i++) |
| | | { |
| | | var currentTime = startTime.AddDays(i); |
| | | var realRecordList = service_eta.GetByObjectOfDay(corpId, objectType, objectId, currentTime); |
| | | if (realRecordList == null || realRecordList.Count < 1) |
| | | continue; |
| | | var cureentDayRecord = service_eta_sum.GetDayByObjectOfDay(corpId, objectType, objectId, currentTime); |
| | | var record = EtaSumLogicDayHelper.Sum(corpId, objectType, objectId, currentTime, realRecordList); |
| | | if (cureentDayRecord == null) |
| | | { |
| | | service_eta_sum.Insert(record); |
| | | } |
| | | else |
| | | { |
| | | service_eta_sum.Update(record); |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | |