TbAppUserServiceImpl.java 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. package com.ruoyi.app.service.impl;
  2. import cn.hutool.core.comparator.PinyinComparator;
  3. import cn.hutool.extra.pinyin.PinyinUtil;
  4. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  5. import com.ruoyi.app.domain.TbAppUser;
  6. import com.ruoyi.app.domain.TbFamilyMember;
  7. import com.ruoyi.app.domain.TbMemberMiddle;
  8. import com.ruoyi.app.domain.TbMyPublish;
  9. import com.ruoyi.app.domain.vo.AppMemberVo;
  10. import com.ruoyi.app.mapper.TbAppUserMapper;
  11. import com.ruoyi.app.service.ITbAppUserService;
  12. import com.ruoyi.app.service.ITbFamilyMemberService;
  13. import com.ruoyi.app.service.ITbMemberMiddleService;
  14. import com.ruoyi.common.utils.CodeUtil;
  15. import com.ruoyi.common.utils.DateUtils;
  16. import com.ruoyi.common.utils.StringUtils;
  17. import com.ruoyi.common.utils.bean.BeanUtils;
  18. import org.springframework.beans.factory.annotation.Autowired;
  19. import org.springframework.stereotype.Service;
  20. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  21. import org.springframework.transaction.annotation.Transactional;
  22. import java.util.ArrayList;
  23. import java.util.Date;
  24. import java.util.List;
  25. /**
  26. * 会员Service业务层处理
  27. *
  28. * @author Alex
  29. * @date 2020-09-24
  30. */
  31. @Service
  32. @Transactional(rollbackFor = Exception.class)
  33. public class TbAppUserServiceImpl extends ServiceImpl<TbAppUserMapper, TbAppUser> implements ITbAppUserService {
  34. @Autowired
  35. private ITbFamilyMemberService memberService;
  36. @Autowired
  37. private ITbAppUserService userService;
  38. @Autowired
  39. private ITbMemberMiddleService memberMiddleService;
  40. /**
  41. * 获取所有未删除状态的会员信息列表
  42. * @return
  43. */
  44. @Override
  45. public List<AppMemberVo> selectAppMembers(String enable, String search, String beginTime, String endTime){
  46. return baseMapper.selectAppMembers("user",enable, search, beginTime, endTime);
  47. }
  48. @Override
  49. public List<AppMemberVo> selectMembers(List<Long> memberIds) {
  50. return baseMapper.selectMembers("user",memberIds);
  51. }
  52. public List<AppMemberVo> selectFamilyMember(AppMemberVo memberVo){
  53. List<TbMemberMiddle> memberMiddleList = memberMiddleService.list(new LambdaQueryWrapper<TbMemberMiddle>()
  54. .eq(TbMemberMiddle::getFamilyId, memberVo.getFamilyId())
  55. );
  56. if (memberMiddleList.size() <= 0) {
  57. return new ArrayList<>();
  58. }
  59. List<Long> ids = new ArrayList<>();
  60. memberMiddleList.forEach(item -> {
  61. ids.add(item.getMemberId());
  62. });
  63. // List<AppMemberVo> memberList =
  64. return null;
  65. }
  66. /**
  67. * 添加/修改会员
  68. * @param memberVo
  69. * @return
  70. */
  71. @Override
  72. public boolean saveOrUpdate(AppMemberVo memberVo){
  73. if (memberVo == null) {
  74. return false;
  75. }
  76. TbAppUser appUser = new TbAppUser();
  77. TbFamilyMember member = new TbFamilyMember();
  78. Date date = new Date();
  79. BeanUtils.copyBeanProp(appUser,memberVo);
  80. BeanUtils.copyBeanProp(member,memberVo);
  81. appUser.setUpdateBy(memberVo.getUserUpdateBy());
  82. appUser.setUpdateTime(date);
  83. appUser.setRemark(memberVo.getUserRemark());
  84. member.setUpdateBy(memberVo.getUserUpdateBy());
  85. member.setUpdateTime(date);
  86. member.setRemark(memberVo.getMemberRemark());
  87. if (StringUtils.isNotBlank(memberVo.getNickName())) {
  88. String py = CodeUtil.getFirstLetter(memberVo.getNickName());
  89. appUser.setPyCode(py);
  90. appUser.setPyFirst(CodeUtil.getOneLetter(memberVo.getNickName()));
  91. }
  92. if (StringUtils.isNotBlank(memberVo.getName())) {
  93. String py = CodeUtil.getFirstLetter(memberVo.getName());
  94. member.setPyCode(py);
  95. member.setPyFirst(CodeUtil.getOneLetter(memberVo.getName()));
  96. }
  97. //新增用户
  98. if (memberVo.getUserId() == null) {
  99. appUser.setQrcode(DateUtils.getCurrentTimeRandom());
  100. appUser.setCreateBy(memberVo.getUserCreateBy());
  101. appUser.setCreateTime(date);
  102. userService.save(appUser);
  103. memberVo.setUserId(appUser.getId());
  104. }else {// 否则修改用户
  105. appUser.setId(memberVo.getUserId());
  106. userService.updateById(appUser);
  107. }
  108. member.setAppUserId(appUser.getId());
  109. // 新增成员
  110. if (memberVo.getMemberId() == null) {
  111. member.setPyCode(CodeUtil.getFirstLetter(memberVo.getNickName()));
  112. member.setPyFirst(CodeUtil.getOneLetter(memberVo.getNickName()));
  113. member.setCreateBy(memberVo.getUserCreateBy());
  114. member.setCreateTime(date);
  115. memberService.save(member);
  116. memberVo.setMemberId(member.getId());
  117. } else { // 否则修改成员
  118. member.setId(memberVo.getMemberId());
  119. memberService.updateById(member);
  120. }
  121. return true;
  122. }
  123. @Override
  124. public AppMemberVo getAppMember(String id,String search) {
  125. return baseMapper.getAppMember("user", id, search);
  126. }
  127. @Override
  128. public AppMemberVo getMember(String type,String id,String search){
  129. return baseMapper.getAppMember(type, id, search);
  130. }
  131. }