From 2520ceb6e3298b2ee0e59acc84cd778dd6668bad Mon Sep 17 00:00:00 2001 From: Robert Goldmann <deadlocker@gmx.de> Date: Sun, 8 Jan 2023 10:57:18 +0100 Subject: [PATCH] #724 - added new empty page and controller for csv import --- .../TransactionImportController.java | 38 +++++++++++++++++++ .../budgetmaster/utils/Mappings.java | 1 + .../resources/templates/helpers/navbar.ftl | 2 +- .../transactions/transactionImport.ftl | 31 +++++++++++++++ 4 files changed, 71 insertions(+), 1 deletion(-) create mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionImportController.java create mode 100644 BudgetMasterServer/src/main/resources/templates/transactions/transactionImport.ftl diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionImportController.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionImportController.java new file mode 100644 index 000000000..5b938c723 --- /dev/null +++ b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionImportController.java @@ -0,0 +1,38 @@ +package de.deadlocker8.budgetmaster.transactions; + +import de.deadlocker8.budgetmaster.controller.BaseController; +import de.deadlocker8.budgetmaster.services.HelpersService; +import de.deadlocker8.budgetmaster.utils.Mappings; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import javax.servlet.http.HttpServletRequest; + +@Controller +@RequestMapping(Mappings.TRANSACTION_IMPORT) +public class TransactionImportController extends BaseController +{ + private static class ReturnValues + { + public static final String TRANSACTION_IMPORT = "transactions/transactionImport"; + } + + private final TransactionService transactionService; + private final HelpersService helpers; + + @Autowired + public TransactionImportController(TransactionService transactionService, HelpersService helpers) + { + this.transactionService = transactionService; + this.helpers = helpers; + } + + @GetMapping + public String transactionImport(HttpServletRequest request, Model model) + { + return ReturnValues.TRANSACTION_IMPORT; + } +} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/utils/Mappings.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/utils/Mappings.java index e0c652444..60d211cec 100644 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/utils/Mappings.java +++ b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/utils/Mappings.java @@ -23,6 +23,7 @@ public final class Mappings public static final String TEMPLATES = "/templates"; public static final String TEMPLATE_GROUPS = "/templateGroups"; public static final String TRANSACTIONS = "/transactions"; + public static final String TRANSACTION_IMPORT = "/transactionImport"; public static final String TAGS = "/tags"; public static final String HINTS = "/hints"; public static final String KEYWORDS = "/keywords"; diff --git a/BudgetMasterServer/src/main/resources/templates/helpers/navbar.ftl b/BudgetMasterServer/src/main/resources/templates/helpers/navbar.ftl index 33dc1456c..977ab1f0a 100644 --- a/BudgetMasterServer/src/main/resources/templates/helpers/navbar.ftl +++ b/BudgetMasterServer/src/main/resources/templates/helpers/navbar.ftl @@ -150,7 +150,7 @@ <li class="sub-menu <#if activeID == "transactions">active</#if>"><a href="<@s.url '${link}'/>" class="waves-effect no-padding"><div class="stripe ${activeColor}"></div><i class="material-icons">${icon}</i>${text}</a></li> <li class="sub-menu sub-menu-entry <#if activeID == "templates">active</#if>"><a href="<@s.url '/templates'/>" class="waves-effect no-padding"><div class="stripe ${activeColor}"></div><i class="material-icons">${entityType.TEMPLATE.getIcon()}</i>${locale.getString("menu.transactions.templates")}</a></li> <li class="sub-menu sub-menu-entry <#if activeID == "recurring">active</#if>"><a href="<@s.url '/transactions/recurringOverview'/>" class="waves-effect no-padding"><div class="stripe ${activeColor}"></div><i class="material-icons">${entityType.RECURRING_TRANSACTIONS.getIcon()}</i>${locale.getString("menu.transactions.recurring")}</a></li> - <li class="sub-menu sub-menu-entry <#if activeID == "importCSV">active</#if>"><a href="<@s.url '/transactions/recurringOverview'/>" class="waves-effect no-padding"><div class="stripe ${activeColor}"></div><i class="${entityType.TRANSACTION_IMPORT.getIcon()} fontawesome-icon fontawesome-icon-additional-margin-left"></i>${locale.getString("menu.transactions.import")}</a></li> + <li class="sub-menu sub-menu-entry <#if activeID == "importCSV">active</#if>"><a href="<@s.url '/transactionImport'/>" class="waves-effect no-padding"><div class="stripe ${activeColor}"></div><i class="${entityType.TRANSACTION_IMPORT.getIcon()} fontawesome-icon fontawesome-icon-additional-margin-left"></i>${locale.getString("menu.transactions.import")}</a></li> <#else> <li><a href="<@s.url '${link}'/>" class="waves-effect"><i class="material-icons">${icon}</i>${text}</a></li> </#if> diff --git a/BudgetMasterServer/src/main/resources/templates/transactions/transactionImport.ftl b/BudgetMasterServer/src/main/resources/templates/transactions/transactionImport.ftl new file mode 100644 index 000000000..ac7adb4e0 --- /dev/null +++ b/BudgetMasterServer/src/main/resources/templates/transactions/transactionImport.ftl @@ -0,0 +1,31 @@ +<html> + <head> + <#import "../helpers/header.ftl" as header> + <@header.globals/> + <@header.header "BudgetMaster - ${locale.getString('menu.transactions.import')}"/> + <#import "/spring.ftl" as s> + </head> + <@header.body> + <#import "../helpers/navbar.ftl" as navbar> + <@navbar.navbar "importCSV" settings/> + + <#import "../search/searchMacros.ftl" as searchMacros> + + <main> + <div class="card main-card background-color"> + <div class="container"> + <div class="section center-align"> + <div class="headline">${locale.getString("menu.transactions.import")}</div> + </div> + </div> + + <@header.content> + </@header.content> + </div> + </main> + + <!-- Scripts--> + <#import "../helpers/scripts.ftl" as scripts> + <@scripts.scripts/> + </@header.body> +</html> \ No newline at end of file -- GitLab