Index: sources/gui/qml/pages/settings/SettingsAdvancedInstitutional.qml =================================================================== diff -u -re49c956894f999f6539b0c404dd1c9b18a76bb4b -r49271f2bd039c9d15586c7c9b2f57f80c801d819 --- sources/gui/qml/pages/settings/SettingsAdvancedInstitutional.qml (.../SettingsAdvancedInstitutional.qml) (revision e49c956894f999f6539b0c404dd1c9b18a76bb4b) +++ sources/gui/qml/pages/settings/SettingsAdvancedInstitutional.qml (.../SettingsAdvancedInstitutional.qml) (revision 49271f2bd039c9d15586c7c9b2f57f80c801d819) @@ -84,118 +84,26 @@ } } - function clearErrors() { - vAdjustmentAdvancedInstitutionalRecord.minRORejectionRatioAlarmMinRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.minRORejectionRatioAlarmMaxRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.minRORejectionRatioAlarmDefRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.disinfectionFrequencyMinRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.disinfectionFrequencyMaxRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.disinfectionFrequencyDefRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.disinfectionParametersCycleTimeMinRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.disinfectionParametersCycleTimeMaxRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.disinfectionParametersCycleTimeDefRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.maxBloodPumpStopTimeMinRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.maxBloodPumpStopTimeMaxRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.maxBloodPumpStopTimeDefRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.inletWaterCondLowThresholdMinRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.inletWaterCondLowThresholdMaxRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.inletWaterCondLowThresholdDefRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.inletWaterCondHighThresholdMinRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.inletWaterCondHighThresholdMaxRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.inletWaterCondHighThresholdDefRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.chlorineWaterSampleCheckMinRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.chlorineWaterSampleCheckMaxRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.chlorineWaterSampleCheckDefRejectionReason = Variables.noRejectReason - vAdjustmentAdvancedInstitutionalRecord.waterSampleTestResultRequiredDefRejectionReason = Variables.noRejectReason - } - Connections { target: vAdvancedInstitutionalRecord function onAdjustmentTriggered ( vValue ) { - if ( vAdvancedInstitutionalRecord.adjustment_Accepted ) { - _root.notificationText = "" - initModel() + if ( ! vAdvancedInstitutionalRecord.adjustment_Accepted ) { + _root.notificationText = vAdvancedInstitutionalRecord.adjustment_ReasonText } - else { - _root.notificationText = vAdvancedInstitutionalRecord.adjustment_ReasonText - } } } Connections { target: vAdjustmentAdvancedInstitutionalRecord function onAdjustmentTriggered ( vValue ) { if ( vAdjustmentAdvancedInstitutionalRecord.adjustment_Accepted ) { _root.notificationText = qsTr("Advanced Institutional records and preferences updated") - clearErrors() + vAdvancedInstitutionalRecord.doAdjustment() } else { _root.notificationText = qsTr("Error Adjusting Advanced Institutional Records") } } } - // To populate model with parameter ranges and initial/ set value of each institutional setting - // min - minimum range from param ranges (DataList.conf) - // max - maximum range from param ranges (DataList.conf) - // step - step or resolution from param ranges (DataList.conf) - // minVal - minimum value from institutional settings in FW - // maxVin - maximum value from institutional settings in FW - // defVal - default value from institutional settings in FW - // decimal - preceision of value - // rejection- rejection re3ason from adjust record - function initModel() { - advancedInstitutionalModel.clear() - // Order matters - // MinRoRejectionRatio - advancedInstitutionalModel.append({ "min" : vTreatmentRanges.minRORejectionRatioAlarmMin, "max" : vTreatmentRanges.minRORejectionRatioAlarmMax, - "step" : vTreatmentRanges.minRORejectionRatioAlarmRes, "decimal" : 0, - "minVal": vAdvancedInstitutionalRecord.minRORejectionRatioAlarmMin, "rejectionMax": vAdjustmentAdvancedInstitutionalRecord.minRORejectionRatioAlarmMaxRejectionReason, - "maxVal": vAdvancedInstitutionalRecord.minRORejectionRatioAlarmMax, "rejectionMin": vAdjustmentAdvancedInstitutionalRecord.minRORejectionRatioAlarmMinRejectionReason, - "defVal": vAdvancedInstitutionalRecord.minRORejectionRatioAlarmDef, "rejectionDef": vAdjustmentAdvancedInstitutionalRecord.minRORejectionRatioAlarmDefRejectionReason }); - // DisinfectionFrequency - advancedInstitutionalModel.append({ "min" : vTreatmentRanges.disinfectionFrequencyMin, "max" : vTreatmentRanges.disinfectionFrequencyMax, - "step" : vTreatmentRanges.disinfectionFrequencyRes, "decimal" : 0, - "minVal": vAdvancedInstitutionalRecord.disinfectionFrequencyMin, "rejectionMax": vAdjustmentAdvancedInstitutionalRecord.disinfectionFrequencyMaxRejectionReason, - "maxVal": vAdvancedInstitutionalRecord.disinfectionFrequencyMax, "rejectionMin": vAdjustmentAdvancedInstitutionalRecord.disinfectionFrequencyMinRejectionReason, - "defVal": vAdvancedInstitutionalRecord.disinfectionFrequencyDef, "rejectionDef": vAdjustmentAdvancedInstitutionalRecord.disinfectionFrequencyDefRejectionReason }); - // DisinfectionParametersCycleTime - advancedInstitutionalModel.append({ "min" : vTreatmentRanges.disinfectionParametersCycleTimeMin, "max" : vTreatmentRanges.disinfectionParametersCycleTimeMax, - "step" : vTreatmentRanges.disinfectionParametersCycleTimeRes, "decimal" : 0, - "minVal": vAdvancedInstitutionalRecord.disinfectionParametersCycleTimeMin, "rejectionMax": vAdjustmentAdvancedInstitutionalRecord.disinfectionParametersCycleTimeMaxRejectionReason, - "maxVal": vAdvancedInstitutionalRecord.disinfectionParametersCycleTimeMax, "rejectionMin": vAdjustmentAdvancedInstitutionalRecord.disinfectionParametersCycleTimeMinRejectionReason, - "defVal": vAdvancedInstitutionalRecord.disinfectionParametersCycleTimeDef, "rejectionDef": vAdjustmentAdvancedInstitutionalRecord.disinfectionParametersCycleTimeDefRejectionReason}); - // MaxBloodPumpStopTime - advancedInstitutionalModel.append({ "min" : vTreatmentRanges.maxBloodPumpStopTimeMin, "max" : vTreatmentRanges.maxBloodPumpStopTimeMax, - "step" : vTreatmentRanges.maxBloodPumpStopTimeRes, "decimal" : 0, - "minVal": vAdvancedInstitutionalRecord.maxBloodPumpStopTimeMin, "rejectionMax": vAdjustmentAdvancedInstitutionalRecord.maxBloodPumpStopTimeMaxRejectionReason, - "maxVal": vAdvancedInstitutionalRecord.maxBloodPumpStopTimeMax, "rejectionMin": vAdjustmentAdvancedInstitutionalRecord.maxBloodPumpStopTimeMinRejectionReason, - "defVal": vAdvancedInstitutionalRecord.maxBloodPumpStopTimeDef, "rejectionDef": vAdjustmentAdvancedInstitutionalRecord.maxBloodPumpStopTimeDefRejectionReason }); - // InletWaterCondLowThreshold - advancedInstitutionalModel.append({ "min" : vTreatmentRanges.inletWaterCondLowThresholdMin, "max" : vTreatmentRanges.inletWaterCondLowThresholdMax, - "step" : vTreatmentRanges.inletWaterCondLowThresholdRes, "decimal" : 0, - "minVal": vAdvancedInstitutionalRecord.inletWaterCondLowThresholdMin, "rejectionMax": vAdjustmentAdvancedInstitutionalRecord.inletWaterCondLowThresholdMaxRejectionReason, - "maxVal": vAdvancedInstitutionalRecord.inletWaterCondLowThresholdMax, "rejectionMin": vAdjustmentAdvancedInstitutionalRecord.inletWaterCondLowThresholdMinRejectionReason, - "defVal": vAdvancedInstitutionalRecord.inletWaterCondLowThresholdDef, "rejectionDef": vAdjustmentAdvancedInstitutionalRecord.inletWaterCondLowThresholdDefRejectionReason }); - // InletWaterCondHighThreshold - advancedInstitutionalModel.append({ "min" : vTreatmentRanges.inletWaterCondHighThresholdMin, "max" : vTreatmentRanges.inletWaterCondHighThresholdMax, - "step" : vTreatmentRanges.inletWaterCondHighThresholdRes, "decimal" : 0, - "minVal": vAdvancedInstitutionalRecord.inletWaterCondHighThresholdMin, "rejectionMax": vAdjustmentAdvancedInstitutionalRecord.inletWaterCondHighThresholdMaxRejectionReason, - "maxVal": vAdvancedInstitutionalRecord.inletWaterCondHighThresholdMax, "rejectionMin": vAdjustmentAdvancedInstitutionalRecord.inletWaterCondHighThresholdMinRejectionReason, - "defVal": vAdvancedInstitutionalRecord.inletWaterCondHighThresholdDef, "rejectionDef": vAdjustmentAdvancedInstitutionalRecord.inletWaterCondHighThresholdDefRejectionReason }); - // ChlorineWaterSampleCheck - advancedInstitutionalModel.append({ "min" : vTreatmentRanges.chlorineWaterSampleCheckMin, "max" : vTreatmentRanges.chlorineWaterSampleCheckMax, - "step" : vTreatmentRanges.chlorineWaterSampleCheckRes, "decimal" : 0, - "minVal": vAdvancedInstitutionalRecord.chlorineWaterSampleCheckMin, "rejectionMax": vAdjustmentAdvancedInstitutionalRecord.chlorineWaterSampleCheckMaxRejectionReason, - "maxVal": vAdvancedInstitutionalRecord.chlorineWaterSampleCheckMax, "rejectionMin": vAdjustmentAdvancedInstitutionalRecord.chlorineWaterSampleCheckMinRejectionReason, - "defVal": vAdvancedInstitutionalRecord.chlorineWaterSampleCheckDef, "rejectionDef": vAdjustmentAdvancedInstitutionalRecord.chlorineWaterSampleCheckDefRejectionReason }); - // WaterSampleTestResultRequired - advancedInstitutionalModel.append({ "min" : _root.none, "max" : _root.none, - "step" : _root.none, "decimal" : 0, - "minVal": _root.none, "defVal" : vAdvancedInstitutionalRecord.waterSampleTestResultRequiredDef, - "maxVal": _root.none, "rejectionDef": vAdjustmentAdvancedInstitutionalRecord.waterSampleTestResultRequiredDefRejectionReason }); - } - - ListModel { id: advancedInstitutionalModel } - component HeaderText: Text { id: _headerText property string title : "" property int leftMargin : Variables.defaultMargin * 8.5 @@ -300,26 +208,25 @@ } boundsBehavior : Flickable.StopAtBounds clip : true - model : advancedInstitutionalModel + model : vAdvancedInstitutionalRecord.model spacing : anchors.topMargin flickableDirection : Flickable.VerticalFlick delegate: InstitutionalContainer { id: _delegateControl width : _listContent.contentWith - text : _root.title[index] === undefined ? "" : _root.title[index] - unitText : _root.unit[index] === undefined ? "" : _root.unit[index] + text : model.title + unitText : model.unit contentArea.anchors.leftMargin : width * 0.25 - - min : model.min - max : model.max - step : model.step - decimal : model.decimal - minVal : model.minVal - maxVal : model.maxVal - defVal : model.defVal - rejectionMin: model.rejectionMin - rejectionMax: model.rejectionMax - rejectionDef: model.rejectionDef + min : model.min ?? 0 + max : model.max ?? 0 + step : model.step ?? 0 + decimal : model.decimal ?? 0 + minVal : model.minVal ?? 0 + maxVal : model.maxVal ?? 0 + defVal : model.defVal ?? 0 + rejectionMin: model.rejectionMin ?? 0 + rejectionMax: model.rejectionMax ?? 0 + rejectionDef: model.rejectionDef ?? 0 maxText : "NA" minText : "NA" defModel : index === SettingsAdvancedInstitutional.WaterSampleTestResultRequired ? vTreatmentRanges.waterSampleTestResultRequired : [] @@ -328,6 +235,10 @@ _listView.interactive = ! grabbed } + onDidChange: function (vValue) { + vAdvancedInstitutionalRecord.clearRejectionReason( index , vValue ) + } + RoFeatureIndicator { anchors { left : parent.left