|
@@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.gis.admin.entity.dto.ResetPasswordDto;
|
|
|
+import com.gis.admin.entity.vo.UserKeyVo;
|
|
|
import com.gis.common.base.entity.dto.PageDateDto;
|
|
|
+import com.gis.common.base.entity.dto.PageDto;
|
|
|
import com.gis.common.base.exception.BaseRuntimeException;
|
|
|
//import com.gis.common.base.service.LogService;
|
|
|
//import com.gis.common.base.service.impl.MyBaseServiceImpl;
|
|
@@ -20,6 +22,7 @@ import com.gis.admin.mapper.SysUserMapper;
|
|
|
import com.gis.admin.service.SysUserService;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
+import org.apache.ibatis.annotations.Param;
|
|
|
import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
@@ -28,6 +31,7 @@ import javax.servlet.http.HttpServletRequest;
|
|
|
import java.time.LocalDateTime;
|
|
|
import java.util.Arrays;
|
|
|
import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
|
|
|
|
|
@@ -36,7 +40,7 @@ import java.util.concurrent.TimeUnit;
|
|
|
*/
|
|
|
@Slf4j
|
|
|
@Service
|
|
|
-public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity> implements SysUserService {
|
|
|
+public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity> implements SysUserService {
|
|
|
|
|
|
@Autowired
|
|
|
private SysUserMapper entityMapper;
|
|
@@ -50,11 +54,15 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity
|
|
|
@Autowired
|
|
|
IBaseService baseService;
|
|
|
|
|
|
- /**redis 用户名*/
|
|
|
+ /**
|
|
|
+ * redis 用户名
|
|
|
+ */
|
|
|
final static String USER_KEY = "user:";
|
|
|
|
|
|
|
|
|
- /**重置密码redis key*/
|
|
|
+ /**
|
|
|
+ * 重置密码redis key
|
|
|
+ */
|
|
|
final static String RESET_PASSWORD_KEY = "reset:password:";
|
|
|
|
|
|
|
|
@@ -68,8 +76,8 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity
|
|
|
public SysUserEntity cacheByUserName(String userName) {
|
|
|
SysUserEntity entity;
|
|
|
String userKey = USER_KEY + userName;
|
|
|
- if (redisUtil.hasKey(userKey)){
|
|
|
- entity = redisUtil.getCacheObject(userKey);
|
|
|
+ if (redisUtil.hasKey(userKey)) {
|
|
|
+ entity = redisUtil.getCacheObject(userKey);
|
|
|
} else {
|
|
|
entity = this.findByUserName(userName);
|
|
|
redisUtil.setCacheObject(userKey, entity, 5, TimeUnit.MINUTES);
|
|
@@ -81,8 +89,8 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity
|
|
|
public SysUserEntity cacheById(Long userId) {
|
|
|
SysUserEntity entity;
|
|
|
String userKey = USER_KEY + userId;
|
|
|
- if (redisUtil.hasKey(userKey)){
|
|
|
- entity = redisUtil.getCacheObject(userKey);
|
|
|
+ if (redisUtil.hasKey(userKey)) {
|
|
|
+ entity = redisUtil.getCacheObject(userKey);
|
|
|
} else {
|
|
|
entity = this.getById(userId);
|
|
|
redisUtil.setCacheObject(userKey, entity, 5, TimeUnit.MINUTES);
|
|
@@ -91,6 +99,31 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
+ public SysUserEntity findByUserKey(String key) {
|
|
|
+ LambdaQueryWrapper<SysUserEntity> wrapper = new LambdaQueryWrapper<>();
|
|
|
+ wrapper.eq(SysUserEntity::getUserKey, key);
|
|
|
+ wrapper.eq(SysUserEntity::getIsEnabled, 1);
|
|
|
+ return this.getOne(wrapper);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Result getUserKey(Long id) {
|
|
|
+ UserKeyVo entity = baseMapper.getUserKey(id);
|
|
|
+ return Result.success(entity);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Result testPage(PageDto param) {
|
|
|
+ BaseUtil.startPage(param);
|
|
|
+ IPage<Object> page = new Page<>(param.getPageNum() , param.getPageSize());
|
|
|
+ StringBuilder sql = new StringBuilder();
|
|
|
+ sql.append("select * from sys_project where creator_id=9 join select * from sys_table where creator_id=9");
|
|
|
+ IPage<Object> info = entityMapper.testPage(sql.toString(), page);
|
|
|
+ return Result.success(info);
|
|
|
+// return Result.success();
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
public Result authProject(String projectIds, String userId) {
|
|
|
baseMapper.setProjectId(projectIds, userId);
|
|
|
String userKey = USER_KEY + userId;
|
|
@@ -99,11 +132,9 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
-
|
|
|
@Override
|
|
|
public Result saveEntity(UserDto param) {
|
|
|
- SysUserEntity entity ;
|
|
|
+ SysUserEntity entity;
|
|
|
Long id = param.getId();
|
|
|
if (id == null) {
|
|
|
entity = this.findByUserName(param.getUserName());
|
|
@@ -115,7 +146,9 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity
|
|
|
entity.setIsAdmin(0);
|
|
|
entity.setPassword(PasswordUtils.encrypt(param.getUserName(), "123456", PasswordUtils.getStaticSalt()));
|
|
|
entity.setCreatorId(baseService.getUserId());
|
|
|
+ entity.setUserKey(EncryptUtils.getEncrypt(USER_KEY, entity.getUserName()));
|
|
|
this.save(entity);
|
|
|
+
|
|
|
} else {
|
|
|
entity = this.getById(id);
|
|
|
if (entity == null) {
|
|
@@ -131,11 +164,13 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity
|
|
|
return Result.success();
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
@Override
|
|
|
public Result removes(String ids) {
|
|
|
List<String> idList = Arrays.asList(ids);
|
|
|
List<SysUserEntity> entityList = this.listByIds(idList);
|
|
|
- for (SysUserEntity entity: entityList) {
|
|
|
+ for (SysUserEntity entity : entityList) {
|
|
|
Integer isAdmin = entity.getIsAdmin();
|
|
|
if (isAdmin == 1) {
|
|
|
log.error("管理员账户不能删除 {}", entity.getId());
|
|
@@ -151,17 +186,17 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity
|
|
|
public Result<SysUserEntity> search(PageDateDto param) {
|
|
|
BaseUtil.startPage(param);
|
|
|
|
|
|
- IPage<SysUserEntity> page = new Page<>(param.getPageNum() , param.getPageSize());
|
|
|
+ IPage<SysUserEntity> page = new Page<>(param.getPageNum(), param.getPageSize());
|
|
|
LambdaQueryWrapper<SysUserEntity> wrapper = new LambdaQueryWrapper<>();
|
|
|
|
|
|
String startTime = param.getStartTime();
|
|
|
String endTime = param.getEndTime();
|
|
|
- if (StringUtils.isNotBlank(startTime) || StringUtils.isNotBlank(endTime)){
|
|
|
+ if (StringUtils.isNotBlank(startTime) || StringUtils.isNotBlank(endTime)) {
|
|
|
wrapper.between(SysUserEntity::getCreateTime, startTime, endTime);
|
|
|
}
|
|
|
|
|
|
String searchKey = param.getSearchKey();
|
|
|
- if (StringUtils.isNotBlank(searchKey)){
|
|
|
+ if (StringUtils.isNotBlank(searchKey)) {
|
|
|
wrapper.like(SysUserEntity::getUserName, searchKey);
|
|
|
}
|
|
|
|
|
@@ -173,8 +208,6 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
-
|
|
|
@Override
|
|
|
public Result updatePwd(PasswordDto param) {
|
|
|
// 密码加密了,需要解密
|
|
@@ -187,9 +220,9 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity
|
|
|
return Result.success();
|
|
|
}
|
|
|
|
|
|
- private void updatePwd(PasswordDto param, SysUserEntity user, boolean flag){
|
|
|
+ private void updatePwd(PasswordDto param, SysUserEntity user, boolean flag) {
|
|
|
|
|
|
- if (flag){
|
|
|
+ if (flag) {
|
|
|
// 验证原密码
|
|
|
Boolean isBoolean = PasswordUtils.decrypt(user.getPassword(), param.getOldPassword(), PasswordUtils.getStaticSalt());
|
|
|
if (!isBoolean) {
|
|
@@ -269,7 +302,6 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
@Override
|
|
|
public Result<SysUserEntity> detail(Long id) {
|
|
|
SysUserEntity user = this.getById(id);
|
|
@@ -279,6 +311,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity
|
|
|
/**
|
|
|
* 不正确返回空
|
|
|
* 正确返回 code
|
|
|
+ *
|
|
|
* @param param
|
|
|
* @return
|
|
|
*/
|
|
@@ -303,5 +336,4 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
}
|