多模块重构 4:system 模块的调整,解决单元测试报错的问题

This commit is contained in:
YunaiV 2022-01-31 00:33:55 +08:00
parent 16c2590483
commit fd53bf3296
178 changed files with 1467 additions and 1545 deletions

View File

@ -75,7 +75,7 @@ yudao:
error-code: # 错误码相关配置项
constants-class-list:
- cn.iocoder.yudao.adminserver.modules.infra.enums.InfErrorCodeConstants
- cn.iocoder.yudao.module.system.enums.SysErrorCodeConstants
- cn.iocoder.yudao.module.system.enums.ErrorCodeConstants
- cn.iocoder.yudao.adminserver.modules.bpm.enums.BpmErrorCodeConstants
tenant: # 多租户相关配置项
tables: # 配置需要开启多租户的表;如果实体已经继承 TenantBaseDO 类,则无需重复配置

View File

@ -6,26 +6,6 @@ DELETE FROM "inf_job_log";
DELETE FROM "inf_api_access_log";
DELETE FROM "inf_api_error_log";
-- sys 开头的 DB
DELETE FROM "sys_dept";
DELETE FROM "sys_dict_data";
DELETE FROM "sys_role";
DELETE FROM "sys_role_menu";
DELETE FROM "sys_menu";
DELETE FROM "sys_user_role";
DELETE FROM "sys_dict_type";
DELETE FROM "sys_user_session";
DELETE FROM "sys_post";
DELETE FROM "sys_login_log";
DELETE FROM "sys_operate_log";
DELETE FROM "sys_user";
DELETE FROM "sys_sms_channel";
DELETE FROM "sys_sms_template";
DELETE FROM "sys_sms_log";
DELETE FROM "sys_error_code";
DELETE FROM "sys_social_user";
DELETE FROM "sys_tenant";
-- pay 开头的 DB
DELETE FROM pay_merchant;
DELETE FROM pay_app;

View File

@ -67,413 +67,6 @@ CREATE TABLE IF NOT EXISTS "inf_job_log" (
PRIMARY KEY ("id")
)COMMENT='定时任务日志表';
-- sys 开头的 DB
CREATE TABLE IF NOT EXISTS "sys_dept" (
"id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
"name" varchar(30) NOT NULL DEFAULT '',
"parent_id" bigint NOT NULL DEFAULT '0',
"sort" int NOT NULL DEFAULT '0',
"leader_user_id" bigint DEFAULT NULL,
"phone" varchar(11) DEFAULT NULL,
"email" varchar(50) DEFAULT NULL,
"status" tinyint NOT NULL,
"creator" varchar(64) DEFAULT '',
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updater" varchar(64) DEFAULT '',
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"deleted" bit NOT NULL DEFAULT FALSE,
"tenant_id" bigint not null default '0',
PRIMARY KEY ("id")
) COMMENT '部门表';
CREATE TABLE IF NOT EXISTS "sys_dict_data" (
"id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
"sort" int NOT NULL DEFAULT '0',
"label" varchar(100) NOT NULL DEFAULT '',
"value" varchar(100) NOT NULL DEFAULT '',
"dict_type" varchar(100) NOT NULL DEFAULT '',
"status" tinyint NOT NULL DEFAULT '0',
"remark" varchar(500) DEFAULT NULL,
"creator" varchar(64) DEFAULT '',
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updater" varchar(64) DEFAULT '',
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"deleted" bit NOT NULL DEFAULT FALSE,
PRIMARY KEY ("id")
) COMMENT '字典数据表';
CREATE TABLE IF NOT EXISTS "sys_role" (
"id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
"name" varchar(30) NOT NULL,
"code" varchar(100) NOT NULL,
"sort" int NOT NULL,
"data_scope" tinyint NOT NULL DEFAULT '1',
"data_scope_dept_ids" varchar(500) NOT NULL DEFAULT '',
"status" tinyint NOT NULL,
"type" tinyint NOT NULL,
"remark" varchar(500) DEFAULT NULL,
"creator" varchar(64) DEFAULT '',
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updater" varchar(64) DEFAULT '',
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"deleted" bit NOT NULL DEFAULT FALSE,
PRIMARY KEY ("id")
) COMMENT '角色信息表';
CREATE TABLE IF NOT EXISTS "sys_role_menu" (
"id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
"role_id" bigint NOT NULL,
"menu_id" bigint NOT NULL,
"creator" varchar(64) DEFAULT '',
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updater" varchar(64) DEFAULT '',
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"deleted" bit NOT NULL DEFAULT FALSE,
PRIMARY KEY ("id")
) COMMENT '角色和菜单关联表';
CREATE TABLE IF NOT EXISTS "sys_menu" (
"id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
"name" varchar(50) NOT NULL,
"permission" varchar(100) NOT NULL DEFAULT '',
"menu_type" tinyint NOT NULL,
"sort" int NOT NULL DEFAULT '0',
"parent_id" bigint NOT NULL DEFAULT '0',
"path" varchar(200) DEFAULT '',
"icon" varchar(100) DEFAULT '#',
"component" varchar(255) DEFAULT NULL,
"status" tinyint NOT NULL DEFAULT '0',
"creator" varchar(64) DEFAULT '',
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updater" varchar(64) DEFAULT '',
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"deleted" bit NOT NULL DEFAULT FALSE,
PRIMARY KEY ("id")
) COMMENT '菜单权限表';
CREATE TABLE IF NOT EXISTS "sys_user_role" (
"id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
"user_id" bigint NOT NULL,
"role_id" bigint NOT NULL,
"creator" varchar(64) DEFAULT '',
"create_time" timestamp DEFAULT NULL,
"updater" varchar(64) DEFAULT '',
"update_time" timestamp DEFAULT NULL,
"deleted" bit DEFAULT FALSE,
PRIMARY KEY ("id")
) COMMENT '用户和角色关联表';
CREATE TABLE IF NOT EXISTS "sys_dict_type" (
"id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
"name" varchar(100) NOT NULL DEFAULT '',
"type" varchar(100) NOT NULL DEFAULT '',
"status" tinyint NOT NULL DEFAULT '0',
"remark" varchar(500) DEFAULT NULL,
"creator" varchar(64) DEFAULT '',
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updater" varchar(64) DEFAULT '',
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"deleted" bit NOT NULL DEFAULT FALSE,
PRIMARY KEY ("id")
) COMMENT '字典类型表';
CREATE TABLE IF NOT EXISTS `sys_user_session` (
`id` varchar(32) NOT NULL,
`user_id` bigint DEFAULT NULL,
"user_type" tinyint NOT NULL,
`username` varchar(50) NOT NULL DEFAULT '',
`user_ip` varchar(50) DEFAULT NULL,
`user_agent` varchar(512) DEFAULT NULL,
`session_timeout` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"creator" varchar(64) DEFAULT '',
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updater` varchar(64) DEFAULT '' ,
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"deleted" bit NOT NULL DEFAULT FALSE,
"tenant_id" bigint not null default '0',
PRIMARY KEY (`id`)
) COMMENT '用户在线 Session';
CREATE TABLE IF NOT EXISTS "sys_post" (
"id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
"code" varchar(64) NOT NULL,
"name" varchar(50) NOT NULL,
"sort" integer NOT NULL,
"status" tinyint NOT NULL,
"remark" varchar(500) DEFAULT NULL,
"creator" varchar(64) DEFAULT '',
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updater" varchar(64) DEFAULT '',
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"deleted" bit NOT NULL DEFAULT FALSE,
"tenant_id" bigint not null default '0',
PRIMARY KEY ("id")
) COMMENT '岗位信息表';
CREATE TABLE IF NOT EXISTS "sys_notice" (
"id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
"title" varchar(50) NOT NULL COMMENT '公告标题',
"content" text NOT NULL COMMENT '公告内容',
"notice_type" tinyint NOT NULL COMMENT '公告类型1通知 2公告',
"status" tinyint NOT NULL DEFAULT '0' COMMENT '公告状态0正常 1关闭',
"creator" varchar(64) DEFAULT '' COMMENT '创建者',
"create_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
"updater" varchar(64) DEFAULT '' COMMENT '更新者',
"update_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
"deleted" bit NOT NULL DEFAULT 0 COMMENT '是否删除',
"tenant_id" bigint not null default '0',
PRIMARY KEY("id")
) COMMENT '通知公告表';
CREATE TABLE IF NOT EXISTS `sys_login_log` (
`id` bigint(20) NOT NULL GENERATED BY DEFAULT AS IDENTITY,
`log_type` bigint(4) NOT NULL,
"user_id" bigint not null default '0',
"user_type" tinyint NOT NULL,
`trace_id` varchar(64) NOT NULL DEFAULT '',
`username` varchar(50) NOT NULL DEFAULT '',
`result` tinyint(4) NOT NULL,
`user_ip` varchar(50) NOT NULL,
`user_agent` varchar(512) NOT NULL,
`creator` varchar(64) DEFAULT '',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updater` varchar(64) DEFAULT '',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`deleted` bit(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) COMMENT ='系统访问记录';
CREATE TABLE IF NOT EXISTS `sys_operate_log` (
`id` bigint(20) NOT NULL GENERATED BY DEFAULT AS IDENTITY,
`trace_id` varchar(64) NOT NULL DEFAULT '',
`user_id` bigint(20) NOT NULL,
`module` varchar(50) NOT NULL,
`name` varchar(50) NOT NULL,
`operate_type` bigint(4) NOT NULL DEFAULT '0',
`content` varchar(2000) NOT NULL DEFAULT '',
`exts` varchar(512) NOT NULL DEFAULT '',
`request_method` varchar(16) DEFAULT '',
`request_url` varchar(255) DEFAULT '',
`user_ip` varchar(50) DEFAULT NULL,
`user_agent` varchar(200) DEFAULT NULL,
`java_method` varchar(512) NOT NULL DEFAULT '',
`java_method_args` varchar(8000) DEFAULT '',
`start_time` datetime NOT NULL,
`duration` int(11) NOT NULL,
`result_code` int(11) NOT NULL DEFAULT '0',
`result_msg` varchar(512) DEFAULT '',
`result_data` varchar(4000) DEFAULT '',
`creator` varchar(64) DEFAULT '',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updater` varchar(64) DEFAULT '',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`deleted` bit(1) NOT NULL DEFAULT '0',
"tenant_id" bigint not null default '0',
PRIMARY KEY (`id`)
) COMMENT ='操作日志记录';
CREATE TABLE IF NOT EXISTS "sys_user" (
"id" bigint not null GENERATED BY DEFAULT AS IDENTITY,
"username" varchar(30) not null,
"password" varchar(100) not null default '',
"nickname" varchar(30) not null,
"remark" varchar(500) default null,
"dept_id" bigint default null,
"post_ids" varchar(255) default null,
"email" varchar(50) default '',
"mobile" varchar(11) default '',
"sex" tinyint default '0',
"avatar" varchar(100) default '',
"status" tinyint not null default '0',
"login_ip" varchar(50) default '',
"login_date" timestamp default null,
"creator" varchar(64) default '',
"create_time" timestamp not null default current_timestamp,
"updater" varchar(64) default '',
"update_time" timestamp not null default current_timestamp,
"deleted" bit not null default false,
"tenant_id" bigint not null default '0',
primary key ("id")
) comment '用户信息表';
CREATE TABLE IF NOT EXISTS "inf_api_access_log" (
"id" bigint not null GENERATED BY DEFAULT AS IDENTITY,
"trace_id" varchar(64) not null default '',
"user_id" bigint not null default '0',
"user_type" tinyint not null default '0',
"application_name" varchar(50) not null,
"request_method" varchar(16) not null default '',
"request_url" varchar(255) not null default '',
"request_params" varchar(8000) not null default '',
"user_ip" varchar(50) not null,
"user_agent" varchar(512) not null,
"begin_time" timestamp not null,
"end_time" timestamp not null,
"duration" integer not null,
"result_code" integer not null default '0',
"result_msg" varchar(512) default '',
"creator" varchar(64) default '',
"create_time" timestamp not null default current_timestamp,
"updater" varchar(64) default '',
"update_time" timestamp not null default current_timestamp,
"deleted" bit not null default false,
"tenant_id" bigint not null default '0',
primary key ("id")
) COMMENT 'API 访问日志表';
CREATE TABLE IF NOT EXISTS "inf_api_error_log" (
"id" bigint not null GENERATED BY DEFAULT AS IDENTITY,
"trace_id" varchar(64) not null,
"user_id" bigint not null default '0',
"user_type" tinyint not null default '0',
"application_name" varchar(50) not null,
"request_method" varchar(16) not null,
"request_url" varchar(255) not null,
"request_params" varchar(8000) not null,
"user_ip" varchar(50) not null,
"user_agent" varchar(512) not null,
"exception_time" timestamp not null,
"exception_name" varchar(128) not null default '',
"exception_message" clob not null,
"exception_root_cause_message" clob not null,
"exception_stack_trace" clob not null,
"exception_class_name" varchar(512) not null,
"exception_file_name" varchar(512) not null,
"exception_method_name" varchar(512) not null,
"exception_line_number" integer not null,
"process_status" tinyint not null,
"process_time" timestamp default null,
"process_user_id" bigint default '0',
"creator" varchar(64) default '',
"create_time" timestamp not null default current_timestamp,
"updater" varchar(64) default '',
"update_time" timestamp not null default current_timestamp,
"deleted" bit not null default false,
"tenant_id" bigint not null default '0',
primary key ("id")
) COMMENT '系统异常日志';
CREATE TABLE IF NOT EXISTS "sys_sms_channel" (
"id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
"signature" varchar(10) NOT NULL,
"code" varchar(63) NOT NULL,
"status" tinyint NOT NULL,
"remark" varchar(255) DEFAULT NULL,
"api_key" varchar(63) NOT NULL,
"api_secret" varchar(63) DEFAULT NULL,
"callback_url" varchar(255) DEFAULT NULL,
"creator" varchar(64) DEFAULT '',
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updater" varchar(64) DEFAULT '',
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"deleted" bit NOT NULL DEFAULT FALSE,
PRIMARY KEY ("id")
) COMMENT '短信渠道';
CREATE TABLE IF NOT EXISTS "sys_sms_template" (
"id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
"type" tinyint NOT NULL,
"status" tinyint NOT NULL,
"code" varchar(63) NOT NULL,
"name" varchar(63) NOT NULL,
"content" varchar(255) NOT NULL,
"params" varchar(255) NOT NULL,
"remark" varchar(255) DEFAULT NULL,
"api_template_id" varchar(63) NOT NULL,
"channel_id" bigint NOT NULL,
"channel_code" varchar(63) NOT NULL,
"creator" varchar(64) DEFAULT '',
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updater" varchar(64) DEFAULT '',
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"deleted" bit NOT NULL DEFAULT FALSE,
PRIMARY KEY ("id")
) COMMENT '短信模板';
CREATE TABLE IF NOT EXISTS "sys_sms_log" (
"id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
"channel_id" bigint NOT NULL,
"channel_code" varchar(63) NOT NULL,
"template_id" bigint NOT NULL,
"template_code" varchar(63) NOT NULL,
"template_type" tinyint NOT NULL,
"template_content" varchar(255) NOT NULL,
"template_params" varchar(255) NOT NULL,
"api_template_id" varchar(63) NOT NULL,
"mobile" varchar(11) NOT NULL,
"user_id" bigint DEFAULT '0',
"user_type" tinyint DEFAULT '0',
"send_status" tinyint NOT NULL DEFAULT '0',
"send_time" timestamp DEFAULT NULL,
"send_code" int DEFAULT NULL,
"send_msg" varchar(255) DEFAULT NULL,
"api_send_code" varchar(63) DEFAULT NULL,
"api_send_msg" varchar(255) DEFAULT NULL,
"api_request_id" varchar(255) DEFAULT NULL,
"api_serial_no" varchar(255) DEFAULT NULL,
"receive_status" tinyint NOT NULL DEFAULT '0',
"receive_time" timestamp DEFAULT NULL,
"api_receive_code" varchar(63) DEFAULT NULL,
"api_receive_msg" varchar(255) DEFAULT NULL,
"creator" varchar(64) DEFAULT '',
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updater" varchar(64) DEFAULT '',
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"deleted" bit NOT NULL DEFAULT FALSE,
PRIMARY KEY ("id")
) COMMENT '短信日志';
CREATE TABLE IF NOT EXISTS "sys_error_code" (
"id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
"type" tinyint NOT NULL DEFAULT '0',
"application_name" varchar(50) NOT NULL,
"code" int NOT NULL DEFAULT '0',
"message" varchar(512) NOT NULL DEFAULT '',
"memo" varchar(512) DEFAULT '',
"creator" varchar(64) DEFAULT '',
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updater" varchar(64) DEFAULT '',
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"deleted" bit NOT NULL DEFAULT FALSE,
PRIMARY KEY ("id")
) COMMENT '错误码表';
CREATE TABLE IF NOT EXISTS "sys_social_user" (
"id" number NOT NULL GENERATED BY DEFAULT AS IDENTITY,
"user_id" bigint NOT NULL,
"user_type" tinyint NOT NULL DEFAULT '0',
"type" tinyint NOT NULL,
"openid" varchar(32) NOT NULL,
"token" varchar(256) DEFAULT NULL,
"union_id" varchar(32) NOT NULL,
"raw_token_info" varchar(1024) NOT NULL,
"nickname" varchar(32) NOT NULL,
"avatar" varchar(255) DEFAULT NULL,
"raw_user_info" varchar(1024) NOT NULL,
"creator" varchar(64) DEFAULT '',
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updater" varchar(64) DEFAULT '',
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"deleted" bit NOT NULL DEFAULT FALSE,
PRIMARY KEY ("id")
) COMMENT '社交用户';
CREATE TABLE IF NOT EXISTS "sys_tenant" (
"id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
"name" varchar(63) NOT NULL,
"contact_name" varchar(255) NOT NULL,
"contact_mobile" varchar(255),
"status" tinyint NOT NULL,
"creator" varchar(64) DEFAULT '',
"create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updater" varchar(64) DEFAULT '',
"update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
"deleted" bit NOT NULL DEFAULT FALSE,
PRIMARY KEY ("id")
) COMMENT '租户';
CREATE TABLE IF NOT EXISTS "pay_merchant"
(
"id" number NOT NULL GENERATED BY DEFAULT AS IDENTITY,

View File

@ -34,7 +34,7 @@ public class AppAuthCheckCodeReqVO {
@Pattern(regexp = "^[0-9]+$", message = "手机验证码必须都是数字")
private String code;
@ApiModelProperty(value = "发送场景", example = "1", notes = "对应 MbrSmsSceneEnum 枚举")
@ApiModelProperty(value = "发送场景", example = "1", notes = "对应 SmsSceneEnum 枚举")
@NotNull(message = "发送场景不能为空")
@InEnum(SmsSceneEnum.class)
private Integer scene;

View File

@ -19,7 +19,7 @@ public class AppAuthSendSmsReqVO {
@Mobile
private String mobile;
@ApiModelProperty(value = "发送场景", example = "1", notes = "对应 MbrSmsSceneEnum 枚举")
@ApiModelProperty(value = "发送场景", example = "1", notes = "对应 SmsSceneEnum 枚举")
@NotNull(message = "发送场景不能为空")
@InEnum(SmsSceneEnum.class)
private Integer scene;

View File

@ -281,9 +281,8 @@ public class MemberAuthServiceImpl implements MemberAuthService {
MemberUserDO userDO = checkOldPassword(userId, reqVO.getOldPassword());
// 更新用户密码
MemberUserDO mbrUserDO = MemberUserDO.builder().id(userDO.getId())
.password(passwordEncoder.encode(reqVO.getPassword())).build();
userMapper.updateById(mbrUserDO);
userMapper.updateById(MemberUserDO.builder().id(userDO.getId())
.password(passwordEncoder.encode(reqVO.getPassword())).build());
}
@Override
@ -296,10 +295,8 @@ public class MemberAuthServiceImpl implements MemberAuthService {
getClientIP()));
// 更新密码
MemberUserDO mbrUserDO = MemberUserDO.builder().build();
mbrUserDO.setId(userDO.getId());
mbrUserDO.setPassword(passwordEncoder.encode(reqVO.getPassword()));
userMapper.updateById(mbrUserDO);
userMapper.updateById(MemberUserDO.builder().id(userDO.getId())
.password(passwordEncoder.encode(reqVO.getPassword())).build());
}
@Override

View File

@ -53,7 +53,7 @@ public class MemberAuthServiceTest extends BaseDbAndRedisUnitTest {
@MockBean
private PasswordEncoder passwordEncoder;
@Resource
private MemberUserMapper mbrUserMapper;
private MemberUserMapper memberUserMapper;
@Resource
private MemberAuthServiceImpl authService;
@ -61,7 +61,7 @@ public class MemberAuthServiceTest extends BaseDbAndRedisUnitTest {
public void testUpdatePassword_success(){
// 准备参数
MemberUserDO userDO = randomUserDO();
mbrUserMapper.insert(userDO);
memberUserMapper.insert(userDO);
// 新密码
String newPassword = randomString();
@ -79,14 +79,14 @@ public class MemberAuthServiceTest extends BaseDbAndRedisUnitTest {
// 更新用户密码
authService.updatePassword(userDO.getId(), reqVO);
assertEquals(mbrUserMapper.selectById(userDO.getId()).getPassword(),newPassword);
assertEquals(memberUserMapper.selectById(userDO.getId()).getPassword(),newPassword);
}
@Test
public void testResetPassword_success(){
// 准备参数
MemberUserDO userDO = randomUserDO();
mbrUserMapper.insert(userDO);
memberUserMapper.insert(userDO);
// 随机密码
String password = randomNumbers(11);
@ -103,7 +103,7 @@ public class MemberAuthServiceTest extends BaseDbAndRedisUnitTest {
reqVO.setCode(code);
authService.resetPassword(reqVO);
assertEquals(mbrUserMapper.selectById(userDO.getId()).getPassword(),password);
assertEquals(memberUserMapper.selectById(userDO.getId()).getPassword(),password);
}

View File

@ -37,7 +37,7 @@ import static org.mockito.Mockito.*;
public class MemberUserServiceImplTest extends BaseDbAndRedisUnitTest {
@Resource
private MemberUserServiceImpl mbrUserService;
private MemberUserServiceImpl memberUserService;
@Resource
private StringRedisTemplate stringRedisTemplate;
@ -67,9 +67,9 @@ public class MemberUserServiceImplTest extends BaseDbAndRedisUnitTest {
String newNickName = randomString();
// 调用接口修改昵称
mbrUserService.updateUserNickname(userDO.getId(),newNickName);
memberUserService.updateUserNickname(userDO.getId(),newNickName);
// 查询新修改后的昵称
String nickname = mbrUserService.getUser(userDO.getId()).getNickname();
String nickname = memberUserService.getUser(userDO.getId()).getNickname();
// 断言
assertEquals(newNickName,nickname);
}
@ -88,7 +88,7 @@ public class MemberUserServiceImplTest extends BaseDbAndRedisUnitTest {
String avatar = randomString();
when(fileCoreService.createFile(anyString(), eq(avatarFileBytes))).thenReturn(avatar);
// 调用
String str = mbrUserService.updateUserAvatar(userId, avatarFile);
String str = memberUserService.updateUserAvatar(userId, avatarFile);
// 断言
assertEquals(avatar, str);
}
@ -119,9 +119,9 @@ public class MemberUserServiceImplTest extends BaseDbAndRedisUnitTest {
reqVO.setCode(newCode);
reqVO.setOldMobile(oldMobile);
reqVO.setOldCode(oldCode);
mbrUserService.updateUserMobile(userDO.getId(),reqVO);
memberUserService.updateUserMobile(userDO.getId(),reqVO);
assertEquals(mbrUserService.getUser(userDO.getId()).getMobile(),newMobile);
assertEquals(memberUserService.getUser(userDO.getId()).getMobile(),newMobile);
}
// ========== 随机对象 ==========

View File

@ -45,5 +45,7 @@ mybatis:
yudao:
info:
base-package: cn.iocoder.yudao.module.member.dal.mysql
member-package: cn.iocoder.yudao.module.member # TODO 芋艿:要清理掉
system-package: cn.iocoder.yudao.module.system # TODO 芋艿:要清理掉
core-service:
base-package: cn.iocoder.yudao.module.member.dal.mysql # TODO 芋艿:要清理掉

View File

@ -1,2 +1 @@
-- mbr 开头的 DB
DELETE FROM "member_user";

View File

@ -1,4 +1,3 @@
-- mbr 开头的 DB
CREATE TABLE IF NOT EXISTS "member_user" (
"id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY COMMENT '编号',
"nickname" varchar(30) NOT NULL DEFAULT '' COMMENT '用户昵称',

View File

@ -50,7 +50,7 @@ public class AuthController {
@Resource
private PermissionService permissionService;
@Resource
private SocialUserService socialCoreService;
private SocialUserService socialUserService;
@PostMapping("/login")
@ApiOperation("使用账号密码登录")
@ -102,7 +102,7 @@ public class AuthController {
})
public CommonResult<String> socialAuthRedirect(@RequestParam("type") Integer type,
@RequestParam("redirectUri") String redirectUri) {
return CommonResult.success(socialCoreService.getAuthorizeUrl(type, redirectUri));
return CommonResult.success(socialUserService.getAuthorizeUrl(type, redirectUri));
}
@PostMapping("/social-login")
@ -133,7 +133,7 @@ public class AuthController {
@DeleteMapping("/social-unbind")
@ApiOperation("取消社交绑定")
public CommonResult<Boolean> socialUnbind(@RequestBody AuthSocialUnbindReqVO reqVO) {
socialCoreService.unbindSocialUser(getLoginUserId(), UserTypeEnum.ADMIN.getValue(), reqVO.getType(), reqVO.getUnionId());
socialUserService.unbindSocialUser(getLoginUserId(), UserTypeEnum.ADMIN.getValue(), reqVO.getType(), reqVO.getUnionId());
return CommonResult.success(true);
}

View File

@ -3,9 +3,9 @@ package cn.iocoder.yudao.module.system.controller.admin.auth;
import cn.iocoder.yudao.module.system.controller.admin.auth.vo.session.UserSessionPageItemRespVO;
import cn.iocoder.yudao.module.system.controller.admin.auth.vo.session.UserSessionPageReqVO;
import cn.iocoder.yudao.module.system.convert.auth.UserSessionConvert;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO;
import cn.iocoder.yudao.module.system.dal.dataobject.auth.UserSessionDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.DeptDO;
import cn.iocoder.yudao.module.system.service.auth.UserSessionService;
import cn.iocoder.yudao.module.system.dal.dataobject.auth.SysUserSessionDO;
import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
@ -45,12 +45,12 @@ public class UserSessionController {
@PreAuthorize("@ss.hasPermission('system:user-session:page')")
public CommonResult<PageResult<UserSessionPageItemRespVO>> getUserSessionPage(@Validated UserSessionPageReqVO reqVO) {
// 获得 Session 分页
PageResult<SysUserSessionDO> pageResult = userSessionService.getUserSessionPage(reqVO);
PageResult<UserSessionDO> pageResult = userSessionService.getUserSessionPage(reqVO);
// 获得拼接需要的数据
Map<Long, AdminUserDO> userMap = userService.getUserMap(
convertList(pageResult.getList(), SysUserSessionDO::getUserId));
Map<Long, SysDeptDO> deptMap = deptService.getDeptMap(
convertList(pageResult.getList(), UserSessionDO::getUserId));
Map<Long, DeptDO> deptMap = deptService.getDeptMap(
convertList(userMap.values(), AdminUserDO::getDeptId));
// 拼接结果返回
List<UserSessionPageItemRespVO> sessionList = new ArrayList<>(pageResult.getList().size());

View File

@ -19,7 +19,7 @@ import javax.validation.constraints.NotNull;
@Builder
public class AuthSocialBindReqVO {
@ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 SysUserSocialTypeEnum 枚举值")
@ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 UserSocialTypeEnum 枚举值")
@InEnum(SocialTypeEnum.class)
@NotNull(message = "社交平台的类型不能为空")
private Integer type;

View File

@ -21,7 +21,7 @@ import javax.validation.constraints.Pattern;
@Builder
public class AuthSocialLogin2ReqVO {
@ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 SysUserSocialTypeEnum 枚举值")
@ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 UserSocialTypeEnum 枚举值")
@InEnum(SocialTypeEnum.class)
@NotNull(message = "社交平台的类型不能为空")
private Integer type;

View File

@ -19,7 +19,7 @@ import javax.validation.constraints.NotNull;
@Builder
public class AuthSocialLoginReqVO {
@ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 SysUserSocialTypeEnum 枚举值")
@ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 UserSocialTypeEnum 枚举值")
@InEnum(SocialTypeEnum.class)
@NotNull(message = "社交平台的类型不能为空")
private Integer type;

View File

@ -19,7 +19,7 @@ import javax.validation.constraints.NotNull;
@Builder
public class AuthSocialUnbindReqVO {
@ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 SysUserSocialTypeEnum 枚举值")
@ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 UserSocialTypeEnum 枚举值")
@InEnum(SocialTypeEnum.class)
@NotNull(message = "社交平台的类型不能为空")
private Integer type;

View File

@ -4,7 +4,7 @@ import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.module.system.controller.admin.dept.vo.dept.*;
import cn.iocoder.yudao.module.system.convert.dept.DeptConvert;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.DeptDO;
import cn.iocoder.yudao.module.system.service.dept.DeptService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@ -58,8 +58,8 @@ public class DeptController {
@ApiOperation("获取部门列表")
@PreAuthorize("@ss.hasPermission('system:dept:query')")
public CommonResult<List<DeptRespVO>> listDepts(DeptListReqVO reqVO) {
List<SysDeptDO> list = deptService.getSimpleDepts(reqVO);
list.sort(Comparator.comparing(SysDeptDO::getSort));
List<DeptDO> list = deptService.getSimpleDepts(reqVO);
list.sort(Comparator.comparing(DeptDO::getSort));
return success(DeptConvert.INSTANCE.convertList(list));
}
@ -69,9 +69,9 @@ public class DeptController {
// 获得部门列表只要开启状态的
DeptListReqVO reqVO = new DeptListReqVO();
reqVO.setStatus(CommonStatusEnum.ENABLE.getStatus());
List<SysDeptDO> list = deptService.getSimpleDepts(reqVO);
List<DeptDO> list = deptService.getSimpleDepts(reqVO);
// 排序后返回给前端
list.sort(Comparator.comparing(SysDeptDO::getSort));
list.sort(Comparator.comparing(DeptDO::getSort));
return success(DeptConvert.INSTANCE.convertList02(list));
}

View File

@ -7,7 +7,7 @@ import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
import cn.iocoder.yudao.module.system.controller.admin.dept.vo.post.*;
import cn.iocoder.yudao.module.system.convert.dept.PostConvert;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysPostDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.PostDO;
import cn.iocoder.yudao.module.system.service.dept.PostService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@ -72,9 +72,9 @@ public class PostController {
@ApiOperation(value = "获取岗位精简信息列表", notes = "只包含被开启的岗位,主要用于前端的下拉选项")
public CommonResult<List<PostSimpleRespVO>> getSimplePosts() {
// 获得岗位列表只要开启状态的
List<SysPostDO> list = postService.getPosts(null, Collections.singleton(CommonStatusEnum.ENABLE.getStatus()));
List<PostDO> list = postService.getPosts(null, Collections.singleton(CommonStatusEnum.ENABLE.getStatus()));
// 排序后返回给前端
list.sort(Comparator.comparing(SysPostDO::getSort));
list.sort(Comparator.comparing(PostDO::getSort));
return success(PostConvert.INSTANCE.convertList02(list));
}
@ -90,7 +90,7 @@ public class PostController {
@PreAuthorize("@ss.hasPermission('system:post:export')")
@OperateLog(type = EXPORT)
public void export(HttpServletResponse response, @Validated PostExportReqVO reqVO) throws IOException {
List<SysPostDO> posts = postService.getPosts(reqVO);
List<PostDO> posts = postService.getPosts(reqVO);
List<PostExcelVO> data = PostConvert.INSTANCE.convertList03(posts);
// 输出
ExcelUtils.write(response, "岗位数据.xls", "岗位列表", PostExcelVO.class, data);

View File

@ -40,7 +40,7 @@ public class DeptBaseVO {
@Size(max = 50, message = "邮箱长度不能超过50个字符")
private String email;
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "SysCommonStatusEnum 枚举")
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "CommonStatusEnum 枚举")
@NotNull(message = "状态不能为空")
// @InEnum(value = CommonStatusEnum.class, message = "修改状态必须是 {value}")
private Integer status;

View File

@ -11,7 +11,7 @@ public class DeptListReqVO {
@ApiModelProperty(value = "部门名称", example = "芋道", notes = "模糊匹配")
private String name;
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
}

View File

@ -15,7 +15,7 @@ public class DeptRespVO extends DeptBaseVO {
@ApiModelProperty(value = "部门编号", required = true, example = "1024")
private Long id;
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
@ApiModelProperty(value = "创建时间", required = true, example = "时间戳格式")

View File

@ -28,7 +28,7 @@ public class PostBaseVO {
@NotNull(message = "显示顺序不能为空")
private Integer sort;
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
@ApiModelProperty(value = "备注", example = "快乐的备注")

View File

@ -4,7 +4,7 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ApiModel(value = "管理后台 - 岗位导出 Request VO", description = "参数和 SysPostExcelVO 是一致的")
@ApiModel(value = "管理后台 - 岗位导出 Request VO", description = "参数和 PostExcelVO 是一致的")
@Data
public class PostExportReqVO {
@ -14,7 +14,7 @@ public class PostExportReqVO {
@ApiModelProperty(value = "岗位名称", example = "芋道", notes = "模糊匹配")
private String name;
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
}

View File

@ -13,7 +13,7 @@ public class PostListReqVO extends PostBaseVO {
@ApiModelProperty(value = "岗位名称", example = "芋道", notes = "模糊匹配")
private String name;
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
}

View File

@ -17,7 +17,7 @@ public class PostPageReqVO extends PageParam {
@ApiModelProperty(value = "岗位名称", example = "芋道", notes = "模糊匹配")
private String name;
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
}

View File

@ -1,6 +1,6 @@
package cn.iocoder.yudao.module.system.controller.admin.dict;
import cn.iocoder.yudao.module.system.dal.dataobject.dict.SysDictDataDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
@ -62,7 +62,7 @@ public class DictDataController {
@ApiOperation(value = "获得全部字典数据列表", notes = "一般用于管理后台缓存字典数据在本地")
// 无需添加权限认证因为前端全局都需要
public CommonResult<List<DictDataSimpleRespVO>> getSimpleDictDatas() {
List<SysDictDataDO> list = dictDataService.getDictDatas();
List<DictDataDO> list = dictDataService.getDictDatas();
return success(DictDataConvert.INSTANCE.convertList(list));
}
@ -86,7 +86,7 @@ public class DictDataController {
@PreAuthorize("@ss.hasPermission('system:dict:export')")
@OperateLog(type = EXPORT)
public void export(HttpServletResponse response, @Valid DictDataExportReqVO reqVO) throws IOException {
List<SysDictDataDO> list = dictDataService.getDictDatas(reqVO);
List<DictDataDO> list = dictDataService.getDictDatas(reqVO);
List<DictDataExcelVO> data = DictDataConvert.INSTANCE.convertList02(list);
// 输出
ExcelUtils.write(response, "字典数据.xls", "数据列表", DictDataExcelVO.class, data);

View File

@ -33,9 +33,9 @@ public class DictDataBaseVO {
@Size(max = 100, message = "字典类型长度不能超过100个字符")
private String dictType;
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "SysCommonStatusEnum 枚举")
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "CommonStatusEnum 枚举")
@NotNull(message = "状态不能为空")
// @InEnum(value = SysCommonStatusEnum.class, message = "修改状态必须是 {value}")
// @InEnum(value = CommonStatusEnum.class, message = "修改状态必须是 {value}")
private Integer status;
@ApiModelProperty(value = "备注", example = "我是一个角色")

View File

@ -18,7 +18,7 @@ public class DictDataExportReqVO {
@Size(max = 100, message = "字典类型类型长度不能超过100个字符")
private String dictType;
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
}

View File

@ -21,7 +21,7 @@ public class DictDataPageReqVO extends PageParam {
@Size(max = 100, message = "字典类型类型长度不能超过100个字符")
private String dictType;
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
}

View File

@ -19,7 +19,7 @@ public class DictTypeExportReqVO {
@ApiModelProperty(value = "字典类型", example = "sys_common_sex", notes = "模糊匹配")
private String type;
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)

View File

@ -24,7 +24,7 @@ public class DictTypePageReqVO extends PageParam {
@Size(max = 100, message = "字典类型类型长度不能超过100个字符")
private String type;
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)

View File

@ -18,7 +18,7 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_
@ToString(callSuper = true)
public class ErrorCodePageReqVO extends PageParam {
@ApiModelProperty(value = "错误码类型", example = "1", notes = "参见 SysErrorCodeTypeEnum 枚举类")
@ApiModelProperty(value = "错误码类型", example = "1", notes = "参见 ErrorCodeTypeEnum 枚举类")
private Integer type;
@ApiModelProperty(value = "应用名", example = "dashboard")

View File

@ -17,7 +17,7 @@ public class ErrorCodeRespVO extends ErrorCodeBaseVO {
@ApiModelProperty(value = "错误码编号", required = true, example = "1024")
private Long id;
@ApiModelProperty(value = "错误码类型", required = true, example = "1", notes = "参见 SysErrorCodeTypeEnum 枚举类")
@ApiModelProperty(value = "错误码类型", required = true, example = "1", notes = "参见 ErrorCodeTypeEnum 枚举类")
private Integer type;
@ApiModelProperty(value = "创建时间", required = true)

View File

@ -1,6 +1,6 @@
package cn.iocoder.yudao.module.system.controller.admin.logger;
import cn.iocoder.yudao.module.system.dal.dataobject.logger.SysLoginLogDO;
import cn.iocoder.yudao.module.system.dal.dataobject.logger.LoginLogDO;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
@ -40,7 +40,7 @@ public class LoginLogController {
@ApiOperation("获得登录日志分页列表")
@PreAuthorize("@ss.hasPermission('system:login-log:query')")
public CommonResult<PageResult<LoginLogRespVO>> getLoginLogPage(@Valid LoginLogPageReqVO reqVO) {
PageResult<SysLoginLogDO> page = loginLogService.getLoginLogPage(reqVO);
PageResult<LoginLogDO> page = loginLogService.getLoginLogPage(reqVO);
return CommonResult.success(LoginLogConvert.INSTANCE.convertPage(page));
}
@ -49,7 +49,7 @@ public class LoginLogController {
@PreAuthorize("@ss.hasPermission('system:login-log:export')")
@OperateLog(type = EXPORT)
public void exportLoginLog(HttpServletResponse response, @Valid LoginLogExportReqVO reqVO) throws IOException {
List<SysLoginLogDO> list = loginLogService.getLoginLogList(reqVO);
List<LoginLogDO> list = loginLogService.getLoginLogList(reqVO);
// 拼接数据
List<LoginLogExcelVO> data = LoginLogConvert.INSTANCE.convertList(list);
// 输出

View File

@ -15,7 +15,7 @@ import javax.validation.constraints.Size;
@Data
public class LoginLogBaseVO {
@ApiModelProperty(value = "日志类型", required = true, example = "1", notes = "参见 SysLoginLogTypeEnum 枚举类")
@ApiModelProperty(value = "日志类型", required = true, example = "1", notes = "参见 LoginLogTypeEnum 枚举类")
@NotNull(message = "日志类型不能为空")
private Integer logType;
@ -28,7 +28,7 @@ public class LoginLogBaseVO {
@Size(max = 30, message = "用户账号长度不能超过30个字符")
private String username;
@ApiModelProperty(value = "登录结果", required = true, example = "1", notes = "参见 SysLoginResultEnum 枚举类")
@ApiModelProperty(value = "登录结果", required = true, example = "1", notes = "参见 LoginResultEnum 枚举类")
@NotNull(message = "登录结果不能为空")
private Integer result;

View File

@ -31,7 +31,7 @@ public class OperateLogBaseVO {
@NotEmpty(message = "操作名")
private String name;
@ApiModelProperty(value = "操作分类", required = true, example = "1", notes = "参见 SysOperateLogTypeEnum 枚举类")
@ApiModelProperty(value = "操作分类", required = true, example = "1", notes = "参见 OperateLogTypeEnum 枚举类")
@NotNull(message = "操作分类不能为空")
private Integer type;

View File

@ -19,7 +19,7 @@ public class OperateLogExportReqVO {
@ApiModelProperty(value = "用户昵称", example = "芋道", notes = "模拟匹配")
private String userNickname;
@ApiModelProperty(value = "操作分类", example = "1", notes = "参见 SysOperateLogTypeEnum 枚举类")
@ApiModelProperty(value = "操作分类", example = "1", notes = "参见 OperateLogTypeEnum 枚举类")
private Integer type;
@ApiModelProperty(value = "操作状态", example = "true")

View File

@ -20,7 +20,7 @@ public class OperateLogPageReqVO extends PageParam {
@ApiModelProperty(value = "用户昵称", example = "芋道", notes = "模拟匹配")
private String userNickname;
@ApiModelProperty(value = "操作分类", example = "1", notes = "参见 SysOperateLogTypeEnum 枚举类")
@ApiModelProperty(value = "操作分类", example = "1", notes = "参见 OperateLogTypeEnum 枚举类")
private Integer type;
@ApiModelProperty(value = "操作状态", example = "true")

View File

@ -26,7 +26,7 @@ public class NoticeBaseVO {
@ApiModelProperty(value = "公告内容", required = true, example = "半生编码")
private String content;
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
}

View File

@ -14,7 +14,7 @@ public class NoticePageReqVO extends PageParam {
@ApiModelProperty(value = "通知公告名称", example = "芋道", notes = "模糊匹配")
private String title;
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
}

View File

@ -23,7 +23,7 @@ public class MenuBaseVO {
@Size(max = 100)
private String permission;
@ApiModelProperty(value = "类型", required = true, example = "1", notes = "参见 SysMenuTypeEnum 枚举类")
@ApiModelProperty(value = "类型", required = true, example = "1", notes = "参见 MenuTypeEnum 枚举类")
@NotNull(message = "菜单类型不能为空")
private Integer type;
@ -46,7 +46,7 @@ public class MenuBaseVO {
@Size(max = 200, message = "组件路径不能超过255个字符")
private String component;
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "SysCommonStatusEnum 枚举")
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "CommonStatusEnum 枚举")
@NotNull(message = "状态不能为空")
private Integer status;

View File

@ -11,7 +11,7 @@ public class MenuListReqVO {
@ApiModelProperty(value = "菜单名称", example = "芋道", notes = "模糊匹配")
private String name;
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
}

View File

@ -19,7 +19,7 @@ public class MenuRespVO extends MenuBaseVO {
@ApiModelProperty(value = "菜单编号", required = true, example = "1024")
private Long id;
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
@ApiModelProperty(value = "创建时间", required = true, example = "时间戳格式")

View File

@ -16,7 +16,7 @@ public class PermissionAssignRoleDataScopeReqVO {
@NotNull(message = "角色编号不能为空")
private Long roleId;
@ApiModelProperty(value = "数据范围", required = true, example = "1", notes = "参见 SysDataScopeEnum 枚举类")
@ApiModelProperty(value = "数据范围", required = true, example = "1", notes = "参见 DataScopeEnum 枚举类")
@NotNull(message = "数据范围不能为空")
// TODO 这里要多一个枚举校验
private Integer dataScope;

View File

@ -28,7 +28,7 @@ public class RoleBaseVO {
@NotNull(message = "显示顺序不能为空")
private Integer sort;
@ApiModelProperty(value = "角色类型", required = true, example = "1", notes = "SysRoleTypeEnum 枚举")
@ApiModelProperty(value = "角色类型", required = true, example = "1", notes = "RoleTypeEnum 枚举")
private Integer type;
@ApiModelProperty(value = "备注", example = "我是一个角色")

View File

@ -19,7 +19,7 @@ public class RoleExportReqVO {
@ApiModelProperty(value = "角色标识", example = "yudao", notes = "模糊匹配")
private String code;
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
@ApiModelProperty(value = "开始时间", example = "2020-10-24")

View File

@ -22,7 +22,7 @@ public class RolePageReqVO extends PageParam {
@ApiModelProperty(value = "角色标识", example = "yudao", notes = "模糊匹配")
private String code;
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
@ApiModelProperty(value = "开始时间", example = "2020-10-24")

View File

@ -26,10 +26,10 @@ public class RoleRespVO extends RoleBaseVO {
@ApiModelProperty(value = "数据范围(指定部门数组)", example = "1")
private Set<Long> dataScopeDeptIds;
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
@ApiModelProperty(value = "角色类型", required = true, example = "1", notes = "参见 SysRoleTypeEnum 枚举类")
@ApiModelProperty(value = "角色类型", required = true, example = "1", notes = "参见 RoleTypeEnum 枚举类")
private Integer type;
@ApiModelProperty(value = "创建时间", required = true, example = "时间戳格式")

View File

@ -1,7 +1,5 @@
package cn.iocoder.yudao.module.system.controller.admin.permission.vo.role;
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
import cn.iocoder.yudao.framework.common.validation.InEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -16,7 +14,7 @@ public class RoleUpdateStatusReqVO {
@NotNull(message = "角色编号不能为空")
private Long id;
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "SysCommonStatusEnum 枚举")
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "CommonStatusEnum 枚举")
@NotNull(message = "状态不能为空")
// @InEnum(value = CommonStatusEnum.class, message = "修改状态必须是 {value}")
private Integer status;

View File

@ -25,7 +25,7 @@ import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
public class SmsCallbackController {
@Resource
private SmsSendService smsCoreService;
private SmsSendService smsSendService;
@PostMapping("/sms/yunpian")
@ApiOperation(value = "云片短信的回调", notes = "参见 https://www.yunpian.com/official/document/sms/zh_cn/domestic_push_report 文档")
@ -33,7 +33,7 @@ public class SmsCallbackController {
@OperateLog(enable = false)
public String receiveYunpianSmsStatus(@RequestParam("sms_status") String smsStatus) throws Throwable {
String text = URLUtil.decode(smsStatus); // decode 解码参数因为它被 encode
smsCoreService.receiveSmsStatus(SmsChannelEnum.YUN_PIAN.getCode(), text);
smsSendService.receiveSmsStatus(SmsChannelEnum.YUN_PIAN.getCode(), text);
return "SUCCESS"; // 约定返回 SUCCESS 为成功
}
@ -42,7 +42,7 @@ public class SmsCallbackController {
@OperateLog(enable = false)
public CommonResult<Boolean> receiveAliyunSmsStatus(HttpServletRequest request) throws Throwable {
String text = ServletUtil.getBody(request);
smsCoreService.receiveSmsStatus(SmsChannelEnum.ALIYUN.getCode(), text);
smsSendService.receiveSmsStatus(SmsChannelEnum.ALIYUN.getCode(), text);
return success(true);
}

View File

@ -2,8 +2,8 @@ package cn.iocoder.yudao.module.system.controller.admin.sms;
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.channel.*;
import cn.iocoder.yudao.module.system.convert.sms.SmsChannelConvert;
import cn.iocoder.yudao.module.system.dal.dataobject.sms.SmsChannelDO;
import cn.iocoder.yudao.module.system.service.sms.SmsChannelService;
import cn.iocoder.yudao.module.system.dal.dataobject.sms.SysSmsChannelDO;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import io.swagger.annotations.Api;
@ -56,7 +56,7 @@ public class SmsChannelController {
@ApiImplicitParam(name = "id", value = "编号", required = true, example = "1024", dataTypeClass = Long.class)
@PreAuthorize("@ss.hasPermission('system:sms-channel:query')")
public CommonResult<SmsChannelRespVO> getSmsChannel(@RequestParam("id") Long id) {
SysSmsChannelDO smsChannel = smsChannelService.getSmsChannel(id);
SmsChannelDO smsChannel = smsChannelService.getSmsChannel(id);
return success(SmsChannelConvert.INSTANCE.convert(smsChannel));
}
@ -64,16 +64,16 @@ public class SmsChannelController {
@ApiOperation("获得短信渠道分页")
@PreAuthorize("@ss.hasPermission('system:sms-channel:query')")
public CommonResult<PageResult<SmsChannelRespVO>> getSmsChannelPage(@Valid SmsChannelPageReqVO pageVO) {
PageResult<SysSmsChannelDO> pageResult = smsChannelService.getSmsChannelPage(pageVO);
PageResult<SmsChannelDO> pageResult = smsChannelService.getSmsChannelPage(pageVO);
return success(SmsChannelConvert.INSTANCE.convertPage(pageResult));
}
@GetMapping("/list-all-simple")
@ApiOperation(value = "获得短信渠道精简列表", notes = "包含被禁用的短信渠道")
public CommonResult<List<SmsChannelSimpleRespVO>> getSimpleSmsChannels() {
List<SysSmsChannelDO> list = smsChannelService.getSmsChannelList();
List<SmsChannelDO> list = smsChannelService.getSmsChannelList();
// 排序后返回给前端
list.sort(Comparator.comparing(SysSmsChannelDO::getId));
list.sort(Comparator.comparing(SmsChannelDO::getId));
return success(SmsChannelConvert.INSTANCE.convertList03(list));
}

View File

@ -3,10 +3,10 @@ package cn.iocoder.yudao.module.system.controller.admin.sms;
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.log.SmsLogExcelVO;
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.log.SmsLogExportReqVO;
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.log.SmsLogPageReqVO;
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.log.SysSmsLogRespVO;
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.log.SmsLogRespVO;
import cn.iocoder.yudao.module.system.convert.sms.SmsLogConvert;
import cn.iocoder.yudao.module.system.dal.dataobject.sms.SmsLogDO;
import cn.iocoder.yudao.module.system.service.sms.SmsLogService;
import cn.iocoder.yudao.module.system.dal.dataobject.sms.SysSmsLogDO;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
@ -40,8 +40,8 @@ public class SmsLogController {
@GetMapping("/page")
@ApiOperation("获得短信日志分页")
@PreAuthorize("@ss.hasPermission('system:sms-log:query')")
public CommonResult<PageResult<SysSmsLogRespVO>> getSmsLogPage(@Valid SmsLogPageReqVO pageVO) {
PageResult<SysSmsLogDO> pageResult = smsLogService.getSmsLogPage(pageVO);
public CommonResult<PageResult<SmsLogRespVO>> getSmsLogPage(@Valid SmsLogPageReqVO pageVO) {
PageResult<SmsLogDO> pageResult = smsLogService.getSmsLogPage(pageVO);
return success(SmsLogConvert.INSTANCE.convertPage(pageResult));
}
@ -51,7 +51,7 @@ public class SmsLogController {
@OperateLog(type = EXPORT)
public void exportSmsLogExcel(@Valid SmsLogExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<SysSmsLogDO> list = smsLogService.getSmsLogList(exportReqVO);
List<SmsLogDO> list = smsLogService.getSmsLogList(exportReqVO);
// 导出 Excel
List<SmsLogExcelVO> datas = SmsLogConvert.INSTANCE.convertList02(list);
ExcelUtils.write(response, "短信日志.xls", "数据", SmsLogExcelVO.class, datas);

View File

@ -2,8 +2,8 @@ package cn.iocoder.yudao.module.system.controller.admin.sms;
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.template.*;
import cn.iocoder.yudao.module.system.convert.sms.SmsTemplateConvert;
import cn.iocoder.yudao.module.system.dal.dataobject.sms.SmsTemplateDO;
import cn.iocoder.yudao.module.system.service.sms.SmsTemplateService;
import cn.iocoder.yudao.module.system.dal.dataobject.sms.SysSmsTemplateDO;
import cn.iocoder.yudao.module.system.service.sms.SmsSendService;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
@ -32,7 +32,7 @@ public class SmsTemplateController {
@Resource
private SmsTemplateService smsTemplateService;
@Resource
private SmsSendService smsCoreService;
private SmsSendService smsSendService;
@PostMapping("/create")
@ApiOperation("创建短信模板")
@ -63,7 +63,7 @@ public class SmsTemplateController {
@ApiImplicitParam(name = "id", value = "编号", required = true, example = "1024", dataTypeClass = Long.class)
@PreAuthorize("@ss.hasPermission('system:sms-template:query')")
public CommonResult<SmsTemplateRespVO> getSmsTemplate(@RequestParam("id") Long id) {
SysSmsTemplateDO smsTemplate = smsTemplateService.getSmsTemplate(id);
SmsTemplateDO smsTemplate = smsTemplateService.getSmsTemplate(id);
return success(SmsTemplateConvert.INSTANCE.convert(smsTemplate));
}
@ -71,7 +71,7 @@ public class SmsTemplateController {
@ApiOperation("获得短信模板分页")
@PreAuthorize("@ss.hasPermission('system:sms-template:query')")
public CommonResult<PageResult<SmsTemplateRespVO>> getSmsTemplatePage(@Valid SmsTemplatePageReqVO pageVO) {
PageResult<SysSmsTemplateDO> pageResult = smsTemplateService.getSmsTemplatePage(pageVO);
PageResult<SmsTemplateDO> pageResult = smsTemplateService.getSmsTemplatePage(pageVO);
return success(SmsTemplateConvert.INSTANCE.convertPage(pageResult));
}
@ -81,7 +81,7 @@ public class SmsTemplateController {
@OperateLog(type = EXPORT)
public void exportSmsTemplateExcel(@Valid SmsTemplateExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<SysSmsTemplateDO> list = smsTemplateService.getSmsTemplateList(exportReqVO);
List<SmsTemplateDO> list = smsTemplateService.getSmsTemplateList(exportReqVO);
// 导出 Excel
List<SmsTemplateExcelVO> datas = SmsTemplateConvert.INSTANCE.convertList02(list);
ExcelUtils.write(response, "短信模板.xls", "数据", SmsTemplateExcelVO.class, datas);
@ -91,7 +91,7 @@ public class SmsTemplateController {
@ApiOperation("发送短信")
@PreAuthorize("@ss.hasPermission('system:sms-template:send-sms')")
public CommonResult<Long> sendSms(@Valid @RequestBody SmsTemplateSendReqVO sendReqVO) {
return success(smsCoreService.sendSingleSmsToAdmin(sendReqVO.getMobile(), null,
return success(smsSendService.sendSingleSmsToAdmin(sendReqVO.getMobile(), null,
sendReqVO.getTemplateCode(), sendReqVO.getTemplateParams()));
}

View File

@ -9,7 +9,7 @@ import java.util.Date;
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@ApiModel(value = "管理后台 - 短信日志 Excel 导出 Request VO", description = "参数和 SysSmsLogPageReqVO 是一致的")
@ApiModel(value = "管理后台 - 短信日志 Excel 导出 Request VO", description = "参数和 SmsLogPageReqVO 是一致的")
@Data
public class SmsLogExportReqVO {

View File

@ -27,7 +27,7 @@ public class SmsLogPageReqVO extends PageParam {
@ApiModelProperty(value = "手机号", example = "15601691300")
private String mobile;
@ApiModelProperty(value = "发送状态", example = "1", notes = "参见 SysSmsSendStatusEnum 枚举类")
@ApiModelProperty(value = "发送状态", example = "1", notes = "参见 SmsSendStatusEnum 枚举类")
private Integer sendStatus;
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
@ -38,7 +38,7 @@ public class SmsLogPageReqVO extends PageParam {
@ApiModelProperty(value = "结束发送时间")
private Date endSendTime;
@ApiModelProperty(value = "接收状态", example = "0", notes = "参见 SysSmsReceiveStatusEnum 枚举类")
@ApiModelProperty(value = "接收状态", example = "0", notes = "参见 SmsReceiveStatusEnum 枚举类")
private Integer receiveStatus;
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)

View File

@ -9,7 +9,7 @@ import java.util.Map;
@ApiModel("管理后台 - 短信日志 Response VO")
@Data
public class SysSmsLogRespVO {
public class SmsLogRespVO {
@ApiModelProperty(value = "编号", required = true, example = "1024")
private Long id;

View File

@ -12,7 +12,7 @@ import javax.validation.constraints.NotNull;
@Data
public class SmsTemplateBaseVO {
@ApiModelProperty(value = "短信类型", required = true, example = "1", notes = "参见 SysSmsTemplateTypeEnum 枚举类")
@ApiModelProperty(value = "短信类型", required = true, example = "1", notes = "参见 SmsTemplateTypeEnum 枚举类")
@NotNull(message = "短信类型不能为空")
private Integer type;

View File

@ -9,7 +9,7 @@ import java.util.Date;
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@ApiModel(value = "管理后台 - 短信模板 Excel 导出 Request VO", description = "参数和 SysSmsTemplatePageReqVO 是一致的")
@ApiModel(value = "管理后台 - 短信模板 Excel 导出 Request VO", description = "参数和 SmsTemplatePageReqVO 是一致的")
@Data
public class SmsTemplateExportReqVO {

View File

@ -2,8 +2,8 @@ package cn.iocoder.yudao.module.system.controller.admin.tenant;
import cn.iocoder.yudao.module.system.controller.admin.tenant.vo.*;
import cn.iocoder.yudao.module.system.convert.tenant.TenantConvert;
import cn.iocoder.yudao.module.system.dal.dataobject.tenant.TenantDO;
import cn.iocoder.yudao.module.system.service.tenant.TenantService;
import cn.iocoder.yudao.module.system.dal.dataobject.tenant.SysTenantDO;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
@ -36,7 +36,7 @@ public class TenantController {
@ApiOperation(value = "使用租户名,获得租户编号", notes = "登录界面,根据用户的租户名,获得租户编号")
@ApiImplicitParam(name = "name", value = "租户名", required = true, example = "芋道源码", dataTypeClass = Long.class)
public CommonResult<Long> getTenantIdByName(@RequestParam("name") String name) {
SysTenantDO tenantDO = tenantService.getTenantByName(name);
TenantDO tenantDO = tenantService.getTenantByName(name);
return success(tenantDO != null ? tenantDO.getId() : null);
}
@ -69,7 +69,7 @@ public class TenantController {
@ApiImplicitParam(name = "id", value = "编号", required = true, example = "1024", dataTypeClass = Long.class)
@PreAuthorize("@ss.hasPermission('system:tenant:query')")
public CommonResult<TenantRespVO> getTenant(@RequestParam("id") Long id) {
SysTenantDO tenant = tenantService.getTenant(id);
TenantDO tenant = tenantService.getTenant(id);
return success(TenantConvert.INSTANCE.convert(tenant));
}
@ -78,7 +78,7 @@ public class TenantController {
@ApiImplicitParam(name = "ids", value = "编号列表", required = true, example = "1024,2048", dataTypeClass = List.class)
@PreAuthorize("@ss.hasPermission('system:tenant:query')")
public CommonResult<List<TenantRespVO>> getTenantList(@RequestParam("ids") Collection<Long> ids) {
List<SysTenantDO> list = tenantService.getTenantList(ids);
List<TenantDO> list = tenantService.getTenantList(ids);
return success(TenantConvert.INSTANCE.convertList(list));
}
@ -86,7 +86,7 @@ public class TenantController {
@ApiOperation("获得租户分页")
@PreAuthorize("@ss.hasPermission('system:tenant:query')")
public CommonResult<PageResult<TenantRespVO>> getTenantPage(@Valid TenantPageReqVO pageVO) {
PageResult<SysTenantDO> pageResult = tenantService.getTenantPage(pageVO);
PageResult<TenantDO> pageResult = tenantService.getTenantPage(pageVO);
return success(TenantConvert.INSTANCE.convertPage(pageResult));
}
@ -96,7 +96,7 @@ public class TenantController {
@OperateLog(type = EXPORT)
public void exportTenantExcel(@Valid TenantExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<SysTenantDO> list = tenantService.getTenantList(exportReqVO);
List<TenantDO> list = tenantService.getTenantList(exportReqVO);
// 导出 Excel
List<TenantExcelVO> datas = TenantConvert.INSTANCE.convertList02(list);
ExcelUtils.write(response, "租户.xls", "数据", TenantExcelVO.class, datas);

View File

@ -9,7 +9,7 @@ import java.util.Date;
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@ApiModel(value = "管理后台 - 租户 Excel 导出 Request VO", description = "参数和 SysTenantPageReqVO 是一致的")
@ApiModel(value = "管理后台 - 租户 Excel 导出 Request VO", description = "参数和 TenantPageReqVO 是一致的")
@Data
public class TenantExportReqVO {

View File

@ -3,11 +3,11 @@ package cn.iocoder.yudao.module.system.controller.admin.user;
import cn.hutool.core.collection.CollUtil;
import cn.iocoder.yudao.module.system.controller.admin.user.vo.user.*;
import cn.iocoder.yudao.module.system.convert.user.UserConvert;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.DeptDO;
import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
import cn.iocoder.yudao.module.system.service.dept.DeptService;
import cn.iocoder.yudao.module.system.service.user.AdminUserService;
import cn.iocoder.yudao.module.system.enums.common.SysSexEnum;
import cn.iocoder.yudao.module.system.enums.common.SexEnum;
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
@ -98,7 +98,7 @@ public class UserController {
// 获得拼接需要的数据
Collection<Long> deptIds = convertList(pageResult.getList(), AdminUserDO::getDeptId);
Map<Long, SysDeptDO> deptMap = deptService.getDeptMap(deptIds);
Map<Long, DeptDO> deptMap = deptService.getDeptMap(deptIds);
// 拼接结果返回
List<UserPageItemRespVO> userList = new ArrayList<>(pageResult.getList().size());
pageResult.getList().forEach(user -> {
@ -137,9 +137,9 @@ public class UserController {
// 获得拼接需要的数据
Collection<Long> deptIds = convertList(users, AdminUserDO::getDeptId);
Map<Long, SysDeptDO> deptMap = deptService.getDeptMap(deptIds);
Map<Long, DeptDO> deptMap = deptService.getDeptMap(deptIds);
Map<Long, AdminUserDO> deptLeaderUserMap = userService.getUserMap(
convertSet(deptMap.values(), SysDeptDO::getLeaderUserId));
convertSet(deptMap.values(), DeptDO::getLeaderUserId));
// 拼接数据
List<UserExcelVO> excelUsers = new ArrayList<>(users.size());
users.forEach(user -> {
@ -164,9 +164,9 @@ public class UserController {
// 手动创建导出 demo
List<UserImportExcelVO> list = Arrays.asList(
UserImportExcelVO.builder().username("yudao").deptId(1L).email("yudao@iocoder.cn").mobile("15601691300")
.nickname("芋道").status(CommonStatusEnum.ENABLE.getStatus()).sex(SysSexEnum.MALE.getSex()).build(),
.nickname("芋道").status(CommonStatusEnum.ENABLE.getStatus()).sex(SexEnum.MALE.getSex()).build(),
UserImportExcelVO.builder().username("yuanma").deptId(2L).email("yuanma@iocoder.cn").mobile("15601701300")
.nickname("源码").status(CommonStatusEnum.DISABLE.getStatus()).sex(SysSexEnum.FEMALE.getSex()).build()
.nickname("源码").status(CommonStatusEnum.DISABLE.getStatus()).sex(SexEnum.FEMALE.getSex()).build()
);
// 输出

View File

@ -5,16 +5,16 @@ import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfi
import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfileUpdatePasswordReqVO;
import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfileUpdateReqVO;
import cn.iocoder.yudao.module.system.convert.user.UserConvert;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.DeptDO;
import cn.iocoder.yudao.module.system.dal.dataobject.social.SocialUserDO;
import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
import cn.iocoder.yudao.module.system.service.dept.DeptService;
import cn.iocoder.yudao.module.system.service.dept.PostService;
import cn.iocoder.yudao.module.system.service.permission.PermissionService;
import cn.iocoder.yudao.module.system.service.permission.RoleService;
import cn.iocoder.yudao.module.system.service.user.AdminUserService;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysPostDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.PostDO;
import cn.iocoder.yudao.module.system.dal.dataobject.permission.RoleDO;
import cn.iocoder.yudao.module.system.dal.dataobject.social.SysSocialUserDO;
import cn.iocoder.yudao.module.system.service.social.SocialUserService;
import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
import cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil;
@ -67,16 +67,16 @@ public class UserProfileController {
resp.setRoles(UserConvert.INSTANCE.convertList(userRoles));
// 获得部门信息
if (user.getDeptId() != null) {
SysDeptDO dept = deptService.getDept(user.getDeptId());
DeptDO dept = deptService.getDept(user.getDeptId());
resp.setDept(UserConvert.INSTANCE.convert02(dept));
}
// 获得岗位信息
if (CollUtil.isNotEmpty(user.getPostIds())) {
List<SysPostDO> posts = postService.getPosts(user.getPostIds());
List<PostDO> posts = postService.getPosts(user.getPostIds());
resp.setPosts(UserConvert.INSTANCE.convertList02(posts));
}
// 获得社交用户信息
List<SysSocialUserDO> socialUsers = socialService.getSocialUserList(user.getId(), UserTypeEnum.ADMIN.getValue());
List<SocialUserDO> socialUsers = socialService.getSocialUserList(user.getId(), UserTypeEnum.ADMIN.getValue());
resp.setSocialUsers(UserConvert.INSTANCE.convertList03(socialUsers));
return success(resp);
}

View File

@ -22,7 +22,7 @@ public class UserProfileRespVO extends UserBaseVO {
@ApiModelProperty(value = "用户编号", required = true, example = "1")
private Long id;
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
@ApiModelProperty(value = "最后登录 IP", required = true, example = "192.168.1.1")
@ -93,7 +93,7 @@ public class UserProfileRespVO extends UserBaseVO {
@Data
public static class SocialUser {
@ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 SysSocialTypeEnum 枚举类")
@ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 SocialTypeEnum 枚举类")
private Integer type;
@ApiModelProperty(value = "社交的全局编号", required = true, example = "IPRmJ0wvBptiPIlGEZiPewGwiEiE")

View File

@ -25,7 +25,7 @@ public class UserProfileUpdateReqVO {
@Length(min = 11, max = 11, message = "手机号长度必须 11 位")
private String mobile;
@ApiModelProperty(value = "用户性别", example = "1", notes = "参见 SysSexEnum 枚举类")
@ApiModelProperty(value = "用户性别", example = "1", notes = "参见 SexEnum 枚举类")
private Integer sex;
}

View File

@ -43,10 +43,10 @@ public class UserBaseVO {
@Length(min = 11, max = 11, message = "手机号长度必须 11 位")
private String mobile;
@ApiModelProperty(value = "用户性别", example = "1", notes = "参见 SysSexEnum 枚举类")
@ApiModelProperty(value = "用户性别", example = "1", notes = "参见 SexEnum 枚举类")
private Integer sex;
@ApiModelProperty(value = "用户头像", example = "http://www.iocoder.cn/xxx.png")
@ApiModelProperty(value = "用户头像", example = "https://www.iocoder.cn/xxx.png")
private String avatar;
}

View File

@ -11,7 +11,7 @@ import java.util.Date;
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@ApiModel(value = "管理后台 - 用户导出 Request VO", description = "参数和 SysUserPageReqVO 是一致的")
@ApiModel(value = "管理后台 - 用户导出 Request VO", description = "参数和 UserPageReqVO 是一致的")
@Data
@NoArgsConstructor
@AllArgsConstructor
@ -23,7 +23,7 @@ public class UserExportReqVO {
@ApiModelProperty(value = "手机号码", example = "yudao", notes = "模糊匹配")
private String mobile;
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
@ApiModelProperty(value = "开始时间", example = "2020-10-24")

View File

@ -26,7 +26,7 @@ public class UserPageReqVO extends PageParam {
@ApiModelProperty(value = "手机号码", example = "yudao", notes = "模糊匹配")
private String mobile;
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "展示状态", example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
@ApiModelProperty(value = "开始时间", example = "2020-10-24")

View File

@ -16,7 +16,7 @@ public class UserRespVO extends UserBaseVO {
@ApiModelProperty(value = "用户编号", required = true, example = "1")
private Long id;
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 CommonStatusEnum 枚举类")
private Integer status;
@ApiModelProperty(value = "最后登录 IP", required = true, example = "192.168.1.1")

View File

@ -14,9 +14,9 @@ public class UserUpdateStatusReqVO {
@NotNull(message = "角色编号不能为空")
private Long id;
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "SysCommonStatusEnum 枚举")
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "CommonStatusEnum 枚举")
@NotNull(message = "状态不能为空")
// @InEnum(value = SysCommonStatusEnum.class, message = "修改状态必须是 {value}")
// @InEnum(value = CommonStatusEnum.class, message = "修改状态必须是 {value}")
private Integer status;
}

View File

@ -1,7 +1,7 @@
package cn.iocoder.yudao.module.system.convert.auth;
import cn.iocoder.yudao.module.system.controller.admin.auth.vo.session.UserSessionPageItemRespVO;
import cn.iocoder.yudao.module.system.dal.dataobject.auth.SysUserSessionDO;
import cn.iocoder.yudao.module.system.dal.dataobject.auth.UserSessionDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
@ -10,6 +10,6 @@ public interface UserSessionConvert {
UserSessionConvert INSTANCE = Mappers.getMapper(UserSessionConvert.class);
UserSessionPageItemRespVO convert(SysUserSessionDO session);
UserSessionPageItemRespVO convert(UserSessionDO session);
}

View File

@ -4,7 +4,7 @@ import cn.iocoder.yudao.module.system.controller.admin.dept.vo.dept.DeptCreateRe
import cn.iocoder.yudao.module.system.controller.admin.dept.vo.dept.DeptRespVO;
import cn.iocoder.yudao.module.system.controller.admin.dept.vo.dept.DeptSimpleRespVO;
import cn.iocoder.yudao.module.system.controller.admin.dept.vo.dept.DeptUpdateReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.DeptDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
@ -15,14 +15,14 @@ public interface DeptConvert {
DeptConvert INSTANCE = Mappers.getMapper(DeptConvert.class);
List<DeptRespVO> convertList(List<SysDeptDO> list);
List<DeptRespVO> convertList(List<DeptDO> list);
List<DeptSimpleRespVO> convertList02(List<SysDeptDO> list);
List<DeptSimpleRespVO> convertList02(List<DeptDO> list);
DeptRespVO convert(SysDeptDO bean);
DeptRespVO convert(DeptDO bean);
SysDeptDO convert(DeptCreateReqVO bean);
DeptDO convert(DeptCreateReqVO bean);
SysDeptDO convert(DeptUpdateReqVO bean);
DeptDO convert(DeptUpdateReqVO bean);
}

View File

@ -2,7 +2,7 @@ package cn.iocoder.yudao.module.system.convert.dept;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.system.controller.admin.dept.vo.post.*;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysPostDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.PostDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
@ -13,16 +13,16 @@ public interface PostConvert {
PostConvert INSTANCE = Mappers.getMapper(PostConvert.class);
List<PostSimpleRespVO> convertList02(List<SysPostDO> list);
List<PostSimpleRespVO> convertList02(List<PostDO> list);
PageResult<PostRespVO> convertPage(PageResult<SysPostDO> page);
PageResult<PostRespVO> convertPage(PageResult<PostDO> page);
PostRespVO convert(SysPostDO id);
PostRespVO convert(PostDO id);
SysPostDO convert(PostCreateReqVO bean);
PostDO convert(PostCreateReqVO bean);
SysPostDO convert(PostUpdateReqVO reqVO);
PostDO convert(PostUpdateReqVO reqVO);
List<PostExcelVO> convertList03(List<SysPostDO> list);
List<PostExcelVO> convertList03(List<PostDO> list);
}

View File

@ -1,7 +1,7 @@
package cn.iocoder.yudao.module.system.convert.dict;
import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.*;
import cn.iocoder.yudao.module.system.dal.dataobject.dict.SysDictDataDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.dict.core.dto.DictDataRespDTO;
import org.mapstruct.Mapper;
@ -15,20 +15,20 @@ public interface DictDataConvert {
DictDataConvert INSTANCE = Mappers.getMapper(DictDataConvert.class);
List<DictDataSimpleRespVO> convertList(List<SysDictDataDO> list);
List<DictDataSimpleRespVO> convertList(List<DictDataDO> list);
DictDataRespVO convert(SysDictDataDO bean);
DictDataRespVO convert(DictDataDO bean);
PageResult<DictDataRespVO> convertPage(PageResult<SysDictDataDO> page);
PageResult<DictDataRespVO> convertPage(PageResult<DictDataDO> page);
SysDictDataDO convert(DictDataUpdateReqVO bean);
DictDataDO convert(DictDataUpdateReqVO bean);
SysDictDataDO convert(DictDataCreateReqVO bean);
DictDataDO convert(DictDataCreateReqVO bean);
List<DictDataExcelVO> convertList02(List<SysDictDataDO> bean);
List<DictDataExcelVO> convertList02(List<DictDataDO> bean);
DictDataRespDTO convert02(SysDictDataDO bean);
DictDataRespDTO convert02(DictDataDO bean);
List<DictDataRespDTO> convertList03(Collection<SysDictDataDO> list);
List<DictDataRespDTO> convertList03(Collection<DictDataDO> list);
}

View File

@ -1,20 +0,0 @@
package cn.iocoder.yudao.module.system.convert.dict;
import cn.iocoder.yudao.module.system.dal.dataobject.dict.SysDictDataDO;
import cn.iocoder.yudao.framework.dict.core.dto.DictDataRespDTO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
import java.util.Collection;
import java.util.List;
@Mapper
public interface SysDictDataCoreConvert {
SysDictDataCoreConvert INSTANCE = Mappers.getMapper(SysDictDataCoreConvert.class);
DictDataRespDTO convert02(SysDictDataDO bean);
List<DictDataRespDTO> convertList03(Collection<SysDictDataDO> list);
}

View File

@ -1,9 +1,10 @@
package cn.iocoder.yudao.module.system.convert.logger;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.system.api.logger.dto.LoginLogCreateReqDTO;
import cn.iocoder.yudao.module.system.controller.admin.logger.vo.loginlog.LoginLogExcelVO;
import cn.iocoder.yudao.module.system.controller.admin.logger.vo.loginlog.LoginLogRespVO;
import cn.iocoder.yudao.module.system.dal.dataobject.logger.SysLoginLogDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.system.dal.dataobject.logger.LoginLogDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
@ -14,8 +15,10 @@ public interface LoginLogConvert {
LoginLogConvert INSTANCE = Mappers.getMapper(LoginLogConvert.class);
PageResult<LoginLogRespVO> convertPage(PageResult<SysLoginLogDO> page);
PageResult<LoginLogRespVO> convertPage(PageResult<LoginLogDO> page);
List<LoginLogExcelVO> convertList(List<SysLoginLogDO> list);
List<LoginLogExcelVO> convertList(List<LoginLogDO> list);
LoginLogDO convert(LoginLogCreateReqDTO bean);
}

View File

@ -1,15 +0,0 @@
package cn.iocoder.yudao.module.system.convert.logger;
import cn.iocoder.yudao.module.system.dal.dataobject.logger.SysLoginLogDO;
import cn.iocoder.yudao.module.system.api.logger.dto.LoginLogCreateReqDTO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
@Mapper
public interface SysLoginLogCoreConvert {
SysLoginLogCoreConvert INSTANCE = Mappers.getMapper(SysLoginLogCoreConvert.class);
SysLoginLogDO convert(LoginLogCreateReqDTO bean);
}

View File

@ -4,7 +4,7 @@ import cn.iocoder.yudao.module.system.controller.admin.sms.vo.channel.SmsChannel
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.channel.SmsChannelRespVO;
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.channel.SmsChannelSimpleRespVO;
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.channel.SmsChannelUpdateReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.sms.SysSmsChannelDO;
import cn.iocoder.yudao.module.system.dal.dataobject.sms.SmsChannelDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.sms.core.property.SmsChannelProperties;
import org.mapstruct.Mapper;
@ -22,18 +22,18 @@ public interface SmsChannelConvert {
SmsChannelConvert INSTANCE = Mappers.getMapper(SmsChannelConvert.class);
SysSmsChannelDO convert(SmsChannelCreateReqVO bean);
SmsChannelDO convert(SmsChannelCreateReqVO bean);
SysSmsChannelDO convert(SmsChannelUpdateReqVO bean);
SmsChannelDO convert(SmsChannelUpdateReqVO bean);
SmsChannelRespVO convert(SysSmsChannelDO bean);
SmsChannelRespVO convert(SmsChannelDO bean);
List<SmsChannelRespVO> convertList(List<SysSmsChannelDO> list);
List<SmsChannelRespVO> convertList(List<SmsChannelDO> list);
PageResult<SmsChannelRespVO> convertPage(PageResult<SysSmsChannelDO> page);
PageResult<SmsChannelRespVO> convertPage(PageResult<SmsChannelDO> page);
List<SmsChannelProperties> convertList02(List<SysSmsChannelDO> list);
List<SmsChannelProperties> convertList02(List<SmsChannelDO> list);
List<SmsChannelSimpleRespVO> convertList03(List<SysSmsChannelDO> list);
List<SmsChannelSimpleRespVO> convertList03(List<SmsChannelDO> list);
}

View File

@ -1,8 +1,8 @@
package cn.iocoder.yudao.module.system.convert.sms;
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.log.SmsLogExcelVO;
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.log.SysSmsLogRespVO;
import cn.iocoder.yudao.module.system.dal.dataobject.sms.SysSmsLogDO;
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.log.SmsLogRespVO;
import cn.iocoder.yudao.module.system.dal.dataobject.sms.SmsLogDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
@ -19,12 +19,12 @@ public interface SmsLogConvert {
SmsLogConvert INSTANCE = Mappers.getMapper(SmsLogConvert.class);
SysSmsLogRespVO convert(SysSmsLogDO bean);
SmsLogRespVO convert(SmsLogDO bean);
List<SysSmsLogRespVO> convertList(List<SysSmsLogDO> list);
List<SmsLogRespVO> convertList(List<SmsLogDO> list);
PageResult<SysSmsLogRespVO> convertPage(PageResult<SysSmsLogDO> page);
PageResult<SmsLogRespVO> convertPage(PageResult<SmsLogDO> page);
List<SmsLogExcelVO> convertList02(List<SysSmsLogDO> list);
List<SmsLogExcelVO> convertList02(List<SmsLogDO> list);
}

View File

@ -4,7 +4,7 @@ import cn.iocoder.yudao.module.system.controller.admin.sms.vo.template.SmsTempla
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.template.SmsTemplateExcelVO;
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.template.SmsTemplateRespVO;
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.template.SmsTemplateUpdateReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.sms.SysSmsTemplateDO;
import cn.iocoder.yudao.module.system.dal.dataobject.sms.SmsTemplateDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
@ -16,16 +16,16 @@ public interface SmsTemplateConvert {
SmsTemplateConvert INSTANCE = Mappers.getMapper(SmsTemplateConvert.class);
SysSmsTemplateDO convert(SmsTemplateCreateReqVO bean);
SmsTemplateDO convert(SmsTemplateCreateReqVO bean);
SysSmsTemplateDO convert(SmsTemplateUpdateReqVO bean);
SmsTemplateDO convert(SmsTemplateUpdateReqVO bean);
SmsTemplateRespVO convert(SysSmsTemplateDO bean);
SmsTemplateRespVO convert(SmsTemplateDO bean);
List<SmsTemplateRespVO> convertList(List<SysSmsTemplateDO> list);
List<SmsTemplateRespVO> convertList(List<SmsTemplateDO> list);
PageResult<SmsTemplateRespVO> convertPage(PageResult<SysSmsTemplateDO> page);
PageResult<SmsTemplateRespVO> convertPage(PageResult<SmsTemplateDO> page);
List<SmsTemplateExcelVO> convertList02(List<SysSmsTemplateDO> list);
List<SmsTemplateExcelVO> convertList02(List<SmsTemplateDO> list);
}

View File

@ -4,7 +4,7 @@ import cn.iocoder.yudao.module.system.controller.admin.tenant.vo.TenantCreateReq
import cn.iocoder.yudao.module.system.controller.admin.tenant.vo.TenantExcelVO;
import cn.iocoder.yudao.module.system.controller.admin.tenant.vo.TenantRespVO;
import cn.iocoder.yudao.module.system.controller.admin.tenant.vo.TenantUpdateReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.tenant.SysTenantDO;
import cn.iocoder.yudao.module.system.dal.dataobject.tenant.TenantDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
@ -21,16 +21,16 @@ public interface TenantConvert {
TenantConvert INSTANCE = Mappers.getMapper(TenantConvert.class);
SysTenantDO convert(TenantCreateReqVO bean);
TenantDO convert(TenantCreateReqVO bean);
SysTenantDO convert(TenantUpdateReqVO bean);
TenantDO convert(TenantUpdateReqVO bean);
TenantRespVO convert(SysTenantDO bean);
TenantRespVO convert(TenantDO bean);
List<TenantRespVO> convertList(List<SysTenantDO> list);
List<TenantRespVO> convertList(List<TenantDO> list);
PageResult<TenantRespVO> convertPage(PageResult<SysTenantDO> page);
PageResult<TenantRespVO> convertPage(PageResult<TenantDO> page);
List<TenantExcelVO> convertList02(List<SysTenantDO> list);
List<TenantExcelVO> convertList02(List<TenantDO> list);
}

View File

@ -4,10 +4,10 @@ import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfi
import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfileUpdatePasswordReqVO;
import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfileUpdateReqVO;
import cn.iocoder.yudao.module.system.controller.admin.user.vo.user.*;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysPostDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.DeptDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.PostDO;
import cn.iocoder.yudao.module.system.dal.dataobject.permission.RoleDO;
import cn.iocoder.yudao.module.system.dal.dataobject.social.SysSocialUserDO;
import cn.iocoder.yudao.module.system.dal.dataobject.social.SocialUserDO;
import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
@ -21,7 +21,7 @@ public interface UserConvert {
UserPageItemRespVO convert(AdminUserDO bean);
UserPageItemRespVO.Dept convert(SysDeptDO bean);
UserPageItemRespVO.Dept convert(DeptDO bean);
AdminUserDO convert(UserCreateReqVO bean);
@ -35,15 +35,15 @@ public interface UserConvert {
List<UserProfileRespVO.Role> convertList(List<RoleDO> list);
UserProfileRespVO.Dept convert02(SysDeptDO bean);
UserProfileRespVO.Dept convert02(DeptDO bean);
AdminUserDO convert(UserProfileUpdateReqVO bean);
AdminUserDO convert(UserProfileUpdatePasswordReqVO bean);
List<UserProfileRespVO.Post> convertList02(List<SysPostDO> list);
List<UserProfileRespVO.Post> convertList02(List<PostDO> list);
List<UserProfileRespVO.SocialUser> convertList03(List<SysSocialUserDO> list);
List<UserProfileRespVO.SocialUser> convertList03(List<SocialUserDO> list);
List<UserSimpleRespVO> convertList04(List<AdminUserDO> list);
}

View File

@ -17,15 +17,15 @@ import java.util.Date;
*
* 我们已经将 {@link LoginUser} 缓存在 Redis 当中
* 这里额外存储在线用户到 MySQL 目的是为了方便管理界面可以灵活查询
* 同时通过定时轮询 SysUserSessionDO 可以主动删除 Redis 的缓存因为 Redis 的过期删除是延迟的
* 同时通过定时轮询 UserSessionDO 可以主动删除 Redis 的缓存因为 Redis 的过期删除是延迟的
*
* @author 芋道源码
*/
@TableName(value = "sys_user_session", autoResultMap = true)
@TableName(value = "system_user_session", autoResultMap = true)
@Data
@Builder
@EqualsAndHashCode(callSuper = true)
public class SysUserSessionDO extends TenantBaseDO {
public class UserSessionDO extends TenantBaseDO {
/**
* 会话编号, sessionId
@ -35,7 +35,7 @@ public class SysUserSessionDO extends TenantBaseDO {
/**
* 用户编号
*
* 关联 SysUserDO.id 或者 MbrUserDO.id
* 关联 AdminUserDO.id 或者 MemberUserDO.id
*/
private Long userId;
/**

View File

@ -14,10 +14,10 @@ import lombok.EqualsAndHashCode;
* @author ruoyi
* @author 芋道源码
*/
@TableName("sys_dept")
@TableName("system_dept")
@Data
@EqualsAndHashCode(callSuper = true)
public class SysDeptDO extends TenantBaseDO {
public class DeptDO extends TenantBaseDO {
/**
* 部门ID

View File

@ -12,10 +12,10 @@ import lombok.EqualsAndHashCode;
*
* @author ruoyi
*/
@TableName("sys_post")
@TableName("system_post")
@Data
@EqualsAndHashCode(callSuper = true)
public class SysPostDO extends TenantBaseDO {
public class PostDO extends TenantBaseDO {
/**
* 岗位序号

View File

@ -12,10 +12,10 @@ import lombok.EqualsAndHashCode;
*
* @author ruoyi
*/
@TableName("sys_dict_data")
@TableName("system_dict_data")
@Data
@EqualsAndHashCode(callSuper = true)
public class SysDictDataDO extends BaseDO {
public class DictDataDO extends BaseDO {
/**
* 字典数据编号
@ -37,7 +37,7 @@ public class SysDictDataDO extends BaseDO {
/**
* 字典类型
*
* 冗余 {@link SysDictDataDO#getDictType()}
* 冗余 {@link DictDataDO#getDictType()}
*/
private String dictType;
/**

View File

@ -16,11 +16,11 @@ import lombok.ToString;
*
* @author 芋道源码
*/
@TableName("sys_login_log")
@TableName("system_login_log")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class SysLoginLogDO extends BaseDO {
public class LoginLogDO extends BaseDO {
/**
* 日志主键

View File

@ -34,7 +34,7 @@ public class MenuDO extends BaseDO {
* 一般格式为${系统}:${模块}:${操作}
* 例如说system:admin:add system 服务的添加管理员
*
* 当我们把该 SysMenuDO 赋予给角色后意味着该角色有该资源
* 当我们把该 MenuDO 赋予给角色后意味着该角色有该资源
* - 对于后端配合 @PreAuthorize 注解配置 API 接口需要该权限从而对 API 接口进行权限控制
* - 对于前端配合前端标签配置按钮是否展示避免用户没有该权限时结果可以看到该操作
*/

View File

@ -14,11 +14,11 @@ import lombok.ToString;
* @author zzf
* @since 2021-01-25
*/
@TableName(value = "sys_sms_channel", autoResultMap = true)
@TableName(value = "system_sms_channel", autoResultMap = true)
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class SysSmsChannelDO extends BaseDO {
public class SmsChannelDO extends BaseDO {
/**
* 渠道编号

View File

@ -1,7 +1,7 @@
package cn.iocoder.yudao.module.system.dal.dataobject.sms;
import cn.iocoder.yudao.module.system.enums.sms.SysSmsReceiveStatusEnum;
import cn.iocoder.yudao.module.system.enums.sms.SysSmsSendStatusEnum;
import cn.iocoder.yudao.module.system.enums.sms.SmsReceiveStatusEnum;
import cn.iocoder.yudao.module.system.enums.sms.SmsSendStatusEnum;
import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import cn.iocoder.yudao.framework.sms.core.enums.SmsFrameworkErrorCodeConstants;
@ -19,14 +19,14 @@ import java.util.Map;
* @author zzf
* @since 2021-01-25
*/
@TableName(value = "sys_sms_log", autoResultMap = true)
@TableName(value = "system_sms_log", autoResultMap = true)
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class SysSmsLogDO extends BaseDO {
public class SmsLogDO extends BaseDO {
/**
* 自增编号
@ -38,13 +38,13 @@ public class SysSmsLogDO extends BaseDO {
/**
* 短信渠道编号
*
* 关联 {@link SysSmsChannelDO#getId()}
* 关联 {@link SmsChannelDO#getId()}
*/
private Long channelId;
/**
* 短信渠道编码
*
* 冗余 {@link SysSmsChannelDO#getCode()}
* 冗余 {@link SmsChannelDO#getCode()}
*/
private String channelCode;
@ -53,34 +53,34 @@ public class SysSmsLogDO extends BaseDO {
/**
* 模板编号
*
* 关联 {@link SysSmsTemplateDO#getId()}
* 关联 {@link SmsTemplateDO#getId()}
*/
private Long templateId;
/**
* 模板编码
*
* 冗余 {@link SysSmsTemplateDO#getCode()}
* 冗余 {@link SmsTemplateDO#getCode()}
*/
private String templateCode;
/**
* 短信类型
*
* 冗余 {@link SysSmsTemplateDO#getType()}
* 冗余 {@link SmsTemplateDO#getType()}
*/
private Integer templateType;
/**
* 基于 {@link SysSmsTemplateDO#getContent()} 格式化后的内容
* 基于 {@link SmsTemplateDO#getContent()} 格式化后的内容
*/
private String templateContent;
/**
* 基于 {@link SysSmsTemplateDO#getParams()} 输入后的参数
* 基于 {@link SmsTemplateDO#getParams()} 输入后的参数
*/
@TableField(typeHandler = JacksonTypeHandler.class)
private Map<String, Object> templateParams;
/**
* 短信 API 的模板编号
*
* 冗余 {@link SysSmsTemplateDO#getApiTemplateId()}
* 冗余 {@link SmsTemplateDO#getApiTemplateId()}
*/
private String apiTemplateId;
@ -106,7 +106,7 @@ public class SysSmsLogDO extends BaseDO {
/**
* 发送状态
*
* 枚举 {@link SysSmsSendStatusEnum}
* 枚举 {@link SmsSendStatusEnum}
*/
private Integer sendStatus;
/**
@ -154,7 +154,7 @@ public class SysSmsLogDO extends BaseDO {
/**
* 接收状态
*
* 枚举 {@link SysSmsReceiveStatusEnum}
* 枚举 {@link SmsReceiveStatusEnum}
*/
private Integer receiveStatus;
/**

View File

@ -1,6 +1,6 @@
package cn.iocoder.yudao.module.system.dal.dataobject.sms;
import cn.iocoder.yudao.module.system.enums.sms.SysSmsTemplateTypeEnum;
import cn.iocoder.yudao.module.system.enums.sms.SmsTemplateTypeEnum;
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.TableField;
@ -18,11 +18,11 @@ import java.util.List;
* @author zzf
* @since 2021-01-25
*/
@TableName(value = "sys_sms_template", autoResultMap = true)
@TableName(value = "system_sms_template", autoResultMap = true)
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class SysSmsTemplateDO extends BaseDO {
public class SmsTemplateDO extends BaseDO {
/**
* 自增编号
@ -34,7 +34,7 @@ public class SysSmsTemplateDO extends BaseDO {
/**
* 短信类型
*
* 枚举 {@link SysSmsTemplateTypeEnum}
* 枚举 {@link SmsTemplateTypeEnum}
*/
private Integer type;
/**
@ -76,13 +76,13 @@ public class SysSmsTemplateDO extends BaseDO {
/**
* 短信渠道编号
*
* 关联 {@link SysSmsChannelDO#getId()}
* 关联 {@link SmsChannelDO#getId()}
*/
private Long channelId;
/**
* 短信渠道编码
*
* 冗余 {@link SysSmsChannelDO#getCode()}
* 冗余 {@link SmsChannelDO#getCode()}
*/
private String channelCode;

View File

@ -9,17 +9,17 @@ import lombok.*;
/**
* 社交用户
* 通过 {@link SysSocialUserDO#getUserId()} 关联到对应的 {@link AdminUserDO}
* 通过 {@link SocialUserDO#getUserId()} 关联到对应的 {@link AdminUserDO}
*
* @author weir
*/
@TableName(value = "sys_social_user", autoResultMap = true)
@TableName(value = "system_social_user", autoResultMap = true)
@Data
@EqualsAndHashCode(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SysSocialUserDO extends BaseDO {
public class SocialUserDO extends BaseDO {
/**
* 自增主键

View File

@ -10,14 +10,14 @@ import lombok.*;
*
* @author 芋道源码
*/
@TableName(value = "sys_tenant", autoResultMap = true)
@TableName(value = "system_tenant", autoResultMap = true)
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class SysTenantDO extends BaseDO {
public class TenantDO extends BaseDO {
/**
* 租户编号自增

View File

@ -1,6 +1,6 @@
package cn.iocoder.yudao.module.system.dal.dataobject.user;
import cn.iocoder.yudao.module.system.enums.common.SysSexEnum;
import cn.iocoder.yudao.module.system.enums.common.SexEnum;
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
import cn.iocoder.yudao.framework.mybatis.core.type.JsonLongSetTypeHandler;
import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO;
@ -18,7 +18,7 @@ import java.util.Set;
*
* @author 芋道源码
*/
@TableName(value = "sys_user", autoResultMap = true)
@TableName(value = "system_user", autoResultMap = true)
@Data
@EqualsAndHashCode(callSuper = true)
@Builder
@ -69,7 +69,7 @@ public class AdminUserDO extends TenantBaseDO {
/**
* 用户性别
*
* 枚举类 {@link SysSexEnum}
* 枚举类 {@link SexEnum}
*/
private Integer sex;
/**

View File

@ -1,10 +0,0 @@
package cn.iocoder.yudao.module.system.dal.mysql.auth;
import cn.iocoder.yudao.module.system.dal.dataobject.auth.SysUserSessionDO;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface SysUserSessionCoreMapper extends BaseMapperX<SysUserSessionDO> {
}

View File

@ -1,7 +1,7 @@
package cn.iocoder.yudao.module.system.dal.mysql.auth;
import cn.iocoder.yudao.module.system.controller.admin.auth.vo.session.UserSessionPageReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.auth.SysUserSessionDO;
import cn.iocoder.yudao.module.system.dal.dataobject.auth.UserSessionDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.QueryWrapperX;
@ -12,16 +12,16 @@ import java.util.Date;
import java.util.List;
@Mapper
public interface SysUserSessionMapper extends BaseMapperX<SysUserSessionDO> {
public interface UserSessionMapper extends BaseMapperX<UserSessionDO> {
default PageResult<SysUserSessionDO> selectPage(UserSessionPageReqVO reqVO, Collection<Long> userIds) {
return selectPage(reqVO, new QueryWrapperX<SysUserSessionDO>()
default PageResult<UserSessionDO> selectPage(UserSessionPageReqVO reqVO, Collection<Long> userIds) {
return selectPage(reqVO, new QueryWrapperX<UserSessionDO>()
.inIfPresent("user_id", userIds)
.likeIfPresent("user_ip", reqVO.getUserIp()));
}
default List<SysUserSessionDO> selectListBySessionTimoutLt() {
return selectList(new QueryWrapperX<SysUserSessionDO>().lt("session_timeout",new Date()));
default List<UserSessionDO> selectListBySessionTimoutLt() {
return selectList(new QueryWrapperX<UserSessionDO>().lt("session_timeout",new Date()));
}
}

View File

@ -4,7 +4,7 @@ import cn.iocoder.yudao.framework.mybatis.core.enums.SqlConstants;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.system.controller.admin.dept.vo.dept.DeptListReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.DeptDO;
import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.apache.ibatis.annotations.Mapper;
@ -13,26 +13,26 @@ import java.util.Date;
import java.util.List;
@Mapper
public interface SysDeptMapper extends BaseMapperX<SysDeptDO> {
public interface DeptMapper extends BaseMapperX<DeptDO> {
default List<SysDeptDO> selectList(DeptListReqVO reqVO) {
return selectList(new LambdaQueryWrapperX<SysDeptDO>().likeIfPresent(SysDeptDO::getName, reqVO.getName())
.eqIfPresent(SysDeptDO::getStatus, reqVO.getStatus()));
default List<DeptDO> selectList(DeptListReqVO reqVO) {
return selectList(new LambdaQueryWrapperX<DeptDO>().likeIfPresent(DeptDO::getName, reqVO.getName())
.eqIfPresent(DeptDO::getStatus, reqVO.getStatus()));
}
default SysDeptDO selectByParentIdAndName(Long parentId, String name) {
return selectOne(new LambdaQueryWrapper<SysDeptDO>().eq(SysDeptDO::getParentId, parentId)
.eq(SysDeptDO::getName, name));
default DeptDO selectByParentIdAndName(Long parentId, String name) {
return selectOne(new LambdaQueryWrapper<DeptDO>().eq(DeptDO::getParentId, parentId)
.eq(DeptDO::getName, name));
}
default Integer selectCountByParentId(Long parentId) {
return selectCount(SysDeptDO::getParentId, parentId);
return selectCount(DeptDO::getParentId, parentId);
}
@InterceptorIgnore(tenantLine = "on") // 该方法忽略多租户原因该方法被异步 task 调用此时获取不到租户编号
default boolean selectExistsByUpdateTimeAfter(Date maxUpdateTime) {
return selectOne(new LambdaQueryWrapper<SysDeptDO>().select(SysDeptDO::getId)
.gt(SysDeptDO::getUpdateTime, maxUpdateTime).last(SqlConstants.LIMIT1)) != null;
return selectOne(new LambdaQueryWrapper<DeptDO>().select(DeptDO::getId)
.gt(DeptDO::getUpdateTime, maxUpdateTime).last(SqlConstants.LIMIT1)) != null;
}
}

View File

@ -5,7 +5,7 @@ import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.QueryWrapperX;
import cn.iocoder.yudao.module.system.controller.admin.dept.vo.post.PostExportReqVO;
import cn.iocoder.yudao.module.system.controller.admin.dept.vo.post.PostPageReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysPostDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.PostDO;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.apache.ibatis.annotations.Mapper;
@ -13,33 +13,33 @@ import java.util.Collection;
import java.util.List;
@Mapper
public interface SysPostMapper extends BaseMapperX<SysPostDO> {
public interface PostMapper extends BaseMapperX<PostDO> {
default List<SysPostDO> selectList(Collection<Long> ids, Collection<Integer> statuses) {
return selectList(new QueryWrapperX<SysPostDO>().inIfPresent("id", ids)
default List<PostDO> selectList(Collection<Long> ids, Collection<Integer> statuses) {
return selectList(new QueryWrapperX<PostDO>().inIfPresent("id", ids)
.inIfPresent("status", statuses));
}
default PageResult<SysPostDO> selectPage(PostPageReqVO reqVO) {
return selectPage(reqVO, new QueryWrapperX<SysPostDO>()
default PageResult<PostDO> selectPage(PostPageReqVO reqVO) {
return selectPage(reqVO, new QueryWrapperX<PostDO>()
.likeIfPresent("code", reqVO.getCode())
.likeIfPresent("name", reqVO.getName())
.eqIfPresent("status", reqVO.getStatus()));
}
default List<SysPostDO> selectList(PostExportReqVO reqVO) {
return selectList(new QueryWrapperX<SysPostDO>()
default List<PostDO> selectList(PostExportReqVO reqVO) {
return selectList(new QueryWrapperX<PostDO>()
.likeIfPresent("code", reqVO.getCode())
.likeIfPresent("name", reqVO.getName())
.eqIfPresent("status", reqVO.getStatus()));
}
default SysPostDO selectByName(String name) {
return selectOne(new QueryWrapper<SysPostDO>().eq("name", name));
default PostDO selectByName(String name) {
return selectOne(new QueryWrapper<PostDO>().eq("name", name));
}
default SysPostDO selectByCode(String code) {
return selectOne(new QueryWrapper<SysPostDO>().eq("code", code));
default PostDO selectByCode(String code) {
return selectOne(new QueryWrapper<PostDO>().eq("code", code));
}
}

View File

@ -1,9 +0,0 @@
package cn.iocoder.yudao.module.system.dal.mysql.dept;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface SysDeptCoreMapper extends BaseMapperX<SysDeptDO> {
}

View File

@ -1,9 +0,0 @@
package cn.iocoder.yudao.module.system.dal.mysql.dept;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysPostDO;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface SysPostCoreMapper extends BaseMapperX<SysPostDO> {
}

Some files were not shown because too many files have changed in this diff Show More