Files
HIS-GUI/gui/dialogs/settlement_dialog.h
2026-04-07 17:18:33 +08:00

66 lines
1.5 KiB
C++

#ifndef SETTLEMENT_DIALOG_H
#define SETTLEMENT_DIALOG_H
#include <QDialog>
#include <QString>
#include <QTableWidget>
// Forward declarations
class QPushButton;
class QLineEdit;
class QLabel;
class QTextEdit;
namespace core {
class HisCore;
}
/**
* 结算单查看对话框
* 显示患者的结算单信息,包括所有费用和支付信息
*/
class SettlementDialog : public QDialog {
Q_OBJECT
public:
explicit SettlementDialog(core::HisCore& core, QWidget* parent = nullptr);
// 设置结算单ID进行显示
void displaySettlement(const QString& settlementID);
// 创建新的结算单
bool createNewSettlement(const QString& patientID, const QString& patientName,
const QString& dischargeDate);
private slots:
void onPrintSettlement();
void onExportSettlement();
void onConfirmSettlement();
void onClose();
private:
void setupUI();
void refreshDisplay();
void loadSettlementDetails();
core::HisCore& core_;
QString currentSettlementID_;
// UI Components
QLineEdit* settlementIDEdit_;
QLineEdit* patientIDEdit_;
QLineEdit* patientNameEdit_;
QLineEdit* dischargeDateEdit_;
QLabel* totalAmountLabel_;
QLabel* insurancePaidLabel_;
QLabel* patientPaidLabel_;
QTableWidget* itemsTable_;
QTextEdit* notesEdit_;
QPushButton* printButton_;
QPushButton* exportButton_;
QPushButton* confirmButton_;
QPushButton* closeButton_;
};
#endif