Added handling for event types (Balance, Phone) and respective processing logic in EventHandler. Introduced support for tracking and updating event statuses both locally and through network APIs. Enhanced data integrity and clarity by expanding the EventInfo model and associated database management.
58 lines
1.3 KiB
C++
58 lines
1.3 KiB
C++
#pragma once
|
|
|
|
#include <QObject>
|
|
#include <QDomElement>
|
|
#include "android/xml/Node.h"
|
|
#include "db/AccountInfo.h"
|
|
#include "db/TransactionInfo.h"
|
|
|
|
class ScreenXmlParser final : public QObject {
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit ScreenXmlParser(QObject *parent = nullptr);
|
|
|
|
~ScreenXmlParser() override;
|
|
|
|
Node tryToFindBannerOrDialog(int width, int height);
|
|
|
|
Node tryToFindSecurityBanner();
|
|
|
|
Node tryToFindSelectBottomSheet();
|
|
|
|
Node findTextNode(const QString &text);
|
|
|
|
Node findTextNode(const QString &text, int x1, int y1, int x2, int y2);
|
|
|
|
Node findFirstEditText();
|
|
|
|
Node findButtonNode(const QString &text, bool contains);
|
|
|
|
bool isHomeScreen();
|
|
|
|
|
|
QList<Node> tryToFindPinCode(const QString &pinCode, const QString &title);
|
|
|
|
QList<Node> getLast2DaysTransactions();
|
|
|
|
void parseAndSaveXml(const QString &xml);
|
|
|
|
TransactionInfo parseTransactionInfoHistory(int screenWidth, int screenHeight);
|
|
TransactionInfo parseTransactionInfo(int screenWidth, int screenHeight);
|
|
|
|
QList<TransactionInfo> parseTodayAndYesterdayReportHistory();
|
|
|
|
QList<TransactionInfo> parseTodayAndYesterdayHistory();
|
|
|
|
|
|
QList<QPair<AccountInfo, Node> > parseAccountsInfo();
|
|
|
|
void test();
|
|
|
|
private:
|
|
QList<Node> m_nodes;
|
|
QDomElement m_xml;
|
|
|
|
QList<Node> findPinCodeNodes(const QString &pinCode);
|
|
};
|