ソースを参照

群主转让、群注销

zouxuan 1 年間 前
コミット
a0a74a0604

+ 11 - 8
mec-application/src/main/java/com/ym/mec/student/controller/ImGroupController.java

@@ -12,6 +12,7 @@ import com.ym.mec.biz.service.im.ImGroupCoreService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.vo.ImUserWrapper;
+import com.yonge.log.model.AuditLogAnnotation;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -20,15 +21,10 @@ import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Objects;
-import java.util.Optional;
+import java.util.*;
+import java.util.stream.Collectors;
 
 @RequestMapping("${app-config.url.student:}/imGroup")
 @Api(tags = "IM群服务")
@@ -243,4 +239,11 @@ public class ImGroupController extends BaseController {
     public Object imRegister(Integer userId) throws Exception {
         return succeed(imGroupCoreService.register(userId.toString(),"","测试",null));
     }
+
+	@ApiOperation("主动退群")
+	@PostMapping(value = "/quitGroup/v2")
+	public Object quitGroupV2(String imGroupId, String userId) {
+		List<Integer> userIds = Arrays.stream(userId.split(",")).mapToInt(Integer::valueOf).boxed().collect(Collectors.toList());
+		return succeed(imGroupMemberService.quit(imGroupId,userIds,false));
+	}
 }

+ 7 - 0
mec-application/src/main/java/com/ym/mec/teacher/controller/ImGroupController.java

@@ -302,4 +302,11 @@ public class ImGroupController extends BaseController {
 	public HttpResponseResult<PageInfo<ImGroupNoticeDto>> queryNoticeList(ImGroupNoticeQueryInfo queryInfo) {
 		return succeed(imGroupNoticeService.queryPage(queryInfo));
 	}
+
+	@ApiOperation("主动退群")
+	@PostMapping(value = "/quitGroup/v2")
+	public Object quitGroupV2(String imGroupId, String userId) {
+		List<Integer> userIds = Arrays.stream(userId.split(",")).mapToInt(Integer::valueOf).boxed().collect(Collectors.toList());
+		return succeed(imGroupMemberService.quit(imGroupId,userIds,false));
+	}
 }

+ 3 - 9
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ImGroupMemberServiceImpl.java

@@ -510,26 +510,20 @@ public class ImGroupMemberServiceImpl extends BaseServiceImpl<Long, ImGroupMembe
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	public boolean quit(String imGroupId, List<Integer> userIdList,Boolean quit) {
-
 		ImGroup imGroup = imGroupDao.getLocked(imGroupId);
 		if (imGroup == null) {
 			return true;
 		}
-
-		List<ImGroupMember> imGroupMemberList = imGroupMemberDao.queryByImGroupIdAndUserId(imGroupId.toString(), userIdList.stream().map(Objects::toString)
+		List<ImGroupMember> imGroupMemberList = imGroupMemberDao.queryByImGroupIdAndUserId(imGroupId, userIdList.stream().map(Objects::toString)
 				.collect(Collectors.joining(",")));
-
-		if (imGroupMemberList == null || imGroupMemberList.size() == 0) {
+		if (CollectionUtils.isEmpty(imGroupMemberList)) {
 			return true;
 		}
-
 		imGroupMemberDao.batchDelete(imGroupMemberList);
-
 		imGroup.setMemberNum(-userIdList.size());
 		imGroup.setUpdateTime(new Date());
 		imGroupDao.update(imGroup);
-
-		String groupId = imGroup.getId().toString();
+		String groupId = imGroup.getId();
 
 		List<GroupMember> groupMemberList = new ArrayList<GroupMember>();