package cn.itcast.travel.service;
import cn.itcast.travel.exceptions.UserExistsException;
import cn.itcast.travel.pojo.User;
public interface IUserService {
void register(User user) throws Exception;
Boolean active(String code);
User login(User user) throws Exception;
}
package cn.itcast.travel.service;
import cn.itcast.travel.pojo.Route;
import java.util.List;
import java.util.Map;
public interface IRouteService {
Map<String,List<Route>> routeCareChoose();
}
package cn.itcast.travel.service.impl;
import cn.itcast.travel.mapper.RouteMapper;
import cn.itcast.travel.pojo.Route;
import cn.itcast.travel.service.IRouteService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
public class RouteServiceImpl implements IRouteService {
@Autowired
private RouteMapper routeMapper;
@Override
public Map<String, List<Route>> routeCareChoose() {
//查询人气旅游
List<Route> popularityRouteList = routeMapper.queryPopularityRouteList();
//查询最新旅游
List<Route> newsRouteList = routeMapper.queryNewsRouteList();
//查询主题旅游
List<Route> themesRouteList = routeMapper.queryThemesRouteList();
Map<String, List<Route>> map = new HashMap<>();
map.put("popularity",popularityRouteList);
map.put("news",newsRouteList);
map.put("themes",themesRouteList);
return map;
}
}
package cn.itcast.travel.service.impl;
import cn.itcast.travel.exceptions.UserExistsException;
import cn.itcast.travel.exceptions.UserNameOrPasswordErrorException;
import cn.itcast.travel.exceptions.UserNoActiveException;
import cn.itcast.travel.mapper.UserMapper;
import cn.itcast.travel.pojo.User;
import cn.itcast.travel.service.IUserService;
import cn.itcast.travel.utils.MailUtil;
import cn.itcast.travel.utils.Md5Util;
import cn.itcast.travel.utils.UuidUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class UserServiceImpl implements IUserService {
@Autowired
private UserMapper userMapper;
@Override
public void register(User user) throws Exception {
//通过用户名查询用户
User queryUser = userMapper.queryUserByUserName(user.getUsername());
if (queryUser!=null){
throw new UserExistsException("用户名已存在!");
}
//密码加密
user.setPassword(Md5Util.encodeByMd5(user.getPassword()));
//设置状态为未激活
user.setStatus("N");
//设置激活码
user.setCode(UuidUtil.getUuid());
//执行注册
userMapper.addUser(user);
//发送邮件给注册用户的邮箱
MailUtil.sendMail(user.getEmail(),"<h1>测试激活</h1><a href='http://localhost:8080/user/active?code="+user.getCode()+"'>激活账户</a>");
}
@Override
public Boolean active(String code) {
int count = userMapper.active(code);
if (count==1){
return true;
}
return false;
}
@Override
public User login(User user) throws Exception {
//对密码加密
user.setPassword(Md5Util.encodeByMd5(user.getPassword()));
User queryUser = userMapper.login(user);
if (queryUser==null){
throw new UserNameOrPasswordErrorException("用户名或者密码错误!");
}
//判断账号是否激活
if (queryUser.getStatus().equals("N")){
throw new UserNoActiveException("用户未激活!");
}
return queryUser;
}
}
serevice接口
最新推荐文章于 2021-10-29 09:20:11 发布