Files
IOT_API/Model/Dto/Inspection/StatisticsReportDto.cs
2026-09-02 13:36:52 +08:00

213 lines
5.7 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
namespace Model.Dto.Inspection
{
#region 设备统计报表
/// <summary>
/// 设备统计概览
/// </summary>
public class DeviceStatisticsDto
{
/// <summary>设备总数</summary>
public int Total { get; set; }
/// <summary>在用数量</summary>
public int InUse { get; set; }
/// <summary>闲置数量</summary>
public int Idle { get; set; }
/// <summary>报废数量(已处置+待处置)</summary>
public int Scrapped { get; set; }
/// <summary>维修中数量</summary>
public int Repairing { get; set; }
/// <summary>已停用数量</summary>
public int Suspended { get; set; }
/// <summary>其他数量(待验收/已借出/入库)</summary>
public int Other { get; set; }
}
/// <summary>
/// 按分类统计
/// </summary>
public class CategoryStatisticsDto
{
/// <summary>分类名称</summary>
public string? CategoryName { get; set; }
/// <summary>设备数量</summary>
public int Count { get; set; }
}
/// <summary>
/// 按部门统计
/// </summary>
public class DepartmentStatisticsDto
{
/// <summary>部门名称</summary>
public string? Department { get; set; }
/// <summary>设备数量</summary>
public int Count { get; set; }
}
#endregion
#region 设备维护报表
/// <summary>
/// 设备维护统计
/// </summary>
public class MaintenanceStatisticsDto
{
/// <summary>设备总数</summary>
public int Total { get; set; }
/// <summary>校准正常数量</summary>
public int CalibrationNormal { get; set; }
/// <summary>校准超期数量</summary>
public int CalibrationOverdue { get; set; }
/// <summary>保养正常数量</summary>
public int MaintenanceNormal { get; set; }
/// <summary>保养超期数量</summary>
public int MaintenanceOverdue { get; set; }
/// <summary>校准及时率(%</summary>
public decimal CalibrationTimelyRate { get; set; }
/// <summary>保养及时率(%</summary>
public decimal MaintenanceTimelyRate { get; set; }
}
/// <summary>
/// 维护超期设备明细
/// </summary>
public class MaintenanceOverdueDetailDto
{
/// <summary>设备编号</summary>
public string? EquipmentCode { get; set; }
/// <summary>设备名称</summary>
public string? EquipmentName { get; set; }
/// <summary>部门</summary>
public string? Department { get; set; }
/// <summary>超期类型(校准超期/保养超期)</summary>
public string? OverdueType { get; set; }
/// <summary>到期日期</summary>
public DateTime? ExpireDate { get; set; }
/// <summary>超期天数</summary>
public int OverdueDays { get; set; }
}
#endregion
#region 维修类报表
/// <summary>
/// 维修统计概览
/// </summary>
public class RepairStatisticsDto
{
/// <summary>维修记录总数</summary>
public int Total { get; set; }
/// <summary>已完成数量</summary>
public int Completed { get; set; }
/// <summary>维修中数量</summary>
public int InProgress { get; set; }
/// <summary>待维修数量</summary>
public int Pending { get; set; }
/// <summary>平均维修工时(小时)</summary>
public decimal AvgRepairHours { get; set; }
/// <summary>总维修工时(小时)</summary>
public decimal TotalRepairHours { get; set; }
/// <summary>总维修费用(元)</summary>
public decimal TotalRepairCost { get; set; }
}
/// <summary>
/// 故障类型分布
/// </summary>
public class FaultTypeDistributionDto
{
/// <summary>故障类型</summary>
public string? FaultType { get; set; }
/// <summary>数量</summary>
public int Count { get; set; }
}
/// <summary>
/// 维修工时分析
/// </summary>
public class RepairHoursAnalysisDto
{
/// <summary>故障类型</summary>
public string? FaultType { get; set; }
/// <summary>平均工时(小时)</summary>
public decimal AvgHours { get; set; }
/// <summary>最大工时(小时)</summary>
public decimal MaxHours { get; set; }
/// <summary>最小工时(小时)</summary>
public decimal MinHours { get; set; }
/// <summary>记录数</summary>
public int Count { get; set; }
}
/// <summary>
/// 维修记录明细
/// </summary>
public class RepairRecordDetailDto
{
/// <summary>设备编号</summary>
public string? EquipmentCode { get; set; }
/// <summary>设备名称</summary>
public string? EquipmentName { get; set; }
/// <summary>故障类型</summary>
public string? FaultType { get; set; }
/// <summary>故障描述</summary>
public string? FaultDescription { get; set; }
/// <summary>报修日期</summary>
public DateTime? ReportDate { get; set; }
/// <summary>维修完成日期</summary>
public DateTime? RepairEndDate { get; set; }
/// <summary>维修工时</summary>
public decimal? RepairHours { get; set; }
/// <summary>维修人员</summary>
public string? RepairPerson { get; set; }
/// <summary>维修费用</summary>
public decimal? RepairCost { get; set; }
/// <summary>维修状态</summary>
public string? RepairStatus { get; set; }
}
#endregion
}