From 2f1e1805244bae852d5698b6d7529bdc79f52a76 Mon Sep 17 00:00:00 2001 From: Robert Goldmann <deadlocker@gmx.de> Date: Sat, 2 Oct 2021 16:55:06 +0200 Subject: [PATCH] #596 - fixed transaction types --- .../transactions/TransactionController.java | 18 +++++++----------- .../transactions/TransactionType.java | 9 +-------- .../templates/transactions/changeTypeModal.ftl | 7 ++----- .../integration/selenium/HotkeyTest.java | 2 +- 4 files changed, 11 insertions(+), 25 deletions(-) diff --git a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionController.java b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionController.java index 9411433f1..851a40a68 100644 --- a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionController.java +++ b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionController.java @@ -143,7 +143,7 @@ public class TransactionController extends BaseController { DateTime date = dateService.getDateTimeFromCookie(cookieDate); - handlePreviousType(previousType, transaction); + handlePreviousType(transaction, isRepeating); TransactionValidator transactionValidator = new TransactionValidator(); transactionValidator.validate(transaction, bindingResult); @@ -164,9 +164,9 @@ public class TransactionController extends BaseController return handleRedirect(model, transaction.getID() != null, transaction, bindingResult, date, "transactions/newTransaction"); } - private void handlePreviousType(TransactionType previousType, Transaction transaction) + private void handlePreviousType(Transaction transaction, boolean isRepeating) { - if(previousType == TransactionType.REPEATING) + if(transaction.getID() != null && isRepeating) { transactionService.deleteTransaction(transaction.getID()); } @@ -205,7 +205,8 @@ public class TransactionController extends BaseController { DateTime date = dateService.getDateTimeFromCookie(cookieDate); - handlePreviousType(previousType, transaction); +// TODO +// handlePreviousType(transaction, isRepeating); TransactionValidator transactionValidator = new TransactionValidator(); transactionValidator.validate(transaction, bindingResult); @@ -333,18 +334,13 @@ public class TransactionController extends BaseController { case NORMAL: transactionCopy.setTransferAccount(null); - transactionCopy.setRepeatingOption(null); redirectUrl = "transactions/newTransactionNormal"; break; -// TODO - case REPEATING: - transactionCopy.setTransferAccount(null); - redirectUrl = "transactions/newTransactionRepeating"; - break; case TRANSFER: - transactionCopy.setRepeatingOption(null); redirectUrl = "transactions/newTransactionTransfer"; break; + default: + throw new IllegalStateException("Unexpected value: " + newTransactionType); } DateTime date = dateService.getDateTimeFromCookie(cookieDate); diff --git a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionType.java b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionType.java index 1c515e802..26ba6bab1 100644 --- a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionType.java +++ b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionType.java @@ -5,8 +5,7 @@ import java.util.Optional; public enum TransactionType { NORMAL(1), - REPEATING(2), - TRANSFER(3); + TRANSFER(2); private final int typeID; @@ -27,8 +26,6 @@ public enum TransactionType case 1: return Optional.of(NORMAL); case 2: - return Optional.of(REPEATING); - case 3: return Optional.of(TRANSFER); default: return Optional.empty(); @@ -41,10 +38,6 @@ public enum TransactionType { return TRANSFER; } - else if(transaction.isRepeating()) - { - return REPEATING; - } else { return NORMAL; diff --git a/src/main/resources/templates/transactions/changeTypeModal.ftl b/src/main/resources/templates/transactions/changeTypeModal.ftl index 21461c072..35fd2eb42 100644 --- a/src/main/resources/templates/transactions/changeTypeModal.ftl +++ b/src/main/resources/templates/transactions/changeTypeModal.ftl @@ -14,14 +14,11 @@ <div class="row"> <div class="input-field col s12"> <select id="newTypeSelect"> - <#if transaction.isRepeating() || transaction.isTransfer()> + <#if transaction.isTransfer()> <option value="1">${locale.getString("title.transaction.new.normal")}</option> </#if> - <#if !transaction.isRepeating()> - <option value="2">${locale.getString("title.transaction.new.repeating")}</option> - </#if> <#if !transaction.isTransfer()> - <option value="3">${locale.getString("title.transaction.new.transfer")}</option> + <option value="2">${locale.getString("title.transaction.new.transfer")}</option> </#if> </select> <label for="newTypeSelect">${locale.getString("transaction.change.type.new")}</label> diff --git a/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/HotkeyTest.java b/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/HotkeyTest.java index dd5b33d5e..d2dad4313 100644 --- a/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/HotkeyTest.java +++ b/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/HotkeyTest.java @@ -73,7 +73,7 @@ class HotkeyTest extends SeleniumTestBase } @Test - public void hotkey_newTransaction_transfer() + void hotkey_newTransaction_transfer() { driver.findElement(By.tagName("body")).sendKeys("t"); -- GitLab