From c007868c62c7da5c9ce1bf0e77d9e5f8619826e4 Mon Sep 17 00:00:00 2001 From: yujian <yujian@123.com> Date: 星期三, 12 六月 2019 12:24:09 +0800 Subject: [PATCH] 查询默认有效调整 --- fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityGoodsServiceImpl.java | 139 +++++++++++++++++++++++++++++++++------------ 1 files changed, 101 insertions(+), 38 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityGoodsServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityGoodsServiceImpl.java index f5bc677..3728429 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityGoodsServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityGoodsServiceImpl.java @@ -1,13 +1,15 @@ package com.yeshi.fanli.service.impl.lable; +import java.math.BigDecimal; +import java.util.ArrayList; import java.util.List; import javax.annotation.Resource; -import net.sf.json.JSONArray; - import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; +import org.yeshi.utils.JsonUtil; +import org.yeshi.utils.taobao.TbImgUtil; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -15,7 +17,8 @@ import com.yeshi.fanli.dao.mybatis.lable.LabelGoodsMapper; 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,8 +28,8 @@ 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; + +import net.sf.json.JSONArray; @Service public class QualityGoodsServiceImpl implements QualityGoodsService { @@ -45,9 +48,6 @@ private TaoBaoGoodsBriefMapper taoBaoGoodsBriefMapper; @Resource private TaoBaoUnionConfigService taoBaoUnionConfigService; - - @Resource - private TaoBaoGoodsBriefRecordMapper taoBaoGoodsBriefRecordMapper; @Resource private TaoBaoClassRelationMapper taoBaoClassRelationMapper; @@ -80,24 +80,13 @@ return qualityFactoryMapper.countQueryByFlashSale(); } - /** - * 浠婃棩蹇呮姠 - 9k9 - * @param start - * @param count - * @param systemCid - * @param labId - * @param sortField - * @return - */ @Override - public List<QualityFactory> listQueryEverydayRob(long start, int count, Long cid, Long labId, Integer sortField,Double startCouponAmount,Double endCouponAmount) { - return qualityFactoryMapper.listQueryEverydayRob(start, count, cid, labId, sortField,startCouponAmount,endCouponAmount); + public List<QualityFactory> listFlashSaleRandGoods() { + return qualityFactoryMapper.listFlashSaleRandGoods(); } - - @Override - public long countQueryEverydayRob(Long cid, Long labId, Double startCouponAmount,Double endCouponAmount) { - return qualityFactoryMapper.countQueryEverydayRob(cid, labId,startCouponAmount,endCouponAmount); - } + + + /** * 灏忛噾棰濇煡璇細9.9/19.9/29.9/49.9 @@ -112,18 +101,20 @@ * @return */ @Override - @Cacheable(value = "quality9K9Cache",key="'listQuerySmallAmount-'+#start+'-'+#key+'-'+#labId+'-'+#cids") - public List<QualityFactory> listQuerySmallAmount(long start, int count, String key, Long labId, String cids) { - return qualityFactoryMapper.listQuery(start, count, key, null, labId, cids,1); + @Cacheable(value = "quality9K9Cache",key="'get9k9ClassGoods-'+#start+'-'+#biz30day+'-'+#zkPrice+'-'+#minQuanPrice+'-'+#maxQuanPrice+'-'+#cids") + public List<QualityFactory> get9k9ClassGoods(long start, int count, Integer biz30day, BigDecimal zkPrice, + BigDecimal minQuanPrice, BigDecimal maxQuanPrice, String cids) { + return qualityFactoryMapper.get9k9ClassGoods(start, count, biz30day, zkPrice, minQuanPrice, maxQuanPrice, cids); } /** * 瀵瑰簲灏忛噾棰濇煡璇細9.9/19.9/29.9/49.9 */ @Override - @Cacheable(value = "quality9K9Cache",key="'countQuerySmallAmount-'+#key+'-'+#labId+'-'+#cids") - public long countQuerySmallAmount(String key, Long labId, String cids) { - return qualityFactoryMapper.countQuery(key, null, labId, cids,1); + @Cacheable(value = "quality9K9Cache",key="'count9k9ClassGoods-'+#biz30day+'-'+#zkPrice+'-'+#minQuanPrice+'-'+#maxQuanPrice+'-'+#cids") + public long count9k9ClassGoods(Integer biz30day, BigDecimal zkPrice, BigDecimal minQuanPrice, + BigDecimal maxQuanPrice, String cids) { + return qualityFactoryMapper.count9k9ClassGoods(biz30day, zkPrice, minQuanPrice, maxQuanPrice, cids); } /** @@ -237,14 +228,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 +247,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 +289,7 @@ String salesCountMidea = String.format("%.1f", sales / 10000); taoBaoGoodsBrief.setSalesCount(salesCountMidea + "涓�"); } else { - taoBaoGoodsBrief.setSalesCount(count + ""); + taoBaoGoodsBrief.setSalesCount(biz30day + ""); } // 鏀瑰彉鍥剧墖灏哄 @@ -303,7 +298,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 +325,73 @@ 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()); + } + @Override + public List<QualityFactory> listFreeGoods(long start, int count) { + return qualityFactoryMapper.listFreeGoods(start, count); + } + + @Override + public long countFreeGoods() { + return qualityFactoryMapper.countFreeGoods(); + } + + @Override + public List<QualityFactory> listByShopId(long start, int count, Long shopId) { + return qualityFactoryMapper.listByShopId(start, count, shopId); + } + + @Override + public long countByShopId(Long shopId) { + return qualityFactoryMapper.countByShopId(shopId); + } + + @Override + public List<QualityFactory> listQueryEverydayRob(long start, int count, BigDecimal zkPrice, + BigDecimal minQuanPrice, BigDecimal maxQuanPrice) { + return qualityFactoryMapper.listQueryEverydayRob(start, count, zkPrice, minQuanPrice, maxQuanPrice); + } + + @Override + public long countQueryEverydayRob(BigDecimal zkPrice, BigDecimal minQuanPrice, BigDecimal maxQuanPrice) { + return qualityFactoryMapper.countQueryEverydayRob(zkPrice, minQuanPrice, maxQuanPrice); + } } -- Gitblit v1.8.0