Files
as-talange/as-talange-web/src/main/java/com/astalange/web/controller/ModePaiementController.java
T

53 lines
1.8 KiB
Java

package com.astalange.web.controller;
import com.astalange.core.entity.ModePaiement;
import com.astalange.core.repository.ModePaiementRepository;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
@Controller
@RequestMapping("/modespaiement")
public class ModePaiementController {
private final ModePaiementRepository modePaiementRepository;
public ModePaiementController(ModePaiementRepository modePaiementRepository) {
this.modePaiementRepository = modePaiementRepository;
}
@GetMapping
public String listModes(Model model) {
model.addAttribute("modes", modePaiementRepository.findAll());
return "parametrage/modespaiement_list";
}
@GetMapping("/new")
public String showCreateForm(Model model) {
model.addAttribute("modePaiement", new ModePaiement());
return "parametrage/modespaiement_form";
}
@GetMapping("/{id}/edit")
public String showEditForm(@PathVariable Long id, Model model) {
ModePaiement mode = modePaiementRepository.findById(id)
.orElseThrow(() -> new IllegalArgumentException("Invalid ID: " + id));
model.addAttribute("modePaiement", mode);
return "parametrage/modespaiement_form";
}
@PostMapping
public String saveMode(@ModelAttribute("modePaiement") ModePaiement modePaiement) {
modePaiementRepository.save(modePaiement);
return "redirect:/modespaiement";
}
@PostMapping("/{id}/delete")
public String deleteMode(@PathVariable Long id) {
ModePaiement mode = modePaiementRepository.findById(id)
.orElseThrow(() -> new IllegalArgumentException("Invalid ID: " + id));
modePaiementRepository.delete(mode);
return "redirect:/modespaiement";
}
}