terminado banner fidelidad

This commit is contained in:
2026-02-08 12:32:44 +01:00
parent 61e55e014f
commit 1bfe0cf3a2
7 changed files with 440 additions and 2250 deletions

View File

@ -7,13 +7,18 @@ import org.springframework.web.bind.annotation.GetMapping;
import com.imprimelibros.erp.configurationERP.VariableService;
import com.imprimelibros.erp.i18n.TranslationService;
import com.imprimelibros.erp.pedidos.Pedido;
import com.imprimelibros.erp.pedidos.PedidoRepository;
import org.springframework.security.authentication.AnonymousAuthenticationToken;
import org.springframework.security.core.Authentication;
import java.security.Principal;
import java.time.Instant;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import com.imprimelibros.erp.common.Utils;
@Controller
public class HomeController {
@ -22,9 +27,10 @@ public class HomeController {
private TranslationService translationService;
@Autowired
private VariableService variableService;
@Autowired PedidoRepository pedidoRepository;
@GetMapping("/")
public String index(Model model, Authentication authentication, Locale locale) {
public String index(Model model, Authentication authentication, Principal principal,Locale locale) {
boolean isAuthenticated = authentication != null && authentication.isAuthenticated()
&& !(authentication instanceof AnonymousAuthenticationToken);
@ -37,7 +43,8 @@ public class HomeController {
"presupuesto.impresion-cubierta",
"presupuesto.impresion-cubierta-help",
"presupuesto.iva-reducido",
"presupuesto.iva-reducido-descripcion");
"presupuesto.iva-reducido-descripcion",
"pedido.gasto-anual");
Map<String, String> translations = translationService.getTranslations(locale, keys);
model.addAttribute("languageBundle", translations);
@ -51,6 +58,11 @@ public class HomeController {
// empty translations for authenticated users
Map<String, String> translations = Map.of();
model.addAttribute("languageBundle", translations);
Instant haceUnAno = Instant.now().minusSeconds(365 * 24 * 60 * 60);
Long userId = Utils.currentUserId(principal);
double totalGastado = pedidoRepository.sumTotalByCreatedByAndCreatedAtAfter(userId, haceUnAno);
model.addAttribute("totalGastado", totalGastado);
}
return "imprimelibros/home/home";
}