Commit 5eeb1819 by yuwei

项目初始化

parent d7a480a1
......@@ -45,15 +45,18 @@ public class DataApiDto implements Serializable {
@ApiModelProperty(value = "返回格式")
@NotBlank(message = "返回格式不能为空", groups = {ValidationGroups.Insert.class, ValidationGroups.Update.class})
private String resType;
@ApiModelProperty(value = "IP黑名单多个用隔开")
@ApiModelProperty(value = "IP黑名单多个用英文,隔开")
private String deny;
@ApiModelProperty(value = "是否限流:0:否,1:是")
@NotNull(message = "是否限流不能为空", groups = {ValidationGroups.Insert.class, ValidationGroups.Update.class})
private String rateLimit;
@ApiModelProperty(value = "请求次数默认5次")
private Integer times = 5;
@ApiModelProperty(value = "请求时间范围默认60秒")
private Integer seconds = 60;
@ApiModelProperty(value = "限流配置")
@Valid
private RateLimit rateLimit;
// @ApiModelProperty(value = "是否限流:0:否,1:是")
// @NotNull(message = "是否限流不能为空", groups = {ValidationGroups.Insert.class, ValidationGroups.Update.class})
// private String rateLimit;
// @ApiModelProperty(value = "请求次数默认5次")
// private Integer times = 5;
// @ApiModelProperty(value = "请求时间范围默认60秒")
// private Integer seconds = 60;
@ApiModelProperty(value = "执行配置")
@Valid
private ExecuteConfig executeConfig;
......
package cn.datax.service.data.market.api.dto;
import cn.datax.common.validate.ValidationGroups;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
@ApiModel(value = "限流信息Model")
@Data
public class RateLimit implements Serializable {
private static final long serialVersionUID=1L;
@ApiModelProperty(value = "是否限流:0:否,1:是")
@NotNull(message = "是否限流不能为空", groups = {ValidationGroups.Insert.class, ValidationGroups.Update.class})
private String enable;
@ApiModelProperty(value = "请求次数默认5次")
private Integer times = 5;
@ApiModelProperty(value = "请求时间范围默认60秒")
private Integer seconds = 60;
}
......@@ -2,6 +2,7 @@ package cn.datax.service.data.market.api.entity;
import cn.datax.common.base.DataScopeBaseEntity;
import cn.datax.service.data.market.api.dto.ExecuteConfig;
import cn.datax.service.data.market.api.dto.RateLimit;
import cn.datax.service.data.market.api.dto.ReqParam;
import cn.datax.service.data.market.api.dto.ResParam;
import com.baomidou.mybatisplus.annotation.TableField;
......@@ -59,20 +60,26 @@ public class DataApiEntity extends DataScopeBaseEntity {
*/
private String deny;
/**
* 是否限流:0:否,1:是
*/
private String rateLimit;
/**
* 请求次数
*/
private Integer times;
// /**
// * 是否限流:0:否,1:是
// */
// private String rateLimit;
//
// /**
// * 请求次数
// */
// private Integer times;
//
// /**
// * 请求时间范围单位秒
// */
// private Integer seconds;
/**
* 请求时间范围单位秒
* 限流配置
*/
private Integer seconds;
@TableField(value = "limit_json", typeHandler = JacksonTypeHandler.class)
private RateLimit rateLimit;
/**
* 执行配置
......
package cn.datax.service.data.market.api.vo;
import cn.datax.service.data.market.api.dto.ExecuteConfig;
import cn.datax.service.data.market.api.dto.RateLimit;
import cn.datax.service.data.market.api.dto.ReqParam;
import cn.datax.service.data.market.api.dto.ResParam;
import com.fasterxml.jackson.annotation.JsonFormat;
......@@ -34,9 +35,10 @@ public class DataApiVo implements Serializable {
private String reqMethod;
private String deny;
private String resType;
private String rateLimit;
private Integer times;
private Integer seconds;
// private String rateLimit;
// private Integer times;
// private Integer seconds;
private RateLimit rateLimit;
private ExecuteConfig executeConfig;
private List<ReqParam> reqParams;
private List<ResParam> resParams;
......
......@@ -18,9 +18,10 @@
<result column="req_method" property="reqMethod" />
<result column="res_type" property="resType" />
<result column="deny" property="deny" />
<result column="rate_limit" property="rateLimit" />
<result column="times" property="times" />
<result column="seconds" property="seconds" />
<!-- <result column="rate_limit" property="rateLimit" />-->
<!-- <result column="times" property="times" />-->
<!-- <result column="seconds" property="seconds" />-->
<result column="limit_json" property="rateLimit" typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler"/>
<result column="config_json" property="executeConfig" typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler"/>
<result column="req_json" property="reqParams" typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler"/>
<result column="res_json" property="resParams" typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler"/>
......@@ -35,7 +36,7 @@
create_dept,
update_by,
update_time,
api_name, api_version, api_url, remark, req_method, res_type, deny, rate_limit, times, seconds, config_json, req_json, res_json
api_name, api_version, api_url, remark, req_method, res_type, deny, limit_json, config_json, req_json, res_json
</sql>
</mapper>
......@@ -48,7 +48,7 @@
<el-input v-model="form1.deny" type="textarea" placeholder="请输入IP黑名单多个用,隔开" />
</el-form-item>
<el-form-item label="是否限流" prop="rateLimit">
<el-radio-group v-model="form1.rateLimit">
<el-radio-group v-model="form1.rateLimit.enable">
<el-radio
v-for="dict in whetherOptions"
:key="dict.id"
......@@ -56,11 +56,11 @@
>{{ dict.itemValue }}</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item v-if="form1.rateLimit === '1'" label="请求次数" prop="times">
<el-input-number v-model="form1.times" controls-position="right" :min="1" />
<el-form-item v-if="form1.rateLimit.enable === '1'" label="请求次数" prop="times">
<el-input-number v-model="form1.rateLimit.times" controls-position="right" :min="1" />
</el-form-item>
<el-form-item v-if="form1.rateLimit === '1'" label="请求时间范围" prop="seconds">
<el-input-number v-model="form1.seconds" controls-position="right" :min="1" />
<el-form-item v-if="form1.rateLimit.enable === '1'" label="请求时间范围" prop="seconds">
<el-input-number v-model="form1.rateLimit.seconds" controls-position="right" :min="1" />
</el-form-item>
<el-form-item label="状态" prop="status">
<el-radio-group v-model="form1.status" disabled>
......@@ -311,9 +311,11 @@ export default {
reqMethod: undefined,
resType: undefined,
deny: undefined,
rateLimit: '1',
times: 5,
seconds: 60,
rateLimit: {
enable: '1',
times: 5,
seconds: 60
},
status: '1',
remark: undefined,
executeConfig: {},
......
......@@ -49,19 +49,19 @@
<el-input v-model="form1.deny" type="textarea" placeholder="请输入IP黑名单多个用,隔开" />
</el-form-item>
<el-form-item label="是否限流" prop="rateLimit">
<el-radio-group v-model="form1.rateLimit">
<el-radio-group v-model="form1.rateLimit.enable">
<el-radio
v-for="dict in whetherOptions"
:key="dict.id"
:label="dict.itemText"
>{{dict.itemValue}}</el-radio>
>{{ dict.itemValue }}</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="请求次数" prop="times" v-if="form1.rateLimit === '1'">
<el-input-number v-model="form1.times" controls-position="right" :min="1" />
<el-form-item v-if="form1.rateLimit.enable === '1'" label="请求次数" prop="times">
<el-input-number v-model="form1.rateLimit.times" controls-position="right" :min="1" />
</el-form-item>
<el-form-item label="请求时间范围" prop="seconds" v-if="form1.rateLimit === '1'">
<el-input-number v-model="form1.seconds" controls-position="right" :min="1"/>
<el-form-item v-if="form1.rateLimit.enable === '1'" label="请求时间范围" prop="seconds">
<el-input-number v-model="form1.rateLimit.seconds" controls-position="right" :min="1" />
</el-form-item>
<el-form-item label="状态" prop="status">
<el-radio-group v-model="form1.status">
......@@ -283,7 +283,11 @@ export default {
reqMethod: undefined,
resType: undefined,
deny: undefined,
rateLimit: '1',
rateLimit: {
enable: '1',
times: 5,
seconds: 60
},
times: 5,
seconds: 60,
status: '1',
......
......@@ -48,19 +48,19 @@
<el-input v-model="form1.deny" type="textarea" placeholder="请输入IP黑名单多个用,隔开" />
</el-form-item>
<el-form-item label="是否限流" prop="rateLimit">
<el-radio-group v-model="form1.rateLimit">
<el-radio-group v-model="form1.rateLimit.enable">
<el-radio
v-for="dict in whetherOptions"
:key="dict.id"
:label="dict.itemText"
>{{dict.itemValue}}</el-radio>
>{{ dict.itemValue }}</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="请求次数" prop="times" v-if="form1.rateLimit === '1'">
<el-input-number v-model="form1.times" controls-position="right" :min="1" />
<el-form-item v-if="form1.rateLimit.enable === '1'" label="请求次数" prop="times">
<el-input-number v-model="form1.rateLimit.times" controls-position="right" :min="1" />
</el-form-item>
<el-form-item label="请求时间范围" prop="seconds" v-if="form1.rateLimit === '1'">
<el-input-number v-model="form1.seconds" controls-position="right" :min="1"/>
<el-form-item v-if="form1.rateLimit.enable === '1'" label="请求时间范围" prop="seconds">
<el-input-number v-model="form1.rateLimit.seconds" controls-position="right" :min="1" />
</el-form-item>
<el-form-item label="状态" prop="status">
<el-radio-group v-model="form1.status" disabled>
......@@ -300,7 +300,11 @@ export default {
reqMethod: undefined,
resType: undefined,
deny: undefined,
rateLimit: '1',
rateLimit: {
enable: '1',
times: 5,
seconds: 60
},
times: 5,
seconds: 60,
status: '1',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment