Index: simulator/plugins/PostTreatment/loader.py =================================================================== diff -u -rae63fbc76b4638ffdcdaad7b69648beeee3340c3 -r82ea7accddf6d599fe4d8730722d567d3d7b4ed7 --- simulator/plugins/PostTreatment/loader.py (.../loader.py) (revision ae63fbc76b4638ffdcdaad7b69648beeee3340c3) +++ simulator/plugins/PostTreatment/loader.py (.../loader.py) (revision 82ea7accddf6d599fe4d8730722d567d3d7b4ed7) @@ -67,6 +67,26 @@ leDeviceID: QtWidgets.QLineEdit leWaterSampleTestResult: QtWidgets.QLineEdit + btnTxLogDataSend: QtWidgets.QPushButton + leTxLogDataTimestamp: QtWidgets.QLineEdit + leTxLogDataBloodFlowRate: QtWidgets.QLineEdit + leTxLogDataDialysateFlowRate: QtWidgets.QLineEdit + leTxLogDataUFRate: QtWidgets.QLineEdit + leTxLogDataArterialPressure: QtWidgets.QLineEdit + leTxLogDataVenousPressure: QtWidgets.QLineEdit + + btnTxLogAlarmSend: QtWidgets.QPushButton + leTxLogAlarmTimestamp: QtWidgets.QLineEdit + leTxLogAlarmID: QtWidgets.QLineEdit + leTxLogAlarmP1: QtWidgets.QLineEdit + leTxLogAlarmP2: QtWidgets.QLineEdit + + btnTxLogEventSend: QtWidgets.QPushButton + leTxLogEventTimestamp: QtWidgets.QLineEdit + leTxLogEventID: QtWidgets.QLineEdit + leTxLogEventOld: QtWidgets.QLineEdit + leTxLogEventNew: QtWidgets.QLineEdit + def __init__(self, hd_simulator: HDSimulator): super().__init__(os.path.dirname(__file__), hd_simulator) @@ -120,6 +140,26 @@ self.leDeviceID = self.find_line_edit('leDeviceID') self.leWaterSampleTestResult = self.find_line_edit('leWaterSampleTestResult') + self.btnTxLogDataSend = self.find_button('btnTxLogDataSend') + self.leTxLogDataTimestamp = self.find_line_edit('leTxLogDataTimestamp') + self.leTxLogDataBloodFlowRate = self.find_line_edit('leTxLogDataBloodFlowRate') + self.leTxLogDataDialysateFlowRate = self.find_line_edit('leTxLogDataDialysateFlowRate') + self.leTxLogDataUFRate = self.find_line_edit('leTxLogDataUFRate') + self.leTxLogDataArterialPressure = self.find_line_edit('leTxLogDataArterialPressure') + self.leTxLogDataVenousPressure = self.find_line_edit('leTxLogDataVenousPressure') + + self.btnTxLogAlarmSend = self.find_button('btnTxLogAlarmSend') + self.leTxLogAlarmTimestamp = self.find_line_edit('leTxLogAlarmTimestamp') + self.leTxLogAlarmID = self.find_line_edit('leTxLogAlarmID') + self.leTxLogAlarmP1 = self.find_line_edit('leTxLogAlarmP1') + self.leTxLogAlarmP2 = self.find_line_edit('leTxLogAlarmP2') + + self.btnTxLogEventSend = self.find_button('btnTxLogEventSend') + self.leTxLogEventTimestamp = self.find_line_edit('leTxLogEventTimestamp') + self.leTxLogEventID = self.find_line_edit('leTxLogEventID') + self.leTxLogEventOld = self.find_line_edit('leTxLogEventOld') + self.leTxLogEventNew = self.find_line_edit('leTxLogEventNew') + def _init_widgets(self): """ initializes the widgets' properties @@ -135,17 +175,70 @@ self.btnAcceptDisposableConfirm.clicked.connect(self.do_accept_disposable_confirm) self.btnRejectDisposableConfirm.clicked.connect(self.do_reject_disposable_confirm) + self.btnTxLogDataSend.clicked.connect(self.do_send_tx_log_data) + self.btnTxLogAlarmSend.clicked.connect(self.do_send_tx_log_alarm) + self.btnTxLogEventSend.clicked.connect(self.do_send_tx_log_event) + self.btnAcceptTxLog.clicked.connect(self.do_accept_tx_log) self.btnRejectTxLog.clicked.connect(self.do_reject_tx_log) @Slot() + def do_send_tx_log_data(self): + """ + sends the treatment log data (Average 30 min) values + :return: + """ + tx_log_data_timestamp = int(self.leTxLogDataTimestamp.text()) + tx_log_data_blood_flow_rate = int(self.leTxLogDataBloodFlowRate.text()) + tx_log_data_dialysate_flow_rate = int(self.leTxLogDataDialysateFlowRate.text()) + tx_log_data_uf_rate = float(self.leTxLogDataUFRate.text()) + tx_log_data_arterial_pressure = float(self.leTxLogDataArterialPressure.text()) + tx_log_data_venous_pressure = float(self.leTxLogDataVenousPressure.text()) + self.hd_simulator.cmd_send_treatment_log_data(tx_log_data_timestamp, + tx_log_data_blood_flow_rate, + tx_log_data_dialysate_flow_rate, + tx_log_data_uf_rate, + tx_log_data_arterial_pressure, + tx_log_data_venous_pressure) + + @Slot() + def do_send_tx_log_alarm(self): + """ + sends the treatment log alarm list of values + :return: + """ + tx_log_alarm_timestamp = int(self.leTxLogAlarmTimestamp.text()) + tx_log_alarm_id = int(self.leTxLogAlarmID.text()) + tx_log_alarm_parameter1 = int(self.leTxLogAlarmP1.text()) + tx_log_alarm_parameter2 = int(self.leTxLogAlarmP2.text()) + self.hd_simulator.cmd_send_treatment_log_alarm(tx_log_alarm_timestamp, + tx_log_alarm_id, + tx_log_alarm_parameter1, + tx_log_alarm_parameter2) + + @Slot() + def do_send_tx_log_event(self): + """ + sends the treatment log event list of values + :return: + """ + tx_log_event_timestamp = int(self.leTxLogEventTimestamp.text()) + tx_log_event_id = int(self.leTxLogEventID.text()) + tx_log_event_old_value = float(self.leTxLogEventOld.text()) + tx_log_event_new_value = float(self.leTxLogEventNew.text()) + self.hd_simulator.cmd_send_treatment_log_event(tx_log_event_timestamp, + tx_log_event_id, + tx_log_event_old_value, + tx_log_event_new_value) + + @Slot() def do_accept_disposable_confirm(self): """ the slot for accept button :return: none """ self.hd_simulator.cmd_send_post_treatment_disposable_removal_confirm_response(True, 0) - self.lblActionDisposableConfirm.setText('Accepted ') + self.lblActionDisposableConfirm.setText('Accepted') @Slot() def do_reject_disposable_confirm(self):