From bffd7bd33ef26c64831bc488a6b3105cfe4877cb Mon Sep 17 00:00:00 2001
From: xjs <1294405880@qq.com>
Date: Sat, 1 Jan 2022 22:31:22 +0800
Subject: [PATCH] =?UTF-8?q?=E8=AF=B4=E6=98=8E=EF=BC=9A1=E3=80=81=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90api=E9=A2=84=E8=AD=A6=E4=BF=AE?=
=?UTF-8?q?=E6=94=B9=E6=9F=A5=E7=9C=8B=20=20=20=20=20=202=E3=80=81?=
=?UTF-8?q?=E5=89=8D=E7=AB=AFapi=E9=A2=84=E8=AD=A6=E9=A1=B5=E9=9D=A2?=
=?UTF-8?q?=E5=B7=B2=E5=AE=8C=E6=88=90?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/api/business/warning/apiwarning.js | 28 +++
.../business/warning/apiwarning/index.vue | 222 ++++++++++++++++++
.../xjs/controller/ApiWarningController.java | 60 ++++-
.../java/com/xjs/mapper/ApiRecordMapper.java | 29 ++-
.../com/xjs/service/ApiWarningService.java | 34 ++-
.../service/impl/ApiWarningServiceImpl.java | 46 +++-
.../mapper/apiwarning/ApiEnglishMapper.xml | 43 ++++
7 files changed, 453 insertions(+), 9 deletions(-)
create mode 100644 ruoyi-ui/src/api/business/warning/apiwarning.js
create mode 100644 ruoyi-ui/src/views/business/warning/apiwarning/index.vue
diff --git a/ruoyi-ui/src/api/business/warning/apiwarning.js b/ruoyi-ui/src/api/business/warning/apiwarning.js
new file mode 100644
index 00000000..42c2d7f6
--- /dev/null
+++ b/ruoyi-ui/src/api/business/warning/apiwarning.js
@@ -0,0 +1,28 @@
+import request from '@/utils/request'
+
+// 查询API预警列表
+export function listApiwarning(query) {
+ return request({
+ url: '/warning/apiwarning/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询API预警详细
+export function getApiwarning(id) {
+ return request({
+ url: '/warning/apiwarning/' + id,
+ method: 'get'
+ })
+}
+
+// 修改API预警
+export function updateApiwarning(data) {
+ return request({
+ url: '/warning/apiwarning/edit',
+ method: 'put',
+ data: data
+ })
+}
+
diff --git a/ruoyi-ui/src/views/business/warning/apiwarning/index.vue b/ruoyi-ui/src/views/business/warning/apiwarning/index.vue
new file mode 100644
index 00000000..5b7ecbdf
--- /dev/null
+++ b/ruoyi-ui/src/views/business/warning/apiwarning/index.vue
@@ -0,0 +1,222 @@
+
+
+
+
+
+
+
+ 搜索
+ 重置
+
+
+
+
+
+ 修改
+
+
+
+ 导出
+
+
+
+
+
+
+
+
+
+
+
+
+ {{scope.row.requestTime+"ms"}}
+
+
+
+
+
+ {{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}
+
+
+
+
+
+ {{ parseTime(scope.row.updateTime, '{y}-{m}-{d}') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/xjs-business/xjs-business-warning/src/main/java/com/xjs/controller/ApiWarningController.java b/xjs-business/xjs-business-warning/src/main/java/com/xjs/controller/ApiWarningController.java
index 99e1448e..91523c08 100644
--- a/xjs-business/xjs-business-warning/src/main/java/com/xjs/controller/ApiWarningController.java
+++ b/xjs-business/xjs-business-warning/src/main/java/com/xjs/controller/ApiWarningController.java
@@ -1,12 +1,19 @@
package com.xjs.controller;
import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.core.utils.poi.ExcelUtil;
import com.ruoyi.common.core.web.controller.BaseController;
+import com.ruoyi.common.core.web.domain.AjaxResult;
+import com.ruoyi.common.core.web.page.TableDataInfo;
+import com.ruoyi.common.log.annotation.Log;
+import com.ruoyi.common.log.enums.BusinessType;
+import com.ruoyi.common.security.annotation.RequiresPermissions;
import com.xjs.domain.ApiRecord;
import com.xjs.service.ApiWarningService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
+import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
@@ -40,13 +47,62 @@ public class ApiWarningController extends BaseController {
*/
@PutMapping
public R updateApiRecordForRPC(@RequestBody ApiRecord apiRecord) {
- return apiWarningService.updateApiRecord(apiRecord) ? R.ok() : R.fail();
+ return apiWarningService.updateApiRecordByUrl(apiRecord) ? R.ok() : R.fail();
}
@GetMapping
public R> selectApiRecordListForRPC(ApiRecord apiRecord) {
- List apiRecords = apiWarningService.selectApiRecordList(apiRecord);
+ List apiRecords = apiWarningService.selectApiRecordListByUrl(apiRecord);
return R.ok(apiRecords);
}
+ //todo 实现前端页面cu接口
+
+ //-------------------------代码生成------------------------------------
+ /**
+ * 查询API预警列表
+ */
+ @RequiresPermissions("warning:apiwarning:list")
+ @GetMapping("/list")
+ public TableDataInfo list(ApiRecord apiRecord)
+ {
+ startPage();
+ List list = apiWarningService.selectApiRecordList(apiRecord);
+ return getDataTable(list);
+ }
+
+ /**
+ * 导出API预警列表
+ */
+ @RequiresPermissions("warning:apiwarning:export")
+ @Log(title = "API预警", businessType = BusinessType.EXPORT)
+ @PostMapping("/export")
+ public void export(HttpServletResponse response, ApiRecord apiRecord)
+ {
+ List list = apiWarningService.selectApiRecordList(apiRecord);
+ ExcelUtil util = new ExcelUtil(ApiRecord.class);
+ util.exportExcel(response, list, "API预警数据");
+ }
+
+ /**
+ * 获取API预警详细信息
+ */
+ @RequiresPermissions("warning:apiwarning:query")
+ @GetMapping(value = "/{id}")
+ public AjaxResult getInfo(@PathVariable("id") Long id)
+ {
+ return AjaxResult.success(apiWarningService.selectApiRecordById(id));
+ }
+
+ /**
+ * 修改API预警
+ */
+ @RequiresPermissions("warning:apiwarning:edit")
+ @Log(title = "API预警", businessType = BusinessType.UPDATE)
+ @PutMapping("edit")
+ public AjaxResult edit(@RequestBody ApiRecord apiRecord)
+ {
+ return toAjax(apiWarningService.updateApiRecord(apiRecord));
+ }
+
}
diff --git a/xjs-business/xjs-business-warning/src/main/java/com/xjs/mapper/ApiRecordMapper.java b/xjs-business/xjs-business-warning/src/main/java/com/xjs/mapper/ApiRecordMapper.java
index 71e248d3..f284bc88 100644
--- a/xjs-business/xjs-business-warning/src/main/java/com/xjs/mapper/ApiRecordMapper.java
+++ b/xjs-business/xjs-business-warning/src/main/java/com/xjs/mapper/ApiRecordMapper.java
@@ -3,12 +3,39 @@ package com.xjs.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xjs.domain.ApiRecord;
+import java.util.List;
+
/**
* @author xiejs
- * @desc api预警mapper
+ * @desc api预警mapper
* @create 2021-12-31
*/
public interface ApiRecordMapper extends BaseMapper {
+ //--------------------代码生成----------------------------
+
+ /**
+ * 查询API预警
+ *
+ * @param id API预警主键
+ * @return API预警
+ */
+ public ApiRecord selectApiRecordById(Long id);
+
+ /**
+ * 查询API预警列表
+ *
+ * @param apiRecord API预警
+ * @return API预警集合
+ */
+ public List selectApiRecordList(ApiRecord apiRecord);
+
+ /**
+ * 修改API预警
+ *
+ * @param apiRecord API预警
+ * @return 结果
+ */
+ public int updateApiRecord(ApiRecord apiRecord);
}
diff --git a/xjs-business/xjs-business-warning/src/main/java/com/xjs/service/ApiWarningService.java b/xjs-business/xjs-business-warning/src/main/java/com/xjs/service/ApiWarningService.java
index 5eb6c880..34170432 100644
--- a/xjs-business/xjs-business-warning/src/main/java/com/xjs/service/ApiWarningService.java
+++ b/xjs-business/xjs-business-warning/src/main/java/com/xjs/service/ApiWarningService.java
@@ -13,6 +13,7 @@ public interface ApiWarningService {
/**
* 保存apirecord 当存在相同api时,不允许保存
+ *
* @param apiRecord apiRecord
* @return apiRecord
*/
@@ -21,15 +22,44 @@ public interface ApiWarningService {
/**
* 修改 根据url名称修改api调用次数
+ *
* @param apiRecord apiRecord
* @return apiRecord
*/
- boolean updateApiRecord(ApiRecord apiRecord);
+ boolean updateApiRecordByUrl(ApiRecord apiRecord);
/**
* 根据 apiurl和name查询
+ *
* @param apiRecord
* @return
*/
- List selectApiRecordList(ApiRecord apiRecord);
+ List selectApiRecordListByUrl(ApiRecord apiRecord);
+
+ //---------------------代码生成---------------------------------
+
+ /**
+ * 查询API预警
+ *
+ * @param id API预警主键
+ * @return API预警
+ */
+ public ApiRecord selectApiRecordById(Long id);
+
+ /**
+ * 查询API预警列表
+ *
+ * @param apiRecord API预警
+ * @return API预警集合
+ */
+ public List selectApiRecordList(ApiRecord apiRecord);
+
+
+ /**
+ * 修改API预警
+ *
+ * @param apiRecord API预警
+ * @return 结果
+ */
+ public int updateApiRecord(ApiRecord apiRecord);
}
diff --git a/xjs-business/xjs-business-warning/src/main/java/com/xjs/service/impl/ApiWarningServiceImpl.java b/xjs-business/xjs-business-warning/src/main/java/com/xjs/service/impl/ApiWarningServiceImpl.java
index 131c5045..59e997b3 100644
--- a/xjs-business/xjs-business-warning/src/main/java/com/xjs/service/impl/ApiWarningServiceImpl.java
+++ b/xjs-business/xjs-business-warning/src/main/java/com/xjs/service/impl/ApiWarningServiceImpl.java
@@ -1,6 +1,7 @@
package com.xjs.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.ruoyi.common.core.utils.DateUtils;
import com.xjs.domain.ApiRecord;
import com.xjs.exception.BusinessException;
import com.xjs.mapper.ApiRecordMapper;
@@ -36,17 +37,54 @@ public class ApiWarningServiceImpl implements ApiWarningService {
}
@Override
- public boolean updateApiRecord(ApiRecord apiRecord) {
+ public boolean updateApiRecordByUrl(ApiRecord apiRecord) {
int name = apiRecordMapper.update(apiRecord, new QueryWrapper()
.eq("api_name", apiRecord.getApiName()));
return name == 1;
}
@Override
- public List selectApiRecordList(ApiRecord apiRecord) {
+ public List selectApiRecordListByUrl(ApiRecord apiRecord) {
return apiRecordMapper
- .selectList(new QueryWrapper().eq("api_name",apiRecord.getApiName())
- .eq("api_name",apiRecord.getApiName()));
+ .selectList(new QueryWrapper().eq("api_name", apiRecord.getApiName())
+ .eq("api_name", apiRecord.getApiName()));
+ }
+
+
+ //------------------------代码生成-------------------------------
+
+ /**
+ * 查询API预警
+ *
+ * @param id API预警主键
+ * @return API预警
+ */
+ @Override
+ public ApiRecord selectApiRecordById(Long id) {
+ return apiRecordMapper.selectApiRecordById(id);
+ }
+
+ /**
+ * 查询API预警列表
+ *
+ * @param apiRecord API预警
+ * @return API预警
+ */
+ @Override
+ public List selectApiRecordList(ApiRecord apiRecord) {
+ return apiRecordMapper.selectApiRecordList(apiRecord);
+ }
+
+ /**
+ * 修改API预警
+ *
+ * @param apiRecord API预警
+ * @return 结果
+ */
+ @Override
+ public int updateApiRecord(ApiRecord apiRecord) {
+ apiRecord.setUpdateTime(DateUtils.getNowDate());
+ return apiRecordMapper.updateApiRecord(apiRecord);
}
diff --git a/xjs-business/xjs-business-warning/src/main/resources/mapper/apiwarning/ApiEnglishMapper.xml b/xjs-business/xjs-business-warning/src/main/resources/mapper/apiwarning/ApiEnglishMapper.xml
index fc994eae..2d7c6409 100644
--- a/xjs-business/xjs-business-warning/src/main/resources/mapper/apiwarning/ApiEnglishMapper.xml
+++ b/xjs-business/xjs-business-warning/src/main/resources/mapper/apiwarning/ApiEnglishMapper.xml
@@ -4,5 +4,48 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select id, api_name, api_url, total_count, limit_count, create_time, update_time,day_count,request_time
+ from api_record
+
+
+
+
+
+
+
+
+ update api_record
+
+ api_name = #{apiName},
+ api_url = #{apiUrl},
+ total_count = #{totalCount},
+ limit_count = #{limitCount},
+ create_time = #{createTime},
+ update_time = #{updateTime},
+
+ where id = #{id}
+
+
\ No newline at end of file