| | |
| | | package com.yeshi.fanli.service.impl.goods;
|
| | |
|
| | | import java.math.BigDecimal;
|
| | | import java.util.ArrayList;
|
| | | import java.util.Collections;
|
| | | import java.util.HashMap;
|
| | | import java.util.List;
|
| | | import java.util.Map;
|
| | |
|
| | | import javax.annotation.Resource;
|
| | |
|
| | | import org.springframework.cache.annotation.Cacheable;
|
| | | import org.springframework.stereotype.Service;
|
| | | import org.yeshi.utils.JsonUtil;
|
| | |
|
| | | import com.google.gson.Gson;
|
| | | import com.google.gson.GsonBuilder;
|
| | | import com.yeshi.fanli.dto.common.CommonContentNav;
|
| | | import com.yeshi.fanli.dto.common.CommonContentResult;
|
| | | import com.yeshi.fanli.dto.common.CommonContentTypeEnum;
|
| | | import com.yeshi.fanli.dto.dataoke.DaTaoKeGoodsResult;
|
| | | import com.yeshi.fanli.entity.bus.clazz.GoodsClass;
|
| | | import com.yeshi.fanli.entity.bus.lable.QualityFactory;
|
| | | import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
|
| | | import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBriefExtra;
|
| | | import com.yeshi.fanli.entity.taobao.TaoBaoHongBaoInfo;
|
| | | import com.yeshi.fanli.entity.taobao.TaobaoMeterial;
|
| | | import com.yeshi.fanli.entity.taobao.dataoke.DaTaoKeDetailV2;
|
| | | import com.yeshi.fanli.exception.taobao.TaoKeApiException;
|
| | | import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
|
| | | import com.yeshi.fanli.log.LogHelper;
|
| | | import com.yeshi.fanli.service.inter.goods.CommonTemplateContentService;
|
| | | import com.yeshi.fanli.service.inter.lable.QualityGoodsService;
|
| | | import com.yeshi.fanli.service.inter.lable.TaoKeGoodsService;
|
| | | import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
|
| | | import com.yeshi.fanli.service.inter.taobao.TaoBaoGoodsUpdateService;
|
| | | import com.yeshi.fanli.service.inter.taobao.TaobaoMeterialService;
|
| | | import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailService;
|
| | | import com.yeshi.fanli.util.Constant;
|
| | | import com.yeshi.fanli.util.dataoke.DaTaoKeApiUtil;
|
| | | import com.yeshi.fanli.util.taobao.DaTaoKeUtil;
|
| | | import com.yeshi.fanli.util.taobao.TaoBaoUtil;
|
| | | import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
|
| | |
|
| | | import net.sf.json.JSONArray;
|
| | | import net.sf.json.JSONObject;
|
| | |
|
| | | @Service
|
| | | public class CommonTemplateContentServiceImpl implements CommonTemplateContentService {
|
| | |
|
| | | @Resource
|
| | | private DaTaoKeGoodsDetailService daTaoKeGoodsDetailService;
|
| | |
|
| | | @Resource
|
| | | private TaobaoMeterialService taobaoMeterialService;
|
| | |
|
| | | @Resource
|
| | | private TaoKeGoodsService taoKeGoodsService;
|
| | |
|
| | | @Resource
|
| | | private HongBaoManageService hongBaoManageService;
|
| | |
|
| | | @Resource
|
| | | private QualityGoodsService qualityGoodsService;
|
| | |
|
| | | @Resource
|
| | | private TaoBaoGoodsUpdateService taoBaoGoodsUpdateService;
|
| | |
|
| | | private static List<CommonContentNav> getCommonNav() {
|
| | | List<CommonContentNav> navList = new ArrayList<>();
|
| | | navList.add(new CommonContentNav("1", "综合"));
|
| | | navList.add(new CommonContentNav("2", "最新"));
|
| | | navList.add(new CommonContentNav("3", "热卖"));
|
| | | navList.add(new CommonContentNav("4", "销量"));
|
| | | navList.add(new CommonContentNav("5", "返利比"));
|
| | | return navList;
|
| | | }
|
| | |
|
| | | private static int getCommonSort(String cid) {
|
| | | int sort = DaTaoKeApiUtil.SORT_DEFAULT;
|
| | | if ("1".equalsIgnoreCase(cid))
|
| | | sort = DaTaoKeApiUtil.SORT_DEFAULT;
|
| | | else if ("2".equalsIgnoreCase(cid))
|
| | | sort = DaTaoKeApiUtil.SORT_CREATETIME;
|
| | | else if ("3".equalsIgnoreCase(cid))
|
| | | sort = DaTaoKeApiUtil.SORT_COUPON_NUM;
|
| | | else if ("4".equalsIgnoreCase(cid))
|
| | | sort = DaTaoKeApiUtil.SORT_SALES;
|
| | | else if ("5".equalsIgnoreCase(cid))
|
| | | sort = DaTaoKeApiUtil.SORT_COMMISSION;
|
| | |
|
| | | return sort;
|
| | | }
|
| | |
|
| | | @Override
|
| | | public List<CommonContentNav> getNavList(CommonContentTypeEnum type) {
|
| | | List<CommonContentNav> navList = new ArrayList<>();
|
| | | if (type == CommonContentTypeEnum._9k9) {
|
| | | navList.add(new CommonContentNav("-1", "综合"));
|
| | | navList.add(new CommonContentNav("0", "最新"));
|
| | | for (GoodsClass gc : DaTaoKeUtil.goodsClasses) {
|
| | | navList.add(new CommonContentNav(gc.getId() + "", gc.getName()));
|
| | | }
|
| | | } else if (type == CommonContentTypeEnum.chaoSheng) {
|
| | | navList.add(new CommonContentNav("1", "1-5元返利"));
|
| | | navList.add(new CommonContentNav("2", "5-10元返利 "));
|
| | | navList.add(new CommonContentNav("3", "10-15元返利"));
|
| | | navList.add(new CommonContentNav("4", "15-20元返利"));
|
| | | navList.add(new CommonContentNav("5", "20元以上返利"));
|
| | | } else if (type == CommonContentTypeEnum.haoQuan) {
|
| | | navList.add(new CommonContentNav("1", "1-5元券"));
|
| | | navList.add(new CommonContentNav("2", "5-10元券"));
|
| | | navList.add(new CommonContentNav("3", "10-20元券"));
|
| | | navList.add(new CommonContentNav("4", "20-30元券"));
|
| | | navList.add(new CommonContentNav("5", "30-50元券"));
|
| | | navList.add(new CommonContentNav("6", "50元以上券"));
|
| | | } else if (type == CommonContentTypeEnum.juJia) {
|
| | | navList = getCommonNav();
|
| | | } else if (type == CommonContentTypeEnum.meiShi) {
|
| | | navList = getCommonNav();
|
| | | } else if (type == CommonContentTypeEnum.muYin) {
|
| | | navList.add(new CommonContentNav("1", "精选"));
|
| | | navList.add(new CommonContentNav("备孕", "备孕"));
|
| | | navList.add(new CommonContentNav("0至6个月", "0~6月"));
|
| | | navList.add(new CommonContentNav("7至12个月", "7~12月"));
|
| | | navList.add(new CommonContentNav("1至3岁", "1~3岁"));
|
| | | navList.add(new CommonContentNav("4至6岁", "4~6岁"));
|
| | | navList.add(new CommonContentNav("7至12岁", "7~12岁"));
|
| | | } else if (type == CommonContentTypeEnum.reMai) {
|
| | | navList = getCommonNav();
|
| | | } else if (type == CommonContentTypeEnum.chuanYiDaPei) {
|
| | | navList = getCommonNav();
|
| | | } else if (type == CommonContentTypeEnum.meiZhuangGehu) {
|
| | | navList = getCommonNav();
|
| | | } else if (type == CommonContentTypeEnum.jingPinXieBao) {
|
| | | navList = getCommonNav();
|
| | | } else if (type == CommonContentTypeEnum.chaoNanReMai) {
|
| | | navList = getCommonNav();
|
| | | } else if (type == CommonContentTypeEnum.shuMaShouJi) {
|
| | | navList = getCommonNav();
|
| | | } else if (type == CommonContentTypeEnum.yunDongKuXie) {
|
| | | navList = getCommonNav();
|
| | | } else if (type == CommonContentTypeEnum.qiCheHuWai) {
|
| | | navList = getCommonNav();
|
| | | } else if (type == CommonContentTypeEnum.chaoPinReMai) {
|
| | | navList = getCommonNav();
|
| | | } else if (type == CommonContentTypeEnum.mianDan) {
|
| | | navList = new ArrayList<>();
|
| | | }
|
| | |
|
| | | return navList;
|
| | | }
|
| | |
|
| | | @Cacheable(value = "commonContentCache", key = "#type+'-'+#cid+'-'+#page+'-'+#pageSize")
|
| | | @Override
|
| | | public CommonContentResult getContentList(CommonContentTypeEnum type, String cid, int page, int pageSize) {
|
| | | CommonContentResult result = null;
|
| | | if (type == CommonContentTypeEnum._9k9) {
|
| | | result = get9K9Content(cid, page, pageSize);
|
| | | } else if (type == CommonContentTypeEnum.juJia) {
|
| | | result = getJuJiaShengHuoContent(cid, page, pageSize);
|
| | | } else if (type == CommonContentTypeEnum.muYin) {
|
| | | result = getMuYinJingXuanContent(cid, page, pageSize);
|
| | | } else if (type == CommonContentTypeEnum.meiShi) {
|
| | | result = getYouXuanMeiShiContent(cid, page, pageSize);
|
| | | } else if (type == CommonContentTypeEnum.chuanYiDaPei) {
|
| | | result = getChuanYiDaPeiContent(cid, page, pageSize);
|
| | | } else if (type == CommonContentTypeEnum.meiZhuangGehu) {
|
| | | result = getMeiZhuangGeHuContent(cid, page, pageSize);
|
| | | } else if (type == CommonContentTypeEnum.jingPinXieBao) {
|
| | | result = getJingPinXieBaoContent(cid, page, pageSize);
|
| | | } else if (type == CommonContentTypeEnum.chaoNanReMai) {
|
| | | result = getChaoNanReMaiContent(cid, page, pageSize);
|
| | | } else if (type == CommonContentTypeEnum.shuMaShouJi) {
|
| | | result = getShuMaShouJiContent(cid, page, pageSize);
|
| | | } else if (type == CommonContentTypeEnum.yunDongKuXie) {
|
| | | result = getYunDongKuXieContent(cid, page, pageSize);
|
| | | } else if (type == CommonContentTypeEnum.qiCheHuWai) {
|
| | | result = getQiCheHuWaiContent(cid, page, pageSize);
|
| | | } else if (type == CommonContentTypeEnum.chaoPinReMai) {
|
| | | result = getChaoPinReMaiContent(cid, page, pageSize);
|
| | | } else if (type == CommonContentTypeEnum.chaoSheng) {
|
| | | result = getCaoShengContent(cid, page, pageSize);
|
| | | } else if (type == CommonContentTypeEnum.haoQuan) {
|
| | | result = getHaoQuanContent(cid, page, pageSize);
|
| | | } else if (type == CommonContentTypeEnum.mianDan) {
|
| | | result = getMianDanContent(page, pageSize);
|
| | | }
|
| | |
|
| | | if (result != null) {// 商品信息过滤
|
| | | List<TaoBaoGoodsBrief> goodsList = taoBaoGoodsUpdateService
|
| | | .filterImportantTaoBaoGoods(result.getGoodsList());
|
| | | result.setGoodsList(goodsList);
|
| | | }
|
| | |
|
| | | return result;
|
| | | }
|
| | |
|
| | | /**
|
| | | * 9快9包邮
|
| | | * |
| | | * @param cid
|
| | | * @param page
|
| | | * @param pageSize
|
| | | * @return
|
| | | */
|
| | | private CommonContentResult get9K9Content(String cid, int page, int pageSize) {
|
| | | if (pageSize == 20)
|
| | | pageSize = 50;
|
| | |
|
| | | DaTaoKeGoodsResult result = null;
|
| | | if ("-1".equalsIgnoreCase(cid)) {
|
| | | result = DaTaoKeApiUtil.search("", null, null, new BigDecimal("10"), page, pageSize,
|
| | | DaTaoKeApiUtil.SORT_DEFAULT);
|
| | |
|
| | | } else if ("0".equalsIgnoreCase(cid)) {
|
| | | result = DaTaoKeApiUtil.search("", null, null, new BigDecimal("10"), page, pageSize,
|
| | | DaTaoKeApiUtil.SORT_CREATETIME);
|
| | | } else {
|
| | | List<Integer> cidList = new ArrayList<>();
|
| | | cidList.add(Integer.parseInt(cid));
|
| | | result = DaTaoKeApiUtil.search("", cidList, null, new BigDecimal("10"), page, pageSize,
|
| | | DaTaoKeApiUtil.SORT_DEFAULT);
|
| | | }
|
| | |
|
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
|
| | | long count = 0;
|
| | | if (result != null) {
|
| | | count = result.getTotalCount();
|
| | | if (result.getGoodsList() != null)
|
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList())
|
| | | goodsList.add(TaoBaoUtil.convert(detail));
|
| | | }
|
| | | return new CommonContentResult(goodsList, count);
|
| | | }
|
| | |
|
| | | /**
|
| | | * 超级省钱
|
| | | * |
| | | * @param cid
|
| | | * @param page
|
| | | * @param pageSize
|
| | | * @return
|
| | | */
|
| | | private CommonContentResult getCaoShengContent(String cid, int page, int pageSize) {
|
| | | pageSize = Constant.PAGE_SIZE;
|
| | | Integer startAmount = null;
|
| | | Integer endAmount = null;
|
| | |
|
| | | if (cid.equalsIgnoreCase(1 + "")) {
|
| | | startAmount = 1;
|
| | | endAmount = 5;
|
| | | } else if (cid.equalsIgnoreCase(2 + "")) {
|
| | | startAmount = 5;
|
| | | endAmount = 10;
|
| | | } else if (cid.equalsIgnoreCase(3 + "")) {
|
| | | startAmount = 10;
|
| | | endAmount = 15;
|
| | | } else if (cid.equalsIgnoreCase(4 + "")) {
|
| | | startAmount = 15;
|
| | | endAmount = 20;
|
| | | } else if (cid.equalsIgnoreCase(5 + "")) {
|
| | | startAmount = 20;
|
| | | endAmount = 10000;
|
| | | }
|
| | |
|
| | | double tkRate = 20.00;
|
| | |
|
| | | BigDecimal proportion = hongBaoManageService.getFanLiRate();
|
| | | List<QualityFactory> listQuery = qualityGoodsService.listQueryByRebateAmount((page - 1) * pageSize, pageSize,
|
| | | proportion.toString(), startAmount, endAmount, tkRate);
|
| | |
|
| | | long count = qualityGoodsService.countQueryByRebateAmount(proportion.toString(), startAmount, endAmount,
|
| | | tkRate);
|
| | |
|
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
|
| | | // 遍历列表数据
|
| | | if (listQuery != null)
|
| | | for (QualityFactory quality : listQuery) {
|
| | | TaoBaoGoodsBrief taoBaoGoodsBrief = quality.getTaoBaoGoodsBrief();
|
| | | if (taoBaoGoodsBrief == null) {
|
| | | continue;
|
| | | }
|
| | |
|
| | | int biz30day = taoBaoGoodsBrief.getBiz30day();
|
| | | if (biz30day >= 10000) {
|
| | | double sales = biz30day;
|
| | | String salesCountMidea = String.format("%.1f", sales / 10000);
|
| | | taoBaoGoodsBrief.setSalesCount(salesCountMidea + "万");
|
| | | } else {
|
| | | taoBaoGoodsBrief.setSalesCount(biz30day + "");
|
| | | }
|
| | | goodsList.add(taoBaoGoodsBrief);
|
| | | }
|
| | | return new CommonContentResult(goodsList, count);
|
| | | }
|
| | |
|
| | | /**
|
| | | * 高额好券
|
| | | * |
| | | * @param cid
|
| | | * @param page
|
| | | * @param pageSize
|
| | | * @return
|
| | | */
|
| | | private CommonContentResult getHaoQuanContent(String cid, int page, int pageSize) {
|
| | | pageSize = Constant.PAGE_SIZE;
|
| | |
|
| | | Integer startAmount = null;
|
| | | Integer endAmount = null;
|
| | |
|
| | | if (cid.equalsIgnoreCase(1 + "")) {
|
| | | startAmount = 1;
|
| | | endAmount = 5;
|
| | | } else if (cid.equalsIgnoreCase(2 + "")) {
|
| | | startAmount = 5;
|
| | | endAmount = 10;
|
| | | } else if (cid.equalsIgnoreCase(3 + "")) {
|
| | | startAmount = 10;
|
| | | endAmount = 20;
|
| | | } else if (cid.equalsIgnoreCase(4 + "")) {
|
| | | startAmount = 20;
|
| | | endAmount = 30;
|
| | | } else if (cid.equalsIgnoreCase(5 + "")) {
|
| | | startAmount = 30;
|
| | | endAmount = 50;
|
| | | } else if (cid.equalsIgnoreCase(6 + "")) {
|
| | | startAmount = 50;
|
| | | endAmount = 10000;
|
| | | }
|
| | |
|
| | | Integer startPropor = 20;
|
| | |
|
| | | List<QualityFactory> listQuery = qualityGoodsService.listQueryByCouponAmount((page - 1) * pageSize, pageSize,
|
| | | startAmount, endAmount, startPropor);
|
| | |
|
| | | long count = qualityGoodsService.countQueryByCouponAmount(startAmount, endAmount, startPropor);
|
| | |
|
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
|
| | |
|
| | | // 遍历列表数据
|
| | |
|
| | | for (QualityFactory selectionGoods : listQuery) {
|
| | |
|
| | | TaoBaoGoodsBrief taoBaoGoodsBrief = selectionGoods.getTaoBaoGoodsBrief();
|
| | |
|
| | | if (taoBaoGoodsBrief == null) {
|
| | | continue;
|
| | | }
|
| | |
|
| | | int biz30day = taoBaoGoodsBrief.getBiz30day();
|
| | | if (biz30day >= 10000) {
|
| | | double sales = biz30day;
|
| | | String salesCountMidea = String.format("%.1f", sales / 10000);
|
| | | taoBaoGoodsBrief.setSalesCount(salesCountMidea + "万");
|
| | | } else {
|
| | | taoBaoGoodsBrief.setSalesCount(biz30day + "");
|
| | | }
|
| | | goodsList.add(taoBaoGoodsBrief);
|
| | | }
|
| | | return new CommonContentResult(goodsList, count);
|
| | | }
|
| | |
|
| | | /**
|
| | | * 居家生活
|
| | | * |
| | | * @param cid
|
| | | * @param page
|
| | | * @param pageSize
|
| | | * @return
|
| | | */
|
| | | private CommonContentResult getJuJiaShengHuoContent(String cid, int page, int pageSize) {
|
| | | DaTaoKeGoodsResult result = null;
|
| | | List<Integer> cidList = new ArrayList<>();
|
| | | cidList.add(4);// 居家生活
|
| | | int sort = getCommonSort(cid);
|
| | | result = DaTaoKeApiUtil.search("", cidList, null, null, page, pageSize, sort);
|
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
|
| | | long count = 0;
|
| | | if (result != null) {
|
| | | count = result.getTotalCount();
|
| | | if (result.getGoodsList() != null)
|
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList())
|
| | | goodsList.add(TaoBaoUtil.convert(detail));
|
| | | }
|
| | | return new CommonContentResult(goodsList, count);
|
| | | }
|
| | |
|
| | | /**
|
| | | * 优选美食
|
| | | * |
| | | * @param cid
|
| | | * @param page
|
| | | * @param pageSize
|
| | | * @return
|
| | | */
|
| | | private CommonContentResult getYouXuanMeiShiContent(String cid, int page, int pageSize) {
|
| | | DaTaoKeGoodsResult result = null;
|
| | | List<Integer> cidList = new ArrayList<>();
|
| | | cidList.add(6);// 美食
|
| | | int sort = getCommonSort(cid);
|
| | | result = DaTaoKeApiUtil.search("", cidList, null, null, page, pageSize, sort);
|
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
|
| | | long count = 0;
|
| | | if (result != null) {
|
| | | count = result.getTotalCount();
|
| | | if (result.getGoodsList() != null)
|
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList())
|
| | | goodsList.add(TaoBaoUtil.convert(detail));
|
| | | }
|
| | | return new CommonContentResult(goodsList, count);
|
| | | }
|
| | |
|
| | | /**
|
| | | * 潮品热卖
|
| | | * |
| | | * @param cid
|
| | | * @param page
|
| | | * @param pageSize
|
| | | * @return
|
| | | */
|
| | | private CommonContentResult getChaoPinReMaiContent(String cid, int page, int pageSize) {
|
| | | DaTaoKeGoodsResult result = null;
|
| | |
|
| | | int sort = getCommonSort(cid);
|
| | | result = DaTaoKeApiUtil.search("潮", null, null, null, page, pageSize, sort);
|
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
|
| | | long count = 0;
|
| | | if (result != null) {
|
| | | count = result.getTotalCount();
|
| | | if (result.getGoodsList() != null)
|
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList())
|
| | | goodsList.add(TaoBaoUtil.convert(detail));
|
| | | }
|
| | | return new CommonContentResult(goodsList, count);
|
| | | }
|
| | |
|
| | | /**
|
| | | * 获取母婴精选
|
| | | * |
| | | * @param cid
|
| | | * @param page
|
| | | * @param pageSize
|
| | | * @return
|
| | | */
|
| | | private CommonContentResult getMuYinJingXuanContent(String cid, int page, int pageSize) {
|
| | | DaTaoKeGoodsResult result = null;
|
| | | if ("1".equalsIgnoreCase(cid)) {// 大淘客数据
|
| | | List<Integer> cidList = new ArrayList<>();
|
| | | cidList.add(2);// 母婴
|
| | | result = DaTaoKeApiUtil.search("", cidList, null, null, page, pageSize, DaTaoKeApiUtil.SORT_DEFAULT);
|
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
|
| | | long count = 0;
|
| | | if (result != null) {
|
| | | count = result.getTotalCount();
|
| | | if (result.getGoodsList() != null)
|
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList())
|
| | | goodsList.add(TaoBaoUtil.convert(detail));
|
| | | }
|
| | | return new CommonContentResult(goodsList, count);
|
| | |
|
| | | } else {//
|
| | | List<TaobaoMeterial> taobaoMeterials = taobaoMeterialService.selectByClassNameAndSuperNameCache("母婴_" + cid,
|
| | | "母婴主题");
|
| | |
|
| | | if (taobaoMeterials == null || taobaoMeterials.size() == 0) {
|
| | | return null;
|
| | | }
|
| | |
|
| | | TaobaoMeterial meterial = taobaoMeterials.get(0);
|
| | | Integer materialId = meterial.getMaterialId();
|
| | | if (materialId != null) {
|
| | | List<TaoBaoGoodsBrief> listBrands = new ArrayList<>();
|
| | | try {
|
| | | listBrands = taoKeGoodsService.listByMaterial(materialId, page, pageSize);
|
| | | } catch (Exception e) {
|
| | | e.printStackTrace();
|
| | | }
|
| | | return new CommonContentResult(listBrands, 1000);
|
| | | }
|
| | | return new CommonContentResult(new ArrayList<>(), 0);
|
| | | }
|
| | |
|
| | | }
|
| | |
|
| | | /**
|
| | | * 穿衣搭配
|
| | | * |
| | | * @param cid
|
| | | * @param page
|
| | | * @param pageSize
|
| | | * @return
|
| | | */
|
| | | private CommonContentResult getChuanYiDaPeiContent(String cid, int page, int pageSize) {
|
| | | DaTaoKeGoodsResult result = null;
|
| | | List<Integer> cidList = new ArrayList<>();
|
| | | cidList.add(1);// 女装
|
| | | int sort = getCommonSort(cid);
|
| | | result = DaTaoKeApiUtil.search("内衣 女", cidList, null, null, page, pageSize, sort);
|
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
|
| | | long count = 0;
|
| | | if (result != null) {
|
| | | count = result.getTotalCount();
|
| | | if (result.getGoodsList() != null)
|
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList())
|
| | | goodsList.add(TaoBaoUtil.convert(detail));
|
| | | }
|
| | | return new CommonContentResult(goodsList, count);
|
| | | }
|
| | |
|
| | | /**
|
| | | * 美妆个护
|
| | | * |
| | | * @param cid
|
| | | * @param page
|
| | | * @param pageSize
|
| | | * @return
|
| | | */
|
| | | private CommonContentResult getMeiZhuangGeHuContent(String cid, int page, int pageSize) {
|
| | | DaTaoKeGoodsResult result = null;
|
| | | List<Integer> cidList = new ArrayList<>();
|
| | | cidList.add(3);// 美妆
|
| | | int sort = getCommonSort(cid);
|
| | | result = DaTaoKeApiUtil.search("洗护", cidList, null, null, page, pageSize, sort);
|
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
|
| | | long count = 0;
|
| | | if (result != null) {
|
| | | count = result.getTotalCount();
|
| | | if (result.getGoodsList() != null)
|
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList())
|
| | | goodsList.add(TaoBaoUtil.convert(detail));
|
| | | }
|
| | | return new CommonContentResult(goodsList, count);
|
| | | }
|
| | |
|
| | | /**
|
| | | * 精品鞋包
|
| | | * |
| | | * @param cid
|
| | | * @param page
|
| | | * @param pageSize
|
| | | * @return
|
| | | */
|
| | |
|
| | | private CommonContentResult getJingPinXieBaoContent(String cid, int page, int pageSize) {
|
| | | DaTaoKeGoodsResult result = null;
|
| | | int sort = getCommonSort(cid);
|
| | | result = DaTaoKeApiUtil.search("鞋 女", null, null, null, page, pageSize, sort);
|
| | | DaTaoKeGoodsResult result1 = DaTaoKeApiUtil.search("包 女", null, null, null, page, pageSize, sort);
|
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
|
| | | long count = 0;
|
| | | if (result != null) {
|
| | | count = result.getTotalCount() + result1.getTotalCount();
|
| | | if (result.getGoodsList() != null)
|
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList())
|
| | | goodsList.add(TaoBaoUtil.convert(detail));
|
| | | if (result1.getGoodsList() != null)
|
| | | for (DaTaoKeDetailV2 detail : result1.getGoodsList())
|
| | | goodsList.add(TaoBaoUtil.convert(detail));
|
| | | }
|
| | | Collections.shuffle(goodsList);
|
| | | return new CommonContentResult(goodsList, count);
|
| | | }
|
| | |
|
| | | /**
|
| | | * 潮男热卖
|
| | | * |
| | | * @param cid
|
| | | * @param page
|
| | | * @param pageSize
|
| | | * @return
|
| | | */
|
| | | private CommonContentResult getChaoNanReMaiContent(String cid, int page, int pageSize) {
|
| | | DaTaoKeGoodsResult result = null;
|
| | | int sort = getCommonSort(cid);
|
| | | result = DaTaoKeApiUtil.search("潮 男", null, null, null, page, pageSize, sort);
|
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
|
| | | long count = 0;
|
| | | if (result != null) {
|
| | | count = result.getTotalCount();
|
| | | if (result.getGoodsList() != null)
|
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList())
|
| | | goodsList.add(TaoBaoUtil.convert(detail));
|
| | | }
|
| | | Collections.shuffle(goodsList);
|
| | | return new CommonContentResult(goodsList, count);
|
| | | }
|
| | |
|
| | | /**
|
| | | * 数码手机
|
| | | * |
| | | * @param cid
|
| | | * @param page
|
| | | * @param pageSize
|
| | | * @return
|
| | | */
|
| | | private CommonContentResult getShuMaShouJiContent(String cid, int page, int pageSize) {
|
| | | DaTaoKeGoodsResult result = null;
|
| | | int sort = getCommonSort(cid);
|
| | | result = DaTaoKeApiUtil.search("电", null, null, null, page, pageSize, sort);
|
| | | DaTaoKeGoodsResult result1 = DaTaoKeApiUtil.search("手机", null, null, null, page, pageSize, sort);
|
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
|
| | | long count = 0;
|
| | | if (result != null) {
|
| | | count = result.getTotalCount() + result1.getTotalCount();
|
| | | if (result.getGoodsList() != null)
|
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList())
|
| | | goodsList.add(TaoBaoUtil.convert(detail));
|
| | | if (result1.getGoodsList() != null)
|
| | | for (DaTaoKeDetailV2 detail : result1.getGoodsList())
|
| | | goodsList.add(TaoBaoUtil.convert(detail));
|
| | | }
|
| | | Collections.shuffle(goodsList);
|
| | | return new CommonContentResult(goodsList, count);
|
| | | }
|
| | |
|
| | | /**
|
| | | * 运动酷鞋
|
| | | * |
| | | * @param cid
|
| | | * @param page
|
| | | * @param pageSize
|
| | | * @return
|
| | | */
|
| | | private CommonContentResult getYunDongKuXieContent(String cid, int page, int pageSize) {
|
| | | DaTaoKeGoodsResult result = null;
|
| | | int sort = getCommonSort(cid);
|
| | | result = DaTaoKeApiUtil.search("鞋 男", null, null, null, page, pageSize, sort);
|
| | | DaTaoKeGoodsResult result1 = DaTaoKeApiUtil.search("运动 男", null, null, null, page, pageSize, sort);
|
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
|
| | | long count = 0;
|
| | | if (result != null) {
|
| | | count = result.getTotalCount() + result1.getTotalCount();
|
| | | if (result.getGoodsList() != null)
|
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList())
|
| | | goodsList.add(TaoBaoUtil.convert(detail));
|
| | | if (result1.getGoodsList() != null)
|
| | | for (DaTaoKeDetailV2 detail : result1.getGoodsList())
|
| | | goodsList.add(TaoBaoUtil.convert(detail));
|
| | | }
|
| | | Collections.shuffle(goodsList);
|
| | | return new CommonContentResult(goodsList, count);
|
| | | }
|
| | |
|
| | | /**
|
| | | * 汽车户外
|
| | | * |
| | | * @param cid
|
| | | * @param page
|
| | | * @param pageSize
|
| | | * @return
|
| | | */
|
| | | private CommonContentResult getQiCheHuWaiContent(String cid, int page, int pageSize) {
|
| | | DaTaoKeGoodsResult result = null;
|
| | | List<Integer> cidList = new ArrayList<>();
|
| | | cidList.add(7);
|
| | | cidList.add(13);
|
| | | int sort = getCommonSort(cid);
|
| | | result = DaTaoKeApiUtil.search("", cidList, null, null, page, pageSize, sort);
|
| | | DaTaoKeGoodsResult result1 = DaTaoKeApiUtil.search("运动 男", cidList, null, null, page, pageSize, sort);
|
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
|
| | | long count = 0;
|
| | | if (result != null) {
|
| | | count = result.getTotalCount() + result1.getTotalCount();
|
| | | if (result.getGoodsList() != null)
|
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList())
|
| | | goodsList.add(TaoBaoUtil.convert(detail));
|
| | | if (result1.getGoodsList() != null)
|
| | | for (DaTaoKeDetailV2 detail : result1.getGoodsList())
|
| | | goodsList.add(TaoBaoUtil.convert(detail));
|
| | | }
|
| | | Collections.shuffle(goodsList);
|
| | | return new CommonContentResult(goodsList, count);
|
| | | }
|
| | |
|
| | | /**
|
| | | * 获取免单商品
|
| | | * |
| | | * @return
|
| | | */
|
| | | private CommonContentResult getMianDanContent(int page, int pageSize) {
|
| | | CommonContentResult result = new CommonContentResult();
|
| | | List<QualityFactory> listQuery = qualityGoodsService.listFreeGoods((page - 1) * pageSize, pageSize);
|
| | | long count = qualityGoodsService.countFreeGoods();
|
| | | result.setCount(count);
|
| | | List<Long> listGid = new ArrayList<Long>();
|
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
|
| | | for (QualityFactory qualityFactory : listQuery) {
|
| | | TaoBaoGoodsBrief taoBaoGoodsBrief = qualityFactory.getTaoBaoGoodsBrief();
|
| | | if (taoBaoGoodsBrief == null) {
|
| | | continue;
|
| | | }
|
| | | listGid.add(taoBaoGoodsBrief.getAuctionId());
|
| | | goodsList.add(taoBaoGoodsBrief);
|
| | | }
|
| | | // 去掉已经不在售的商品
|
| | | List<TaoBaoGoodsBrief> listTaoKeGoods = null;
|
| | | try {
|
| | | listTaoKeGoods = TaoKeApiUtil.getBatchGoodsInfo(listGid);
|
| | | } catch (TaoKeApiException e) {
|
| | | e.printStackTrace();
|
| | | } catch (TaobaoGoodsDownException e) {
|
| | | e.printStackTrace();
|
| | | } catch (Exception e) {
|
| | | e.printStackTrace();
|
| | | }
|
| | | Map<Long, TaoBaoGoodsBrief> goodsMap = new HashMap<>();
|
| | | for (TaoBaoGoodsBrief goods : listTaoKeGoods)
|
| | | goodsMap.put(goods.getAuctionId(), goods);
|
| | | for (int i = 0; i < goodsList.size(); i++) {
|
| | | if (goodsMap.get(goodsList.get(i).getAuctionId()) == null) {
|
| | | goodsList.remove(i--);
|
| | | }
|
| | | }
|
| | | // 过滤基本商品信息
|
| | | goodsList = taoBaoGoodsUpdateService.filterImportantTaoBaoGoods(goodsList);
|
| | |
|
| | | for (int i = 0; i < goodsList.size(); i++) {
|
| | | TaoBaoGoodsBrief goods = goodsList.get(i);
|
| | | BigDecimal price = TaoBaoUtil.getAfterUseCouplePrice(goods);
|
| | | if (price.compareTo(new BigDecimal(10)) >= 0) {
|
| | | goodsList.remove(i--);
|
| | | }
|
| | | }
|
| | | result.setGoodsList(goodsList);
|
| | | return result;
|
| | | }
|
| | |
|
| | | }
|
| | | package com.yeshi.fanli.service.impl.goods; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.ArrayList; |
| | | import java.util.Collections; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | import javax.annotation.Resource; |
| | | |
| | | import com.yeshi.fanli.entity.SystemEnum; |
| | | import com.yeshi.fanli.entity.SystemFunction; |
| | | import com.yeshi.fanli.entity.goods.CommonGoods; |
| | | import com.yeshi.fanli.util.SystemInfoUtil; |
| | | import com.yeshi.fanli.util.factory.CommonGoodsFactory; |
| | | import com.yeshi.goods.facade.dto.taobao.haodanku.HaoDanKuJDGoodsInfo; |
| | | import com.yeshi.goods.facade.dto.taobao.haodanku.HaoDanKuListResult; |
| | | import com.yeshi.goods.facade.dto.taobao.haodanku.HaoDanKuPDDGoodsInfo; |
| | | import com.yeshi.goods.facade.entity.taobao.haodanku.HDKGoodsDetail; |
| | | import com.yeshi.goods.facade.utils.taobao.HaoDanKuApiUtil; |
| | | import com.yeshi.goods.facade.utils.taobao.HaoDankuUtil; |
| | | import org.springframework.cache.annotation.Cacheable; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import com.yeshi.fanli.dto.common.CommonContentNav; |
| | | import com.yeshi.fanli.dto.common.CommonContentResult; |
| | | import com.yeshi.fanli.dto.common.CommonContentTypeEnum; |
| | | import com.yeshi.goods.facade.dto.taobao.dataoke.DaTaoKeGoodsResult; |
| | | import com.yeshi.fanli.entity.bus.clazz.GoodsClass; |
| | | import com.yeshi.fanli.entity.bus.lable.QualityFactory; |
| | | import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief; |
| | | import com.yeshi.fanli.entity.taobao.TaobaoMeterial; |
| | | import com.yeshi.goods.facade.entity.taobao.dataoke.DaTaoKeDetailV2; |
| | | import com.yeshi.fanli.exception.taobao.TaoKeApiException; |
| | | import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException; |
| | | import com.yeshi.fanli.service.inter.goods.CommonTemplateContentService; |
| | | import com.yeshi.fanli.service.inter.lable.QualityGoodsService; |
| | | import com.yeshi.fanli.service.inter.lable.TaoKeGoodsService; |
| | | import com.yeshi.fanli.service.inter.order.config.HongBaoManageService; |
| | | import com.yeshi.fanli.service.inter.taobao.TaoBaoGoodsUpdateService; |
| | | import com.yeshi.fanli.service.inter.taobao.TaobaoMeterialService; |
| | | import com.yeshi.goods.facade.service.DaTaoKeGoodsDetailV2Service; |
| | | import com.yeshi.fanli.util.Constant; |
| | | import com.yeshi.goods.facade.utils.taobao.DaTaoKeApiUtil; |
| | | import com.yeshi.fanli.util.taobao.DaTaoKeUtil; |
| | | import com.yeshi.fanli.util.taobao.TaoBaoUtil; |
| | | import com.yeshi.fanli.util.taobao.TaoKeApiUtil; |
| | | |
| | | @Service |
| | | public class CommonTemplateContentServiceImpl implements CommonTemplateContentService { |
| | | |
| | | @Resource |
| | | private DaTaoKeGoodsDetailV2Service daTaoKeGoodsDetailV2Service; |
| | | |
| | | @Resource |
| | | private TaobaoMeterialService taobaoMeterialService; |
| | | |
| | | @Resource |
| | | private TaoKeGoodsService taoKeGoodsService; |
| | | |
| | | @Resource |
| | | private HongBaoManageService hongBaoManageService; |
| | | |
| | | @Resource |
| | | private QualityGoodsService qualityGoodsService; |
| | | |
| | | @Resource |
| | | private TaoBaoGoodsUpdateService taoBaoGoodsUpdateService; |
| | | |
| | | private static List<CommonContentNav> getCommonNav(SystemEnum system) { |
| | | List<CommonContentNav> navList = new ArrayList<>(); |
| | | navList.add(new CommonContentNav("1", "综合")); |
| | | navList.add(new CommonContentNav("2", "最新")); |
| | | navList.add(new CommonContentNav("3", "热卖")); |
| | | navList.add(new CommonContentNav("4", "销量")); |
| | | if (SystemInfoUtil.hasFunctions(system, SystemFunction.fanli)) |
| | | navList.add(new CommonContentNav("5", "返利比")); |
| | | return navList; |
| | | } |
| | | |
| | | private static int getCommonSort(String cid) { |
| | | int sort = DaTaoKeApiUtil.SORT_DEFAULT; |
| | | if ("1".equalsIgnoreCase(cid)) |
| | | sort = DaTaoKeApiUtil.SORT_DEFAULT; |
| | | else if ("2".equalsIgnoreCase(cid)) |
| | | sort = DaTaoKeApiUtil.SORT_CREATETIME; |
| | | else if ("3".equalsIgnoreCase(cid)) |
| | | sort = DaTaoKeApiUtil.SORT_COUPON_NUM; |
| | | else if ("4".equalsIgnoreCase(cid)) |
| | | sort = DaTaoKeApiUtil.SORT_SALES; |
| | | else if ("5".equalsIgnoreCase(cid)) |
| | | sort = DaTaoKeApiUtil.SORT_COMMISSION; |
| | | |
| | | return sort; |
| | | } |
| | | |
| | | @Override |
| | | public List<CommonContentNav> getNavList(CommonContentTypeEnum type, SystemEnum system) { |
| | | List<CommonContentNav> navList = new ArrayList<>(); |
| | | if (type == CommonContentTypeEnum._9k9) { |
| | | navList.add(new CommonContentNav("-1", "综合")); |
| | | navList.add(new CommonContentNav("0", "最新")); |
| | | for (GoodsClass gc : DaTaoKeUtil.goodsClasses) { |
| | | navList.add(new CommonContentNav(gc.getId() + "", gc.getName())); |
| | | } |
| | | } else if (type == CommonContentTypeEnum.chaoSheng) { |
| | | navList.add(new CommonContentNav("1", "1-5元返利")); |
| | | navList.add(new CommonContentNav("2", "5-10元返利 ")); |
| | | navList.add(new CommonContentNav("3", "10-15元返利")); |
| | | navList.add(new CommonContentNav("4", "15-20元返利")); |
| | | navList.add(new CommonContentNav("5", "20元以上返利")); |
| | | } else if (type == CommonContentTypeEnum.haoQuan) { |
| | | navList.add(new CommonContentNav("1", "1-5元券")); |
| | | navList.add(new CommonContentNav("2", "5-10元券")); |
| | | navList.add(new CommonContentNav("3", "10-20元券")); |
| | | navList.add(new CommonContentNav("4", "20-30元券")); |
| | | navList.add(new CommonContentNav("5", "30-50元券")); |
| | | navList.add(new CommonContentNav("6", "50元以上券")); |
| | | } else if (type == CommonContentTypeEnum.juJia) { |
| | | navList = getCommonNav(system); |
| | | } else if (type == CommonContentTypeEnum.meiShi) { |
| | | navList = getCommonNav(system); |
| | | } else if (type == CommonContentTypeEnum.muYin) { |
| | | navList.add(new CommonContentNav("1", "精选")); |
| | | navList.add(new CommonContentNav("备孕", "备孕")); |
| | | navList.add(new CommonContentNav("0至6个月", "0~6月")); |
| | | navList.add(new CommonContentNav("7至12个月", "7~12月")); |
| | | navList.add(new CommonContentNav("1至3岁", "1~3岁")); |
| | | navList.add(new CommonContentNav("4至6岁", "4~6岁")); |
| | | navList.add(new CommonContentNav("7至12岁", "7~12岁")); |
| | | } else if (type == CommonContentTypeEnum.reMai) { |
| | | navList = getCommonNav(system); |
| | | } else if (type == CommonContentTypeEnum.chuanYiDaPei) { |
| | | navList = getCommonNav(system); |
| | | } else if (type == CommonContentTypeEnum.meiZhuangGehu) { |
| | | navList = getCommonNav(system); |
| | | } else if (type == CommonContentTypeEnum.jingPinXieBao) { |
| | | navList = getCommonNav(system); |
| | | } else if (type == CommonContentTypeEnum.chaoNanReMai) { |
| | | navList = getCommonNav(system); |
| | | } else if (type == CommonContentTypeEnum.shuMaShouJi) { |
| | | navList = getCommonNav(system); |
| | | } else if (type == CommonContentTypeEnum.yunDongKuXie) { |
| | | navList = getCommonNav(system); |
| | | } else if (type == CommonContentTypeEnum.qiCheHuWai) { |
| | | navList = getCommonNav(system); |
| | | } else if (type == CommonContentTypeEnum.chaoPinReMai) { |
| | | navList = getCommonNav(system); |
| | | } else if (type == CommonContentTypeEnum.mianDan) { |
| | | navList = new ArrayList<>(); |
| | | } else if (type == CommonContentTypeEnum.pddHotGoodsRank) { |
| | | //好单库数据 |
| | | navList.add(new CommonContentNav("0", "全部")); |
| | | for (HaoDankuUtil.Category category : HaoDankuUtil.CATEGORYS) { |
| | | navList.add(new CommonContentNav(category.getId() + "", category.getName())); |
| | | } |
| | | } else if (type == CommonContentTypeEnum.jdHotGoodsRank) { |
| | | //好单库数据 |
| | | navList.add(new CommonContentNav("0", "全部")); |
| | | for (HaoDankuUtil.Category category : HaoDankuUtil.CATEGORYS) { |
| | | navList.add(new CommonContentNav(category.getId() + "", category.getName())); |
| | | } |
| | | } else if (type == CommonContentTypeEnum.tbHotGoodsRank) { |
| | | //好单库数据 |
| | | navList.add(new CommonContentNav("0", "全部")); |
| | | for (HaoDankuUtil.Category category : HaoDankuUtil.CATEGORYS) { |
| | | navList.add(new CommonContentNav(category.getId() + "", category.getName())); |
| | | } |
| | | } |
| | | |
| | | return navList; |
| | | } |
| | | |
| | | @Cacheable(value = "commonContentCache", key = "#type+'-'+#cid+'-'+#page+'-'+#pageSize+'-'+#system") |
| | | @Override |
| | | public CommonContentResult getContentList(CommonContentTypeEnum type, String cid, int page, int pageSize, SystemEnum system) { |
| | | CommonContentResult result = null; |
| | | if (type == CommonContentTypeEnum._9k9) { |
| | | result = get9K9Content(cid, page, pageSize); |
| | | } else if (type == CommonContentTypeEnum.juJia) { |
| | | result = getJuJiaShengHuoContent(cid, page, pageSize); |
| | | } else if (type == CommonContentTypeEnum.muYin) { |
| | | result = getMuYinJingXuanContent(cid, page, pageSize); |
| | | } else if (type == CommonContentTypeEnum.meiShi) { |
| | | result = getYouXuanMeiShiContent(cid, page, pageSize); |
| | | } else if (type == CommonContentTypeEnum.chuanYiDaPei) { |
| | | result = getChuanYiDaPeiContent(cid, page, pageSize); |
| | | } else if (type == CommonContentTypeEnum.meiZhuangGehu) { |
| | | result = getMeiZhuangGeHuContent(cid, page, pageSize); |
| | | } else if (type == CommonContentTypeEnum.jingPinXieBao) { |
| | | result = getJingPinXieBaoContent(cid, page, pageSize); |
| | | } else if (type == CommonContentTypeEnum.chaoNanReMai) { |
| | | result = getChaoNanReMaiContent(cid, page, pageSize); |
| | | } else if (type == CommonContentTypeEnum.shuMaShouJi) { |
| | | result = getShuMaShouJiContent(cid, page, pageSize); |
| | | } else if (type == CommonContentTypeEnum.yunDongKuXie) { |
| | | result = getYunDongKuXieContent(cid, page, pageSize); |
| | | } else if (type == CommonContentTypeEnum.qiCheHuWai) { |
| | | result = getQiCheHuWaiContent(cid, page, pageSize); |
| | | } else if (type == CommonContentTypeEnum.chaoPinReMai) { |
| | | result = getChaoPinReMaiContent(cid, page, pageSize); |
| | | } else if (type == CommonContentTypeEnum.chaoSheng) { |
| | | result = getCaoShengContent(cid, page, pageSize, system); |
| | | } else if (type == CommonContentTypeEnum.haoQuan) { |
| | | result = getHaoQuanContent(cid, page, pageSize); |
| | | } else if (type == CommonContentTypeEnum.mianDan) { |
| | | result = getMianDanContent(page, pageSize); |
| | | } else if (type == CommonContentTypeEnum.pddHotGoodsRank) { |
| | | result = getPDDHotGoodsRankContent(cid, page); |
| | | } else if (type == CommonContentTypeEnum.jdHotGoodsRank) { |
| | | result = getJDHotGoodsRankContent(cid, page); |
| | | } else if (type == CommonContentTypeEnum.tbHotGoodsRank) { |
| | | result = getTBHotGoodsRankContent(cid, page); |
| | | } |
| | | |
| | | if (result != null) {// 商品信息过滤 |
| | | List<CommonGoods> goodsList = taoBaoGoodsUpdateService |
| | | .filterImportantTaoBaoGoodsWithCommonGoods(result.getGoodsList()); |
| | | result.setGoodsList(goodsList); |
| | | } |
| | | |
| | | return result; |
| | | } |
| | | |
| | | /** |
| | | * 9快9包邮 |
| | | * |
| | | * @param cid |
| | | * @param page |
| | | * @param pageSize |
| | | * @return |
| | | */ |
| | | private CommonContentResult get9K9Content(String cid, int page, int pageSize) { |
| | | if (pageSize == 20) |
| | | pageSize = 50; |
| | | |
| | | DaTaoKeGoodsResult result = null; |
| | | if ("-1".equalsIgnoreCase(cid)) { |
| | | result = DaTaoKeApiUtil.getGoodsList("", null, null, new BigDecimal("10"), null, page, pageSize, |
| | | DaTaoKeApiUtil.SORT_DEFAULT); |
| | | |
| | | if (result == null || result.getGoodsList() == null || result.getGoodsList().size() == 0) { |
| | | result = new DaTaoKeGoodsResult(); |
| | | result.setGoodsList( |
| | | daTaoKeGoodsDetailV2Service.listByMaxPrice(null, new BigDecimal("10"), null, page, pageSize)); |
| | | result.setTotalCount(daTaoKeGoodsDetailV2Service.countByMaxPrice(null, new BigDecimal("10"))); |
| | | } |
| | | |
| | | } else if ("0".equalsIgnoreCase(cid)) { |
| | | result = DaTaoKeApiUtil.getGoodsList("", null, null, new BigDecimal("10"), null, page, pageSize, |
| | | DaTaoKeApiUtil.SORT_CREATETIME); |
| | | if (result == null || result.getGoodsList() == null || result.getGoodsList().size() == 0) { |
| | | result = new DaTaoKeGoodsResult(); |
| | | result.setGoodsList(daTaoKeGoodsDetailV2Service.listByMaxPrice(null, new BigDecimal("10"), "createTime", |
| | | page, pageSize)); |
| | | result.setTotalCount(daTaoKeGoodsDetailV2Service.countByMaxPrice(null, new BigDecimal("10"))); |
| | | } |
| | | } else { |
| | | List<Integer> cidList = new ArrayList<>(); |
| | | cidList.add(Integer.parseInt(cid)); |
| | | result = DaTaoKeApiUtil.getGoodsList("", cidList, null, new BigDecimal("10"), null, page, pageSize, |
| | | DaTaoKeApiUtil.SORT_DEFAULT); |
| | | |
| | | if (result == null || result.getGoodsList() == null || result.getGoodsList().size() == 0) { |
| | | result = new DaTaoKeGoodsResult(); |
| | | result.setGoodsList(daTaoKeGoodsDetailV2Service.listByMaxPrice(Integer.parseInt(cid), |
| | | new BigDecimal("10"), null, page, pageSize)); |
| | | result.setTotalCount( |
| | | daTaoKeGoodsDetailV2Service.countByMaxPrice(Integer.parseInt(cid), new BigDecimal("10"))); |
| | | } |
| | | } |
| | | |
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); |
| | | long count = 0; |
| | | if (result != null) { |
| | | count = result.getTotalCount(); |
| | | if (result.getGoodsList() != null) |
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList()) |
| | | goodsList.add(TaoBaoUtil.convert(detail)); |
| | | } |
| | | return new CommonContentResult(CommonGoodsFactory.createTaoBaoList(goodsList), count); |
| | | } |
| | | |
| | | /** |
| | | * 超级省钱 |
| | | * |
| | | * @param cid |
| | | * @param page |
| | | * @param pageSize |
| | | * @return |
| | | */ |
| | | private CommonContentResult getCaoShengContent(String cid, int page, int pageSize, SystemEnum system) { |
| | | pageSize = Constant.PAGE_SIZE; |
| | | Integer startAmount = null; |
| | | Integer endAmount = null; |
| | | |
| | | if (cid.equalsIgnoreCase(1 + "")) { |
| | | startAmount = 1; |
| | | endAmount = 5; |
| | | } else if (cid.equalsIgnoreCase(2 + "")) { |
| | | startAmount = 5; |
| | | endAmount = 10; |
| | | } else if (cid.equalsIgnoreCase(3 + "")) { |
| | | startAmount = 10; |
| | | endAmount = 15; |
| | | } else if (cid.equalsIgnoreCase(4 + "")) { |
| | | startAmount = 15; |
| | | endAmount = 20; |
| | | } else if (cid.equalsIgnoreCase(5 + "")) { |
| | | startAmount = 20; |
| | | endAmount = 10000; |
| | | } |
| | | |
| | | double tkRate = 20.00; |
| | | |
| | | BigDecimal proportion = hongBaoManageService.getFanLiRate(system); |
| | | List<QualityFactory> listQuery = qualityGoodsService.listQueryByRebateAmount((page - 1) * pageSize, pageSize, |
| | | proportion.toString(), startAmount, endAmount, tkRate); |
| | | |
| | | long count = qualityGoodsService.countQueryByRebateAmount(proportion.toString(), startAmount, endAmount, |
| | | tkRate); |
| | | |
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); |
| | | // 遍历列表数据 |
| | | if (listQuery != null) |
| | | for (QualityFactory quality : listQuery) { |
| | | TaoBaoGoodsBrief taoBaoGoodsBrief = quality.getTaoBaoGoodsBrief(); |
| | | if (taoBaoGoodsBrief == null) { |
| | | continue; |
| | | } |
| | | |
| | | int biz30day = taoBaoGoodsBrief.getBiz30day(); |
| | | if (biz30day >= 10000) { |
| | | double sales = biz30day; |
| | | String salesCountMidea = String.format("%.1f", sales / 10000); |
| | | taoBaoGoodsBrief.setSalesCount(salesCountMidea + "万"); |
| | | } else { |
| | | taoBaoGoodsBrief.setSalesCount(biz30day + ""); |
| | | } |
| | | goodsList.add(taoBaoGoodsBrief); |
| | | } |
| | | return new CommonContentResult(CommonGoodsFactory.createTaoBaoList(goodsList), count); |
| | | } |
| | | |
| | | /** |
| | | * 高额好券 |
| | | * |
| | | * @param cid |
| | | * @param page |
| | | * @param pageSize |
| | | * @return |
| | | */ |
| | | private CommonContentResult getHaoQuanContent(String cid, int page, int pageSize) { |
| | | pageSize = Constant.PAGE_SIZE; |
| | | |
| | | Integer startAmount = null; |
| | | Integer endAmount = null; |
| | | |
| | | if (cid.equalsIgnoreCase(1 + "")) { |
| | | startAmount = 1; |
| | | endAmount = 5; |
| | | } else if (cid.equalsIgnoreCase(2 + "")) { |
| | | startAmount = 5; |
| | | endAmount = 10; |
| | | } else if (cid.equalsIgnoreCase(3 + "")) { |
| | | startAmount = 10; |
| | | endAmount = 20; |
| | | } else if (cid.equalsIgnoreCase(4 + "")) { |
| | | startAmount = 20; |
| | | endAmount = 30; |
| | | } else if (cid.equalsIgnoreCase(5 + "")) { |
| | | startAmount = 30; |
| | | endAmount = 50; |
| | | } else if (cid.equalsIgnoreCase(6 + "")) { |
| | | startAmount = 50; |
| | | endAmount = 10000; |
| | | } |
| | | |
| | | Integer startPropor = 20; |
| | | |
| | | List<QualityFactory> listQuery = qualityGoodsService.listQueryByCouponAmount((page - 1) * pageSize, pageSize, |
| | | startAmount, endAmount, startPropor); |
| | | |
| | | long count = qualityGoodsService.countQueryByCouponAmount(startAmount, endAmount, startPropor); |
| | | |
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); |
| | | |
| | | // 遍历列表数据 |
| | | |
| | | for (QualityFactory selectionGoods : listQuery) { |
| | | |
| | | TaoBaoGoodsBrief taoBaoGoodsBrief = selectionGoods.getTaoBaoGoodsBrief(); |
| | | |
| | | if (taoBaoGoodsBrief == null) { |
| | | continue; |
| | | } |
| | | |
| | | int biz30day = taoBaoGoodsBrief.getBiz30day(); |
| | | if (biz30day >= 10000) { |
| | | double sales = biz30day; |
| | | String salesCountMidea = String.format("%.1f", sales / 10000); |
| | | taoBaoGoodsBrief.setSalesCount(salesCountMidea + "万"); |
| | | } else { |
| | | taoBaoGoodsBrief.setSalesCount(biz30day + ""); |
| | | } |
| | | goodsList.add(taoBaoGoodsBrief); |
| | | } |
| | | return new CommonContentResult(CommonGoodsFactory.createTaoBaoList(goodsList), count); |
| | | } |
| | | |
| | | /** |
| | | * 居家生活 |
| | | * |
| | | * @param cid |
| | | * @param page |
| | | * @param pageSize |
| | | * @return |
| | | */ |
| | | private CommonContentResult getJuJiaShengHuoContent(String cid, int page, int pageSize) { |
| | | DaTaoKeGoodsResult result = null; |
| | | List<Integer> cidList = new ArrayList<>(); |
| | | cidList.add(4);// 居家生活 |
| | | int sort = getCommonSort(cid); |
| | | result = DaTaoKeApiUtil.getGoodsList("", cidList, null, null, null, page, pageSize, sort); |
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); |
| | | long count = 0; |
| | | if (result != null) { |
| | | count = result.getTotalCount(); |
| | | if (result.getGoodsList() != null) |
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList()) |
| | | goodsList.add(TaoBaoUtil.convert(detail)); |
| | | } |
| | | return new CommonContentResult(CommonGoodsFactory.createTaoBaoList(goodsList), count); |
| | | } |
| | | |
| | | /** |
| | | * 优选美食 |
| | | * |
| | | * @param cid |
| | | * @param page |
| | | * @param pageSize |
| | | * @return |
| | | */ |
| | | private CommonContentResult getYouXuanMeiShiContent(String cid, int page, int pageSize) { |
| | | DaTaoKeGoodsResult result = null; |
| | | List<Integer> cidList = new ArrayList<>(); |
| | | cidList.add(6);// 美食 |
| | | int sort = getCommonSort(cid); |
| | | result = DaTaoKeApiUtil.getGoodsList("", cidList, null, null, null, page, pageSize, sort); |
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); |
| | | long count = 0; |
| | | if (result != null) { |
| | | count = result.getTotalCount(); |
| | | if (result.getGoodsList() != null) |
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList()) |
| | | goodsList.add(TaoBaoUtil.convert(detail)); |
| | | } |
| | | return new CommonContentResult(CommonGoodsFactory.createTaoBaoList(goodsList), count); |
| | | } |
| | | |
| | | /** |
| | | * 潮品热卖 |
| | | * |
| | | * @param cid |
| | | * @param page |
| | | * @param pageSize |
| | | * @return |
| | | */ |
| | | private CommonContentResult getChaoPinReMaiContent(String cid, int page, int pageSize) { |
| | | DaTaoKeGoodsResult result = null; |
| | | |
| | | int sort = getCommonSort(cid); |
| | | result = DaTaoKeApiUtil.search("潮", null, null, null, page, pageSize, sort); |
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); |
| | | long count = 0; |
| | | if (result != null) { |
| | | count = result.getTotalCount(); |
| | | if (result.getGoodsList() != null) |
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList()) |
| | | goodsList.add(TaoBaoUtil.convert(detail)); |
| | | } |
| | | return new CommonContentResult(CommonGoodsFactory.createTaoBaoList(goodsList), count); |
| | | } |
| | | |
| | | /** |
| | | * 获取母婴精选 |
| | | * |
| | | * @param cid |
| | | * @param page |
| | | * @param pageSize |
| | | * @return |
| | | */ |
| | | private CommonContentResult getMuYinJingXuanContent(String cid, int page, int pageSize) { |
| | | DaTaoKeGoodsResult result = null; |
| | | if ("1".equalsIgnoreCase(cid)) {// 大淘客数据 |
| | | List<Integer> cidList = new ArrayList<>(); |
| | | cidList.add(2);// 母婴 |
| | | result = DaTaoKeApiUtil.getGoodsList("", cidList, null, null, null, page, pageSize, |
| | | DaTaoKeApiUtil.SORT_DEFAULT); |
| | | |
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); |
| | | long count = 0; |
| | | if (result != null) { |
| | | count = result.getTotalCount(); |
| | | if (result.getGoodsList() != null) |
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList()) |
| | | goodsList.add(TaoBaoUtil.convert(detail)); |
| | | } |
| | | return new CommonContentResult(CommonGoodsFactory.createTaoBaoList(goodsList), count); |
| | | |
| | | } else {// |
| | | List<TaobaoMeterial> taobaoMeterials = taobaoMeterialService.selectByClassNameAndSuperNameCache("母婴_" + cid, |
| | | "母婴主题"); |
| | | |
| | | if (taobaoMeterials == null || taobaoMeterials.size() == 0) { |
| | | return null; |
| | | } |
| | | |
| | | TaobaoMeterial meterial = taobaoMeterials.get(0); |
| | | Integer materialId = meterial.getMaterialId(); |
| | | if (materialId != null) { |
| | | List<TaoBaoGoodsBrief> listBrands = new ArrayList<>(); |
| | | try { |
| | | listBrands = taoKeGoodsService.listByMaterial(materialId, page, pageSize); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | return new CommonContentResult(CommonGoodsFactory.createTaoBaoList(listBrands), 1000); |
| | | } |
| | | return new CommonContentResult(new ArrayList<>(), 0); |
| | | } |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 穿衣搭配 |
| | | * |
| | | * @param cid |
| | | * @param page |
| | | * @param pageSize |
| | | * @return |
| | | */ |
| | | private CommonContentResult getChuanYiDaPeiContent(String cid, int page, int pageSize) { |
| | | DaTaoKeGoodsResult result = null; |
| | | List<Integer> cidList = new ArrayList<>(); |
| | | cidList.add(1);// 女装 |
| | | int sort = getCommonSort(cid); |
| | | result = DaTaoKeApiUtil.getGoodsList("", cidList, null, null, null, page, pageSize, sort); |
| | | |
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); |
| | | long count = 0; |
| | | if (result != null) { |
| | | count = result.getTotalCount(); |
| | | if (result.getGoodsList() != null) |
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList()) |
| | | goodsList.add(TaoBaoUtil.convert(detail)); |
| | | } |
| | | return new CommonContentResult(CommonGoodsFactory.createTaoBaoList(goodsList), count); |
| | | } |
| | | |
| | | /** |
| | | * 美妆个护 |
| | | * |
| | | * @param cid |
| | | * @param page |
| | | * @param pageSize |
| | | * @return |
| | | */ |
| | | private CommonContentResult getMeiZhuangGeHuContent(String cid, int page, int pageSize) { |
| | | DaTaoKeGoodsResult result = null; |
| | | List<Integer> cidList = new ArrayList<>(); |
| | | cidList.add(3);// 美妆 |
| | | int sort = getCommonSort(cid); |
| | | result = DaTaoKeApiUtil.search("洗护", cidList, null, null, page, pageSize, sort); |
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); |
| | | long count = 0; |
| | | if (result != null) { |
| | | count = result.getTotalCount(); |
| | | if (result.getGoodsList() != null) |
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList()) |
| | | goodsList.add(TaoBaoUtil.convert(detail)); |
| | | } |
| | | return new CommonContentResult(CommonGoodsFactory.createTaoBaoList(goodsList), count); |
| | | } |
| | | |
| | | /** |
| | | * 精品鞋包 |
| | | * |
| | | * @param cid |
| | | * @param page |
| | | * @param pageSize |
| | | * @return |
| | | */ |
| | | |
| | | private CommonContentResult getJingPinXieBaoContent(String cid, int page, int pageSize) { |
| | | DaTaoKeGoodsResult result = null; |
| | | int sort = getCommonSort(cid); |
| | | result = DaTaoKeApiUtil.search("鞋 女", null, null, null, page, pageSize, sort); |
| | | DaTaoKeGoodsResult result1 = DaTaoKeApiUtil.search("包 女", null, null, null, page, pageSize, sort); |
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); |
| | | long count = 0; |
| | | if (result != null) { |
| | | count = result.getTotalCount() + result1.getTotalCount(); |
| | | if (result.getGoodsList() != null) |
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList()) |
| | | goodsList.add(TaoBaoUtil.convert(detail)); |
| | | if (result1.getGoodsList() != null) |
| | | for (DaTaoKeDetailV2 detail : result1.getGoodsList()) |
| | | goodsList.add(TaoBaoUtil.convert(detail)); |
| | | } |
| | | Collections.shuffle(goodsList); |
| | | return new CommonContentResult(CommonGoodsFactory.createTaoBaoList(goodsList), count); |
| | | } |
| | | |
| | | /** |
| | | * 潮男热卖 |
| | | * |
| | | * @param cid |
| | | * @param page |
| | | * @param pageSize |
| | | * @return |
| | | */ |
| | | private CommonContentResult getChaoNanReMaiContent(String cid, int page, int pageSize) { |
| | | DaTaoKeGoodsResult result = null; |
| | | int sort = getCommonSort(cid); |
| | | result = DaTaoKeApiUtil.search("潮 男", null, null, null, page, pageSize, sort); |
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); |
| | | long count = 0; |
| | | if (result != null) { |
| | | count = result.getTotalCount(); |
| | | if (result.getGoodsList() != null) |
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList()) |
| | | goodsList.add(TaoBaoUtil.convert(detail)); |
| | | } |
| | | Collections.shuffle(goodsList); |
| | | return new CommonContentResult(CommonGoodsFactory.createTaoBaoList(goodsList), count); |
| | | } |
| | | |
| | | /** |
| | | * 数码手机 |
| | | * |
| | | * @param cid |
| | | * @param page |
| | | * @param pageSize |
| | | * @return |
| | | */ |
| | | private CommonContentResult getShuMaShouJiContent(String cid, int page, int pageSize) { |
| | | DaTaoKeGoodsResult result = null; |
| | | int sort = getCommonSort(cid); |
| | | result = DaTaoKeApiUtil.search("电", null, null, null, page, pageSize, sort); |
| | | DaTaoKeGoodsResult result1 = DaTaoKeApiUtil.search("手机", null, null, null, page, pageSize, sort); |
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); |
| | | long count = 0; |
| | | if (result != null) { |
| | | count = result.getTotalCount() + result1.getTotalCount(); |
| | | if (result.getGoodsList() != null) |
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList()) |
| | | goodsList.add(TaoBaoUtil.convert(detail)); |
| | | if (result1.getGoodsList() != null) |
| | | for (DaTaoKeDetailV2 detail : result1.getGoodsList()) |
| | | goodsList.add(TaoBaoUtil.convert(detail)); |
| | | } |
| | | Collections.shuffle(goodsList); |
| | | return new CommonContentResult(CommonGoodsFactory.createTaoBaoList(goodsList), count); |
| | | } |
| | | |
| | | /** |
| | | * 运动酷鞋 |
| | | * |
| | | * @param cid |
| | | * @param page |
| | | * @param pageSize |
| | | * @return |
| | | */ |
| | | private CommonContentResult getYunDongKuXieContent(String cid, int page, int pageSize) { |
| | | DaTaoKeGoodsResult result = null; |
| | | int sort = getCommonSort(cid); |
| | | result = DaTaoKeApiUtil.search("鞋 男", null, null, null, page, pageSize, sort); |
| | | DaTaoKeGoodsResult result1 = DaTaoKeApiUtil.search("运动 男", null, null, null, page, pageSize, sort); |
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); |
| | | long count = 0; |
| | | if (result != null) { |
| | | count = result.getTotalCount() + result1.getTotalCount(); |
| | | if (result.getGoodsList() != null) |
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList()) |
| | | goodsList.add(TaoBaoUtil.convert(detail)); |
| | | if (result1.getGoodsList() != null) |
| | | for (DaTaoKeDetailV2 detail : result1.getGoodsList()) |
| | | goodsList.add(TaoBaoUtil.convert(detail)); |
| | | } |
| | | Collections.shuffle(goodsList); |
| | | return new CommonContentResult(CommonGoodsFactory.createTaoBaoList(goodsList), count); |
| | | } |
| | | |
| | | /** |
| | | * 汽车户外 |
| | | * |
| | | * @param cid |
| | | * @param page |
| | | * @param pageSize |
| | | * @return |
| | | */ |
| | | private CommonContentResult getQiCheHuWaiContent(String cid, int page, int pageSize) { |
| | | DaTaoKeGoodsResult result = null; |
| | | List<Integer> cidList = new ArrayList<>(); |
| | | cidList.add(7); |
| | | cidList.add(13); |
| | | int sort = getCommonSort(cid); |
| | | result = DaTaoKeApiUtil.getGoodsList("", cidList, null, null, null, page, pageSize, sort); |
| | | DaTaoKeGoodsResult result1 = DaTaoKeApiUtil.search("运动 男", cidList, null, null, page, pageSize, sort); |
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); |
| | | long count = 0; |
| | | if (result != null) { |
| | | count = result.getTotalCount() + result1.getTotalCount(); |
| | | if (result.getGoodsList() != null) |
| | | for (DaTaoKeDetailV2 detail : result.getGoodsList()) |
| | | goodsList.add(TaoBaoUtil.convert(detail)); |
| | | if (result1.getGoodsList() != null) |
| | | for (DaTaoKeDetailV2 detail : result1.getGoodsList()) |
| | | goodsList.add(TaoBaoUtil.convert(detail)); |
| | | } |
| | | Collections.shuffle(goodsList); |
| | | return new CommonContentResult(CommonGoodsFactory.createTaoBaoList(goodsList), count); |
| | | } |
| | | |
| | | /** |
| | | * 获取免单商品 |
| | | * |
| | | * @return |
| | | */ |
| | | private CommonContentResult getMianDanContent(int page, int pageSize) { |
| | | CommonContentResult result = new CommonContentResult(); |
| | | List<QualityFactory> listQuery = qualityGoodsService.listFreeGoods((page - 1) * pageSize, pageSize); |
| | | long count = qualityGoodsService.countFreeGoods(); |
| | | result.setCount(count); |
| | | List<String> listGid = new ArrayList<>(); |
| | | List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); |
| | | for (QualityFactory qualityFactory : listQuery) { |
| | | TaoBaoGoodsBrief taoBaoGoodsBrief = qualityFactory.getTaoBaoGoodsBrief(); |
| | | if (taoBaoGoodsBrief == null) { |
| | | continue; |
| | | } |
| | | listGid.add(taoBaoGoodsBrief.getAuctionId()); |
| | | goodsList.add(taoBaoGoodsBrief); |
| | | } |
| | | // 去掉已经不在售的商品 |
| | | List<TaoBaoGoodsBrief> listTaoKeGoods = null; |
| | | try { |
| | | listTaoKeGoods = TaoKeApiUtil.getBatchGoodsInfo(listGid); |
| | | } catch (TaoKeApiException e) { |
| | | e.printStackTrace(); |
| | | } catch (TaobaoGoodsDownException e) { |
| | | e.printStackTrace(); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | Map<String, TaoBaoGoodsBrief> goodsMap = new HashMap<>(); |
| | | if (listTaoKeGoods != null) |
| | | for (TaoBaoGoodsBrief goods : listTaoKeGoods) |
| | | goodsMap.put(goods.getAuctionId(), goods); |
| | | for (int i = 0; i < goodsList.size(); i++) { |
| | | if (goodsMap.get(goodsList.get(i).getAuctionId()) == null) { |
| | | goodsList.remove(i--); |
| | | } |
| | | } |
| | | // 过滤基本商品信息 |
| | | goodsList = taoBaoGoodsUpdateService.filterImportantTaoBaoGoods(goodsList); |
| | | |
| | | for (int i = 0; i < goodsList.size(); i++) { |
| | | TaoBaoGoodsBrief goods = goodsList.get(i); |
| | | BigDecimal price = TaoBaoUtil.getCouponPrice(goods); |
| | | if (price.compareTo(new BigDecimal(10)) >= 0) { |
| | | goodsList.remove(i--); |
| | | } |
| | | } |
| | | result.setGoodsList(CommonGoodsFactory.createTaoBaoList(goodsList)); |
| | | return result; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 拼多多热销 |
| | | * |
| | | * @return |
| | | */ |
| | | private CommonContentResult getPDDHotGoodsRankContent(String cid, int page) { |
| | | cid = cid == null ? 0 + "" : cid; |
| | | CommonContentResult result = new CommonContentResult(); |
| | | HaoDanKuListResult pddResult = HaoDanKuApiUtil.getInstance().getPDDHotGoods(Integer.parseInt(cid), page == 1 ? null : page); //qualityGoodsService.listFreeGoods((page - 1) * pageSize, pageSize); |
| | | result.setCount(1000); |
| | | List<CommonGoods> goodsList = new ArrayList<>(); |
| | | if (pddResult != null) { |
| | | List<HaoDanKuPDDGoodsInfo> list = pddResult.getResultList(); |
| | | for (HaoDanKuPDDGoodsInfo goodsInfo : list) { |
| | | goodsList.add(CommonGoodsFactory.create(goodsInfo)); |
| | | } |
| | | } |
| | | result.setGoodsList(goodsList); |
| | | return result; |
| | | } |
| | | |
| | | /** |
| | | * 京东热销 |
| | | * |
| | | * @return |
| | | */ |
| | | private CommonContentResult getJDHotGoodsRankContent(String cid, int page) { |
| | | CommonContentResult result = new CommonContentResult(); |
| | | HaoDanKuListResult pddResult = HaoDanKuApiUtil.getInstance().getJDHotGoods(Integer.parseInt(cid), page == 1 ? null : page); //qualityGoodsService.listFreeGoods((page - 1) * pageSize, pageSize); |
| | | result.setCount(1000); |
| | | List<CommonGoods> goodsList = new ArrayList<>(); |
| | | if (pddResult != null) { |
| | | List<HaoDanKuJDGoodsInfo> list = pddResult.getResultList(); |
| | | for (HaoDanKuJDGoodsInfo goodsInfo : list) { |
| | | goodsList.add(CommonGoodsFactory.create(goodsInfo)); |
| | | } |
| | | } |
| | | result.setGoodsList(goodsList); |
| | | return result; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 淘宝热销 |
| | | * |
| | | * @return |
| | | */ |
| | | private CommonContentResult getTBHotGoodsRankContent(String cid, int page) { |
| | | CommonContentResult result = new CommonContentResult(); |
| | | HaoDanKuListResult pddResult = HaoDanKuApiUtil.getInstance().getTBHotGoods(Integer.parseInt(cid), page == 1 ? null : page); //qualityGoodsService.listFreeGoods((page - 1) * pageSize, pageSize); |
| | | result.setCount(1000); |
| | | List<CommonGoods> goodsList = new ArrayList<>(); |
| | | if (pddResult != null) { |
| | | List<HDKGoodsDetail> list = pddResult.getResultList(); |
| | | for (HDKGoodsDetail goodsInfo : list) { |
| | | goodsList.add(CommonGoodsFactory.create(goodsInfo)); |
| | | } |
| | | } |
| | | result.setGoodsList(goodsList); |
| | | return result; |
| | | } |
| | | |
| | | } |