65 lines
1.4 KiB
C++
65 lines
1.4 KiB
C++
#pragma once
|
|
|
|
#include <QDialog>
|
|
#include <QLabel>
|
|
#include <QLineEdit>
|
|
#include <QProgressBar>
|
|
#include <QPushButton>
|
|
#include <QStackedWidget>
|
|
#include <QTableWidget>
|
|
#include <QThread>
|
|
|
|
#include "db/BankProfileInfo.h"
|
|
|
|
class BankSetupWizard final : public QDialog {
|
|
Q_OBJECT
|
|
|
|
public:
|
|
BankSetupWizard(QWidget *parent, const QString &deviceId, const BankProfileInfo &app);
|
|
~BankSetupWizard() override;
|
|
|
|
private:
|
|
QString m_deviceId;
|
|
BankProfileInfo m_app;
|
|
|
|
QStackedWidget *m_stack;
|
|
|
|
// Step 2
|
|
QLineEdit *m_pinCodeEdit;
|
|
|
|
// Step 3
|
|
QLabel *m_progressLabel;
|
|
QProgressBar *m_progressBar;
|
|
QPushButton *m_backBtn3;
|
|
|
|
// Step 4
|
|
QLabel *m_resultLabel;
|
|
QTableWidget *m_cardsTable;
|
|
QWidget *m_successPage;
|
|
QWidget *m_errorPage;
|
|
QLabel *m_errorText;
|
|
|
|
QThread *m_workerThread = nullptr;
|
|
QStringList m_pausedProfiles; // коды профилей, выключенных на время мастера
|
|
|
|
void pauseActiveProfiles();
|
|
void resumePausedProfiles();
|
|
|
|
QWidget *createStep1();
|
|
QWidget *createStep2();
|
|
QWidget *createStep3();
|
|
QWidget *createStep4Success();
|
|
QWidget *createStep4Error();
|
|
|
|
void startVerification();
|
|
void runPinCheck();
|
|
void runProfileCheck();
|
|
void runCardCheck();
|
|
|
|
void onVerificationSuccess();
|
|
void onVerificationError(const QString &error);
|
|
void stopWorkerThread();
|
|
|
|
void setProgress(int value, const QString &text);
|
|
};
|