|
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.zhentao.groups.dto.AddGroupMembers;
|
|
import com.zhentao.groups.dto.AddGroupMembers;
|
|
import com.zhentao.groups.dto.AddGroupsDto;
|
|
import com.zhentao.groups.dto.AddGroupsDto;
|
|
import com.zhentao.groups.dto.DelGroupMembers;
|
|
import com.zhentao.groups.dto.DelGroupMembers;
|
|
|
|
+import com.zhentao.groups.dto.OutGroupsDto;
|
|
import com.zhentao.groups.mapper.GroupMembersMapper;
|
|
import com.zhentao.groups.mapper.GroupMembersMapper;
|
|
import com.zhentao.groups.pojo.GroupMembers;
|
|
import com.zhentao.groups.pojo.GroupMembers;
|
|
import com.zhentao.groups.pojo.Groupss;
|
|
import com.zhentao.groups.pojo.Groupss;
|
|
@@ -23,6 +24,7 @@ import org.springframework.stereotype.Service;
|
|
import org.springframework.transaction.annotation.Propagation;
|
|
import org.springframework.transaction.annotation.Propagation;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
|
|
+import java.math.BigDecimal;
|
|
import java.util.ArrayList;
|
|
import java.util.ArrayList;
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
@@ -38,8 +40,6 @@ public class GroupsServiceImpl extends ServiceImpl<GroupsMapper, Groupss>
|
|
|
|
|
|
@Autowired
|
|
@Autowired
|
|
private GroupMembersMapper groupMembersMapper;
|
|
private GroupMembersMapper groupMembersMapper;
|
|
- @Autowired
|
|
|
|
- private RedisTemplate<String,String> redisTemplate;
|
|
|
|
|
|
|
|
@Autowired
|
|
@Autowired
|
|
private UserShouyeMapper userShouyeMapper;
|
|
private UserShouyeMapper userShouyeMapper;
|
|
@@ -73,7 +73,7 @@ public class GroupsServiceImpl extends ServiceImpl<GroupsMapper, Groupss>
|
|
UserShouye userShouye=new UserShouye();
|
|
UserShouye userShouye=new UserShouye();
|
|
userShouye.setId(IdUtil.getSnowflake().nextId());
|
|
userShouye.setId(IdUtil.getSnowflake().nextId());
|
|
userShouye.setUid1(addGroupsDto.getCreatorId());
|
|
userShouye.setUid1(addGroupsDto.getCreatorId());
|
|
- userShouye.setUid2(null);
|
|
|
|
|
|
+ userShouye.setUid2(0L);
|
|
userShouye.setGid(groups.getGroupId());
|
|
userShouye.setGid(groups.getGroupId());
|
|
userShouye.setStatus(0);
|
|
userShouye.setStatus(0);
|
|
userShouye.setSort(null);
|
|
userShouye.setSort(null);
|
|
@@ -96,7 +96,6 @@ public class GroupsServiceImpl extends ServiceImpl<GroupsMapper, Groupss>
|
|
@Override
|
|
@Override
|
|
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class, timeout = 30)
|
|
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class, timeout = 30)
|
|
public Result AddGroupMembers(AddGroupMembers addGroupMembers) {
|
|
public Result AddGroupMembers(AddGroupMembers addGroupMembers) {
|
|
-
|
|
|
|
List<GroupMembers> data = new ArrayList<>();
|
|
List<GroupMembers> data = new ArrayList<>();
|
|
Groupss groupss = groupsMapper.selectById(addGroupMembers.getGroupId());
|
|
Groupss groupss = groupsMapper.selectById(addGroupMembers.getGroupId());
|
|
System.err.println(groupss);
|
|
System.err.println(groupss);
|
|
@@ -118,7 +117,7 @@ public class GroupsServiceImpl extends ServiceImpl<GroupsMapper, Groupss>
|
|
UserShouye userShouye=new UserShouye();
|
|
UserShouye userShouye=new UserShouye();
|
|
userShouye.setId(IdUtil.getSnowflake().nextId());
|
|
userShouye.setId(IdUtil.getSnowflake().nextId());
|
|
userShouye.setUid1(groupMembers);
|
|
userShouye.setUid1(groupMembers);
|
|
- userShouye.setUid2(null);
|
|
|
|
|
|
+ userShouye.setUid2(0L);
|
|
userShouye.setGid(groupss.getGroupId());
|
|
userShouye.setGid(groupss.getGroupId());
|
|
userShouye.setStatus(0);
|
|
userShouye.setStatus(0);
|
|
userShouye.setSort(null);
|
|
userShouye.setSort(null);
|
|
@@ -180,32 +179,36 @@ public class GroupsServiceImpl extends ServiceImpl<GroupsMapper, Groupss>
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
+// 退出群聊
|
|
|
|
+ @Override
|
|
|
|
+ public Result outGroup(OutGroupsDto outGroupsDto) {
|
|
|
|
+ GroupMembers groupMembers = groupMembersMapper.selectOne(new LambdaQueryWrapper<GroupMembers>().eq(GroupMembers::getGroupId, outGroupsDto.getGroupsId()).eq(GroupMembers::getUserId, outGroupsDto.getUid()));
|
|
|
|
+ if (groupMembers.getRole()==2){
|
|
|
|
+ return Result.ERR(null,"群主不能退出群聊");
|
|
|
|
+ }else {
|
|
|
|
+ UserShouye userShouye = userShouyeMapper.selectOne(new LambdaQueryWrapper<UserShouye>().eq(UserShouye::getGid, outGroupsDto.getGroupsId()).eq(UserShouye::getUid1, outGroupsDto.getUid()));
|
|
|
|
+ groupMembersMapper.deleteById(groupMembers);
|
|
|
|
+ userShouyeMapper.deleteById(userShouye);
|
|
|
|
+ return Result.OK(null,"退出成功");
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
|
|
+// 解散群聊
|
|
|
|
+ @Override
|
|
|
|
+ public Result delGroup(OutGroupsDto outGroupsDto) {
|
|
|
|
+ GroupMembers groupMembers = groupMembersMapper.selectOne(new LambdaQueryWrapper<GroupMembers>().eq(GroupMembers::getGroupId, outGroupsDto.getGroupsId()).eq(GroupMembers::getUserId, outGroupsDto.getUid()));
|
|
|
|
+ if (groupMembers.getRole()==2){
|
|
|
|
+ Groupss groupss = this.baseMapper.selectById(outGroupsDto.getGroupsId());
|
|
|
|
+ this.baseMapper.deleteById(groupss);
|
|
|
|
+ List<GroupMembers> list = groupMembersMapper.selectList(new LambdaQueryWrapper<GroupMembers>().eq(GroupMembers::getGroupId, outGroupsDto.getGroupsId()));
|
|
|
|
+ groupMembersMapper.deleteBatchIds(list);
|
|
|
|
+ List<UserShouye> userShouyes = userShouyeMapper.selectList(new LambdaQueryWrapper<UserShouye>().eq(UserShouye::getGid, outGroupsDto.getGroupsId()));
|
|
|
|
+ userShouyeMapper.deleteBatchIds(userShouyes);
|
|
|
|
+ return Result.OK(null,"解散成功");
|
|
|
|
+ }else{
|
|
|
|
+ return Result.ERR(null,"权限不足");
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|
}
|
|
}
|