GroupsServiceImpl.java 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. package com.zhentao.groups.service.impl;
  2. import cn.hutool.core.util.IdUtil;
  3. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  4. import com.zhentao.groups.dto.AddGroupMembers;
  5. import com.zhentao.groups.dto.AddGroupsDto;
  6. import com.zhentao.groups.mapper.GroupMembersMapper;
  7. import com.zhentao.groups.pojo.GroupMembers;
  8. import com.zhentao.groups.pojo.Groupss;
  9. import com.zhentao.groups.service.GroupMembersService;
  10. import com.zhentao.groups.service.GroupsService;
  11. import com.zhentao.groups.mapper.GroupsMapper;
  12. import com.zhentao.user.domain.UserShouye;
  13. import com.zhentao.user.mapper.UserShouyeMapper;
  14. import com.zhentao.user.service.UserShouyeService;
  15. import com.zhentao.vo.Result;
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.data.redis.core.RedisTemplate;
  18. import org.springframework.stereotype.Service;
  19. import org.springframework.transaction.annotation.Transactional;
  20. import java.util.ArrayList;
  21. import java.util.Date;
  22. import java.util.List;
  23. /**
  24. * @author lzy
  25. * @description 针对表【groups(群组表)】的数据库操作Service实现
  26. * @createDate 2025-06-04 16:00:48
  27. */
  28. @Service
  29. public class GroupsServiceImpl extends ServiceImpl<GroupsMapper, Groupss>
  30. implements GroupsService{
  31. @Autowired
  32. private GroupMembersMapper groupMembersMapper;
  33. @Autowired
  34. private RedisTemplate<String,String> redisTemplate;
  35. @Autowired
  36. private UserShouyeMapper userShouyeMapper;
  37. // 创建群
  38. @Override
  39. public Result addGroup(AddGroupsDto addGroupsDto) {
  40. Groupss groups=new Groupss();
  41. groups.setGroupId(IdUtil.getSnowflake().nextId());
  42. groups.setName(addGroupsDto.getName());
  43. groups.setCreatorId(addGroupsDto.getCreatorId());
  44. groups.setAvatar(addGroupsDto.getAvatar());
  45. groups.setAnnouncement(addGroupsDto.getAnnouncement());
  46. groups.setDescription(addGroupsDto.getDescription());
  47. groups.setMaxMembers(200);
  48. groups.setStatus(1);
  49. groups.setCreatedAt(new Date());
  50. groups.setUpdatedAt(new Date());
  51. int insert1 = this.baseMapper.insert(groups);
  52. GroupMembers groupMembers=new GroupMembers();
  53. groupMembers.setId(IdUtil.getSnowflake().nextId());
  54. groupMembers.setGroupId(groups.getGroupId());
  55. groupMembers.setUserId(groups.getCreatorId());
  56. groupMembers.setNickname(groups.getName());
  57. groupMembers.setRole(2);
  58. groupMembers.setJoinTime(new Date());
  59. int insert = groupMembersMapper.insert(groupMembers);
  60. UserShouye userShouye=new UserShouye();
  61. userShouye.setId(IdUtil.getSnowflake().nextId());
  62. userShouye.setUid1(addGroupsDto.getCreatorId());
  63. userShouye.setUid2(null);
  64. userShouye.setGid(groups.getGroupId());
  65. userShouye.setStatus(0);
  66. userShouye.setSort(null);
  67. int insert2 = userShouyeMapper.insert(userShouye);
  68. if (insert1!=0 && insert!=0 && insert2!=0){
  69. return Result.OK(null,"创建成功");
  70. }
  71. return Result.ERR(null,"创建失败");
  72. }
  73. @Autowired
  74. private GroupMembersService groupMembersService;
  75. @Autowired
  76. private UserShouyeService userShouyeService;
  77. @Autowired
  78. private GroupsMapper groupsMapper;
  79. // 添加人数
  80. @Override
  81. public Result AddGroupMembers(AddGroupMembers addGroupMembers) {
  82. List<GroupMembers> data = new ArrayList<>();
  83. Groupss groupss = groupsMapper.selectById(addGroupMembers.getGroupId());
  84. System.err.println(groupss);
  85. List<UserShouye> userShouyes =new ArrayList<>();
  86. for (GroupMembers groupMembers:addGroupMembers.getData()){
  87. GroupMembers groupMembers1=new GroupMembers();
  88. groupMembers1.setId(IdUtil.getSnowflake().nextId());
  89. groupMembers1.setGroupId(groupss.getGroupId());
  90. groupMembers1.setUserId(groupMembers.getUserId());
  91. groupMembers1.setNickname(groupss.getName());
  92. groupMembers1.setRole(0);
  93. groupMembers1.setJoinTime(new Date());
  94. data.add(groupMembers1);
  95. UserShouye userShouye=new UserShouye();
  96. userShouye.setId(IdUtil.getSnowflake().nextId());
  97. userShouye.setUid1(groupMembers.getUserId());
  98. userShouye.setUid2(null);
  99. userShouye.setGid(groupss.getGroupId());
  100. userShouye.setStatus(0);
  101. userShouye.setSort(null);
  102. userShouyes.add(userShouye);
  103. }
  104. boolean b1 = groupMembersService.saveBatch(data);
  105. boolean b = userShouyeService.saveBatch(userShouyes);
  106. if (b1!=false && b!=false){
  107. return Result.OK(null,"添加成功");
  108. }
  109. return Result.ERR(null,"添加失败");
  110. }
  111. }