Index: sources/view/VTreatmentCreate.h =================================================================== diff -u -r80250cfdbe58a3df17950d342212f155d52d3971 -r2ef03b2ce51b4dc507f66e9671953a8e0824bde9 --- sources/view/VTreatmentCreate.h (.../VTreatmentCreate.h) (revision 80250cfdbe58a3df17950d342212f155d52d3971) +++ sources/view/VTreatmentCreate.h (.../VTreatmentCreate.h) (revision 2ef03b2ce51b4dc507f66e9671953a8e0824bde9) @@ -1,3 +1,17 @@ +/*! + * + * Copyright (c) 2020-2024 Diality Inc. - All Rights Reserved. + * \copyright + * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN + * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. + * + * \file VTreatmentCreate.h + * \author (last) Behrouz NematiPour + * \date (last) 24-Jan-2024 + * \author (original) Peter Lucia + * \date (original) 22-Sep-2020 + * + */ #pragma once // Qt @@ -10,8 +24,11 @@ // Project #include "MPreTreatmentAdjustParametersValidationResponse.h" +#include "MAdjustHDSerialNumberResponse.h" + #include "GuiController.h" #include "StorageGlobals.h" +#include "VView.h" // forward declaration class tst_views; @@ -20,8 +37,6 @@ using namespace Gui; using namespace Model; -#define UNSET 9999 - namespace View { /*! @@ -59,185 +74,79 @@ // friends friend class::tst_views; -public: - explicit VTreatmentCreate(QObject *parent = nullptr); + QString _HDSerialNumber = ""; -private: + PROPERTY(bool , heparinDispensingRateOff , true) + PROPERTY(bool , heparinBolusVolumeOff , true) - // mL/min - const quint32 bloodFlowRate_Def = 100 ; // PRS 30 - const quint32 bloodFlowRate_Min = 100 ; // PRS 30 - const quint32 bloodFlowRate_Max = 500 ; // PRS 30 - const quint32 bloodFlowRate_Res = 25 ; // PRS 30 + VALUESET(quint32 , bloodFlowRate , 0) + VALUESET(quint32 , dialysateFlowRate , 0) + VALUESET(quint32 , treatmentDuration , 0) + VALUESET(float , heparinDispensingRate , 0) + VALUESET(float , heparinBolusVolume , 0) + VALUESET(quint32 , heparinStopTime , 0) + VALUESET(quint32 , salineBolusVolume , 0) - // mL/min - const quint32 dialysateFlowRate_Def = 100 ; // PRS 345 - const quint32 dialysateFlowRate_Min = 100 ; // PRS 345 - const quint32 dialysateFlowRate_Max = 600 ; // PRS 345 - const quint32 dialysateFlowRate_Res = 50 ; // PRS 345 + VALUESET(quint32 , heparinType , 0) + VALUESET(quint32 , acidConcentrate , 0) + VALUESET(quint32 , bicarbonateConcentrate , 0) + VALUESET(quint32 , dialyzerType , 0) - // minutes - const quint32 duration_Def = 60 ; // PRS 346 - const quint32 duration_Min = 60 ; // PRS 346 - const quint32 duration_Max = 480 ; // PRS 346 - const quint32 duration_Res = 15 ; // PRS 346 + VALUESET(qreal , dialysateTemp , 0) + VALUESET(qint32 , arterialPressureLimitWindow , 0) + VALUESET(qint32 , venousPressureLimitWindow , 0) + VALUESET(qint32 , venousPressureLimitAsymtrc , 0) + VALUESET(quint32 , bloodPressureMeasureInterval , 0) + VALUESET(quint32 , rinsebackFlowRate , 0) - // mL/hr (0 = off) - const qreal heparinDispensingRate_Def = 0.0 ; // PRS 347 - const qreal heparinDispensingRate_Min = 0.0 ; // PRS 347 - const qreal heparinDispensingRate_Max = 1.0 ; // PRS 347 - const qreal heparinDispensingRate_Res = 0.1 ; // PRS 347 + VALUESET(QString , patientID ,"") + VALUESET(bool , continueEnabled , 0) - // mL - const qreal heparinBolusVolume_Def = 0.0 ; // PRS 348 - const qreal heparinBolusVolume_Min = 0.0 ; // PRS 348 - const qreal heparinBolusVolume_Max = 2.0 ; // PRS 348 - const qreal heparinBolusVolume_Res = 0.1 ; // PRS 348 + PROPERTY(QString , txCode , "") - // min - const quint32 heparinStopTime_Def = 0 ; // PRS 464 - const quint32 heparinStopTime_Min = 0 ; // PRS 464 - const quint32 heparinStopTime_Max = 470 ; // PRS 464 - const quint32 heparinStopTime_Res = 10 ; // PRS 464 + TRIGGER (quint32 , bloodFlowRateRejectReason , 0 ) + TRIGGER (quint32 , dialysateFlowRateRejectReason , 0 ) + TRIGGER (quint32 , treatmentDurationRejectReason , 0 ) + TRIGGER (quint32 , heparinDispensingRateRejectReason , 0 ) + TRIGGER (quint32 , heparinBolusVolumeRejectReason , 0 ) + TRIGGER (quint32 , heparinStopTimeRejectReason , 0 ) + TRIGGER (quint32 , salineBolusVolumeRejectReason , 0 ) - // mL - const quint32 salineBolusVolume_Def = 100 ; // PRS 350 - const quint32 salineBolusVolume_Min = 100 ; // PRS 350 - const quint32 salineBolusVolume_Max = 300 ; // PRS 350 - const quint32 salineBolusVolume_Res = 100 ; // PRS 350 + TRIGGER(quint32 , heparinTypeRejectReason , 0 ) + TRIGGER(quint32 , acidConcentrateRejectReason , 0 ) + TRIGGER(quint32 , bicarbonateConcentrateRejectReason , 0 ) + TRIGGER(quint32 , dialyzerTypeRejectReason , 0 ) - const quint32 heparinType_Res = 1 ; // PRS ??? - const quint32 acidConcentrate_Res = 1 ; // PRS 35 - const quint32 bicarbonateConcentrate_Res = 1 ; // PRS 351 - const quint32 dialyzerType_Res = 1 ; // PRS 352 + TRIGGER (quint32 , dialysateTempRejectReason , 0 ) + TRIGGER (quint32 , arterialPressureLimitWindowRejectReason , 0 ) + TRIGGER (quint32 , venousPressureLimitWindowRejectReason , 0 ) + TRIGGER (quint32 , venousPressureLimitAsymtrcRejectReason , 0 ) + TRIGGER (quint32 , bloodPressureMeasureIntervalRejectReason , 0 ) + TRIGGER (quint32 , rinsebackFlowRateRejectReason , 0 ) - // Celsius - const qreal dialysateTemp_Def = 37 ; // PRS 353 - const qreal dialysateTemp_Min = 35 ; // PRS 353 - const qreal dialysateTemp_Max = 38 ; // PRS 353 - const qreal dialysateTemp_Res = 0.5 ; // PRS 353 - // mmHg - const qint32 arterialPressureLimitLow_Def = -300 ; // PRS 354 - const qint32 arterialPressureLimitLow_Min = -300 ; // PRS 354 - const qint32 arterialPressureLimitLow_Max = -30 ; // PRS 354 - const qint32 arterialPressureLimitLow_Res = 10 ; // PRS 354 + VIEW_DEC_CLASS(VTreatmentCreate) + VIEW_DEC_SLOT(AdjustParametersValidationResponseData) + VIEW_DEC_SLOT(AdjustSerialNumberHDResponseData) - // mmHg - const qint32 arterialPressureLimitHigh_Def = 0 ; // PRS 355 - const qint32 arterialPressureLimitHigh_Min = -270 ; // PRS 355 - const qint32 arterialPressureLimitHigh_Max = 0 ; // PRS 355 - const qint32 arterialPressureLimitHigh_Res = 10 ; // PRS 355 - - // mmHg - const qint32 venousPressureLimitLow_Def = 20 ; // PRS 356 - const qint32 venousPressureLimitLow_Min = 20 ; // PRS 356 - const qint32 venousPressureLimitLow_Max = 570 ; // PRS 356 - const qint32 venousPressureLimitLow_Res = 10 ; // PRS 356 - - // mmHg - const qint32 venousPressureLimitHigh_Def = 400 ; // PRS 357 - const qint32 venousPressureLimitHigh_Min = 50 ; // PRS 357 - const qint32 venousPressureLimitHigh_Max = 600 ; // PRS 357 - const qint32 venousPressureLimitHigh_Res = 10 ; // PRS 357 - - // min - const quint32 bloodPressureMeasureInterval_Def = 30 ; // PRS 358 - const quint32 bloodPressureMeasureInterval_Min = 0 ; // PRS 358 - const quint32 bloodPressureMeasureInterval_Max = 60 ; // PRS 358 - const quint32 bloodPressureMeasureInterval_Res = 5 ; // PRS 358 - - // mL/min - const quint32 rinsebackFlowRate_Def = 75 ; // PRS 359 - const quint32 rinsebackFlowRate_Min = 50 ; // PRS 359 - const quint32 rinsebackFlowRate_Max = 150 ; // PRS 359 - const quint32 rinsebackFlowRate_Res = 25 ; // PRS 359 - - enum ACID_ENUM { - eAcidUnset = 9999, - eAcid01 = 0, - eAcid02 , - eAcid03 , - }; - - enum BICARBONATE_ENUM { - eBicarbUnset= 9999, - eBicarb01 = 0, - }; - - enum DIALYZER_ENUM { - eDialyzerUnset = 9999, - eDialyzer01 = 0, - eDialyzer02 , - eDialyzer03 , - }; - - enum HEPARIN_ENUM { - eHeparinUnset = 9999, - eHeparin01 = 0, - }; - -protected: - TREATMENT_PARAMETER(quint32, bloodFlowRate, bloodFlowRate_Def, bloodFlowRate_Min, bloodFlowRate_Max, bloodFlowRate_Res) - TREATMENT_PARAMETER(quint32, dialysateFlowRate, dialysateFlowRate_Def, dialysateFlowRate_Min, dialysateFlowRate_Max, dialysateFlowRate_Res) - TREATMENT_PARAMETER(quint32, duration, duration_Def, duration_Min, duration_Max, duration_Res) - TREATMENT_PARAMETER(qreal, heparinDispensingRate, heparinDispensingRate_Def, heparinDispensingRate_Min, heparinDispensingRate_Max, heparinDispensingRate_Res) - TREATMENT_PARAMETER(qreal, heparinBolusVolume, heparinBolusVolume_Def, heparinBolusVolume_Min, heparinBolusVolume_Max, heparinBolusVolume_Res) - TREATMENT_PARAMETER(quint32, heparinStopTime, heparinStopTime_Def, heparinStopTime_Min, heparinStopTime_Max, heparinStopTime_Res) - TREATMENT_PARAMETER(quint32, salineBolusVolume, salineBolusVolume_Def, salineBolusVolume_Min, salineBolusVolume_Max, salineBolusVolume_Res) - - TREATMENT_PARAMETER(quint32, heparinType, eHeparinUnset, eHeparin01, eHeparin01, heparinType_Res) - TREATMENT_PARAMETER(quint32, acidConcentrate, eAcidUnset, eAcid01, eAcid03, acidConcentrate_Res) - TREATMENT_PARAMETER(quint32, bicarbonateConcentrate, eBicarbUnset, eBicarb01, eBicarb01, bicarbonateConcentrate_Res) - TREATMENT_PARAMETER(quint32, dialyzerType, eDialyzerUnset, eDialyzer01, eDialyzer03, dialyzerType_Res) - - TREATMENT_PARAMETER(qreal, dialysateTemp, dialysateTemp_Def, dialysateTemp_Min, dialysateTemp_Max, dialysateTemp_Res) - TREATMENT_PARAMETER(qint32, arterialPressureLimitLow, arterialPressureLimitLow_Def, arterialPressureLimitLow_Min, arterialPressureLimitLow_Max, arterialPressureLimitLow_Res) - TREATMENT_PARAMETER(qint32, arterialPressureLimitHigh, arterialPressureLimitHigh_Def, arterialPressureLimitHigh_Min, arterialPressureLimitHigh_Max, arterialPressureLimitHigh_Res) - TREATMENT_PARAMETER(qint32, venousPressureLimitLow, venousPressureLimitLow_Def, venousPressureLimitLow_Min, venousPressureLimitLow_Max, venousPressureLimitLow_Res) - TREATMENT_PARAMETER(qint32, venousPressureLimitHigh, venousPressureLimitHigh_Def, venousPressureLimitHigh_Min, venousPressureLimitHigh_Max, venousPressureLimitHigh_Res) - TREATMENT_PARAMETER(quint32, bloodPressureMeasureInterval, bloodPressureMeasureInterval_Def, bloodPressureMeasureInterval_Min, bloodPressureMeasureInterval_Max, bloodPressureMeasureInterval_Res) - TREATMENT_PARAMETER(quint32, rinsebackFlowRate, rinsebackFlowRate_Def, rinsebackFlowRate_Min, rinsebackFlowRate_Max, rinsebackFlowRate_Res) - -protected: - PROPERTY(QString , patientID , "") - PROPERTY(QStringList, heparinTypeOptions , {}) - PROPERTY(QStringList, acidConcentrateOptions , {}) - PROPERTY(QStringList, bicarbonateConcentrateOptions , {}) - PROPERTY(QStringList, dialyzerTypeOptions , {}) - PROPERTY(bool , continueEnabled , false) - - AdjustParametersValidationRequestData treatmentData; // OK - - bool validate(const AdjustParametersValidationRequestData &vData); - void setTreatmentData(); - private: QString enumToString(GuiRequestReasons vEnum); + void generateTxCode(); + signals: void didAdjustment(const AdjustParametersValidationRequestData &data); void didAdjustment(const AdjustParametersConfirmRequestData &data); - void resetCreateTreatment(); - void fwValidationFailed(QString reason); - void fwValidationSuccess(); - void scrollToParameter(QString parameter); + void didValidationFail(); + void didValidationPass(); -private slots: - bool onActionReceive(AdjustParametersValidationResponseData data); - void onSettingsDone(); - public slots: - void doResetCreateTreatment(); - void doValidation(); - void doConfirm(); - void doCancel(); - void doUserModifiedParameters(); + void doValidation (); + void doConfirm (); + void doCancel (); - QStringList doGetPrescriptionParameterNames(); QStringList doGetPrescriptionParameterValues(); - QStringList doGetOperatingParameterNames(); QStringList doGetOperatingParameterValues(); }; }