66 lines
1.5 KiB
C++
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
|