From e45eab5980c08520aee01a72224ccdfd12600543 Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期三, 15 五月 2024 15:09:07 +0800 Subject: [PATCH] 优化部分接口 --- IStation.Entry.SZJT/Properties/PublishProfiles/FolderProfile.pubxml.user | 3 IStation.Server.SZJT/00-core/JobHelper.cs | 2 IStation.Service.SZJT/IStation.Service.SZJT.csproj | 11 +- IStation.Application.SZJT/99-logic/10-mobile/06-run-analy/RunAnaly_MobileController.cs | 2 IStation.Application.SZJT/IStation.Application.SZJT.csproj | 14 +- IStation.Application.SZJT/99-logic/03-station-panel/dto/StationPanelMonitorKpiLastStatusDto.cs | 2 IStation.Application.SZJT/99-logic/11-big-screen/BigScreen_LogicController.cs | 109 +++++++++++++-------- IStation.Application.SZJT/99-logic/04-station-list/dto/StationListMonitorKpiLastStatusDto.cs | 2 IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/dto/StationStatisticsDayParasMobileDto.cs | 6 IStation.Server.SZJT/00-core/ConfigHelper.cs | 0 IStation.WebApi.SZJT/Filters/AuthorizationFilter.cs | 2 IStation.Entry.SZJT/IStation.Entry.SZJT.csproj | 23 ++-- IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/dto/StationStatisticsDayRecordMobileDto.cs | 4 IStation.Application.SZJT/99-logic/10-mobile/01-station-list/StationList_MobileController.cs | 0 IStation.WebApi.SZJT/Filters/ActionFilter.cs | 2 IStation.Server.SZJT/00-core/IJobHelper.cs | 0 IStation.Application.SZJT/99-logic/05-station-map/dto/StationMapMonitorKpiLastStatusDto.cs | 2 /dev/null | 37 ------- IStation.Server.SZJT/IStation.Server.SZJT.csproj | 2 IStation.WebApi.SZJT/Handlers/JwtHandler.cs | 17 +++ IStation.WebApi.SZJT/Result/XnRestfulResultProvider.cs | 12 ++ IStation.Application.SZJT/99-logic/06-run-analy/RunAnaly_LogicController.cs | 2 IStation.Application.SZJT/99-logic/10-mobile/05-map/dto/1-station/StationMapMonitorKpiLastStatusMobileDto.cs | 2 IStation.WebApi.SZJT/Filters/ResultFilter.cs | 2 IStation.Entry.SZJT/appsettings.json | 27 +++-- 25 files changed, 155 insertions(+), 130 deletions(-) diff --git a/IStation.Application.SZJT/99-logic/03-station-panel/dto/StationPanelMonitorKpiLastStatusDto.cs b/IStation.Application.SZJT/99-logic/03-station-panel/dto/StationPanelMonitorKpiLastStatusDto.cs index c3f5586..f1f544d 100644 --- a/IStation.Application.SZJT/99-logic/03-station-panel/dto/StationPanelMonitorKpiLastStatusDto.cs +++ b/IStation.Application.SZJT/99-logic/03-station-panel/dto/StationPanelMonitorKpiLastStatusDto.cs @@ -13,7 +13,7 @@ this.EquipmentID = equipment.ID; this.Name = equipment.Name; this.DataTime = record?.DataTime; - this.RunStatus = record == null ? Yw.Run.RunStatus.Stop : record.RSa; + this.RunStatus = record == null ? Yw.Run.RunStatus.Shut : record.RSa; } /// <summary> diff --git a/IStation.Application.SZJT/99-logic/04-station-list/dto/StationListMonitorKpiLastStatusDto.cs b/IStation.Application.SZJT/99-logic/04-station-list/dto/StationListMonitorKpiLastStatusDto.cs index dc2d44a..269e2f5 100644 --- a/IStation.Application.SZJT/99-logic/04-station-list/dto/StationListMonitorKpiLastStatusDto.cs +++ b/IStation.Application.SZJT/99-logic/04-station-list/dto/StationListMonitorKpiLastStatusDto.cs @@ -13,7 +13,7 @@ this.EquipmentID = equipment.ID; this.Name = equipment.Name; this.DataTime = record?.DataTime; - this.RunStatus = record == null ? Yw.Run.RunStatus.Stop : record.RSa; + this.RunStatus = record == null ? Yw.Run.RunStatus.Shut : record.RSa; } /// <summary> diff --git a/IStation.Application.SZJT/99-logic/05-station-map/dto/StationMapMonitorKpiLastStatusDto.cs b/IStation.Application.SZJT/99-logic/05-station-map/dto/StationMapMonitorKpiLastStatusDto.cs index 45ea7a3..e877ea5 100644 --- a/IStation.Application.SZJT/99-logic/05-station-map/dto/StationMapMonitorKpiLastStatusDto.cs +++ b/IStation.Application.SZJT/99-logic/05-station-map/dto/StationMapMonitorKpiLastStatusDto.cs @@ -13,7 +13,7 @@ this.EquipmentID = equipment.ID; this.Name = equipment.Name; this.DataTime = record?.DataTime; - this.RunStatus = record == null ? Yw.Run.RunStatus.Stop : record.RSa; + this.RunStatus = record == null ? Yw.Run.RunStatus.Shut : record.RSa; } /// <summary> diff --git a/IStation.Application.SZJT/99-logic/06-run-analy/RunAnaly_LogicController.cs b/IStation.Application.SZJT/99-logic/06-run-analy/RunAnaly_LogicController.cs index 7463fa2..6375035 100644 --- a/IStation.Application.SZJT/99-logic/06-run-analy/RunAnaly_LogicController.cs +++ b/IStation.Application.SZJT/99-logic/06-run-analy/RunAnaly_LogicController.cs @@ -52,7 +52,7 @@ if (record_list == null || record_list.Count < 1) { var vm_span_chunk = new RunAnalySpanChunkDto(); - vm_span_chunk.RunStatus = Yw.Run.RunStatus.Stop; + vm_span_chunk.RunStatus = Yw.Run.RunStatus.Shut; vm_span_chunk.StartTime = input.Day.Date; vm_span_chunk.EndTime = input.Day.Date.AddDays(1); if (vm_span_chunk.EndTime > DateTime.Now) diff --git a/IStation.Application.SZJT/99-logic/10-mobile/01-station-list/StationList_LogicController.cs b/IStation.Application.SZJT/99-logic/10-mobile/01-station-list/StationList_MobileController.cs similarity index 100% rename from IStation.Application.SZJT/99-logic/10-mobile/01-station-list/StationList_LogicController.cs rename to IStation.Application.SZJT/99-logic/10-mobile/01-station-list/StationList_MobileController.cs diff --git a/IStation.Application.SZJT/99-logic/10-mobile/05-map/dto/1-station/StationMapMonitorKpiLastStatusMobileDto.cs b/IStation.Application.SZJT/99-logic/10-mobile/05-map/dto/1-station/StationMapMonitorKpiLastStatusMobileDto.cs index e9e6f47..ba735f8 100644 --- a/IStation.Application.SZJT/99-logic/10-mobile/05-map/dto/1-station/StationMapMonitorKpiLastStatusMobileDto.cs +++ b/IStation.Application.SZJT/99-logic/10-mobile/05-map/dto/1-station/StationMapMonitorKpiLastStatusMobileDto.cs @@ -13,7 +13,7 @@ this.EquipmentID = equipment.ID; this.Name = equipment.Name; this.DataTime = record?.DataTime; - this.RunStatus = record == null ? Yw.Run.RunStatus.Stop : record.RSa; + this.RunStatus = record == null ? Yw.Run.RunStatus.Shut : record.RSa; } /// <summary> diff --git a/IStation.Application.SZJT/99-logic/10-mobile/06-run-analy/RunAnaly_MobileController.cs b/IStation.Application.SZJT/99-logic/10-mobile/06-run-analy/RunAnaly_MobileController.cs index 66b8dcd..c6d4c55 100644 --- a/IStation.Application.SZJT/99-logic/10-mobile/06-run-analy/RunAnaly_MobileController.cs +++ b/IStation.Application.SZJT/99-logic/10-mobile/06-run-analy/RunAnaly_MobileController.cs @@ -31,7 +31,7 @@ if (record_list == null || record_list.Count < 1) { var vm_span_chunk = new RunAnalySpanChunkDto(); - vm_span_chunk.RunStatus = Yw.Run.RunStatus.Stop; + vm_span_chunk.RunStatus = Yw.Run.RunStatus.Shut; vm_span_chunk.StartTime = input.Day.Date; vm_span_chunk.EndTime = input.Day.Date.AddDays(1); if (vm_span_chunk.EndTime > DateTime.Now) diff --git a/IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/dto/StationStatisticsDayParasMobileDto.cs b/IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/dto/StationStatisticsDayParasMobileDto.cs index 824f131..25c1aaa 100644 --- a/IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/dto/StationStatisticsDayParasMobileDto.cs +++ b/IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/dto/StationStatisticsDayParasMobileDto.cs @@ -6,17 +6,17 @@ public class StationStatisticsDayParasMobileDto { /// <summary> - /// + /// 鏄惁鍓嶄竴澶� /// </summary> public bool Pre { get; set; } = false; /// <summary> - /// + /// 寮�濮嬫椂 /// </summary> public int Start { get; set; } = 0; /// <summary> - /// + /// 缁撴潫鏃� /// </summary> public int End { get; set; } = 24; } diff --git a/IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/dto/StationStatisticsDayRecordMobileDto.cs b/IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/dto/StationStatisticsDayRecordMobileDto.cs index 12f129f..6b62bfa 100644 --- a/IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/dto/StationStatisticsDayRecordMobileDto.cs +++ b/IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/dto/StationStatisticsDayRecordMobileDto.cs @@ -11,12 +11,12 @@ public DateTime Day { get; set; } /// <summary> - /// + /// 渚涙按閲� /// </summary> public double? Ws { get; set; } /// <summary> - /// + /// 鐢ㄧ數閲� /// </summary> public double? Ed { get; set; } } diff --git a/IStation.Application.SZJT/99-logic/11-big-screen/BigScreen_LogicController.cs b/IStation.Application.SZJT/99-logic/11-big-screen/BigScreen_LogicController.cs index 54a6b81..4e35e5d 100644 --- a/IStation.Application.SZJT/99-logic/11-big-screen/BigScreen_LogicController.cs +++ b/IStation.Application.SZJT/99-logic/11-big-screen/BigScreen_LogicController.cs @@ -1,4 +1,6 @@ -锘縩amespace IStation.Application +锘縰sing Microsoft.VisualBasic; + +namespace IStation.Application { /// <summary> /// BigScreen @@ -11,7 +13,7 @@ #region 鎵�鏈� /// <summary> - /// 鑾峰彇鎵�鏈夋车绔檏pi淇℃伅 + /// 鑾峰彇鎵�鏈夋车绔檏pi淇℃伅(寰呭畬鍠�) /// </summary> [Route("GetAllStationKpiInfo@V1.0")] [HttpGet] @@ -370,19 +372,43 @@ var dtEnd = DateTime.Now.Date; var dtStart = dtEnd.AddMonths(-1); + List<Yw.Model.MonitorDayRecord> allWsRecordList = null;//鎵�鏈変緵姘撮噺 + List<Yw.Model.MonitorDayRecord> allPsRecordList = null;//鎵�鏈夌敤鐢甸噺 + Yw.Model.Signal_SignalType signalWs = null;//鐢ㄦ按閲忎俊鍙� + Yw.Model.Signal_SignalType signalPs = null;//鐢ㄧ數閲忎俊鍙� + var service_day_record = new Lazy<Yw.Service.MonitorDayRecord>(() => new Yw.Service.MonitorDayRecord()); + var allMonitorList = new Yw.Service.MonitorPoint().GetExSignalWithSignalTypeByBelongTypeAndBelongID(IStation.DataType.LogicSite, input.StationID, Yw.Monitor.eCronType.EachDay); + if (allMonitorList != null && allMonitorList.Count > 0) + { + var monitorWs = allMonitorList.Find(x => x.SignalList.Exists(t => t.SignalType.Code == Yw.Monitor.SignalType.绱Н娴侀噺)); + if (monitorWs != null) + { + signalWs = monitorWs.SignalList.Find(x => x.SignalType.Code == Yw.Monitor.SignalType.绱Н娴侀噺); + allWsRecordList = service_day_record.Value.GetBySignalIDOfDayRange(signalWs.ID, dtStart, dtEnd); + } + var monitorPs = allMonitorList.Find(x => x.SignalList.Exists(t => t.SignalType.Code == Yw.Monitor.SignalType.鏈夊姛鐢靛害)); + if (monitorPs != null) + { + signalPs = monitorPs.SignalList.Find(x => x.SignalType.Code == Yw.Monitor.SignalType.鏈夊姛鐢靛害); + allPsRecordList = service_day_record.Value.GetBySignalIDOfDayRange(signalPs.ID, dtStart, dtEnd); + } + } + for (DateTime dt = dtStart; dt <= dtEnd; dt = dt.AddDays(1)) { + var ws = allWsRecordList?.Find(x => x.DataDay.Date == dt.Date); vm.Ws.Add(new BigScreenSingleStationQuotaItemDto() { Day = dt, - Value = RandomHelper.Random(1000, 10000).ToString(), - UnitName = "m鲁" + Value = ws == null ? "0" : signalWs.GetDisplayValue(ws.DataValue), + UnitName = signalWs?.GetDisplayUnitNames() }); + var ps = allPsRecordList.Find(x => x.DataDay.Date == dt.Date); vm.Ps.Add(new BigScreenSingleStationQuotaItemDto() { Day = dt, - Value = RandomHelper.Random(2000, 3000).ToString(), - UnitName = "kW鈥" + Value = ps == null ? "0" : signalPs.GetDisplayValue(ps.DataValue), + UnitName = signalPs?.GetDisplayUnitNames() }); } return vm; @@ -486,7 +512,7 @@ } /// <summary> - /// 鑾峰彇鍗曟车绔欏伐鍗昁pi淇℃伅 + /// 鑾峰彇鍗曟车绔欏伐鍗昁pi淇℃伅(寰呭畬鍠�) /// </summary> [Route("GetSingleStationRepairKpiInfo@V1.0")] [HttpGet] @@ -578,42 +604,45 @@ public List<BigScreenSingleStationAlarmItemDto> GetSingleStationAlarmInfo([FromQuery][Required] StationIDInput input) { var vmList = new List<BigScreenSingleStationAlarmItemDto>(); - vmList.Add(new BigScreenSingleStationAlarmItemDto() + var allEquipmentList = new Yw.Service.Equipment().GetByBelongTypeAndBelongID(IStation.DataType.LogicSite, input.StationID); + if (allEquipmentList == null || allEquipmentList.Count < 1) { - ID = 1, - Name = "1#鏈虹粍", - Content = "鍑哄彛鍘嬪姏杩囦綆锛岃鍏虫敞鐘舵�佸彉鍖�" - }); - vmList.Add(new BigScreenSingleStationAlarmItemDto() + return vmList; + } + var allEnginePumpList = allEquipmentList.Where(x => x.Flags.Contains(IStation.Flags.鏈虹粍)).ToList(); + if (allEnginePumpList.Count < 1) { - ID = 2, - Name = "2#鏈虹粍", - Content = "鐬椂娴侀噺鏁版嵁寮傚父锛岃妫�淇�" - }); - vmList.Add(new BigScreenSingleStationAlarmItemDto() + return vmList; + } + var service_monitor_maping = new Yw.Service.EquipmentMonitorMapping(); + var service_monitor = new Lazy<Yw.Service.MonitorPoint>(() => new Yw.Service.MonitorPoint()); + var servie_alarm_record = new Lazy<Yw.Service.MonitorValueAlarmRecord>(() => new Yw.Service.MonitorValueAlarmRecord()); + foreach (var enginePump in allEnginePumpList) { - ID = 3, - Name = "2#鏈虹粍", - Content = "鐬椂娴侀噺鏁版嵁寮傚父锛岃妫�淇�" - }); - vmList.Add(new BigScreenSingleStationAlarmItemDto() - { - ID = 4, - Name = "2#鏈虹粍", - Content = "鐬椂娴侀噺鏁版嵁寮傚父锛岃妫�淇�" - }); - vmList.Add(new BigScreenSingleStationAlarmItemDto() - { - ID = 5, - Name = "2#鏈虹粍", - Content = "鐬椂娴侀噺鏁版嵁寮傚父锛岃妫�淇�" - }); - vmList.Add(new BigScreenSingleStationAlarmItemDto() - { - ID = 6, - Name = "2#鏈虹粍", - Content = "鐬椂娴侀噺鏁版嵁寮傚父锛岃妫�淇�" - }); + var allMonitorMappingList = service_monitor_maping.GetByEquipmentIDContainsChildren(enginePump.ID); + if (allMonitorMappingList != null && allMonitorMappingList.Count > 0) + { + var allMonitorIds = allMonitorMappingList.Select(x => x.MonitorPointID).Distinct().ToList(); + var allMonitorList = service_monitor.Value.GetExSignalWithSignalTypeByIds(allMonitorIds); + var allSignalList = allMonitorList.SelectMany(x => x.SignalList).ToList(); + var allSignalIds = allSignalList.Select(x => x.ID).Distinct().ToList(); + var allAlarmList = servie_alarm_record.Value.GetLastListBySignalIds(allSignalIds, 3); + if (allAlarmList != null && allAlarmList.Count > 0) + { + foreach (var alarm in allAlarmList) + { + var vm = new BigScreenSingleStationAlarmItemDto() + { + ID = alarm.ID, + Name = enginePump.Name, + Content = alarm.AlarmName + }; + vmList.Add(vm); + } + } + } + } + return vmList; } diff --git a/IStation.Application.SZJT/IStation.Application.SZJT.csproj b/IStation.Application.SZJT/IStation.Application.SZJT.csproj index 7404eac..1c5ee29 100644 --- a/IStation.Application.SZJT/IStation.Application.SZJT.csproj +++ b/IStation.Application.SZJT/IStation.Application.SZJT.csproj @@ -31,11 +31,15 @@ </ItemGroup> <ItemGroup> - <PackageReference Include="Yw.Application.Core" Version="3.0.5" /> - <PackageReference Include="Yw.Service.DMA.Core" Version="3.0.1" /> - <PackageReference Include="Yw.Service.Map.Core" Version="3.0.3" /> - <PackageReference Include="Yw.Service.Repair.Core" Version="3.0.1" /> - <PackageReference Include="Yw.Service.Run.Core" Version="3.0.1" /> + <PackageReference Include="Yw.Application.Core" Version="3.0.7" /> + <PackageReference Include="Yw.Dto.Assets.Core" Version="3.1.5" /> + <PackageReference Include="Yw.Dto.Basic.Core" Version="3.0.9" /> + <PackageReference Include="Yw.Dto.DMA.Core" Version="3.0.3" /> + <PackageReference Include="Yw.Dto.Map.Core" Version="3.0.5" /> + <PackageReference Include="Yw.Dto.Monitor.Core" Version="3.3.1" /> + <PackageReference Include="Yw.Dto.MonitorRelation.Core" Version="3.1.1" /> + <PackageReference Include="Yw.Dto.Repair.Core" Version="3.0.3" /> + <PackageReference Include="Yw.Dto.Run.Core" Version="3.0.9" /> </ItemGroup> <ItemGroup> diff --git a/IStation.Entry.SZJT/IStation.Entry.SZJT.csproj b/IStation.Entry.SZJT/IStation.Entry.SZJT.csproj index a36fe6b..290e1ed 100644 --- a/IStation.Entry.SZJT/IStation.Entry.SZJT.csproj +++ b/IStation.Entry.SZJT/IStation.Entry.SZJT.csproj @@ -13,17 +13,18 @@ <ProjectExtensions><VisualStudio><UserProperties appsettings_1json__JsonSchema="" /></VisualStudio></ProjectExtensions> <ItemGroup> - <PackageReference Include="Yw.Application.ArtImage.Core" Version="3.0.2" /> - <PackageReference Include="Yw.Application.Assets.Core" Version="3.0.5" /> - <PackageReference Include="Yw.Application.Basic.Core" Version="3.0.5" /> - <PackageReference Include="Yw.Application.Bimface.Core" Version="3.0.1" /> - <PackageReference Include="Yw.Application.Dict.Core" Version="3.0.1" /> - <PackageReference Include="Yw.Application.DMA.Core" Version="3.0.2" /> - <PackageReference Include="Yw.Application.DOCS.Core" Version="3.0.2" /> - <PackageReference Include="Yw.Application.Map.Core" Version="3.0.3" /> - <PackageReference Include="Yw.Application.Monitor.Core" Version="3.0.6" /> - <PackageReference Include="Yw.Application.Repair.Core" Version="3.0.1" /> - <PackageReference Include="Yw.Application.Unit.Core" Version="3.0.2" /> + <PackageReference Include="Yw.Application.Assets.Core" Version="3.1.5" /> + <PackageReference Include="Yw.Application.Basic.Core" Version="3.1.0" /> + <PackageReference Include="Yw.Application.Bimface.Core" Version="3.0.2" /> + <PackageReference Include="Yw.Application.Dict.Core" Version="3.0.5" /> + <PackageReference Include="Yw.Application.DMA.Core" Version="3.0.5" /> + <PackageReference Include="Yw.Application.DOCS.Core" Version="3.0.6" /> + <PackageReference Include="Yw.Application.Map.Core" Version="3.0.6" /> + <PackageReference Include="Yw.Application.Monitor.Core" Version="3.3.1" /> + <PackageReference Include="Yw.Application.MonitorRelation.Core" Version="3.1.1" /> + <PackageReference Include="Yw.Application.Repair.Core" Version="3.0.3" /> + <PackageReference Include="Yw.Application.Run.Core" Version="3.0.9" /> + <PackageReference Include="Yw.Application.Unit.Core" Version="3.0.6" /> </ItemGroup> <ItemGroup> diff --git a/IStation.Entry.SZJT/Properties/PublishProfiles/FolderProfile.pubxml.user b/IStation.Entry.SZJT/Properties/PublishProfiles/FolderProfile.pubxml.user index 810237f..52e451e 100644 --- a/IStation.Entry.SZJT/Properties/PublishProfiles/FolderProfile.pubxml.user +++ b/IStation.Entry.SZJT/Properties/PublishProfiles/FolderProfile.pubxml.user @@ -5,6 +5,7 @@ <Project> <PropertyGroup> <_PublishTargetUrl>D:\WorkData\git\istation\szjt\IStation.Entry.SZJT\bin\Release\net6.0\publish\</_PublishTargetUrl> - <History>True|2024-04-04T03:28:14.8768964Z;True|2024-04-04T09:39:21.6552156+08:00;True|2024-03-11T16:36:41.1901368+08:00;True|2024-01-27T11:33:20.6165535+08:00;True|2024-01-18T15:02:34.3492480+08:00;True|2024-01-15T18:07:28.9717635+08:00;True|2024-01-13T18:33:12.9427731+08:00;True|2024-01-03T12:04:02.7753609+08:00;True|2024-01-03T11:08:38.0680764+08:00;True|2024-01-03T10:52:12.8371853+08:00;True|2024-01-03T10:03:29.0482464+08:00;True|2023-12-28T09:09:43.7988141+08:00;True|2023-12-26T11:51:52.4664582+08:00;True|2023-12-26T10:49:59.5124896+08:00;True|2023-12-26T10:10:53.5396234+08:00;True|2023-12-25T15:30:59.3409132+08:00;True|2023-12-25T15:26:43.1943347+08:00;True|2023-12-25T10:08:29.7964560+08:00;True|2023-12-21T10:30:55.0589855+08:00;True|2023-12-19T21:25:45.9098277+08:00;True|2023-12-16T12:52:46.7024463+08:00;True|2023-12-14T16:16:02.6188884+08:00;True|2023-12-14T16:03:53.1458158+08:00;True|2023-12-14T15:59:33.3947428+08:00;True|2023-12-14T15:53:09.8869780+08:00;True|2023-12-14T14:17:07.2707485+08:00;True|2023-12-14T11:49:15.9699053+08:00;False|2023-12-14T11:48:41.4121185+08:00;True|2023-12-13T17:28:38.2180193+08:00;True|2023-12-13T14:47:22.2493536+08:00;True|2023-12-13T14:31:45.6098784+08:00;True|2023-12-13T14:05:08.5014675+08:00;True|2023-12-13T14:01:37.7165974+08:00;True|2023-12-13T13:50:57.4832531+08:00;True|2023-12-13T13:20:55.2902900+08:00;True|2023-12-13T12:01:09.6397101+08:00;True|2023-12-13T11:53:51.3171154+08:00;True|2023-12-13T11:18:29.2505125+08:00;True|2023-12-13T09:48:22.2436154+08:00;True|2023-12-12T11:49:25.2723311+08:00;True|2023-12-11T14:05:58.1086840+08:00;True|2023-12-11T09:31:35.0365077+08:00;True|2023-12-05T18:00:29.7005601+08:00;True|2023-12-05T17:35:46.7846869+08:00;True|2023-12-05T17:29:36.5936716+08:00;True|2023-12-04T19:50:38.7216121+08:00;True|2023-12-02T14:06:28.8643257+08:00;True|2023-11-30T16:54:56.0879009+08:00;True|2023-11-30T15:49:27.5213126+08:00;True|2023-11-30T13:42:14.9061099+08:00;False|2023-11-30T13:41:50.2796105+08:00;False|2023-11-30T13:41:42.4700953+08:00;True|2023-11-30T10:23:50.6226599+08:00;True|2023-11-30T09:22:54.2133326+08:00;True|2023-11-29T16:32:53.3651373+08:00;True|2023-11-29T09:19:39.1127566+08:00;True|2023-11-28T17:25:14.9642204+08:00;True|2023-11-28T16:53:30.7550754+08:00;True|2023-11-28T09:57:02.3264015+08:00;True|2023-11-27T14:26:33.6153027+08:00;True|2023-11-27T13:33:46.1964012+08:00;True|2023-11-27T13:21:38.2133314+08:00;True|2023-11-24T14:12:06.2053905+08:00;True|2023-11-23T15:38:30.0872291+08:00;True|2023-11-15T19:27:36.4861114+08:00;True|2023-11-15T14:16:33.6004541+08:00;True|2023-11-15T14:02:06.1224051+08:00;True|2023-11-15T09:35:35.1770813+08:00;True|2023-11-10T14:06:46.1528992+08:00;True|2023-11-08T14:07:13.3792249+08:00;True|2023-11-08T13:58:21.2455396+08:00;True|2023-11-08T13:34:05.8131818+08:00;True|2023-11-08T11:58:01.9187650+08:00;True|2023-11-07T14:11:15.6278203+08:00;True|2023-11-07T14:05:43.3330586+08:00;True|2023-10-27T08:30:17.2959726+08:00;True|2023-10-27T08:23:59.8360129+08:00;True|2023-10-25T20:36:54.7517897+08:00;True|2023-10-24T23:27:01.1980187+08:00;True|2023-10-24T22:57:21.3872591+08:00;True|2023-10-17T09:26:15.4157626+08:00;True|2023-10-16T16:44:05.1411215+08:00;True|2023-10-10T14:24:00.3649304+08:00;True|2023-10-10T14:12:16.4050462+08:00;True|2023-10-10T13:43:17.4397783+08:00;True|2023-10-08T16:16:16.4721892+08:00;True|2023-10-08T14:27:40.6092129+08:00;True|2023-10-08T13:36:44.2969175+08:00;True|2023-10-08T13:21:21.1105671+08:00;True|2023-10-08T11:41:25.6876188+08:00;True|2023-10-08T09:39:46.1146411+08:00;True|2023-09-26T14:26:57.6168193+08:00;True|2023-09-21T13:54:19.1780900+08:00;True|2023-09-21T13:16:00.2957740+08:00;True|2023-09-21T11:28:36.3091944+08:00;True|2023-09-21T11:18:20.1060798+08:00;True|2023-09-13T16:00:49.4080881+08:00;True|2023-09-11T13:53:38.8582724+08:00;True|2023-09-01T10:32:37.4923361+08:00;True|2023-08-30T16:52:43.1952609+08:00;True|2023-08-30T13:41:35.0430741+08:00;True|2023-08-28T14:53:24.2454140+08:00;True|2023-08-28T13:50:55.9362462+08:00;True|2023-08-28T10:00:17.0366755+08:00;True|2023-08-25T15:41:23.8727088+08:00;True|2023-08-24T16:47:54.1391198+08:00;True|2023-08-24T16:40:29.0473991+08:00;True|2023-08-22T15:02:27.5312918+08:00;True|2023-08-22T11:18:43.6918732+08:00;True|2023-08-21T15:10:42.9223597+08:00;True|2023-08-21T14:21:08.1887373+08:00;True|2023-08-21T11:56:07.5304445+08:00;True|2023-08-18T16:57:57.0506312+08:00;True|2023-08-18T13:51:54.9145260+08:00;True|2023-08-17T14:52:44.6557301+08:00;True|2023-08-17T14:15:19.8255432+08:00;True|2023-08-17T14:03:01.1586247+08:00;True|2023-08-17T11:46:51.6685579+08:00;True|2023-08-16T11:12:27.1684542+08:00;True|2023-08-15T16:59:09.4901359+08:00;True|2023-08-10T14:08:04.8032876+08:00;True|2023-08-10T13:55:01.9698355+08:00;True|2023-08-10T10:43:44.0440039+08:00;True|2023-08-10T10:12:03.9359243+08:00;True|2023-08-09T15:07:46.6906781+08:00;True|2023-08-09T13:12:06.7912004+08:00;True|2023-08-09T10:23:24.5864225+08:00;True|2023-08-08T17:38:10.4753030+08:00;True|2023-08-08T12:56:08.9783211+08:00;True|2023-08-06T09:18:33.3703637+08:00;True|2023-08-03T11:01:58.9814864+08:00;True|2023-08-03T10:26:08.4681748+08:00;True|2023-08-02T20:33:35.0425049+08:00;True|2023-08-02T17:31:18.4675932+08:00;True|2023-08-02T16:04:16.8761862+08:00;True|2023-08-02T13:48:38.9129192+08:00;True|2023-08-02T13:45:00.6546267+08:00;True|2023-08-01T15:26:25.0389689+08:00;True|2023-08-01T14:08:10.9121758+08:00;True|2023-07-31T13:35:10.1220213+08:00;True|2023-07-31T09:20:11.2607880+08:00;True|2023-07-28T13:44:35.4317136+08:00;True|2023-07-27T10:40:46.5453757+08:00;True|2023-07-27T09:16:57.7421426+08:00;True|2023-07-26T17:10:56.0976913+08:00;True|2023-07-26T12:01:33.5766311+08:00;True|2023-07-25T18:07:38.5726960+08:00;True|2023-07-25T17:42:39.3625959+08:00;True|2023-07-25T17:04:09.8723273+08:00;True|2023-07-25T16:28:14.1819137+08:00;True|2023-07-24T14:11:28.2113907+08:00;True|2023-07-24T12:05:09.0376032+08:00;True|2023-07-24T09:36:39.6541522+08:00;True|2023-07-19T12:25:56.9887829+08:00;True|2023-07-17T13:00:04.0123733+08:00;True|2023-07-13T12:13:14.7927242+08:00;True|2023-07-13T11:46:24.1368807+08:00;True|2023-07-13T10:24:33.1684712+08:00;True|2023-06-26T11:38:29.6648988+08:00;True|2023-06-21T16:17:40.6226554+08:00;True|2023-06-21T13:30:18.8163322+08:00;True|2023-06-21T13:19:43.9290154+08:00;True|2023-06-21T11:35:28.3376504+08:00;</History> + <History>True|2024-05-15T05:42:09.6126744Z;True|2024-05-14T13:53:12.1723807+08:00;True|2024-05-11T15:05:20.5973067+08:00;True|2024-05-10T11:01:01.2440816+08:00;False|2024-05-10T10:59:59.6830545+08:00;True|2024-04-04T16:28:54.7974027+08:00;True|2024-04-04T11:28:14.8768964+08:00;True|2024-04-04T09:39:21.6552156+08:00;True|2024-03-11T16:36:41.1901368+08:00;True|2024-01-27T11:33:20.6165535+08:00;True|2024-01-18T15:02:34.3492480+08:00;True|2024-01-15T18:07:28.9717635+08:00;True|2024-01-13T18:33:12.9427731+08:00;True|2024-01-03T12:04:02.7753609+08:00;True|2024-01-03T11:08:38.0680764+08:00;True|2024-01-03T10:52:12.8371853+08:00;True|2024-01-03T10:03:29.0482464+08:00;True|2023-12-28T09:09:43.7988141+08:00;True|2023-12-26T11:51:52.4664582+08:00;True|2023-12-26T10:49:59.5124896+08:00;True|2023-12-26T10:10:53.5396234+08:00;True|2023-12-25T15:30:59.3409132+08:00;True|2023-12-25T15:26:43.1943347+08:00;True|2023-12-25T10:08:29.7964560+08:00;True|2023-12-21T10:30:55.0589855+08:00;True|2023-12-19T21:25:45.9098277+08:00;True|2023-12-16T12:52:46.7024463+08:00;True|2023-12-14T16:16:02.6188884+08:00;True|2023-12-14T16:03:53.1458158+08:00;True|2023-12-14T15:59:33.3947428+08:00;True|2023-12-14T15:53:09.8869780+08:00;True|2023-12-14T14:17:07.2707485+08:00;True|2023-12-14T11:49:15.9699053+08:00;False|2023-12-14T11:48:41.4121185+08:00;True|2023-12-13T17:28:38.2180193+08:00;True|2023-12-13T14:47:22.2493536+08:00;True|2023-12-13T14:31:45.6098784+08:00;True|2023-12-13T14:05:08.5014675+08:00;True|2023-12-13T14:01:37.7165974+08:00;True|2023-12-13T13:50:57.4832531+08:00;True|2023-12-13T13:20:55.2902900+08:00;True|2023-12-13T12:01:09.6397101+08:00;True|2023-12-13T11:53:51.3171154+08:00;True|2023-12-13T11:18:29.2505125+08:00;True|2023-12-13T09:48:22.2436154+08:00;True|2023-12-12T11:49:25.2723311+08:00;True|2023-12-11T14:05:58.1086840+08:00;True|2023-12-11T09:31:35.0365077+08:00;True|2023-12-05T18:00:29.7005601+08:00;True|2023-12-05T17:35:46.7846869+08:00;True|2023-12-05T17:29:36.5936716+08:00;True|2023-12-04T19:50:38.7216121+08:00;True|2023-12-02T14:06:28.8643257+08:00;True|2023-11-30T16:54:56.0879009+08:00;True|2023-11-30T15:49:27.5213126+08:00;True|2023-11-30T13:42:14.9061099+08:00;False|2023-11-30T13:41:50.2796105+08:00;False|2023-11-30T13:41:42.4700953+08:00;True|2023-11-30T10:23:50.6226599+08:00;True|2023-11-30T09:22:54.2133326+08:00;True|2023-11-29T16:32:53.3651373+08:00;True|2023-11-29T09:19:39.1127566+08:00;True|2023-11-28T17:25:14.9642204+08:00;True|2023-11-28T16:53:30.7550754+08:00;True|2023-11-28T09:57:02.3264015+08:00;True|2023-11-27T14:26:33.6153027+08:00;True|2023-11-27T13:33:46.1964012+08:00;True|2023-11-27T13:21:38.2133314+08:00;True|2023-11-24T14:12:06.2053905+08:00;True|2023-11-23T15:38:30.0872291+08:00;True|2023-11-15T19:27:36.4861114+08:00;True|2023-11-15T14:16:33.6004541+08:00;True|2023-11-15T14:02:06.1224051+08:00;True|2023-11-15T09:35:35.1770813+08:00;True|2023-11-10T14:06:46.1528992+08:00;True|2023-11-08T14:07:13.3792249+08:00;True|2023-11-08T13:58:21.2455396+08:00;True|2023-11-08T13:34:05.8131818+08:00;True|2023-11-08T11:58:01.9187650+08:00;True|2023-11-07T14:11:15.6278203+08:00;True|2023-11-07T14:05:43.3330586+08:00;True|2023-10-27T08:30:17.2959726+08:00;True|2023-10-27T08:23:59.8360129+08:00;True|2023-10-25T20:36:54.7517897+08:00;True|2023-10-24T23:27:01.1980187+08:00;True|2023-10-24T22:57:21.3872591+08:00;True|2023-10-17T09:26:15.4157626+08:00;True|2023-10-16T16:44:05.1411215+08:00;True|2023-10-10T14:24:00.3649304+08:00;True|2023-10-10T14:12:16.4050462+08:00;True|2023-10-10T13:43:17.4397783+08:00;True|2023-10-08T16:16:16.4721892+08:00;True|2023-10-08T14:27:40.6092129+08:00;True|2023-10-08T13:36:44.2969175+08:00;True|2023-10-08T13:21:21.1105671+08:00;True|2023-10-08T11:41:25.6876188+08:00;True|2023-10-08T09:39:46.1146411+08:00;True|2023-09-26T14:26:57.6168193+08:00;True|2023-09-21T13:54:19.1780900+08:00;True|2023-09-21T13:16:00.2957740+08:00;</History> + <LastFailureDetails /> </PropertyGroup> </Project> \ No newline at end of file diff --git a/IStation.Entry.SZJT/appsettings.json b/IStation.Entry.SZJT/appsettings.json index 496687f..c5cb768 100644 --- a/IStation.Entry.SZJT/appsettings.json +++ b/IStation.Entry.SZJT/appsettings.json @@ -1,20 +1,21 @@ { "AppSettings": { - "EnabledReferenceAssemblyScan": true, // 启用模块化程序集扫描 + "EnabledReferenceAssemblyScan": true, "SupportPackageNamePrefixs": [ "Yw.Application.Core", "Yw.Application.Basic.Core", "Yw.Application.Dict.Core", "Yw.Application.Unit.Core", - "Yw.Application.Monitor.Core", "Yw.Application.Assets.Core", + "Yw.Application.Monitor.Core", + "Yw.Application.MonitorRelation.Core", "Yw.Application.Repair.Core", - "Yw.Application.ArtImage.Core", "Yw.Application.Bimface.Core", "Yw.Application.Map.Core", "Yw.Application.DOCS.Core", - "Yw.Application.DMA.Core" - ] // 配置通过 NuGet 方式安装的模块化包 + "Yw.Application.DMA.Core", + "Yw.Application.Run.Core" + ] }, "Logging": { "LogLevel": { @@ -24,16 +25,20 @@ }, "AllowedHosts": "*", "IgnoreConfigurationFiles": [ - "paras_repair_settings.json", - "paras_monitor_settings.json", - "paras_dict_settings.json", - "paras_unit_settings.json", - "paras_basic_settings.json", "paras_memory_cache_settings.json", "paras_sqlsugar_settings.json", "paras_service_settings.json", + "paras_basic_settings.json", + "paras_unit_settings.json", + "paras_dict_settings.json", + "paras_assets_settings.json", + "paras_monitor_settings.json", + "paras_monitor_relation_settings.json", + "paras_repair_settings.json", "paras_map_settings.json", + "paras_docs_settings.json", "paras_bimface_settings.json", - "paras_dma_settings.json" + "paras_dma_settings.json", + "paras_run_settings.json" ] } diff --git a/IStation.Server.SZJT/0-helper/ConfigHelper.cs b/IStation.Server.SZJT/00-core/ConfigHelper.cs similarity index 100% rename from IStation.Server.SZJT/0-helper/ConfigHelper.cs rename to IStation.Server.SZJT/00-core/ConfigHelper.cs diff --git a/IStation.Server.SZJT/0-helper/IJobHelper.cs b/IStation.Server.SZJT/00-core/IJobHelper.cs similarity index 100% rename from IStation.Server.SZJT/0-helper/IJobHelper.cs rename to IStation.Server.SZJT/00-core/IJobHelper.cs diff --git a/IStation.Server.SZJT/0-helper/JobHelper.cs b/IStation.Server.SZJT/00-core/JobHelper.cs similarity index 91% rename from IStation.Server.SZJT/0-helper/JobHelper.cs rename to IStation.Server.SZJT/00-core/JobHelper.cs index ec4bd32..cb1c641 100644 --- a/IStation.Server.SZJT/0-helper/JobHelper.cs +++ b/IStation.Server.SZJT/00-core/JobHelper.cs @@ -7,7 +7,7 @@ { private List<IJobHelper> _jobHelpers = new List<IJobHelper>() { - new EquipmentRunAnalyServiceJobHelper() + }; /// <summary> diff --git a/IStation.Server.SZJT/1-equipment-run-analy/1-service/EquipmentRunAnalyServiceJob.cs b/IStation.Server.SZJT/1-equipment-run-analy/1-service/EquipmentRunAnalyServiceJob.cs deleted file mode 100644 index 13c6232..0000000 --- a/IStation.Server.SZJT/1-equipment-run-analy/1-service/EquipmentRunAnalyServiceJob.cs +++ /dev/null @@ -1,100 +0,0 @@ -锘縩amespace IStation.Server -{ - /// <summary> - /// 璁惧杩愯鍒嗘瀽鏈嶅姟浠诲姟 - /// </summary> - [DisallowConcurrentExecution] - public class EquipmentRunAnalyServiceJob : IJob - { - private static readonly List<EquipmentRunAnalySingleJobHelper> _jobHelpers = new List<EquipmentRunAnalySingleJobHelper>(); - - /// <summary> - /// - /// </summary> - public Task Execute(IJobExecutionContext context) - { - return Task.Run(async () => - { - try - { - #region 鍔犺浇閰嶇疆 - - var configureList = new Yw.Service.RunAnalyConfigure().GetAll(); - configureList = configureList?.Where(x => x.ObjectType == Yw.Assets.DataType.Equipment).ToList(); - if (configureList == null || configureList.Count < 1) - { - LogHelper.Error("璁惧杩愯鍒嗘瀽鏈嶅姟浠诲姟涓紝鏈绱㈠埌閰嶇疆淇℃伅"); - CancelJobs(); - return; - } - - - #endregion - - #region 寮�鍚换鍔� - - foreach (var configure in configureList) - { - var jobHelper = _jobHelpers.Find(x => x.Configure.ObjectType == configure.ObjectType - && x.Configure.ObjectID == configure.ObjectID - && x.Configure.ChangeTimes == configure.ChangeTimes - && x.Configure.Frequency == configure.Frequency); - if (jobHelper == null) - { - jobHelper = new EquipmentRunAnalySingleJobHelper(); - await jobHelper.StartJob(configure); - _jobHelpers.Add(jobHelper); - LogHelper.Info($"璁惧杩愯鍒嗘瀽鏈嶅姟浠诲姟涓�,鏁版嵁id:{configure.ObjectID},鏀瑰彉娆℃暟:{configure.ChangeTimes},鍒嗘瀽棰戠巼:{configure.Frequency},璁″垝浠诲姟寮�鍚紒"); - } - } - - #endregion - - #region 鍏抽棴浠诲姟 - - foreach (var jobHelper in _jobHelpers.ToList()) - { - var configure = configureList.Find(x => x.ObjectType == jobHelper.Configure.ObjectType - && x.ObjectID == jobHelper.Configure.ObjectID - && x.ChangeTimes == jobHelper.Configure.ChangeTimes - && x.Frequency == jobHelper.Configure.Frequency); - if (configure == null) - { - await jobHelper.CancelJob(); - _jobHelpers.Remove(jobHelper); - LogHelper.Info($"璁惧杩愯鍒嗘瀽鏈嶅姟浠诲姟涓紝,鏁版嵁id:{jobHelper.Configure.ObjectID},鏀瑰彉娆℃暟:{jobHelper.Configure.ChangeTimes},鍒嗘瀽棰戠巼:{jobHelper.Configure.Frequency},璁″垝浠诲姟鍏抽棴锛�"); - } - } - - #endregion - - - LogHelper.Info($"璁惧杩愯鍒嗘瀽鏈嶅姟浠诲姟涓紝寮�鍚换鍔℃暟閲忎负{_jobHelpers.Count}锛�"); - } - catch (Exception ex) - { - LogHelper.Error("璁惧杩愯鍒嗘瀽鏈嶅姟浠诲姟涓紝鎵ц鍑洪敊锛�", ex); - var e = new JobExecutionException(ex); - throw e; - } - }); - - - } - - /// <summary> - /// 鍙栨秷浠诲姟 - /// </summary> - public static void CancelJobs() - { - if (_jobHelpers != null && _jobHelpers.Count > 0) - { - _jobHelpers.ForEach(async x => await x.CancelJob()); - _jobHelpers.Clear(); - } - } - - - - } -} diff --git a/IStation.Server.SZJT/1-equipment-run-analy/1-service/EquipmentRunAnalyServiceJobHelper.cs b/IStation.Server.SZJT/1-equipment-run-analy/1-service/EquipmentRunAnalyServiceJobHelper.cs deleted file mode 100644 index 1e65b86..0000000 --- a/IStation.Server.SZJT/1-equipment-run-analy/1-service/EquipmentRunAnalyServiceJobHelper.cs +++ /dev/null @@ -1,65 +0,0 @@ -锘縩amespace IStation.Server -{ - /// <summary> - /// 璁惧杩愯鏈嶅姟浠诲姟杈呭姪绫� - /// </summary> - public class EquipmentRunAnalyServiceJobHelper : IJobHelper - { - private const string _jobName = "EquipmentRunAnalyServiceJobName"; - private const string _jobGroup = "EquipmentRunAnalyServiceJobGroup"; - private const string _triggerName = "EquipmentRunAnalyServiceJobTrigger"; - private static IScheduler _sched;//璋冨害鍣� - - - /// <summary> - /// 寮�濮嬩换鍔� - /// </summary> - public async Task StartJob() - { - if (_sched != null) - return; - - // 1.鍒涘缓scheduler鐨勫紩鐢� - var fac = new Quartz.Impl.StdSchedulerFactory(); - _sched = await fac.GetScheduler(); - - //2.鍚姩 scheduler - await _sched.Start(); - - //3.鍒涘缓浠诲姟 - var job = JobBuilder.Create<EquipmentRunAnalyServiceJob>() - .WithIdentity(_jobName, _jobGroup) - .Build(); - - //4.鍒涘缓Trigger - var trigger = TriggerBuilder.Create() - .WithIdentity(_triggerName, _jobGroup) - .WithSimpleSchedule(x => x.WithIntervalInMinutes(ConfigHelper.ResetFrequency) - .RepeatForever() - .WithMisfireHandlingInstructionNextWithRemainingCount()) - .Build(); - - //5.鍔犲叆璋冨害绠$悊鍣� - await _sched.ScheduleJob(job, trigger); - } - - /// <summary> - /// 鍙栨秷浠诲姟 - /// </summary> - public async Task CancelJob() - { - if (_sched == null) - return; - var triggerKey = new TriggerKey(_triggerName, _jobGroup); - if (await _sched.CheckExists(triggerKey)) - { - await _sched.UnscheduleJob(triggerKey); - } - EquipmentRunAnalyServiceJob.CancelJobs(); - } - - - - } - -} diff --git a/IStation.Server.SZJT/1-equipment-run-analy/2-single/EquipmentRunAnalyChangeTimesHelper.cs b/IStation.Server.SZJT/1-equipment-run-analy/2-single/EquipmentRunAnalyChangeTimesHelper.cs deleted file mode 100644 index f584335..0000000 --- a/IStation.Server.SZJT/1-equipment-run-analy/2-single/EquipmentRunAnalyChangeTimesHelper.cs +++ /dev/null @@ -1,57 +0,0 @@ -锘� - -namespace IStation.Server -{ - /// <summary> - /// - /// </summary> - public class EquipmentRunAnalyChangeTimesHelper - { - private static ConcurrentDictionary<long, List<Yw.Model.MonitorRealRecord>> _dict = new();//缂撳瓨 - - /// <summary> - /// 璁剧疆 - /// </summary> - public static void Set(long configureId, int changeTimes, Yw.Model.MonitorRealRecord record) - { - _dict.TryAdd(configureId, new List<Yw.Model.MonitorRealRecord>()); - if (_dict[configureId].Count >= changeTimes) - { - _dict[configureId].RemoveAt(0); - } - if (record != null) - { - _dict[configureId].Add(record); - } - } - - /// <summary> - /// 鏄惁鏀瑰彉 - /// </summary> - public static bool HasChanged(long configureId, int changeTimes) - { - if (!_dict.ContainsKey(configureId)) - { - return false; - } - if (_dict[configureId].Count < changeTimes) - { - return false; - } - if (_dict[configureId].Select(x => x.DataValue).Distinct().Count() > 1) - { - return false; - } - return true; - } - - - - - - - - - - } -} diff --git a/IStation.Server.SZJT/1-equipment-run-analy/2-single/EquipmentRunAnalySingleJob.cs b/IStation.Server.SZJT/1-equipment-run-analy/2-single/EquipmentRunAnalySingleJob.cs deleted file mode 100644 index 4faf816..0000000 --- a/IStation.Server.SZJT/1-equipment-run-analy/2-single/EquipmentRunAnalySingleJob.cs +++ /dev/null @@ -1,210 +0,0 @@ -锘縩amespace IStation.Server -{ - /// <summary> - /// 璁惧杩愯鍒嗘瀽鍗曚换鍔� - /// </summary> - [DisallowConcurrentExecution]//姝ょ壒鎬ф爣璇� 蹇呴』绛夊緟杩欐浠诲姟鎵ц瀹屾垚鍚庯紝鎵嶈兘鎵ц涓嬫浠诲姟 - public class EquipmentRunAnalySingleJob : IJob - { - - internal const string Instance = "Instance"; - - private Yw.Model.RunAnalyConfigure _configure; - - /// <summary> - /// - /// </summary> - public Task Execute(IJobExecutionContext context) - { - - return Task.Run(() => - { - try - { - #region 浠诲姟鏁版嵁 - - var dataMap = context.MergedJobDataMap; - var jobModel = (Yw.Model.RunAnalyConfigure)dataMap[Instance]; - if (jobModel == null) - { - LogHelper.Info($"璁惧杩愯鍒嗘瀽鍗曚换鍔′腑锛屼换鍔℃暟鎹紶杈撳け璐ワ紒"); - return; - } - var configure = jobModel; - _configure = configure; - - #endregion - - #region 鑾峰彇璁惧 - - var allEquipmentList = new Yw.Service.Equipment().GetChildAndSelfByID(configure.ObjectID); - if (allEquipmentList == null || allEquipmentList.Count < 1) - { - LogHelper.Info($"璁惧杩愯鍒嗘瀽鍗曚换鍔′腑锛岃澶噄d:{configure.ObjectID} 妫�绱㈣澶囧け璐ワ紒"); - return; - } - var allEquipmentIds = allEquipmentList.Select(x => x.ID).Distinct().ToList(); - #endregion - - #region 鑾峰彇娴嬬偣 - - var allMonitorMappingList = new Yw.Service.EquipmentMonitorMapping().GetByEquipmentIds(allEquipmentIds); - if (allMonitorMappingList == null || allMonitorMappingList.Count < 1) - { - LogHelper.Info($"璁惧杩愯鍒嗘瀽鍗曚换鍔′腑锛岃澶噄d:{configure.ObjectID} 妫�绱㈡祴鐐瑰叧鑱斿け璐ワ紒"); - return; - } - var allMonitorIds = allMonitorMappingList.Select(x => x.MonitorPointID).Distinct().ToList(); - var allMonitorList = new Yw.Service.MonitorPoint().GetExSignalWithSignalTypeByIds(allMonitorIds); - allMonitorList = allMonitorList?.Where(x => x.UseStatus == Yw.Model.eUseStatus.Enable).ToList(); - if (allMonitorList == null || allMonitorList.Count < 1) - { - LogHelper.Info($"璁惧杩愯鍒嗘瀽鍗曚换鍔′腑锛岃澶噄d:{configure.ObjectID} 妫�绱㈡祴鐐瑰け璐ワ紒"); - return; - } - - #endregion - - #region 杩愯娴嬬偣 - - var monitorList = allMonitorList.Where(x => x.SignalList.Exists(t => t.SignalType.Code == Yw.Monitor.SignalType.杩愯鐘舵��)).ToList(); - if (monitorList == null || monitorList.Count < 1) - { - LogHelper.Info($"璁惧杩愯鍒嗘瀽鍗曚换鍔′腑锛岃澶噄d:{configure.ObjectID} 妫�绱㈣繍琛岀姸鎬佹祴鐐瑰け璐ワ紒"); - return; - } - var monitor = monitorList.Find(x => x.Flags.Contains(IStation.Flags.榛樿)); - if (monitor == null) - { - monitor = monitorList.First(); - } - - - #endregion - - #region 杩炵画缂撳瓨 - - var lastRecord = new Yw.Service.MonitorRealRecord().GetLastRecord(monitor.SignalList.First().ID); - EquipmentRunAnalyChangeTimesHelper.Set(configure.ID, configure.ChangeTimes, lastRecord); - - #endregion - - #region 鏁版嵁鍒嗘瀽 - - var run_record = new Yw.Model.RunRealRecord() - { - ObjectType = configure.ObjectType, - ObjectID = configure.ObjectID, - DataTime = DateTime.Now, - RSa = Yw.Run.RunStatus.Stop, - ContinueRunTime = 0, - TotalRunTime = 0, - BootTimes = 0, - AnalyStatus = Yw.Run.AnalyStatus.Normal, - AnalyInfo = null - }; - - var lastRunRecord = new Yw.Service.RunRealRecord().GetLastRecord(configure.ObjectType, configure.ObjectID); - if (lastRunRecord == null) - { - run_record.AnalyInfo = "棣栨鍒嗘瀽"; - if (lastRecord == null) - { - run_record.AnalyStatus = Yw.Run.AnalyStatus.Missing; - } - else - { - if (double.TryParse(lastRecord.DataValue, out double outDataValue)) - { - if (outDataValue > 0) - { - run_record.RSa = Yw.Run.RunStatus.Run; - run_record.ContinueRunTime += configure.Frequency; - run_record.TotalRunTime += configure.Frequency; - run_record.BootTimes += 1; - } - } - else - { - run_record.AnalyStatus = Yw.Run.AnalyStatus.Abnormal; - } - } - } - else - { - run_record.RSa = lastRunRecord.RSa; - run_record.ContinueRunTime = lastRunRecord.ContinueRunTime; - run_record.TotalRunTime = lastRunRecord.TotalRunTime; - run_record.BootTimes = lastRunRecord.BootTimes; - if (lastRecord == null) - { - run_record.AnalyStatus = Yw.Run.AnalyStatus.Missing; - } - else - { - if (double.TryParse(lastRecord.DataValue, out double outDataValue)) - { - var run_status = outDataValue > 0 ? Yw.Run.RunStatus.Run : Yw.Run.RunStatus.Stop; - if (run_status != run_record.RSa) - { - if (EquipmentRunAnalyChangeTimesHelper.HasChanged(configure.ID, configure.ChangeTimes)) - { - run_record.RSa = run_status; - if (run_status == Yw.Run.RunStatus.Run) - { - run_record.BootTimes += 1; - } - if (run_record.RSa == Yw.Run.RunStatus.Stop) - { - run_record.ContinueRunTime = 0; - } - } - } - } - else - { - run_record.AnalyStatus = Yw.Run.AnalyStatus.Abnormal; - } - } - if (run_record.RSa == Yw.Run.RunStatus.Run) - { - run_record.TotalRunTime += configure.Frequency; - run_record.ContinueRunTime += configure.Frequency; - } - } - - #endregion - - #region 鏁版嵁瀛樺偍 - - var bol = new Yw.Service.RunRealRecord().InsertLastRecord(run_record); - if (bol) - { - LogHelper.Info($"璁惧杩愯鍒嗘瀽鍗曚换鍔′腑锛岃澶噄d:{configure.ObjectID} 杩愯璁板綍鍒嗘瀽鎴愬姛锛�"); - } - else - { - LogHelper.Info($"璁惧杩愯鍒嗘瀽鍗曚换鍔′腑锛岃澶噄d:{configure.ObjectID} 杩愯璁板綍淇濆瓨澶辫触锛�"); - } - - #endregion - } - catch (Exception ex) - { - LogHelper.Error($"璁惧杩愯鍒嗘瀽鍗曚换鍔′腑锛� 鏁版嵁id:{_configure.ObjectID}, 鎵ц鍑洪敊", ex); - var e = new JobExecutionException(ex); - throw e; - } - - }); - - - } - - - - - - - } -} diff --git a/IStation.Server.SZJT/1-equipment-run-analy/2-single/EquipmentRunAnalySingleJobHelper.cs b/IStation.Server.SZJT/1-equipment-run-analy/2-single/EquipmentRunAnalySingleJobHelper.cs deleted file mode 100644 index bcc4cfe..0000000 --- a/IStation.Server.SZJT/1-equipment-run-analy/2-single/EquipmentRunAnalySingleJobHelper.cs +++ /dev/null @@ -1,73 +0,0 @@ -锘縩amespace IStation.Server -{ - /// <summary> - /// 璁惧杩愯鍒嗘瀽鍗曚换鍔¤緟鍔╃被 - /// </summary> - public class EquipmentRunAnalySingleJobHelper - { - private IScheduler _sched;//璋冨害鍣� - - /// <summary> - /// 閰嶇疆 - /// </summary> - public Yw.Model.RunAnalyConfigure Configure { get; set; } - - /// <summary> - /// 寮�濮嬩换鍔� - /// </summary> - public async Task StartJob(Yw.Model.RunAnalyConfigure configure) - { - if (_sched != null) - { - return; - } - this.Configure = configure; - - var jobName = EquipmentRunAnalySingleJobNameHelper.GetJobName(configure); - var jobGroupName = EquipmentRunAnalySingleJobNameHelper.GetJobGroupName(configure); - var triggerName = EquipmentRunAnalySingleJobNameHelper.GetTriggerName(configure); - - // 1.鍒涘缓scheduler鐨勫紩鐢� - var fac = new Quartz.Impl.StdSchedulerFactory(); - _sched = await fac.GetScheduler(); - - //2.鍚姩 scheduler - await _sched.Start(); - - //3.鍒涘缓浠诲姟 - var job = JobBuilder.Create<EquipmentRunAnalySingleJob>() - .WithIdentity(jobName, jobGroupName) - .Build(); - job.JobDataMap.Put(EquipmentRunAnalySingleJob.Instance, configure); - - //4.鍒涘缓Trigger - var trigger = TriggerBuilder.Create() - .WithIdentity(triggerName, jobGroupName) - .WithSimpleSchedule(x => x.WithIntervalInSeconds(configure.Frequency) - .RepeatForever().WithMisfireHandlingInstructionNextWithRemainingCount()) - .Build(); - - //5.鍔犲叆璋冨害绠$悊鍣� - await _sched.ScheduleJob(job, trigger); - } - - /// <summary> - /// 鍙栨秷浠诲姟 - /// </summary> - public async Task CancelJob() - { - if (_sched == null) - return; - var jobGroupName = EquipmentRunAnalySingleJobNameHelper.GetJobGroupName(this.Configure); - var triggerName = EquipmentRunAnalySingleJobNameHelper.GetTriggerName(this.Configure); - var triggerKey = new TriggerKey(triggerName, jobGroupName); - if (await _sched.CheckExists(triggerKey)) - { - await _sched.UnscheduleJob(triggerKey); - } - } - - - - } -} diff --git a/IStation.Server.SZJT/1-equipment-run-analy/2-single/EquipmentRunAnalySingleJobNameHelper.cs b/IStation.Server.SZJT/1-equipment-run-analy/2-single/EquipmentRunAnalySingleJobNameHelper.cs deleted file mode 100644 index 0cf1979..0000000 --- a/IStation.Server.SZJT/1-equipment-run-analy/2-single/EquipmentRunAnalySingleJobNameHelper.cs +++ /dev/null @@ -1,37 +0,0 @@ -锘縩amespace IStation.Server -{ - /// <summary> - /// 璁惧杩愯鍗曚换鍔″悕绉拌緟鍔╃被 - /// </summary> - public class EquipmentRunAnalySingleJobNameHelper - { - private const string _jobNameHeader = "EquipmentRunAnalySingleJobName"; - private const string _jobGroupHeader = "EquipmentRunAnalySingleJobGroup"; - private const string _triggerNameHeader = "EquipmentRunAnalySingleJobTrigger"; - - /// <summary> - /// 鑾峰彇浠诲姟鍚嶇О - /// </summary> - public static string GetJobName(Yw.Model.RunAnalyConfigure rhs) - { - return $"{_jobNameHeader}_{rhs.ID}"; - } - - /// <summary> - /// 鑾峰彇浠诲姟缁勫悕绉� - /// </summary> - public static string GetJobGroupName(Yw.Model.RunAnalyConfigure rhs) - { - return $"{_jobGroupHeader}_{rhs.ID}"; - } - - /// <summary> - /// 鑾峰彇瑙﹀彂鍣ㄥ悕绉� - /// </summary> - public static string GetTriggerName(Yw.Model.RunAnalyConfigure rhs) - { - return $"{_triggerNameHeader}_{rhs.ID}"; - } - - } -} diff --git a/IStation.Server.SZJT/IStation.Server.SZJT.csproj b/IStation.Server.SZJT/IStation.Server.SZJT.csproj index 99b09fe..108a562 100644 --- a/IStation.Server.SZJT/IStation.Server.SZJT.csproj +++ b/IStation.Server.SZJT/IStation.Server.SZJT.csproj @@ -9,7 +9,7 @@ <ItemGroup> <PackageReference Include="Yw.Quartz.Core" Version="3.0.0" /> - <PackageReference Include="Yw.Service.Run.Core" Version="3.0.1" /> + <PackageReference Include="Yw.Service.Run.Core" Version="3.0.7" /> </ItemGroup> <ItemGroup> diff --git a/IStation.Service.SZJT/IStation.Service.SZJT.csproj b/IStation.Service.SZJT/IStation.Service.SZJT.csproj index 8bb926d..a5d77ad 100644 --- a/IStation.Service.SZJT/IStation.Service.SZJT.csproj +++ b/IStation.Service.SZJT/IStation.Service.SZJT.csproj @@ -17,6 +17,11 @@ </ItemGroup> <ItemGroup> + <PackageReference Include="Yw.DAL.PostgreSql.Core" Version="3.0.2" /> + <PackageReference Include="Yw.Service.Core" Version="3.0.2" /> + </ItemGroup> + + <ItemGroup> <Content Update="C:\Users\admin\.nuget\packages\yw.service.assets.core\1.0.0\contentFiles\any\net6.0\paras_assets_settings.json"> <CopyToOutputDirectory>Always</CopyToOutputDirectory> </Content> @@ -35,12 +40,6 @@ <Content Update="C:\Users\admin\.nuget\packages\yw.service.unit.core\1.0.0\contentFiles\any\net6.0\paras_unit_settings.json"> <CopyToOutputDirectory>Always</CopyToOutputDirectory> </Content> - </ItemGroup> - - <ItemGroup> - <PackageReference Include="Yw.Service.Assets.Core" Version="3.0.5" /> - <PackageReference Include="Yw.Service.Basic.Core" Version="3.0.3" /> - <PackageReference Include="Yw.Service.Monitor.Core" Version="3.0.5" /> </ItemGroup> </Project> diff --git a/IStation.WebApi.SZJT/Filters/ActionFilter.cs b/IStation.WebApi.SZJT/Filters/ActionFilter.cs index c12b055..dcd5bc7 100644 --- a/IStation.WebApi.SZJT/Filters/ActionFilter.cs +++ b/IStation.WebApi.SZJT/Filters/ActionFilter.cs @@ -16,7 +16,7 @@ /// <returns></returns> public async Task OnActionExecutionAsync(ActionExecutingContext context, ActionExecutionDelegate next) { - LogHelper.Info(context.HttpContext.Request.Path); + LogHelper.Info($"ActionFilter:{context.HttpContext.Request.Path}"); await next(); } diff --git a/IStation.WebApi.SZJT/Filters/AuthorizationFilter.cs b/IStation.WebApi.SZJT/Filters/AuthorizationFilter.cs index 1abe9df..bc3be63 100644 --- a/IStation.WebApi.SZJT/Filters/AuthorizationFilter.cs +++ b/IStation.WebApi.SZJT/Filters/AuthorizationFilter.cs @@ -20,7 +20,7 @@ /// <returns></returns> public async Task OnAuthorizationAsync(AuthorizationFilterContext context) { - await Task.Run(() => LogHelper.Info(context.HttpContext.Request.Path)); + await Task.Run(() => LogHelper.Info($"AuthorizationFilter:{context.HttpContext.Request.Path}")); } } diff --git a/IStation.WebApi.SZJT/Filters/ResultFilter.cs b/IStation.WebApi.SZJT/Filters/ResultFilter.cs index 8aa49ec..f86b3fd 100644 --- a/IStation.WebApi.SZJT/Filters/ResultFilter.cs +++ b/IStation.WebApi.SZJT/Filters/ResultFilter.cs @@ -17,7 +17,7 @@ /// <returns></returns> public async Task OnResultExecutionAsync(ResultExecutingContext context, ResultExecutionDelegate next) { - LogHelper.Info(context.HttpContext.Request.Path); + LogHelper.Info($"ResultFilter:{context.HttpContext.Request.Path}"); await next(); } } diff --git a/IStation.WebApi.SZJT/Handlers/JwtHandler.cs b/IStation.WebApi.SZJT/Handlers/JwtHandler.cs index ff633f9..6b8a7ca 100644 --- a/IStation.WebApi.SZJT/Handlers/JwtHandler.cs +++ b/IStation.WebApi.SZJT/Handlers/JwtHandler.cs @@ -2,7 +2,7 @@ using Furion.DataEncryption; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; - +using Yw.JWT; namespace IStation.WebApi { @@ -42,6 +42,19 @@ // 姝ゅ宸茬粡鑷姩楠岃瘉 Jwt token鐨勬湁鏁堟�т簡锛屾棤闇�鎵嬪姩楠岃瘉 // 妫�鏌ユ潈闄愶紝濡傛灉鏂规硶鏄紓姝ョ殑灏变笉鐢� Task.FromResult 鍖呰9锛岀洿鎺ヤ娇鐢� async/await 鍗冲彲 + + Yw.Untity.UserRegister.Regist + ( + UserManager.CorpID, + UserManager.UserID, + UserManager.AdminType, + UserManager.UserName, + UserManager.UserTag, + UserManager.LoginAccountID, + UserManager.LoginTypeID, + UserManager.ProjectID, + UserManager.SoftwareID + ); return Task.FromResult(CheckAuthorzie(httpContext)); } @@ -58,5 +71,7 @@ return true; return true; } + + } } \ No newline at end of file diff --git a/IStation.WebApi.SZJT/Result/XnRestfulResultProvider.cs b/IStation.WebApi.SZJT/Result/XnRestfulResultProvider.cs index ccaba95..be2be76 100644 --- a/IStation.WebApi.SZJT/Result/XnRestfulResultProvider.cs +++ b/IStation.WebApi.SZJT/Result/XnRestfulResultProvider.cs @@ -10,6 +10,8 @@ using Yw.Untity; using Yw.Application; using Yw.Dto; +using System.Text.Json.Serialization; +using System.Text.Json; namespace IStation.WebApi { @@ -134,7 +136,13 @@ { // 璁剧疆鍝嶅簲鐘舵�佺爜 UnifyContext.SetResponseStatusCodes(context, statusCode, unifyResultSettings); - + var options = new JsonSerializerOptions(); + options.PropertyNamingPolicy = null; //杩斿洖灞炴�уぇ灏忓啓闂 + options.ReferenceHandler = ReferenceHandler.IgnoreCycles; //蹇界暐寰幆寮曠敤 浠�.NET 6鏀寔 + options.Converters.Add(new DateTimeJsonConverter());//鏃堕棿鏍煎紡澶勭悊 + options.Converters.Add(new DateTimeNullableJsonConverter());//鏃堕棿鏍煎紡澶勭悊 + options.Converters.Add(new LongJsonConverter());//闀挎暣鍨嬫牸寮忓鐞� + options.Converters.Add(new LongNullableJsonConverter());//闀挎暣鍨嬫牸寮忓鐞� if (Enum.IsDefined(typeof(HttpStatusCode), (HttpStatusCode)statusCode)) { await context.Response.WriteAsJsonAsync(new Result<object> @@ -145,7 +153,7 @@ Data = null, Extras = UnifyContext.Take(), Timestamp = DateTime.Now - }); + }, options); } } } -- Gitblit v1.9.3