2
0

feat: 警报列表

This commit is contained in:
caiyuchao
2025-06-04 15:18:44 +08:00
parent 73a9d60d2a
commit 3aa3c2260d
3 changed files with 120 additions and 0 deletions

View File

@@ -0,0 +1,45 @@
package org.wfc.system.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.wfc.common.core.domain.R;
import org.wfc.common.core.web.page.TableDataInfo;
import org.wfc.omada.api.log.model.DeleteSiteAlertLogListOpenApiVo;
import org.wfc.omada.api.log.model.ResolveSiteLogListOpenApiVo;
import org.wfc.system.service.ISysOmadaLogService;
/**
* @description: omada log controller
* @author: cyc
* @since: 2025-06-03
*/
@RestController
@RequestMapping("/log")
public class SysOmadaLogController {
@Autowired
private ISysOmadaLogService sysOmadaLogService;
@GetMapping("/alerts/{siteId}")
public TableDataInfo getAlertLogsForSite(@PathVariable String siteId, @RequestParam("pageNum") Integer pageNum, @RequestParam("pageSize") Integer pageSize, @RequestParam(value = "filters.timeStart", required = true) Long filtersTimeStart, @RequestParam(value = "filters.timeEnd", required = true) Long filtersTimeEnd, @RequestParam(value = "filters.module", required = false) String filtersModule, @RequestParam(value = "filters.resolved", required = false) Boolean filtersResolved) {
return sysOmadaLogService.getAlertLogsForSite(siteId, pageNum, pageSize, filtersTimeStart, filtersTimeEnd, filtersModule, filtersResolved);
}
@PostMapping("/alerts/{siteId}")
public R<Boolean> resolveAlertForSite(@PathVariable(required = true) String siteId, @RequestBody(required = false) ResolveSiteLogListOpenApiVo resolveSiteLogListOpenApiVo) {
return R.ok(sysOmadaLogService.resolveAlertForSite(siteId, resolveSiteLogListOpenApiVo));
}
@DeleteMapping("/alerts/{siteId}")
public R<Boolean> deleteAlertLogsForSite(@PathVariable(required = true) String siteId, @RequestBody(required = false) DeleteSiteAlertLogListOpenApiVo deleteSiteAlertLogListOpenApiVo) {
return R.ok(sysOmadaLogService.deleteAlertLogsForSite(siteId, deleteSiteAlertLogListOpenApiVo));
}
}

View File

@@ -0,0 +1,19 @@
package org.wfc.system.service;
import org.wfc.common.core.web.page.TableDataInfo;
import org.wfc.omada.api.log.model.DeleteSiteAlertLogListOpenApiVo;
import org.wfc.omada.api.log.model.ResolveSiteLogListOpenApiVo;
/**
* @description: omada log service
* @author: cyc
* @since: 2025-06-03
*/
public interface ISysOmadaLogService {
TableDataInfo getAlertLogsForSite(String siteId, Integer pageNum, Integer pageSize, Long filtersTimeStart, Long filtersTimeEnd, String filtersModule, Boolean filtersResolved);
boolean resolveAlertForSite(String siteId, ResolveSiteLogListOpenApiVo resolveSiteLogListOpenApiVo);
boolean deleteAlertLogsForSite(String siteId, DeleteSiteAlertLogListOpenApiVo deleteSiteAlertLogListOpenApiVo);
}

View File

@@ -0,0 +1,56 @@
package org.wfc.system.service.impl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import org.wfc.common.core.utils.PageUtils;
import org.wfc.common.core.utils.ResponseUtils;
import org.wfc.common.core.web.page.TableDataInfo;
import org.wfc.omada.api.log.OmadaLogApi;
import org.wfc.omada.api.log.model.DeleteSiteAlertLogListOpenApiVo;
import org.wfc.omada.api.log.model.OperationResponseAlertLogGridVoAlertLogOpenApiVo;
import org.wfc.omada.api.log.model.OperationResponseWithoutResult;
import org.wfc.omada.api.log.model.ResolveSiteLogListOpenApiVo;
import org.wfc.system.service.ISysOmadaLogService;
import java.util.Objects;
/**
* @description: omada log service impl
* @author: cyc
* @since: 2025-06-03
*/
@Service
public class SysOmadaLogServiceImpl implements ISysOmadaLogService {
@Autowired
private OmadaLogApi omadaLogApi;
public void test() {
// omadaLogApi.getLogSettingForSite("")
}
@Override
public TableDataInfo getAlertLogsForSite(String siteId, Integer pageNum, Integer pageSize, Long filtersTimeStart, Long filtersTimeEnd, String filtersModule, Boolean filtersResolved) {
ResponseEntity<OperationResponseAlertLogGridVoAlertLogOpenApiVo> response = omadaLogApi.getAlertLogsForSite(siteId, pageNum, pageSize, filtersTimeStart, filtersTimeEnd, filtersModule, filtersResolved);
ResponseUtils.checkResponse(Objects.requireNonNull(response.getBody()).getErrorCode(), response.getBody().getMsg());
return PageUtils.getDataTable(response.getBody().getResult().getData(), response.getBody().getResult().getTotalRows());
}
@Override
public boolean resolveAlertForSite(String siteId, ResolveSiteLogListOpenApiVo resolveSiteLogListOpenApiVo) {
ResponseEntity<OperationResponseWithoutResult> response = omadaLogApi.resolveAlertForSite(siteId, resolveSiteLogListOpenApiVo);
ResponseUtils.checkResponse(Objects.requireNonNull(response.getBody()).getErrorCode(), response.getBody().getMsg());
return true;
}
@Override
public boolean deleteAlertLogsForSite(String siteId, DeleteSiteAlertLogListOpenApiVo deleteSiteAlertLogListOpenApiVo) {
ResponseEntity<OperationResponseWithoutResult> response = omadaLogApi.deleteAlertLogsForSite(siteId, deleteSiteAlertLogListOpenApiVo);
ResponseUtils.checkResponse(Objects.requireNonNull(response.getBody()).getErrorCode(), response.getBody().getMsg());
return true;
}
}