Browse Source

Merge pull request 'cjl-dev' (#57) from cjl-dev into master

Reviewed-on: http://120.26.116.243:3000/root/alert-backend/pulls/57
pull/63/head
chenjiale 3 weeks ago
parent
commit
8b94489e13
  1. 40
      yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/pojo/PagedResponse.java
  2. 5
      yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/common/enums/Algorithm.java
  3. 5
      yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/controller/admin/model/ModelController.java
  4. 5
      yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/controller/admin/model/vo/ModelSelectQuery.java
  5. 3
      yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/service/model/ModelService.java
  6. 26
      yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/service/model/impl/ModelServiceImpl.java
  7. 18
      yudao-server/pom.xml
  8. 19
      yudao-server/src/main/resources/application-dm.yaml
  9. 2
      yudao-server/src/main/resources/application.yaml

40
yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/pojo/PagedResponse.java

@ -0,0 +1,40 @@
package cn.iocoder.yudao.framework.common.pojo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Builder;
import lombok.Data;
import java.util.Collections;
import java.util.List;
@Schema(description = "分页结果")
@Data
@Builder
public class PagedResponse<T> {
@Schema(description = "总条数")
private long total;
@Schema(description = "当前页码,从 1 开始")
private int current;
@Schema(description = "分页大小")
private int size;
@Schema(description = "当前页数据")
private List<T> records;
@Schema(description = "总页数")
private int pages;
public static <T> PagedResponse<T> of(long total, int current, int size, List<T> records) {
int pages = size <= 0 ? 0 : (int) ((total + size - 1) / size);
return PagedResponse.<T>builder()
.total(total)
.current(current)
.size(size)
.pages(pages)
.records(records == null ? Collections.emptyList() : records)
.build();
}
}

5
yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/common/enums/Algorithm.java

@ -5,6 +5,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import java.util.Objects;
import java.util.Set;
/**
* @author chenjiale
@ -57,4 +58,8 @@ public enum Algorithm {
}
return ERROR;
}
public static Set<Integer> getAlgorithmIds() {
return Set.of(PCA.code, ANN.code);
}
}

5
yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/controller/admin/model/ModelController.java

@ -1,6 +1,7 @@
package cn.iocoder.yudao.module.alert.controller.admin.model;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PagedResponse;
import cn.iocoder.yudao.module.alert.controller.admin.model.vo.*;
import cn.iocoder.yudao.module.alert.param.AnnTestParam;
import cn.iocoder.yudao.module.alert.param.AnnTrainParam;
@ -28,8 +29,8 @@ public class ModelController {
@GetMapping("/card/list")
public CommonResult<List<ModelSimpleVO>> getModelList(ModelSelectQuery query) {
List<ModelSimpleVO> modelList = modelService.getModelList(query);
public CommonResult<PagedResponse<ModelSimpleVO>> getModelList(ModelSelectQuery query) {
PagedResponse<ModelSimpleVO> modelList = modelService.getModelList(query);
return CommonResult.success(modelList);
}

5
yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/controller/admin/model/vo/ModelSelectQuery.java

@ -1,6 +1,8 @@
package cn.iocoder.yudao.module.alert.controller.admin.model.vo;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* @author chenjiale
@ -8,7 +10,8 @@ import lombok.Data;
* @date 2023-08-19 13:25
*/
@Data
public class ModelSelectQuery {
@EqualsAndHashCode(callSuper = true)
public class ModelSelectQuery extends PageParam {
/**
* 机组id
*/

3
yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/service/model/ModelService.java

@ -1,6 +1,7 @@
package cn.iocoder.yudao.module.alert.service.model;
import cn.iocoder.yudao.framework.common.pojo.PagedResponse;
import cn.iocoder.yudao.module.alert.controller.admin.model.vo.*;
import cn.iocoder.yudao.module.alert.param.AnnTestParam;
import cn.iocoder.yudao.module.alert.param.ModelTestParam;
@ -21,7 +22,7 @@ public interface ModelService {
* @param query 请求参数
* @return model 列表
*/
List<ModelSimpleVO> getModelList(ModelSelectQuery query);
PagedResponse<ModelSimpleVO> getModelList(ModelSelectQuery query);
/**
* 获取模型信息

26
yudao-module-alert/yudao-module-alert-biz/src/main/java/cn/iocoder/yudao/module/alert/service/model/impl/ModelServiceImpl.java

@ -3,6 +3,8 @@ package cn.iocoder.yudao.module.alert.service.model.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.pojo.PagedResponse;
import cn.iocoder.yudao.framework.common.util.http.HttpUtils;
import cn.iocoder.yudao.framework.common.util.json.JsonUtils;
import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
@ -29,6 +31,7 @@ import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fasterxml.jackson.core.type.TypeReference;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@ -62,7 +65,7 @@ public class ModelServiceImpl implements ModelService {
private String algorithmHost;
@Override
public List<ModelSimpleVO> getModelList(ModelSelectQuery query) {
public PagedResponse<ModelSimpleVO> getModelList(ModelSelectQuery query) {
Integer systemId = query.getSystemId();
String modelName = query.getName();
Integer status = query.getStatus();
@ -81,9 +84,25 @@ public class ModelServiceImpl implements ModelService {
.eq(Objects.nonNull(trash), ModelCfg::getTrash, trash)
.eq(ModelCfg::getVisible, ModelVisible.VISIBLE.code)
.in(CollUtil.isNotEmpty(systems), ModelCfg::getSystemId, systems)
.in(ModelCfg::getAlgorithmId, Algorithm.getAlgorithmIds())
.like(StringUtils.hasLength(modelName), ModelCfg::getModelName, modelName);
List<ModelCfg> list = modelCfgService.list(queryWrapper);
return list.stream().map(modelCfg -> ModelSimpleVO.builder()
if (Objects.equals(query.getPageSize(), PageParam.PAGE_SIZE_NONE)) {
List<ModelCfg> list = modelCfgService.list(queryWrapper);
List<ModelSimpleVO> records = list.stream().map(modelCfg -> ModelSimpleVO.builder()
.id(modelCfg.getId())
.name(modelCfg.getModelName() == null ? null : modelCfg.getModelName().trim())
.creator(modelCfg.getCreator())
.createTime(modelCfg.getCreateTime())
.version(modelCfg.getCurVersion())
.status(modelCfg.getStatus())
.algorithm(Algorithm.of(modelCfg.getAlgorithmId()).toString())
.build())
.collect(Collectors.toList());
return PagedResponse.of(list.size(), query.getPageNo(), query.getPageSize(), records);
}
Page<ModelCfg> page = modelCfgService.page(new Page<>(query.getPageNo(), query.getPageSize()), queryWrapper);
List<ModelSimpleVO> list = page.getRecords().stream().map(modelCfg -> ModelSimpleVO.builder()
.id(modelCfg.getId())
.name(modelCfg.getModelName() == null ? null : modelCfg.getModelName().trim())
.creator(modelCfg.getCreator())
@ -93,6 +112,7 @@ public class ModelServiceImpl implements ModelService {
.algorithm(Algorithm.of(modelCfg.getAlgorithmId()).toString())
.build())
.collect(Collectors.toList());
return PagedResponse.of(page.getTotal(), query.getPageNo(), query.getPageSize(), list);
}
@Override

18
yudao-server/pom.xml

@ -127,6 +127,12 @@
<optional>true</optional>
</dependency>
<!-- 达梦数据库驱动 -->
<dependency>
<groupId>com.dameng</groupId>
<artifactId>DmJdbcDriver18</artifactId>
</dependency>
<!-- 服务保障相关 -->
<dependency>
<groupId>cn.iocoder.boot</groupId>
@ -161,4 +167,16 @@
</plugins>
</build>
<profiles>
<profile>
<id>dm</id>
<dependencies>
<dependency>
<groupId>com.dameng</groupId>
<artifactId>DmJdbcDriver18</artifactId>
</dependency>
</dependencies>
</profile>
</profiles>
</project>

19
yudao-server/src/main/resources/application-dm.yaml

@ -0,0 +1,19 @@
--- #################### 数据库相关配置(达梦) ####################
spring:
datasource:
dynamic:
druid:
connection-init-sqls: ["SET SCHEMA ALERT"]
datasource:
master:
url: jdbc:dm://120.26.116.243:5236?schema=ALERT
username: SYSDBA
password: powerSIS123
driver-class-name: dm.jdbc.driver.DmDriver
# 与 master 保持一致,避免 local profile 的 MySQL 从库配置残留
slave:
url: jdbc:dm://120.26.116.243:5236?schema=ALERT
username: SYSDBA
password: powerSIS123
driver-class-name: dm.jdbc.driver.DmDriver

2
yudao-server/src/main/resources/application.yaml

@ -3,7 +3,7 @@ spring:
name: yudao-server
profiles:
active: local
active: local,dm
main:
allow-circular-references: true # 允许循环依赖,因为项目是三层架构,无法避免这个情况。

Loading…
Cancel
Save