From 03d5d23a035534dabd3866a92d9b090fc086b528 Mon Sep 17 00:00:00 2001 From: mvvasilev Date: Thu, 28 Dec 2023 23:26:59 +0200 Subject: [PATCH] Statement parsing works, so does transaction visualization --- .idea/gradle.xml | 2 +- .idea/misc.xml | 2 +- .../controller/AbstractRestController.java | 11 + .../common/data/AbstractEnumConverter.java | 6 +- .../exceptions/InvalidUserIdException.java | 3 + .../controllers/CategoriesController.java | 20 +- .../ProcessedTransactionsController.java | 41 +- .../controllers/StatementsController.java | 20 +- .../dtos/CreateTransactionMappingDTO.java | 9 +- .../dtos/ProcessedTransactionDTO.java | 13 + .../dtos/ProcessedTransactionFieldDTO.java | 10 + .../dtos/SupportedMappingConversionDTO.java | 11 + .../finances/dtos/TransactionCategoryDTO.java | 6 + .../finances/dtos/TransactionMappingDTO.java | 6 +- .../finances/entity/ProcessedTransaction.java | 14 + .../finances/entity/RawTransactionValue.java | 2 + .../finances/entity/TransactionMapping.java | 32 ++ .../finances/enums/MappingConversionType.java | 51 +++ .../enums/ProcessedTransactionField.java | 5 +- .../persistence/CategorizationRepository.java | 31 +- .../ProcessedTransactionRepository.java | 9 + .../RawTransactionValueRepository.java | 13 + .../TransactionCategoryRepository.java | 2 + .../TransactionMappingRepository.java | 20 +- .../finances/services/CategoryService.java | 76 ++-- .../services/ProcessedTransactionService.java | 34 ++ .../finances/services/StatementsService.java | 142 ++++++- .../services/WorkbookParsingService.java | 7 - ...10__CreateProcessedTransactionCategory.sql | 2 +- .../V1.11__CreateTransactionMapping.sql | 6 +- .../migration/V1.12__CreateCategorization.sql | 12 +- .../V1.13__AddMappingConversions.sql | 4 + .../V1.14__RemoveStatementIdFromMapping.sql | 2 + .../V1.4__AddProcessedTransaction.sql | 21 +- README.md | 2 +- ...hitecture.png => finances_architecture.png | Bin frontend/package-lock.json | 31 ++ frontend/package.json | 1 + frontend/src/App.jsx | 2 + frontend/src/app/Layout.jsx | 8 +- frontend/src/app/pages/StatementsPage.jsx | 61 ++- frontend/src/app/pages/TransactionsPage.jsx | 93 +++++ .../statements/StatementMappingEditor.jsx | 364 ++++++++++++++++-- frontend/src/utils.js | 3 + 44 files changed, 1043 insertions(+), 167 deletions(-) create mode 100644 PersonalFinancesService/src/main/java/dev/mvvasilev/finances/dtos/ProcessedTransactionDTO.java create mode 100644 PersonalFinancesService/src/main/java/dev/mvvasilev/finances/dtos/ProcessedTransactionFieldDTO.java create mode 100644 PersonalFinancesService/src/main/java/dev/mvvasilev/finances/dtos/SupportedMappingConversionDTO.java create mode 100644 PersonalFinancesService/src/main/java/dev/mvvasilev/finances/dtos/TransactionCategoryDTO.java create mode 100644 PersonalFinancesService/src/main/java/dev/mvvasilev/finances/enums/MappingConversionType.java create mode 100644 PersonalFinancesService/src/main/java/dev/mvvasilev/finances/services/ProcessedTransactionService.java delete mode 100644 PersonalFinancesService/src/main/java/dev/mvvasilev/finances/services/WorkbookParsingService.java create mode 100644 PersonalFinancesService/src/main/resources/db/migration/V1.13__AddMappingConversions.sql create mode 100644 PersonalFinancesService/src/main/resources/db/migration/V1.14__RemoveStatementIdFromMapping.sql rename PersonalFinancesService/finances_architecture.png => finances_architecture.png (100%) create mode 100644 frontend/src/app/pages/TransactionsPage.jsx diff --git a/.idea/gradle.xml b/.idea/gradle.xml index f261649..b657c43 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -5,7 +5,7 @@