feat:添加好友

This commit is contained in:
dzc committed 2025-11-25 17:26:21 +08:00
1 parent b03411c009
commit 2c48e23dec
10 files changed
+110 -13

No files matched your search

@@ -0,0 +1,35 @@
package com.bx.implatform.controller.third;
import com.bx.implatform.dto.third.friend.ThirdAddFriendDto;
import com.bx.implatform.dto.third.user.ThirdLoginDTO;
import com.bx.implatform.result.Result;
import com.bx.implatform.result.ResultUtils;
import com.bx.implatform.service.third.ThirdFriendService;
import com.bx.implatform.vo.third.ThirdLoginVO;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@Slf4j
@RestController
@RequestMapping("/third/friend")
@Tag(name = "第三方/好友")
@RequiredArgsConstructor
public class ThirdFriendController {
private final ThirdFriendService thirdFriendService;
@PostMapping("/add")
@Operation(summary = "添加好友", description = "添加好友")
public Result<ThirdLoginVO> addFriend(@Valid @RequestBody ThirdAddFriendDto dto) {
thirdFriendService.addFriend(dto);
return ResultUtils.success();
}
}
@@ -1,8 +1,8 @@
package com.bx.implatform.controller.third;
import com.bx.implatform.dto.third.ThirdCreateOrUpdateUserDTO;
import com.bx.implatform.dto.third.ThirdGetUserByUserIdDTO;
import com.bx.implatform.dto.third.ThirdLoginDTO;
import com.bx.implatform.dto.third.user.ThirdCreateOrUpdateUserDTO;
import com.bx.implatform.dto.third.user.ThirdGetUserByUserIdDTO;
import com.bx.implatform.dto.third.user.ThirdLoginDTO;
import com.bx.implatform.result.Result;
import com.bx.implatform.result.ResultUtils;
import com.bx.implatform.service.third.ThirdUserService;
@@ -0,0 +1,19 @@
package com.bx.implatform.dto.third.friend;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
@Data
@Schema(description = "third添加朋友DTO")
public class ThirdAddFriendDto {
@NotNull(message = "用户id不存在")
@Schema(description = "用户id")
private Long userId;
@NotNull(message = "被加用户id不存在")
@Schema(description = "被加用户id")
private Long targetUserId;
}
@@ -1,4 +1,4 @@
package com.bx.implatform.dto.third;
package com.bx.implatform.dto.third.user;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotEmpty;
@@ -1,4 +1,4 @@
package com.bx.implatform.dto.third;
package com.bx.implatform.dto.third.user;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
@@ -1,9 +1,8 @@
package com.bx.implatform.dto.third;
package com.bx.implatform.dto.third.user;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Max;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
@@ -0,0 +1,13 @@
package com.bx.implatform.service.third;
import com.bx.implatform.dto.third.friend.ThirdAddFriendDto;
import jakarta.validation.Valid;
public interface ThirdFriendService {
/**
* 添加好友
*/
void addFriend(@Valid ThirdAddFriendDto dto);
}
@@ -1,9 +1,9 @@
package com.bx.implatform.service.third;
import com.baomidou.mybatisplus.extension.service.IService;
import com.bx.implatform.dto.third.ThirdCreateOrUpdateUserDTO;
import com.bx.implatform.dto.third.ThirdGetUserByUserIdDTO;
import com.bx.implatform.dto.third.ThirdLoginDTO;
import com.bx.implatform.dto.third.user.ThirdCreateOrUpdateUserDTO;
import com.bx.implatform.dto.third.user.ThirdGetUserByUserIdDTO;
import com.bx.implatform.dto.third.user.ThirdLoginDTO;
import com.bx.implatform.entity.User;
import com.bx.implatform.vo.third.ThirdGetUserByUserIdVo;
import com.bx.implatform.vo.third.ThirdLoginVO;
@@ -0,0 +1,31 @@
package com.bx.implatform.service.third.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.bx.implatform.dto.third.friend.ThirdAddFriendDto;
import com.bx.implatform.entity.Friend;
import com.bx.implatform.mapper.FriendMapper;
import com.bx.implatform.service.FriendService;
import com.bx.implatform.service.third.ThirdFriendService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
/**
* 第三方好友
*/
@Slf4j
@Service
@RequiredArgsConstructor
public class ThirdFriendServiceImpl extends ServiceImpl<FriendMapper, Friend> implements ThirdFriendService {
private final FriendService friendService;
/**
* 添加好友
*/
@Override
public void addFriend(ThirdAddFriendDto dto) {
friendService.bindFriend(dto.getUserId(), dto.getTargetUserId());
}
}
@@ -5,9 +5,9 @@ import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.bx.imcommon.util.JwtUtil;
import com.bx.implatform.config.props.JwtProperties;
import com.bx.implatform.dto.third.ThirdCreateOrUpdateUserDTO;
import com.bx.implatform.dto.third.ThirdGetUserByUserIdDTO;
import com.bx.implatform.dto.third.ThirdLoginDTO;
import com.bx.implatform.dto.third.user.ThirdCreateOrUpdateUserDTO;
import com.bx.implatform.dto.third.user.ThirdGetUserByUserIdDTO;
import com.bx.implatform.dto.third.user.ThirdLoginDTO;
import com.bx.implatform.entity.User;
import com.bx.implatform.exception.GlobalException;
import com.bx.implatform.mapper.UserMapper;