提交 ef00bcd9 authored 作者: songchuancai's avatar songchuancai

修改数据api服务创建逻辑

上级 7ac5d815
package com.hisense.dataservice.bo; package com.hisense.dataservice.bo;
import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
...@@ -13,19 +17,45 @@ import java.util.List; ...@@ -13,19 +17,45 @@ import java.util.List;
* 列数据范围过滤 * 列数据范围过滤
* TODO tableName tableId 和columnId columnName不为空的设计 * TODO tableName tableId 和columnId columnName不为空的设计
**/ **/
@ApiModel("列数据范围过滤")
@Data @Data
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
public class ColumnDataRangeFilter { public class ColumnDataRangeFilter {
// 表名 // 表名
@JsonIgnore
@ApiModelProperty(name = "表名", required = false)
private String tableName; private String tableName;
// 表名ID // 表名ID
@ApiModelProperty(name = "表名ID", required = true)
private Long tableId; private Long tableId;
// 字段 // 字段
private List<DataColumn> fields; private List<DataColumn> fields;
private String generateSql(){ private StringBuilder generateSql(StringBuilder resultBuilder) {
if (this.getFields().isEmpty()) {
resultBuilder.append(this.getTableName())
.append(".*")
.append(", ");
return resultBuilder;
}
for (DataColumn field : this.getFields()) {
resultBuilder.append(this.getTableName())
.append(".")
.append(field.getColumnName())
.append(" as ")
.append(this.getTableName())
.append("_")
.append(field.getColumnName())
.append(",");
}
return resultBuilder;
}
private String generateSql() {
StringBuilder resultBuilder = new StringBuilder(); StringBuilder resultBuilder = new StringBuilder();
if(this.getFields().isEmpty()){ if(this.getFields().isEmpty()){
resultBuilder.append(this.getTableName()) resultBuilder.append(this.getTableName())
...@@ -46,7 +76,8 @@ public class ColumnDataRangeFilter { ...@@ -46,7 +76,8 @@ public class ColumnDataRangeFilter {
return resultBuilder.toString(); return resultBuilder.toString();
} }
private List<List<String>> generateExcelHead(){
private List<List<String>> generateExcelHead() {
List<List<String>> heads = new ArrayList<>(); List<List<String>> heads = new ArrayList<>();
StringBuilder headBuilder; StringBuilder headBuilder;
List<String> head; List<String> head;
...@@ -67,24 +98,26 @@ public class ColumnDataRangeFilter { ...@@ -67,24 +98,26 @@ public class ColumnDataRangeFilter {
/** /**
* 生成sql-select * 生成sql-select
* 例如: select * 或者 select t1.a, t2.b, t2.c * 例如: select * 或者 select t1.a, t2.b, t2.c
*
* @param columnDataRangeFilters * @param columnDataRangeFilters
* @return * @return
*/ */
public static String generateFilterSelectSql(List<ColumnDataRangeFilter> columnDataRangeFilters){ public static String generateFilterSelectSql(List<ColumnDataRangeFilter> columnDataRangeFilters) {
StringBuilder result = new StringBuilder(); StringBuilder result = new StringBuilder();
if (columnDataRangeFilters.isEmpty()) { if (CollectionUtils.isEmpty(columnDataRangeFilters)) {
result.append(" select * "); result.append(" * ");
return result.toString(); return result.toString();
} }
for (ColumnDataRangeFilter columnDataRangeFilter : columnDataRangeFilters) { for (ColumnDataRangeFilter columnDataRangeFilter : columnDataRangeFilters) {
result.append(columnDataRangeFilter.generateSql()); // result.append(columnDataRangeFilter.generateSql());
result = columnDataRangeFilter.generateSql(result);
} }
return result.substring(0, result.lastIndexOf(",")); return result.substring(0, result.lastIndexOf(","));
} }
public static List<List<String>> generateExcelHead(List<ColumnDataRangeFilter> columnDataRangeFilters){ public static List<List<String>> generateExcelHead(List<ColumnDataRangeFilter> columnDataRangeFilters) {
List<List<String>> result = new ArrayList<>(); List<List<String>> result = new ArrayList<>();
for (ColumnDataRangeFilter columnDataRangeFilter : columnDataRangeFilters) { for (ColumnDataRangeFilter columnDataRangeFilter : columnDataRangeFilters) {
result.addAll(columnDataRangeFilter.generateExcelHead()); result.addAll(columnDataRangeFilter.generateExcelHead());
......
package com.hisense.dataservice.bo; package com.hisense.dataservice.bo;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.hisense.dataservice.enums.FieldTypeEnum; import com.hisense.dataservice.enums.FieldTypeEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
@ApiModel("数据字段描述")
@Data @Data
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
public class DataColumn { public class DataColumn {
// 字段名 // 字段名
@JsonIgnore
@ApiModelProperty(name = "字段名", required = false)
private String columnName; private String columnName;
// 字段ID // 字段ID
@ApiModelProperty(name = "字段ID", required = true)
private Long id; private Long id;
// 字段类型 // 字段类型
@ApiModelProperty(name = "字段类型", required = false)
private FieldTypeEnum fieldType; private FieldTypeEnum fieldType;
// 字段描述 // 字段描述
@ApiModelProperty(name = "字段描述", required = false)
private String desc; private String desc;
} }
\ No newline at end of file
package com.hisense.dataservice.bo; package com.hisense.dataservice.bo;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.hisense.dataservice.enums.OperateEnum; import com.hisense.dataservice.enums.OperateEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
...@@ -13,21 +16,33 @@ import java.util.List; ...@@ -13,21 +16,33 @@ import java.util.List;
* @author : scc * @author : scc
* @date : 2023/02/27 * @date : 2023/02/27
**/ **/
@ApiModel("行过滤条件")
@Data @Data
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
public class FilterCondition { public class FilterCondition {
// 表名 // 表名
@JsonIgnore
@ApiModelProperty(name = "表名", required = false)
private String tableName; private String tableName;
// 表ID // 表ID
@JsonIgnore
@ApiModelProperty(name = "表ID", required = false)
private Long tableId; private Long tableId;
// 字段 // 字段
@ApiModelProperty(name = "字段", required = true)
@NonNull @NonNull
private DataColumn field; private DataColumn field;
// 过滤条件 // 过滤条件
@ApiModelProperty(name = "过滤条件", required = true)
@NonNull @NonNull
private OperateEnum operateEnumType; private OperateEnum operateEnumType;
// 过滤值 // 过滤值
@ApiModelProperty(name = "过滤值", required = true)
@NonNull @NonNull
private List<Object> filterValues; private List<Object> filterValues;
......
package com.hisense.dataservice.bo; package com.hisense.dataservice.bo;
import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
...@@ -11,16 +14,25 @@ import java.util.List; ...@@ -11,16 +14,25 @@ import java.util.List;
* @date : 2023/02/20 * @date : 2023/02/20
* 行数据范围过滤 * 行数据范围过滤
**/ **/
@ApiModel("行数据范围过滤")
@Data @Data
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
public class LineDataRangeFilter { public class LineDataRangeFilter {
// 条件全部满足还是满足一个: true:全部匹配, false: 只需要满足一个即可 // 条件全部满足还是满足一个: true:全部匹配, false: 只需要满足一个即可
@ApiModelProperty(name = "条件是否全部满足", required = false)
private Boolean fullMatched = Boolean.TRUE; private Boolean fullMatched = Boolean.TRUE;
// 过滤条件 // 过滤条件
@ApiModelProperty(name = "过滤条件", required = false)
private List<FilterCondition> filterConditions; private List<FilterCondition> filterConditions;
@ApiModelProperty(name = "表ID", required = true)
private Long tableId; private Long tableId;
@JsonIgnore
@ApiModelProperty(name = "表名", required = false)
private String tableName; private String tableName;
/** /**
...@@ -35,6 +47,7 @@ public class LineDataRangeFilter { ...@@ -35,6 +47,7 @@ public class LineDataRangeFilter {
StringBuilder result = new StringBuilder(); StringBuilder result = new StringBuilder();
// 拼接初始条件 // 拼接初始条件
if (LineDataRangeFilters.isEmpty()) { if (LineDataRangeFilters.isEmpty()) {
result.append(" 1=1 ");
return result.toString(); return result.toString();
} }
......
package com.hisense.dataservice.bo;
import com.alibaba.fastjson.JSONObject;
import com.hisense.dataservice.entity.DataApiDataSource;
import com.hisense.dataservice.library.model.Result;
import com.hisense.dataservice.util.JdbcUtil;
import lombok.Data;
import org.springframework.util.StringUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.Callable;
/**
* @author : scc
* @date : 2023/03/14
**/
@Data
public class QueryDataTask<T> implements Callable<T> {
private DataApiDataSource dataApiDataSource;
private String querySql;
private String countSql;
private List<Object> jdbcParamValues;
private Long pageNumber;
private Integer queryDataTotalPerThread = 2000; // 默认2000
private List<List<String>> columnHeads;
@Override
public T call() throws Exception {
if (StringUtils.isEmpty(querySql)) {
Result<Long> dataResult = JdbcUtil.executeCountSql(dataApiDataSource, countSql, jdbcParamValues);
return (T) dataResult.getData();
// return (T) JdbcUtil.testCountSql().getData(); // TODO FOR TEST
} else {
List<List<Object>> result = new ArrayList<>();
Result<List<JSONObject>> dataResult = JdbcUtil.executeSql(dataApiDataSource, querySql, jdbcParamValues, queryDataTotalPerThread);
List<JSONObject> dataJsonList = dataResult.getData();
for (JSONObject dataJson : dataJsonList) {
List<Object> lineData = new ArrayList<>();
for (List<String> head : columnHeads) {
String columnName = head.get(0);
Object columnValue = dataJson.get(columnName);
lineData.add(columnValue); // 获取列名对应的值
}
result.add(lineData);
}
return (T) result;
// return (T) JdbcUtil.testExecuteSql(pageNumber).getData(); // TODO FOR TEST
}
}
}
package com.hisense.dataservice.bo; package com.hisense.dataservice.bo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
...@@ -10,12 +12,17 @@ import lombok.NoArgsConstructor; ...@@ -10,12 +12,17 @@ import lombok.NoArgsConstructor;
* @date : 2023/02/27 * @date : 2023/02/27
* 多表之间join关系配置 * 多表之间join关系配置
**/ **/
@ApiModel("数据表连接关系")
@Data @Data
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
public class TableJoinRelationConfig { public class TableJoinRelationConfig {
@ApiModelProperty(name = "表名", required = true)
private String tableName; private String tableName;
@ApiModelProperty(name = "列名", required = true)
private String columnName; private String columnName;
@ApiModelProperty(name = "表ID", required = true)
private Long tableId; private Long tableId;
@ApiModelProperty(name = "列ID", required = true)
private Long columnId; private Long columnId;
} }
...@@ -6,7 +6,12 @@ import io.swagger.annotations.ApiImplicitParam; ...@@ -6,7 +6,12 @@ import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest;
/** /**
* @author : scc * @author : scc
...@@ -27,7 +32,7 @@ public class DataApiCommonServiceController { ...@@ -27,7 +32,7 @@ public class DataApiCommonServiceController {
@ApiImplicitParam(name = "pattern", value = "请求路径", required = true) @ApiImplicitParam(name = "pattern", value = "请求路径", required = true)
}) })
@GetMapping("/{environment}/{pattern}") @GetMapping("/{environment}/{pattern}")
public Object dataQuery(@PathVariable String environment, @PathVariable String pattern) { public Object dataQuery(@PathVariable String environment, @PathVariable String pattern, HttpServletRequest request) {
return dataApiCommonService.queryData(environment, pattern); return dataApiCommonService.queryData(environment, pattern, request);
} }
} }
...@@ -6,6 +6,7 @@ import com.hisense.dataservice.service.DataApiCommonService; ...@@ -6,6 +6,7 @@ import com.hisense.dataservice.service.DataApiCommonService;
import com.hisense.dataservice.service.DataApiDataSourceManagementService; import com.hisense.dataservice.service.DataApiDataSourceManagementService;
import com.hisense.dataservice.service.DataApiServiceManagementService; import com.hisense.dataservice.service.DataApiServiceManagementService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
...@@ -26,9 +27,22 @@ public class DataServiceManagementController { ...@@ -26,9 +27,22 @@ public class DataServiceManagementController {
@Autowired @Autowired
private DataApiServiceManagementService dataApiServiceManagementService; private DataApiServiceManagementService dataApiServiceManagementService;
@PostMapping("/") // @PostMapping("/")
public Result<Boolean> createOrUpdateDataApiService(DataApiModelDto dataApiModelDto){ // public Result<Boolean> createOrUpdateDataApiService(DataApiModelDto dataApiModelDto){
return dataApiServiceManagementService.createOrUpdateDataApi(dataApiModelDto); // return dataApiServiceManagementService.createOrUpdateDataApi(dataApiModelDto);
// }
@ApiOperation(value = "数据服务管理-创建数据服务(草稿状态)",notes = "返回数据模型ID")
@PostMapping("/{environment}")
public Result<Long> createDataApiService(@RequestBody DataApiModelDto dataApiModelDto, @PathVariable String environment){
return dataApiServiceManagementService.createDataApi(environment,dataApiModelDto);
}
@ApiOperation(value = "数据服务管理-发布数据服务")
@PostMapping("/{environment}/{modelId}")
public Result<Boolean> publishDataApi(@PathVariable String environment,
@PathVariable Long modelId) {
return dataApiServiceManagementService.publishDataApi(environment, modelId);
} }
@GetMapping("/{environment}") @GetMapping("/{environment}")
...@@ -36,11 +50,7 @@ public class DataServiceManagementController { ...@@ -36,11 +50,7 @@ public class DataServiceManagementController {
return null; return null;
} }
@PostMapping("/{environment}")
public Object publishDataApi(@PathVariable String environment,
@RequestBody DataApiModelDto dataApiModelDto) {
return null;
}
@PatchMapping("/{environment}") @PatchMapping("/{environment}")
public Object updateDataApi(@PathVariable String environment) { public Object updateDataApi(@PathVariable String environment) {
......
...@@ -33,9 +33,6 @@ public class DataApiModelDto { ...@@ -33,9 +33,6 @@ public class DataApiModelDto {
@ApiModelProperty(name = "行数据范围", required = true) @ApiModelProperty(name = "行数据范围", required = true)
private List<LineDataRangeFilter> lineDataRangeConfig; private List<LineDataRangeFilter> lineDataRangeConfig;
@ApiModelProperty(name = "apiID", required = true)
private Integer apiID;
@ApiModelProperty(name = "发布系统ID", required = false) @ApiModelProperty(name = "发布系统ID", required = false)
private Long publishSystemId; private Long publishSystemId;
...@@ -48,4 +45,7 @@ public class DataApiModelDto { ...@@ -48,4 +45,7 @@ public class DataApiModelDto {
@ApiModelProperty(name = "系统环境", required = true) @ApiModelProperty(name = "系统环境", required = true)
private String systemEnv; private String systemEnv;
@ApiModelProperty(name = "数据服务描述", required = true)
private String desc;
} }
package com.hisense.dataservice.entity; package com.hisense.dataservice.entity;
import com.hisense.dataservice.bo.TableJoinRelationConfig; import com.hisense.dataservice.bo.TableJoinRelationConfig;
import com.hisense.dataservice.enums.DebugStatusEnum;
import com.hisense.dataservice.enums.NetworkEnv; import com.hisense.dataservice.enums.NetworkEnv;
import com.hisense.dataservice.enums.SystemEnv; import com.hisense.dataservice.enums.SystemEnv;
import com.vladmihalcea.hibernate.type.json.JsonBlobType; import com.vladmihalcea.hibernate.type.json.JsonBlobType;
...@@ -42,7 +43,7 @@ public class DataApiModel extends BaseEntity{ ...@@ -42,7 +43,7 @@ public class DataApiModel extends BaseEntity{
// apiId // apiId
@Column(nullable = false) @Column(nullable = false)
private Integer apiID; private String apiID;
// 发布系统ID // 发布系统ID
@Column(nullable = false) @Column(nullable = false)
...@@ -58,8 +59,14 @@ public class DataApiModel extends BaseEntity{ ...@@ -58,8 +59,14 @@ public class DataApiModel extends BaseEntity{
@Column(name = "system_env", columnDefinition = "varchar2(10)", nullable = true) @Column(name = "system_env", columnDefinition = "varchar2(10)", nullable = true)
private SystemEnv systemEnv; private SystemEnv systemEnv;
// 发布:1、草稿:0 // 草稿:0、发布:1
@Column(name = "status", columnDefinition = "CHAR(1) default 0", nullable = false)
private Integer status; private Integer status;
// 未调试:NO_DEBUG、调试成功:SUCCESS、调试失败:FAIL
@Enumerated(EnumType.ORDINAL)
@Column(name = "debug_status", columnDefinition = "varchar2(10)", nullable = false)
private DebugStatusEnum debugStatus;
} }
...@@ -110,7 +110,7 @@ public class DataApiModelConfig extends BaseEntity{ ...@@ -110,7 +110,7 @@ public class DataApiModelConfig extends BaseEntity{
} }
// 生成数据量大小查询sql // 生成数据量大小查询sql
public String generateDataCountSql(DataSourceTypeEnum dataSourceTypeEnum) { public String generateDataCountSql() {
// 已经通过校验行列筛选条件 // 已经通过校验行列筛选条件
StringBuilder fullSqlBuilder = new StringBuilder(); StringBuilder fullSqlBuilder = new StringBuilder();
......
package com.hisense.dataservice.enums;
/**
* @author : scc
* @date : 2023/03/14
**/
public enum DebugStatusEnum {
NO_DEBUG,
FAIL,
SUCCESS,
}
...@@ -9,6 +9,7 @@ import org.springframework.data.jpa.repository.JpaRepository; ...@@ -9,6 +9,7 @@ import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
import java.util.Optional;
/** /**
* @author : scc * @author : scc
...@@ -20,6 +21,8 @@ public interface DataApiColumnRepository extends JpaRepository<DataApiColumn,Lon ...@@ -20,6 +21,8 @@ public interface DataApiColumnRepository extends JpaRepository<DataApiColumn,Lon
// 根据数据表ID查询所有的列信息 // 根据数据表ID查询所有的列信息
List<DataApiColumn> findAllByDataTableIdAndDeletedIsFalse(Long dataTableId); List<DataApiColumn> findAllByDataTableIdAndDeletedIsFalse(Long dataTableId);
Optional<DataApiColumn> findByDataTableIdAndIdDeletedIsFalse(Long dataTableId, Long id);
Page<DataApiColumn> findAll(Specification specification, Pageable pageable); Page<DataApiColumn> findAll(Specification specification, Pageable pageable);
......
...@@ -13,5 +13,5 @@ import java.util.Optional; ...@@ -13,5 +13,5 @@ import java.util.Optional;
@Repository @Repository
public interface DataApiModelRepository extends JpaRepository<DataApiModel,Long> { public interface DataApiModelRepository extends JpaRepository<DataApiModel,Long> {
Optional<DataApiModel> findByApiID(Integer apiId); Optional<DataApiModel> findByApiID(String apiId);
} }
...@@ -13,6 +13,7 @@ import org.springframework.data.repository.query.Param; ...@@ -13,6 +13,7 @@ import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
import java.util.Optional;
/** /**
* @author : scc * @author : scc
...@@ -24,6 +25,8 @@ public interface DataApiTableRepository extends JpaRepository<DataApiTable,Long> ...@@ -24,6 +25,8 @@ public interface DataApiTableRepository extends JpaRepository<DataApiTable,Long>
// 根据数据源ID查询所有的数据表 // 根据数据源ID查询所有的数据表
List<DataApiTable> findAllByDataSourceIdAndDeletedIsFalse(Long dataSourceId); List<DataApiTable> findAllByDataSourceIdAndDeletedIsFalse(Long dataSourceId);
Optional<DataApiTable> findAllByDataSourceIdAndIdDeletedIsFalse(Long dataSourceId, Long id);
Page<DataApiTable> findAll(Specification specification, Pageable pageable); Page<DataApiTable> findAll(Specification specification, Pageable pageable);
// 根据数据源ID查询所有的数据表 // 根据数据源ID查询所有的数据表
......
/*
* Licensed Materials - Property of tenxcloud.com
* (C) Copyright 2019 TenxCloud. All Rights Reserved.
*
* @auther douyanwei
* @date 2020/2/19
*/
package com.hisense.dataservice.repository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface PublishApplicationRepository{
@Query(value ="SELECT " +
"app.system" +
"FROM publish_application app " +
"WHERE app.USER_KEY = :userKey", nativeQuery=true)
List<Integer> findAllByUserKey(@Param("userKey") String userKey);
@Query(value ="SELECT " +
"app.system" +
"FROM publish_application app " +
"WHERE app.app_id = :appId and app.app_key = :appkey", nativeQuery=true)
List<Integer> findAllByAppIdAndAppKey(@Param("appId") String appId, @Param("appKey") String appKey);
}
...@@ -2,11 +2,13 @@ package com.hisense.dataservice.service; ...@@ -2,11 +2,13 @@ package com.hisense.dataservice.service;
import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PathVariable;
import javax.servlet.http.HttpServletRequest;
/** /**
* @author : scc * @author : scc
* @date : 2023/02/24 * @date : 2023/02/24
**/ **/
public interface DataApiCommonService { public interface DataApiCommonService {
Object queryData(@PathVariable String environment, @PathVariable String pattern); Object queryData(String environment, String pattern, HttpServletRequest request);
} }
...@@ -9,5 +9,9 @@ import com.hisense.dataservice.library.model.Result; ...@@ -9,5 +9,9 @@ import com.hisense.dataservice.library.model.Result;
**/ **/
public interface DataApiServiceManagementService extends BaseService { public interface DataApiServiceManagementService extends BaseService {
Result<Boolean> createOrUpdateDataApi(DataApiModelDto dataApiModelDto); // 发布数据api服务
Result<Boolean> publishDataApi(String environment, Long modelId);
// 创建或修改未发布的数据api服务(草稿状态)
Result<Long> createDataApi(String environment, DataApiModelDto dataApiModelDto);
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论