1
0
forked from BRT/arc
Commit Graph

87 Commits

Author SHA1 Message Date
slava
ac8b5922ad Enable reliable activation of ADB Keyboard and improve fallback handling:
- Add comprehensive verification and logging for IME activation steps in `AdbUtils`.
- Update `PayByPhoneScript` to handle IME activation failures with error reporting.
- Improve edit text detection in `ScreenXmlParser` for devices with missing hint attributes.
2026-04-24 21:31:37 +07:00
slava
f200eae2bd Add closeGooglePlayBannerIfVisible to handle Google Play update banners across scripts:
- Integrate banner dismissal in retry loops for XML parsing in payment and profile scripts.
- Add detection logic for permission deny buttons and update banner handling in `ScreenXmlParser`.
- Ensure reliable operation during input field detection, transactions fetching, and confirmation screens.
2026-04-24 16:39:38 +07:00
slava
d480cc51b0 Enhance input field detection and retry logic across payment scripts:
- Add retry loops for input fields in `PayByPhoneScript` and `PayByCardScript` to improve reliability.
- Update window title in `MainWindow` with version info from `config.ini`.
2026-04-24 16:09:36 +07:00
slava
8c2be04787 Improve button loading and error handling in PayByCardScript:
- Add checks for the "По номеру карты" button on the payments screen.
- Refine error messages to distinguish missing button vs. incomplete screen load.
2026-04-23 21:13:31 +07:00
slava
0a460d10a0 Add exclusive material activation logic to MaterialDAO and improve card selection in BankSetupWizard. 2026-04-23 20:44:44 +07:00
slava
a2c9118c82 Increase maxScrolls limit to 30 in GetLastTransactionsScript for better transaction fetching. 2026-04-19 09:00:10 +07:00
slava
248fae6061 Improve scroll recovery logic in GetLastTransactionsScript:
- Add upward scroll handling to recover header visibility when the target header scrolls out of view.
2026-04-18 20:08:45 +07:00
slava
bac36aa5d2 Refine date header visibility logic and scroll behavior in GetLastTransactionsScript:
- Add `computeDateYCount` to detect overlapping date headers and improve visibility checks.
- Adjust swipe logic for better handling of target and older dates during transaction fetching.
-
2026-04-18 19:46:06 +07:00
slava
779e3cd74c Fix for windows 2026-04-18 19:23:56 +07:00
slava
d59bf51416 Add closeGooglePlayBannerIfVisible to handle Google Play update banners:
- Ensure banners are closed during transaction fetching in `GetLastTransactionsScript`.
- Update XML parsing workflow to accommodate banner dismissal logic.
2026-04-18 18:52:28 +07:00
slava
d0330a509a Refine transaction amount parsing and improve banner closing in Ozon scripts:
- Handle fractional amounts during transaction parsing in mock server.
- Add support for closing Google Play update banners in `Ozon` homepage handling logic.
2026-04-18 17:27:12 +07:00
slava
d9479cd3ea Refactor EventHandler and Dushanbe scripts to centralize screenshot handling:
- Introduce `connectScreenshotDushanbe` for consistent signal-slot connections in `EventHandler`.
- Emit screenshots via `CommonScript` across `PayByCard`, `PayByPhone`, and `GetLastTransactions`.
- Eliminate redundant screenshot signals in `GetLastTransactionsScript`.
2026-04-17 11:17:59 +07:00
slava
312e0b37dd Simplify adb broadcast command construction in AdbUtils for cleaner and more concise execution logic. 2026-04-16 17:29:20 +07:00
slava
899f4ff6d6 Add support for mock server state persistence, error tracking, and screenshot handling. Extend bootstrapping logic and monitoring endpoints for enhanced debugging and task management. 2026-04-14 18:46:34 +07:00
slava
628323184f Refine transaction fetching and parsing:
- Add date header parsing and swipe functionality for streamlined `Ozon` transactions list processing.
- Improve deduplication logic, date assignment, and scroll behavior in `Dushanbe` and `Ozon` scripts.
- Introduce screenshot handling for debugging transaction fetching workflows.
- Add cancellation logic by `materialId` in `EventDAO`.
- Update mock server for enhanced filename generation and PATCH support for bank profiles.
2026-04-13 22:41:15 +07:00
slava
e5e8500534 Improve logging and control flow in NetworkService and EventHandler; fix tapped assignment in GetLastTransactionsScript. 2026-04-13 18:55:08 +07:00
slava
db88cf373e Add currency mapping logic to GetCardInfoScript in all platforms and update .gitignore for mock server scenarios 2026-04-13 18:37:01 +07:00
slava
967397b5d5 Add scenarios for "FETCH_TRANSACTIONS" testing and improve bank-specific bootstrapping logic in mock server. 2026-04-12 17:29:48 +07:00
slava
dfbe1cbf72 Fix for windows 2026-04-12 16:54:34 +07:00
slava
0ab71db506 Fix for windows 2026-04-12 15:52:19 +07:00
slava
c2fc0104c6 Fix for windows 2026-04-12 15:17:28 +07:00
slava
23c3f366b1 Add mock server for local ARC backend integration tests, update config.ini for local API usage. 2026-04-12 12:11:39 +07:00
slava
d235508c70 Emit parsed transaction data as a signal to streamline GetLastTransactionsScript integration with EventHandler. 2026-04-11 19:29:47 +07:00
slava
33c8420910 Refine transaction parsing and handling logic:
- Add fast path for avoiding unnecessary app restarts if already on the home or PIN screen.
- Improve PIN code and home screen detection with fallback mechanisms.
- Implement URL and error sanitization for network messages to hide sensitive data from logs.
- Add embedded transaction parsing from content description with adjusted tap positioning logic.
- Refactor transaction fetching to use direct signal-based parsed data instead of database queries.
2026-04-11 16:37:14 +07:00
slava
d79dd93514 Refine transaction filtering logic by adjusting time-based pre-filtering with wraparound midnight support and improving detail parsing for extracting transaction metadata. 2026-04-10 19:03:35 +07:00
slava
ffb206303e Refine transaction ID generation by replacing history-based retrieval with timestamp-based fallback logic. Adjust source card selection and transaction grouping in payment scripts. 2026-04-10 18:46:33 +07:00
slava
fd99281dfb Add device timezone handling in transaction filtering and refine match logic by amount and timestamp 2026-04-10 18:14:52 +07:00
slava
76ceaed0eb Refine pin code validation logic, add device timezone support in transaction scripts, and improve XML node logging for error handling. 2026-04-10 17:55:45 +07:00
slava
14ca8348c3 Add timeout handling and process kill logic for ADB operations. Refine date and time validation in transaction fetching. Adjust EventHandler to handle "ozon" bank accounts separately. Use blocking queued connection for stopping EventHandler. 2026-04-10 15:44:55 +07:00
slava
87d74e7747 Add warning log for failed balance updates in GetCardInfoScript to improve error visibility. 2026-04-09 22:25:43 +07:00
slava
4c1ff0af0f Refine card number parsing logic in GetCardInfoScript and improve node filtering in ScreenXmlParser. 2026-04-09 22:21:05 +07:00
slava
d27f4b6b22 Add phone number to makePayment and implement fallback logic for generating transaction IDs in payment scripts. 2026-04-08 21:34:54 +07:00
slava
7931a10b88 Fix for windows 2026-04-08 15:43:59 +07:00
slava
73461b93bf - Add OCR-based fallback logic to extract bankTrExternalId in GetLastTransactionsScript when missing.
- Copy required images, trained data, and config files to the build directory during the CMake process.
2026-04-06 20:57:48 +07:00
slava
a046a27569 Fix for windows 2026-04-06 19:53:05 +07:00
slava
8ec9f37160 Replace nullptr with QCoreApplication::applicationDirPath() in OCR initialization across automation scripts to ensure correct Tesseract setup paths. Add UI overlay updates in AccountSettingsWindow for better progress visibility and enhance error handling in EventHandler for transactions missing bank_transaction_id. 2026-04-06 19:45:51 +07:00
slava
013a00c972 Add debug logging for card details in GetCardInfoScript to enhance troubleshooting. 2026-04-06 18:40:03 +07:00
slava
6647a91c88 Handle error dialog in GetLastTransactionsScript with "OK" tap and pull-to-refresh; add time pre-filtering and enhanced match validation for transactions. 2026-04-06 17:18:42 +07:00
slava
41bb5e33fd Add pause/resume functionality for active profiles in AccountSettingsWindow and improve automation scripts with OCR-based transaction ID extraction, card balance waits, and absolute value handling in event parsing. 2026-04-06 17:02:52 +07:00
slava
3ed2d4da20 Add PayByCardScript and PayByPhoneScript for Dushanbe automation, including transaction flow, OCR-based operation ID extraction, and enhanced logging. 2026-04-06 12:51:18 +07:00
slava
37b72938e8 Add CommonScript framework and implement bank-specific automation scripts including GetCardInfoScript, GetProfileInfoScript, and GetLastTransactionsScript. 2026-04-04 23:32:26 +07:00
slava
8d0eae8ec0 - Remove app_logs table and related logic, transitioning to general_logs.
- Add `pinCheckOnly` parameter in scripts to support conditional account checks.
- Prevent activation of bank profiles without active cards in `AccountSettingsWindow` and `DeviceWidget`.
- Adjust logging flow in `AppLogger` for unified data handling.
2026-03-31 14:07:23 +07:00
slava
a6509b5653 - Add database migration for screenshot column in general_logs.
- Implement `cleanupOldData` in `DatabaseManager` to remove outdated entries and optimize storage.
- Introduce `unlockScreen` in `AdbUtils` and integrate it into common scripts for screen unlocking.
- Enhance `GeneralLogDAO` to support screenshot storage and retrieval.
- Expand `FileLogWindow` with screenshot viewer and horizontal layout.
- Add device ID migration logic in `BankProfileDAO` and `MaterialDAO`.
- Improve error handling in `EventHandler` by saving and logging screenshots for critical events.
2026-03-31 13:08:02 +07:00
slava
de8c2e84d0 - Add toggleMaterial logic to NetworkService for enabling/disabling materials via PATCH request.
- Implement `toggleMaterialStatus` in `AccountSettingsWindow` for UI control and threading integration.
- Enhance `MaterialDAO` with numeric validation for `lastNumbers` field to ensure data integrity.
- Update `PayByCardScript` and `PayByPhoneScript` to handle PIN entry if required after payment confirmation.
- Introduce dynamic UI adjustments for material toggling, including a new toggle button and layout refinements.
- Add documentation for task logic in `ozon_tasks.md` and `black_tasks.md`.
- Switch default currency in `GetCardInfoScript` (Black app) from USD to ARS.
2026-03-31 11:40:34 +07:00
slava
bceceb516b Remove AccountDAO, ApplicationDAO, and related models, replacing them with BankProfileDAO and BankProfileInfo. 2026-03-31 00:11:50 +07:00
slava
b42fb5eea9 Enhance error handling, improve UI parsing logic, and refine tap retry workflows across Ozon scripts 2026-03-23 21:30:37 +07:00
slava
01f8801a73 Refactor findPinCodeNodes in ScreenXmlParser for improved PIN handling and grid detection
Optimized PIN processing by trimming spaces from input to support flexible PIN formats. Enhanced grid detection logic by introducing distinct handling for full and short rows, refining the "0" digit node assignment. Updated size thresholds for better fallback support and added debug outputs for enhanced troubleshooting.
2026-03-21 18:41:02 +07:00
slava
cefad834c7 Enhance findPinCodeNodes logic in ScreenXmlParser with regex support and size tolerance improvements
Refactored the PIN pad detection method to support flexible text matching using regex (e.g., "1", "key 1"). Updated node grouping logic to allow size tolerance for identifying clickable nodes, enabling fallback handling when exact matches fail. Improved debugging output for easier issue diagnosis.
2026-03-21 18:14:05 +07:00
slava
712b73316c Remove CommonBirbankScript and its derived classes from the codebase
Deleted `CommonBirbankScript` and its associated derived classes (`GetLastDaysHistoryBirbankScript`, `LoginAndCheckAccountsBirbankScript`, `PayByCardBirbankScript`). Removed dependencies on these scripts, including XML parsing, account handling, and transaction workflows related to the Birbank app.
2026-03-21 17:41:05 +07:00
slava
10897164e9 Fix for windows 2026-03-16 18:31:45 +07:00