|
|
@@ -1,9 +1,7 @@
|
|
|
package com.izouma.nineth.service;
|
|
|
|
|
|
-import com.izouma.nineth.domain.MetaUserFriend;
|
|
|
-import com.izouma.nineth.domain.MetaUserFriendApplyRecord;
|
|
|
-import com.izouma.nineth.domain.MetaUserFriendOperateRecord;
|
|
|
-import com.izouma.nineth.domain.User;
|
|
|
+import com.alibaba.fastjson.JSONArray;
|
|
|
+import com.izouma.nineth.domain.*;
|
|
|
import com.izouma.nineth.dto.*;
|
|
|
import com.izouma.nineth.enums.MetaUserFriendOperateType;
|
|
|
import com.izouma.nineth.repo.MetaUserFriendApplyRecordRepo;
|
|
|
@@ -19,6 +17,7 @@ import javax.transaction.Transactional;
|
|
|
import java.time.LocalDateTime;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
import java.util.Objects;
|
|
|
|
|
|
@Service
|
|
|
@@ -36,8 +35,15 @@ public class MetaUserFriendService {
|
|
|
MetaUserFriendAndApplyDTO metaUserFriendAndApplyDTO = new MetaUserFriendAndApplyDTO();
|
|
|
List<Long> friendIds = metaUserFriendRepo.findFriendIdByUserId(userId);
|
|
|
setMetaUserFriendDTOS(metaUserFriendAndApplyDTO, friendIds);
|
|
|
- List<Long> applyUserIds = metaUserFriendApplyRecordRepo.findApplyUserIds(userId);
|
|
|
- setMetaUserFriendApplyDTOS(metaUserFriendAndApplyDTO, applyUserIds);
|
|
|
+ List<Map<String, String>> map = metaUserFriendApplyRecordRepo.findApplyUserIds(userId);
|
|
|
+ if (CollectionUtils.isEmpty(map)) {
|
|
|
+ metaUserFriendAndApplyDTO.setMetaUserFriendApplyDTOS(new ArrayList<>());
|
|
|
+ return MetaRestResult.returnSuccess(metaUserFriendAndApplyDTO);
|
|
|
+ }
|
|
|
+ JSONArray jsonArray = new JSONArray();
|
|
|
+ jsonArray.addAll(map);
|
|
|
+ List<MetaUserFriendApplyDTO> metaUserFriendApplyDTOS = jsonArray.toJavaList(MetaUserFriendApplyDTO.class);
|
|
|
+ setMetaUserFriendApplyDTOS(metaUserFriendAndApplyDTO, metaUserFriendApplyDTOS);
|
|
|
return MetaRestResult.returnSuccess(metaUserFriendAndApplyDTO);
|
|
|
}
|
|
|
|
|
|
@@ -56,16 +62,16 @@ public class MetaUserFriendService {
|
|
|
metaUserFriendAndApplyDTO.setMetaUserFriendDTOS(metaUserFriendDTOS);
|
|
|
}
|
|
|
|
|
|
- private void setMetaUserFriendApplyDTOS(MetaUserFriendAndApplyDTO metaUserFriendAndApplyDTO, List<Long> applyUserIds) {
|
|
|
- List<MetaUserFriendApplyDTO> metaUserFriendApplyDTOS = new ArrayList<>();
|
|
|
- if (CollectionUtils.isEmpty(applyUserIds)) {
|
|
|
+ private void setMetaUserFriendApplyDTOS(MetaUserFriendAndApplyDTO metaUserFriendAndApplyDTO, List<MetaUserFriendApplyDTO> metaUserFriendApplyDTOS) {
|
|
|
+ if (CollectionUtils.isEmpty(metaUserFriendApplyDTOS)) {
|
|
|
metaUserFriendAndApplyDTO.setMetaUserFriendApplyDTOS(metaUserFriendApplyDTOS);
|
|
|
return;
|
|
|
}
|
|
|
- applyUserIds.forEach(userId -> {
|
|
|
- User user = userRepo.findById(userId).orElse(null);
|
|
|
+ metaUserFriendApplyDTOS.forEach(metaUserFriendApplyDTO -> {
|
|
|
+ User user = userRepo.findById(metaUserFriendApplyDTO.getUserId()).orElse(null);
|
|
|
if (Objects.nonNull(user)) {
|
|
|
- metaUserFriendApplyDTOS.add(new MetaUserFriendApplyDTO(userId, user.getNickname(), user.getAvatar()));
|
|
|
+ metaUserFriendApplyDTO.setAvatar(user.getAvatar());
|
|
|
+ metaUserFriendApplyDTO.setNickname(user.getNickname());
|
|
|
}
|
|
|
});
|
|
|
metaUserFriendAndApplyDTO.setMetaUserFriendApplyDTOS(metaUserFriendApplyDTOS);
|
|
|
@@ -99,10 +105,8 @@ public class MetaUserFriendService {
|
|
|
return metaUserFriendApplyRecordService.apply(metaUserFriendApplyRecord);
|
|
|
}
|
|
|
|
|
|
- public MetaRestResult<Void> delApply(Long userId) {
|
|
|
- Long friendId = SecurityUtils.getAuthenticatedUser().getId();
|
|
|
- // 判断申请记录
|
|
|
- MetaUserFriendApplyRecord metaUserFriendApplyRecord = metaUserFriendApplyRecordRepo.findByUserIdAndFriendIdAndDel(userId, friendId, false);
|
|
|
+ public MetaRestResult<Void> delApply(Long applyRecordId) {
|
|
|
+ MetaUserFriendApplyRecord metaUserFriendApplyRecord = metaUserFriendApplyRecordRepo.findById(applyRecordId).orElse(null);
|
|
|
if (Objects.isNull(metaUserFriendApplyRecord)) {
|
|
|
return MetaRestResult.returnError("申请单不存在");
|
|
|
}
|
|
|
@@ -116,13 +120,12 @@ public class MetaUserFriendService {
|
|
|
}
|
|
|
|
|
|
@Transactional
|
|
|
- public MetaRestResult<Void> operatingApply(Long userId, MetaUserFriendOperateType operateType) {
|
|
|
- if (Objects.isNull(userId)) {
|
|
|
- return MetaRestResult.returnError("Illegal parameter : userId can not be null");
|
|
|
+ public MetaRestResult<Void> operatingApply(Long metaUserFriendApplyRecordId, MetaUserFriendOperateType operateType) {
|
|
|
+ if (Objects.isNull(metaUserFriendApplyRecordId)) {
|
|
|
+ return MetaRestResult.returnError("Illegal parameter : metaUserFriendApplyRecordId can not be null");
|
|
|
}
|
|
|
- Long friendId = SecurityUtils.getAuthenticatedUser().getId();
|
|
|
// 判断申请记录
|
|
|
- MetaUserFriendApplyRecord metaUserFriendApplyRecord = metaUserFriendApplyRecordRepo.findByUserIdAndFriendIdAndDel(userId, friendId, false);
|
|
|
+ MetaUserFriendApplyRecord metaUserFriendApplyRecord = metaUserFriendApplyRecordRepo.findById(metaUserFriendApplyRecordId).orElse(null);
|
|
|
if (Objects.isNull(metaUserFriendApplyRecord)) {
|
|
|
return MetaRestResult.returnError("暂无申请信息");
|
|
|
}
|