-
Notifications
You must be signed in to change notification settings - Fork 165
Expand file tree
/
Copy pathThymeleafVoucherController.java
More file actions
68 lines (55 loc) · 2.24 KB
/
ThymeleafVoucherController.java
File metadata and controls
68 lines (55 loc) · 2.24 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
package org.prgms.kdtspringweek1.controller.thymeleafController;
import org.prgms.kdtspringweek1.voucher.service.VoucherService;
import org.prgms.kdtspringweek1.voucher.service.dto.CreateVoucherRequestDto;
import org.prgms.kdtspringweek1.voucher.service.dto.FindVoucherResponseDto;
import org.springframework.context.annotation.Profile;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
import java.time.LocalDateTime;
import java.util.List;
import java.util.UUID;
@Controller
@RequestMapping("thymeleaf")
@Profile({"thymeleaf"})
public class ThymeleafVoucherController {
private final VoucherService voucherService;
public ThymeleafVoucherController(VoucherService voucherService) {
this.voucherService = voucherService;
}
@GetMapping("/vouchers")
public String listVouchers(Model model) {
List<FindVoucherResponseDto> vouchers = voucherService.searchAllVouchers();
model.addAttribute("serverTime", LocalDateTime.now());
model.addAttribute("vouchers", vouchers);
return "voucher/voucher-list";
}
@PostMapping("/voucher")
public String createVoucher(@ModelAttribute CreateVoucherRequestDto createVoucherRequestDto) {
voucherService.registerVoucher(createVoucherRequestDto.toVoucher());
return "voucher/voucher-create";
}
@PostMapping("/voucher-delete")
public String deleteVoucher(@RequestParam String voucherId) {
voucherService.deleteVoucherById(UUID.fromString(voucherId));
return "voucher/voucher-delete";
}
@GetMapping("/voucher")
public String searchVoucher(@RequestParam String voucherId, Model model) {
FindVoucherResponseDto voucher = voucherService.searchVoucherById(UUID.fromString(voucherId)).get();
model.addAttribute("voucher", voucher);
return "voucher/voucher-search";
}
@GetMapping("/voucher-create")
public String createVoucher() {
return "voucher/voucher-create";
}
@GetMapping("/voucher-delete")
public String deleteVoucher() {
return "voucher/voucher-delete";
}
@GetMapping("/voucher-search")
public String searchVoucher() {
return "voucher/voucher-search";
}
}