Commit c5b761a4 authored by muhong's avatar muhong

修改 小程序藏品详情视频和收藏册藏品图片

parent 36398dc2
...@@ -49,7 +49,7 @@ public class FavoritesDaoImpl implements FavoritesDao { ...@@ -49,7 +49,7 @@ public class FavoritesDaoImpl implements FavoritesDao {
FavoritesExample.Criteria criteria = example.createCriteria(); FavoritesExample.Criteria criteria = example.createCriteria();
criteria.andUserIdEqualTo(userId); criteria.andUserIdEqualTo(userId);
criteria.andDeletedEqualTo(false); criteria.andDeletedEqualTo(false);
example.orderBy("add_time desc");
return favoritesMapper.selectByExampleWithBLOBs(example); return favoritesMapper.selectByExampleWithBLOBs(example);
} }
......
...@@ -27,10 +27,7 @@ import org.springframework.stereotype.Service; ...@@ -27,10 +27,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport; import org.springframework.transaction.interceptor.TransactionAspectSupport;
import java.util.ArrayList; import java.util.*;
import java.util.Date;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@Service @Service
...@@ -147,7 +144,31 @@ public class FavoritesServiceImpl implements FavoritesService { ...@@ -147,7 +144,31 @@ public class FavoritesServiceImpl implements FavoritesService {
vo.setSort(favorites.getSort()); vo.setSort(favorites.getSort());
vo.setDeleted(favorites.getDeleted()); vo.setDeleted(favorites.getDeleted());
vo.setAddTime(favorites.getAddTime()); vo.setAddTime(favorites.getAddTime());
// vo.setImages(favorites.getImages()); vo.setImages(new ArrayList<>());
// 获取藏品的图片
List<FavoritesItemsRelation> favoritesItemsRelations = favoritesItemsRelationDao.listByFavoritesId(favorites.getId(), null);
if (CollectionUtils.isNotEmpty(favoritesItemsRelations)) {
CoinRequestDto coinRequestDto = new CoinRequestDto();
coinRequestDto.setIds(favoritesItemsRelations.stream()
.map(FavoritesItemsRelation::getItemId).collect(Collectors.toList()));
List<Item> items = itemDao.findListWithImages(coinRequestDto);
items = items.stream().filter(s -> StringUtils.isNotBlank(s.getImages())).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(items)) {
List<String> images = new ArrayList<>();
if (items.size() <= 4) {
for (Item item : items) {
String[] image = item.getImages().split(";");
images.add(image[0]);
}
} else {
for (int i = 0; i < 4; i ++) {
String[] image = items.get(i).getImages().split(";");
images.add(image[0]);
}
}
vo.setImages(images);
}
}
vo.setUpdateTime(favorites.getUpdateTime()); vo.setUpdateTime(favorites.getUpdateTime());
vo.setCount(favoritesItemsRelationDao.countByFavoritesId(favorites.getId())); vo.setCount(favoritesItemsRelationDao.countByFavoritesId(favorites.getId()));
result.add(vo); result.add(vo);
...@@ -270,6 +291,29 @@ public class FavoritesServiceImpl implements FavoritesService { ...@@ -270,6 +291,29 @@ public class FavoritesServiceImpl implements FavoritesService {
} else { } else {
vo.setCollectCount(String.format("%.1f", (double) count / 1000) + "k"); vo.setCollectCount(String.format("%.1f", (double) count / 1000) + "k");
} }
Map<String, Object> homePageMap = new HashMap<>();
if (StringUtils.isNotBlank(item.getVedios())) {
String[] vedioImage = item.getVedios().split(";");
if (vedioImage[0].contains(",")) {
String[] image = vedioImage[0].split(",");
homePageMap = getImageMap(image[1]);
homePageMap.put("url", image[1]);
homePageMap.put("type", 1);
}
} else {
String[] image = item.getImages().split(";");
if (image[0].contains("_")) {
homePageMap = getImageMap(image[0]);
homePageMap.put("url", image[0]);
homePageMap.put("type", 2);
} else {
homePageMap.put("type", 2);
homePageMap.put("url", image[0]);
homePageMap.put("width", "0");
homePageMap.put("height", "0");
}
}
vo.setHomePageImage(homePageMap);
AgentTranceResponseVo agentTranceResponseVo = new AgentTranceResponseVo(); AgentTranceResponseVo agentTranceResponseVo = new AgentTranceResponseVo();
agentTranceResponseVo.setAgentTraceInfo_(""); agentTranceResponseVo.setAgentTraceInfo_("");
...@@ -429,4 +473,14 @@ public class FavoritesServiceImpl implements FavoritesService { ...@@ -429,4 +473,14 @@ public class FavoritesServiceImpl implements FavoritesService {
return Result.failed("移动藏品失败"); return Result.failed("移动藏品失败");
} }
} }
private Map<String, Object> getImageMap(String image) {
Map<String, Object> map = new HashMap<>();
String[] _image = image.split("_");
String[] infoImage = _image[1].split("\\.");
String[] result = infoImage[0].split("x");
map.put("width", result[0]);
map.put("height", result[1]);
return map;
}
} }
...@@ -14,6 +14,7 @@ import com.wwdz.ch.wx.entity.vo.ItemResponseVo; ...@@ -14,6 +14,7 @@ import com.wwdz.ch.wx.entity.vo.ItemResponseVo;
import com.wwdz.ch.wx.service.FootPrintService; import com.wwdz.ch.wx.service.FootPrintService;
import com.xxdxxs.utils.DateUtils; import com.xxdxxs.utils.DateUtils;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -86,6 +87,30 @@ public class FootPrintServiceImpl implements FootPrintService { ...@@ -86,6 +87,30 @@ public class FootPrintServiceImpl implements FootPrintService {
} else { } else {
itemResponseVo.setCollectCount(String.format("%.1f", (double) count / 1000) + "k"); itemResponseVo.setCollectCount(String.format("%.1f", (double) count / 1000) + "k");
} }
Map<String, Object> homePageMap = new HashMap<>();
if (StringUtils.isNotBlank(item.getVedios())) {
String[] vedioImage = item.getVedios().split(";");
if (vedioImage[0].contains(",")) {
String[] image = vedioImage[0].split(",");
homePageMap = getImageMap(image[1]);
homePageMap.put("url", image[1]);
homePageMap.put("type", 1);
}
} else {
String[] image = item.getImages().split(";");
if (image[0].contains("_")) {
homePageMap = getImageMap(image[0]);
homePageMap.put("url", image[0]);
homePageMap.put("type", 2);
} else {
homePageMap.put("type", 2);
homePageMap.put("url", image[0]);
homePageMap.put("width", "0");
homePageMap.put("height", "0");
}
}
itemResponseVo.setHomePageImage(homePageMap);
if (footprint.getAddTime().compareTo(today) >= 0) { if (footprint.getAddTime().compareTo(today) >= 0) {
todayList.add(itemResponseVo); todayList.add(itemResponseVo);
} }
...@@ -186,6 +211,31 @@ public class FootPrintServiceImpl implements FootPrintService { ...@@ -186,6 +211,31 @@ public class FootPrintServiceImpl implements FootPrintService {
} else { } else {
itemResponseVo.setCollectCount(String.format("%.1f", (double) count / 1000) + "k"); itemResponseVo.setCollectCount(String.format("%.1f", (double) count / 1000) + "k");
} }
Map<String, Object> homePageMap = new HashMap<>();
if (StringUtils.isNotBlank(item.getVedios())) {
String[] vedioImage = item.getVedios().split(";");
if (vedioImage[0].contains(",")) {
String[] image = vedioImage[0].split(",");
homePageMap = getImageMap(image[1]);
homePageMap.put("url", image[1]);
homePageMap.put("type", 1);
}
} else {
String[] image = item.getImages().split(";");
if (image[0].contains("_")) {
homePageMap = getImageMap(image[0]);
homePageMap.put("url", image[0]);
homePageMap.put("type", 2);
} else {
homePageMap.put("type", 2);
homePageMap.put("url", image[0]);
homePageMap.put("width", "0");
homePageMap.put("height", "0");
}
}
itemResponseVo.setHomePageImage(homePageMap);
if (footprint.getAddTime().compareTo(today) >= 0) { if (footprint.getAddTime().compareTo(today) >= 0) {
todayList.add(itemResponseVo); todayList.add(itemResponseVo);
} }
...@@ -262,4 +312,14 @@ public class FootPrintServiceImpl implements FootPrintService { ...@@ -262,4 +312,14 @@ public class FootPrintServiceImpl implements FootPrintService {
return Result.failed(); return Result.failed();
} }
} }
private Map<String, Object> getImageMap(String image) {
Map<String, Object> map = new HashMap<>();
String[] _image = image.split("_");
String[] infoImage = _image[1].split("\\.");
String[] result = infoImage[0].split("x");
map.put("width", result[0]);
map.put("height", result[1]);
return map;
}
} }
...@@ -220,7 +220,20 @@ public class ItemServiceImpl implements ItemService { ...@@ -220,7 +220,20 @@ public class ItemServiceImpl implements ItemService {
itemResponseVo.setId(item.getId()); itemResponseVo.setId(item.getId());
itemResponseVo.setName(item.getName()); itemResponseVo.setName(item.getName());
itemResponseVo.setImages(item.getImages()); itemResponseVo.setImages(item.getImages());
itemResponseVo.setVideos(item.getVedios()); itemResponseVo.setVideos(null);
if (StringUtils.isNotBlank(item.getVedios())) {
StringBuilder stringBuilder = new StringBuilder();
String[] videos = item.getVedios().split(";");
for (String s : videos) {
if (s.contains(",")) {
String[] video = s.split(",");
stringBuilder.append(video[0]).append(";");
} else {
stringBuilder.append(s);
}
}
itemResponseVo.setVideos(stringBuilder.substring(0, stringBuilder.length() - 1));
}
itemResponseVo.setDetail(item.getDetail()); itemResponseVo.setDetail(item.getDetail());
itemResponseVo.setCid(item.getCid()); itemResponseVo.setCid(item.getCid());
Category category = categoryDao.findById(item.getCid()); Category category = categoryDao.findById(item.getCid());
...@@ -233,7 +246,7 @@ public class ItemServiceImpl implements ItemService { ...@@ -233,7 +246,7 @@ public class ItemServiceImpl implements ItemService {
itemResponseVo.setPrice(String.valueOf(item.getPrice().doubleValue() / 100)); itemResponseVo.setPrice(String.valueOf(item.getPrice().doubleValue() / 100));
} }
itemResponseVo.setSourceType(item.getSourceType()); itemResponseVo.setSourceType(item.getSourceType());
itemResponseVo.setCreateTime(DateUtils.toString(item.getCreateTime())); itemResponseVo.setCreateTime(DateUtils.toString(item.getUpdateTime()));
itemResponseVo.setIsCollected(0); itemResponseVo.setIsCollected(0);
itemResponseVo.setIsMine(0); itemResponseVo.setIsMine(0);
if (!dto.getUserId().equals(0L)) { if (!dto.getUserId().equals(0L)) {
...@@ -332,7 +345,6 @@ public class ItemServiceImpl implements ItemService { ...@@ -332,7 +345,6 @@ public class ItemServiceImpl implements ItemService {
if (StringUtils.isNotBlank(dto.getVideos())) { if (StringUtils.isNotBlank(dto.getVideos())) {
item.setVedios(getVediosImage(dto.getVideos())); item.setVedios(getVediosImage(dto.getVideos()));
} }
item.setVedios(dto.getVideos());
item.setPrice(Long.parseLong(dto.getPrice()) * 100); item.setPrice(Long.parseLong(dto.getPrice()) * 100);
item.setDetail(dto.getDetail()); item.setDetail(dto.getDetail());
Date now = new Date(); Date now = new Date();
......
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