UserMapper.java 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. package cn.iselab.mooctest.user.mapper;
  2. import cn.iselab.mooctest.user.model.User;
  3. import org.apache.ibatis.annotations.Insert;
  4. import org.apache.ibatis.annotations.Select;
  5. import org.apache.ibatis.annotations.Update;
  6. import java.util.List;
  7. /**
  8. * @author sean
  9. * @date 2018-03-04.
  10. */
  11. public interface UserMapper {
  12. @Select("SELECT * FROM user WHERE id = #{id}")
  13. User findById(Long id);
  14. @Select("SELECT * FROM user WHERE email = #{email}")
  15. User findByEmail(String email);
  16. @Select("SELECT * FROM user WHERE mobile = #{mobile}")
  17. User findByMobile(String mobile);
  18. @Insert("INSERT INTO user(name, password, email ) VALUES(#{name}, #{password}, #{email})")
  19. void insert(User user);
  20. @Update("UPDATE user SET name=#{name} WHERE id=#{id}")
  21. void updateName(User user);
  22. @Update("UPDATE user SET school=#{school}, province=#{province}, city=#{city} WHERE id=#{id}")
  23. void updateAddress(User user);
  24. @Update("UPDATE user SET email=#{email} WHERE id=#{id}")
  25. void updateEmail(User user);
  26. @Update("UPDATE user SET mobile=#{mobile} WHERE id=#{id}")
  27. void updateMobile(User user);
  28. @Update("UPDATE user SET photo_url=#{photoUrl} WHERE id=#{id}")
  29. void updatePhotoUrl(User user);
  30. @Update("UPDATE user SET password=#{password} WHERE id=#{id}")
  31. void updatePassword(User user);
  32. @Update("UPDATE user SET availability=#{availability} WHERE id=#{id}")
  33. void updateAvailability(User user);
  34. @Select("SELECT * FROM user WHERE name LIKE concat('%',#{username},'%')")
  35. List<User> findByFuzzyName(String name);
  36. @Select("SELECT * FROM user WHERE email LIKE concat('%',#{username},'%')")
  37. List<User> findByFuzzyEmail(String email);
  38. @Select("SELECT * FROM user WHERE name LIKE concat('%',#{keyword},'%') OR email LIKE CONCAT('%',#{keyword},'%')")
  39. List<User> findByFuzzyNameOrEmail(String keyword);
  40. }