Commit e29f414a authored by muhong's avatar muhong

修改 藏品和收藏册部分逻辑

parent de4b6615
...@@ -235,56 +235,49 @@ public class FavoritesServiceImpl implements FavoritesService { ...@@ -235,56 +235,49 @@ public class FavoritesServiceImpl implements FavoritesService {
// 获取仅自己可见的藏品列表 // 获取仅自己可见的藏品列表
Long userId = userTokenManager.getUserId(request.getHeader("Authorization")); Long userId = userTokenManager.getUserId(request.getHeader("Authorization"));
// 是否客态
boolean isGuest = !dto.getUserId().equals(userId);
List<Long> onlyOneselfItemIds = itemCommonService.getOnlyOneselfItemIds(request.getHeader("Authorization")); List<Long> onlyOneselfItemIds = itemCommonService.getOnlyOneselfItemIds(request.getHeader("Authorization"));
// 分页查询 // 分页查询
PageInfo<FavoritesItemsRelation> relationPage = favoritesItemsRelationDao.pageByFavoritesId(dto.getId(), onlyOneselfItemIds, dto.getPage(), dto.getSize()); PageInfo<FavoritesItemsRelation> relationPage = favoritesItemsRelationDao.pageByFavoritesId(dto.getId(), onlyOneselfItemIds, dto.getPage(), dto.getSize());
page.setHasNextPage(relationPage.isHasNextPage()); page.setHasNextPage(relationPage.isHasNextPage());
if (relationPage.getList().isEmpty()) { if (CollectionUtils.isNotEmpty(relationPage.getList())) {
return Result.success(page);
}
List<AgentTranceResponseVo> list = new ArrayList<>(); List<AgentTranceResponseVo> list = new ArrayList<>();
for (FavoritesItemsRelation relation : relationPage.getList()) { for (FavoritesItemsRelation relation : relationPage.getList()) {
AgentTranceResponseVo agentTranceResponseVo = new AgentTranceResponseVo(); AgentTranceResponseVo agentTranceResponseVo = new AgentTranceResponseVo();
agentTranceResponseVo.setAgentTraceInfo_(""); agentTranceResponseVo.setAgentTraceInfo_("");
agentTranceResponseVo.setViewType(2); agentTranceResponseVo.setViewType(2);
ItemResponseVo vo = new ItemResponseVo(); ItemResponseVo itemResponseVo = new ItemResponseVo();
Item item = itemDao.findDetails(relation.getItemId()); Item item = itemDao.findDetails(relation.getItemId());
// 设置基本信息 // 设置基本信息
vo.setId(relation.getItemId()); itemResponseVo.setId(relation.getItemId());
vo.setName(item.getName()); itemResponseVo.setName(item.getName());
vo.setImages(item.getImages()); itemResponseVo.setImages(item.getImages());
vo.setDetail(item.getDetail()); itemResponseVo.setDetail(item.getDetail());
vo.setFavoritesId(dto.getId()); itemResponseVo.setFavoritesId(dto.getId());
vo.setIsDeleted(item.getIsDeleted()); itemResponseVo.setIsDeleted(item.getIsDeleted());
itemResponseVo.setViewPermission(item.getViewPermission());
// 设置价格 // 设置价格
vo.setPrice(getPrice(item.getPrice())); itemResponseVo.setPrice(getPrice(item.getPrice()));
// 设置是否收藏或是否是自己发布的 // 设置是否收藏或是否是自己发布的
vo.setIsCollected(favoritesItemsRelationDao.isCollected(userId, relation.getItemId(), null) ? 1 : 0); itemResponseVo.setIsCollected(favoritesItemsRelationDao.isCollected(userId, relation.getItemId(), null) ? 1 : 0);
vo.setIsMine(0); itemResponseVo.setIsMine(userItemsRelationDao.isExisted(userId, item.getId()) ? 1 : 0);
if (Objects.nonNull(dto.getUserId()) && dto.getUserId() != 0L) {
if (!isGuest) {
vo.setIsMine(userItemsRelationDao.isExisted(dto.getUserId(), item.getId()) ? 1 : 0);
}
}
// 设置收藏数 // 设置收藏数
long count = favoritesItemsRelationDao.countByItemId(item.getId()); long count = favoritesItemsRelationDao.countByItemId(item.getId());
vo.setCollectCount(StringUtil.formatCount(count)); itemResponseVo.setCollectCount(StringUtil.formatCount(count));
// 设置藏品发布用户的昵称和头像 // 设置藏品发布用户的昵称和头像
itemCommonService.getNicknameAvatar(item.getId(), vo); itemCommonService.getNicknameAvatar(item.getId(), itemResponseVo);
vo.setViewPermission(item.getViewPermission());
// 设置浏览量 // 设置浏览量
vo.setViewsNumber(item.getViewPermission().equals(ViewPermissionEnum.ALL.getCode()) ? StringUtil.formatCount(footPrintDao.countByItemIds(vo.getItemUserId(), item.getId(), null)) : "0"); itemResponseVo.setViewsNumber(item.getViewPermission().equals(ViewPermissionEnum.ALL.getCode()) ?
StringUtil.formatCount(footPrintDao.countByItemIds(itemResponseVo.getItemUserId(), item.getId(), null)) : "0");
// 设置图片或视频 // 设置图片或视频
vo.setHomePageImage(MediaUtil.getHomePageImage(item.getImages(), item.getVideos())); itemResponseVo.setHomePageImage(MediaUtil.getHomePageImage(item.getImages(), item.getVideos()));
agentTranceResponseVo.setDetail(vo); agentTranceResponseVo.setDetail(itemResponseVo);
list.add(agentTranceResponseVo); list.add(agentTranceResponseVo);
} }
page.setTotal(favoritesItemsRelationDao.countByFavoritesId(dto.getId())); page.setTotal(favoritesItemsRelationDao.countByFavoritesId(dto.getId()));
page.setList(list); page.setList(list);
}
logger.info("【请求结束】查看收藏册的藏品列表成功"); logger.info("【请求结束】查看收藏册的藏品列表成功");
return Result.success(page); return Result.success(page);
} catch (Exception e) { } catch (Exception e) {
......
...@@ -158,35 +158,35 @@ public class ItemServiceImpl implements ItemService { ...@@ -158,35 +158,35 @@ public class ItemServiceImpl implements ItemService {
List<AgentTranceResponseVo> resultList = new ArrayList<>(); List<AgentTranceResponseVo> resultList = new ArrayList<>();
esPageInfo.getDataList().forEach(s -> { esPageInfo.getDataList().forEach(s -> {
ItemResponseVo vo = new ItemResponseVo(); ItemResponseVo itemResponseVo = new ItemResponseVo();
ItemOfEs es = (ItemOfEs) s; ItemOfEs es = (ItemOfEs) s;
// 设置基本信息 // 设置基本信息
vo.setId(es.getId()); itemResponseVo.setId(es.getId());
vo.setName(es.getName()); itemResponseVo.setName(es.getName());
vo.setDetail(es.getDetail()); itemResponseVo.setDetail(es.getDetail());
vo.setSourceType(es.getSourceType()); itemResponseVo.setSourceType(es.getSourceType());
itemResponseVo.setViewPermission(0);
// 设置价格 // 设置价格
vo.setPrice(getPrice(es.getPrice())); itemResponseVo.setPrice(getPrice(es.getPrice()));
// 设置图片或视频 // 设置图片或视频
vo.setHomePageImage(MediaUtil.getHomePageImage(es.getImages(), es.getVideos())); itemResponseVo.setHomePageImage(MediaUtil.getHomePageImage(es.getImages(), es.getVideos()));
// 设置是否收藏和是否是自己发布的 // 设置是否收藏和是否是自己发布的
vo.setIsCollected(0); itemResponseVo.setIsCollected(0);
vo.setIsMine(0); itemResponseVo.setIsMine(0);
if (Objects.nonNull(dto.getUserId()) && !dto.getUserId().equals(0L)) { if (Objects.nonNull(dto.getUserId()) && !dto.getUserId().equals(0L)) {
vo.setIsCollected(favoritesItemsRelationDao.isCollected(dto.getUserId(), es.getId(), null) ? 1 : 0); itemResponseVo.setIsCollected(favoritesItemsRelationDao.isCollected(dto.getUserId(), es.getId(), null) ? 1 : 0);
vo.setIsMine(userItemsRelationDao.isExisted(dto.getUserId(), es.getId()) ? 1 : 0); itemResponseVo.setIsMine(userItemsRelationDao.isExisted(dto.getUserId(), es.getId()) ? 1 : 0);
} }
// 设置收藏数 // 设置收藏数
long count = favoritesItemsRelationDao.countByItemId(es.getId()); long count = favoritesItemsRelationDao.countByItemId(es.getId());
vo.setCollectCount(StringUtil.formatCount(count)); itemResponseVo.setCollectCount(StringUtil.formatCount(count));
// 设置藏品发布用户的昵称和头像 // 设置藏品发布用户的昵称和头像
itemCommonService.getNicknameAvatar(es.getId(), vo); itemCommonService.getNicknameAvatar(es.getId(), itemResponseVo);
vo.setViewPermission(0);
AgentTranceResponseVo agentTranceResponseVo = new AgentTranceResponseVo(); AgentTranceResponseVo agentTranceResponseVo = new AgentTranceResponseVo();
agentTranceResponseVo.setAgentTraceInfo_(""); agentTranceResponseVo.setAgentTraceInfo_("");
agentTranceResponseVo.setViewType(1); agentTranceResponseVo.setViewType(1);
agentTranceResponseVo.setDetail(vo); agentTranceResponseVo.setDetail(itemResponseVo);
resultList.add(agentTranceResponseVo); resultList.add(agentTranceResponseVo);
}); });
result.setList(resultList); result.setList(resultList);
...@@ -201,8 +201,6 @@ public class ItemServiceImpl implements ItemService { ...@@ -201,8 +201,6 @@ public class ItemServiceImpl implements ItemService {
@Override @Override
public Result myPage(ItemRequestDto dto, HttpServletRequest request) { public Result myPage(ItemRequestDto dto, HttpServletRequest request) {
try { try {
Long userId = userTokenManager.getUserId(request.getHeader("Authorization"));
PageInfo<AgentTranceResponseVo> result = new PageInfo<>(); PageInfo<AgentTranceResponseVo> result = new PageInfo<>();
result.setPageNum(dto.getPage()); result.setPageNum(dto.getPage());
result.setPageSize(dto.getSize()); result.setPageSize(dto.getSize());
...@@ -219,6 +217,7 @@ public class ItemServiceImpl implements ItemService { ...@@ -219,6 +217,7 @@ public class ItemServiceImpl implements ItemService {
avatar = user.getAvatar(); avatar = user.getAvatar();
} }
// 是否客态 // 是否客态
Long userId = userTokenManager.getUserId(request.getHeader("Authorization"));
boolean isGuest = !dto.getUserId().equals(userId); boolean isGuest = !dto.getUserId().equals(userId);
// 获取官方用户id // 获取官方用户id
List<ItemsOfficialUsersRelation> itemsOfficialUsersRelations = itemsOfficialUsersRelationDao.list(); List<ItemsOfficialUsersRelation> itemsOfficialUsersRelations = itemsOfficialUsersRelationDao.list();
...@@ -244,45 +243,44 @@ public class ItemServiceImpl implements ItemService { ...@@ -244,45 +243,44 @@ public class ItemServiceImpl implements ItemService {
coinRequestDto.setViewPermission(dto.getViewPermission()); coinRequestDto.setViewPermission(dto.getViewPermission());
// 分页查询 // 分页查询
PageInfo<Item> pageInfo = itemDao.findPageNotDeleted(coinRequestDto); PageInfo<Item> pageInfo = itemDao.findPageNotDeleted(coinRequestDto);
if (CollectionUtils.isEmpty(pageInfo.getList())) { if (CollectionUtils.isNotEmpty(pageInfo.getList())) {
return Result.success(result);
}
result.setTotal(pageInfo.getTotal()); result.setTotal(pageInfo.getTotal());
result.setHasNextPage(pageInfo.isHasNextPage()); result.setHasNextPage(pageInfo.isHasNextPage());
List<AgentTranceResponseVo> resultList = new ArrayList<>(); List<AgentTranceResponseVo> resultList = new ArrayList<>();
for (Item item : pageInfo.getList()) { for (Item item : pageInfo.getList()) {
ItemResponseVo vo = new ItemResponseVo(); ItemResponseVo itemResponseVo = new ItemResponseVo();
// 设置基本信息 // 设置基本信息
vo.setId(item.getId()); itemResponseVo.setId(item.getId());
vo.setName(item.getName()); itemResponseVo.setName(item.getName());
vo.setDetail(item.getDetail()); itemResponseVo.setDetail(item.getDetail());
vo.setSourceType(item.getSourceType()); itemResponseVo.setSourceType(item.getSourceType());
itemResponseVo.setViewPermission(item.getViewPermission());
// 设置价格 // 设置价格
vo.setPrice(getPrice(item.getPrice())); itemResponseVo.setPrice(getPrice(item.getPrice()));
// 设置图片或视频 // 设置图片或视频
vo.setHomePageImage(MediaUtil.getHomePageImage(item.getImages(), item.getVideos())); itemResponseVo.setHomePageImage(MediaUtil.getHomePageImage(item.getImages(), item.getVideos()));
// 设置是否收藏和是否是自己发布的 // 设置是否收藏和是否是自己发布的
vo.setIsCollected(0); itemResponseVo.setIsCollected(favoritesItemsRelationDao.isCollected(userId, item.getId(), null) ? 1 : 0);
vo.setIsMine(isGuest ? 0 : 1); itemResponseVo.setIsMine(isGuest ? 0 : 1);
vo.setIsCollected(favoritesItemsRelationDao.isCollected(userId, item.getId(), null) ? 1 : 0);
// 设置收藏数 // 设置收藏数
long count = favoritesItemsRelationDao.countByItemId(item.getId()); long count = favoritesItemsRelationDao.countByItemId(item.getId());
vo.setCollectCount(StringUtil.formatCount(count)); itemResponseVo.setCollectCount(StringUtil.formatCount(count));
// 设置用户头像和昵称 // 设置用户头像和昵称
vo.setItemNickname(nickname); itemResponseVo.setItemNickname(nickname);
vo.setItemAvatar(avatar); itemResponseVo.setItemAvatar(avatar);
vo.setViewPermission(item.getViewPermission());
// 设置浏览量 // 设置浏览量
vo.setViewsNumber(item.getViewPermission().equals(ViewPermissionEnum.ALL.getCode()) ? StringUtil.formatCount(footPrintDao.countByItemIds(dto.getUserId(), item.getId(), null)) : "0"); itemResponseVo.setViewsNumber(item.getViewPermission().equals(ViewPermissionEnum.ALL.getCode()) ?
StringUtil.formatCount(footPrintDao.countByItemIds(dto.getUserId(), item.getId(), null)) : "0");
AgentTranceResponseVo agentTranceResponseVo = new AgentTranceResponseVo(); AgentTranceResponseVo agentTranceResponseVo = new AgentTranceResponseVo();
agentTranceResponseVo.setAgentTraceInfo_(""); agentTranceResponseVo.setAgentTraceInfo_("");
agentTranceResponseVo.setViewType(1); agentTranceResponseVo.setViewType(1);
agentTranceResponseVo.setDetail(vo); agentTranceResponseVo.setDetail(itemResponseVo);
resultList.add(agentTranceResponseVo); resultList.add(agentTranceResponseVo);
} }
result.setList(resultList); result.setList(resultList);
}
} else { } else {
ItemsOfficialUsersRelation itemsOfficialUsersRelation = itemsOfficialUsersRelationDao.findItems(dto.getUserId()); ItemsOfficialUsersRelation itemsOfficialUsersRelation = itemsOfficialUsersRelationDao.findItems(dto.getUserId());
if (Objects.nonNull(itemsOfficialUsersRelation)) { if (Objects.nonNull(itemsOfficialUsersRelation)) {
...@@ -300,34 +298,34 @@ public class ItemServiceImpl implements ItemService { ...@@ -300,34 +298,34 @@ public class ItemServiceImpl implements ItemService {
final String itemNickname = nickname; final String itemNickname = nickname;
final String itemAvatar = avatar; final String itemAvatar = avatar;
esPageInfo.getDataList().forEach(s -> { esPageInfo.getDataList().forEach(s -> {
ItemResponseVo vo = new ItemResponseVo(); ItemResponseVo itemResponseVo = new ItemResponseVo();
ItemOfEs es = (ItemOfEs) s; ItemOfEs es = (ItemOfEs) s;
// 设置基本信息 // 设置基本信息
vo.setId(es.getId()); itemResponseVo.setId(es.getId());
vo.setName(es.getName()); itemResponseVo.setName(es.getName());
vo.setDetail(es.getDetail()); itemResponseVo.setDetail(es.getDetail());
vo.setSourceType(es.getSourceType()); itemResponseVo.setSourceType(es.getSourceType());
itemResponseVo.setViewPermission(0);
// 设置价格 // 设置价格
vo.setPrice(getPrice(es.getPrice())); itemResponseVo.setPrice(getPrice(es.getPrice()));
// 设置图片或视频 // 设置图片或视频
vo.setHomePageImage(MediaUtil.getHomePageImage(es.getImages(), es.getVideos())); itemResponseVo.setHomePageImage(MediaUtil.getHomePageImage(es.getImages(), es.getVideos()));
// 设置是否收藏和是否是自己发布的 // 设置是否收藏和是否是自己发布的
vo.setIsMine(isGuest ? 0 : 1); itemResponseVo.setIsCollected(favoritesItemsRelationDao.isCollected(userId, es.getId(), null) ? 1 : 0);
vo.setIsCollected(favoritesItemsRelationDao.isCollected(userId, es.getId(), null) ? 1 : 0); itemResponseVo.setIsMine(isGuest ? 0 : 1);
// 设置收藏数 // 设置收藏数
long count = favoritesItemsRelationDao.countByItemId(es.getId()); long count = favoritesItemsRelationDao.countByItemId(es.getId());
vo.setCollectCount(StringUtil.formatCount(count)); itemResponseVo.setCollectCount(StringUtil.formatCount(count));
// 设置藏品发布用户的昵称和头像 // 设置藏品发布用户的昵称和头像
vo.setItemNickname(itemNickname); itemResponseVo.setItemNickname(itemNickname);
vo.setItemAvatar(itemAvatar); itemResponseVo.setItemAvatar(itemAvatar);
vo.setViewPermission(0);
// 设置浏览量 // 设置浏览量
vo.setViewsNumber(StringUtil.formatCount(footPrintDao.countByItemIds(dto.getUserId(), es.getId(), null))); itemResponseVo.setViewsNumber(StringUtil.formatCount(footPrintDao.countByItemIds(dto.getUserId(), es.getId(), null)));
AgentTranceResponseVo agentTranceResponseVo = new AgentTranceResponseVo(); AgentTranceResponseVo agentTranceResponseVo = new AgentTranceResponseVo();
agentTranceResponseVo.setAgentTraceInfo_(""); agentTranceResponseVo.setAgentTraceInfo_("");
agentTranceResponseVo.setViewType(1); agentTranceResponseVo.setViewType(1);
agentTranceResponseVo.setDetail(vo); agentTranceResponseVo.setDetail(itemResponseVo);
resultList.add(agentTranceResponseVo); resultList.add(agentTranceResponseVo);
}); });
result.setList(resultList); result.setList(resultList);
...@@ -351,17 +349,14 @@ public class ItemServiceImpl implements ItemService { ...@@ -351,17 +349,14 @@ public class ItemServiceImpl implements ItemService {
result.setList(new ArrayList<>()); result.setList(new ArrayList<>());
result.setHasNextPage(false); result.setHasNextPage(false);
// 获取仅自己可见的藏品列表
Long userId = userTokenManager.getUserId(request.getHeader("Authorization"));
// 是否客态 // 是否客态
Long userId = userTokenManager.getUserId(request.getHeader("Authorization"));
boolean isGuest = !dto.getUserId().equals(userId); boolean isGuest = !dto.getUserId().equals(userId);
// 获取仅自己可见的藏品列表 // 获取仅自己可见的藏品列表
List<Long> onlyOneselfItemIds = itemCommonService.getOnlyOneselfItemIds(request.getHeader("Authorization")); List<Long> onlyOneselfItemIds = itemCommonService.getOnlyOneselfItemIdsByUserId(userId);
// 分页查询 // 分页查询
PageInfo<FavoritesItemsRelation> pageInfo = favoritesItemsRelationDao.pageByUserId(dto.getUserId(), onlyOneselfItemIds, dto.getType(), dto.getPage(), dto.getSize()); PageInfo<FavoritesItemsRelation> pageInfo = favoritesItemsRelationDao.pageByUserId(dto.getUserId(), onlyOneselfItemIds, dto.getType(), dto.getPage(), dto.getSize());
if (CollectionUtils.isEmpty(pageInfo.getList())) { if (CollectionUtils.isNotEmpty(pageInfo.getList())) {
return Result.success(result);
}
result.setTotal(pageInfo.getTotal()); result.setTotal(pageInfo.getTotal());
result.setHasNextPage(pageInfo.isHasNextPage()); result.setHasNextPage(pageInfo.isHasNextPage());
...@@ -384,15 +379,17 @@ public class ItemServiceImpl implements ItemService { ...@@ -384,15 +379,17 @@ public class ItemServiceImpl implements ItemService {
itemResponseVo.setImages(item.getImages()); itemResponseVo.setImages(item.getImages());
itemResponseVo.setDetail(item.getDetail()); itemResponseVo.setDetail(item.getDetail());
itemResponseVo.setIsDeleted(item.getIsDeleted()); itemResponseVo.setIsDeleted(item.getIsDeleted());
itemResponseVo.setViewPermission(item.getViewPermission());
// 设置价格 // 设置价格
itemResponseVo.setPrice(getPrice(item.getPrice())); itemResponseVo.setPrice(getPrice(item.getPrice()));
// 设置是否收藏或是否是自己发布的 // 设置是否收藏或是否是自己发布的
itemResponseVo.setIsCollected(0); if (isGuest) {
itemResponseVo.setIsMine(0);
if (!isGuest) {
itemResponseVo.setIsMine(userItemsRelationDao.isExisted(dto.getUserId(), item.getId()) ? 1 : 0);
}
itemResponseVo.setIsCollected(favoritesItemsRelationDao.isCollected(userId, item.getId(), null) ? 1 : 0); itemResponseVo.setIsCollected(favoritesItemsRelationDao.isCollected(userId, item.getId(), null) ? 1 : 0);
} else {
itemResponseVo.setIsCollected(1);
}
itemResponseVo.setIsMine(userItemsRelationDao.isExisted(userId, item.getId()) ? 1 : 0);
// 设置收藏数 // 设置收藏数
long count = favoritesItemsRelationDao.countByItemId(item.getId()); long count = favoritesItemsRelationDao.countByItemId(item.getId());
itemResponseVo.setCollectCount(StringUtil.formatCount(count)); itemResponseVo.setCollectCount(StringUtil.formatCount(count));
...@@ -400,7 +397,6 @@ public class ItemServiceImpl implements ItemService { ...@@ -400,7 +397,6 @@ public class ItemServiceImpl implements ItemService {
itemResponseVo.setHomePageImage(MediaUtil.getHomePageImage(item.getImages(), item.getVideos())); itemResponseVo.setHomePageImage(MediaUtil.getHomePageImage(item.getImages(), item.getVideos()));
// 设置发布藏品用户的昵称和头像 // 设置发布藏品用户的昵称和头像
itemCommonService.getNicknameAvatar(item.getId(), itemResponseVo); itemCommonService.getNicknameAvatar(item.getId(), itemResponseVo);
itemResponseVo.setViewPermission(item.getViewPermission());
AgentTranceResponseVo agentTranceResponseVo = new AgentTranceResponseVo(); AgentTranceResponseVo agentTranceResponseVo = new AgentTranceResponseVo();
agentTranceResponseVo.setAgentTraceInfo_(""); agentTranceResponseVo.setAgentTraceInfo_("");
...@@ -409,6 +405,7 @@ public class ItemServiceImpl implements ItemService { ...@@ -409,6 +405,7 @@ public class ItemServiceImpl implements ItemService {
resultList.add(agentTranceResponseVo); resultList.add(agentTranceResponseVo);
} }
result.setList(resultList); result.setList(resultList);
}
logger.info("【请求结束】查询全部收藏成功"); logger.info("【请求结束】查询全部收藏成功");
return Result.success(result); return Result.success(result);
} catch (Exception e) { } catch (Exception e) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment