admin
2019-09-20 db88b87df461820152d68d3d55a28f30c2da83e6
fanli/src/main/java/com/yeshi/fanli/service/impl/brand/BrandShopCaheServiceImpl.java
@@ -1,6 +1,5 @@
package com.yeshi.fanli.service.impl.brand;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
@@ -8,31 +7,20 @@
import org.springframework.stereotype.Service;
import com.yeshi.fanli.dao.brand.BrandGoodsCaheDao;
import com.yeshi.fanli.dao.brand.BrandShopCaheDao;
import com.yeshi.fanli.dto.jd.JDFilter;
import com.yeshi.fanli.dto.jd.JDSearchFilter;
import com.yeshi.fanli.dto.jd.JDSearchResult;
import com.yeshi.fanli.dto.jd.JDShopInfo;
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
import com.yeshi.fanli.dto.pdd.PDDGoodsResult;
import com.yeshi.fanli.dto.pdd.PDDSearchFilter;
import com.yeshi.fanli.entity.brand.BrandGoodsCahe;
import com.yeshi.fanli.entity.brand.BrandInfo;
import com.yeshi.fanli.entity.jd.JDGoods;
import com.yeshi.fanli.entity.taobao.SearchFilter;
import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult;
import com.yeshi.fanli.entity.brand.BrandShopCahe;
import com.yeshi.fanli.entity.taobao.TaoBaoShop;
import com.yeshi.fanli.service.inter.brand.BrandShopCaheService;
import com.yeshi.fanli.service.inter.config.ConfigService;
import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
import com.yeshi.fanli.tag.PageEntity;
import com.yeshi.fanli.util.factory.goods.GoodsDetailVOFactory;
import com.yeshi.fanli.util.jd.JDApiUtil;
import com.yeshi.fanli.util.jd.JDUtil;
import com.yeshi.fanli.service.inter.taobao.TaoBaoShopService;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.factory.goods.ShopInfoVOFactory;
import com.yeshi.fanli.util.pinduoduo.PinDuoDuoApiUtil;
import com.yeshi.fanli.util.taobao.SearchFilterUtil;
import com.yeshi.fanli.util.taobao.TaoBaoUtil;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
import com.yeshi.fanli.vo.goods.ShopInfoVO;
@Service
public class BrandShopCaheServiceImpl implements BrandShopCaheService {
@@ -40,47 +28,108 @@
   @Resource
   private BrandShopCaheDao brandShopCaheDao;
   
   @Override
   public void addBrandShop(BrandInfo brandInfo) {
      int count = 0;
//      // 淘宝
//      count += addBrandShopTB(brandInfo);
//      // 京东
//      count += addBrandShopJD(brandInfo);
//      // 拼多多
//      count += addBrandShopPDD(brandInfo);
   }
   @Resource
   private TaoBaoShopService taoBaoShopService;
   
   
   /**
    * 淘宝商品
    * 淘宝店铺
    * @param brandInfo
    * @return
    */
   private void addBrandShopTB(BrandInfo brandInfo) {
   @Override
   public boolean addBrandShopTB(Long brandId, Long auctionId, Long sellerId) {
      TaoBaoShop taoBaoShop = taoBaoShopService.getTaoBaoShop(auctionId, sellerId);
      if (taoBaoShop == null)
         return true;
      
      Date date = new Date();
      BrandShopCahe brandShop = new BrandShopCahe();
      brandShop.setBrandId(brandId);
      brandShop.setShop(ShopInfoVOFactory.convertTaoBaoShop(taoBaoShop));
      brandShop.setCreateTime(date);
      brandShopCaheDao.insert(brandShop);
      // 删除店铺
      brandShopCaheDao.removeByDate(brandId, 11, date);
      return false;
   }
   
   
   /**
    *  京东商品
    *  京东
    *  
    * @param brandInfo
    * @return
    */
   private void addBrandShopJD(BrandInfo brandInfo) {
   @Override
   public void addBrandShopJD(BrandInfo brandInfo, JDShopInfo shopInfo) {
      Date date = new Date();
      ShopInfoVO shopInfoVO = ShopInfoVOFactory.convertJDShop(shopInfo);
      shopInfoVO.setShopIcon(brandInfo.getIcon());
      BrandShopCahe brandShop = new BrandShopCahe();
      brandShop.setBrandId(brandInfo.getId());
      brandShop.setShop(shopInfoVO);
      brandShop.setCreateTime(date);
      brandShopCaheDao.save(brandShop);
      
      brandShopCaheDao.removeByDate(brandInfo.getId(), 20, date);
   }
   
   
   /**
    * 拼多多商品
    * 拼多多
    * @param brandInfo
    * @return
    */
   private void addBrandShopPDD(BrandInfo brandInfo) {
   @Override
   public void addBrandShopPDD(BrandInfo brandInfo) {
      ShopInfoVO shopInfoVO = null;
      String key = brandInfo.getName();
      PDDSearchFilter pddfilter = new PDDSearchFilter();
      pddfilter.setKw(key);
      pddfilter.setPage(1);
      pddfilter.setPageSize(100);
      pddfilter.setSortType(6);
      pddfilter.setMerchantType(3);
      PDDGoodsResult result = PinDuoDuoApiUtil.searchGoods(pddfilter);
      if (result != null) {
         List<PDDGoodsDetail> goodsList = result.getGoodsList();
         if (goodsList != null && goodsList.size() > 0) {
            for (PDDGoodsDetail goods : goodsList) {
               String mallName = goods.getMallName();
               if(goods.getMallId() != null && !StringUtil.isNullOrEmpty(mallName) && mallName.contains(key)){
                  shopInfoVO = new ShopInfoVO();
                  shopInfoVO.setId(goods.getMallId().toString());
                  shopInfoVO.setShopName(mallName);
                  break;
               }
            }
         }
      }
      
      if (shopInfoVO != null) {
         shopInfoVO.setShopIcon(brandInfo.getIcon());
         shopInfoVO.setUserType(30);
         shopInfoVO.setShopLink("https://mobile.yangkeduo.com/mall_page.html?mall_id=" + shopInfoVO.getId());
         Date date = new Date();
         BrandShopCahe brandShop = new BrandShopCahe();
         brandShop.setBrandId(brandInfo.getId());
         brandShop.setShop(shopInfoVO);
         brandShop.setCreateTime(date);
         brandShopCaheDao.insert(brandShop);
         brandShopCaheDao.removeByDate(brandInfo.getId(), 30, date);
      }
   }
   @Override
   public List<BrandShopCahe> getByBrandId(Long brandId){
      return brandShopCaheDao.getByBrandId(brandId);
   }
}