| | |
| | | package com.yeshi.fanli.service.impl.lable;
|
| | |
|
| | | 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;
|
| | |
| | | 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;
|
| | |
| | | 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 {
|
| | |
| | | private TaoBaoGoodsBriefMapper taoBaoGoodsBriefMapper;
|
| | | @Resource
|
| | | private TaoBaoUnionConfigService taoBaoUnionConfigService;
|
| | |
|
| | | @Resource
|
| | | private TaoBaoGoodsBriefRecordMapper taoBaoGoodsBriefRecordMapper;
|
| | |
|
| | | @Resource
|
| | | private TaoBaoClassRelationMapper taoBaoClassRelationMapper;
|
| | |
| | |
|
| | | @Override
|
| | | public List<QualityFactory> listRecommendBykey(long start, int count, String key, Integer hasQuan,
|
| | | Integer userType, Double startprice, Double endprice, Integer sort) {
|
| | | Integer userType, Double startprice, Double endprice, Double startTkRate, Double endTkRate, Integer sort) {
|
| | | return qualityFactoryMapper.listRecommendBykey(start, count, key, hasQuan, userType,
|
| | | startprice, endprice, sort);
|
| | | startprice, endprice, startTkRate, endTkRate, sort);
|
| | | }
|
| | |
|
| | | @Override
|
| | | public long countRecommendBykey(String key, Integer hasQuan, Integer userType,
|
| | | Double startprice, Double endprice) {
|
| | | return qualityFactoryMapper.countRecommendBykey(key, hasQuan, userType, startprice, endprice);
|
| | | Double startprice, Double endprice, Double startTkRate, Double endTkRate) {
|
| | | return qualityFactoryMapper.countRecommendBykey(key, hasQuan, userType, startprice, endprice, startTkRate, endTkRate);
|
| | | }
|
| | |
|
| | |
|
| | |
| | | * 首页最底部@商品信息流
|
| | | */
|
| | | @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;
|
| | |
| | | String salesCountMidea = String.format("%.1f", sales / 10000);
|
| | | taoBaoGoodsBrief.setSalesCount(salesCountMidea + "万");
|
| | | } else {
|
| | | taoBaoGoodsBrief.setSalesCount(count + "");
|
| | | taoBaoGoodsBrief.setSalesCount(biz30day + "");
|
| | | }
|
| | |
|
| | | // 改变图片尺寸
|
| | |
| | | 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;
|
| | |
| | | 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, Double tkRate, String lableName) {
|
| | | return qualityFactoryMapper.listFreeGoods(start, count, tkRate, lableName);
|
| | | }
|
| | | |
| | | @Override
|
| | | public long countFreeGoods(Double tkRate, String lableName) {
|
| | | return qualityFactoryMapper.countFreeGoods(tkRate, lableName);
|
| | | }
|
| | |
|
| | | }
|