forked from github/dataease
feat: 优化修改初始密码提示
This commit is contained in:
parent
303056bf95
commit
e3fcb702c9
@ -30,6 +30,10 @@ public interface AuthApi {
|
||||
@PostMapping("/useInitPwd")
|
||||
Boolean useInitPwd();
|
||||
|
||||
@ApiOperation("不再提示修改密码")
|
||||
@PostMapping("/removeNoti")
|
||||
void removeNoti();
|
||||
|
||||
@ApiOperation("用户初始密码")
|
||||
@PostMapping("/defaultPwd")
|
||||
String defaultPwd();
|
||||
|
@ -158,7 +158,16 @@ public class AuthServer implements AuthApi {
|
||||
return false;
|
||||
}
|
||||
String md5 = CodingUtil.md5(DEFAULT_PWD);
|
||||
return StringUtils.equals(AuthUtils.getUser().getPassword(), md5);
|
||||
boolean isInitPwd = StringUtils.equals(AuthUtils.getUser().getPassword(), md5);
|
||||
if (isInitPwd) {
|
||||
return sysUserService.needPwdNoti(user.getUserId());
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeNoti() {
|
||||
sysUserService.saveUserAssist(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -0,0 +1,17 @@
|
||||
package io.dataease.ext;
|
||||
|
||||
import io.dataease.plugins.common.base.domain.SysUserAssist;
|
||||
import org.apache.ibatis.annotations.Insert;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
@Mapper
|
||||
public interface ExtSysUserAssistMapper {
|
||||
|
||||
@Insert("insert into sys_user_assist values(#{po.userId}, #{po.needFirstNoti})")
|
||||
void save(@Param("po") SysUserAssist po);
|
||||
|
||||
@Select("select * from sys_user_assist where user_id = #{userId}")
|
||||
SysUserAssist query(@Param("userId") Long userId);
|
||||
}
|
@ -2,6 +2,7 @@ package io.dataease.service.sys;
|
||||
|
||||
import io.dataease.auth.api.dto.CurrentUserDto;
|
||||
import io.dataease.auth.service.ExtAuthService;
|
||||
import io.dataease.ext.ExtSysUserAssistMapper;
|
||||
import io.dataease.ext.ExtSysUserMapper;
|
||||
import io.dataease.ext.query.GridExample;
|
||||
import io.dataease.commons.constants.AuthConstants;
|
||||
@ -16,10 +17,7 @@ import io.dataease.controller.sys.request.SysUserStateRequest;
|
||||
import io.dataease.controller.sys.response.SysUserGridResponse;
|
||||
import io.dataease.controller.sys.response.SysUserRole;
|
||||
import io.dataease.i18n.Translator;
|
||||
import io.dataease.plugins.common.base.domain.SysUser;
|
||||
import io.dataease.plugins.common.base.domain.SysUserExample;
|
||||
import io.dataease.plugins.common.base.domain.SysUsersRolesExample;
|
||||
import io.dataease.plugins.common.base.domain.SysUsersRolesKey;
|
||||
import io.dataease.plugins.common.base.domain.*;
|
||||
import io.dataease.plugins.common.base.mapper.SysUserMapper;
|
||||
import io.dataease.plugins.common.base.mapper.SysUsersRolesMapper;
|
||||
import io.dataease.plugins.common.entity.XpackLdapUserEntity;
|
||||
@ -28,7 +26,6 @@ import io.dataease.plugins.xpack.oidc.dto.SSOUserInfo;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.cache.annotation.CacheEvict;
|
||||
import org.springframework.stereotype.Service;
|
||||
@ -56,9 +53,12 @@ public class SysUserService {
|
||||
@Resource
|
||||
private ExtSysUserMapper extSysUserMapper;
|
||||
|
||||
@Autowired
|
||||
@Resource
|
||||
private ExtAuthService extAuthService;
|
||||
|
||||
@Resource
|
||||
private ExtSysUserAssistMapper extSysUserAssistMapper;
|
||||
|
||||
|
||||
public List<SysUserGridResponse> query(BaseGridRequest request) {
|
||||
|
||||
@ -435,5 +435,17 @@ public class SysUserService {
|
||||
}
|
||||
}
|
||||
|
||||
public boolean needPwdNoti(Long userId) {
|
||||
SysUserAssist userAssist = extSysUserAssistMapper.query(userId);
|
||||
return ObjectUtils.isEmpty(userAssist) || userAssist.getNeedFirstNoti();
|
||||
}
|
||||
|
||||
public void saveUserAssist(Boolean noti) {
|
||||
Long userId = AuthUtils.getUser().getUserId();
|
||||
SysUserAssist sysUserAssist = new SysUserAssist();
|
||||
sysUserAssist.setUserId(userId);
|
||||
sysUserAssist.setNeedFirstNoti(noti);
|
||||
extSysUserAssistMapper.save(sysUserAssist);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -58,3 +58,10 @@ INSERT INTO `sys_auth` (`id`, `auth_source`, `auth_source_type`, `auth_target`,
|
||||
INSERT INTO `sys_auth_detail` (`id`, `auth_id`, `privilege_name`, `privilege_type`, `privilege_value`, `privilege_extend`, `remark`, `create_user`, `create_time`, `update_time`, `copy_from`, `copy_id`) VALUES ('be90dc66-f5c7-11ec-bbef-0242ac130004', 'be9028cb-f5c7-11ec-bbef-0242ac130004', 'i18n_auth_grant', 15, 1, 'grant', '基础权限-授权', 'auto', 1656299878000, NULL, NULL, NULL);
|
||||
INSERT INTO `sys_auth_detail` (`id`, `auth_id`, `privilege_name`, `privilege_type`, `privilege_value`, `privilege_extend`, `remark`, `create_user`, `create_time`, `update_time`, `copy_from`, `copy_id`) VALUES ('be90ddbc-f5c7-11ec-bbef-0242ac130004', 'be9028cb-f5c7-11ec-bbef-0242ac130004', 'i18n_auth_manage', 3, 1, 'manage', '基础权限-管理', 'auto', 1656299878000, NULL, NULL, NULL);
|
||||
INSERT INTO `sys_auth_detail` (`id`, `auth_id`, `privilege_name`, `privilege_type`, `privilege_value`, `privilege_extend`, `remark`, `create_user`, `create_time`, `update_time`, `copy_from`, `copy_id`) VALUES ('be911f44-f5c7-11ec-bbef-0242ac130004', 'be9028cb-f5c7-11ec-bbef-0242ac130004', 'i18n_auth_use', 1, 1, 'use', '基础权限-使用', 'auto', 1656299878000, NULL, NULL, NULL);
|
||||
|
||||
DROP TABLE IF EXISTS `sys_user_assist`;
|
||||
CREATE TABLE `sys_user_assist` (
|
||||
`user_id` bigint(20) NOT NULL COMMENT '用户ID',
|
||||
`need_first_noti` bit(1) DEFAULT NULL COMMENT '是否需要首登提示',
|
||||
PRIMARY KEY (`user_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE utf8mb4_general_ci;
|
||||
|
Loading…
Reference in New Issue
Block a user