feat: Working on pressure estimations feature, integrating all views and shared settings
This commit is contained in:
@@ -20,12 +20,12 @@ public struct FlaggedMeasurementsList {
|
||||
public struct State: Equatable {
|
||||
|
||||
@Presents public var destination: Destination.State?
|
||||
@Shared var sharedSettings: SharedSettings
|
||||
@Shared var sharedSettings: SharedPressureEstimationSettings
|
||||
public var estimatedMeasurements: IdentifiedArrayOf<FlaggedMeasurementContainer>
|
||||
|
||||
init(
|
||||
destination: Destination.State? = nil,
|
||||
sharedSettings: Shared<SharedSettings>,
|
||||
sharedSettings: Shared<SharedPressureEstimationSettings>,
|
||||
estimatedMeasurements: IdentifiedArrayOf<FlaggedMeasurementContainer> = []
|
||||
) {
|
||||
self.destination = destination
|
||||
@@ -33,6 +33,7 @@ public struct FlaggedMeasurementsList {
|
||||
self.estimatedMeasurements = estimatedMeasurements
|
||||
}
|
||||
|
||||
#warning("Move to shared settings.")
|
||||
public struct FlaggedMeasurementContainer: Equatable, Identifiable {
|
||||
public let id: UUID
|
||||
public var flaggedMeasurement: EquipmentMeasurement.FlaggedMeasurement
|
||||
@@ -115,7 +116,7 @@ public struct FlaggedMeasurementsList {
|
||||
|
||||
case .addButtonTapped:
|
||||
state.destination = .estimationForm(.init(
|
||||
coolingCapacity: state.sharedSettings.coolingCapacity
|
||||
coolingCapacity: state.sharedSettings.equipmentMetadata.coolingCapacity
|
||||
))
|
||||
return .none
|
||||
|
||||
@@ -145,16 +146,20 @@ public struct FlaggedMeasurementsList {
|
||||
return .none
|
||||
|
||||
case .onAppear:
|
||||
guard let equipmentMeasurement = state.sharedSettings.equipmentMeasurement,
|
||||
let budgets = state.sharedSettings.budgets
|
||||
else {
|
||||
guard let equipmentMeasurement = state.sharedSettings.equipmentMeasurement else {
|
||||
return .none
|
||||
}
|
||||
if state.sharedSettings.budgets == nil {
|
||||
state.sharedSettings.budgets = .init(
|
||||
equipmentType: state.sharedSettings.equipmentMeasurement!.equipmentType,
|
||||
fanType: state.sharedSettings.equipmentMetadata.fanType
|
||||
)
|
||||
}
|
||||
state.sharedSettings.flaggedEquipmentMeasurement = .init(
|
||||
budgets: budgets,
|
||||
budgets: state.sharedSettings.budgets!,
|
||||
measurement: equipmentMeasurement,
|
||||
ratedPressures: state.sharedSettings.ratedStaticPressures,
|
||||
tons: state.sharedSettings.coolingCapacity
|
||||
ratedPressures: state.sharedSettings.equipmentMetadata.ratedStaticPressures,
|
||||
tons: state.sharedSettings.equipmentMetadata.coolingCapacity
|
||||
)
|
||||
return .none
|
||||
}
|
||||
@@ -178,8 +183,8 @@ public struct FlaggedMeasurementsList {
|
||||
)
|
||||
}
|
||||
|
||||
return .receive(action: \.receive) { [ratedStaticPressures = state.sharedSettings.ratedStaticPressures] in
|
||||
|
||||
return .receive(action: \.receive) { [ratedStaticPressures = state.sharedSettings.equipmentMetadata.ratedStaticPressures] in
|
||||
|
||||
let filterPressureDrop = form.filterPressureDrop != nil
|
||||
? Positive(wrappedValue: form.filterPressureDrop!)
|
||||
: nil
|
||||
@@ -221,8 +226,6 @@ public struct FlaggedMeasurementListView: View {
|
||||
} header: {
|
||||
HStack {
|
||||
Text("Existing Measurements")
|
||||
Spacer()
|
||||
// Button("Edit") { }
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -278,7 +281,7 @@ public struct FlaggedMeasurementListView: View {
|
||||
}
|
||||
|
||||
#if DEBUG
|
||||
private let sharedSettings = SharedSettings(
|
||||
private let sharedPressureEstimationSettings = SharedPressureEstimationSettings(
|
||||
budgets: .init(equipmentType: .airHandler, fanType: .constantSpeed),
|
||||
equipmentMeasurement: .mock(type: .airHandler),
|
||||
flaggedEquipmentMeasurement: nil
|
||||
@@ -290,10 +293,10 @@ private let flaggedMeasurements = IdentifiedArrayOf<FlaggedMeasurementsList.Stat
|
||||
id: UUID(0),
|
||||
name: "Existing",
|
||||
flaggedMeasurement: .init(
|
||||
budgets: sharedSettings.budgets!,
|
||||
measurement: sharedSettings.equipmentMeasurement!,
|
||||
ratedPressures: sharedSettings.ratedStaticPressures,
|
||||
tons: sharedSettings.coolingCapacity
|
||||
budgets: sharedPressureEstimationSettings.budgets!,
|
||||
measurement: sharedPressureEstimationSettings.equipmentMeasurement!,
|
||||
ratedPressures: sharedPressureEstimationSettings.equipmentMetadata.ratedStaticPressures,
|
||||
tons: sharedPressureEstimationSettings.equipmentMetadata.coolingCapacity
|
||||
)
|
||||
),
|
||||
]
|
||||
@@ -305,7 +308,7 @@ private let flaggedMeasurements = IdentifiedArrayOf<FlaggedMeasurementsList.Stat
|
||||
FlaggedMeasurementListView(
|
||||
store: Store(
|
||||
initialState: FlaggedMeasurementsList.State(
|
||||
sharedSettings: Shared(sharedSettings)
|
||||
sharedSettings: Shared(sharedPressureEstimationSettings)
|
||||
)
|
||||
) {
|
||||
FlaggedMeasurementsList()
|
||||
@@ -319,7 +322,7 @@ private let flaggedMeasurements = IdentifiedArrayOf<FlaggedMeasurementsList.Stat
|
||||
FlaggedMeasurementListView(
|
||||
store: Store(
|
||||
initialState: FlaggedMeasurementsList.State(
|
||||
sharedSettings: Shared(sharedSettings)
|
||||
sharedSettings: Shared(sharedPressureEstimationSettings)
|
||||
)
|
||||
) {
|
||||
FlaggedMeasurementsList()
|
||||
|
||||
Reference in New Issue
Block a user