From abfa70b4e000c24c8ea44fa0bbf44603aaa8fd4e Mon Sep 17 00:00:00 2001 From: zhongzb <972627721@qq.com> Date: Thu, 24 Aug 2023 22:02:13 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E9=98=B2=E6=AD=A2=E5=A5=BD?= =?UTF-8?q?=E5=8F=8B=E8=AF=B7=E6=B1=82=E9=87=8D=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/user/service/impl/FriendServiceImpl.java | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/user/service/impl/FriendServiceImpl.java b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/user/service/impl/FriendServiceImpl.java index 74c139b..71a681a 100644 --- a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/user/service/impl/FriendServiceImpl.java +++ b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/user/service/impl/FriendServiceImpl.java @@ -33,6 +33,7 @@ import com.abin.mallchat.common.user.service.adapter.FriendAdapter; import com.baomidou.mybatisplus.core.metadata.IPage; import com.google.common.collect.Lists; import lombok.extern.slf4j.Slf4j; +import org.springframework.aop.framework.AopContext; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationEventPublisher; import org.springframework.stereotype.Service; @@ -105,12 +106,18 @@ public class FriendServiceImpl implements FriendService { //是否有好友关系 UserFriend friend = userFriendDao.getByFriend(uid, request.getTargetUid()); AssertUtil.isEmpty(friend, "你们已经是好友了"); - //是否有待审批的申请记录 - UserApply friendApproving = userApplyDao.getFriendApproving(uid, request.getTargetUid()); - if (Objects.nonNull(friendApproving)) { + //是否有待审批的申请记录(自己的) + UserApply selfApproving = userApplyDao.getFriendApproving(uid, request.getTargetUid()); + if (Objects.nonNull(selfApproving)) { log.info("已有好友申请记录,uid:{}, targetId:{}", uid, request.getTargetUid()); return; } + //是否有待审批的申请记录(别人请求自己的) + UserApply friendApproving = userApplyDao.getFriendApproving(request.getTargetUid(), uid); + if (Objects.nonNull(friendApproving)) { + ((FriendService) AopContext.currentProxy()).applyApprove(uid, new FriendApproveReq(friendApproving.getId())); + return; + } //申请入库 UserApply insert = FriendAdapter.buildFriendApply(uid, request); userApplyDao.save(insert);