Feat: Adds flagged equipment measurement view and style
This commit is contained in:
@@ -97,24 +97,50 @@ public enum EquipmentMeasurement: Equatable {
|
||||
}
|
||||
}
|
||||
|
||||
extension EquipmentMeasurement.AirHandler {
|
||||
|
||||
public enum Key: String, Equatable, CaseIterable {
|
||||
case returnPlenumPressure
|
||||
case postFilterPressure
|
||||
case postCoilPressure
|
||||
case supplyPlenumPressure
|
||||
case airflow
|
||||
}
|
||||
}
|
||||
//extension EquipmentMeasurement.AirHandler {
|
||||
//
|
||||
// public enum Key: String, Equatable, CaseIterable {
|
||||
// case returnPlenumPressure
|
||||
// case postFilterPressure
|
||||
// case postCoilPressure
|
||||
// case supplyPlenumPressure
|
||||
// case airflow
|
||||
// }
|
||||
//}
|
||||
//
|
||||
//extension EquipmentMeasurement.FurnaceAndCoil {
|
||||
//
|
||||
// public enum Key: String, Equatable, CaseIterable {
|
||||
// case returnPlenumPressure
|
||||
// case postFilterPressure
|
||||
// case preCoilPressure
|
||||
// case supplyPlenumPressure
|
||||
// case airflow
|
||||
// }
|
||||
//}
|
||||
|
||||
extension EquipmentMeasurement.FurnaceAndCoil {
|
||||
|
||||
public enum Key: String, Equatable, CaseIterable {
|
||||
case returnPlenumPressure
|
||||
case postFilterPressure
|
||||
case preCoilPressure
|
||||
case supplyPlenumPressure
|
||||
case airflow
|
||||
#if DEBUG
|
||||
extension EquipmentMeasurement {
|
||||
public static func mock(type equipmentType: EquipmentType) -> Self {
|
||||
switch equipmentType {
|
||||
case .airHandler:
|
||||
return .airHandler(.init(
|
||||
airflow: 1200,
|
||||
returnPlenumPressure: 0.3,
|
||||
postFilterPressure: 0.6,
|
||||
postCoilPressure: 0.9,
|
||||
supplyPlenumPressure: 0.2
|
||||
))
|
||||
|
||||
case .furnaceAndCoil:
|
||||
return .furnaceAndCoil(.init(
|
||||
airflow: 1200,
|
||||
returnPlenumPressure: 0.3,
|
||||
postFilterPressure: 0.6,
|
||||
preCoilPressure: 0.4,
|
||||
supplyPlenumPressure: 0.1
|
||||
))
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -120,54 +120,19 @@ public struct FlaggedEquipmentMeasurement: Equatable {
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: - Key
|
||||
// MARK: - Helpers
|
||||
#if DEBUG
|
||||
extension FlaggedEquipmentMeasurement {
|
||||
// NOTE: These need to be kept in display order.
|
||||
public enum Key: Equatable, CaseIterable {
|
||||
case returnPlenum
|
||||
case filterDrop
|
||||
case coilDrop
|
||||
case supplyPlenum
|
||||
case staticPressure
|
||||
case airflow
|
||||
|
||||
public var title: String {
|
||||
switch self {
|
||||
case .returnPlenum:
|
||||
return "Return Plenum"
|
||||
case .filterDrop:
|
||||
return "Filter Pressure Drop"
|
||||
case .coilDrop:
|
||||
return "Coil Pressure Drop"
|
||||
case .supplyPlenum:
|
||||
return "Supply Plenum"
|
||||
case .staticPressure:
|
||||
return "External Static Pressure"
|
||||
case .airflow:
|
||||
return "System Airflow"
|
||||
}
|
||||
}
|
||||
|
||||
public var flaggedKeyPath: KeyPath<FlaggedEquipmentMeasurement, Flagged> {
|
||||
switch self {
|
||||
case .returnPlenum:
|
||||
return \.returnPlenumPressure
|
||||
case .filterDrop:
|
||||
return \.filterPressureDrop
|
||||
case .coilDrop:
|
||||
return \.coilPressureDrop
|
||||
case .supplyPlenum:
|
||||
return \.supplyPlenumPressure
|
||||
case .staticPressure:
|
||||
return \.externalStaticPressure
|
||||
case .airflow:
|
||||
return \.airflow
|
||||
}
|
||||
}
|
||||
public static func mock(type equipmentType: EquipmentType) -> Self {
|
||||
.init(
|
||||
budgets: .init(equipmentType: equipmentType, fanType: .variableSpeed),
|
||||
measurement: .mock(type: equipmentType),
|
||||
ratedPressures: .init(),
|
||||
tons: .default
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: - Helpers
|
||||
#endif
|
||||
fileprivate extension Flagged {
|
||||
|
||||
init(
|
||||
|
||||
Reference in New Issue
Block a user