|
|
@@ -1,8 +1,7 @@
|
|
|
package cn.reghao.devops.mgr.admin.controller.page;
|
|
|
|
|
|
-import cn.reghao.devops.mgr.admin.db.repository.NotifyReceiverRepository;
|
|
|
-import cn.reghao.devops.mgr.admin.db.repository.SysMessageRepository;
|
|
|
-import cn.reghao.devops.mgr.admin.model.po.NotifyReceiver;
|
|
|
+import cn.reghao.devops.mgr.admin.db.repository.WebhookRepository;
|
|
|
+import cn.reghao.devops.mgr.admin.model.po.Webhook;
|
|
|
import cn.reghao.devops.mgr.admin.model.po.SysMessage;
|
|
|
import cn.reghao.devops.mgr.admin.model.vo.SysMsg;
|
|
|
import cn.reghao.devops.mgr.admin.service.SysMessageService;
|
|
|
@@ -28,11 +27,11 @@ import java.util.List;
|
|
|
@Controller
|
|
|
@RequestMapping("/sys")
|
|
|
public class SysPageController {
|
|
|
- private final NotifyReceiverRepository notifyReceiverRepository;
|
|
|
+ private final WebhookRepository webhookRepository;
|
|
|
private final SysMessageService sysMessageService;
|
|
|
|
|
|
- public SysPageController(NotifyReceiverRepository notifyReceiverRepository, SysMessageService sysMessageService) {
|
|
|
- this.notifyReceiverRepository = notifyReceiverRepository;
|
|
|
+ public SysPageController(WebhookRepository webhookRepository, SysMessageService sysMessageService) {
|
|
|
+ this.webhookRepository = webhookRepository;
|
|
|
this.sysMessageService = sysMessageService;
|
|
|
}
|
|
|
|
|
|
@@ -78,9 +77,9 @@ public class SysPageController {
|
|
|
@ApiOperation(value = "通知接收列表页面", notes = "N")
|
|
|
@PreAuthorize("hasRole('ROLE_ADMIN')")
|
|
|
@GetMapping("/notify")
|
|
|
- public String receiverIndex(Model model) throws Exception {
|
|
|
+ public String receiverIndex(Model model) {
|
|
|
PageRequest pageRequest = PageRequest.of(0, 100);
|
|
|
- Page<NotifyReceiver> page = notifyReceiverRepository.findAll(pageRequest);
|
|
|
+ Page<Webhook> page = webhookRepository.findAll(pageRequest);
|
|
|
model.addAttribute("page", page);
|
|
|
model.addAttribute("list", page.getContent());
|
|
|
return "/admin/notify/receiver";
|
|
|
@@ -97,15 +96,15 @@ public class SysPageController {
|
|
|
@PreAuthorize("hasRole('ROLE_ADMIN')")
|
|
|
@PostMapping(value = "/notify/save", produces = MediaType.APPLICATION_JSON_VALUE)
|
|
|
@ResponseBody
|
|
|
- public String saveReceiver(@Validated NotifyReceiver notifyReceiver) {
|
|
|
- String name = notifyReceiver.getName();
|
|
|
- NotifyReceiver notifyReceiver1 = notifyReceiverRepository.findByName(name);
|
|
|
- if (notifyReceiver1 != null) {
|
|
|
- String errMsg = String.format("NotifyReceiver %s exist", name);
|
|
|
+ public String saveReceiver(@Validated Webhook webhook) {
|
|
|
+ String name = webhook.getName();
|
|
|
+ Webhook webhook1 = webhookRepository.findByName(name);
|
|
|
+ if (webhook1 != null) {
|
|
|
+ String errMsg = String.format("Webhook %s exist", name);
|
|
|
return WebResult.failWithMsg(errMsg);
|
|
|
}
|
|
|
|
|
|
- notifyReceiverRepository.save(notifyReceiver);
|
|
|
+ webhookRepository.save(webhook);
|
|
|
return WebResult.success();
|
|
|
}
|
|
|
|
|
|
@@ -114,29 +113,16 @@ public class SysPageController {
|
|
|
@PostMapping(value = "/notify/default/{name}", produces = MediaType.APPLICATION_JSON_VALUE)
|
|
|
@ResponseBody
|
|
|
public String updateDefaultReceiver(@PathVariable("name") String name) {
|
|
|
- NotifyReceiver notifyReceiver1 = notifyReceiverRepository.findByName(name);
|
|
|
- if (notifyReceiver1 == null || notifyReceiver1.getSetdefault()) {
|
|
|
- String errMsg = String.format("NotifyReceiver %s not exist or it is default receiver", name);
|
|
|
+ Webhook webhook1 = webhookRepository.findByName(name);
|
|
|
+ if (webhook1 == null || webhook1.getSetdefault()) {
|
|
|
+ String errMsg = String.format("Webhook %s not exist or it is default receiver", name);
|
|
|
return WebResult.failWithMsg(errMsg);
|
|
|
}
|
|
|
|
|
|
- NotifyReceiver notifyReceiver2 = notifyReceiverRepository.findByTypeAndSetdefaultIsTrue(notifyReceiver1.getType());
|
|
|
- notifyReceiver1.setSetdefault(true);
|
|
|
- notifyReceiver2.setSetdefault(false);
|
|
|
- notifyReceiverRepository.saveAll(List.of(notifyReceiver1, notifyReceiver2));
|
|
|
- return WebResult.success();
|
|
|
- }
|
|
|
-
|
|
|
- @ApiOperation(value = "删除 webhook", notes = "N")
|
|
|
- @PreAuthorize("hasRole('ROLE_ADMIN')")
|
|
|
- @DeleteMapping(value = "/notify/delete/{name}", produces = MediaType.APPLICATION_JSON_VALUE)
|
|
|
- @ResponseBody
|
|
|
- public String deleteReceiver(@PathVariable("name") String name) {
|
|
|
- NotifyReceiver notifyReceiver = notifyReceiverRepository.findByName(name);
|
|
|
- if (notifyReceiver != null) {
|
|
|
- notifyReceiverRepository.delete(notifyReceiver);
|
|
|
- }
|
|
|
-
|
|
|
+ Webhook webhook2 = webhookRepository.findByTypeAndSetdefaultIsTrue(webhook1.getType());
|
|
|
+ webhook1.setSetdefault(true);
|
|
|
+ webhook2.setSetdefault(false);
|
|
|
+ webhookRepository.saveAll(List.of(webhook1, webhook2));
|
|
|
return WebResult.success();
|
|
|
}
|
|
|
}
|