parent
f6c4b651ce
commit
b5e81e3fbc
@ -0,0 +1,61 @@
|
||||
package com.renchao.postgresql;
|
||||
|
||||
import org.postgresql.copy.CopyManager;
|
||||
import org.postgresql.core.BaseConnection;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.FileReader;
|
||||
import java.io.IOException;
|
||||
import java.io.RandomAccessFile;
|
||||
import java.sql.Connection;
|
||||
import java.sql.DriverManager;
|
||||
import java.sql.SQLException;
|
||||
|
||||
/**
|
||||
* @author ren_chao
|
||||
*/
|
||||
public class PostgreSQLDemo {
|
||||
public static void main(String[] args) throws SQLException, IOException {
|
||||
String url = "jdbc:postgresql://172.16.12.105:5432/keliubao";
|
||||
String user = "postgres";
|
||||
String password = "postgres";
|
||||
|
||||
Connection connection = DriverManager.getConnection(url, user, password);
|
||||
BaseConnection baseConnection = (BaseConnection) connection;
|
||||
CopyManager copyAPI = baseConnection.getCopyAPI();
|
||||
FileReader from = new FileReader("C:\\Users\\RENCHAO\\Desktop\\test\\dws_line_metric_day2023-08-12.csv");
|
||||
String sql = "COPY tbl_prd_line_metric_day(line_code,line_name,line_status,company_code,company_name,service_type,metric_value,metric_date) FROM STDIN WITH CSV";
|
||||
long l = System.currentTimeMillis();
|
||||
long count = copyAPI.copyIn(sql, from);
|
||||
System.out.println(count);
|
||||
System.out.println("耗时:" + (System.currentTimeMillis() - l)/1000 + "秒");
|
||||
connection.close();
|
||||
// aa("C:\\Users\\RENCHAO\\Desktop\\test\\dws_line_metric_day2023-08-12.csv");
|
||||
}
|
||||
|
||||
|
||||
private static void aa(String filePath) {
|
||||
try {
|
||||
// 创建RandomAccessFile实例
|
||||
RandomAccessFile randomAccessFile = new RandomAccessFile(new File(filePath), "rw");
|
||||
|
||||
// 定位到文件的倒数第二行
|
||||
long position = randomAccessFile.length() - 2;
|
||||
while (position >= 0 && (char) randomAccessFile.readByte() != '\n') {
|
||||
position--;
|
||||
randomAccessFile.seek(position);
|
||||
}
|
||||
|
||||
// 截断文件
|
||||
randomAccessFile.setLength(position + 1);
|
||||
|
||||
// 关闭RandomAccessFile
|
||||
randomAccessFile.close();
|
||||
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
package com.jiuyv.sptcc.agile.batch.config;
|
||||
|
||||
import com.mchange.v2.c3p0.ComboPooledDataSource;
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
import org.springframework.boot.jdbc.DataSourceBuilder;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
|
||||
/**
|
||||
* C3P0 数据源配置
|
||||
* @author ren_chao
|
||||
*/
|
||||
@Configuration
|
||||
public class DataSourceConfig {
|
||||
|
||||
@Bean(name = "hiveDataSource")
|
||||
@ConfigurationProperties(prefix = "hive-data-source")
|
||||
public DataSource hiveDataSource() {
|
||||
return DataSourceBuilder.create().type(ComboPooledDataSource.class).build();
|
||||
}
|
||||
|
||||
@Bean(name = "pgDataSource")
|
||||
@ConfigurationProperties(prefix = "pg-data-source")
|
||||
public DataSource pgDataSource() {
|
||||
return DataSourceBuilder.create().type(ComboPooledDataSource.class).build();
|
||||
}
|
||||
}
|
@ -0,0 +1,44 @@
|
||||
package com.jiuyv.sptcc.agile.batch.config;
|
||||
|
||||
import com.jiuyv.sptcc.agile.batch.domain.TableInfo;
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 需要同步的表
|
||||
*
|
||||
* @author ren_chao
|
||||
*/
|
||||
@Component
|
||||
@ConfigurationProperties(prefix = "sync-table")
|
||||
public class TableProperties {
|
||||
|
||||
/**
|
||||
* 需要同步的表
|
||||
*/
|
||||
private List<TableInfo> tables;
|
||||
|
||||
/**
|
||||
* 表对应的文件类型
|
||||
*/
|
||||
private Map<String, String> fileTypeMap;
|
||||
|
||||
public List<TableInfo> getTables() {
|
||||
return tables;
|
||||
}
|
||||
|
||||
public void setTables(List<TableInfo> tables) {
|
||||
this.tables = tables;
|
||||
}
|
||||
|
||||
public Map<String, String> getFileTypeMap() {
|
||||
return fileTypeMap;
|
||||
}
|
||||
|
||||
public void setFileTypeMap(Map<String, String> fileTypeMap) {
|
||||
this.fileTypeMap = fileTypeMap;
|
||||
}
|
||||
}
|
@ -0,0 +1,95 @@
|
||||
package com.jiuyv.sptcc.agile.batch.config.sftp;
|
||||
|
||||
import com.jiuyv.sptcc.agile.batch.utils.Sm4Util;
|
||||
import org.apache.commons.codec.DecoderException;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.security.GeneralSecurityException;
|
||||
|
||||
@Component
|
||||
@ConfigurationProperties(prefix = "sftp")
|
||||
public class SftpProperties {
|
||||
private static final Logger LOGGER = LoggerFactory.getLogger(SftpProperties.class);
|
||||
private static final String SM4_KEY = "a14751855ccb428d982c33dfa3535a57";
|
||||
private String host;
|
||||
private int port = 22;
|
||||
private String username;
|
||||
private String password;
|
||||
/**
|
||||
* 连接池最大实例数
|
||||
*/
|
||||
private int maxTotal = 10;
|
||||
/**
|
||||
* 连接池最大空闲数
|
||||
*/
|
||||
private int maxIdle = 10;
|
||||
/**
|
||||
* 连接池最小空闲数
|
||||
*/
|
||||
private int minIdle = 5;
|
||||
|
||||
public String getHost() {
|
||||
return host;
|
||||
}
|
||||
|
||||
public void setHost(String host) {
|
||||
this.host = host;
|
||||
}
|
||||
|
||||
public int getPort() {
|
||||
return port;
|
||||
}
|
||||
|
||||
public void setPort(int port) {
|
||||
this.port = port;
|
||||
}
|
||||
|
||||
public String getUsername() {
|
||||
return username;
|
||||
}
|
||||
|
||||
public void setUsername(String username) {
|
||||
this.username = username;
|
||||
}
|
||||
|
||||
public String getPassword() {
|
||||
try {
|
||||
return Sm4Util.decryptEcb(SM4_KEY, password);
|
||||
} catch (GeneralSecurityException | DecoderException e) {
|
||||
LOGGER.error("密码解密失败", e);
|
||||
return "";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void setPassword(String password) {
|
||||
this.password = password;
|
||||
}
|
||||
|
||||
public int getMaxTotal() {
|
||||
return maxTotal;
|
||||
}
|
||||
|
||||
public void setMaxTotal(int maxTotal) {
|
||||
this.maxTotal = maxTotal;
|
||||
}
|
||||
|
||||
public int getMaxIdle() {
|
||||
return maxIdle;
|
||||
}
|
||||
|
||||
public void setMaxIdle(int maxIdle) {
|
||||
this.maxIdle = maxIdle;
|
||||
}
|
||||
|
||||
public int getMinIdle() {
|
||||
return minIdle;
|
||||
}
|
||||
|
||||
public void setMinIdle(int minIdle) {
|
||||
this.minIdle = minIdle;
|
||||
}
|
||||
}
|
@ -0,0 +1,47 @@
|
||||
package com.jiuyv.sptcc.agile.batch.dao;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
import java.sql.Connection;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
|
||||
/**
|
||||
* DAO 基类
|
||||
*
|
||||
* @author ren_chao
|
||||
*/
|
||||
public abstract class BaseDAO {
|
||||
|
||||
protected final DataSource dataSource;
|
||||
|
||||
public BaseDAO(DataSource dataSource) {
|
||||
this.dataSource = dataSource;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 根据分区或日期查询记录数
|
||||
*
|
||||
*/
|
||||
public Integer getCountByDate(String table, String whereColumn, String date) throws SQLException {
|
||||
return getCount(String.format("select count(*) from %s where %s = '%s'", table, whereColumn, date));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询整个表记录数
|
||||
*
|
||||
*/
|
||||
public Integer getCountByDate(String table) throws SQLException {
|
||||
return getCount("select count(*) from " + table);
|
||||
}
|
||||
|
||||
private Integer getCount(String sql) throws SQLException {
|
||||
try (Connection connection = dataSource.getConnection();
|
||||
ResultSet resultSet = connection.prepareStatement(sql).executeQuery()) {
|
||||
resultSet.next();
|
||||
return resultSet.getInt(1);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,91 @@
|
||||
package com.jiuyv.sptcc.agile.batch.dao;
|
||||
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
import java.sql.Connection;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.ResultSetMetaData;
|
||||
import java.sql.SQLException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* Hive 持久层
|
||||
* @author ren_chao
|
||||
*/
|
||||
@Repository
|
||||
public class HiveDAO extends BaseDAO {
|
||||
|
||||
public HiveDAO(DataSource hiveDataSource) {
|
||||
super(hiveDataSource);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取列的元信息
|
||||
*
|
||||
*/
|
||||
public List<String> getColumns(String tableName) throws SQLException {
|
||||
String sql = String.format("select * from %s where 2=1", tableName);
|
||||
try (Connection connection = dataSource.getConnection()) {
|
||||
PreparedStatement statement = connection.prepareStatement(sql);
|
||||
ResultSet resultSet = statement.executeQuery();
|
||||
ResultSetMetaData metaData = resultSet.getMetaData();
|
||||
List<String> list = new ArrayList<>();
|
||||
for (int i = 1; i <= metaData.getColumnCount(); i++) {
|
||||
String[] split = metaData.getColumnName(i).split("\\.");
|
||||
list.add(split[split.length - 1]);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取Hive表分区
|
||||
*/
|
||||
public List<String> getDates(String hiveTable) throws SQLException {
|
||||
String sql = "show partitions " + hiveTable;
|
||||
try (Connection connection = dataSource.getConnection();
|
||||
ResultSet resultSet = connection.prepareStatement(sql).executeQuery()) {
|
||||
List<String> list = new ArrayList<>();
|
||||
while (resultSet.next()) {
|
||||
list.add(resultSet.getString(1).split("=")[1]);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 查询Hive列表
|
||||
*/
|
||||
public List<Map<String, Object>> selectList(String sql, Object... param)
|
||||
throws SQLException {
|
||||
|
||||
try (Connection connection = dataSource.getConnection()) {
|
||||
PreparedStatement statement = connection.prepareStatement(sql);
|
||||
for (int i = 0; i < param.length; i++) {
|
||||
statement.setObject(i + 1, param[i]);
|
||||
}
|
||||
ResultSet resultSet = statement.executeQuery();
|
||||
ResultSetMetaData metaData = resultSet.getMetaData();
|
||||
List<Map<String, Object>> list = new ArrayList<>();
|
||||
|
||||
while (resultSet.next()) {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
for (int i = 1; i <= metaData.getColumnCount(); i++) {
|
||||
Object value = resultSet.getObject(i);
|
||||
String[] split = metaData.getColumnName(i).split("\\.");
|
||||
map.put(split[split.length - 1], value);
|
||||
}
|
||||
list.add(map);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,110 @@
|
||||
package com.jiuyv.sptcc.agile.batch.dao;
|
||||
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
import java.sql.Connection;
|
||||
import java.sql.Date;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.sql.Statement;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
/**
|
||||
* Postgre 持久层
|
||||
*
|
||||
* @author ren_chao
|
||||
*/
|
||||
@Repository
|
||||
public class PostgreDAO extends BaseDAO {
|
||||
private final Pattern SQL_INSERT_PATTERN = Pattern.compile("\\(([^)]+)\\)[ ]*VALUES\\(([^)]+)\\)", Pattern.CASE_INSENSITIVE);
|
||||
|
||||
public PostgreDAO(DataSource pgDataSource) {
|
||||
super(pgDataSource);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 批量插入
|
||||
*/
|
||||
public void batchInsert(List<Map<String, Object>> list, String sql) throws SQLException {
|
||||
String[] place = getPlace(sql);
|
||||
try (Connection connection = dataSource.getConnection()) {
|
||||
PreparedStatement statement = connection.prepareStatement(sql);
|
||||
for (int i = 0; i < list.size(); i++) {
|
||||
Map<String, Object> map = list.get(i);
|
||||
for (int k = 0; k < place.length; k++) {
|
||||
statement.setObject(k + 1, map.get(place[k]));
|
||||
}
|
||||
statement.addBatch();
|
||||
if (i % 1000 == 0) {
|
||||
statement.executeBatch();
|
||||
statement.clearBatch();
|
||||
}
|
||||
}
|
||||
statement.executeBatch();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 插入单个
|
||||
*/
|
||||
public void insertSyncRecord(String path, String tableName, int count, Date txnDate) throws SQLException {
|
||||
String sql = "INSERT INTO tbl_prd_sync_record (path,table_name,count,txn_date) VALUES(?,?,?,?)";
|
||||
try (Connection connection = dataSource.getConnection();
|
||||
PreparedStatement statement = connection.prepareStatement(sql)) {
|
||||
statement.setString(1, path);
|
||||
statement.setString(2, tableName);
|
||||
statement.setInt(3, count);
|
||||
statement.setDate(4, txnDate);
|
||||
statement.execute();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询上次最后同步的分区或日期
|
||||
*/
|
||||
public String getLastDate(String column, String table) throws SQLException {
|
||||
String sql = String.format("SELECT DISTINCT %s FROM %s ORDER BY %s DESC LIMIT 1", column, table, column);
|
||||
try (Connection connection = dataSource.getConnection();
|
||||
PreparedStatement statement = connection.prepareStatement(sql);
|
||||
ResultSet resultSet = statement.executeQuery()) {
|
||||
if (resultSet.next()) {
|
||||
return resultSet.getString(1);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 解析SQL占位符对应的列名
|
||||
*/
|
||||
private String[] getPlace(String sql) {
|
||||
Matcher matcher = SQL_INSERT_PATTERN.matcher(sql);
|
||||
if (!matcher.find()) {
|
||||
return new String[0];
|
||||
}
|
||||
String[] fs = matcher.group(1).split(",");
|
||||
String[] vs = matcher.group(2).split(",");
|
||||
List<String> fields = new ArrayList<>();
|
||||
for (int i = 0; i < vs.length; i++) {
|
||||
if ("?".equals(vs[i].trim())) {
|
||||
fields.add(fs[i].trim());
|
||||
}
|
||||
}
|
||||
return fields.toArray(new String[0]);
|
||||
}
|
||||
|
||||
public void clearTable(String table) throws SQLException {
|
||||
String sql = "TRUNCATE " + table;
|
||||
try (Connection connection = dataSource.getConnection();
|
||||
Statement statement = connection.createStatement()) {
|
||||
statement.execute(sql);
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,71 @@
|
||||
package com.jiuyv.sptcc.agile.batch.domain;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 同步数据信息容器
|
||||
*
|
||||
* @author ren_chao
|
||||
*/
|
||||
public class DataInfoContainer {
|
||||
/**
|
||||
* 表信息
|
||||
*/
|
||||
private TableInfo tableInfo;
|
||||
|
||||
/**
|
||||
* 同步的数据
|
||||
*/
|
||||
private List<Map<String, Object>> dataList;
|
||||
|
||||
/**
|
||||
* 分区或日期的总记录数
|
||||
*/
|
||||
private Integer total;
|
||||
|
||||
/**
|
||||
* 分区或日期
|
||||
*/
|
||||
private String date;
|
||||
|
||||
public DataInfoContainer(TableInfo tableInfo, List<Map<String, Object>> dataList, Integer total, String date) {
|
||||
this.tableInfo = tableInfo;
|
||||
this.dataList = dataList;
|
||||
this.total = total;
|
||||
this.date = date;
|
||||
}
|
||||
|
||||
public TableInfo getTableInfo() {
|
||||
return tableInfo;
|
||||
}
|
||||
|
||||
public void setTableInfo(TableInfo tableInfo) {
|
||||
this.tableInfo = tableInfo;
|
||||
}
|
||||
|
||||
public List<Map<String, Object>> getDataList() {
|
||||
return dataList;
|
||||
}
|
||||
|
||||
public void setDataList(List<Map<String, Object>> dataList) {
|
||||
this.dataList = dataList;
|
||||
}
|
||||
|
||||
public Integer getTotal() {
|
||||
return total;
|
||||
}
|
||||
|
||||
public void setTotal(Integer total) {
|
||||
this.total = total;
|
||||
}
|
||||
|
||||
public String getDate() {
|
||||
return date;
|
||||
}
|
||||
|
||||
public void setDate(String date) {
|
||||
this.date = date;
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,89 @@
|
||||
package com.jiuyv.sptcc.agile.batch.domain;
|
||||
|
||||
/**
|
||||
* 要同步的表信息
|
||||
* @author ren_chao
|
||||
*/
|
||||
public class TableInfo {
|
||||
/**
|
||||
* Hive表
|
||||
*/
|
||||
private String hiveTable;
|
||||
|
||||
/**
|
||||
* pg表
|
||||
*/
|
||||
private String pgTable;
|
||||
|
||||
/**
|
||||
* 分区
|
||||
*/
|
||||
private String dateColumn;
|
||||
|
||||
/**
|
||||
* 是否分区
|
||||
*/
|
||||
private boolean part = false;
|
||||
|
||||
|
||||
private String hiveSql;
|
||||
private String pgSql;
|
||||
private String[] tableHeader;
|
||||
|
||||
public String getHiveTable() {
|
||||
return hiveTable;
|
||||
}
|
||||
|
||||
public void setHiveTable(String hiveTable) {
|
||||
this.hiveTable = hiveTable;
|
||||
}
|
||||
|
||||
public String getPgTable() {
|
||||
return pgTable;
|
||||
}
|
||||
|
||||
public void setPgTable(String pgTable) {
|
||||
this.pgTable = pgTable;
|
||||
}
|
||||
|
||||
public String getDateColumn() {
|
||||
return dateColumn;
|
||||
}
|
||||
|
||||
public void setDateColumn(String dateColumn) {
|
||||
this.dateColumn = dateColumn;
|
||||
}
|
||||
|
||||
public boolean isPart() {
|
||||
return part;
|
||||
}
|
||||
|
||||
public void setPart(boolean part) {
|
||||
this.part = part;
|
||||
}
|
||||
|
||||
public String getHiveSql() {
|
||||
return hiveSql;
|
||||
}
|
||||
|
||||
public void setHiveSql(String hiveSql) {
|
||||
this.hiveSql = hiveSql;
|
||||
}
|
||||
|
||||
public String getPgSql() {
|
||||
return pgSql;
|
||||
}
|
||||
|
||||
public void setPgSql(String pgSql) {
|
||||
this.pgSql = pgSql;
|
||||
}
|
||||
|
||||
public String[] getTableHeader() {
|
||||
return tableHeader;
|
||||
}
|
||||
|
||||
public void setTableHeader(String[] tableHeader) {
|
||||
this.tableHeader = tableHeader;
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
{
|
||||
"outPath": "target\\word"
|
||||
}
|
@ -0,0 +1,51 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<parent>
|
||||
<artifactId>agile-data</artifactId>
|
||||
<groupId>com.jiuyv.sptcc.agile</groupId>
|
||||
<version>0.1.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
<artifactId>agile-data-api</artifactId>
|
||||
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>com.fasterxml.jackson.core</groupId>
|
||||
<artifactId>jackson-annotations</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.hibernate.validator</groupId>
|
||||
<artifactId>hibernate-validator</artifactId>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.springframework</groupId>
|
||||
<artifactId>spring-web</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.springframework</groupId>
|
||||
<artifactId>spring-context</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.jiuyv.sptcc.agile</groupId>
|
||||
<artifactId>agile-common</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.github.openfeign</groupId>
|
||||
<artifactId>feign-core</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.tomcat.embed</groupId>
|
||||
<artifactId>tomcat-embed-core</artifactId>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
</project>
|
@ -0,0 +1,23 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
|
||||
/**
|
||||
* @ClassName : OrgAuthApi
|
||||
* @Description : 获取机构权限列表
|
||||
* @Author : sky
|
||||
* @Date: 2023-07-13 11:45
|
||||
*/
|
||||
public interface OrgAuthApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/auth";
|
||||
|
||||
@PostMapping(PREFIX_PATH + "/info")
|
||||
R<OrgAuthResp> getOrgAuth(OrgAuthReq req);
|
||||
|
||||
}
|
@ -0,0 +1,28 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.console;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.Api.ApiLogRequest;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.Api.ApiLogResponse;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
|
||||
/**
|
||||
* @ClassName : ApiLogApi
|
||||
* @Description : 日志接口
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-22 10:25
|
||||
*/
|
||||
public interface ApiLogApi {
|
||||
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/apilog";
|
||||
|
||||
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<ApiLogResponse>> list(ApiLogRequest request);
|
||||
|
||||
@GetMapping(PREFIX_PATH + "/detail")
|
||||
R<ApiLogResponse> detail(@RequestParam("id") Long id);
|
||||
}
|
@ -0,0 +1,145 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.console;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.Api.*;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.Api.ApiResponse;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import feign.Response;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 敏捷API
|
||||
*
|
||||
* @author yulei
|
||||
*/
|
||||
public interface DataApiFeign {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/agileApi";
|
||||
|
||||
|
||||
@GetMapping(PREFIX_PATH + "/getPrefixPath")
|
||||
R<String> getApiPrefixPath();
|
||||
|
||||
/**
|
||||
* 获取详情
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/getDate")
|
||||
R<ApiResponse> getDataApiById(@RequestParam("id") Long id);
|
||||
|
||||
/**
|
||||
* 获取数据源的API列表
|
||||
*
|
||||
* @param sourceId
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(PREFIX_PATH + "/sourceList")
|
||||
R<List<ApiResponse>> getDataApiList(@RequestParam("sourceId") Long sourceId);
|
||||
|
||||
/**
|
||||
* 获取分页列表
|
||||
*
|
||||
* @param apiQuery
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<ApiResponse>> getDataApiPage(ApiPageRequest apiQuery);
|
||||
|
||||
/**
|
||||
* 新增API
|
||||
*
|
||||
* @param dataApi
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/add")
|
||||
R<Object> saveDataApi(ApiAddRequest dataApi);
|
||||
|
||||
/**
|
||||
* 修改API
|
||||
*
|
||||
* @param dataApi
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/update")
|
||||
R<Object> updateDataApi(ApiUpdateRequest dataApi);
|
||||
|
||||
/**
|
||||
* 删除API
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/delete")
|
||||
R<Object> deleteDataApiById(@RequestBody @Validated ApiDelRequest request);
|
||||
|
||||
/**
|
||||
* 复制API
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/copy")
|
||||
R<Object> copyDataApi(ApiCopyRequest request);
|
||||
|
||||
/**
|
||||
* 注册API
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/register")
|
||||
R<Object> registerDataApi(ApiStatusRequest request);
|
||||
|
||||
/**
|
||||
* 发布API
|
||||
*
|
||||
* @param dto
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/release")
|
||||
R<Object> releaseDataApi(ApiStatusRequest dto);
|
||||
|
||||
/**
|
||||
* 注销API
|
||||
*
|
||||
* @param dto
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/cancel")
|
||||
R<Object> cancelDataApi(ApiStatusRequest dto);
|
||||
|
||||
/**
|
||||
* 下架API
|
||||
*
|
||||
* @param dto
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/down")
|
||||
R<Object> downDataApi(ApiStatusRequest dto);
|
||||
|
||||
/**
|
||||
* 获取api树状结构数据
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/tree")
|
||||
R<List<TreeSelect>> apiTree();
|
||||
|
||||
/**
|
||||
* 生成接口文档
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(PREFIX_PATH + "/word/down")
|
||||
Response wordDataApi(@RequestParam("id") Long id) throws Exception;
|
||||
}
|
@ -0,0 +1,75 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.console;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigAddRequest;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigEditRequest;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigQueryRequest;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 机构配置接口
|
||||
*
|
||||
* @ClassName : OrgConfigApi
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-07 15:44
|
||||
*/
|
||||
public interface OrgCfgConsoleApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/orgConfig";
|
||||
|
||||
/**
|
||||
* 分页查询列表
|
||||
*
|
||||
* @param query
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/list")
|
||||
R<PageResult<OrgConfigResponse>> list(OrgConfigQueryRequest query);
|
||||
|
||||
/**
|
||||
* 查询详细
|
||||
*
|
||||
* @param configId
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(PREFIX_PATH + "/detail")
|
||||
R<OrgConfigResponse> queryDetail(@RequestParam("configId") Long configId);
|
||||
|
||||
/**
|
||||
* 新增
|
||||
*
|
||||
* @param dto
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/add")
|
||||
R<Object> add(OrgConfigAddRequest dto);
|
||||
|
||||
/**
|
||||
* 修改
|
||||
*
|
||||
* @param dto
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/edit")
|
||||
R<Object> edit(OrgConfigEditRequest dto);
|
||||
|
||||
/**
|
||||
* 删除
|
||||
*
|
||||
* @param configId
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/delete")
|
||||
R<Object> delete(@RequestParam("configId") Long configId);
|
||||
|
||||
|
||||
@GetMapping(PREFIX_PATH + "/getOrgCfg")
|
||||
R<List<OrgConfigResponse>> getConfig(@RequestParam("orgCode") String orgCode);
|
||||
}
|
@ -0,0 +1,108 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.console;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.console.OrgApiAuthRequest;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.org.*;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgApiAuthVo;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgInfoResp;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
|
||||
/**
|
||||
* 机构管控台服务接口
|
||||
*
|
||||
* @ClassName : OrgInfoApi
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-07 15:51
|
||||
*/
|
||||
public interface OrgInfoConsoleApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/orgInfo";
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
*
|
||||
* @param query
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/list")
|
||||
R<PageResult<OrgInfoResp>> list(OrgInfoQueryReq query);
|
||||
|
||||
/**
|
||||
* 详情
|
||||
*
|
||||
* @param orgNo
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(PREFIX_PATH + "/detail")
|
||||
R<OrgInfoResp> getInfo(@RequestParam("orgNo") String orgNo);
|
||||
|
||||
/**
|
||||
* 新增接口
|
||||
*
|
||||
* @param addReq
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/add")
|
||||
R<Object> add(OrgInfoAddReq addReq);
|
||||
|
||||
/**
|
||||
* 编辑接口
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/edit")
|
||||
R<Object> edit(OrgInfoEditReq request);
|
||||
|
||||
/**
|
||||
* 删除接口
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/remove")
|
||||
R<Object> remove(OrgDelReq request);
|
||||
|
||||
/**
|
||||
* 启用机构
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/run")
|
||||
R<Object> run(OrgInfoStatusReq request);
|
||||
|
||||
/**
|
||||
* 停用机构
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/stop")
|
||||
R<Object> stop(OrgInfoStatusReq request);
|
||||
|
||||
/**
|
||||
* 获取密钥
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(PREFIX_PATH + "/key")
|
||||
R<String> getGenerateKeyHex();
|
||||
|
||||
/**
|
||||
* 授权
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/auth")
|
||||
R<Object> orgApiAuth(OrgApiAuthRequest request);
|
||||
|
||||
/**
|
||||
* 获取权限信息
|
||||
*
|
||||
* @param orgNo
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(PREFIX_PATH + "/auth/list")
|
||||
R<OrgApiAuthVo> orgApiAuthInfo(@RequestParam("orgNo") String orgNo);
|
||||
|
||||
}
|
@ -0,0 +1,33 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.console;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.Api.ApiUserRequest;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgStatisticsQueryReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.Api.DataApiStatisticsResponse;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgStatisticsVo;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
/**
|
||||
* 机构接口调用次数统计
|
||||
*
|
||||
* @ClassName : OrgStcsConsoleApi
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-07 16:02
|
||||
*/
|
||||
public interface OrgStcsConsoleApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/orgStcs";
|
||||
|
||||
@PostMapping(PREFIX_PATH + "/list")
|
||||
R<PageResult<OrgStatisticsVo>> queryByPage(OrgStatisticsQueryReq request);
|
||||
|
||||
/**
|
||||
* 查询用户接口调用统计列表
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/userApiStatistics")
|
||||
R<PageResult<DataApiStatisticsResponse>> getUserApiStatistics(ApiUserRequest request);
|
||||
}
|
@ -0,0 +1,23 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.portal;
|
||||
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.Api.ApiUserRequest;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.Api.DataApiResponse;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
public interface DataApiFeignApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/agileApi";
|
||||
|
||||
/**
|
||||
* 查询用户接口列表
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/userApiList")
|
||||
R<PageResult<DataApiResponse>> getUserApiList(ApiUserRequest request);
|
||||
|
||||
}
|
@ -0,0 +1,23 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.portal;
|
||||
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
|
||||
/**
|
||||
* @ClassName : SdkDownload
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-21 10:42
|
||||
*/
|
||||
public interface SdkDownload {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/port";
|
||||
|
||||
/**
|
||||
* sdk 文件下载
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(PREFIX_PATH + "/download/sdk")
|
||||
ResponseEntity<byte[]> download();
|
||||
}
|
@ -0,0 +1,23 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.product;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.product.DownLoadRequest;
|
||||
import feign.Response;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
|
||||
/**
|
||||
* sftp文件下载
|
||||
*
|
||||
* @ClassName : DownloadApi
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-13 13:21
|
||||
*/
|
||||
public interface DownloadApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/product";
|
||||
|
||||
@PostMapping(PREFIX_PATH + "/download")
|
||||
Response download(DownLoadRequest request);
|
||||
|
||||
}
|
@ -0,0 +1,68 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.product;
|
||||
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineInfoReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineStationInfoReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineInfoRes;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineStationInfoRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 线路站点基础信息表
|
||||
*
|
||||
* @ClassName : LineInfoApi
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-19 18:51
|
||||
*/
|
||||
public interface LineInfoApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/lineInfo";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/list")
|
||||
R<PageResult<LineInfoRes>> list(LineInfoReq request);
|
||||
|
||||
|
||||
/**
|
||||
* 根据线路名称获取线路编码
|
||||
*
|
||||
* @param lineName
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(PREFIX_PATH + "/detail")
|
||||
R<LineInfoRes> detail(@RequestParam("lineName") String lineName);
|
||||
|
||||
|
||||
/**
|
||||
* 获取站点列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/stationList")
|
||||
R<List<LineStationInfoRes>> stationList(LineStationInfoReq request);
|
||||
|
||||
|
||||
/**
|
||||
* 根据站点名称获取站点信息
|
||||
*
|
||||
* @param lineName
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(PREFIX_PATH + "/stationDetail")
|
||||
R<LineStationInfoRes> stationDetail(@RequestParam("lineName") String lineName);
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.product;
|
||||
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineDayPageReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineDayPageRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
/**
|
||||
* @ClassName : LineMetricDay
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-18 15:17
|
||||
*/
|
||||
public interface LineMetricDayApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/lineDay";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<LineDayPageRes>> list(LineDayPageReq request);
|
||||
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.product;
|
||||
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineHourPageReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricHourRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
/**
|
||||
* @ClassName : LineMetricDay
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-18 15:17
|
||||
*/
|
||||
public interface LineMetricHourApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/linHour";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<LineMetricHourRes>> list(LineHourPageReq request);
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.product;
|
||||
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineMetricMonthReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricMonthRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
/**
|
||||
* @ClassName : LineMetricDay
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-18 15:17
|
||||
*/
|
||||
public interface LineMetricMonthApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/linMonth";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<LineMetricMonthRes>> list(LineMetricMonthReq request);
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,40 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.product;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.product.RouteMetricDayRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
|
||||
/**
|
||||
* @ClassName : RouteMetricDayApi
|
||||
* @Description : 班线
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-19 13:56
|
||||
*/
|
||||
public interface RouteMetricDayApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/routeMetricDay";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<RouteMetricDayRes>> list(@RequestBody @Validated RouteMetricDayReq request);
|
||||
|
||||
/**
|
||||
* 查看详情
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(PREFIX_PATH + "/detail")
|
||||
R<RouteMetricDayRes> detail(@RequestParam("id") Long id);
|
||||
}
|
@ -0,0 +1,31 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.product;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricDayReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricDayRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
|
||||
/**
|
||||
* 常乘客站点换乘客流量
|
||||
*
|
||||
* @ClassName : StationFreqMetricDayApi
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-19 14:03
|
||||
*/
|
||||
public interface StationFreqMetricDayApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/stationFreqMetricDay";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<StationFreqMetricDayRes>> list(@RequestBody @Validated StationFreqMetricDayReq request);
|
||||
}
|
@ -0,0 +1,32 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.product;
|
||||
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricMonthReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricMonthRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
|
||||
/**
|
||||
* 常乘客站点换乘客流量月统计
|
||||
*
|
||||
* @ClassName : StationFreqMetricDayApi
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-19 14:03
|
||||
*/
|
||||
public interface StationFreqMetricMonthApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/stationFreqMetricMonth";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<StationFreqMetricMonthRes>> list(@RequestBody @Validated StationFreqMetricMonthReq request);
|
||||
}
|
@ -0,0 +1,31 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.product;
|
||||
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransDayReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransDayRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
|
||||
/**
|
||||
* @ClassName : StationFreqTransDay
|
||||
* @Description : 常乘客换乘客流量日统计
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-19 14:14
|
||||
*/
|
||||
public interface StationFreqTransDayApi {
|
||||
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/stationFreqTransDay";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<StationFreqTransDayRes>> list(@RequestBody @Validated StationFreqTransDayReq request);
|
||||
}
|
@ -0,0 +1,31 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.product;
|
||||
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransMonthReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransMonthRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
|
||||
/**
|
||||
* @ClassName : StationFreqTransDay
|
||||
* @Description : 常乘客换乘客流量月统计
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-19 14:14
|
||||
*/
|
||||
public interface StationFreqTransMonthApi {
|
||||
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/stationFreqTransMonth";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<StationFreqTransMonthRes>> list(@RequestBody @Validated StationFreqTransMonthReq request);
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.product;
|
||||
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricDayReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricDayRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
/**
|
||||
* @ClassName : StationMetricDayApi
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-19 13:33
|
||||
*/
|
||||
public interface StationMetricDayApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/StationMetricDay";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<StationMetricDayRes>> list(StationMetricDayReq request);
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.product;
|
||||
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
/**
|
||||
* @ClassName : StationMetricDayApi
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-19 13:33
|
||||
*/
|
||||
public interface StationMetricHourApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/StationMetricHour";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<StationMetricHourRes>> list(StationMetricHourReq request);
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.product;
|
||||
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricMonthReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricMonthRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
/**
|
||||
* @ClassName : StationMetricDayApi
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-19 13:33
|
||||
*/
|
||||
public interface StationMetricMonthApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/StationMetricMonth";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<StationMetricMonthRes>> list(StationMetricMonthReq request);
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.product;
|
||||
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationTransDayRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
/**
|
||||
* @ClassName : StationTransDayApi
|
||||
* @Description : 换乘
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-19 13:45
|
||||
*/
|
||||
public interface StationTransDayApi {
|
||||
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/StationTransDay";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<StationTransDayRes>> list(StationTransDayReq request);
|
||||
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.product;
|
||||
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
/**
|
||||
* @ClassName : StationTransDayApi
|
||||
* @Description : 换乘
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-19 13:45
|
||||
*/
|
||||
public interface StationTransHourApi {
|
||||
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/StationTransHour";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<StationMetricHourRes>> list(StationMetricHourReq request);
|
||||
|
||||
}
|
@ -0,0 +1,28 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.product;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransMonthReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationTransMonthRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
/**
|
||||
* @ClassName : StationTransDayApi
|
||||
* @Description : 换乘
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-19 13:45
|
||||
*/
|
||||
public interface StationTransMonthApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/StationTransMonth";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<StationTransMonthRes>> list(StationTransMonthReq request);
|
||||
|
||||
}
|
@ -0,0 +1,27 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.quality;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.CentimeDelayReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.CentimeDelayRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
/**
|
||||
* 延迟上送
|
||||
*
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-20 17:35
|
||||
*/
|
||||
public interface CentimeDelayApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/quality/centimeDelay";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<CentimeDelayRes>> list(CentimeDelayReq request);
|
||||
}
|
@ -0,0 +1,33 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.quality;
|
||||
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.PosMatchRateReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.PosMatchRateRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
/**
|
||||
* Pos匹配率
|
||||
*
|
||||
* @ClassName : PosMatchRateApi
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-20 17:25
|
||||
*/
|
||||
public interface PosMatchRateApi {
|
||||
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/quality/posMatchRate";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<PosMatchRateRes>> list(PosMatchRateReq request);
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.quality;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteDailyReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteDailyRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
/**
|
||||
* 日运营线路数
|
||||
*
|
||||
* @ClassName : RouteDailyCountApi
|
||||
* @Description : 日运营线路数
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-20 17:19
|
||||
*/
|
||||
public interface RouteDailyCountApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/quality/routeDailyCount";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<RouteDailyRes>> list(RouteDailyReq request);
|
||||
}
|
@ -0,0 +1,27 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.quality;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteMissReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteMissRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
/**
|
||||
* 班次缺失率
|
||||
*
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-20 16:58
|
||||
*/
|
||||
public interface RouteMissApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/quality/routeMiss";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<RouteMissRes>> list(RouteMissReq request);
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.quality;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteTurnoverReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteTurnoverRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
/**
|
||||
* 班次周转时间
|
||||
*
|
||||
* @ClassName : RouteTurnoverTimeApi
|
||||
* @Description : 班次周转时间
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-20 16:44
|
||||
*/
|
||||
public interface RouteTurnoverTimeApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/quality/routeTurnover";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<RouteTurnoverRes>> list(RouteTurnoverReq request);
|
||||
}
|
@ -0,0 +1,42 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.quality;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.StationMissReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.StationMissRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
|
||||
/**
|
||||
* 站点缺失率
|
||||
*
|
||||
* @ClassName : StationMissApi
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-20 16:33
|
||||
*/
|
||||
public interface StationMissApi {
|
||||
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/quality/stationMiss";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<StationMissRes>> list(StationMissReq request);
|
||||
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(PREFIX_PATH + "/detail")
|
||||
R<StationMissRes> detail(@RequestParam("id") Long id);
|
||||
}
|
@ -0,0 +1,27 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.api.quality;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.VehicleDailyReq;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.VehicleDailyRes;
|
||||
import com.jiuyv.sptccc.agile.common.core.domain.R;
|
||||
import com.jiuyv.sptccc.agile.common.core.page.PageResult;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
/**
|
||||
* @ClassName : VehicleDailyApi
|
||||
* @Description : 运营车辆数
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-20 15:05
|
||||
*/
|
||||
public interface VehicleDailyApi {
|
||||
|
||||
String PREFIX_PATH = "/public/agile-data/quality/vehicleDaily";
|
||||
|
||||
/**
|
||||
* 获取列表信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(PREFIX_PATH + "/page")
|
||||
R<PageResult<VehicleDailyRes>> list(VehicleDailyReq request);
|
||||
}
|
@ -0,0 +1,47 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.enums;
|
||||
|
||||
public enum AlgorithmCrypto implements IDictEnum {
|
||||
|
||||
BASE64("1", "BASE64加密"),
|
||||
MD5("2", "MD5加密"),
|
||||
SHA_1("3", "SHA_1加密"),
|
||||
SHA_256("4", "SHA_256加密"),
|
||||
AES("5", "AES加密"),
|
||||
DES("6", "DES加密");
|
||||
|
||||
private final String key;
|
||||
|
||||
private final String val;
|
||||
|
||||
AlgorithmCrypto(String key, String val) {
|
||||
this.key = key;
|
||||
this.val = val;
|
||||
}
|
||||
|
||||
public String getKey() {
|
||||
return key;
|
||||
}
|
||||
|
||||
public String getVal() {
|
||||
return val;
|
||||
}
|
||||
|
||||
public static AlgorithmCrypto getAlgorithmCrypto(String algorithmCrypt) {
|
||||
for (AlgorithmCrypto type : AlgorithmCrypto.values()) {
|
||||
if (type.key.equals(algorithmCrypt)) {
|
||||
return type;
|
||||
}
|
||||
}
|
||||
return BASE64;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return key;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return val;
|
||||
}
|
||||
}
|
@ -0,0 +1,27 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.enums;
|
||||
|
||||
public class ApiCrypto {
|
||||
|
||||
public enum ApiState implements IDictEnum{
|
||||
WAIT("1","待注册"),
|
||||
REGISTER("2","已注册"),
|
||||
RELEASE("3","已发布");
|
||||
|
||||
ApiState(String code, String msg) {
|
||||
this.code = code;
|
||||
this.msg = msg;
|
||||
}
|
||||
private final String code;
|
||||
private final String msg;
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return msg;
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,65 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.enums;
|
||||
|
||||
public class ConfigCrypot {
|
||||
|
||||
public enum ConfigStatus implements IDictEnum{
|
||||
|
||||
STOP("1","停用"),
|
||||
NORMAL("0","正常");
|
||||
|
||||
ConfigStatus(String code, String msg) {
|
||||
this.code = code;
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
private String code;
|
||||
|
||||
private String msg;
|
||||
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return msg;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 机构配置参数
|
||||
*
|
||||
* @ClassName : OrgCfnKeyEnum
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-22 17:44
|
||||
*/
|
||||
public enum OrgCfnKeyEnum implements IDictEnum {
|
||||
|
||||
DATA_BEGIN("data_begin", "数据起始时间"),
|
||||
DATA_END("data_end", "数据结束时间"),
|
||||
DOWN_RIGHT("downLoadRigth","文件下载权限")
|
||||
;
|
||||
|
||||
private final String code;
|
||||
|
||||
private final String msg;
|
||||
|
||||
OrgCfnKeyEnum(String code, String msg) {
|
||||
this.code = code;
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return msg;
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,488 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.enums;
|
||||
|
||||
import com.sun.org.apache.bcel.internal.generic.RETURN;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
|
||||
/**
|
||||
* @ClassName : DataApiEnum
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-04 17:44
|
||||
*/
|
||||
public class DataApiEnum {
|
||||
|
||||
/**
|
||||
* API状态
|
||||
*/
|
||||
public enum API_STATUS implements IDictEnum {
|
||||
WAIT("1", "待注册"),
|
||||
REGISTER("2", "已注册"),
|
||||
RELEASE("3", "已发布"),
|
||||
DOWN("4", "下架");
|
||||
private final String code;
|
||||
private final String msg;
|
||||
|
||||
API_STATUS(String code, String msg) {
|
||||
this.code = code;
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return msg;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* API类型
|
||||
*/
|
||||
public enum API_TYPE implements IDictEnum {
|
||||
AGILE("1", "敏捷API"),
|
||||
SYSTEM("2", "系统API");
|
||||
private final String code;
|
||||
private final String msg;
|
||||
|
||||
API_TYPE(String code, String msg) {
|
||||
this.code = code;
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return msg;
|
||||
}
|
||||
}
|
||||
|
||||
public enum ResType implements IDictEnum{
|
||||
|
||||
JSON("JSON", "json类型");
|
||||
|
||||
private final String code;
|
||||
|
||||
private final String msg;
|
||||
|
||||
ResType(String code, String msg) {
|
||||
this.code = code;
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return msg;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 脱敏类型
|
||||
*/
|
||||
public enum CIPHER_TYPE implements IDictEnum {
|
||||
|
||||
REGEX("1", "正则替换"),
|
||||
ALGORITHM("2", "加密算法");
|
||||
|
||||
private final String code;
|
||||
|
||||
private final String msg;
|
||||
|
||||
CIPHER_TYPE(String code, String msg) {
|
||||
this.code = code;
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
public static CIPHER_TYPE getCipherType(String cipherType) {
|
||||
for (CIPHER_TYPE type : CIPHER_TYPE.values()) {
|
||||
if (type.code.equals(cipherType)) {
|
||||
return type;
|
||||
}
|
||||
}
|
||||
return REGEX;
|
||||
}
|
||||
|
||||
public String getKey() {
|
||||
return code;
|
||||
}
|
||||
|
||||
public String getVal() {
|
||||
return msg;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return msg;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 加密规则类型
|
||||
*/
|
||||
public enum ALGORITHM_CRYPTO implements IDictEnum {
|
||||
|
||||
BASE64("1", "BASE64加密"),
|
||||
MD5("2", "MD5加密"),
|
||||
SHA_1("3", "SHA_1加密"),
|
||||
SHA_256("4", "SHA_256加密"),
|
||||
AES("5", "AES加密");
|
||||
|
||||
private final String code;
|
||||
|
||||
private final String msg;
|
||||
|
||||
ALGORITHM_CRYPTO(String code, String msg) {
|
||||
this.code = code;
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
public static ALGORITHM_CRYPTO getAlgorithmCrypto(String algorithmCrypt) {
|
||||
for (ALGORITHM_CRYPTO type : ALGORITHM_CRYPTO.values()) {
|
||||
if (type.code.equals(algorithmCrypt)) {
|
||||
return type;
|
||||
}
|
||||
}
|
||||
return BASE64;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return msg;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 正则规则类型
|
||||
*/
|
||||
public enum REGEX_CRYPTO implements IDictEnum {
|
||||
|
||||
CHINESE_NAME("1", "中文姓名"),
|
||||
ID_CARD("2", "身份证号"),
|
||||
FIXED_PHONE("3", "固定电话"),
|
||||
MOBILE_PHONE("4", "手机号码"),
|
||||
ADDRESS("5", "地址"),
|
||||
EMAIL("6", "电子邮箱"),
|
||||
BANK_CARD("7", "银行卡号"),
|
||||
CNAPS_CODE("8", "公司开户银行联号");
|
||||
|
||||
private final String code;
|
||||
|
||||
private final String msg;
|
||||
|
||||
REGEX_CRYPTO(String code, String msg) {
|
||||
this.code = code;
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
|
||||
public static REGEX_CRYPTO getRegexCrypto(String regexCrypt) {
|
||||
for (REGEX_CRYPTO type : REGEX_CRYPTO.values()) {
|
||||
if (type.code.equals(regexCrypt)) {
|
||||
return type;
|
||||
}
|
||||
}
|
||||
return CHINESE_NAME;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return msg;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 配置方式
|
||||
*/
|
||||
public enum CONFIG_TYPE implements IDictEnum {
|
||||
|
||||
FORM("1", "表引导模式"),
|
||||
SCRIPT("2", "脚本模式");
|
||||
|
||||
private final String code;
|
||||
|
||||
private final String msg;
|
||||
|
||||
CONFIG_TYPE(String code, String msg) {
|
||||
this.code = code;
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return msg;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 参数类型
|
||||
*/
|
||||
public enum ParamType implements IDictEnum {
|
||||
|
||||
STRING("String", "字符串"),
|
||||
INTEGER("Integer", "整型"),
|
||||
DECIMAL("Number", "浮点型"),
|
||||
DATE("Date", "时间"),
|
||||
LIST("List", "集合"),
|
||||
LONG("Long","长整型");
|
||||
|
||||
private final String code;
|
||||
|
||||
private final String msg;
|
||||
|
||||
ParamType(String code, String msg) {
|
||||
this.code = code;
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
public static Object parse(ParamType paramType, Object obj) throws ParseException {
|
||||
if (obj == null) {
|
||||
return null;
|
||||
}
|
||||
switch (paramType) {
|
||||
case STRING:
|
||||
return obj.toString();
|
||||
|
||||
case DECIMAL:
|
||||
return new BigDecimal(obj.toString()).doubleValue();
|
||||
|
||||
case INTEGER:
|
||||
return java.lang.Integer.parseInt(obj.toString());
|
||||
|
||||
case LIST:
|
||||
return (java.util.List<?>) obj;
|
||||
|
||||
case LONG:
|
||||
return Long.valueOf(obj.toString());
|
||||
|
||||
case DATE:
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
return sdf.parse(obj.toString());
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static ParamType getParamType(String paramType) {
|
||||
for (ParamType type : ParamType.values()) {
|
||||
if (type.code.equals(paramType)) {
|
||||
return type;
|
||||
}
|
||||
}
|
||||
return STRING;
|
||||
}
|
||||
|
||||
public static String parse(String paramType){
|
||||
//Integer
|
||||
//Long
|
||||
//number
|
||||
//Date
|
||||
//List
|
||||
//string
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public java.lang.String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public java.lang.String getMsg() {
|
||||
return msg;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 请求方式
|
||||
*/
|
||||
public enum REQ_METHOD implements IDictEnum {
|
||||
|
||||
GET("GET", "get請求"),
|
||||
POST("POST", "post請求");
|
||||
|
||||
private final String code;
|
||||
|
||||
private final String msg;
|
||||
|
||||
REQ_METHOD(String code, String msg) {
|
||||
this.code = code;
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return msg;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* SQL操作符
|
||||
*/
|
||||
public enum WHERE_TYPE implements IDictEnum{
|
||||
|
||||
EQUALS("=", "=", "等于"),
|
||||
NOT_EQUALS("!=", "!=", "不等于"),
|
||||
LIKE("LIKE", "LIKE", "全模糊查询"),
|
||||
LIKE_LEFT("LIKE%", "LIKE", "左模糊查询"),
|
||||
LIKE_RIGHT("%LIKE", "LIKE", "右模糊查询"),
|
||||
GREATER_THAN(">", ">", "大于"),
|
||||
GREATER_THAN_EQUALS(">=", ">=", "大于等于"),
|
||||
LESS_THAN("<", "<", "小于"),
|
||||
LESS_THAN_EQUALS("<=", "<=", "小于等于"),
|
||||
NULL("isNull", "IS NULL", "是否为空"),
|
||||
NOT_NULL("isNotNull", "IS NOT NULL", "是否不为空"),
|
||||
IN("in", "IN", "IN");
|
||||
|
||||
private final String type;
|
||||
|
||||
private final String key;
|
||||
|
||||
private final String desc;
|
||||
|
||||
WHERE_TYPE(String type, String key, String desc) {
|
||||
this.type = type;
|
||||
this.key = key;
|
||||
this.desc = desc;
|
||||
}
|
||||
|
||||
public static WHERE_TYPE getWhereType(String whereType) {
|
||||
for (WHERE_TYPE type : WHERE_TYPE.values()) {
|
||||
if (type.type.equals(whereType)) {
|
||||
return type;
|
||||
}
|
||||
}
|
||||
return EQUALS;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
public String getKey() {
|
||||
return key;
|
||||
}
|
||||
|
||||
public String getDesc() {
|
||||
return desc;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return type;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return desc;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 请求方式
|
||||
*/
|
||||
public enum PARAM_NULL implements IDictEnum {
|
||||
|
||||
NULL("1", "可以为空"),
|
||||
NOT_NULL("0", "不能为空");
|
||||
|
||||
private final String code;
|
||||
|
||||
private final String msg;
|
||||
|
||||
PARAM_NULL(String code, String msg) {
|
||||
this.code = code;
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return msg;
|
||||
}
|
||||
}
|
||||
|
||||
public enum CipherType implements IDictEnum {
|
||||
|
||||
REGEX("1", "正则替换"),
|
||||
ALGORITHM("2", "加密算法");
|
||||
|
||||
private final String key;
|
||||
|
||||
private final String val;
|
||||
|
||||
CipherType(String key, String val) {
|
||||
this.key = key;
|
||||
this.val = val;
|
||||
}
|
||||
|
||||
public String getKey() {
|
||||
return key;
|
||||
}
|
||||
|
||||
public String getVal() {
|
||||
return val;
|
||||
}
|
||||
|
||||
public static CipherType getCipherType(String cipherType) {
|
||||
for (CipherType type : CipherType.values()) {
|
||||
if (type.key.equals(cipherType)) {
|
||||
return type;
|
||||
}
|
||||
}
|
||||
return REGEX;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return key;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return val;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.enums;
|
||||
|
||||
public enum EnableState implements IDictEnum {
|
||||
|
||||
DISABLE("1", "失败"),
|
||||
ENABLE("0", "成功");
|
||||
|
||||
private final String code;
|
||||
private final String msg;
|
||||
EnableState(String code, String msg) {
|
||||
this.code = code;
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return msg;
|
||||
}
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.enums;
|
||||
|
||||
/**
|
||||
* 字段代码通用枚举接口
|
||||
* 便于统一方式处理
|
||||
*
|
||||
* @author zhouliang
|
||||
*/
|
||||
public interface IDictEnum {
|
||||
|
||||
public String getCode();
|
||||
|
||||
public String getMsg();
|
||||
}
|
@ -0,0 +1,101 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.enums;
|
||||
|
||||
public class OrgCrypto {
|
||||
/**
|
||||
* @ClassName : OrgInfoStatus
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-07-13 17:02
|
||||
*/
|
||||
public enum OrgInfoStatusCrypto implements IDictEnum {
|
||||
DOWN("1", "停用"),
|
||||
UP("0", "正常"),
|
||||
DUE("2", "到期");
|
||||
|
||||
private final String key;
|
||||
|
||||
private final String val;
|
||||
|
||||
OrgInfoStatusCrypto(String key, String val) {
|
||||
this.key = key;
|
||||
this.val = val;
|
||||
}
|
||||
|
||||
public String getKey() {
|
||||
return key;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return key;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return val;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @ClassName : OrgStatus
|
||||
* @Description : 机构状态枚举类
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-07 11:31
|
||||
*/
|
||||
public enum OrgStatus implements IDictEnum {
|
||||
|
||||
NORMAL("0", "正常"),
|
||||
STOP("1", "停用"),
|
||||
END("2", "到期");
|
||||
|
||||
private final String code;
|
||||
|
||||
private final String msg;
|
||||
|
||||
OrgStatus(String code, String msg) {
|
||||
this.code = code;
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return msg;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @ClassName : OrgType
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-07 20:51
|
||||
*/
|
||||
public enum OrgType implements IDictEnum {
|
||||
|
||||
D("1", "类型A"),
|
||||
H("2", "类型B");
|
||||
|
||||
private String code;
|
||||
|
||||
private String msg;
|
||||
|
||||
OrgType(String code, String msg) {
|
||||
this.code = code;
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return msg;
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,49 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.enums;
|
||||
|
||||
public enum RegexCrypto implements IDictEnum {
|
||||
|
||||
CHINESE_NAME("1", "中文姓名"),
|
||||
ID_CARD("2", "身份证号"),
|
||||
FIXED_PHONE("3", "固定电话"),
|
||||
MOBILE_PHONE("4", "手机号码"),
|
||||
ADDRESS("5", "地址"),
|
||||
EMAIL("6", "电子邮箱"),
|
||||
BANK_CARD("7", "银行卡号"),
|
||||
CNAPS_CODE("8", "公司开户银行联号");
|
||||
|
||||
private final String key;
|
||||
|
||||
private final String val;
|
||||
|
||||
RegexCrypto(String key, String val) {
|
||||
this.key = key;
|
||||
this.val = val;
|
||||
}
|
||||
|
||||
public String getKey() {
|
||||
return key;
|
||||
}
|
||||
|
||||
public String getVal() {
|
||||
return val;
|
||||
}
|
||||
|
||||
public static RegexCrypto getRegexCrypto(String regexCrypt) {
|
||||
for (RegexCrypto type : RegexCrypto.values()) {
|
||||
if (type.key.equals(regexCrypt)) {
|
||||
return type;
|
||||
}
|
||||
}
|
||||
return CHINESE_NAME;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return key;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return val;
|
||||
}
|
||||
}
|
@ -0,0 +1,60 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.enums;
|
||||
|
||||
public enum WhereType implements IDictEnum {
|
||||
|
||||
EQUALS("1", "=", "等于"),
|
||||
NOT_EQUALS("2", "!=", "不等于"),
|
||||
LIKE("3", "LIKE", "全模糊查询"),
|
||||
LIKE_LEFT("4", "LIKE", "左模糊查询"),
|
||||
LIKE_RIGHT("5", "LIKE", "右模糊查询"),
|
||||
GREATER_THAN("6", ">", "大于"),
|
||||
GREATER_THAN_EQUALS("7", ">=", "大于等于"),
|
||||
LESS_THAN("8", "<", "小于"),
|
||||
LESS_THAN_EQUALS("9", "<=", "小于等于"),
|
||||
NULL("10", "IS NULL", "是否为空"),
|
||||
NOT_NULL("11", "IS NOT NULL", "是否不为空"),
|
||||
IN("12", "IN", "IN");
|
||||
|
||||
private final String type;
|
||||
|
||||
private final String key;
|
||||
|
||||
private final String desc;
|
||||
|
||||
WhereType(String type, String key, String desc) {
|
||||
this.type = type;
|
||||
this.key = key;
|
||||
this.desc = desc;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
public String getKey() {
|
||||
return key;
|
||||
}
|
||||
|
||||
public String getDesc() {
|
||||
return desc;
|
||||
}
|
||||
|
||||
public static WhereType getWhereType(String whereType) {
|
||||
for (WhereType type : WhereType.values()) {
|
||||
if (type.type.equals(whereType)) {
|
||||
return type;
|
||||
}
|
||||
}
|
||||
return EQUALS;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCode() {
|
||||
return key;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMsg() {
|
||||
return desc;
|
||||
}
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.Api;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.ApiDtoBase;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 数据API信息表 实体DTO
|
||||
* </p>
|
||||
*/
|
||||
public class ApiAddRequest extends ApiDtoBase implements Serializable {
|
||||
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.Api;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @ClassName : ApiCopyRequest
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-04 19:05
|
||||
*/
|
||||
public class ApiCopyRequest extends User implements Serializable {
|
||||
|
||||
@NotNull(message = "apiId不能为空")
|
||||
private Long apiId;
|
||||
|
||||
public Long getApiId() {
|
||||
return apiId;
|
||||
}
|
||||
|
||||
public void setApiId(Long apiId) {
|
||||
this.apiId = apiId;
|
||||
}
|
||||
}
|
@ -0,0 +1,38 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.Api;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @ClassName : ApiCopyRequest
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-04 19:05
|
||||
*/
|
||||
public class ApiDelRequest extends User implements Serializable {
|
||||
|
||||
@NotNull(message = "apiId不能为空")
|
||||
private Long apiId;
|
||||
|
||||
@NotBlank(message = "recToken不能为空")
|
||||
private String recToken;
|
||||
|
||||
public Long getApiId() {
|
||||
return apiId;
|
||||
}
|
||||
|
||||
public void setApiId(Long apiId) {
|
||||
this.apiId = apiId;
|
||||
}
|
||||
|
||||
public String getRecToken() {
|
||||
return recToken;
|
||||
}
|
||||
|
||||
public void setRecToken(String recToken) {
|
||||
this.recToken = recToken;
|
||||
}
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.Api;
|
||||
|
||||
|
||||
import com.jiuyv.sptccc.agile.common.core.base.PageSize;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* api调用日志信息表 查询实体
|
||||
* </p>
|
||||
*/
|
||||
public class ApiLogRequest extends PageSize implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private String apiName;
|
||||
|
||||
public String getApiName() {
|
||||
return apiName;
|
||||
}
|
||||
|
||||
public void setApiName(String apiName) {
|
||||
this.apiName = apiName;
|
||||
}
|
||||
}
|
@ -0,0 +1,61 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.Api;
|
||||
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApiCrypto;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum;
|
||||
import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue;
|
||||
import com.jiuyv.sptccc.agile.common.core.base.PageSize;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 数据API信息表 查询实体
|
||||
* </p>
|
||||
*/
|
||||
public class ApiPageRequest extends PageSize implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private String apiName;
|
||||
|
||||
@EnumCheckValue(value = ApiCrypto.ApiState.class,isNullable = true)
|
||||
private String status;
|
||||
|
||||
private String sourceId;
|
||||
|
||||
@EnumCheckValue(value = DataApiEnum.API_TYPE.class,isNullable = true)
|
||||
private String apiType = DataApiEnum.API_TYPE.AGILE.getCode();
|
||||
|
||||
public String getApiName() {
|
||||
return apiName;
|
||||
}
|
||||
|
||||
public void setApiName(String apiName) {
|
||||
this.apiName = apiName;
|
||||
}
|
||||
|
||||
public String getStatus() {
|
||||
return status;
|
||||
}
|
||||
|
||||
public void setStatus(String status) {
|
||||
this.status = status;
|
||||
}
|
||||
|
||||
public String getSourceId() {
|
||||
return sourceId;
|
||||
}
|
||||
|
||||
public void setSourceId(String sourceId) {
|
||||
this.sourceId = sourceId;
|
||||
}
|
||||
|
||||
public String getApiType() {
|
||||
return apiType;
|
||||
}
|
||||
|
||||
public void setApiType(String apiType) {
|
||||
this.apiType = apiType;
|
||||
}
|
||||
}
|
@ -0,0 +1,44 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.Api;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* API更改状态参数DTO
|
||||
*
|
||||
* @author yulei
|
||||
**/
|
||||
public class ApiStatusRequest extends User implements Serializable {
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@NotNull(message = "主键ID不能为空")
|
||||
private Long apiId;
|
||||
|
||||
/**
|
||||
* 验证token
|
||||
*/
|
||||
@NotBlank(message = "recToken不能为空")
|
||||
private String recToken;
|
||||
|
||||
public Long getApiId() {
|
||||
return apiId;
|
||||
}
|
||||
|
||||
public void setApiId(Long apiId) {
|
||||
this.apiId = apiId;
|
||||
}
|
||||
|
||||
public String getRecToken() {
|
||||
return recToken;
|
||||
}
|
||||
|
||||
public void setRecToken(String recToken) {
|
||||
this.recToken = recToken;
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,53 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.Api;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.ApiDtoBase;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 数据API信息表 实体DTO
|
||||
* </p>
|
||||
*/
|
||||
public class ApiUpdateRequest extends ApiDtoBase implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@NotNull(message = "appId不能为空")
|
||||
private Long apiId;
|
||||
/**
|
||||
* 验证token
|
||||
*/
|
||||
@NotBlank(message = "recToken不能为空")
|
||||
private String recToken;
|
||||
|
||||
@NotNull(message = "版本号不能为空")
|
||||
private Long versionNum;
|
||||
|
||||
public Long getApiId() {
|
||||
return apiId;
|
||||
}
|
||||
|
||||
public void setApiId(Long apiId) {
|
||||
this.apiId = apiId;
|
||||
}
|
||||
|
||||
public String getRecToken() {
|
||||
return recToken;
|
||||
}
|
||||
|
||||
public void setRecToken(String recToken) {
|
||||
this.recToken = recToken;
|
||||
}
|
||||
|
||||
public Long getVersionNum() {
|
||||
return versionNum;
|
||||
}
|
||||
|
||||
public void setVersionNum(Long versionNum) {
|
||||
this.versionNum = versionNum;
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.Api;
|
||||
|
||||
|
||||
import com.jiuyv.sptccc.agile.common.core.base.PageSize;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* @ClassName : ApiUserRequest
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-12 11:42
|
||||
*/
|
||||
public class ApiUserRequest extends PageSize {
|
||||
|
||||
@NotNull(message = "会员Id不能为空")
|
||||
private String memberId;
|
||||
|
||||
public String getMemberId() {
|
||||
return memberId;
|
||||
}
|
||||
|
||||
public void setMemberId(String memberId) {
|
||||
this.memberId = memberId;
|
||||
}
|
||||
}
|
@ -0,0 +1,96 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request;
|
||||
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 数据源连接信息Model
|
||||
*/
|
||||
public class DbSchema implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主机
|
||||
*/
|
||||
@NotBlank(message = "主机不能为空")
|
||||
private String host;
|
||||
|
||||
/**
|
||||
* 端口
|
||||
*/
|
||||
@NotNull(message = "端口不能为空")
|
||||
private Integer port;
|
||||
|
||||
/**
|
||||
* 用户名
|
||||
*/
|
||||
@NotBlank(message = "用户名不能为空")
|
||||
private String username;
|
||||
|
||||
/**
|
||||
* 密码
|
||||
*/
|
||||
@NotBlank(message = "密码不能为空")
|
||||
private String password;
|
||||
|
||||
/**
|
||||
* 数据库
|
||||
*/
|
||||
private String dbName;
|
||||
|
||||
/**
|
||||
* 服务名
|
||||
*/
|
||||
private String sid;
|
||||
|
||||
public String getHost() {
|
||||
return host;
|
||||
}
|
||||
|
||||
public void setHost(String host) {
|
||||
this.host = host;
|
||||
}
|
||||
|
||||
public Integer getPort() {
|
||||
return port;
|
||||
}
|
||||
|
||||
public void setPort(Integer port) {
|
||||
this.port = port;
|
||||
}
|
||||
|
||||
public String getUsername() {
|
||||
return username;
|
||||
}
|
||||
|
||||
public void setUsername(String username) {
|
||||
this.username = username;
|
||||
}
|
||||
|
||||
public String getPassword() {
|
||||
return password;
|
||||
}
|
||||
|
||||
public void setPassword(String password) {
|
||||
this.password = password;
|
||||
}
|
||||
|
||||
public String getDbName() {
|
||||
return dbName;
|
||||
}
|
||||
|
||||
public void setDbName(String dbName) {
|
||||
this.dbName = dbName;
|
||||
}
|
||||
|
||||
public String getSid() {
|
||||
return sid;
|
||||
}
|
||||
|
||||
public void setSid(String sid) {
|
||||
this.sid = sid;
|
||||
}
|
||||
}
|
@ -0,0 +1,101 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum;
|
||||
import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue;
|
||||
|
||||
import javax.validation.Valid;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 执行配置信息Model
|
||||
*/
|
||||
public class ExecuteConfig implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
|
||||
/**
|
||||
* 数据源
|
||||
*/
|
||||
@NotNull(message = "数据源不能为空")
|
||||
private Long sourceId;
|
||||
|
||||
/**
|
||||
* 配置方式
|
||||
*/
|
||||
@NotBlank(message = "配置方式不能为空")
|
||||
@EnumCheckValue(value = DataApiEnum.CONFIG_TYPE.class)
|
||||
private String configType;
|
||||
|
||||
/**
|
||||
* 数据库表主键
|
||||
*/
|
||||
private Long tableId;
|
||||
|
||||
/**
|
||||
* 数据库表
|
||||
*/
|
||||
private String tableName;
|
||||
|
||||
/**
|
||||
* 表字段列表
|
||||
*/
|
||||
@Valid
|
||||
private List<FieldParam> fieldParams;
|
||||
|
||||
/**
|
||||
* 解析SQL
|
||||
*/
|
||||
private String sqlText;
|
||||
|
||||
public Long getSourceId() {
|
||||
return sourceId;
|
||||
}
|
||||
|
||||
public void setSourceId(Long sourceId) {
|
||||
this.sourceId = sourceId;
|
||||
}
|
||||
|
||||
public String getConfigType() {
|
||||
return configType;
|
||||
}
|
||||
|
||||
public void setConfigType(String configType) {
|
||||
this.configType = configType;
|
||||
}
|
||||
|
||||
public Long getTableId() {
|
||||
return tableId;
|
||||
}
|
||||
|
||||
public void setTableId(Long tableId) {
|
||||
this.tableId = tableId;
|
||||
}
|
||||
|
||||
public String getTableName() {
|
||||
return tableName;
|
||||
}
|
||||
|
||||
public void setTableName(String tableName) {
|
||||
this.tableName = tableName;
|
||||
}
|
||||
|
||||
public List<FieldParam> getFieldParams() {
|
||||
return fieldParams;
|
||||
}
|
||||
|
||||
public void setFieldParams(List<FieldParam> fieldParams) {
|
||||
this.fieldParams = fieldParams;
|
||||
}
|
||||
|
||||
public String getSqlText() {
|
||||
return sqlText;
|
||||
}
|
||||
|
||||
public void setSqlText(String sqlText) {
|
||||
this.sqlText = sqlText;
|
||||
}
|
||||
}
|
@ -0,0 +1,167 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 字段信息Model
|
||||
*/
|
||||
public class FieldParam implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 列名
|
||||
*/
|
||||
private String columnName;
|
||||
|
||||
/**
|
||||
* 数据类型
|
||||
*/
|
||||
private String dataType;
|
||||
|
||||
/**
|
||||
* 数据长度
|
||||
*/
|
||||
private Integer dataLength;
|
||||
|
||||
/**
|
||||
* 数据精度
|
||||
*/
|
||||
private Integer dataPrecision;
|
||||
|
||||
/**
|
||||
* 数据小数位
|
||||
*/
|
||||
private Integer dataScale;
|
||||
|
||||
/**
|
||||
* 是否主键
|
||||
*/
|
||||
private String columnKey;
|
||||
|
||||
/**
|
||||
* 是否允许为空
|
||||
*/
|
||||
private String columnNullable;
|
||||
|
||||
/**
|
||||
* 列的序号
|
||||
*/
|
||||
private Integer columnPosition;
|
||||
|
||||
/**
|
||||
* 列默认值
|
||||
*/
|
||||
private String dataDefault;
|
||||
|
||||
/**
|
||||
* 列注释
|
||||
*/
|
||||
private String columnComment;
|
||||
|
||||
/**
|
||||
* 作为请求参数
|
||||
*/
|
||||
private String reqable;
|
||||
|
||||
/**
|
||||
* 作为返回参数
|
||||
*/
|
||||
private String resable;
|
||||
|
||||
public String getColumnName() {
|
||||
return columnName;
|
||||
}
|
||||
|
||||
public void setColumnName(String columnName) {
|
||||
this.columnName = columnName;
|
||||
}
|
||||
|
||||
public String getDataType() {
|
||||
return dataType;
|
||||
}
|
||||
|
||||
public void setDataType(String dataType) {
|
||||
this.dataType = dataType;
|
||||
}
|
||||
|
||||
public Integer getDataLength() {
|
||||
return dataLength;
|
||||
}
|
||||
|
||||
public void setDataLength(Integer dataLength) {
|
||||
this.dataLength = dataLength;
|
||||
}
|
||||
|
||||
public Integer getDataPrecision() {
|
||||
return dataPrecision;
|
||||
}
|
||||
|
||||
public void setDataPrecision(Integer dataPrecision) {
|
||||
this.dataPrecision = dataPrecision;
|
||||
}
|
||||
|
||||
public Integer getDataScale() {
|
||||
return dataScale;
|
||||
}
|
||||
|
||||
public void setDataScale(Integer dataScale) {
|
||||
this.dataScale = dataScale;
|
||||
}
|
||||
|
||||
public String getColumnKey() {
|
||||
return columnKey;
|
||||
}
|
||||
|
||||
public void setColumnKey(String columnKey) {
|
||||
this.columnKey = columnKey;
|
||||
}
|
||||
|
||||
public String getColumnNullable() {
|
||||
return columnNullable;
|
||||
}
|
||||
|
||||
public void setColumnNullable(String columnNullable) {
|
||||
this.columnNullable = columnNullable;
|
||||
}
|
||||
|
||||
public Integer getColumnPosition() {
|
||||
return columnPosition;
|
||||
}
|
||||
|
||||
public void setColumnPosition(Integer columnPosition) {
|
||||
this.columnPosition = columnPosition;
|
||||
}
|
||||
|
||||
public String getDataDefault() {
|
||||
return dataDefault;
|
||||
}
|
||||
|
||||
public void setDataDefault(String dataDefault) {
|
||||
this.dataDefault = dataDefault;
|
||||
}
|
||||
|
||||
public String getColumnComment() {
|
||||
return columnComment;
|
||||
}
|
||||
|
||||
public void setColumnComment(String columnComment) {
|
||||
this.columnComment = columnComment;
|
||||
}
|
||||
|
||||
public String getReqable() {
|
||||
return reqable;
|
||||
}
|
||||
|
||||
public void setReqable(String reqable) {
|
||||
this.reqable = reqable;
|
||||
}
|
||||
|
||||
public String getResable() {
|
||||
return resable;
|
||||
}
|
||||
|
||||
public void setResable(String resable) {
|
||||
this.resable = resable;
|
||||
}
|
||||
}
|
@ -0,0 +1,53 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 字段信息Model
|
||||
*/
|
||||
public class FieldRule implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 字段名称
|
||||
*/
|
||||
@NotBlank(message = "字段名称不能为空")
|
||||
private String fieldName;
|
||||
/**
|
||||
* 脱敏类型
|
||||
*/
|
||||
@NotNull(message = "脱敏类型不能为空")
|
||||
private String cipherType;
|
||||
/**
|
||||
* 规则类型
|
||||
*/
|
||||
@NotNull(message = "规则类型不能为空")
|
||||
private String cryptType;
|
||||
|
||||
public String getFieldName() {
|
||||
return fieldName;
|
||||
}
|
||||
|
||||
public void setFieldName(String fieldName) {
|
||||
this.fieldName = fieldName;
|
||||
}
|
||||
|
||||
public String getCipherType() {
|
||||
return cipherType;
|
||||
}
|
||||
|
||||
public void setCipherType(String cipherType) {
|
||||
this.cipherType = cipherType;
|
||||
}
|
||||
|
||||
public String getCryptType() {
|
||||
return cryptType;
|
||||
}
|
||||
|
||||
public void setCryptType(String cryptType) {
|
||||
this.cryptType = cryptType;
|
||||
}
|
||||
}
|
@ -0,0 +1,116 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum;
|
||||
import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 请求参数信息Model
|
||||
*/
|
||||
public class ReqParam implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 参数名称
|
||||
*/
|
||||
@NotBlank(message = "参数名称不能为空")
|
||||
private String paramName;
|
||||
|
||||
/**
|
||||
* 是否为空
|
||||
*/
|
||||
@NotNull(message = "是否为空不能为空")
|
||||
private String nullable;
|
||||
|
||||
/**
|
||||
* 描述
|
||||
*/
|
||||
@NotBlank(message = "描述不能为空")
|
||||
private String paramComment;
|
||||
|
||||
/**
|
||||
* 操作符
|
||||
*/
|
||||
@NotNull(message = "操作符不能为空")
|
||||
@EnumCheckValue(value = DataApiEnum.WHERE_TYPE.class,isNullable = true)
|
||||
private String whereType;
|
||||
|
||||
/**
|
||||
* 参数类型
|
||||
*/
|
||||
@NotNull(message = "参数类型不能为空")
|
||||
@EnumCheckValue(DataApiEnum.ParamType.class)
|
||||
private String paramType;
|
||||
|
||||
/**
|
||||
* 示例值
|
||||
*/
|
||||
@NotBlank(message = "示例值不能为空")
|
||||
private String exampleValue;
|
||||
|
||||
/**
|
||||
* 默认值
|
||||
*/
|
||||
@NotBlank(message = "默认值不能为空")
|
||||
private String defaultValue;
|
||||
|
||||
public String getParamName() {
|
||||
return paramName;
|
||||
}
|
||||
|
||||
public void setParamName(String paramName) {
|
||||
this.paramName = paramName;
|
||||
}
|
||||
|
||||
public String getNullable() {
|
||||
return nullable;
|
||||
}
|
||||
|
||||
public void setNullable(String nullable) {
|
||||
this.nullable = nullable;
|
||||
}
|
||||
|
||||
public String getParamComment() {
|
||||
return paramComment;
|
||||
}
|
||||
|
||||
public void setParamComment(String paramComment) {
|
||||
this.paramComment = paramComment;
|
||||
}
|
||||
|
||||
public String getWhereType() {
|
||||
return whereType;
|
||||
}
|
||||
|
||||
public void setWhereType(String whereType) {
|
||||
this.whereType = whereType;
|
||||
}
|
||||
|
||||
public String getParamType() {
|
||||
return paramType;
|
||||
}
|
||||
|
||||
public void setParamType(String paramType) {
|
||||
this.paramType = paramType;
|
||||
}
|
||||
|
||||
public String getExampleValue() {
|
||||
return exampleValue;
|
||||
}
|
||||
|
||||
public void setExampleValue(String exampleValue) {
|
||||
this.exampleValue = exampleValue;
|
||||
}
|
||||
|
||||
public String getDefaultValue() {
|
||||
return defaultValue;
|
||||
}
|
||||
|
||||
public void setDefaultValue(String defaultValue) {
|
||||
this.defaultValue = defaultValue;
|
||||
}
|
||||
}
|
@ -0,0 +1,38 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* API请求参数
|
||||
*
|
||||
* @author yulei
|
||||
*/
|
||||
public class ReqVo implements Serializable {
|
||||
|
||||
|
||||
/**
|
||||
* 报文内容
|
||||
*/
|
||||
private String body;
|
||||
|
||||
/**
|
||||
* 签名
|
||||
*/
|
||||
private String sign;
|
||||
|
||||
public String getBody() {
|
||||
return body;
|
||||
}
|
||||
|
||||
public void setBody(String body) {
|
||||
this.body = body;
|
||||
}
|
||||
|
||||
public String getSign() {
|
||||
return sign;
|
||||
}
|
||||
|
||||
public void setSign(String sign) {
|
||||
this.sign = sign;
|
||||
}
|
||||
}
|
@ -0,0 +1,40 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.base;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.jiuyv.sptcc.agile.dataservice.web.constant.DateTimeFormatConstant;
|
||||
import com.jiuyv.sptccc.agile.common.core.base.PageSize;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 范围查询
|
||||
*
|
||||
* @ClassName : Range
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-19 16:29
|
||||
*/
|
||||
public class Range extends PageSize {
|
||||
|
||||
@JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD)
|
||||
private Date beginDate;
|
||||
|
||||
@JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD)
|
||||
private Date endDate;
|
||||
|
||||
public Date getBeginDate() {
|
||||
return beginDate;
|
||||
}
|
||||
|
||||
public void setBeginDate(Date beginDate) {
|
||||
this.beginDate = beginDate;
|
||||
}
|
||||
|
||||
public Date getEndDate() {
|
||||
return endDate;
|
||||
}
|
||||
|
||||
public void setEndDate(Date endDate) {
|
||||
this.endDate = endDate;
|
||||
}
|
||||
}
|
@ -0,0 +1,55 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.base;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* @ClassName : User
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-04 18:27
|
||||
*/
|
||||
public class User {
|
||||
|
||||
@NotBlank(message = "用户名不能为空")
|
||||
private String userName;
|
||||
|
||||
@NotNull(message = "用户Id不能为空")
|
||||
private Long userId;
|
||||
|
||||
private String deptId;
|
||||
|
||||
private String nickName;
|
||||
|
||||
public String getUserName() {
|
||||
return userName;
|
||||
}
|
||||
|
||||
public void setUserName(String userName) {
|
||||
this.userName = userName;
|
||||
}
|
||||
|
||||
public Long getUserId() {
|
||||
return userId;
|
||||
}
|
||||
|
||||
public void setUserId(Long userId) {
|
||||
this.userId = userId;
|
||||
}
|
||||
|
||||
public String getDeptId() {
|
||||
return deptId;
|
||||
}
|
||||
|
||||
public void setDeptId(String deptId) {
|
||||
this.deptId = deptId;
|
||||
}
|
||||
|
||||
public String getNickName() {
|
||||
return nickName;
|
||||
}
|
||||
|
||||
public void setNickName(String nickName) {
|
||||
this.nickName = nickName;
|
||||
}
|
||||
}
|
@ -0,0 +1,43 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.console;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 组织接口权限DTO
|
||||
*
|
||||
* @author yulei
|
||||
**/
|
||||
public class OrgApiAuthRequest extends User implements Serializable {
|
||||
|
||||
/**
|
||||
* 机构号
|
||||
*/
|
||||
@NotBlank(message = "机构号不能为空")
|
||||
private String orgNo;
|
||||
|
||||
/**
|
||||
* APIID
|
||||
*/
|
||||
@NotNull(message = "APIDS不能为空")
|
||||
private Long[] apiIds;
|
||||
|
||||
public String getOrgNo() {
|
||||
return orgNo;
|
||||
}
|
||||
|
||||
public void setOrgNo(String orgNo) {
|
||||
this.orgNo = orgNo;
|
||||
}
|
||||
|
||||
public Long[] getApiIds() {
|
||||
return apiIds;
|
||||
}
|
||||
|
||||
public void setApiIds(Long[] apiIds) {
|
||||
this.apiIds = apiIds;
|
||||
}
|
||||
}
|
@ -0,0 +1,228 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.extend;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.ExecuteConfig;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.RateLimit;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.response.ResParam;
|
||||
import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
import javax.validation.Valid;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.Size;
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @ClassName : ApiDtoBase
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-04 18:41
|
||||
*/
|
||||
public class ApiDtoBase extends User implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* API名称
|
||||
*/
|
||||
@NotBlank(message = "API名称不能为空")
|
||||
@Length(max = 100)
|
||||
private String apiName;
|
||||
|
||||
/**
|
||||
* API版本
|
||||
*/
|
||||
@NotBlank(message = "API版本不能为空")
|
||||
@Length(max = 10)
|
||||
private String apiVersion;
|
||||
|
||||
/**
|
||||
* API路径
|
||||
*/
|
||||
@NotBlank(message = "API路径不能为空")
|
||||
@Length(max = 100)
|
||||
private String apiUrl;
|
||||
|
||||
/**
|
||||
* 请求方式
|
||||
*/
|
||||
@EnumCheckValue(value = DataApiEnum.REQ_METHOD.class)
|
||||
private String reqMethod;
|
||||
|
||||
/**
|
||||
* 返回格式
|
||||
*/
|
||||
@NotBlank(message = "返回格式不能为空")
|
||||
@EnumCheckValue(value = DataApiEnum.ResType.class)
|
||||
private String resType;
|
||||
|
||||
/**
|
||||
* IP黑名单多个用英文,隔开
|
||||
*/
|
||||
private String deny;
|
||||
|
||||
/**
|
||||
* 限流配置
|
||||
*/
|
||||
@Valid
|
||||
private RateLimit rateLimit;
|
||||
|
||||
/**
|
||||
* 执行配置
|
||||
*/
|
||||
@Valid
|
||||
private ExecuteConfig executeConfig;
|
||||
|
||||
/**
|
||||
* 请求参数
|
||||
*/
|
||||
@Valid
|
||||
@NotEmpty(message = "请求参数不能为空")
|
||||
@Size(min = 1, message = "请求参数长度不能少于{min}位")
|
||||
private List<ReqParam> reqParams;
|
||||
|
||||
/**
|
||||
* 返回参数
|
||||
*/
|
||||
@Valid
|
||||
@NotEmpty(message = "返回字段不能为空")
|
||||
@Size(min = 1, message = "返回字段长度不能少于{min}位")
|
||||
private List<ResParam> resParams;
|
||||
|
||||
/**
|
||||
* 状态
|
||||
*/
|
||||
@EnumCheckValue(value = DataApiEnum.API_STATUS.class,isNullable = true)
|
||||
private String status = DataApiEnum.API_STATUS.WAIT.getCode();
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@Length(max = 500)
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* apiCode
|
||||
*/
|
||||
@NotBlank(message = "apiCode不能为空")
|
||||
@Length(max = 20)
|
||||
private String apiCode;
|
||||
|
||||
private String apiType = DataApiEnum.API_TYPE.AGILE.getCode();
|
||||
|
||||
public String getApiName() {
|
||||
return apiName;
|
||||
}
|
||||
|
||||
public void setApiName(String apiName) {
|
||||
this.apiName = apiName;
|
||||
}
|
||||
|
||||
public String getApiVersion() {
|
||||
return apiVersion;
|
||||
}
|
||||
|
||||
public void setApiVersion(String apiVersion) {
|
||||
this.apiVersion = apiVersion;
|
||||
}
|
||||
|
||||
public String getApiUrl() {
|
||||
return apiUrl;
|
||||
}
|
||||
|
||||
public void setApiUrl(String apiUrl) {
|
||||
this.apiUrl = apiUrl;
|
||||
}
|
||||
|
||||
public String getReqMethod() {
|
||||
return reqMethod;
|
||||
}
|
||||
|
||||
public void setReqMethod(String reqMethod) {
|
||||
this.reqMethod = reqMethod;
|
||||
}
|
||||
|
||||
public String getResType() {
|
||||
return resType;
|
||||
}
|
||||
|
||||
public void setResType(String resType) {
|
||||
this.resType = resType;
|
||||
}
|
||||
|
||||
public String getDeny() {
|
||||
return deny;
|
||||
}
|
||||
|
||||
public void setDeny(String deny) {
|
||||
this.deny = deny;
|
||||
}
|
||||
|
||||
public RateLimit getRateLimit() {
|
||||
return rateLimit;
|
||||
}
|
||||
|
||||
public void setRateLimit(RateLimit rateLimit) {
|
||||
this.rateLimit = rateLimit;
|
||||
}
|
||||
|
||||
public ExecuteConfig getExecuteConfig() {
|
||||
return executeConfig;
|
||||
}
|
||||
|
||||
public void setExecuteConfig(ExecuteConfig executeConfig) {
|
||||
this.executeConfig = executeConfig;
|
||||
}
|
||||
|
||||
public List<ReqParam> getReqParams() {
|
||||
return reqParams;
|
||||
}
|
||||
|
||||
public void setReqParams(List<ReqParam> reqParams) {
|
||||
this.reqParams = reqParams;
|
||||
}
|
||||
|
||||
public List<ResParam> getResParams() {
|
||||
return resParams;
|
||||
}
|
||||
|
||||
public void setResParams(List<ResParam> resParams) {
|
||||
this.resParams = resParams;
|
||||
}
|
||||
|
||||
public String getStatus() {
|
||||
return status;
|
||||
}
|
||||
|
||||
public void setStatus(String status) {
|
||||
this.status = status;
|
||||
}
|
||||
|
||||
public String getRemark() {
|
||||
return remark;
|
||||
}
|
||||
|
||||
public void setRemark(String remark) {
|
||||
this.remark = remark;
|
||||
}
|
||||
|
||||
public String getApiCode() {
|
||||
return apiCode;
|
||||
}
|
||||
|
||||
public void setApiCode(String apiCode) {
|
||||
this.apiCode = apiCode;
|
||||
}
|
||||
|
||||
public String getApiType() {
|
||||
return apiType;
|
||||
}
|
||||
|
||||
public void setApiType(String apiType) {
|
||||
this.apiType = apiType;
|
||||
}
|
||||
}
|
@ -0,0 +1,109 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.extend;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.enums.ConfigCrypot;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User;
|
||||
import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* 机构配置基础信息
|
||||
*
|
||||
* @ClassName : OrgConfigBase
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-06 16:23
|
||||
*/
|
||||
public class OrgConfigBase extends User {
|
||||
|
||||
/**
|
||||
* 机构号
|
||||
*/
|
||||
@NotBlank(message = "机构号不能为空")
|
||||
@Length(max = 32)
|
||||
private String orgNo;
|
||||
|
||||
/**
|
||||
* data:config:start:time
|
||||
* data:config:end:time
|
||||
* 配置项
|
||||
*/
|
||||
@NotBlank(message = "配置key不能为空")
|
||||
@Length(max = 40)
|
||||
@EnumCheckValue(value = ConfigCrypot.OrgCfnKeyEnum.class)
|
||||
private String configKey;
|
||||
|
||||
/**
|
||||
* 配置说明
|
||||
*/
|
||||
@NotBlank(message = "配置说明不能为空")
|
||||
@Length(max = 100)
|
||||
private String configDesc;
|
||||
|
||||
/**
|
||||
* 配置值
|
||||
*/
|
||||
@NotBlank(message = "配置值不能为空")
|
||||
@Length(max = 40)
|
||||
private String configValue;
|
||||
|
||||
/**
|
||||
* 删除标识
|
||||
*/
|
||||
private String delFlag;
|
||||
|
||||
/**
|
||||
* 状态
|
||||
*/
|
||||
@EnumCheckValue(value = ConfigCrypot.ConfigStatus.class, isNullable = true)
|
||||
private String status;
|
||||
|
||||
public String getOrgNo() {
|
||||
return orgNo;
|
||||
}
|
||||
|
||||
public void setOrgNo(String orgNo) {
|
||||
this.orgNo = orgNo;
|
||||
}
|
||||
|
||||
public String getConfigKey() {
|
||||
return configKey;
|
||||
}
|
||||
|
||||
public void setConfigKey(String configKey) {
|
||||
this.configKey = configKey;
|
||||
}
|
||||
|
||||
public String getConfigDesc() {
|
||||
return configDesc;
|
||||
}
|
||||
|
||||
public void setConfigDesc(String configDesc) {
|
||||
this.configDesc = configDesc;
|
||||
}
|
||||
|
||||
public String getConfigValue() {
|
||||
return configValue;
|
||||
}
|
||||
|
||||
public void setConfigValue(String configValue) {
|
||||
this.configValue = configValue;
|
||||
}
|
||||
|
||||
public String getDelFlag() {
|
||||
return delFlag;
|
||||
}
|
||||
|
||||
public void setDelFlag(String delFlag) {
|
||||
this.delFlag = delFlag;
|
||||
}
|
||||
|
||||
public String getStatus() {
|
||||
return status;
|
||||
}
|
||||
|
||||
public void setStatus(String status) {
|
||||
this.status = status;
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,192 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.extend;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.enums.OrgCrypto;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User;
|
||||
import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 机构信息VO
|
||||
*
|
||||
* @author yulei
|
||||
**/
|
||||
public class OrgInfoBase extends User implements Serializable {
|
||||
|
||||
/**
|
||||
* 会员号
|
||||
*/
|
||||
private String memberId;
|
||||
|
||||
/**
|
||||
* 【机构名称】
|
||||
*/
|
||||
@NotBlank(message = "机构名称不能为空")
|
||||
@Length(max = 100)
|
||||
private String orgName;
|
||||
|
||||
/**
|
||||
* 【机构类型】
|
||||
*/
|
||||
@NotBlank(message = "机构类型不能为空")
|
||||
@EnumCheckValue(DataApiEnum.API_STATUS.class)
|
||||
private String orgType;
|
||||
|
||||
/**
|
||||
* 【机构描述】
|
||||
*/
|
||||
@Length(max = 150)
|
||||
private String orgDesc;
|
||||
|
||||
/**
|
||||
* 【加盐】
|
||||
*/
|
||||
@NotBlank(message = "加盐不能为空")
|
||||
@Length(max = 200)
|
||||
private String salt;
|
||||
|
||||
/**
|
||||
* 【加密】
|
||||
*/
|
||||
@NotBlank(message = "加密不能为空")
|
||||
@Length(max = 1000)
|
||||
private String encrypt;
|
||||
|
||||
/**
|
||||
* 【生效时间】
|
||||
*/
|
||||
@NotNull(message = "生效时间不能为空")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private Date startTime;
|
||||
|
||||
/**
|
||||
* 【到期时间】
|
||||
*/
|
||||
@NotNull(message = "到期时间不能为空")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 【ip白名单】
|
||||
*/
|
||||
@Length(max = 32)
|
||||
private String ip;
|
||||
|
||||
/**
|
||||
* 【联系人电话】
|
||||
*/
|
||||
@NotBlank(message = "联系人电话不能为空")
|
||||
@Length(max = 20)
|
||||
private String contractTel;
|
||||
|
||||
@EnumCheckValue(value = OrgCrypto.OrgStatus.class,isNullable = true)
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@Length(max = 200)
|
||||
private String remark;
|
||||
|
||||
public String getMemberId() {
|
||||
return memberId;
|
||||
}
|
||||
|
||||
public void setMemberId(String memberId) {
|
||||
this.memberId = memberId;
|
||||
}
|
||||
|
||||
public String getOrgName() {
|
||||
return orgName;
|
||||
}
|
||||
|
||||
public void setOrgName(String orgName) {
|
||||
this.orgName = orgName;
|
||||
}
|
||||
|
||||
public String getOrgType() {
|
||||
return orgType;
|
||||
}
|
||||
|
||||
public void setOrgType(String orgType) {
|
||||
this.orgType = orgType;
|
||||
}
|
||||
|
||||
public String getOrgDesc() {
|
||||
return orgDesc;
|
||||
}
|
||||
|
||||
public void setOrgDesc(String orgDesc) {
|
||||
this.orgDesc = orgDesc;
|
||||
}
|
||||
|
||||
public String getSalt() {
|
||||
return salt;
|
||||
}
|
||||
|
||||
public void setSalt(String salt) {
|
||||
this.salt = salt;
|
||||
}
|
||||
|
||||
public String getEncrypt() {
|
||||
return encrypt;
|
||||
}
|
||||
|
||||
public void setEncrypt(String encrypt) {
|
||||
this.encrypt = encrypt;
|
||||
}
|
||||
|
||||
public Date getStartTime() {
|
||||
return startTime;
|
||||
}
|
||||
|
||||
public void setStartTime(Date startTime) {
|
||||
this.startTime = startTime;
|
||||
}
|
||||
|
||||
public Date getEndTime() {
|
||||
return endTime;
|
||||
}
|
||||
|
||||
public void setEndTime(Date endTime) {
|
||||
this.endTime = endTime;
|
||||
}
|
||||
|
||||
public String getIp() {
|
||||
return ip;
|
||||
}
|
||||
|
||||
public void setIp(String ip) {
|
||||
this.ip = ip;
|
||||
}
|
||||
|
||||
public String getContractTel() {
|
||||
return contractTel;
|
||||
}
|
||||
|
||||
public void setContractTel(String contractTel) {
|
||||
this.contractTel = contractTel;
|
||||
}
|
||||
|
||||
public String getRemark() {
|
||||
return remark;
|
||||
}
|
||||
|
||||
public void setRemark(String remark) {
|
||||
this.remark = remark;
|
||||
}
|
||||
|
||||
public String getStatus() {
|
||||
return status;
|
||||
}
|
||||
|
||||
public void setStatus(String status) {
|
||||
this.status = status;
|
||||
}
|
||||
}
|
@ -0,0 +1,78 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.org;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.jiuyv.sptcc.agile.dataservice.web.constant.DateTimeFormatConstant;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @ClassName : AuthReq
|
||||
* @Description : 权限接口请求类
|
||||
* @Author : sky
|
||||
* @Date: 2023-07-13 13:28
|
||||
*/
|
||||
public class OrgAuthReq implements Serializable {
|
||||
|
||||
/**
|
||||
* 秘钥版本号
|
||||
*/
|
||||
private String keyVersion;
|
||||
|
||||
/**
|
||||
* 机构号
|
||||
*/
|
||||
@NotBlank(message = "机构号不能为空")
|
||||
@Length(max = 64)
|
||||
private String orgCode;
|
||||
|
||||
private String subOrgCode;
|
||||
|
||||
@NotBlank(message = "交易码不能为空")
|
||||
private String apiCode;
|
||||
|
||||
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8")
|
||||
private Date requsetTime;
|
||||
|
||||
public String getKeyVersion() {
|
||||
return keyVersion;
|
||||
}
|
||||
|
||||
public void setKeyVersion(String keyVersion) {
|
||||
this.keyVersion = keyVersion;
|
||||
}
|
||||
|
||||
public String getOrgCode() {
|
||||
return orgCode;
|
||||
}
|
||||
|
||||
public void setOrgCode(String orgCode) {
|
||||
this.orgCode = orgCode;
|
||||
}
|
||||
|
||||
public String getSubOrgCode() {
|
||||
return subOrgCode;
|
||||
}
|
||||
|
||||
public void setSubOrgCode(String subOrgCode) {
|
||||
this.subOrgCode = subOrgCode;
|
||||
}
|
||||
|
||||
public Date getRequsetTime() {
|
||||
return requsetTime;
|
||||
}
|
||||
|
||||
public void setRequsetTime(Date requsetTime) {
|
||||
this.requsetTime = requsetTime;
|
||||
}
|
||||
|
||||
public String getApiCode() {
|
||||
return apiCode;
|
||||
}
|
||||
|
||||
public void setApiCode(String apiCode) {
|
||||
this.apiCode = apiCode;
|
||||
}
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.org;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgConfigBase;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 机构信息DTO
|
||||
*
|
||||
* @author yulei
|
||||
**/
|
||||
public class OrgConfigAddRequest extends OrgConfigBase implements Serializable {
|
||||
|
||||
}
|
@ -0,0 +1,58 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.org;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.enums.OrgCrypto;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgConfigBase;
|
||||
import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 机构信息DTO
|
||||
*
|
||||
* @author yulei
|
||||
**/
|
||||
public class OrgConfigEditRequest extends OrgConfigBase implements Serializable {
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@NotNull(message = "配置ID不能为空")
|
||||
private Long configId;
|
||||
|
||||
/**
|
||||
* 随机码
|
||||
*/
|
||||
@NotBlank(message = "随机码不能为空")
|
||||
private String recToken;
|
||||
|
||||
@EnumCheckValue(value = OrgCrypto.OrgStatus.class)
|
||||
private String status = OrgCrypto.OrgStatus.STOP.getCode();
|
||||
|
||||
public Long getConfigId() {
|
||||
return configId;
|
||||
}
|
||||
|
||||
public void setConfigId(Long configId) {
|
||||
this.configId = configId;
|
||||
}
|
||||
|
||||
public String getRecToken() {
|
||||
return recToken;
|
||||
}
|
||||
|
||||
public void setRecToken(String recToken) {
|
||||
this.recToken = recToken;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getStatus() {
|
||||
return status;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setStatus(String status) {
|
||||
this.status = status;
|
||||
}
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.org;
|
||||
|
||||
import com.jiuyv.sptccc.agile.common.core.base.PageSize;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 机构配置信息查询
|
||||
*
|
||||
* @author yulei
|
||||
**/
|
||||
public class OrgConfigQueryRequest extends PageSize implements Serializable {
|
||||
|
||||
/**
|
||||
* 机构号
|
||||
*/
|
||||
private String orgNo;
|
||||
|
||||
public String getOrgNo() {
|
||||
return orgNo;
|
||||
}
|
||||
|
||||
public void setOrgNo(String orgNo) {
|
||||
this.orgNo = orgNo;
|
||||
}
|
||||
}
|
@ -0,0 +1,44 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.org;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* 删除请求
|
||||
*
|
||||
* @ClassName : OrgDelReq
|
||||
* @Description :
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-07 14:05
|
||||
*/
|
||||
public class OrgDelReq extends User {
|
||||
|
||||
/**
|
||||
* 机构号
|
||||
*/
|
||||
@NotBlank(message = "机构号不能为空")
|
||||
private String orgNo;
|
||||
|
||||
/**
|
||||
* 随机码
|
||||
*/
|
||||
@NotBlank(message = "随机码不能为空")
|
||||
private String recToken;
|
||||
|
||||
public String getOrgNo() {
|
||||
return orgNo;
|
||||
}
|
||||
|
||||
public void setOrgNo(String orgNo) {
|
||||
this.orgNo = orgNo;
|
||||
}
|
||||
|
||||
public String getRecToken() {
|
||||
return recToken;
|
||||
}
|
||||
|
||||
public void setRecToken(String recToken) {
|
||||
this.recToken = recToken;
|
||||
}
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.org;
|
||||
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgInfoBase;
|
||||
|
||||
/**
|
||||
* 机构管理信息DTO
|
||||
*
|
||||
* @author shu_k
|
||||
**/
|
||||
public class OrgInfoAddReq extends OrgInfoBase {
|
||||
|
||||
}
|
@ -0,0 +1,42 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.org;
|
||||
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgInfoBase;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* 机构管理信息DTO
|
||||
*
|
||||
* @author shu_k
|
||||
**/
|
||||
public class OrgInfoEditReq extends OrgInfoBase {
|
||||
|
||||
/**
|
||||
* 机构号
|
||||
*/
|
||||
@NotBlank(message = "机构号不能为空")
|
||||
private String orgNo;
|
||||
|
||||
/**
|
||||
* 随机码
|
||||
*/
|
||||
@NotBlank(message = "随机码不能为空")
|
||||
private String recToken;
|
||||
|
||||
public String getOrgNo() {
|
||||
return orgNo;
|
||||
}
|
||||
|
||||
public void setOrgNo(String orgNo) {
|
||||
this.orgNo = orgNo;
|
||||
}
|
||||
|
||||
public String getRecToken() {
|
||||
return recToken;
|
||||
}
|
||||
|
||||
public void setRecToken(String recToken) {
|
||||
this.recToken = recToken;
|
||||
}
|
||||
}
|
@ -0,0 +1,77 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.org;
|
||||
|
||||
|
||||
import com.jiuyv.sptccc.agile.common.core.base.PageSize;
|
||||
|
||||
/**
|
||||
* 机构管理信息查询条件
|
||||
*
|
||||
* @author shu_k
|
||||
**/
|
||||
public class OrgInfoQueryReq extends PageSize {
|
||||
|
||||
/**
|
||||
* 【机构号】
|
||||
*/
|
||||
private String orgNo;
|
||||
|
||||
/**
|
||||
* 【机构名称】
|
||||
*/
|
||||
private String orgName;
|
||||
|
||||
/**
|
||||
* 【机构类型】
|
||||
*/
|
||||
private String orgType;
|
||||
|
||||
/**
|
||||
* 【状态】0正常 1停用 2到期
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 会员号
|
||||
*/
|
||||
private String mermberId;
|
||||
|
||||
public String getOrgNo() {
|
||||
return orgNo;
|
||||
}
|
||||
|
||||
public void setOrgNo(String orgNo) {
|
||||
this.orgNo = orgNo;
|
||||
}
|
||||
|
||||
public String getOrgName() {
|
||||
return orgName;
|
||||
}
|
||||
|
||||
public void setOrgName(String orgName) {
|
||||
this.orgName = orgName;
|
||||
}
|
||||
|
||||
public String getOrgType() {
|
||||
return orgType;
|
||||
}
|
||||
|
||||
public void setOrgType(String orgType) {
|
||||
this.orgType = orgType;
|
||||
}
|
||||
|
||||
public String getStatus() {
|
||||
return status;
|
||||
}
|
||||
|
||||
public void setStatus(String status) {
|
||||
this.status = status;
|
||||
}
|
||||
|
||||
public String getMermberId() {
|
||||
return mermberId;
|
||||
}
|
||||
|
||||
public void setMermberId(String mermberId) {
|
||||
this.mermberId = mermberId;
|
||||
}
|
||||
}
|
@ -0,0 +1,41 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.org;
|
||||
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 机构更改状态DTO
|
||||
*
|
||||
* @author shu_k
|
||||
**/
|
||||
public class OrgInfoStatusReq extends User implements Serializable {
|
||||
|
||||
@NotBlank(message = "orgNo不能为空")
|
||||
private String orgNo;
|
||||
|
||||
/**
|
||||
* 验证token
|
||||
*/
|
||||
@NotBlank(message = "recToken不能为空")
|
||||
private String recToken;
|
||||
|
||||
|
||||
public String getOrgNo() {
|
||||
return orgNo;
|
||||
}
|
||||
|
||||
public void setOrgNo(String orgNo) {
|
||||
this.orgNo = orgNo;
|
||||
}
|
||||
|
||||
public String getRecToken() {
|
||||
return recToken;
|
||||
}
|
||||
|
||||
public void setRecToken(String recToken) {
|
||||
this.recToken = recToken;
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,52 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.org;
|
||||
|
||||
|
||||
import com.jiuyv.sptccc.agile.common.core.base.PageSize;
|
||||
|
||||
/**
|
||||
* 接口调用次数统计查询条件
|
||||
*
|
||||
* @author shu_k
|
||||
**/
|
||||
public class OrgStatisticsQueryReq extends PageSize {
|
||||
|
||||
|
||||
/**
|
||||
* 机构号
|
||||
*/
|
||||
private String orgNo;
|
||||
|
||||
/**
|
||||
* 机构名
|
||||
*/
|
||||
private String orgName;
|
||||
|
||||
/**
|
||||
* 接口名称
|
||||
*/
|
||||
private String apiName;
|
||||
|
||||
public String getOrgNo() {
|
||||
return orgNo;
|
||||
}
|
||||
|
||||
public void setOrgNo(String orgNo) {
|
||||
this.orgNo = orgNo;
|
||||
}
|
||||
|
||||
public String getOrgName() {
|
||||
return orgName;
|
||||
}
|
||||
|
||||
public void setOrgName(String orgName) {
|
||||
this.orgName = orgName;
|
||||
}
|
||||
|
||||
public String getApiName() {
|
||||
return apiName;
|
||||
}
|
||||
|
||||
public void setApiName(String apiName) {
|
||||
this.apiName = apiName;
|
||||
}
|
||||
}
|
@ -0,0 +1,50 @@
|
||||
package com.jiuyv.sptcc.agile.dataservice.dto.request.product;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.jiuyv.sptcc.agile.dataservice.dto.enums.FileTypeEnum;
|
||||
import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue;
|
||||
import com.jiuyv.sptcc.agile.dataservice.web.constant.DateTimeFormatConstant;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @ClassName : downLoadRequest
|
||||
* @Description : 下载文件请求报文
|
||||
* @Author : sky
|
||||
* @Date: 2023-09-13 13:24
|
||||
*/
|
||||
public class DownLoadRequest {
|
||||
|
||||
@JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD)
|
||||
private Date date;
|
||||
|
||||
@EnumCheckValue(value = FileTypeEnum.class)
|
||||
private String fileType;
|
||||
@NotBlank
|
||||
private String orgNo;
|
||||
|
||||
public Date getDate() {
|
||||
return date;
|
||||
}
|
||||
|
||||
public void setDate(Date date) {
|
||||
this.date = date;
|
||||
}
|
||||
|
||||
public String getFileType() {
|
||||
return fileType;
|
||||
}
|
||||
|
||||
public void setFileType(String fileType) {
|
||||
this.fileType = fileType;
|
||||
}
|
||||
|
||||
public String getOrgNo() {
|
||||
return orgNo;
|
||||
}
|
||||
|
||||
public void setOrgNo(String orgNo) {
|
||||
this.orgNo = orgNo;
|
||||
}
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue