TWxUserServiceImpl.java 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. package com.ylx.massage.service.impl;
  2. import cn.hutool.core.collection.CollectionUtil;
  3. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  4. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  5. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  6. import com.ylx.common.utils.StringUtils;
  7. import com.ylx.massage.domain.TWxUser;
  8. import com.ylx.massage.domain.vo.TWxUserVo;
  9. import com.ylx.massage.mapper.TWxUserMapper;
  10. import com.ylx.massage.service.TWxUserService;
  11. import org.springframework.stereotype.Service;
  12. import java.util.Collection;
  13. import java.util.List;
  14. import java.util.Optional;
  15. /**
  16. * 服务实现类
  17. */
  18. @Service
  19. public class TWxUserServiceImpl extends ServiceImpl<TWxUserMapper, TWxUser> implements TWxUserService {
  20. @Override
  21. public TWxUser getByOpenId(String openId) {
  22. LambdaQueryWrapper<TWxUser> wrapper = new LambdaQueryWrapper<>();
  23. wrapper.eq(TWxUser::getcOpenid,openId);
  24. return getOne(wrapper);
  25. }
  26. @Override
  27. public TWxUser getByPhone(String phone) {
  28. LambdaQueryWrapper<TWxUser> wrapper = new LambdaQueryWrapper<>();
  29. wrapper.eq(TWxUser::getcPhone, phone);
  30. return getOne(wrapper);
  31. }
  32. @Override
  33. public Page<TWxUserVo> getUserList(Page<TWxUserVo> page, TWxUserVo user) {
  34. Page<TWxUserVo> tWxUserVoPage = baseMapper.selectTWxUserList(page, user);
  35. List<TWxUserVo> records = tWxUserVoPage.getRecords();
  36. if(CollectionUtil.isNotEmpty(records)){
  37. records.forEach(item->{
  38. if(StringUtils.isBlank(item.getCPhone())){
  39. item.setCPhone(Optional.ofNullable(item.getPhone()).orElse(StringUtils.EMPTY));
  40. }
  41. });
  42. tWxUserVoPage.setRecords(records);
  43. }
  44. return tWxUserVoPage;
  45. }
  46. @Override
  47. public boolean bindPhone(String openId, String phone) {
  48. TWxUser user = getByOpenId(openId);
  49. if (user == null) {
  50. return false;
  51. }
  52. user.setcPhone(phone);
  53. return updateById(user);
  54. }
  55. @Override
  56. public TWxUser phoneLogin(String phone) {
  57. // 根据手机号查询用户
  58. TWxUser user = getByPhone(phone);
  59. // 如果用户不存在,则创建新用户
  60. if (user == null) {
  61. user = new TWxUser();
  62. user.setcPhone(phone);
  63. // 设置默认角色为普通用户
  64. user.setRole(0);
  65. //设置默认头像
  66. user.setcIcon("https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif");
  67. //设置默认昵称
  68. user.setcNickName("用户"+phone.substring(7,11));
  69. save(user);
  70. }
  71. return user;
  72. }
  73. }