53 lines
1.8 KiB
Java
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";
|
|
}
|
|
}
|