123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- package com.caimei.www.service.impl;
- import com.caimei.www.pojo.JsonModel;
- import com.caimei.www.mapper.HomeDao;
- import com.caimei.www.pojo.page.PageFloor;
- import com.caimei.www.pojo.page.ImageLink;
- import com.caimei.www.pojo.page.ProductList;
- import com.caimei.www.service.HomeService;
- import com.caimei.www.utils.ImageUtil;
- import com.caimei.www.utils.PriceUtil;
- import org.springframework.beans.factory.annotation.Value;
- import org.springframework.cache.annotation.Cacheable;
- import org.springframework.stereotype.Service;
- import javax.annotation.Resource;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- /**
- * Description
- *
- * @author : Charles
- * @date : 2020/6/22
- */
- @Service
- public class HomeServiceImpl implements HomeService {
- @Resource
- private HomeDao homeDao;
- @Value("${caimei.wwwDomain}")
- private String domain;
- /**
- * 首页楼层
- */
- @Override
- public List<PageFloor> getHomePageFloor() {
- List<PageFloor> floorList = homeDao.getHomePageFloor();
- return floorList;
- }
- /**
- * 首页轮播图
- */
- @Override
- @Cacheable(value = "getHomeBanners", key="'www'", unless="#result == null")
- public JsonModel<List<ImageLink>> getHomeBanners() {
- List<ImageLink> list = homeDao.getHomeBanners();
- return JsonModel.success(list);
- }
- /**
- * 首页左侧广告图
- */
- @Override
- @Cacheable(value = "getAdvertising", key="'www'", unless="#result == null")
- public JsonModel<List<ImageLink>> getAdvertising() {
- List<ImageLink> list = homeDao.getAdvertising();
- return JsonModel.success(list);
- }
- /**
- * 首页推荐专区商品
- */
- @Override
- @Cacheable(value = "getRecommendProducts", key="'www'", unless="#result == null")
- public JsonModel<List<ProductList>> getRecommendProducts() {
- List<ProductList> list = homeDao.getRecommendeds();
- if (list.size() > 0) {
- // 设置价格等级 及 老图片路径
- list.forEach(product -> {
- product.setPricegrade(PriceUtil.getPriceGrade(product.getPrice()));
- product.setPrice(0d);
- product.setImage(ImageUtil.getImageURL("product", product.getImage(), 0, domain));
- });
- }
- return JsonModel.success(list);
- }
- /**
- * 首页专题数据
- */
- @Override
- public JsonModel<Map<String, Object>> getHomeTopicData() {
- // 大专题:6,小专题:5,商品专题:4,优质供应商:3
- Map<String, Object> topicMap = new HashMap<>();
- // 6大专题二级楼层
- List<PageFloor> bigTopicFloors = homeDao.getHomeBigTopicFloor();
- bigTopicFloors.forEach(bigTopic -> {
- List<ImageLink> topicData = homeDao.getBigTopicData(bigTopic.getId());
- bigTopic.setFloorData(topicData);
- });
- topicMap.put("bigTopicData", bigTopicFloors);
- // 专题4
- List<ImageLink> topicData4 = homeDao.getCommodityTopicData();
- topicMap.put("topicData4", topicData4);
- // 专题5
- List<ImageLink> topicData5 = homeDao.getSmallTopicData();
- topicMap.put("topicData5", topicData5);
- // 专题3
- List<ImageLink> topicData3 = homeDao.getSuppliersTopData();
- topicMap.put("topicData3", topicData3);
- return JsonModel.success(topicMap);
- }
- }
|