feat:好友列表
This commit is contained in:
1 parent
e78f978b0f
commit
46c064be3c
5 files changed
+82
-1
No files matched your search
+14
-1
@@ -1,9 +1,14 @@
|
||||
package com.bx.implatform.controller.third;
|
||||
|
||||
import com.bx.implatform.dto.third.friend.ThirdAddFriendDTO;
|
||||
import com.bx.implatform.dto.third.friend.ThirdFriendDTO;
|
||||
import com.bx.implatform.dto.third.sensitive.ThirdSensitiveDTO;
|
||||
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.ThirdTableVO;
|
||||
import com.bx.implatform.vo.third.friend.ThirdFriendVO;
|
||||
import com.bx.implatform.vo.third.sensitive.ThirdSensitiveVO;
|
||||
import com.bx.implatform.vo.third.user.ThirdLoginVO;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
@@ -15,6 +20,8 @@ import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequestMapping("/third/friend")
|
||||
@@ -26,9 +33,15 @@ public class ThirdFriendController {
|
||||
|
||||
@PostMapping("/add")
|
||||
@Operation(summary = "添加好友", description = "添加好友")
|
||||
public Result<ThirdLoginVO> addFriend(@Valid @RequestBody ThirdAddFriendDTO dto) {
|
||||
public Result addFriend(@Valid @RequestBody ThirdAddFriendDTO dto) {
|
||||
thirdFriendService.addFriend(dto);
|
||||
return ResultUtils.success();
|
||||
}
|
||||
|
||||
@PostMapping("/list")
|
||||
@Operation(summary = "好友列表", description = "好友列表")
|
||||
public Result<List<ThirdFriendVO>> list(@Valid @RequestBody ThirdFriendDTO dto) {
|
||||
return ResultUtils.success(thirdFriendService.list(dto));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
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 ThirdFriendDTO {
|
||||
|
||||
@NotNull(message = "用户id不能为空")
|
||||
@Schema(description = "用户id")
|
||||
private String userId;
|
||||
|
||||
@Schema(description = "好友昵称")
|
||||
private String nickName;
|
||||
|
||||
}
|
||||
@@ -1,8 +1,12 @@
|
||||
package com.bx.implatform.service.third;
|
||||
|
||||
import com.bx.implatform.dto.third.friend.ThirdAddFriendDTO;
|
||||
import com.bx.implatform.dto.third.friend.ThirdFriendDTO;
|
||||
import com.bx.implatform.vo.third.friend.ThirdFriendVO;
|
||||
import jakarta.validation.Valid;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ThirdFriendService {
|
||||
|
||||
/**
|
||||
@@ -10,4 +14,8 @@ public interface ThirdFriendService {
|
||||
*/
|
||||
void addFriend(@Valid ThirdAddFriendDTO dto);
|
||||
|
||||
/**
|
||||
* 好友列表
|
||||
*/
|
||||
List<ThirdFriendVO> list(@Valid ThirdFriendDTO dto);
|
||||
}
|
||||
+19
@@ -1,15 +1,22 @@
|
||||
package com.bx.implatform.service.third.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.bx.implatform.dto.third.friend.ThirdAddFriendDTO;
|
||||
import com.bx.implatform.dto.third.friend.ThirdFriendDTO;
|
||||
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 com.bx.implatform.vo.third.friend.ThirdFriendVO;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 第三方好友
|
||||
*/
|
||||
@@ -28,4 +35,16 @@ public class ThirdFriendServiceImpl extends ServiceImpl<FriendMapper, Friend> im
|
||||
friendService.bindFriend(dto.getUserId(), dto.getTargetUserId());
|
||||
}
|
||||
|
||||
/**
|
||||
* 好友列表
|
||||
*/
|
||||
@Override
|
||||
public List<ThirdFriendVO> list(ThirdFriendDTO dto) {
|
||||
List<Friend> list = friendService.list(new LambdaQueryWrapper<Friend>()
|
||||
.eq(Friend::getUserId, dto.getUserId())
|
||||
.like(Friend::getFriendNickName, dto.getNickName())
|
||||
);
|
||||
if (ObjectUtil.isEmpty(list)) return List.of();
|
||||
return BeanUtil.copyToList(list, ThirdFriendVO.class);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package com.bx.implatform.vo.third.friend;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
@Schema(description = "third好友VO")
|
||||
public class ThirdFriendVO {
|
||||
@Schema(description = "好友id")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "好友昵称")
|
||||
private String nickName;
|
||||
|
||||
@Schema(description = "好友头像")
|
||||
private String headImage;
|
||||
|
||||
@Schema(description = "是否开启免打扰")
|
||||
private Boolean isDnd;
|
||||
|
||||
@Schema(description = "是否已删除")
|
||||
private Boolean deleted;
|
||||
}
|
||||
Reference in new issue
Block a user