admin
2019-01-03 5981b2cae7c20ec9021c8ccbe1a926f35f640210
fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityGoodsServiceImpl.java
@@ -1,5 +1,6 @@
package com.yeshi.fanli.service.impl.lable;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Resource;
@@ -16,6 +17,8 @@
import com.yeshi.fanli.dao.mybatis.lable.QualityFactoryMapper;
import com.yeshi.fanli.dao.mybatis.taobao.TaoBaoGoodsBriefMapper;
import com.yeshi.fanli.dao.mybatis.taobao.TaoBaoGoodsBriefRecordMapper;
import com.yeshi.fanli.entity.bus.lable.Label;
import com.yeshi.fanli.entity.bus.lable.LabelGoods;
import com.yeshi.fanli.entity.bus.lable.QualityFactory;
import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
import com.yeshi.fanli.service.inter.goods.TaoBaoGoodsBriefService;
@@ -25,6 +28,7 @@
import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.taobao.TaoBaoUtil;
import org.yeshi.utils.JsonUtil;
import org.yeshi.utils.taobao.TbImgUtil;
@@ -237,14 +241,18 @@
      return qualityFactoryMapper.countRecommendToIndex(proportion, commision, couponAmount, tkRate, couponRatio);
   }
   @Override
   public List<QualityFactory> listRecommendBykey(long start, int count, String key) {
      return qualityFactoryMapper.listRecommendBykey(start, count, key);
   public List<QualityFactory> listRecommendBykey(long start, int count, String key, Integer hasQuan,
         Integer userType, Double startprice, Double endprice, Double startTkRate, Double endTkRate, Integer sort) {
      return qualityFactoryMapper.listRecommendBykey(start, count, key, hasQuan, userType,
            startprice, endprice, startTkRate, endTkRate, sort);
   }
   @Override
   public long countRecommendBykey(String key) {
      return qualityFactoryMapper.countRecommendBykey(key);
   public long countRecommendBykey(String key, Integer hasQuan, Integer userType,
         Double startprice, Double endprice, Double startTkRate, Double endTkRate) {
      return qualityFactoryMapper.countRecommendBykey(key, hasQuan, userType, startprice, endprice, startTkRate, endTkRate);
   }
   
   
@@ -252,8 +260,8 @@
    * 首页最底部@商品信息流
    */
   @Override
   @Cacheable(value = "qualityCache",key="'listQueryToRecommend-'+#start+'-'+#proportion+'-'+#fcRate")
   public JSONArray getRecommendToIndex(long start, int count, String proportion, String fcRate) {
   @Cacheable(value = "qualityCache",key="'listQueryToRecommend-'+#start+'-'+#proportion")
   public JSONArray getRecommendToIndex(long start, int count, String proportion) {
      
      // 返利金额2元以上;
      Integer commision = 2; 
@@ -294,7 +302,7 @@
            String salesCountMidea = String.format("%.1f", sales / 10000);
            taoBaoGoodsBrief.setSalesCount(salesCountMidea + "万");
         } else {
            taoBaoGoodsBrief.setSalesCount(count + "");
            taoBaoGoodsBrief.setSalesCount(biz30day + "");
         }
         
         // 改变图片尺寸 
@@ -303,7 +311,7 @@
            taoBaoGoodsBrief.setPictUrl(TbImgUtil.getTBSize320Img(pictUrl));
         }
         
         array.add(gson.toJson(TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief, proportion, fcRate, null)));
         array.add(gson.toJson(TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief, proportion, null)));
      }
      return array;
@@ -330,5 +338,42 @@
      return countRecommend(pop, commision, couponAmount, tkRate, couponRatio);
   }
   
   @Override
   public List<QualityFactory> recommendByAuctionId(Long auctionId){
      List<Long> list = new ArrayList<Long>();
      list.add(auctionId);
      List<QualityFactory> listTaoBaoGoods = qualityFactoryMapper.listQueryByAuctionId(list);
      if (listTaoBaoGoods == null || listTaoBaoGoods.size() == 0) {
         return null;
      }
      QualityFactory qualityFactory = listTaoBaoGoods.get(0);
      TaoBaoGoodsBrief goodsBrief = qualityFactory.getTaoBaoGoodsBrief();
      if (goodsBrief == null) {
         return null;
      }
      List<LabelGoods> listLab = labelGoodsMapper.queryByGoodsId(0, 200, goodsBrief.getId());
      if (listLab == null || listLab.size() == 0) {
         return null;
      }
      // 标签id
      List<Long> listId = new ArrayList<Long>();
      for (LabelGoods labelGoods: listLab) {
         Label label = labelGoods.getLabel();
         if (label != null) {
            listId.add(label.getId());
         }
      }
      if (listId.size() == 0) {
         return null;
      }
      return qualityFactoryMapper.listQueryBylabIDs(0, 10, listId, goodsBrief.getId(),qualityFactory.getSystemCid());
   }
}