diff --git a/PVDEMCS/.vs/PVDEMCS/DesignTimeBuild/.dtbcache.v2 b/PVDEMCS/.vs/PVDEMCS/DesignTimeBuild/.dtbcache.v2
index 8c588b9..337b8f7 100644
Binary files a/PVDEMCS/.vs/PVDEMCS/DesignTimeBuild/.dtbcache.v2 and b/PVDEMCS/.vs/PVDEMCS/DesignTimeBuild/.dtbcache.v2 differ
diff --git a/PVDEMCS/.vs/PVDEMCS/v17/.suo b/PVDEMCS/.vs/PVDEMCS/v17/.suo
index 11305ff..1f312e2 100644
Binary files a/PVDEMCS/.vs/PVDEMCS/v17/.suo and b/PVDEMCS/.vs/PVDEMCS/v17/.suo differ
diff --git a/PVDEMCS/PVDEMCS/Common/Constant/Constant.cs b/PVDEMCS/PVDEMCS/Common/Constant/Constant.cs
index 8dd4aee..5a23d58 100644
--- a/PVDEMCS/PVDEMCS/Common/Constant/Constant.cs
+++ b/PVDEMCS/PVDEMCS/Common/Constant/Constant.cs
@@ -36,7 +36,7 @@
///
/// Cemecon
///
- public const String Cemecon = "Cemecon";
+ public const String CemeCon = "CemeCon";
}
///
diff --git a/PVDEMCS/PVDEMCS/Controllers/EquipmentRecordController.cs b/PVDEMCS/PVDEMCS/Controllers/EquipmentRecordController.cs
index 7e70782..15cc11b 100644
--- a/PVDEMCS/PVDEMCS/Controllers/EquipmentRecordController.cs
+++ b/PVDEMCS/PVDEMCS/Controllers/EquipmentRecordController.cs
@@ -1,4 +1,5 @@
-using Masuit.Tools.Models;
+using Masuit.Tools;
+using Masuit.Tools.Models;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using PVDEMCS.Common;
@@ -17,13 +18,12 @@ namespace PVDEMCS.Controllers
public class EquipmentRecordController : Controller
{
private IEquipmentRecordService _equipmentRecordService;
+ private IEquipmentService _equipmentService;
- private IDeviceService _deviceService;
-
- public EquipmentRecordController(IEquipmentRecordService equipmentRecordService, IDeviceService deviceService)
+ public EquipmentRecordController(IEquipmentRecordService equipmentRecordService, IEquipmentService equipmentService)
{
this._equipmentRecordService = equipmentRecordService;
- this._deviceService = deviceService;
+ this._equipmentService = equipmentService;
}
#region 设备状态记录
@@ -105,7 +105,7 @@ namespace PVDEMCS.Controllers
/// 当前页
/// 页大小
[HttpGet]
- public Result> GetEquipmentRecordDayTotalPageList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime, int page, int size = 20)
+ public Result> GetEquipmentRecordDayTotalPageList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime, int page, int size = 20)
{
var result = _equipmentRecordService.GetEquipmentRecordDayTotalPageList(equipmentName, equipmentCode, equipmentType, begTime, endTime, page, size);
return result;
@@ -120,7 +120,7 @@ namespace PVDEMCS.Controllers
/// 开始时间
/// 结束时间
[HttpGet]
- public Result> GetEquipmentRecordDayTotalList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime)
+ public Result> GetEquipmentRecordDayTotalList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime)
{
var result = _equipmentRecordService.GetEquipmentRecordDayTotalList(equipmentName, equipmentCode, equipmentType, begTime, endTime);
return result;
@@ -133,11 +133,81 @@ namespace PVDEMCS.Controllers
[HttpGet]
public Result> GetEquipmentStateView()
{
- var points = _deviceService.GetDevicePointList(activated: true);
+ var equipments = _equipmentService.GetEquipmentList();
+ var ret = new List();
+ //获取所有设备状态汇总
+ var allTotal = equipments.Content.GroupBy(f => f.State).Select(f => new
+ {
+ State = f.Key,
+ count = f.Count()
+ }).ToList();
+ var equipmentStateView = new EquipmentStateView();
+ equipmentStateView.EquipmentType = "All";
+ var alarm = allTotal.Where(f => f.State == EquipmentState.Alarm).FirstOrDefault();
+ if (!alarm.IsNullOrEmpty())
+ {
+ equipmentStateView.Alarm = alarm.count;
+ }
+ var run = allTotal.Where(f => f.State == EquipmentState.Run).FirstOrDefault();
+ if (!run.IsNullOrEmpty())
+ {
+ equipmentStateView.Run = run.count;
+ }
+ var stop = allTotal.Where(f => f.State == EquipmentState.Stop).FirstOrDefault();
+ if (!stop.IsNullOrEmpty())
+ {
+ equipmentStateView.Stop = stop.count;
+ }
+ ret.Add(equipmentStateView);
+ //根据设备类型获取状态汇总
+ var equimentTypeTotal = equipments.Content.GroupBy(f => new { f.EquipmentType, f.State }).Select(f => new
+ {
+ equipmentType = f.Key.EquipmentType,
+ State = f.Key,
+ count = f.Count()
+ }).ToList();
+ var equimentTypes = new string[] { EquipmentType.Balzers, EquipmentType.CemeCon, EquipmentType.Ionbond };
+ foreach (var type in equimentTypes)
+ {
+ equipmentStateView = new EquipmentStateView();
+ equipmentStateView.EquipmentType = type;
+ if (equimentTypeTotal.Count > 0)
+ {
+ alarm = allTotal.Where(f => f.State == EquipmentState.Alarm).FirstOrDefault();
+ if (!alarm.IsNullOrEmpty())
+ {
+ equipmentStateView.Alarm = alarm.count;
+ }
+ run = allTotal.Where(f => f.State == EquipmentState.Run).FirstOrDefault();
+ if (!run.IsNullOrEmpty())
+ {
+ equipmentStateView.Run = run.count;
+ }
+ stop = allTotal.Where(f => f.State == EquipmentState.Stop).FirstOrDefault();
+ if (!stop.IsNullOrEmpty())
+ {
+ equipmentStateView.Stop = stop.count;
+ }
+ }
+ ret.Add(equipmentStateView);
+ }
- return null;
+ return new Result>(ret);
}
+ ///
+ /// 获取报警设备列表
+ ///
+ ///
+ [HttpGet]
+ public Result> GetEquipmentAlarmList()
+ {
+ var equipments = _equipmentService.GetEquipmentList();
+ var alarmList = equipments.Content.Where(f => f.State == EquipmentState.Alarm).ToList();
+ return new Result>(alarmList);
+ }
+
+
#endregion
}
}
diff --git a/PVDEMCS/PVDEMCS/Services/IEquipmentRecordService.cs b/PVDEMCS/PVDEMCS/Services/IEquipmentRecordService.cs
index e4acf61..dba9901 100644
--- a/PVDEMCS/PVDEMCS/Services/IEquipmentRecordService.cs
+++ b/PVDEMCS/PVDEMCS/Services/IEquipmentRecordService.cs
@@ -68,7 +68,7 @@ namespace PVDEMCS.Services
/// 结束时间
/// 当前页
/// 页大小
- Result> GetEquipmentRecordDayTotalPageList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime, int page, int size);
+ Result> GetEquipmentRecordDayTotalPageList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime, int page, int size);
///
/// 获取设备状态记录统计列表
@@ -78,7 +78,7 @@ namespace PVDEMCS.Services
/// 设备类型
/// 开始时间
/// 结束时间
- Result> GetEquipmentRecordDayTotalList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime);
+ Result> GetEquipmentRecordDayTotalList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime);
#endregion
}
diff --git a/PVDEMCS/PVDEMCS/Services/IEquipmentService.cs b/PVDEMCS/PVDEMCS/Services/IEquipmentService.cs
index 0669a8e..7d2fa9c 100644
--- a/PVDEMCS/PVDEMCS/Services/IEquipmentService.cs
+++ b/PVDEMCS/PVDEMCS/Services/IEquipmentService.cs
@@ -21,7 +21,7 @@ namespace PVDEMCS.Services
/// 当前页
/// 页大小
///
- Result> GetEquipmentPageList(string equipmentName, string equipmentCode, string equipmentType, bool? activated, int page, int size);
+ Result> GetEquipmentPageList(string equipmentName = "", string equipmentCode = "", string equipmentType = "", bool? activated = true, int page = 1, int size = 20);
///
/// 获取设备列表
@@ -29,7 +29,7 @@ namespace PVDEMCS.Services
/// 设备名称
/// 设备编号
/// 是否启用
- Result> GetEquipmentList(string equipmentName, string equipmentCode, string equipmentType, bool? activated);
+ Result> GetEquipmentList(string equipmentName = "", string equipmentCode = "", string equipmentType = "", bool? activated = true);
///
/// 获取设备明显
diff --git a/PVDEMCS/PVDEMCS/Services/Impl/EquipmentRecordService.cs b/PVDEMCS/PVDEMCS/Services/Impl/EquipmentRecordService.cs
index b311344..4b4830d 100644
--- a/PVDEMCS/PVDEMCS/Services/Impl/EquipmentRecordService.cs
+++ b/PVDEMCS/PVDEMCS/Services/Impl/EquipmentRecordService.cs
@@ -94,7 +94,7 @@ namespace PVDEMCS.Services.Impl
/// 结束时间
/// 当前页
/// 页大小
- public Result> GetEquipmentRecordDayTotalPageList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime, int page, int size)
+ public Result> GetEquipmentRecordDayTotalPageList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime, int page, int size)
{
var result = this._equipmentRecordRepository.GetEquipmentRecordDayTotalPageList(equipmentName, equipmentCode, equipmentType, begTime, endTime, page, size);
return result;
@@ -108,7 +108,7 @@ namespace PVDEMCS.Services.Impl
/// 设备类型
/// 开始时间
/// 结束时间
- public Result> GetEquipmentRecordDayTotalList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime)
+ public Result> GetEquipmentRecordDayTotalList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime)
{
var result = this._equipmentRecordRepository.GetEquipmentRecordDayTotalList(equipmentName, equipmentCode, equipmentType, begTime, endTime);
return result;
diff --git a/PVDEMCS/PVDEMCS/Services/Models/EquipmentRecordTotal.cs b/PVDEMCS/PVDEMCS/Services/Models/EquipmentRecordDayTotal.cs
similarity index 87%
rename from PVDEMCS/PVDEMCS/Services/Models/EquipmentRecordTotal.cs
rename to PVDEMCS/PVDEMCS/Services/Models/EquipmentRecordDayTotal.cs
index 96bf632..5fd740f 100644
--- a/PVDEMCS/PVDEMCS/Services/Models/EquipmentRecordTotal.cs
+++ b/PVDEMCS/PVDEMCS/Services/Models/EquipmentRecordDayTotal.cs
@@ -1,5 +1,4 @@
-// This file has been auto generated by EF Core Power Tools.
-#nullable disable
+
using System;
using System.Collections.Generic;
@@ -9,7 +8,7 @@ namespace PVDEMCS.Services.Models;
/// 设备状态记录日统计
///
///
-public partial class EquipmentRecordTotal
+public partial class EquipmentRecordDayTotal
{
public string Id { get; set; }
diff --git a/PVDEMCS/PVDEMCS/Services/Models/EquipmentRecordFurnaceMonthTotal.cs b/PVDEMCS/PVDEMCS/Services/Models/EquipmentRecordFurnaceMonthTotal.cs
new file mode 100644
index 0000000..5c064c1
--- /dev/null
+++ b/PVDEMCS/PVDEMCS/Services/Models/EquipmentRecordFurnaceMonthTotal.cs
@@ -0,0 +1,23 @@
+namespace PVDEMCS.Services.Models
+{
+ ///
+ /// 设备记录开炉次数月统计
+ ///
+ public class EquipmentRecordFurnaceMonthTotal
+ {
+ ///
+ /// 设备类型:Ionbond,Balzers,Cemecon
+ ///
+ public string EquipmentType { get; set; }
+
+ ///
+ /// 开炉次数
+ ///
+ public int FurnaceNum { get; set; }
+
+ ///
+ /// 日期
+ ///
+ public DateTime? TotalMonth { get; set; }
+ }
+}
diff --git a/PVDEMCS/PVDEMCS/Services/Models/EquipmentRecordStateMonthTotal.cs b/PVDEMCS/PVDEMCS/Services/Models/EquipmentRecordStateMonthTotal.cs
new file mode 100644
index 0000000..9eaea42
--- /dev/null
+++ b/PVDEMCS/PVDEMCS/Services/Models/EquipmentRecordStateMonthTotal.cs
@@ -0,0 +1,28 @@
+namespace PVDEMCS.Services.Models
+{
+ ///
+ /// 设备状态记录月统计
+ ///
+ public class EquipmentRecordStateMonthTotal
+ {
+ ///
+ /// 总运行时长
+ ///
+ public decimal TotalRunningTime { get; set; }
+
+ ///
+ /// 总报警时长
+ ///
+ public decimal TotalAlarmTime { get; set; }
+
+ ///
+ /// 总待机时长
+ ///
+ public decimal TotalStopTime { get; set; }
+
+ ///
+ /// 日期
+ ///
+ public DateTime? TotalMonth { get; set; }
+ }
+}
diff --git a/PVDEMCS/PVDEMCS/Services/Repositories/IEquipmentRecordRepository.cs b/PVDEMCS/PVDEMCS/Services/Repositories/IEquipmentRecordRepository.cs
index 95b873e..8fdc435 100644
--- a/PVDEMCS/PVDEMCS/Services/Repositories/IEquipmentRecordRepository.cs
+++ b/PVDEMCS/PVDEMCS/Services/Repositories/IEquipmentRecordRepository.cs
@@ -71,7 +71,7 @@ namespace PVDEMCS.Services.Repositories
/// 结束时间
/// 当前页
/// 页大小
- Result> GetEquipmentRecordDayTotalPageList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime, int page, int size);
+ Result> GetEquipmentRecordDayTotalPageList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime, int page, int size);
///
/// 获取设备状态记录统计列表
@@ -81,7 +81,9 @@ namespace PVDEMCS.Services.Repositories
/// 设备类型
/// 开始时间
/// 结束时间
- Result> GetEquipmentRecordDayTotalList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime);
+ Result> GetEquipmentRecordDayTotalList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime);
+
+
#endregion
}
diff --git a/PVDEMCS/PVDEMCS/Services/Repositories/Impl/EquipmentRecordRepository.cs b/PVDEMCS/PVDEMCS/Services/Repositories/Impl/EquipmentRecordRepository.cs
index 138d3d0..40b781a 100644
--- a/PVDEMCS/PVDEMCS/Services/Repositories/Impl/EquipmentRecordRepository.cs
+++ b/PVDEMCS/PVDEMCS/Services/Repositories/Impl/EquipmentRecordRepository.cs
@@ -176,7 +176,7 @@ namespace PVDEMCS.Services.Repositories.Impl
var furnaceNum = "FurnaceNum";
//获取配置的设备的阈值
var balzersConfig = _configRepository.GetSysConfigDetailNameOrKey("", EquipmentType.Balzers).Content;
- var cemeconConfig = _configRepository.GetSysConfigDetailNameOrKey("", EquipmentType.Cemecon).Content;
+ var cemeconConfig = _configRepository.GetSysConfigDetailNameOrKey("", EquipmentType.CemeCon).Content;
var ionbondConfig = _configRepository.GetSysConfigDetailNameOrKey("", EquipmentType.Ionbond).Content;
var balzers = 200;
var cemecon = 300;
@@ -235,7 +235,7 @@ namespace PVDEMCS.Services.Repositories.Impl
furnaceVal.Value++;
}
break;
- case EquipmentType.Cemecon:
+ case EquipmentType.CemeCon:
if (minutes >= cemecon)
{
furnaceVal.Value++;
@@ -327,7 +327,7 @@ namespace PVDEMCS.Services.Repositories.Impl
/// 结束时间
/// 当前页
/// 页大小
- public Result> GetEquipmentRecordDayTotalPageList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime, int page, int size)
+ public Result> GetEquipmentRecordDayTotalPageList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime, int page, int size)
{
using (var context = new EFContext())
{
@@ -335,7 +335,7 @@ namespace PVDEMCS.Services.Repositories.Impl
var pageList = query.OrderByDescending(f => f.EquipmentCode).ToPagedList(page, size);
- return new Result>(pageList);
+ return new Result>(pageList);
}
}
@@ -347,7 +347,7 @@ namespace PVDEMCS.Services.Repositories.Impl
/// 设备类型
/// 开始时间
/// 结束时间
- public Result> GetEquipmentRecordDayTotalList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime)
+ public Result> GetEquipmentRecordDayTotalList(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime)
{
using (var context = new EFContext())
{
@@ -355,15 +355,36 @@ namespace PVDEMCS.Services.Repositories.Impl
var pageList = query.OrderByDescending(f => f.EquipmentCode).ToList();
- return new Result>(pageList);
+ return new Result>(pageList);
}
}
- private IQueryable QueryEquipmentRecordTotal(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime, EFContext context)
+ ///
+ /// 获取设备状态记录月统计
+ ///
+ ///
+ public Result> GetEquipmentRecordStateMonthTotal()
+ {
+ using (var context = new EFContext())
+ { }
+
+ return null;
+ }
+
+ ///
+ /// 获取设备记录开炉次数月统计
+ ///
+ ///
+ public Result> GetEquipmentRecordFurnaceMonthTotal()
+ {
+ return null;
+ }
+
+ private IQueryable QueryEquipmentRecordTotal(string equipmentName, string equipmentCode, string equipmentType, DateTime begTime, DateTime endTime, EFContext context)
{
var query = from recordTotal in context.EquipmentRecordTotals
join equipment in context.EquipmentInfos.Where(f => !f.IsDelete) on recordTotal.EquipmentId equals equipment.Id
- select new EquipmentRecordTotal
+ select new EquipmentRecordDayTotal
{
Id = recordTotal.Id,
EquipmentName = equipment.EquipmentName,
@@ -393,8 +414,6 @@ namespace PVDEMCS.Services.Repositories.Impl
return query;
}
-
-
#endregion
}
}