From dc6e8634e86c7f09adc412e2176fbf8c591b32c2 Mon Sep 17 00:00:00 2001
From: lixiaojun <1287241240@qq.com>
Date: 星期六, 27 一月 2024 12:12:01 +0800
Subject: [PATCH] 业务代码

---
 IStation.Entry.SZJT/Properties/PublishProfiles/FolderProfile.pubxml.user                                        |    2 
 IStation.Application.SZJT/99-logic/04-station-list/StationList_LogicController.cs                               |   51 ++++++--
 IStation.Service.SZJT/IStation.Service.SZJT.csproj                                                              |    2 
 IStation.Entry.SZJT/IStation.Entry.SZJT.csproj                                                                  |   22 +-
 IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/StationStatistics_MobileController.cs        |  110 ++++++++++++++++++
 IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/dto/StationStatisticsDayRecordMobileDto.cs   |   23 +++
 IStation.Application.SZJT/IStation.Application.SZJT.csproj                                                      |   14 +-
 IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/dto/StationStatisticsMonthRecordMobileDto.cs |   42 +++++++
 IStation.Application.SZJT/99-logic/03-station-panel/StationPanel_LogicController.cs                             |   61 +++++++---
 IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/dto/StationStatisticsDayParasMobileDto.cs    |   23 +++
 10 files changed, 297 insertions(+), 53 deletions(-)

diff --git a/IStation.Application.SZJT/99-logic/03-station-panel/StationPanel_LogicController.cs b/IStation.Application.SZJT/99-logic/03-station-panel/StationPanel_LogicController.cs
index 7b2995b..9a2b83a 100644
--- a/IStation.Application.SZJT/99-logic/03-station-panel/StationPanel_LogicController.cs
+++ b/IStation.Application.SZJT/99-logic/03-station-panel/StationPanel_LogicController.cs
@@ -15,44 +15,67 @@
         [HttpGet]
         public List<StationPanelMonitorKpiInfoDto> GetMonitorKpiList(int Count = 4)
         {
-            var allStationList = new Service.LogicSite().GetAll();
+            #region 鏈嶅姟鍑嗗
+
+            var service_logic_site = new Lazy<Service.LogicSite>(() => new Service.LogicSite());
+            var service_equipment_group = new Lazy<Yw.Service.EquipmentGroup>(() => new Yw.Service.EquipmentGroup());
+            var service_equipment = new Lazy<Yw.Service.Equipment>(() => new Yw.Service.Equipment());
+            var service_monitor_group = new Lazy<Yw.Service.MonitorPointGroup>(() => new Yw.Service.MonitorPointGroup());
+            var service_monitor = new Lazy<Yw.Service.MonitorPoint>(() => new Yw.Service.MonitorPoint());
+            var service_signal = new Lazy<Yw.Service.Signal>(() => new Yw.Service.Signal());
+            var service_monitor_record = new Lazy<Yw.Service.MonitorRealRecord>(() => new Yw.Service.MonitorRealRecord());
+            var service_run_record = new Lazy<Yw.Service.RunRealRecord>(() => new Yw.Service.RunRealRecord());
+
+            #endregion
+
+            #region 鑾峰彇鎵�鏈夋车绔�
+
+            var allStationList = service_logic_site.Value.GetAll();
             if (allStationList == null || allStationList.Count < 1)
             {
                 return default;
             }
-            var serviceMonitor = new Yw.Service.MonitorPoint();
-            var serviceMonitorRecord = new Yw.Service.MonitorRealRecord();
-            var serviceEquipment = new Yw.Service.Equipment();
-            var serviceRunRecord = new Yw.Service.RunRealRecord();
+
+            #endregion
+
             var vmList = new List<StationPanelMonitorKpiInfoDto>();
             foreach (var station in allStationList)
             {
                 var vm = new StationPanelMonitorKpiInfoDto(station);
                 vmList.Add(vm);
-                var allMonitorList = serviceMonitor.GetExSignalWithSignalTypeByBelongTypeAndBelongID(IStation.DataType.LogicSite, station.ID);
-                allMonitorList = allMonitorList?.Where(x => x.CronType == Yw.Monitor.eCronType.Real).ToList();
-                if (allMonitorList != null && allMonitorList.Count > 0)
+
+                var monitorList = service_monitor.Value.GetExSignalWithSignalTypeByBelongTypeAndBelongID(IStation.DataType.LogicSite, station.ID, Yw.Monitor.eCronType.Real);
+                monitorList = monitorList?.Where(x => x.UseStatus == Yw.Model.eUseStatus.Enable).ToList();
+                if (monitorList != null && monitorList.Count > 0)
                 {
-                    allMonitorList = allMonitorList.Where(x => x.Flags.Contains(Flags.KPI)).OrderByDescending(X => X.Importance).ToList();
-                    if (allMonitorList.Count > 0)
+                    monitorList = monitorList.Where(x => x.Flags.Contains(Flags.KPI)).OrderByDescending(X => X.Importance).ToList();
+                    if (monitorList.Count > 0)
                     {
-                        allMonitorList = allMonitorList.Take(Count).ToList();
-                        foreach (var monitor in allMonitorList)
+                        monitorList = monitorList.Take(Count).ToList();
+                        foreach (var monitor in monitorList)
                         {
-                            var monitorRecord = serviceMonitorRecord.GetLastRecord(monitor.SignalList.First().ID);
+                            var monitorRecord = service_monitor_record.Value.GetLastRecord(monitor.SignalList.First().ID);
                             vm.LastRecordList.Add(new StationPanelMonitorKpiLastRecordDto(monitor, monitorRecord));
                         }
                     }
                 }
 
-                var allEquipmentList = serviceEquipment.GetByBelongTypeAndBelongID(IStation.DataType.LogicSite, station.ID);
-                allEquipmentList = allEquipmentList?.Where(x => x.ParentIds.Count < 1).ToList();
-                if (allEquipmentList != null && allEquipmentList.Count > 0)
+                var equipmentGroupList = service_equipment_group.Value.GetByBelongTypeAndBelongID(IStation.DataType.LogicSite, station.ID);
+                if (equipmentGroupList != null && equipmentGroupList.Count > 0)
                 {
-                    foreach (var equipment in allEquipmentList)
+                    var equipmentGroup = equipmentGroupList.Find(x => x.Flags.Contains(IStation.Flags.鏈虹粍));
+                    if (equipmentGroup != null)
                     {
-                        var runRecord = serviceRunRecord.GetLastRecord(Yw.Assets.DataType.Equipment, equipment.ID);
-                        vm.LastStatusList.Add(new StationPanelMonitorKpiLastStatusDto(equipment, runRecord));
+                        var equipmentList = service_equipment.Value.GetByGroupID(equipmentGroup.ID);
+                        equipmentList = equipmentList?.Where(x => x.ParentIds.Count < 1).ToList();
+                        if (equipmentList != null && equipmentList.Count > 0)
+                        {
+                            foreach (var equipment in equipmentList)
+                            {
+                                var runRecord = service_run_record.Value.GetLastRecord(Yw.Assets.DataType.Equipment, equipment.ID);
+                                vm.LastStatusList.Add(new StationPanelMonitorKpiLastStatusDto(equipment, runRecord));
+                            }
+                        }
                     }
                 }
             }
diff --git a/IStation.Application.SZJT/99-logic/04-station-list/StationList_LogicController.cs b/IStation.Application.SZJT/99-logic/04-station-list/StationList_LogicController.cs
index 2103346..9dac7ff 100644
--- a/IStation.Application.SZJT/99-logic/04-station-list/StationList_LogicController.cs
+++ b/IStation.Application.SZJT/99-logic/04-station-list/StationList_LogicController.cs
@@ -15,22 +15,37 @@
         [HttpGet]
         public List<StationListMonitorKpiInfoDto> GetMonitorKpiList(int Count = 4)
         {
-            var allStationList = new Service.LogicSite().GetAll();
+            #region 鏈嶅姟鍑嗗
+
+            var service_logic_site = new Lazy<Service.LogicSite>(() => new Service.LogicSite());
+            var service_equipment_group = new Lazy<Yw.Service.EquipmentGroup>(() => new Yw.Service.EquipmentGroup());
+            var service_equipment = new Lazy<Yw.Service.Equipment>(() => new Yw.Service.Equipment());
+            var service_monitor_group = new Lazy<Yw.Service.MonitorPointGroup>(() => new Yw.Service.MonitorPointGroup());
+            var service_monitor = new Lazy<Yw.Service.MonitorPoint>(() => new Yw.Service.MonitorPoint());
+            var service_signal = new Lazy<Yw.Service.Signal>(() => new Yw.Service.Signal());
+            var service_monitor_record = new Lazy<Yw.Service.MonitorRealRecord>(() => new Yw.Service.MonitorRealRecord());
+            var service_run_record = new Lazy<Yw.Service.RunRealRecord>(() => new Yw.Service.RunRealRecord());
+
+            #endregion
+
+            #region 鑾峰彇鎵�鏈夋车绔�
+
+            var allStationList = service_logic_site.Value.GetAll();
             if (allStationList == null || allStationList.Count < 1)
             {
                 return default;
             }
-            var serviceMonitor = new Yw.Service.MonitorPoint();
-            var serviceMonitorRecord = new Yw.Service.MonitorRealRecord();
-            var serviceEquipment = new Yw.Service.Equipment();
-            var serviceRunRecord = new Yw.Service.RunRealRecord();
+
+            #endregion
+
             var vmList = new List<StationListMonitorKpiInfoDto>();
             foreach (var station in allStationList)
             {
                 var vm = new StationListMonitorKpiInfoDto(station);
                 vmList.Add(vm);
-                var allMonitorList = serviceMonitor.GetExSignalWithSignalTypeByBelongTypeAndBelongID(IStation.DataType.LogicSite, station.ID);
-                allMonitorList = allMonitorList?.Where(x => x.CronType == Yw.Monitor.eCronType.Real).ToList();
+
+                var allMonitorList = service_monitor.Value.GetExSignalWithSignalTypeByBelongTypeAndBelongID(IStation.DataType.LogicSite, station.ID, Yw.Monitor.eCronType.Real);
+                allMonitorList = allMonitorList?.Where(x => x.UseStatus == Yw.Model.eUseStatus.Enable).ToList();
                 if (allMonitorList != null && allMonitorList.Count > 0)
                 {
                     allMonitorList = allMonitorList.Where(x => x.Flags.Contains(Flags.KPI)).OrderByDescending(X => X.Importance).ToList();
@@ -39,20 +54,28 @@
                         allMonitorList = allMonitorList.Take(Count).ToList();
                         foreach (var monitor in allMonitorList)
                         {
-                            var monitorRecord = serviceMonitorRecord.GetLastRecord(monitor.SignalList.First().ID);
+                            var monitorRecord = service_monitor_record.Value.GetLastRecord(monitor.SignalList.First().ID);
                             vm.LastRecordList.Add(new StationListMonitorKpiLastRecordDto(monitor, monitorRecord));
                         }
                     }
                 }
 
-                var allEquipmentList = serviceEquipment.GetByBelongTypeAndBelongID(IStation.DataType.LogicSite, station.ID);
-                allEquipmentList = allEquipmentList?.Where(x => x.ParentIds.Count < 1).ToList();
-                if (allEquipmentList != null && allEquipmentList.Count > 0)
+                var equipmentGroupList = service_equipment_group.Value.GetByBelongTypeAndBelongID(IStation.DataType.LogicSite, station.ID);
+                if (equipmentGroupList != null && equipmentGroupList.Count > 0)
                 {
-                    foreach (var equipment in allEquipmentList)
+                    var equipmentGroup = equipmentGroupList.Find(x => x.Flags.Contains(IStation.Flags.鏈虹粍));
+                    if (equipmentGroup != null)
                     {
-                        var runRecord = serviceRunRecord.GetLastRecord(Yw.Assets.DataType.Equipment, equipment.ID);
-                        vm.LastStatusList.Add(new StationListMonitorKpiLastStatusDto(equipment, runRecord));
+                        var equipmentList = service_equipment.Value.GetByGroupID(equipmentGroup.ID);
+                        equipmentList = equipmentList?.Where(x => x.ParentIds.Count < 1).ToList();
+                        if (equipmentList != null && equipmentList.Count > 0)
+                        {
+                            foreach (var equipment in equipmentList)
+                            {
+                                var runRecord = service_run_record.Value.GetLastRecord(Yw.Assets.DataType.Equipment, equipment.ID);
+                                vm.LastStatusList.Add(new StationListMonitorKpiLastStatusDto(equipment, runRecord));
+                            }
+                        }
                     }
                 }
             }
diff --git a/IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/StationStatistics_MobileController.cs b/IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/StationStatistics_MobileController.cs
new file mode 100644
index 0000000..2f1493c
--- /dev/null
+++ b/IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/StationStatistics_MobileController.cs
@@ -0,0 +1,110 @@
+锘縩amespace IStation.Application
+{
+    /// <summary>
+    /// StationStatistics
+    /// </summary>
+    [Route("SZJT/Station/Statistics/Mobile")]
+    [ApiDescriptionSettings("SZJT", Name = "娉电珯缁熻(鎵嬫満)", Order = 1300)]
+    public class StationStatistics_MobileController : IDynamicApiController
+    {
+
+        /// <summary>
+        /// 鑾峰彇鍗曟湀缁熻璁板綍
+        /// </summary>
+        [Route("GetSingleMonthStatisticsInfo")]
+        [HttpGet]
+        public StationStatisticsMonthRecordMobileDto GetSingleMonthStatisticsInfo(long StationID, int Year, int Month)
+        {
+            var keyContent = $"SZJT_Station_Statistics_Mobile_GetSingleMonthStatisticsInfo_{StationID}_{Year}_{Month}";
+            var cacheKey = MemoryCacheKeyHelper.GetKey(MemoryCacheKey.WebApiLevel, MemoryCacheKey.Module, keyContent);
+
+            var vm_list = MemoryCacheHelper.GetSet(cacheKey, () =>
+            {
+                var allMonitorList = new Yw.Service.MonitorPoint().GetExSignalWithSignalTypeByBelongTypeAndBelongID(IStation.DataType.LogicSite, StationID);
+                Yw.Service.MonitorPoint.PublishCache(cacheKey);
+                if (allMonitorList == null || allMonitorList.Count < 1)
+                {
+                    return default;
+                }
+
+                var startTime = new DateTime(Year, Month, 1);
+                var endTime = startTime.AddMonths(1);
+
+                var monthRecord = new StationStatisticsMonthRecordMobileDto();
+                for (DateTime dt = startTime.Date; dt < endTime.Date; dt = dt.AddDays(1))
+                {
+                    var dayRecord = new StationStatisticsDayRecordMobileDto();
+                    dayRecord.Day = dt;
+                    dayRecord.Ws = null;
+                    dayRecord.Ed = null;
+                    monthRecord.DayRecords.Add(dayRecord);
+                }
+
+                var serviceRecord = new Yw.Service.MonitorRealRecord();
+                var monitor_ws = allMonitorList.Find(x => x.SignalList.Exists(t => t.SignalType.Code == Yw.Monitor.SignalType.绱Н娴侀噺));
+                if (monitor_ws != null)
+                {
+
+                    var ws_list = serviceRecord.GetLimitBySignalIDOfTimeRange(monitor_ws.SignalList.First().ID, startTime, endTime, 3600);
+                    if (ws_list != null && ws_list.Count > 0)
+                    {
+                        var first = ws_list.First();
+                        var last = ws_list.Last();
+                        if (double.TryParse(first.DataValue, out double firstDataValue) && double.TryParse(last.DataValue, out double lastDataValue))
+                        {
+                            monthRecord.Ws = Math.Round(lastDataValue - firstDataValue, 2);
+                        }
+                        foreach (var dayRecord in monthRecord.DayRecords)
+                        {
+                            var ws_day_list = ws_list.Where(x => x.DataTime >= dayRecord.Day.Date && x.DataTime < dayRecord.Day.AddDays(1).Date && x.DataStatus.Count < 1).ToList();
+                            if (ws_day_list != null && ws_day_list.Count > 0)
+                            {
+                                var firstDay = ws_day_list.First();
+                                var lastDay = ws_day_list.Last();
+                                if (double.TryParse(firstDay.DataValue, out double firstDayDataValue) && double.TryParse(lastDay.DataValue, out double lastDayDataValue))
+                                {
+                                    dayRecord.Ws = Math.Round(lastDayDataValue - firstDayDataValue, 2);
+                                }
+                            }
+                        }
+                    }
+                }
+
+                var monitor_ed = allMonitorList.Find(x => x.SignalList.Exists(t => t.SignalType.Code == Yw.Monitor.SignalType.鏈夊姛鐢靛害));
+                if (monitor_ed != null)
+                {
+                    var ed_list = serviceRecord.GetLimitBySignalIDOfTimeRange(monitor_ed.SignalList.First().ID, startTime, endTime, 3600);
+                    if (ed_list != null && ed_list.Count > 0)
+                    {
+                        var first = ed_list.First();
+                        var last = ed_list.Last();
+                        if (double.TryParse(first.DataValue, out double firstDataValue) && double.TryParse(last.DataValue, out double lastDataValue))
+                        {
+                            monthRecord.Ed = Math.Round(lastDataValue - firstDataValue, 2);
+                        }
+                        foreach (var dayRecord in monthRecord.DayRecords)
+                        {
+                            var ed_day_list = ed_list.Where(x => x.DataTime >= dayRecord.Day.Date && x.DataTime < dayRecord.Day.AddDays(1).Date).ToList();
+                            if (ed_day_list != null && ed_day_list.Count > 0)
+                            {
+                                var firstDay = ed_day_list.First();
+                                var lastDay = ed_day_list.Last();
+                                if (double.TryParse(firstDay.DataValue, out double firstDayDataValue) && double.TryParse(lastDay.DataValue, out double lastDayDataValue))
+                                {
+                                    dayRecord.Ed = Math.Round(lastDayDataValue - firstDayDataValue, 2);
+                                }
+                            }
+                        }
+                    }
+                }
+
+                return monthRecord;
+            }, CacheHelper.CacheLevel1);
+
+            return vm_list;
+
+        }
+
+
+    }
+}
\ No newline at end of file
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
new file mode 100644
index 0000000..824f131
--- /dev/null
+++ b/IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/dto/StationStatisticsDayParasMobileDto.cs
@@ -0,0 +1,23 @@
+锘縩amespace IStation.Application.SZJT
+{
+    /// <summary>
+    /// 
+    /// </summary>
+    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
new file mode 100644
index 0000000..12f129f
--- /dev/null
+++ b/IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/dto/StationStatisticsDayRecordMobileDto.cs
@@ -0,0 +1,23 @@
+锘縩amespace IStation.Application.SZJT
+{
+    /// <summary>
+    /// 
+    /// </summary>
+    public class StationStatisticsDayRecordMobileDto
+    {
+        /// <summary>
+        /// 
+        /// </summary>
+        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/10-mobile/08-station-statistics/dto/StationStatisticsMonthRecordMobileDto.cs b/IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/dto/StationStatisticsMonthRecordMobileDto.cs
new file mode 100644
index 0000000..ce77577
--- /dev/null
+++ b/IStation.Application.SZJT/99-logic/10-mobile/08-station-statistics/dto/StationStatisticsMonthRecordMobileDto.cs
@@ -0,0 +1,42 @@
+锘縩amespace IStation.Application.SZJT
+{
+    /// <summary>
+    /// 
+    /// </summary>
+    public class StationStatisticsMonthRecordMobileDto
+    {
+        /// <summary>
+        /// 
+        /// </summary>
+        public StationStatisticsMonthRecordMobileDto()
+        {
+            WsDayParas = new StationStatisticsDayParasMobileDto();
+            EdDayParas = new StationStatisticsDayParasMobileDto();
+            DayRecords = new List<StationStatisticsDayRecordMobileDto>();
+        }
+        /// <summary>
+        /// 
+        /// </summary>
+        public double? Ws { get; set; }
+
+        /// <summary>
+        /// 
+        /// </summary>
+        public double? Ed { get; set; }
+
+        /// <summary>
+        /// 
+        /// </summary>
+        public StationStatisticsDayParasMobileDto WsDayParas { get; set; }
+
+        /// <summary>
+        /// 
+        /// </summary>
+        public StationStatisticsDayParasMobileDto EdDayParas { get; set; }
+
+        /// <summary>
+        /// 
+        /// </summary>
+        public List<StationStatisticsDayRecordMobileDto> DayRecords { get; set; }
+    }
+}
diff --git a/IStation.Application.SZJT/IStation.Application.SZJT.csproj b/IStation.Application.SZJT/IStation.Application.SZJT.csproj
index 40182ca..19c2f77 100644
--- a/IStation.Application.SZJT/IStation.Application.SZJT.csproj
+++ b/IStation.Application.SZJT/IStation.Application.SZJT.csproj
@@ -31,13 +31,13 @@
   </ItemGroup>
 
   <ItemGroup>
-    <PackageReference Include="Yw.Application.Core" Version="1.3.0" />
-    <PackageReference Include="Yw.Service.Assets.Core" Version="1.2.1" />
-    <PackageReference Include="Yw.Service.DMA.Core" Version="1.0.4" />
-    <PackageReference Include="Yw.Service.Map.Core" Version="1.0.3" />
-    <PackageReference Include="Yw.Service.Monitor.Core" Version="1.4.3" />
-    <PackageReference Include="Yw.Service.Repair.Core" Version="1.0.1" />
-    <PackageReference Include="Yw.Service.Run.Core" Version="1.0.2" />
+    <PackageReference Include="Yw.Application.Core" Version="1.3.9" />
+    <PackageReference Include="Yw.Service.Assets.Core" Version="1.2.9" />
+    <PackageReference Include="Yw.Service.DMA.Core" Version="1.0.5" />
+    <PackageReference Include="Yw.Service.Map.Core" Version="1.0.4" />
+    <PackageReference Include="Yw.Service.Monitor.Core" Version="2.1.5" />
+    <PackageReference Include="Yw.Service.Repair.Core" Version="1.0.2" />
+    <PackageReference Include="Yw.Service.Run.Core" Version="1.0.4" />
   </ItemGroup>
 
   <ItemGroup>
diff --git a/IStation.Entry.SZJT/IStation.Entry.SZJT.csproj b/IStation.Entry.SZJT/IStation.Entry.SZJT.csproj
index cedda4f..c878ab3 100644
--- a/IStation.Entry.SZJT/IStation.Entry.SZJT.csproj
+++ b/IStation.Entry.SZJT/IStation.Entry.SZJT.csproj
@@ -13,17 +13,17 @@
   <ProjectExtensions><VisualStudio><UserProperties appsettings_1json__JsonSchema="" /></VisualStudio></ProjectExtensions>
 
   <ItemGroup>
-    <PackageReference Include="Yw.Application.ArtImage.Core" Version="1.1.2" />
-    <PackageReference Include="Yw.Application.Assets.Core" Version="1.2.5" />
-    <PackageReference Include="Yw.Application.Basic.Core" Version="1.2.1" />
-    <PackageReference Include="Yw.Application.Bimface.Core" Version="1.0.3" />
-    <PackageReference Include="Yw.Application.Dict.Core" Version="1.1.0" />
-    <PackageReference Include="Yw.Application.DMA.Core" Version="1.0.4" />
-    <PackageReference Include="Yw.Application.DOCS.Core" Version="1.0.1" />
-    <PackageReference Include="Yw.Application.Map.Core" Version="1.0.4" />
-    <PackageReference Include="Yw.Application.Monitor.Core" Version="1.6.4" />
-    <PackageReference Include="Yw.Application.Repair.Core" Version="1.0.2" />
-    <PackageReference Include="Yw.Application.Unit.Core" Version="1.1.1" />
+    <PackageReference Include="Yw.Application.ArtImage.Core" Version="1.1.4" />
+    <PackageReference Include="Yw.Application.Assets.Core" Version="2.0.5" />
+    <PackageReference Include="Yw.Application.Basic.Core" Version="1.2.8" />
+    <PackageReference Include="Yw.Application.Bimface.Core" Version="1.0.5" />
+    <PackageReference Include="Yw.Application.Dict.Core" Version="1.1.6" />
+    <PackageReference Include="Yw.Application.DMA.Core" Version="1.0.6" />
+    <PackageReference Include="Yw.Application.DOCS.Core" Version="1.0.2" />
+    <PackageReference Include="Yw.Application.Map.Core" Version="1.0.5" />
+    <PackageReference Include="Yw.Application.Monitor.Core" Version="2.2.3" />
+    <PackageReference Include="Yw.Application.Repair.Core" Version="1.0.3" />
+    <PackageReference Include="Yw.Application.Unit.Core" Version="1.1.7" />
   </ItemGroup>
 
   <ItemGroup>
diff --git a/IStation.Entry.SZJT/Properties/PublishProfiles/FolderProfile.pubxml.user b/IStation.Entry.SZJT/Properties/PublishProfiles/FolderProfile.pubxml.user
index c95aa81..6780f9a 100644
--- a/IStation.Entry.SZJT/Properties/PublishProfiles/FolderProfile.pubxml.user
+++ b/IStation.Entry.SZJT/Properties/PublishProfiles/FolderProfile.pubxml.user
@@ -5,6 +5,6 @@
 <Project>
   <PropertyGroup>
     <_PublishTargetUrl>D:\WorkData\git\istation\szjt\IStation.Entry.SZJT\bin\Release\net6.0\publish\</_PublishTargetUrl>
-    <History>True|2024-01-03T04:04:02.7753609Z;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-01-27T03:33:20.6165535Z;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>
   </PropertyGroup>
 </Project>
\ No newline at end of file
diff --git a/IStation.Service.SZJT/IStation.Service.SZJT.csproj b/IStation.Service.SZJT/IStation.Service.SZJT.csproj
index e199e1d..cbbc12d 100644
--- a/IStation.Service.SZJT/IStation.Service.SZJT.csproj
+++ b/IStation.Service.SZJT/IStation.Service.SZJT.csproj
@@ -38,7 +38,7 @@
   </ItemGroup>
 
   <ItemGroup>
-    <PackageReference Include="Yw.Service.Basic.Core" Version="1.2.1" />
+    <PackageReference Include="Yw.Service.Basic.Core" Version="1.3.3" />
   </ItemGroup>
 
 </Project>

--
Gitblit v1.9.3