Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
Y
yudao-cloud
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
hblj
yudao-cloud
Commits
84744938
提交
84744938
authored
6月 15, 2022
作者:
YunaiV
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
完成 LoginLogApi、DictDataApi 的 feign 支持
上级
2f1234cd
隐藏空白字符变更
内嵌
并排
正在显示
8 个修改的文件
包含
72 行增加
和
71 行删除
+72
-71
PostApi.java
...java/cn/iocoder/yudao/module/system/api/dept/PostApi.java
+2
-1
DictDataApi.java
.../cn/iocoder/yudao/module/system/api/dict/DictDataApi.java
+20
-14
LoginLogApi.java
...n/iocoder/yudao/module/system/api/logger/LoginLogApi.java
+14
-11
LoginLogCreateReqDTO.java
...ao/module/system/api/logger/dto/LoginLogCreateReqDTO.java
+11
-26
DictDataApiImpl.java
...iocoder/yudao/module/system/api/dict/DictDataApiImpl.java
+12
-7
LoginLogApiImpl.java
...coder/yudao/module/system/api/logger/LoginLogApiImpl.java
+10
-7
LoginLogBaseVO.java
...m/controller/admin/logger/vo/loginlog/LoginLogBaseVO.java
+2
-3
LoginLogRespVO.java
...m/controller/admin/logger/vo/loginlog/LoginLogRespVO.java
+1
-2
没有找到文件。
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/dept/PostApi.java
浏览文件 @
84744938
...
...
@@ -6,6 +6,7 @@ import io.swagger.annotations.Api;
import
io.swagger.annotations.ApiImplicitParam
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
java.util.Collection
;
...
...
@@ -17,6 +18,6 @@ public interface PostApi {
@GetMapping
(
PREFIX
+
"/valid"
)
@ApiImplicitParam
(
name
=
"ids"
,
value
=
"部门编号数组"
,
required
=
true
,
allowMultiple
=
true
)
CommonResult
<
Boolean
>
validPosts
(
Collection
<
Long
>
ids
);
CommonResult
<
Boolean
>
validPosts
(
@RequestParam
(
"ids"
)
Collection
<
Long
>
ids
);
}
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/dict/DictDataApi.java
浏览文件 @
84744938
package
cn
.
iocoder
.
yudao
.
module
.
system
.
api
.
dict
;
import
cn.iocoder.yudao.framework.common.pojo.CommonResult
;
import
cn.iocoder.yudao.module.system.enums.ApiConstants
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
java.util.Collection
;
/**
* 字典数据 API 接口
*
* @author 芋道源码
*/
@FeignClient
(
name
=
ApiConstants
.
NAME
)
// TODO 芋艿:fallbackFactory =
@Api
(
tags
=
"RPC 服务 - 字典数据"
)
public
interface
DictDataApi
{
/**
* 校验字典数据们是否有效。如下情况,视为无效:
* 1. 字典数据不存在
* 2. 字典数据被禁用
*
* @param dictType 字典类型
* @param values 字典数据值的数组
*/
void
validDictDatas
(
String
dictType
,
Collection
<
String
>
values
);
String
PREFIX
=
ApiConstants
.
PREFIX
+
"/dict-data"
;
@GetMapping
(
PREFIX
+
"/valid"
)
@ApiOperation
(
"校验字典数据们是否有效"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"dictType"
,
value
=
"字典类型"
,
required
=
true
,
dataTypeClass
=
String
.
class
),
@ApiImplicitParam
(
name
=
"values"
,
value
=
"字典数据值的数组"
,
required
=
true
,
allowMultiple
=
true
)
})
CommonResult
<
Boolean
>
validDictDatas
(
String
dictType
,
Collection
<
String
>
values
);
}
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/logger/LoginLogApi.java
浏览文件 @
84744938
package
cn
.
iocoder
.
yudao
.
module
.
system
.
api
.
logger
;
import
cn.iocoder.yudao.framework.common.pojo.CommonResult
;
import
cn.iocoder.yudao.module.system.api.logger.dto.LoginLogCreateReqDTO
;
import
cn.iocoder.yudao.module.system.enums.ApiConstants
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
javax.validation.Valid
;
/**
* 登录日志的 API 接口
*
* @author 芋道源码
*/
@FeignClient
(
name
=
ApiConstants
.
NAME
)
// TODO 芋艿:fallbackFactory =
@Api
(
tags
=
"RPC 服务 - 登录日志"
)
public
interface
LoginLogApi
{
/**
* 创建登录日志
*
* @param reqDTO 日志信息
*/
void
createLoginLog
(
@Valid
LoginLogCreateReqDTO
reqDTO
);
String
PREFIX
=
ApiConstants
.
PREFIX
+
"/login-log"
;
@PostMapping
(
PREFIX
+
"/create"
)
@ApiOperation
(
"创建登录日志"
)
CommonResult
<
Boolean
>
createLoginLog
(
@Valid
@RequestBody
LoginLogCreateReqDTO
reqDTO
);
}
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/logger/dto/LoginLogCreateReqDTO.java
浏览文件 @
84744938
package
cn
.
iocoder
.
yudao
.
module
.
system
.
api
.
logger
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
...
...
@@ -15,48 +16,32 @@ import javax.validation.constraints.Size;
@Data
public
class
LoginLogCreateReqDTO
{
/**
* 日志类型
*/
@ApiModelProperty
(
value
=
"日志类型"
,
required
=
true
,
example
=
"1"
,
notes
=
"参见 LoginLogTypeEnum 枚举类"
)
@NotNull
(
message
=
"日志类型不能为空"
)
private
Integer
logType
;
/**
* 链路追踪编号
*/
@ApiModelProperty
(
value
=
"链路追踪编号"
,
required
=
true
,
example
=
"89aca178-a370-411c-ae02-3f0d672be4ab"
)
private
String
traceId
;
/**
* 用户编号
*/
@ApiModelProperty
(
value
=
"用户编号"
,
example
=
"666"
)
private
Long
userId
;
/**
* 用户类型
*/
@ApiModelProperty
(
value
=
"用户类型"
,
required
=
true
,
example
=
"2"
,
notes
=
"参见 UserTypeEnum 枚举"
)
@NotNull
(
message
=
"用户类型不能为空"
)
private
Integer
userType
;
/**
* 用户账号
*/
@ApiModelProperty
(
value
=
"用户账号"
,
required
=
true
,
example
=
"yudao"
)
@NotBlank
(
message
=
"用户账号不能为空"
)
@Size
(
max
=
30
,
message
=
"用户账号长度不能超过30个字符"
)
private
String
username
;
/**
* 登录结果
*/
@ApiModelProperty
(
value
=
"登录结果"
,
required
=
true
,
example
=
"1"
,
notes
=
"参见 LoginResultEnum 枚举类"
)
@NotNull
(
message
=
"登录结果不能为空"
)
private
Integer
result
;
/**
* 用户 IP
*/
@ApiModelProperty
(
value
=
"用户 IP"
,
required
=
true
,
example
=
"127.0.0.1"
)
@NotEmpty
(
message
=
"用户 IP 不能为空"
)
private
String
userIp
;
/**
* 浏览器 UserAgent
*
* 允许空,原因:Job 过期登出时,是无法传递 UserAgent 的
*/
@ApiModelProperty
(
value
=
"浏览器 UserAgent"
,
required
=
true
,
example
=
"Mozilla/5.0"
)
private
String
userAgent
;
}
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/api/dict/DictDataApiImpl.java
浏览文件 @
84744938
package
cn
.
iocoder
.
yudao
.
module
.
system
.
api
.
dict
;
import
cn.iocoder.yudao.framework.common.pojo.CommonResult
;
import
cn.iocoder.yudao.module.system.service.dict.DictDataService
;
import
org.apache.dubbo.config.annotation.DubboService
;
import
org.springframework.stereotype.Service
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.annotation.Resource
;
import
java.util.Collection
;
/**
* 字典数据 API 实现类
*
* @author 芋道源码
*/
@
Service
import
static
cn
.
iocoder
.
yudao
.
framework
.
common
.
pojo
.
CommonResult
.
success
;
import
static
cn
.
iocoder
.
yudao
.
module
.
system
.
enums
.
ApiConstants
.
VERSION
;
@RestController
// 提供 RESTful API 接口,给 Feign 调用
@DubboService
(
version
=
VERSION
)
// 提供 Dubbo RPC 接口,给 Dubbo Consumer 调用
@
Validated
public
class
DictDataApiImpl
implements
DictDataApi
{
@Resource
private
DictDataService
dictDataService
;
@Override
public
void
validDictDatas
(
String
dictType
,
Collection
<
String
>
values
)
{
public
CommonResult
<
Boolean
>
validDictDatas
(
String
dictType
,
Collection
<
String
>
values
)
{
dictDataService
.
validDictDatas
(
dictType
,
values
);
return
success
(
true
);
}
}
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/api/logger/LoginLogApiImpl.java
浏览文件 @
84744938
package
cn
.
iocoder
.
yudao
.
module
.
system
.
api
.
logger
;
import
cn.iocoder.yudao.framework.common.pojo.CommonResult
;
import
cn.iocoder.yudao.module.system.api.logger.dto.LoginLogCreateReqDTO
;
import
cn.iocoder.yudao.module.system.service.logger.LoginLogService
;
import
org.apache.dubbo.config.annotation.DubboService
;
import
org.springframework.stereotype.Service
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.annotation.Resource
;
/**
* 登录日志的 API 实现类
*
* @author 芋道源码
*/
@Service
import
static
cn
.
iocoder
.
yudao
.
framework
.
common
.
pojo
.
CommonResult
.
success
;
import
static
cn
.
iocoder
.
yudao
.
module
.
system
.
enums
.
ApiConstants
.
VERSION
;
@RestController
// 提供 RESTful API 接口,给 Feign 调用
@DubboService
(
version
=
VERSION
)
// 提供 Dubbo RPC 接口,给 Dubbo Consumer 调用
@Validated
public
class
LoginLogApiImpl
implements
LoginLogApi
{
...
...
@@ -20,8 +22,9 @@ public class LoginLogApiImpl implements LoginLogApi {
private
LoginLogService
loginLogService
;
@Override
public
void
createLoginLog
(
LoginLogCreateReqDTO
reqDTO
)
{
public
CommonResult
<
Boolean
>
createLoginLog
(
LoginLogCreateReqDTO
reqDTO
)
{
loginLogService
.
createLoginLog
(
reqDTO
);
return
success
(
true
);
}
}
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/logger/vo/loginlog/LoginLogBaseVO.java
浏览文件 @
84744938
...
...
@@ -19,7 +19,7 @@ public class LoginLogBaseVO {
@NotNull
(
message
=
"日志类型不能为空"
)
private
Integer
logType
;
@ApiModelProperty
(
value
=
"链路追踪编号"
,
required
=
true
,
example
=
"89aca178-a370-411c-ae02-3f0d672be4ab"
)
@ApiModelProperty
(
value
=
"链路追踪编号"
,
example
=
"89aca178-a370-411c-ae02-3f0d672be4ab"
)
@NotEmpty
(
message
=
"链路追踪编号不能为空"
)
private
String
traceId
;
...
...
@@ -36,8 +36,7 @@ public class LoginLogBaseVO {
@NotEmpty
(
message
=
"用户 IP 不能为空"
)
private
String
userIp
;
@ApiModelProperty
(
value
=
"浏览器 UserAgent"
,
required
=
true
,
example
=
"Mozilla/5.0"
)
@NotEmpty
(
message
=
"浏览器 UserAgent 不能为空"
)
@ApiModelProperty
(
value
=
"浏览器 UserAgent"
,
example
=
"Mozilla/5.0"
)
private
String
userAgent
;
}
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/logger/vo/loginlog/LoginLogRespVO.java
浏览文件 @
84744938
...
...
@@ -18,8 +18,7 @@ public class LoginLogRespVO extends LoginLogBaseVO {
@ApiModelProperty
(
value
=
"日志编号"
,
required
=
true
,
example
=
"1024"
)
private
Long
id
;
@ApiModelProperty
(
value
=
"用户编号"
,
required
=
true
,
example
=
"666"
)
@NotNull
(
message
=
"用户编号不能为空"
)
@ApiModelProperty
(
value
=
"用户编号"
,
example
=
"666"
)
private
Long
userId
;
@ApiModelProperty
(
value
=
"用户类型"
,
required
=
true
,
example
=
"2"
,
notes
=
"参见 UserTypeEnum 枚举"
)
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论