UserServiceImpl.java 3.6 KB
Newer Older
爱吃血肠's avatar
爱吃血肠 已提交
1 2 3 4
package com.yingjun.ssm.service.impl;
import java.util.List;
import com.yingjun.ssm.dao.UserDao;
import com.yingjun.ssm.entity.User;
爱吃血肠's avatar
爱吃血肠 已提交
5
import com.yingjun.ssm.exception.BizException;
爱吃血肠's avatar
爱吃血肠 已提交
6
import com.yingjun.ssm.service.UserService;
爱吃血肠's avatar
爱吃血肠 已提交
7 8
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
爱吃血肠's avatar
爱吃血肠 已提交
9 10
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
爱吃血肠's avatar
爱吃血肠 已提交
11 12 13
import org.springframework.transaction.annotation.Isolation;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
爱吃血肠's avatar
爱吃血肠 已提交
14

爱吃血肠's avatar
...  
爱吃血肠 已提交
15 16
import javax.servlet.http.HttpSession;

爱吃血肠's avatar
爱吃血肠 已提交
17 18 19 20
/**
 * @author liyunfeng
 * 普通用户
 */
爱吃血肠's avatar
爱吃血肠 已提交
21 22
@Service
public class UserServiceImpl implements UserService {
爱吃血肠's avatar
爱吃血肠 已提交
23
    private final Logger LOG = LoggerFactory.getLogger(this.getClass());
爱吃血肠's avatar
爱吃血肠 已提交
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
    @Autowired
    private UserDao userDao;
    @Override
    public long getTUserRowCount(){
        return userDao.getTUserRowCount();
    }
    @Override
    public List<User> selectTUser(){
        return userDao.selectTUser();
    }
    @Override
    public User selectTUserByObj(User obj){
        return userDao.selectTUserByObj(obj);
    }
    @Override
    public User selectTUserById(Long id){
        return userDao.selectTUserById(id);
    }
    @Override
    public int insertTUser(User value){
        return userDao.insertTUser(value);
    }
    @Override
    public int insertNonEmptyTUser(User value){
        return userDao.insertNonEmptyTUser(value);
    }
    @Override
    public int insertTUserByBatch(List<User> value){
        return userDao.insertTUserByBatch(value);
    }
    @Override
    public int deleteTUserById(Long id){
        return userDao.deleteTUserById(id);
    }
    @Override
    public int updateTUserById(User enti){
        return userDao.updateTUserById(enti);
    }
    @Override
    public int updateNonEmptyTUserById(User enti){
        return userDao.updateNonEmptyTUserById(enti);
    }

爱吃血肠's avatar
爱吃血肠 已提交
67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
    /**
     * 校验用户登录
     * @param user 用户邮箱 以及密码
     */
    @Override
    public User checkUserLogin(User user) {
        try{
            User loginUser = userDao.checkUserLogin(user);
            if(loginUser == null){
                throw new BizException("用户不存在");
            }
            return loginUser;
        }catch (BizException biz){
            LOG.error("用户名或密码错误",biz);
            throw new BizException("用户名或密码错误");
        }catch (Exception e){
            LOG.error("登录出现异常",e);
            throw new BizException("登录出现异常");
        }

    }

爱吃血肠's avatar
爱吃血肠 已提交
89 90 91 92
    /**
     * 处理用户注册
     * @param user
     */
爱吃血肠's avatar
爱吃血肠 已提交
93
    @Transactional(propagation= Propagation.REQUIRED,isolation = Isolation.READ_COMMITTED,rollbackFor=Throwable.class)
爱吃血肠's avatar
爱吃血肠 已提交
94
    @Override
爱吃血肠's avatar
...  
爱吃血肠 已提交
95 96 97 98 99 100
    public void userRegister(User user, String code,HttpSession session) {
        try{
            String emailCode = (String)session.getAttribute("code");
            if(!emailCode.equals(code)){
                throw new BizException("验证码错误");
            }
爱吃血肠's avatar
爱吃血肠 已提交
101
            if(1 != userDao.insertTUser(user)){
爱吃血肠's avatar
...  
爱吃血肠 已提交
102 103 104 105 106 107 108 109 110
                throw new Exception("插入数据影响函数不唯一");
            }
        }catch (BizException biz){
            LOG.error("验证码错误",biz);
            throw new BizException("验证码错误");
        }catch (Exception e){
            LOG.error("插入数据影响函数不唯一",e);
            throw new BizException("插入数据影响函数不唯一");
        }
爱吃血肠's avatar
爱吃血肠 已提交
111 112
    }

爱吃血肠's avatar
爱吃血肠 已提交
113 114 115 116 117 118 119 120 121
    public UserDao getTUserDao() {
        return this.userDao;
    }

    public void setTUserDao(UserDao userDao) {
        this.userDao = userDao;
    }

}