1
0
forked from BRT/arc
Commit Graph

82 Commits

Author SHA1 Message Date
slava
e760f2bb5f Optimize database logging, improve thread performance, and implement periodic maintenance to avoid GUI blocking. Replace infinite waits in AdbUtils with safe timeouts to prevent thread starvation. 2026-06-05 14:39:29 +05:00
slava
d7fc838d1a Remove database file handling from LogArchiveSender, revise emergency purge logic in monitoring, and enhance error reporting in BankSetupWizard. 2026-06-04 23:28:26 +05:00
slava
0168cf7610 Disable server-side material DELETE operations across multiple workflows; restrict DELETE to card toggling in AccountSettingsWindow. 2026-06-02 14:38:18 +05:00
slava
7d953add94 Expand AppVersionTrack documentation with guidelines for adding new app versions. 2026-06-01 19:55:45 +05:00
slava
5c2aba0505 Include androidId in TaskDumpMeta and update related scripts for improved device identification and tracking. 2026-05-31 21:23:50 +05:00
slava
63fa25a087 Remove unused "notes" field from update mechanism and refactor version availability prompts for improved clarity. 2026-05-30 14:14:55 +05:00
slava
ce61986035 Add update mechanism for ARC: implement UpdateService for version checks, downloads, and staging; add ApplyUpdate for file copying and relaunch; integrate update actions into MainWindow and workflows. 2026-05-30 13:36:50 +05:00
slava
992073d43d Add support for database wipe on exit, including delayed deletion handling and user-triggered wipe option in GUI. Update DatabaseManager with sentinel logic and file path utilities. 2026-05-30 12:29:23 +05:00
slava
b8da23fa6c Add DesktopSelectionWindow with UI logic for selecting or creating desktops. Update NetworkService to handle desktop selection flow. Improve desktop synchronization and settings management. Enhance mock server to support desktop device data in tests. 2026-05-28 19:12:27 +05:00
slava
07399670c0 Introduce MaterialPayload utility for consistent material data serialization and API operations. Refactor profile and material handling logic across scripts and UI components to ensure invariant enforcement and improved server synchronization. Add deleteMaterial operation to NetworkService. 2026-05-27 13:29:07 +05:00
slava
50a7b20f0a Add transactionId support to EventHandler, EventDAO, and related components for improved event tracking and error handling. Update database queries, error reporting, and UI logic accordingly.
(cherry picked from commit 067b16f700)
2026-05-26 19:39:35 +05:00
slava
82ac22f635 Remove outdated AppLogDAO, LogWindow, and related functionalities. Introduce NetworkErrorUtils for detailed error categorization and enhanced logging. Refactor EventHandler to support balance adjustments and optimize thread cleanup. Add retry and timeout mechanisms to network services with improved error handling. 2026-05-23 18:37:49 +05:00
slava
36567e78a4 Integrate DeviceScreener with NetworkService for status synchronization, including debounce logic for online/offline transitions and periodic sync initiation. Refactor startDeviceScreener and startNetworkService to enable inter-component interaction. 2026-05-22 16:19:41 +05:00
slava
07871231a3 Add enhanced error handling, logging, and monitoring capabilities across systems. Include archive naming, retry logic for partial PIN entry, API response error dialogs, and support for monitoring tokens. 2026-05-21 13:52:29 +05:00
slava
56ba89522c Handle missing timezone in created_at field for transaction parsing by enforcing UTC interpretation. Improve date range detection and scrolling logic in GetLastTransactionsScript to handle sticky headers. Prevent unregistered devices from displaying bank profiles in DeviceWidget. 2026-05-20 18:22:17 +05:00
slava
7bf49ba749 Add app_version tracking: database schema migration, ADB utility support, and UI enhancements. 2026-05-18 18:42:59 +05:00
slava
abcc3cadb2 Add card number validation and fix card table display logic in BankSetupWizard. 2026-05-13 10:41:56 +07:00
slava
3751406c36 Add PAN field detection and account number UI updates.
- Extend `ScreenXmlParser` with `findPanCardNumberInput` for detecting empty PAN fields in Ozon WebView.
- Update `PayByCardScript` to handle missing hints for recipient card input.
- Temporarily disable advanced account number parsing in `GetCardInfoScript`.
- Add `patchMaterial` method to `NetworkService` for updating account details.
- Update card management UI with refined "Switch" button logic and label changes.
2026-05-13 02:03:20 +07:00
slava
afe83e17c2 Filter bank profiles by profile country and sync material statuses with server:
- Add `m_pathProfileGetInfo` to retrieve profile country and currency during login.
- Update bank profile filtering logic in `BankProfileDAO`, `DeviceSettingsWindow`, and `DeviceWidget` to match the profile country from `SettingsDAO`.
- Synchronize material statuses with the server in `toggleMaterial`.
2026-05-11 15:52:54 +07:00
slava
46aca63341 Update MainWindow to call sendLogsToBackend instead of sendLogToTelegram. 2026-05-07 22:56:11 +07:00
slava
1ab023b45e Rename sendLogToTelegram to sendLogsToBackend in FileLogWindow. 2026-05-07 22:54:14 +07:00
slava
9c2ec74f76 - Add findSumEditText to ScreenXmlParser for enhanced sum field detection.
- Update `PayByPhoneScript` and `PayByCardScript` to use `findSumEditText` as a fallback.
- Enhance `FileLogWindow` to export logs and database files to backend via `NetworkService`.
- Add `networkService` getter in `TaskDumpRecorder` for centralizing access to `NetworkService`.
2026-05-07 22:54:06 +07:00
slava
11e8f00e42 Add OCR utilities and backend integration for enhanced screen dump analysis:
- Introduce `OcrUtils` with fuzzy-matching logic for text recognition on screenshots.
- Implement dual-pass OCR to handle light-on-dark and dark-on-light text cases.
- Replace hardcoded "Подтверждаю" button tap logic with OCR-based detection and fallback geometry.
- Update `TaskDumpRecorder` to utilize `NetworkService` for uploading screen dumps, images, and metadata to the backend.
- Add support for `/monitoring/dump` endpoint in `NetworkService`.
- Enhance UI functionality with new error handling and progress feedback during dump creation and upload.
2026-04-30 19:17:17 +07:00
slava
f7a187ec88 Add getRawScreenDumpAsXml to capture 2026-04-27 20:41:16 +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
0a460d10a0 Add exclusive material activation logic to MaterialDAO and improve card selection in BankSetupWizard. 2026-04-23 20:44:44 +07:00
slava
d854da3e8f Standardize error reporting across services:
- Add `event_type` to error data.
- Replace dynamic `type` with "ERROR" for task results and error messages.
2026-04-20 17:21:22 +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
4407f999c7 Use device name and timestamp to generate unique filenames for XML dumps to avoid overwriting files during uploads. 2026-04-11 14:51:44 +07:00
slava
4f3e2e472f Add screen dump feature with screenshot and XML upload to Telegram, adjust UI layout to use QVBoxLayout for button alignment. 2026-04-11 14:48:26 +07:00
slava
7931a10b88 Fix for windows 2026-04-08 15:43:59 +07:00
slava
6d3f76feea - Add log panel to the devices page and implement log parsing with enhanced context extraction for banks and devices. Remove unused bank synchronization logic and bank list actions. 2026-04-08 09:43:38 +07:00
slava
baa60d008b Ensure BankSetupWizard triggers only when bankProfileId is empty and pinCodeChecked is false in DeviceSettingsWindow and DeviceWidget. 2026-04-06 20:16:58 +07:00
slava
c5e8fc4ed5 Ensure BankSetupWizard triggers only when bankProfileId is empty and pinCodeChecked is false in DeviceSettingsWindow and DeviceWidget. 2026-04-06 20:01:52 +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
d7c296ba42 Fix for windows 2026-04-06 19:09:39 +07:00
slava
b2bbb2207f Add cross-platform archive creation for event and log exports using platform-specific tools (zip and PowerShell). 2026-04-06 18:02:59 +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
58513eb15a - Add buttons for profile and card operations to AccountSettingsWindow with threading integration and UI state management.
- Implement `Dushanbe` automation for `GetProfileInfoScript` and `GetCardInfoScript`.
- Add device validation in `DeviceDAO` and enhance duplicate checks in `NetworkService` during synchronization.
2026-04-06 14:59:00 +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
b395ed41a5 Add bank profile toggling in DeviceWidget and enhance error handling in EventHandler
- Implemented `sendBankStatus` logic with `NetworkService` and threading for bank profile enable/disable functionality.
- Improved error handling in `EventHandler` by logging and updating events when bank profiles are disabled.
2026-03-25 16:05:49 +07:00
slava
e1b977becc Fix for windows 2026-03-24 14:20:48 +07:00
slava
8f416b3303 Refactor project naming and executable targets, enhance UI with no-devices label, tutorial handling, and app branding updates.
- Renamed project and executable from `ARCDesktopProject` to `ARC`, updating CMake files accordingly.
- Introduced dynamic no-devices label with scaling and visibility handling.
- Added tutorial display logic for first-time users with `SettingsDAO`.
- Updated application name, window title, and icon for improved branding.
- Removed unused endpoints from `config.ini`.
2026-03-24 14:03:39 +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
8ed25698e8 Add GetLastTransactionsScript and PayByCardScript implementations for Black app
Implemented `GetLastTransactionsScript` for automated retrieval of transactions, handling home screen navigation, "Ver más" button detection, and transaction list parsing with database storage. Introduced `PayByCardScript` for automated card payments, covering recipient selection, amount input, payment confirmation, and transaction logging. Added XML assets and updates to support these workflows.
2026-03-12 18:42:38 +07:00