完善mongo登录逻辑

This commit is contained in:
WenG 2022-05-19 13:09:49 +08:00
parent 6f55b1b06b
commit 7b1e3a85f6
4 changed files with 66 additions and 3 deletions

View File

@ -2,6 +2,8 @@ package ink.wgink.interfaces.login.mongo;
import ink.wgink.pojo.pos.user.mongo.MongoUserPO;
import java.util.List;
/**
* @ClassName: IMongoLoginService
* @Description: mongo登录
@ -11,6 +13,20 @@ import ink.wgink.pojo.pos.user.mongo.MongoUserPO;
*/
public interface IMongoLoginService {
/**
* 刷新mongo
*
* @param userId
*/
void update(String userId);
/**
* 删除
*
* @param userIds
*/
void delete(List<String> userIds);
/**
* 用户详情
*

View File

@ -49,7 +49,7 @@ public class UserDetailServiceImpl implements UserDetailsService, IUserDetailChe
username = userInfo;
}
// 通过用户名查询
UserPO userPO = userService.getPOByUsername(username.toLowerCase());;
UserPO userPO = userService.getPOByUsername(username.toLowerCase());
if (null == userPO) {
throw new UserAuthenticationException("账号不存在");
}

View File

@ -18,6 +18,12 @@
<artifactId>spring-data-mongodb</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>ink.wgink</groupId>
<artifactId>service-user</artifactId>
<version>1.0-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>ink.wgink</groupId>
<artifactId>common</artifactId>

View File

@ -1,14 +1,25 @@
package ink.wgink.mongo.login.service.impl;
import ink.wgink.common.base.DefaultBaseService;
import ink.wgink.interfaces.department.IDepartmentUserBaseService;
import ink.wgink.interfaces.group.IGroupUserBaseService;
import ink.wgink.interfaces.login.mongo.IMongoLoginService;
import ink.wgink.interfaces.position.IPositionUserBaseService;
import ink.wgink.interfaces.role.IRoleMenuBaseService;
import ink.wgink.interfaces.role.IRolePermissionBaseService;
import ink.wgink.interfaces.role.IRoleUserBaseService;
import ink.wgink.pojo.pos.user.mongo.MongoUserPO;
import ink.wgink.service.user.pojo.pos.UserPO;
import ink.wgink.service.user.service.IUserService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @ClassName: MongoLoginServiceImpl
* @Description: mongo登录
@ -19,17 +30,47 @@ import org.springframework.stereotype.Service;
@Service
public class MongoLoginServiceImpl extends DefaultBaseService implements IMongoLoginService {
private static final String COLLECTION_NAME = "loginUser";
@Autowired
private MongoTemplate mongoTemplate;
@Autowired
private IUserService userService;
@Autowired(required = false)
private IDepartmentUserBaseService departmentUserBaseService;
@Autowired(required = false)
private IRoleUserBaseService roleUserBaseService;
@Autowired(required = false)
private IRoleMenuBaseService roleMenuBaseService;
@Autowired(required = false)
private IRolePermissionBaseService rolePermissionService;
@Autowired(required = false)
private IGroupUserBaseService groupUserBaseService;
@Autowired(required = false)
private IPositionUserBaseService positionUserBaseService;
@Override
public void update(String userId) {
UserPO userPO = userService.getPO(userId);
MongoUserPO mongoUserPO = new MongoUserPO();
BeanUtils.copyProperties(userPO, mongoUserPO);
}
@Override
public void delete(List<String> userIds) {
}
@Override
public MongoUserPO getPO(String userId) {
return mongoTemplate.findOne(new Query().addCriteria(Criteria.where("userId").is(userId)), MongoUserPO.class);
return mongoTemplate.findOne(new Query().addCriteria(Criteria.where("userId").is(userId)), MongoUserPO.class, COLLECTION_NAME);
}
@Override
public MongoUserPO getPOByUsername(String username) {
return mongoTemplate.findOne(new Query().addCriteria(Criteria.where("userUsername").is(username)), MongoUserPO.class);
return mongoTemplate.findOne(new Query().addCriteria(Criteria.where("userUsername").is(username)), MongoUserPO.class, COLLECTION_NAME);
}
}