You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

55 lines
1.8 KiB

package com.community.pocket.repository;
import com.community.pocket.domain.Manager;
import com.community.pocket.domain.form.ManagerLogin;
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.Repository;
import org.springframework.util.DigestUtils;
@Repository
public class ManagerDao {
@Autowired
private MongoTemplate mongoTemplate;
// 登陆
public boolean login(ManagerLogin managerLogin){
// 构造查询管理员条件
Criteria criteria=Criteria.where("managerName").is(managerLogin.getManagerName());
try {
// 查询管理员
Manager manager= mongoTemplate.findOne(new Query(criteria), Manager.class);
//查询出来的管理员非空,并且管理员名和MD5(密码)匹配返回true
return manager!=null&&manager.getManagerName().equals(managerLogin.getManagerName())&&manager.getPassword().equals(DigestUtils.md5DigestAsHex(managerLogin.getPassword().getBytes()));
} catch (Exception e) {
return false;
}
}
//查询管理员名字是否已经注册
public boolean hasUser(String name){
try {
Manager manager=mongoTemplate.findOne(new Query(Criteria.where("managerName").is(name)),Manager.class);
//非空返回true
return manager!=null;
} catch (Exception e) {
return false;
}
}
// 保存管理员注册信息
public boolean save(Manager manager){
try {
mongoTemplate.save(manager);
return true;
} catch (Exception e) {
return false;
}
}
}