admin
2021-05-19 a1be6075c6b1365a7abc66bf559d6058039248ab
淘礼金兼容
2 文件已重命名
55个文件已修改
2个文件已添加
1012 ■■■■ 已修改文件
facade-goods/src/main/java/com/yeshi/goods/facade/entity/taobao/TaoBaoGoodsBrief.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/pom.xml 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/CallBackController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/admin/GoodsEvaluateAdminController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/apph5/AppH5ShareController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/lijin/GoodsControllerLijin.java 149 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/h5/AppH5CouponController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/h5/AppH5PullNewController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/h5/AppH5TaoLiJinController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/BrandControllerV2.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/CommonContentControllerV2.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ConsumerControllerV2.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/GoodsClassControllerV2.java 44 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/GoodsControllerV2.java 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/HotSellControllerV2.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/JingDongControllerV2.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/PinDuoDuoControllerV2.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SearchControllerV2.java 83 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ShareControllerV2.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ShareStorageControllerV2.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SuningControllerV2.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/TaoLiJinControllerV2.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserCloudControllerV2.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/VipShopControllerV2.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/h5/BuWanH5Controller.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/wxmp/v1/ConsumerController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/wxmp/v1/GoodsController.java 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/wxmp/v1/RecommendController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/wxmp/v1/SearchController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/dto/GoodsMoneyConfigParamsDTO.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/dto/pdd/PDDGoodsDetail.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/dto/suning/SuningGoodsInfo.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/dto/vip/goods/VIPGoodsInfo.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/entity/SystemEnum.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/entity/SystemFunction.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/entity/goods/BaseGoodsInfo.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/entity/jd/JDGoods.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/job/DynamicInfoJob.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/job/goods/FreeGoodsCouponJob.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/lijin/manager/GoodsLijinMnager.java 255 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/lijin/vo/GoodsDetailVO.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/brand/BrandClassShopServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/brand/BrandInfoServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/DynamicInfoServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/GoodsEvaluateServiceImpl.java 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityGoodsServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/lable/TaoKeGoodsServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderHongBaoMoneyComputeServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/order/config/HongBaoManageServiceImpl.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoShopServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/order/OrderHongBaoMoneyComputeService.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/order/config/HongBaoManageService.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/factory/goods/GoodsDetailVOFactory.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/factory/goods/GoodsDetailVOLijinFactory.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/vo/goods/MoneyInfoVO.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/resource/dubbo/consumer.xml 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pom.xml 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
facade-goods/src/main/java/com/yeshi/goods/facade/entity/taobao/TaoBaoGoodsBrief.java
@@ -276,6 +276,8 @@
    @org.yeshi.utils.mybatis.Column(name = "material_lib_type")
    private Integer materialLibType;//物料库类型
    
    private String materialLibTypes;//物料库类型
    private String description;//推荐语
    
    private boolean shopCoupon;//是否为店铺券
@@ -898,4 +900,11 @@
        this.description = description;
    }
    
    public String getMaterialLibTypes() {
        return materialLibTypes;
    }
    public void setMaterialLibTypes(String materialLibTypes) {
        this.materialLibTypes = materialLibTypes;
    }
}
fanli/pom.xml
@@ -146,6 +146,8 @@
        </dependency>
        <dependency>
            <groupId>org.apache.dubbo</groupId>
            <artifactId>dubbo</artifactId>
@@ -206,6 +208,27 @@
            <version>3.21.0-GA</version>
        </dependency>
        <dependency>
            <groupId>com.ks</groupId>
            <artifactId>facade-vip</artifactId>
            <version>0.0.1</version>
        </dependency>
        <dependency>
            <groupId>com.ks</groupId>
            <artifactId>facade-lijin</artifactId>
            <version>0.0.2</version>
        </dependency>
        <dependency>
            <groupId>com.ks</groupId>
            <artifactId>lib-common</artifactId>
            <version>0.0.1</version>
        </dependency>
    </dependencies>
    <build>
        <plugins>
fanli/src/main/java/com/yeshi/fanli/controller/CallBackController.java
@@ -24,7 +24,7 @@
import org.yeshi.utils.wx.WXUtil;
import com.aliyun.openservices.ons.api.Message;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.mq.order.OrderTopicTagEnum;
import com.yeshi.fanli.dto.mq.order.body.BanLiShopOrderMQMsg;
import com.yeshi.fanli.entity.bus.activity.ActivityRuleUser;
@@ -290,7 +290,7 @@
                if (goodsBrief == null)
                    continue;
                // 商品VO
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55",system);
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55",system);
                paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(SystemEnum.blks));
                GoodsDetailVO goodsVO = GoodsDetailVOFactory.convertTaoBao(goodsBrief, paramsDTO);
fanli/src/main/java/com/yeshi/fanli/controller/admin/GoodsEvaluateAdminController.java
@@ -18,7 +18,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.reflect.TypeToken;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum;
import com.yeshi.fanli.entity.dynamic.CommentInfo;
@@ -733,7 +733,7 @@
            BigDecimal fanLiRate = hongBaoManageService.getFanLiRate(acceptData.getSystem());
            BigDecimal shareRate = hongBaoManageService.getShareRate(acceptData.getSystem());
            BigDecimal vipFanLiRate = hongBaoManageService.getFanLiRate(UserLevelEnum.superVIP,acceptData.getSystem());
            ConfigParamsDTO params = new ConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE, vipFanLiRate);
            GoodsMoneyConfigParamsDTO params = new GoodsMoneyConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE, vipFanLiRate);
            if (commonGoods.getGoodsType() == Constant.SOURCE_TYPE_TAOBAO) {
                try {
fanli/src/main/java/com/yeshi/fanli/controller/apph5/AppH5ShareController.java
@@ -14,7 +14,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.jd.JDFilter;
import com.yeshi.fanli.dto.jd.JDSearchResult;
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
@@ -166,7 +166,7 @@
                        .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
                BigDecimal fanLiRate = hongBaoManageService.getFanLiRate(acceptData.getSystem());
                BigDecimal shareRate = hongBaoManageService.getShareRate(acceptData.getSystem());
                ConfigParamsDTO configParamsDTO = new ConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE,
                GoodsMoneyConfigParamsDTO configParamsDTO = new GoodsMoneyConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE,
                        hongBaoManageService.getFanLiRate(UserLevelEnum.superVIP, acceptData.getSystem()));
fanli/src/main/java/com/yeshi/fanli/controller/client/lijin/GoodsControllerLijin.java
@@ -1,32 +1,51 @@
package com.yeshi.fanli.controller.client.lijin;
import com.google.gson.Gson;
import com.yeshi.common.entity.taobao.TaoBaoShop;
import com.yeshi.common.entity.taobao.TaoKeAppInfo;
import com.yeshi.common.vo.ClientTextStyleVO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
import com.yeshi.fanli.dto.suning.SuningGoodsInfo;
import com.yeshi.fanli.dto.vip.goods.VIPGoodsInfo;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.user.ShamUser;
import com.yeshi.fanli.entity.goods.CollectionGoodsV2;
import com.yeshi.fanli.entity.jd.JDGoods;
import com.yeshi.fanli.exception.pdd.PDDApiException;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
import com.yeshi.fanli.service.inter.goods.CollectionGoodsV2Service;
import com.yeshi.fanli.service.inter.pdd.PDDAuthService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoGoodsUpdateService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoShopService;
import com.yeshi.fanli.service.inter.user.ShamUserService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.TaoBaoConstant;
import com.yeshi.fanli.util.ThreadUtil;
import com.yeshi.fanli.util.cache.TaoBaoGoodsCacheUtil;
import com.yeshi.fanli.util.factory.goods.GoodsDetailVOLijinFactory;
import com.yeshi.fanli.util.factory.goods.ShopInfoVOFactory;
import com.yeshi.fanli.util.jd.JDApiUtil;
import com.yeshi.fanli.util.jd.JDUtil;
import com.yeshi.fanli.util.pinduoduo.PinDuoDuoApiUtil;
import com.yeshi.fanli.util.suning.SuningApiUtil;
import com.yeshi.fanli.util.suning.SuningUtil;
import com.yeshi.fanli.util.taobao.TaoBaoUtil;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
import com.yeshi.fanli.util.vipshop.VipShopApiUtil;
import com.yeshi.fanli.lijin.vo.GoodsDetailVO;
import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.yeshi.utils.JsonUtil;
import org.yeshi.utils.MoneyBigDecimalUtil;
import javax.annotation.Resource;
import java.io.PrintWriter;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
@Controller
@RequestMapping("api/lijin/goods")
@@ -41,6 +60,15 @@
    @Resource
    private PDDAuthService pddAuthService;
    @Resource
    private CollectionGoodsV2Service collectionGoodsV2Service;
    @Resource
    private ShamUserService shamUserService;
    @Resource
    private TaoBaoShopService taoBaoShopService;
    /**
     * 获取商品详情
     *
@@ -51,50 +79,146 @@
     * @return
     */
    @RequestMapping("getGoodsDetail")
    @ResponseBody
    public String getGoodsDetail(AcceptData acceptData, int goodsType, String goodsId, Long uid, String from) {
    public void getGoodsDetail(AcceptData acceptData, int goodsType, String goodsId, Long uid, String from, PrintWriter out) {
        GoodsDetailVO goodsDetailVO = new GoodsDetailVO();
        GoodsDetailVO.GoodsExtraVO extraVO = new GoodsDetailVO.GoodsExtraVO();
        GoodsMoneyConfigParamsDTO paramsDTO = new GoodsMoneyConfigParamsDTO();
        paramsDTO.setFanLiRate(new BigDecimal("60"));
        // 领券人列表
        List<ShamUser> listCouponUser = new ArrayList<>();
        switch (goodsType) {
            case Constant
                    .SOURCE_TYPE_TAOBAO:
                TaoBaoGoodsBrief taobaoGoods = getTaoBaoGoods(Long.parseLong(goodsId));
                if (taobaoGoods == null) {
                TaoBaoGoodsBrief goods = getTaoBaoGoods(Long.parseLong(goodsId));
                goodsDetailVO.setGoods(GoodsDetailVOLijinFactory.convertTaoBao(goods, paramsDTO));
                // 店铺信息
                TaoBaoShop shop = taoBaoShopService.getTaoBaoShop(goods.getId(), goods.getSellerId());
                if (shop != null) {
                    String shopLink = shop.getShopLink();
                    if (StringUtil.isNullOrEmpty(shopLink)) {
                        shop.setShopLink(TaoBaoUtil.getShopLink(shop.getId()));
                }
                    goodsDetailVO.getGoods().setShopInfo(ShopInfoVOFactory.convertTaoBaoShop(shop));
                }
                extraVO.setDetailUrl("http://apph5.banliapp.com/apppage/goods_img.html?id=" + goodsId);
                break;
            case Constant
                    .SOURCE_TYPE_JD:
                JDGoods jdGoods = getJDGoods(Long.parseLong(goodsId));
                goodsDetailVO.setGoods(GoodsDetailVOLijinFactory.convertJDGoods(jdGoods, paramsDTO));
                extraVO.setDetailUrl("https://in.m.jd.com/product/jieshao/video/" + goodsId + ".html");
                break;
            case Constant
                    .SOURCE_TYPE_PDD:
                PDDGoodsDetail pddGoodsDetail = getPDDGoods(Long.parseLong(goodsId), uid);
                goodsDetailVO.setGoods(GoodsDetailVOLijinFactory.convertPDDGoods(pddGoodsDetail, paramsDTO));
                extraVO.setDetailUrl("http://apph5.banliapp.com/apppage/goods_img_pdd.html?id=" + goodsId);
                break;
            case Constant
                    .SOURCE_TYPE_VIP:
                VIPGoodsInfo vipGoodsInfo = VipShopApiUtil.getGoodsDetail(goodsId);
                goodsDetailVO.setGoods(GoodsDetailVOLijinFactory.convertVIPGoods(vipGoodsInfo, paramsDTO));
                break;
            case Constant
                    .SOURCE_TYPE_SUNING:
                String[] ids = SuningUtil.getGoodsIdDetail(goodsId);
                SuningGoodsInfo suningGoodsInfo = SuningApiUtil.getGoodsDetail(ids[1], ids[0]);
                goodsDetailVO.setGoods(GoodsDetailVOLijinFactory.convertSuningGoods(suningGoodsInfo, paramsDTO));
                extraVO.setDetailUrl("http://apph5.banliapp.com/apppage/goods_img_suning.html?id="
                        + suningGoodsInfo.getCommodityInfo().getCommodityCode() + "&supplierCode="
                        + suningGoodsInfo.getCommodityInfo().getSupplierCode());
                break;
        }
        return null;
        //是否收藏
        extraVO.setCollected(false);
        if (uid != null) {
            CollectionGoodsV2 collectionGoodsV2 = collectionGoodsV2Service.findByUidAndAuctionId(uid, Long.parseLong(goodsDetailVO.getGoods().getGoodsId()), goodsType);
            if (collectionGoodsV2 != null) {
                extraVO.setCollected(true);
    }
        }
        if (goodsDetailVO.getGoods().getTempCoupon() != null && goodsDetailVO.getGoods().getTempCoupon().getAmount() != null
                && goodsDetailVO.getGoods().getTempCoupon().getAmount().compareTo(new BigDecimal(0)) > 0) {
            listCouponUser = shamUserService.listRandCouponUser(5, 1, 300);
        }
        extraVO.setFanliValid(true);
        extraVO.setBuyValid(true);
        extraVO.setListCouponUser(listCouponUser);
        goodsDetailVO.setExtra(extraVO);
        loadLijinInfo(goodsDetailVO.getGoods());
        //清除临时信息
        goodsDetailVO.getGoods().setTempCoupon(null);
        if (goodsDetailVO.getGoods().getLabels() == null)
            goodsDetailVO.getGoods().setLabels(new ArrayList<>());
        goodsDetailVO.getGoods().getLabels().add(new ClientTextStyleVO("天猫", "#FF2C4A"));
        out.print(JsonUtil.loadTrueResult(new Gson().toJson(goodsDetailVO)));
    }
    /**
     * 加载礼金信息
     *
     * @param goodsInfoVO
     */
    private void loadLijinInfo(GoodsDetailVO.GoodsInfoVO goodsInfoVO) {
        //虚拟数据
        List<BigDecimal> lijinList = new ArrayList<>();
        lijinList.add(new BigDecimal("1"));
        lijinList.add(new BigDecimal("2"));
        lijinList.add(new BigDecimal("2.5"));
        GoodsDetailVO.GoodsHongBaoListVO.UserLevelVO userLevelVO = new GoodsDetailVO.GoodsHongBaoListVO.UserLevelVO();
        userLevelVO.setVipRank(1);
        userLevelVO.setDesc("升级为铂金会员红包可提高100%");
        userLevelVO.setLink("http://www.baidu.com");
        if (goodsInfoVO.getPriceList() == null) {
            goodsInfoVO.setPriceList(new ArrayList<>());
        }
        goodsInfoVO.getPriceList().get(0).setUserLevel(userLevelVO);
        for (BigDecimal money : lijinList) {
            GoodsDetailVO.GoodsHongBaoListVO price = new GoodsDetailVO.GoodsHongBaoListVO();
            price.setType(2);
            price.setSubMoney("¥" + money);
            price.setUserLevel(userLevelVO);
            //最终价格计算=券后价-礼金
            price.setFinalMoney("¥" + goodsInfoVO.getCouponPrice().subtract(money).toString());
            List<GoodsDetailVO.GoodsHongBaoListVO.PriceInfo> priceInfos = new ArrayList<>();
            priceInfos.add(new GoodsDetailVO.GoodsHongBaoListVO.PriceInfo("原价", goodsInfoVO.getZkPrice()));
            if (goodsInfoVO.getTempCoupon() != null) {
                priceInfos.add(new GoodsDetailVO.GoodsHongBaoListVO.PriceInfo("优惠券", "-¥" + MoneyBigDecimalUtil.getWithNoZera(goodsInfoVO.getTempCoupon().getAmount()).toString()));
            }
            priceInfos.add(new GoodsDetailVO.GoodsHongBaoListVO.PriceInfo("首单礼金", "-¥1"));
            priceInfos.add(new GoodsDetailVO.GoodsHongBaoListVO.PriceInfo("礼金", "-" + "¥" + money));
            price.setPriceDetails(priceInfos);
            goodsInfoVO.getPriceList().add(0, price);
        }
        //计算最大的礼金面额
        goodsInfoVO.getMoneyInfo().setHongBaoMoney("¥3");
    }
    private TaoBaoGoodsBrief getTaoBaoGoods(Long id) {
        try {
@@ -130,7 +254,6 @@
        }
        return null;
    }
    private JDGoods getJDGoods(Long id) {
        JDGoods jdGoods = JDApiUtil.queryGoodsDetail(id); // 高级接口
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/h5/AppH5CouponController.java
@@ -14,7 +14,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.lable.QualityFactory;
import com.yeshi.fanli.entity.bus.user.UserInfo;
@@ -107,7 +107,7 @@
        Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
        ConfigParamsDTO configParamsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
        GoodsMoneyConfigParamsDTO configParamsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                acceptData.getVersion(), UserLevelEnum.daRen, acceptData.getSystem());
        /* 遍历列表数据 */
        for (QualityFactory selectionGoods : listQuery) {
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/h5/AppH5PullNewController.java
@@ -16,7 +16,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.reflect.TypeToken;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.bus.user.UserRankings;
@@ -86,7 +86,7 @@
        List<PullNewGoods> list = pullNewGoodsService.listQuery((page-1)*Constant.PAGE_SIZE, Constant.PAGE_SIZE);
        if (list != null && list.size() > 0) {
            Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()).create();
            ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
            GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                    acceptData.getVersion(),acceptData.getSystem());
            paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(acceptData.getSystem()));
            
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/h5/AppH5TaoLiJinController.java
@@ -14,7 +14,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.taobao.ShareHotGoods;
import com.yeshi.fanli.entity.taobao.TLJBuyGoods;
@@ -65,7 +65,7 @@
        Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
        ConfigParamsDTO configParamsDTO =  orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
        GoodsMoneyConfigParamsDTO configParamsDTO =  orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                acceptData.getVersion(),null);
        for (TLJBuyGoods goods : goodsList) {
            TaoBaoGoodsBrief taoBaoGoodsBrief = goods.getGoods();
@@ -115,7 +115,7 @@
        goodsList = goodsList.size() > 10 ? goodsList.subList(0, 10) : goodsList;
        Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
        ConfigParamsDTO configParamsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
        GoodsMoneyConfigParamsDTO configParamsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                acceptData.getVersion(),null);
        for (ShareHotGoods hotGoods : goodsList) {
            TaoBaoGoodsBrief taoBaoGoodsBrief = hotGoods.getGoods();
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/BrandControllerV2.java
@@ -13,7 +13,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.brand.BrandGoodsCahe;
@@ -302,7 +302,7 @@
            Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                    .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
            ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
            GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                    acceptData.getVersion(),acceptData.getSystem());
            // 商品信息过滤
            listGoodsBrief = taoBaoGoodsUpdateService.filterImportantTaoBaoGoods(listGoodsBrief);
@@ -526,7 +526,7 @@
            Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                    .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
            ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
            GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                    acceptData.getVersion(),acceptData.getSystem());
            // 商品信息过滤
            listGoodsBrief = taoBaoGoodsUpdateService.filterImportantTaoBaoGoods(listGoodsBrief);
@@ -716,7 +716,7 @@
        Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
        
        ConfigParamsDTO paramsDTO =  orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
        GoodsMoneyConfigParamsDTO paramsDTO =  orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                acceptData.getVersion(),acceptData.getSystem());
        JSONArray array = new JSONArray();
        
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/CommonContentControllerV2.java
@@ -14,7 +14,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.common.CommonContentNav;
import com.yeshi.fanli.dto.common.CommonContentResult;
import com.yeshi.fanli.dto.common.CommonContentTypeEnum;
@@ -165,7 +165,7 @@
        if (result != null)
            goodsList = result.getGoodsList();
        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                acceptData.getVersion(),acceptData.getSystem());
        for (TaoBaoGoodsBrief taoBaoGoodsBrief : goodsList) {
            GoodsDetailVO vo = GoodsDetailVOFactory.convertTaoBao(taoBaoGoodsBrief, paramsDTO);
@@ -214,7 +214,7 @@
            if (goodsList != null && goodsList.size() > 0) {
                Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                        .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(),acceptData.getSystem());
                for (JDGoods goods : goodsList) {
@@ -265,7 +265,7 @@
            if (goodsList != null && goodsList.size() > 0) {
                Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                        .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(),acceptData.getSystem());
                for (PDDGoodsDetail goods : goodsList) {
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ConsumerControllerV2.java
@@ -20,7 +20,7 @@
import com.google.gson.JsonPrimitive;
import com.google.gson.JsonSerializationContext;
import com.google.gson.JsonSerializer;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
import com.yeshi.fanli.dto.suning.SuningGoodsInfo;
import com.yeshi.fanli.dto.vip.goods.VIPGoodsInfo;
@@ -269,7 +269,7 @@
                }
            }
            ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
            GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                    acceptData.getVersion(),acceptData.getSystem());
            for (CollectionGoodsV2 collectionGoodsV2 : collectionGoodsList) {
@@ -388,7 +388,7 @@
        JSONArray array = new JSONArray();
        if (list != null && list.size() > 0) {
            Gson gson = gsonBuilder.create();
            ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
            GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                    acceptData.getVersion(),acceptData.getSystem());
            for (ScanHistoryV2 sh : list) {
                CommonGoods commonGoods = sh.getCommonGoods();
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/GoodsClassControllerV2.java
@@ -6,6 +6,7 @@
import javax.annotation.Resource;
import com.yeshi.fanli.lijin.manager.GoodsLijinMnager;
import org.springframework.core.task.TaskExecutor;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -14,7 +15,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.clazz.GoodsClass;
import com.yeshi.fanli.entity.bus.clazz.GoodsSubClass;
@@ -77,6 +78,9 @@
    @Resource
    private TaoBaoGoodsUpdateService taoBaoGoodsUpdateService;
    @Resource
    private GoodsLijinMnager goodsLijinMnager;
    /**
     * 一级分类
     * 
@@ -122,7 +126,7 @@
     * 分类下的精选商品
     */
    @RequestMapping("getClassGoods")
    public void getClassGoods(AcceptData acceptData, long gcid, int page, PrintWriter out) {
    public void getClassGoods(AcceptData acceptData, Long uid, long gcid, int page, PrintWriter out) {
        GoodsClass goodsClass = goodsClassService.getGoodsClassCache(gcid);
        if (goodsClass == null) {
            out.print(JsonUtil.loadFalseResult("不存在该分类"));
@@ -174,20 +178,24 @@
        Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                acceptData.getVersion(),acceptData.getSystem());
        
        // 精选库数据
        JSONArray array = new JSONArray();
        List<TaoBaoGoodsBrief> goodsBriefs = new ArrayList<>();
        for (QualityFactory selectionGoods : listQuery) {
            TaoBaoGoodsBrief taoBaoGoodsBrief = selectionGoods.getTaoBaoGoodsBrief();
            if (taoBaoGoodsBrief == null) {
                continue;
            }
            updateGoodsList.add(taoBaoGoodsBrief);
            GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertTaoBao(taoBaoGoodsBrief, paramsDTO);
            array.add(gson.toJson(goodsDetailVO));
            goodsBriefs.add(taoBaoGoodsBrief);
        }
        List<GoodsDetailVO> voList = goodsLijinMnager.loadTBMoneyInfo(acceptData.getSystem(), uid, goodsBriefs, paramsDTO);
        for (GoodsDetailVO vo : voList)
            array.add(gson.toJson(vo));
        JSONObject data = new JSONObject();
        data.put("nav", null);
@@ -207,23 +215,17 @@
     * @param page
     * @param scid
     * @param filter
     * @param order
     *            来源:【推荐:0 | 综合:4 、综合只看有券 1 、综合只看天猫 1 | 价格:低到高3 高到低2 | 销量:1】
     * @param order      来源:【推荐:0 | 综合:4 、综合只看有券 1 、综合只看天猫 1 | 价格:低到高3 高到低2 | 销量:1】
     *            排序值:【销量由高到低: 1 ; 销量由低到高 5; 价格从高到低: 2 ; 价格从低到高:3 ; 推广量高到低:4 ;
     *            其他默认: 销量由高到低】
     *
     * @param startprice
     *            起始价格
     * @param endprice
     *            结束价格
     * @param fastFilter
     *            fastFilter 有券 [{"type":"quantype"}] 天猫商品 [{"type":"shoptype"}]
     * @param totalSales
     *            销量以上
     * @param startprice 起始价格
     * @param endprice   结束价格
     * @param fastFilter fastFilter 有券 [{"type":"quantype"}] 天猫商品 [{"type":"shoptype"}]
     * @param totalSales 销量以上
     * @param out
     */
    @RequestMapping(value = "getSubGoods", method = RequestMethod.POST)
    public void getSecondClassGoods(AcceptData acceptData, int page, long scid, String filter, String order,
    public void getSecondClassGoods(AcceptData acceptData, Long uid, int page, long scid, String filter, String order,
            String startprice, String endprice, String fastFilter, Integer totalSales, PrintWriter out) {
        try {
@@ -290,11 +292,11 @@
                JSONArray array = new JSONArray();
                if (resultGoodsList != null) {
                    ConfigParamsDTO paramsDTO =  orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                    GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                            acceptData.getVersion(),acceptData.getSystem());
                    for (TaoBaoGoodsBrief goods : resultGoodsList) {
                        GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertTaoBao(goods, paramsDTO);
                        array.add(gson2.toJson(goodsDetailVO));
                    List<GoodsDetailVO> voList = goodsLijinMnager.loadTBMoneyInfo(acceptData.getSystem(), uid, resultGoodsList, paramsDTO);
                    for (GoodsDetailVO vo : voList) {
                        array.add(gson2.toJson(vo));
                    }
                }
                JSONObject result = new JSONObject();
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/GoodsControllerV2.java
@@ -30,7 +30,7 @@
import org.yeshi.utils.taobao.TbImgUtil;
import com.google.gson.Gson;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.jd.JDCategoryInfo;
import com.yeshi.fanli.dto.jd.JDCouponInfo;
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
@@ -217,7 +217,7 @@
    @Resource
    private PDDAuthService pddAuthService;
    private ConfigParamsDTO getParamsDTO(String platform, String version, Long uid, SystemEnum system) {
    private GoodsMoneyConfigParamsDTO getParamsDTO(String platform, String version, Long uid, SystemEnum system) {
        UserLevelEnum level = UserLevelEnum.daRen;
        if (uid != null && uid > 0) {
            level = userLevelManager.getUserLevel(uid);
@@ -447,7 +447,7 @@
            LogHelper.errorDetailInfo(e);
        }
        ConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(), uid, acceptData.getSystem());
        GoodsMoneyConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(), uid, acceptData.getSystem());
        paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(acceptData.getSystem()));
        GoodsDetailVO goodsDetail = GoodsDetailVOFactory.convertTaoBao(goods, paramsDTO);
@@ -722,7 +722,7 @@
        // 保存缓存
        jdGoodsCacheUtil.saveGoodsInfo(jdGoods);
        ConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(), uid, acceptData.getSystem());
        GoodsMoneyConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(), uid, acceptData.getSystem());
        paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(acceptData.getSystem()));
        GoodsDetailVO goodsDetail = GoodsDetailVOFactory.convertJDGoods(jdGoods, paramsDTO);
        if (goodsDetail != null && goodsDetail.getMoneyInfo() != null && userVIPInfoService.isVIP(uid)) {
@@ -947,7 +947,7 @@
            return;
        }
        ConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(), uid, acceptData.getSystem());
        GoodsMoneyConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(), uid, acceptData.getSystem());
        paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(acceptData.getSystem()));
        GoodsDetailVO goodsDetail = GoodsDetailVOFactory.convertPDDGoods(pddGoods, paramsDTO);
@@ -1154,7 +1154,7 @@
            return;
        }
        ConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(), uid, acceptData.getSystem());
        GoodsMoneyConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(), uid, acceptData.getSystem());
        paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(acceptData.getSystem()));
        GoodsDetailVO goodsDetail = GoodsDetailVOFactory.convertVIPGoods(vipGoodsInfo, paramsDTO);
@@ -1294,7 +1294,7 @@
            return;
        }
        ConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(), uid, acceptData.getSystem());
        GoodsMoneyConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(), uid, acceptData.getSystem());
        paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(acceptData.getSystem()));
        GoodsDetailVO goodsDetail = GoodsDetailVOFactory.convertSuningGoods(suningGoodsInfo, paramsDTO);
@@ -1500,7 +1500,7 @@
                    list = list.subList(0, 10);
                }
                ConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(), null, acceptData.getSystem());
                GoodsMoneyConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(), null, acceptData.getSystem());
                List<GoodsDetailVO> listDetailVO = new ArrayList<GoodsDetailVO>();
                for (JDGoods goods : list) {
@@ -1541,7 +1541,7 @@
                                goodsList = goodsList.subList(0, 10);
                            }
                            ConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(),
                            GoodsMoneyConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(),
                                    null, acceptData.getSystem());
                            for (PDDGoodsDetail goods : goodsList) {
                                listDetailVO.add(GoodsDetailVOFactory.convertPDDGoods(goods, paramsDTO));
@@ -1587,7 +1587,7 @@
                List<GoodsDetailVO> listDetailVO = new ArrayList<GoodsDetailVO>();
                if (resultList != null) {
                    if (resultList != null && resultList.size() > 0) {
                        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                                acceptData.getVersion(), acceptData.getSystem());
                        for (SuningGoodsInfo goods : resultList) {
@@ -1611,7 +1611,7 @@
            }
            List<GoodsDetailVO> listExtra = new ArrayList<GoodsDetailVO>();
            ConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(), null, acceptData.getSystem());
            GoodsMoneyConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(), null, acceptData.getSystem());
            goodsList.parallelStream().forEach(goods -> {
                if (goods != null) {
                    listExtra.add(GoodsDetailVOFactory.convertTaoBao(goods, paramsDTO));
@@ -2121,7 +2121,7 @@
        Map<String, GoodsDetailVO> tempGoodsList = new HashMap<>();
        ConfigParamsDTO params = new ConfigParamsDTO(hongBaoManageService.getFanLiRate(acceptData.getSystem()),
        GoodsMoneyConfigParamsDTO params = new GoodsMoneyConfigParamsDTO(hongBaoManageService.getFanLiRate(acceptData.getSystem()),
                hongBaoManageService.getShareRate(acceptData.getSystem()), new BigDecimal(80),
                hongBaoManageService.getFanLiRate(UserLevelEnum.superVIP, acceptData.getSystem()));
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/HotSellControllerV2.java
@@ -11,7 +11,7 @@
import org.springframework.web.bind.annotation.RequestMethod;
import org.yeshi.utils.JsonUtil;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.goods.facade.dto.taobao.dataoke.DaTaoKeGoodsResult;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief;
@@ -94,7 +94,7 @@
            List<GoodsDetailVO> list = new ArrayList<GoodsDetailVO>();
            if (detailList != null) {
                ConfigParamsDTO paramsDTO =  orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO =  orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(),acceptData.getSystem());
                for (DaTaoKeDetailV2 detail : detailList) {
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/JingDongControllerV2.java
@@ -13,7 +13,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.homemodule.Special;
import com.yeshi.fanli.entity.jd.JDGoods;
@@ -117,7 +117,7 @@
            List<JDGoods> goodsList = jdGoodsService.specialSearch(page, cid,acceptData.getSystem());
            JSONArray array = new JSONArray();
            if (goodsList != null && goodsList.size() > 0) {
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(),acceptData.getSystem());
                Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/PinDuoDuoControllerV2.java
@@ -17,19 +17,15 @@
import org.yeshi.utils.JsonUtil;
import com.google.gson.Gson;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.homemodule.Special;
import com.yeshi.fanli.exception.pdd.PDDOrderException;
import com.yeshi.fanli.service.inter.common.JumpDetailV2Service;
import com.yeshi.fanli.service.inter.goods.TaoBaoGoodsBriefService;
import com.yeshi.fanli.service.inter.homemodule.SpecialService;
import com.yeshi.fanli.service.inter.homemodule.SwiperPictureService;
import com.yeshi.fanli.service.inter.lable.QualityGoodsService;
import com.yeshi.fanli.service.inter.order.OrderHongBaoMoneyComputeService;
import com.yeshi.fanli.service.inter.pdd.PDDGoodsService;
import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.factory.goods.GoodsDetailVOFactory;
import com.yeshi.fanli.vo.goods.GoodsDetailVO;
@@ -105,7 +101,7 @@
            JSONArray array = new JSONArray();
            if (goodsList != null && goodsList.size() > 0) {
                Gson gson = JsonUtil.getApiCommonGson();
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(), acceptData.getSystem());
                for (PDDGoodsDetail goods : goodsList) {
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java
@@ -2,7 +2,8 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.lijin.manager.GoodsLijinMnager;
import com.yeshi.goods.facade.dto.taobao.dataoke.DingDongTime;
import com.yeshi.fanli.dto.jd.JDSearchResult;
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
@@ -127,6 +128,9 @@
    
    @Resource
    private HongBaoManageService hongBaoManageService;
    @Resource
    private GoodsLijinMnager goodsLijinMnager;
    /**
     * 新版推荐专题管理(1.5.3)
@@ -272,7 +276,7 @@
            /* 遍历列表数据 */
            ConfigParamsDTO configParamsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
            GoodsMoneyConfigParamsDTO configParamsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                    acceptData.getVersion(),acceptData.getSystem());
            for (DaTaoKeDetailV2 detail : listGoods) {
@@ -399,7 +403,7 @@
        Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
        if (detailList != null) {
            ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
            GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                    acceptData.getVersion(),acceptData.getSystem());
            for (DaTaoKeDetailV2 detail : detailList) {
@@ -483,7 +487,7 @@
     * @param out
     */
    @RequestMapping(value = "getGoodList")
    public void getGoodList(AcceptData acceptData, Integer goodsType, Integer page, HttpServletRequest request,
    public void getGoodList(AcceptData acceptData, Long uid, Integer goodsType, Integer page, HttpServletRequest request,
            PrintWriter out) {
        if (goodsType == null || page == null) {
@@ -493,7 +497,7 @@
        try {
            if (goodsType == Constant.SOURCE_TYPE_TAOBAO) {
                taoBaoGuessUserLikeByDevice(acceptData, page, request, out);
                taoBaoGuessUserLikeByDevice(acceptData, uid, page, request, out);
                return;
            }
@@ -518,12 +522,13 @@
    /**
     * 根据设备信息获取猜你喜欢的内容
     *
     * @param acceptData
     * @param page
     * @param request
     * @param out
     */
    public void taoBaoGuessUserLikeByDevice(AcceptData acceptData, int page, HttpServletRequest request,
    public void taoBaoGuessUserLikeByDevice(AcceptData acceptData, Long uid, int page, HttpServletRequest request,
            PrintWriter out) {
        int pageSize = Constant.PAGE_SIZE;
        JSONArray array = new JSONArray();
@@ -542,16 +547,17 @@
                }
            }
            ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
            GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                    acceptData.getVersion(),acceptData.getSystem());
            for (TaoBaoGoodsBrief goods : goodsList) {
                GoodsDetailVO detailVO = GoodsDetailVOFactory.convertTaoBao(goods, paramsDTO);
                if (page < 3)
                    detailVO.setRecommend(true);
            List<GoodsDetailVO> voList = goodsLijinMnager.loadTBMoneyInfo(acceptData.getSystem(), uid, goodsList, paramsDTO);
            for (GoodsDetailVO vo : voList) {
                if (page < 3)
                    vo.setRecommend(true);
                try {
                    array.add(gson.toJson(detailVO));
                    array.add(gson.toJson(vo));
                } catch (Exception e) {
                    e.printStackTrace();
                }
@@ -561,7 +567,7 @@
                List<TLJBuyGoods> list = homeRecommendGoodsService.getZiGouLiJianHotGoods(acceptData.getDevice());
                if (list != null && list.size() > 0) {
                    BigDecimal rateBuy = TaoBaoConstant.OWN_BUY_WITHOUT_FANLI_RATE;
                    ConfigParamsDTO paramsBuy = new ConfigParamsDTO(rateBuy, rateBuy, Constant.MAX_REWARD_RATE,
                    GoodsMoneyConfigParamsDTO paramsBuy = new GoodsMoneyConfigParamsDTO(rateBuy, rateBuy, Constant.MAX_REWARD_RATE,
                            hongBaoManageService.getFanLiRate(UserLevelEnum.superVIP,acceptData.getSystem()));
                    for (int i = list.size() - 1; i >= 0; i--) {
                        TLJBuyGoods goods = list.get(i);
@@ -618,20 +624,25 @@
                    // 设备推荐
                    if (gList != null) {
                        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                                acceptData.getVersion(),acceptData.getSystem());
                        List<TaoBaoGoodsBrief> deviceGoodsList = new ArrayList<>();
                        for (TaoBaoGoodsBrief goods : gList) {
                            if (!StringUtil.isNullOrEmpty(goods.getCouponInfo()) && goods.getCouponAmount() != null
                                    && goods.getCouponAmount().compareTo(new BigDecimal("5")) >= 0
                                    && goods.getBiz30day() > 1000
                                    && !StringUtil.isNullOrEmpty(goods.getPictUrlWhite())) {
                                deviceGoodsList.add(goods);
                            }
                        }
                        List<GoodsDetailVO> voList = goodsLijinMnager.loadTBMoneyInfo(acceptData.getSystem(), uid, deviceGoodsList, paramsDTO);
                        for (GoodsDetailVO vo : voList) {
                            vo.setRecommend(true);
                        }
                        goodsList.addAll(voList);
                    }
                                GoodsDetailVO detailVO = GoodsDetailVOFactory.convertTaoBao(goods, paramsDTO);
                                detailVO.setRecommend(true);
                                goodsList.add(detailVO);
                            }
                        }
                    }
                    try {
                        monitorService.addClientAPIMonitor(MonitorFactory.createClientAPI(request, 0,
@@ -690,7 +701,7 @@
            List<JDGoods> goodsList = result.getGoodsList();
            if (goodsList != null && goodsList.size() > 0) {
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(),acceptData.getSystem());
                Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
@@ -723,7 +734,7 @@
            Gson gson = JsonUtil.getApiCommonGson();
            List<PDDGoodsDetail> goodsList = result.getGoodsList();
            if (goodsList != null && goodsList.size() > 0) {
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(),acceptData.getSystem());
                for (PDDGoodsDetail goods : goodsList) {
@@ -757,7 +768,7 @@
            JSONArray arrayKeys = JSONArray.fromObject(keys);
            if (arrayKeys != null && arrayKeys.size() > 0) {
                count = arrayKeys.size();
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(),acceptData.getSystem());
                int j = 1;
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SearchControllerV2.java
@@ -10,6 +10,7 @@
import javax.servlet.http.HttpSession;
import com.yeshi.fanli.exception.pdd.PDDApiException;
import com.yeshi.fanli.lijin.manager.GoodsLijinMnager;
import com.yeshi.fanli.service.inter.pdd.PDDAuthService;
import com.yeshi.fanli.service.inter.user.tb.UserExtraTaoBaoInfoService;
import org.springframework.core.task.TaskExecutor;
@@ -20,7 +21,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.jd.JDFilter;
import com.yeshi.fanli.dto.jd.JDSearchFilter;
import com.yeshi.fanli.dto.jd.JDSearchResult;
@@ -46,23 +47,16 @@
import com.yeshi.fanli.exception.user.TokenRecordException;
import com.yeshi.fanli.service.inter.brand.BrandInfoService;
import com.yeshi.fanli.service.inter.common.JumpDetailV2Service;
import com.yeshi.fanli.service.inter.config.BusinessSystemService;
import com.yeshi.fanli.service.inter.config.ConfigService;
import com.yeshi.fanli.service.inter.config.SuperHotSearchService;
import com.yeshi.fanli.service.inter.help.AppPageNotificationService;
import com.yeshi.fanli.service.inter.lable.QualityGoodsService;
import com.yeshi.fanli.service.inter.lable.TaoKeGoodsService;
import com.yeshi.fanli.service.inter.order.OrderHongBaoMoneyComputeService;
import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoShopService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
import com.yeshi.goods.facade.service.DaTaoKeGoodsDetailV2Service;
import com.yeshi.fanli.service.inter.user.HistorySearchService;
import com.yeshi.fanli.service.inter.user.TokenRecordService;
import com.yeshi.fanli.service.inter.user.integral.IntegralGetService;
import com.yeshi.fanli.service.manger.ClipboardAnalysisManager;
import com.yeshi.fanli.service.manger.IClipboardAnalysisResult;
import com.yeshi.fanli.service.manger.goods.jd.JDGoodsLinkParseManager;
import com.yeshi.common.entity.PageEntity;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.StringUtil;
@@ -144,6 +138,9 @@
    @Resource
    private PDDAuthService pddAuthService;
    @Resource
    private GoodsLijinMnager goodsLijinMnager;
    /**
@@ -277,12 +274,17 @@
                                                .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd")
                                                .create();
                                        data.put("type", 3);
                                        data.put("goods",
                                                gson.toJson(
                                                        GoodsDetailVOFactory.convertCommonGoods(goods,
                                        GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertCommonGoods(goods,
                                                                orderHongBaoMoneyComputeService.getShowComputeRate(
                                                                        acceptData.getPlatform(),
                                                                        acceptData.getVersion(), acceptData.getSystem()))));
                                                        acceptData.getVersion(), acceptData.getSystem()));
                                        goodsDetailVO = goodsLijinMnager.loadTBMoneyInfo(acceptData.getSystem(), uid, goodsBrief, goodsDetailVO);
                                        data.put("goods",
                                                gson.toJson(goodsDetailVO));
                                        // 跳转详情
                                        if (VersionUtil.greaterThan_2_1_3(acceptData.getPlatform(),
                                                acceptData.getVersion())) {
@@ -299,10 +301,11 @@
                                    data.put("type", 3);
                                    data.put("goods",
                                            gson.toJson(
                                                    goodsLijinMnager.loadOtherMoneyInfo(acceptData.getSystem(), uid, goods,
                                                    GoodsDetailVOFactory.convertCommonGoods(goods,
                                                            orderHongBaoMoneyComputeService.getShowComputeRate(
                                                                    acceptData.getPlatform(),
                                                                    acceptData.getVersion(), acceptData.getSystem()))));
                                                                            acceptData.getVersion(), acceptData.getSystem())))));
                                    // if
                                    // (VersionUtil.greaterThan_2_1_2(acceptData.getPlatform(),
                                    // acceptData.getVersion())) {
@@ -563,7 +566,7 @@
        /*--------- 京东商品  -------*/
        if (goodsType.intValue() == Constant.SOURCE_TYPE_JD) {
            searchJDGoods(acceptData, searchkey, page, filter, order, ap, out);
            searchJDGoods(acceptData, uid, searchkey, page, filter, order, ap, out);
            return;
        }
@@ -575,13 +578,13 @@
        /*-------- 唯品会商品 ------*/
        if (goodsType.intValue() == Constant.SOURCE_TYPE_VIP) {
            searchVIPGoods(acceptData, searchkey, page, filter, order, ap, out);
            searchVIPGoods(acceptData, uid, searchkey, page, filter, order, ap, out);
            return;
        }
        /*-------- 苏宁商品 ------*/
        if (goodsType.intValue() == Constant.SOURCE_TYPE_SUNING) {
            searchSuningGoods(acceptData, searchkey, page, filter, order, ap, out);
            searchSuningGoods(acceptData, uid, searchkey, page, filter, order, ap, out);
            return;
        }
@@ -692,13 +695,10 @@
            }
        }
        List<GoodsDetailVO> list = new ArrayList<GoodsDetailVO>();
        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                acceptData.getVersion(), acceptData.getSystem());
        for (TaoBaoGoodsBrief goods : taoBaoGoodsBriefs) {
            list.add(GoodsDetailVOFactory.convertTaoBao(goods, paramsDTO));
        }
        List<GoodsDetailVO> list = goodsLijinMnager.loadTBMoneyInfo(acceptData.getSystem(), uid, taoBaoGoodsBriefs, paramsDTO);
        Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                .excludeFieldsWithoutExposeAnnotation().create();
@@ -762,7 +762,7 @@
     * @param ap
     * @param out
     */
    private void searchJDGoods(AcceptData acceptData, String key, Integer page, String filter, Integer order,
    private void searchJDGoods(AcceptData acceptData, Long uid, String key, Integer page, String filter, Integer order,
                               AppPageNotification ap, PrintWriter out) {
        JDSearchResult result = null;
@@ -907,16 +907,19 @@
            if (goodsList != null && goodsList.size() > 0) {
                Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                        .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(), acceptData.getSystem());
                for (JDGoods goods : goodsList) {
                    GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertJDGoods(goods, paramsDTO);
                List<GoodsDetailVO> voList = goodsLijinMnager.loadOtherMoneyInfo(acceptData.getSystem(), uid, goodsList, paramsDTO);
                for (GoodsDetailVO vo : voList) {
                    if (hasCoupon) {
                        if (goodsDetailVO.isHasCoupon()) {
                            array.add(gson.toJson(goodsDetailVO));
                        if (vo.isHasCoupon()) {
                            array.add(gson.toJson(vo));
                        }
                    } else {
                        array.add(gson.toJson(goodsDetailVO));
                        array.add(gson.toJson(vo));
                    }
                }
            }
@@ -1010,11 +1013,11 @@
            Gson gson = JsonUtil.getApiCommonGson();
            List<PDDGoodsDetail> goodsList = result.getGoodsList();
            if (goodsList != null && goodsList.size() > 0) {
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(), acceptData.getSystem());
                for (PDDGoodsDetail goods : goodsList) {
                    GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertPDDGoods(goods, paramsDTO);
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(), acceptData.getSystem());
                List<GoodsDetailVO> voList = goodsLijinMnager.loadOtherMoneyInfo(acceptData.getSystem(), uid, goodsList, paramsDTO);
                for (GoodsDetailVO goodsDetailVO : voList) {
                    array.add(gson.toJson(goodsDetailVO));
                }
            }
@@ -1038,7 +1041,7 @@
     * @Title: searchVIPGoods
     * @Description:
     */
    private void searchVIPGoods(AcceptData acceptData, String key, Integer page, String filter, Integer order,
    private void searchVIPGoods(AcceptData acceptData, Long uid, String key, Integer page, String filter, Integer order,
                                AppPageNotification ap, PrintWriter out) {
        VIPSearchFilter searchFilter = new VIPSearchFilter();
        searchFilter.setKeyword(key);
@@ -1088,11 +1091,11 @@
            Gson gson = JsonUtil.getApiCommonGson();
            List<VIPGoodsInfo> goodsList = result.getGoodsList();
            if (goodsList != null && goodsList.size() > 0) {
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(), acceptData.getSystem());
                for (VIPGoodsInfo goods : goodsList) {
                    GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertVIPGoods(goods, paramsDTO);
                List<GoodsDetailVO> voList = goodsLijinMnager.loadOtherMoneyInfo(acceptData.getSystem(), uid, goodsList, paramsDTO);
                for (GoodsDetailVO goodsDetailVO : voList) {
                    array.add(gson.toJson(goodsDetailVO));
                }
            }
@@ -1116,7 +1119,7 @@
     * @Title: searchVIPGoods
     * @Description:
     */
    private void searchSuningGoods(AcceptData acceptData, String key, Integer page, String filter, Integer order,
    private void searchSuningGoods(AcceptData acceptData, Long uid, String key, Integer page, String filter, Integer order,
                                   AppPageNotification ap, PrintWriter out) {
        SuningQueryModel searchFilter = new SuningQueryModel();
        searchFilter.setKeyword(key);
@@ -1192,11 +1195,11 @@
        if (resultList != null) {
            Gson gson = JsonUtil.getApiCommonGson();
            if (resultList != null && resultList.size() > 0) {
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(), acceptData.getSystem());
                for (SuningGoodsInfo goods : resultList) {
                    GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertSuningGoods(goods, paramsDTO);
                List<GoodsDetailVO> voList = goodsLijinMnager.loadOtherMoneyInfo(acceptData.getSystem(), uid, resultList, paramsDTO);
                for (GoodsDetailVO goodsDetailVO : voList) {
                    array.add(gson.toJson(goodsDetailVO));
                }
            }
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ShareControllerV2.java
@@ -24,7 +24,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.jd.JDCouponInfo;
import com.yeshi.fanli.dto.jd.JDPingouInfo;
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
@@ -504,7 +504,7 @@
            TaoBaoLink taoBaoLink = taoBaoLinkManager.getTaoBaoLinkForShare(uid, goodsId, relationId, null);
            if (taoBaoLink != null && taoBaoLink.getGoods() != null && needGoods) {
                ConfigParamsDTO dto = orderHongBaoMoneyComputeService.getShowComputeRate(platform, version, acceptData.getSystem());
                GoodsMoneyConfigParamsDTO dto = orderHongBaoMoneyComputeService.getShowComputeRate(platform, version, acceptData.getSystem());
                GoodsDetailVO goodsInfo = GoodsDetailVOFactory.convertTaoBao(taoBaoLink.getGoods(), dto);
                shareInfo.setGoodsInfo(goodsInfo);
            }
@@ -933,7 +933,7 @@
        if (needGoods) {
            shareInfo
                    .setGoodsInfo(GoodsDetailVOFactory.convertPDDGoods(goods,
                            new ConfigParamsDTO(hongBaoManageService.getFanLiRate(acceptData.getSystem()),
                            new GoodsMoneyConfigParamsDTO(hongBaoManageService.getFanLiRate(acceptData.getSystem()),
                                    hongBaoManageService.getShareRate(acceptData.getSystem()), Constant.MAX_REWARD_RATE,
                                    hongBaoManageService.getFanLiRate(UserLevelEnum.superVIP, acceptData.getSystem()))));
        }
@@ -1101,7 +1101,7 @@
        if (needGoods) {
            shareInfo
                    .setGoodsInfo(GoodsDetailVOFactory.convertVIPGoods(goods,
                            new ConfigParamsDTO(hongBaoManageService.getFanLiRate(acceptData.getSystem()),
                            new GoodsMoneyConfigParamsDTO(hongBaoManageService.getFanLiRate(acceptData.getSystem()),
                                    hongBaoManageService.getShareRate(acceptData.getSystem()), Constant.MAX_REWARD_RATE,
                                    hongBaoManageService.getFanLiRate(UserLevelEnum.superVIP, acceptData.getSystem()))));
        }
@@ -1236,7 +1236,7 @@
        if (needGoods) {
            shareInfo
                    .setGoodsInfo(GoodsDetailVOFactory.convertSuningGoods(goods,
                            new ConfigParamsDTO(hongBaoManageService.getFanLiRate(acceptData.getSystem()),
                            new GoodsMoneyConfigParamsDTO(hongBaoManageService.getFanLiRate(acceptData.getSystem()),
                                    hongBaoManageService.getShareRate(acceptData.getSystem()), Constant.MAX_REWARD_RATE,
                                    hongBaoManageService.getFanLiRate(UserLevelEnum.superVIP, acceptData.getSystem()))));
        }
@@ -1862,7 +1862,7 @@
            }
        }
        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                acceptData.getVersion(), acceptData.getSystem());
        Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
@@ -1934,7 +1934,7 @@
        }
        GoodsDetailVO goodsDetail = null;
        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                acceptData.getVersion(), acceptData.getSystem());
        paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(acceptData.getSystem()));
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ShareStorageControllerV2.java
@@ -17,7 +17,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.reflect.TypeToken;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.user.UserGoodsStorage;
import com.yeshi.fanli.entity.goods.CommonGoods;
@@ -210,7 +210,7 @@
        Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
        ConfigParamsDTO paramsDTO =  orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
        GoodsMoneyConfigParamsDTO paramsDTO =  orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                acceptData.getVersion(),acceptData.getSystem());
        for (UserGoodsStorage userGoodsStorage : listStorage) {
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SuningControllerV2.java
@@ -12,7 +12,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.suning.SuningGoodsInfo;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.homemodule.Special;
@@ -96,7 +96,7 @@
        try {
            JSONArray array = new JSONArray();
            if (goodsList != null && goodsList.size() > 0) {
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(),acceptData.getSystem());
                Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/TaoLiJinControllerV2.java
@@ -27,7 +27,7 @@
import com.google.gson.TypeAdapter;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinDetail.TaoLiJinDetailTypeEnum;
import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinNewbies;
@@ -491,7 +491,7 @@
            }
        }
        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                acceptData.getVersion(),acceptData.getSystem());
        for (ShareHotGoods hotGoods : listHot) {
@@ -650,7 +650,7 @@
                .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
        BigDecimal proportion = TaoBaoConstant.OWN_BUY_WITHOUT_FANLI_RATE;
        ConfigParamsDTO paramsDTO = new ConfigParamsDTO(proportion, proportion, Constant.MAX_REWARD_RATE,
        GoodsMoneyConfigParamsDTO paramsDTO = new GoodsMoneyConfigParamsDTO(proportion, proportion, Constant.MAX_REWARD_RATE,
                hongBaoManageService.getFanLiRate(UserLevelEnum.superVIP,acceptData.getSystem()));
        for (TLJBuyGoods hotGoods : listHot) {
            TaoBaoGoodsBrief taoBaoGoodsBrief = hotGoods.getGoods();
@@ -791,7 +791,7 @@
        Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                acceptData.getVersion(),acceptData.getSystem());
        for (TLJFreeBuyGoods freeGoods : listFree) {
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserCloudControllerV2.java
@@ -11,7 +11,6 @@
import com.yeshi.fanli.dto.vip.UserVIPLevel;
import com.yeshi.fanli.entity.bus.user.vip.UserVIPPreInfo;
import com.yeshi.fanli.service.inter.user.vip.UserVIPInfoService;
import com.yeshi.fanli.service.inter.user.vip.UserVIPPreInfoService;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -24,7 +23,7 @@
import com.google.gson.JsonPrimitive;
import com.google.gson.JsonSerializationContext;
import com.google.gson.JsonSerializer;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.aitaoker.QrcodeLoginDTO;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.user.UserInfo;
@@ -586,7 +585,7 @@
        if (list.size() > 0) {
            Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                    .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
            ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
            GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                    acceptData.getVersion(), acceptData.getSystem());
            for (UserCloudGoods cloudGoods : list) {
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/VipShopControllerV2.java
@@ -12,7 +12,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.vip.goods.VIPGoodsInfo;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.homemodule.Special;
@@ -96,7 +96,7 @@
        try {
            JSONArray array = new JSONArray();
            if (goodsList != null && goodsList.size() > 0) {
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(),acceptData.getSystem());
                Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
fanli/src/main/java/com/yeshi/fanli/controller/h5/BuWanH5Controller.java
@@ -1,15 +1,12 @@
package com.yeshi.fanli.controller.h5;
import com.yeshi.common.entity.taobao.TaoKeAppInfo;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.entity.SystemEnum;
import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum;
import com.yeshi.fanli.entity.taobao.SearchFilter;
import com.yeshi.fanli.entity.taobao.TaoBaoLink;
import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult;
import com.yeshi.fanli.exception.taobao.TaoBaoConvertLinkException;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
import com.yeshi.fanli.service.inter.config.BusinessSystemService;
import com.yeshi.fanli.service.inter.order.OrderHongBaoMoneyComputeService;
import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
import com.yeshi.fanli.service.manger.goods.TaoBaoLinkManager;
@@ -77,7 +74,7 @@
        sf.setPageSize(20);
        sf.setKey(key);
        sf.setSort(TaoBaoUtil.SORT_TOTAL_SALES_HIGH_TO_LOW);
        ConfigParamsDTO configParamsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android",
        GoodsMoneyConfigParamsDTO configParamsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android",
                "60", SystemEnum.flq);
        List<GoodsDetailVO> goodsList = new ArrayList<>();
@@ -102,7 +99,7 @@
    }
    private ConfigParamsDTO getParamsDTO(String platform, String version, Long uid, SystemEnum system) {
    private GoodsMoneyConfigParamsDTO getParamsDTO(String platform, String version, Long uid, SystemEnum system) {
        UserLevelEnum level = UserLevelEnum.daRen;
        if (level == null)
            level = UserLevelEnum.daRen;
@@ -169,7 +166,7 @@
        tb.setImgList(finalImgList);
        ConfigParamsDTO paramsDTO = getParamsDTO("android", "60", null, SystemEnum.flq);
        GoodsMoneyConfigParamsDTO paramsDTO = getParamsDTO("android", "60", null, SystemEnum.flq);
        paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(system));
        GoodsDetailVO goodsDetail = GoodsDetailVOFactory.convertTaoBao(goods, paramsDTO);
fanli/src/main/java/com/yeshi/fanli/controller/wxmp/v1/ConsumerController.java
@@ -20,7 +20,7 @@
import com.google.gson.JsonPrimitive;
import com.google.gson.JsonSerializationContext;
import com.google.gson.JsonSerializer;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.WXMPAcceptData;
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
import com.yeshi.fanli.entity.goods.CollectionGoodsV2;
@@ -233,7 +233,7 @@
                }
            }
            ConfigParamsDTO paramsDTO =  orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
            GoodsMoneyConfigParamsDTO paramsDTO =  orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                    acceptData.getVersion(),acceptData.getSystem());
            
@@ -349,7 +349,7 @@
        JSONArray array = new JSONArray();
        if (list != null && list.size() > 0) {
            Gson gson = gsonBuilder.create();
            ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
            GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                    acceptData.getVersion(),acceptData.getSystem());
            for (ScanHistoryV2 sh : list) {
                CommonGoods commonGoods = sh.getCommonGoods();
fanli/src/main/java/com/yeshi/fanli/controller/wxmp/v1/GoodsController.java
@@ -25,7 +25,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.WXMPAcceptData;
import com.yeshi.fanli.dto.jd.JDCategoryInfo;
import com.yeshi.fanli.dto.jd.JDCouponInfo;
@@ -33,7 +33,6 @@
import com.yeshi.fanli.dto.jd.JDSearchResult;
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
import com.yeshi.fanli.dto.pdd.PDDGoodsResult;
import com.yeshi.fanli.dto.pdd.PDDPromotionUrl;
import com.yeshi.fanli.dto.pdd.PDDSearchFilter;
import com.yeshi.fanli.entity.bus.share.UserShareGoodsHistory;
import com.yeshi.fanli.entity.bus.user.ShamUser;
@@ -236,7 +235,7 @@
            if (goodsList != null && goodsList.size() > 0) {
                Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                        .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(),acceptData.getSystem());
                for (JDGoods goods : goodsList) {
                    GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertJDGoods(goods, paramsDTO);
@@ -317,7 +316,7 @@
        // 保存缓存
        jdGoodsCacheUtil.saveGoodsInfo(jdGoods);
        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                acceptData.getVersion(),acceptData.getSystem());
        paramsDTO.setMaxRewardRate(null);
        GoodsDetailVO goodsDetail = GoodsDetailVOFactory.convertJDGoods(jdGoods, paramsDTO);
@@ -487,7 +486,7 @@
            return;
        }
        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                acceptData.getVersion(),acceptData.getSystem());
        paramsDTO.setMaxRewardRate(null);
        GoodsDetailVO goodsDetail = GoodsDetailVOFactory.convertPDDGoods(pddGoods, paramsDTO);
@@ -646,7 +645,7 @@
                    list = list.subList(0, 10);
                }
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(),acceptData.getSystem());
                List<GoodsDetailVO> listDetailVO = new ArrayList<GoodsDetailVO>();
@@ -688,7 +687,7 @@
                                goodsList = goodsList.subList(0, 10);
                            }
                            ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService
                            GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService
                                    .getShowComputeRate(acceptData.getPlatform(), acceptData.getVersion(),acceptData.getSystem());
                            for (PDDGoodsDetail goods : goodsList) {
                                listDetailVO.add(GoodsDetailVOFactory.convertPDDGoods(goods, paramsDTO));
@@ -874,7 +873,7 @@
            out.print(JsonUtil.loadFalseResult(2, "商品已下架"));
            return;
        }
        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                acceptData.getVersion(),acceptData.getSystem());
        GoodsDetailVO goods = GoodsDetailVOFactory.convertJDGoods(jdGoods, paramsDTO);
@@ -932,7 +931,7 @@
            out.print(JsonUtil.loadFalseResult(2, "商品已下架"));
            return;
        }
        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                acceptData.getVersion(),acceptData.getSystem());
        GoodsDetailVO goods = GoodsDetailVOFactory.convertPDDGoods(pddGoods, paramsDTO);
fanli/src/main/java/com/yeshi/fanli/controller/wxmp/v1/RecommendController.java
@@ -14,7 +14,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.WXMPAcceptData;
import com.yeshi.fanli.dto.jd.JDSearchResult;
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
@@ -244,7 +244,7 @@
            List<JDGoods> goodsList = result.getGoodsList();
            if (goodsList != null && goodsList.size() > 0) {
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(),acceptData.getSystem());
                Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
@@ -278,7 +278,7 @@
            Gson gson = JsonUtil.getApiCommonGson();
            List<PDDGoodsDetail> goodsList = result.getGoodsList();
            if (goodsList != null && goodsList.size() > 0) {
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(),acceptData.getSystem());
                for (PDDGoodsDetail goods : goodsList) {
fanli/src/main/java/com/yeshi/fanli/controller/wxmp/v1/SearchController.java
@@ -20,7 +20,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.WXMPAcceptData;
import com.yeshi.fanli.dto.jd.JDFilter;
import com.yeshi.fanli.dto.jd.JDSearchFilter;
@@ -480,7 +480,7 @@
            if (goodsList != null && goodsList.size() > 0) {
                Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                        .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(),acceptData.getSystem());
                for (JDGoods goods : goodsList) {
                    GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertJDGoods(goods, paramsDTO);
@@ -567,7 +567,7 @@
            Gson gson = JsonUtil.getApiCommonGson();
            List<PDDGoodsDetail> goodsList = result.getGoodsList();
            if (goodsList != null && goodsList.size() > 0) {
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
                        acceptData.getVersion(),acceptData.getSystem());
                for (PDDGoodsDetail goods : goodsList) {
fanli/src/main/java/com/yeshi/fanli/dto/GoodsMoneyConfigParamsDTO.java
File was renamed from fanli/src/main/java/com/yeshi/fanli/dto/ConfigParamsDTO.java
@@ -2,7 +2,7 @@
import java.math.BigDecimal;
public class ConfigParamsDTO {
public class GoodsMoneyConfigParamsDTO {
    // 返利比例
    private BigDecimal fanLiRate;
    // 分享比例
@@ -30,11 +30,11 @@
        this.vipFanLiRate = vipFanLiRate;
    }
    public ConfigParamsDTO() {
    public GoodsMoneyConfigParamsDTO() {
    }
    public ConfigParamsDTO(BigDecimal fanLiRate, BigDecimal shareRate, BigDecimal maxRewardRate, BigDecimal vipRate) {
    public GoodsMoneyConfigParamsDTO(BigDecimal fanLiRate, BigDecimal shareRate, BigDecimal maxRewardRate, BigDecimal vipRate) {
        this.fanLiRate = fanLiRate;
        this.shareRate = shareRate;
        this.maxRewardRate = maxRewardRate;
fanli/src/main/java/com/yeshi/fanli/dto/pdd/PDDGoodsDetail.java
@@ -1,11 +1,12 @@
package com.yeshi.fanli.dto.pdd;
import com.google.gson.annotations.SerializedName;
import com.yeshi.fanli.entity.goods.BaseGoodsInfo;
import java.io.Serializable;
import java.math.BigDecimal;
import com.google.gson.annotations.SerializedName;
public class PDDGoodsDetail implements Serializable {
public class PDDGoodsDetail extends BaseGoodsInfo implements Serializable {
    /**
     *
     */
fanli/src/main/java/com/yeshi/fanli/dto/suning/SuningGoodsInfo.java
@@ -1,6 +1,10 @@
package com.yeshi.fanli.dto.suning;
public class SuningGoodsInfo {
import com.yeshi.fanli.entity.goods.BaseGoodsInfo;
import java.io.Serializable;
public class SuningGoodsInfo extends BaseGoodsInfo implements Serializable {
    private SuningAdvanceSale advanceSale;
    private SuningCategoryInfo categoryInfo;
fanli/src/main/java/com/yeshi/fanli/dto/vip/goods/VIPGoodsInfo.java
@@ -1,5 +1,8 @@
package com.yeshi.fanli.dto.vip.goods;
import com.yeshi.fanli.entity.goods.BaseGoodsInfo;
import java.io.Serializable;
import java.util.List;
/**
@@ -8,7 +11,7 @@
 * @author Administrator
 *
 */
public class VIPGoodsInfo {
public class VIPGoodsInfo extends BaseGoodsInfo implements Serializable {
    private String goodsId;// 商品id
    private String goodsName;// 商品名称
    private String goodsDesc;// 商品描述,字段暂不输出
fanli/src/main/java/com/yeshi/fanli/entity/SystemEnum.java
@@ -11,7 +11,7 @@
            SystemFunction.bindPhone, SystemFunction.threeSale, SystemFunction.cloudOrder, SystemFunction.godenCorn, SystemFunction.redPack,SystemFunction.faQuan,SystemFunction.fanli,SystemFunction.vip
    }, 1, "板栗快省","板栗快省"),
    flq("com.fanliunion.android", "com.xyj.ec.flq-ios", new String[]{}, new SystemFunction[]{SystemFunction.faQuan,SystemFunction.fanli}, 11, "返利联盟","淘拼团"),
    yhqjx("com.youhuiquan.android","com.youhuiquanjx.ios",new String[]{}, new SystemFunction[]{SystemFunction.faQuan}, 12, "优惠券精选","淘拼团");
    yhqjx("com.youhuiquan.android","com.youhuiquanjx.ios",new String[]{}, new SystemFunction[]{SystemFunction.faQuan,SystemFunction.lijinSub}, 12, "优惠券精选","淘拼团");
    private String packageName;
    private String bundleId;
    private int systemId;
fanli/src/main/java/com/yeshi/fanli/entity/SystemFunction.java
@@ -11,8 +11,8 @@
    redPack("红包"),
    faQuan("发圈"),
    vip("超级会员"),
    fanli("是否需要返利")
    ;
    fanli("是否需要返利"),
    lijinSub("礼金立减");
    private SystemFunction(String desc) {
fanli/src/main/java/com/yeshi/fanli/entity/goods/BaseGoodsInfo.java
New file
@@ -0,0 +1,6 @@
package com.yeshi.fanli.entity.goods;
import java.io.Serializable;
public class BaseGoodsInfo implements Serializable {
}
fanli/src/main/java/com/yeshi/fanli/entity/jd/JDGoods.java
@@ -9,6 +9,7 @@
import com.yeshi.fanli.dto.jd.JDCouponInfo;
import com.yeshi.fanli.dto.jd.JDPingouInfo;
import com.yeshi.fanli.dto.jd.JDShopInfo;
import com.yeshi.fanli.entity.goods.BaseGoodsInfo;
/**
 * 京东商品
@@ -16,7 +17,7 @@
 * @author Administrator
 *
 */
public class JDGoods implements Serializable {
public class JDGoods extends BaseGoodsInfo implements Serializable {
    /**
     * 
     */
fanli/src/main/java/com/yeshi/fanli/job/DynamicInfoJob.java
@@ -18,7 +18,7 @@
import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.handler.annotation.XxlJob;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.goods.facade.dto.taobao.dataoke.DaTaoKeGoodsResult;
import com.yeshi.goods.facade.dto.taobao.haodanku.HDKGoodsListResultDTO;
import com.yeshi.goods.facade.dto.taobao.haodanku.HDKWXCircleContentDTO;
@@ -334,7 +334,7 @@
                totalMoney = totalMoney.add(money);
                picture.setGoodsVO(
                        GoodsDetailVOFactory.convertJDGoods(jdGoods,
                                new ConfigParamsDTO(hongBaoManageService.getFanLiRate(SystemEnum.blks),
                                new GoodsMoneyConfigParamsDTO(hongBaoManageService.getFanLiRate(SystemEnum.blks),
                                        hongBaoManageService.getShareRate(SystemEnum.blks), null,
                                        hongBaoManageService.getFanLiRate(UserLevelEnum.superVIP, SystemEnum.blks))));
                picture.setGoodState(0);
fanli/src/main/java/com/yeshi/fanli/job/goods/FreeGoodsCouponJob.java
@@ -12,7 +12,7 @@
import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.handler.annotation.XxlJob;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.jd.JDCommissionInfo;
import com.yeshi.fanli.dto.jd.JDFilter;
import com.yeshi.fanli.dto.jd.JDSearchResult;
@@ -73,7 +73,7 @@
        BigDecimal limitPrice = new BigDecimal(2);
        List<FreeGoodsCoupon> listExist = freeGoodsCouponService.listByType(0, 100, Constant.SOURCE_TYPE_TAOBAO);
        ConfigParamsDTO params = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", SystemEnum.blks);
        GoodsMoneyConfigParamsDTO params = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", SystemEnum.blks);
        params.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(SystemEnum.blks));
        // 信息更新
@@ -181,7 +181,7 @@
        BigDecimal limitPrice = new BigDecimal(2);
        List<FreeGoodsCoupon> listExist = freeGoodsCouponService.listByType(0, 100, Constant.SOURCE_TYPE_JD);
        ConfigParamsDTO params = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55",SystemEnum.blks);
        GoodsMoneyConfigParamsDTO params = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55",SystemEnum.blks);
        params.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(SystemEnum.blks));
        // 信息更新
@@ -294,7 +294,7 @@
        BigDecimal limitPrice = new BigDecimal(2);
        List<FreeGoodsCoupon> listExist = freeGoodsCouponService.listByType(0, 100, Constant.SOURCE_TYPE_PDD);
        ConfigParamsDTO params = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55",SystemEnum.blks);
        GoodsMoneyConfigParamsDTO params = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55",SystemEnum.blks);
        params.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(SystemEnum.blks));
        // 信息更新
fanli/src/main/java/com/yeshi/fanli/lijin/manager/GoodsLijinMnager.java
New file
@@ -0,0 +1,255 @@
package com.yeshi.fanli.lijin.manager;
import com.ks.lijin.pojo.DTO.MoneyInfo;
import com.ks.lijin.service.LijinCreateService;
import com.ks.vip.pojo.DO.VipGradePotence;
import com.ks.vip.pojo.Enums.VIPEnum;
import com.ks.vip.service.VipCenterService;
import com.ks.vip.service.VipGradePotenceService;
import com.ks.vip.service.VipGradeService;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
import com.yeshi.fanli.dto.suning.SuningGoodsInfo;
import com.yeshi.fanli.dto.vip.goods.VIPGoodsInfo;
import com.yeshi.fanli.entity.SystemEnum;
import com.yeshi.fanli.entity.SystemFunction;
import com.yeshi.fanli.entity.goods.BaseGoodsInfo;
import com.yeshi.fanli.entity.goods.CommonGoods;
import com.yeshi.fanli.entity.jd.JDGoods;
import com.yeshi.fanli.exception.taobao.TaoKeApiException;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
import com.yeshi.fanli.util.CommonGoodsUtil;
import com.yeshi.fanli.util.SystemInfoUtil;
import com.yeshi.fanli.util.factory.goods.GoodsDetailVOFactory;
import com.yeshi.fanli.util.jd.JDUtil;
import com.yeshi.fanli.util.pinduoduo.PinDuoDuoUtil;
import com.yeshi.fanli.util.suning.SuningUtil;
import com.yeshi.fanli.util.taobao.TaoBaoUtil;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
import com.yeshi.fanli.util.vipshop.VipShopUtil;
import com.yeshi.fanli.vo.goods.GoodsDetailVO;
import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief;
import org.apache.dubbo.config.annotation.Reference;
import org.springframework.stereotype.Component;
import org.yeshi.utils.MoneyBigDecimalUtil;
import java.math.BigDecimal;
import java.util.*;
@Component
public class GoodsLijinMnager {
    @Reference(version = "1.0")
    private LijinCreateService lijinCreateService;
    @Reference(version = "1.0")
    private VipCenterService vipCenterService;
    @Reference(version = "1.0")
    private VipGradePotenceService vipGradePotenceService;
    @Reference(version = "1.0")
    private VipGradeService vipGradeService;
    private String getUid(Long uid) {
        if (uid == null)
            return null;
        return "tejia-" + uid;
    }
    private void loadMaterialLibsType(List<TaoBaoGoodsBrief> goodsBriefList) {
        List<Long> auctionIds = new ArrayList<>();
        for (TaoBaoGoodsBrief goodsBrief : goodsBriefList) {
            auctionIds.add(goodsBrief.getAuctionId());
        }
        try {
            List<TaoBaoGoodsBrief> tempList = TaoKeApiUtil.getBatchGoodsInfo(auctionIds);
            Map<Long, TaoBaoGoodsBrief> tempMap = new HashMap<>();
            for (TaoBaoGoodsBrief temp : tempList) {
                tempMap.put(temp.getAuctionId(), temp);
            }
            for (TaoBaoGoodsBrief goodsBrief : goodsBriefList) {
                if (tempMap.get(goodsBrief.getAuctionId()) != null) {
                    goodsBrief.setMaterialLibType(tempMap.get(goodsBrief.getAuctionId()).getMaterialLibType());
                    goodsBrief.setMaterialLibTypes(tempMap.get(goodsBrief.getAuctionId()).getMaterialLibTypes());
                }
            }
        } catch (TaoKeApiException e) {
            e.printStackTrace();
        } catch (TaobaoGoodsDownException e) {
            e.printStackTrace();
        }
    }
    private void loadTBMoneyInfo(SystemEnum system, Map<String, MoneyInfo> lijinMap, TaoBaoGoodsBrief goods, GoodsDetailVO detailVO) {
        if (SystemInfoUtil.hasFunctions(system, SystemFunction.lijinSub)) {
            //设置礼金
            MoneyInfo moneyInfo = lijinMap.get(goods.getAuctionId() + "");
            //券后价格
            BigDecimal couponPrice = TaoBaoUtil.getCouponPrice(goods);
            BigDecimal finalPrice = null;
            if (moneyInfo != null && moneyInfo.getLijinAmount() != null) {//有礼金
                detailVO.getMoneyInfo().setHongBaoMoney("¥" + moneyInfo.getLijinAmount());
                detailVO.getMoneyInfo().setFanliMoney(null);
                finalPrice = couponPrice.subtract(moneyInfo.getLijinAmount());
            } else {//无礼金
                finalPrice = couponPrice.subtract(moneyInfo.getFanliAmount() == null ? new BigDecimal(0) : moneyInfo.getFanliAmount());
                detailVO.getMoneyInfo().setFanliMoney("¥" + moneyInfo.getFanliAmount());
            }
            //设置价格
            detailVO.getMoneyInfo().setFinalMoney("¥" + finalPrice);
        }
    }
    public GoodsDetailVO loadTBMoneyInfo(SystemEnum system, Long uid, TaoBaoGoodsBrief goodsBrief, GoodsDetailVO detailVO) {
        List<TaoBaoGoodsBrief> goodsBriefs = new ArrayList<>();
        goodsBriefs.add(goodsBrief);
        Map<String, MoneyInfo> lijinMap = null;
        if (SystemInfoUtil.hasFunctions(system, SystemFunction.lijinSub)) {
            loadMaterialLibsType(goodsBriefs);
            lijinMap = getTBLijinList(uid, goodsBriefs);
        }
        for (TaoBaoGoodsBrief goods : goodsBriefs) {
            try {
                loadTBMoneyInfo(system, lijinMap, goods, detailVO);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        return detailVO;
    }
    public List<GoodsDetailVO> loadTBMoneyInfo(SystemEnum system, Long uid, List<TaoBaoGoodsBrief> goodsBriefList, GoodsMoneyConfigParamsDTO paramsDTO) {
        Map<String, MoneyInfo> lijinMap = null;
        if (SystemInfoUtil.hasFunctions(system, SystemFunction.lijinSub)) {
            loadMaterialLibsType(goodsBriefList);
            lijinMap = getTBLijinList(uid, goodsBriefList);
        }
        List<GoodsDetailVO> voList = new ArrayList<>();
        for (TaoBaoGoodsBrief goods : goodsBriefList) {
            try {
                GoodsDetailVO detailVO = GoodsDetailVOFactory.convertTaoBao(goods, paramsDTO);
                loadTBMoneyInfo(system, lijinMap, goods, detailVO);
                voList.add(detailVO);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        return voList;
    }
    public List<GoodsDetailVO> loadOtherMoneyInfo(SystemEnum system, Long uid, List<? extends BaseGoodsInfo> goodsList, GoodsMoneyConfigParamsDTO paramsDTO) {
        List<GoodsDetailVO> voList = new ArrayList<>();
        if (goodsList == null || goodsList.size() == 0)
            return voList;
        BigDecimal fanliRate = null;
        if (system == SystemEnum.yhqjx) {
            fanliRate = getFanLiRate(uid);
        }
        BigDecimal couponPrice = null;
        BigDecimal fanliMoney = null;
        for (BaseGoodsInfo goods : goodsList) {
            GoodsDetailVO detailVO = null;
            if (goods instanceof JDGoods) {
                detailVO = GoodsDetailVOFactory.convertJDGoods((JDGoods) goods, paramsDTO);
                if (fanliRate != null) {
                    couponPrice = JDUtil.getCouponPrice((JDGoods) goods);
                    fanliMoney = JDUtil.getGoodsFanLiMoney((JDGoods) goods, fanliRate);
                }
            } else if (goods instanceof PDDGoodsDetail) {
                detailVO = GoodsDetailVOFactory.convertPDDGoods((PDDGoodsDetail) goods, paramsDTO);
                if (fanliRate != null) {
                    couponPrice = PinDuoDuoUtil.getCouponPrice((PDDGoodsDetail) goods);
                    fanliMoney = PinDuoDuoUtil.getGoodsFanLiMoney((PDDGoodsDetail) goods, fanliRate);
                }
            } else if (goods instanceof VIPGoodsInfo) {
                detailVO = GoodsDetailVOFactory.convertVIPGoods((VIPGoodsInfo) goods, paramsDTO);
                if (fanliRate != null) {
                    couponPrice = VipShopUtil.getCouponPrice((VIPGoodsInfo) goods);
                    fanliMoney = VipShopUtil.getGoodsFanLiMoney((VIPGoodsInfo) goods, fanliRate);
                }
            } else if (goods instanceof SuningGoodsInfo) {
                detailVO = GoodsDetailVOFactory.convertSuningGoods((SuningGoodsInfo) goods, paramsDTO);
                if (fanliRate != null) {
                    couponPrice = SuningUtil.getCouponPrice((SuningGoodsInfo) goods);
                    fanliMoney = SuningUtil.getGoodsFanLiMoney((SuningGoodsInfo) goods, fanliRate);
                }
            }
            if (couponPrice != null && fanliMoney != null) {
                detailVO.getMoneyInfo().setFanliMoney("¥" + fanliMoney);
                detailVO.getMoneyInfo().setFinalMoney("¥" + couponPrice.subtract(fanliMoney));
            }
            voList.add(detailVO);
        }
        return voList;
    }
    public GoodsDetailVO loadOtherMoneyInfo(SystemEnum system, Long uid, CommonGoods goods, GoodsDetailVO goodsDetailVO) {
        if (goodsDetailVO == null)
            return null;
        BigDecimal fanliRate = null;
        if (system == SystemEnum.yhqjx) {
            fanliRate = getFanLiRate(uid);
        }
        if (fanliRate != null) {
            BigDecimal fanliMoney = CommonGoodsUtil.getCommission(goods, fanliRate);
            BigDecimal couponPrice = CommonGoodsUtil.getAfterUseCouplePrice(goods);
            goodsDetailVO.getMoneyInfo().setFanliMoney("¥" + fanliMoney);
            goodsDetailVO.getMoneyInfo().setFinalMoney("¥" + couponPrice.subtract(fanliMoney));
        }
        return goodsDetailVO;
    }
    /**
     * 批量获取淘宝礼金面额
     *
     * @param goodsBriefList
     * @return
     */
    private Map<String, MoneyInfo> getTBLijinList(Long uid, List<TaoBaoGoodsBrief> goodsBriefList) {
        Map<String, MoneyInfo> map = new HashMap<>();
        List<MoneyInfo> moneyInfos = lijinCreateService.getMoneyInfo(getUid(uid), goodsBriefList);
        for (MoneyInfo moneyInfo : moneyInfos) {
            map.put(moneyInfo.getGoodsId(), moneyInfo);
        }
        return map;
    }
    /**
     * 获取返利比例
     *
     * @param uid
     * @return
     */
    private BigDecimal getFanLiRate(Long uid) {
        //加载返利信息
        VIPEnum rank = vipCenterService.getVIPEnumByUid(getUid(uid));
        if (rank == null)
            rank = vipGradeService.getDefaultGrade().getIdentity();
        VipGradePotence potence = vipGradePotenceService.getPotenceByVipEnum(rank);
        //获取返利比例
        BigDecimal fanliRate = potence.getRebatePercent();
        return fanliRate;
    }
}
fanli/src/main/java/com/yeshi/fanli/lijin/vo/GoodsDetailVO.java
File was renamed from fanli/src/main/java/com/yeshi/fanli/vo/goods/lijin/GoodsDetailVO.java
@@ -1,4 +1,4 @@
package com.yeshi.fanli.vo.goods.lijin;
package com.yeshi.fanli.lijin.vo;
import com.yeshi.common.vo.ClientTextStyleVO;
import com.yeshi.fanli.entity.bus.user.ShamUser;
@@ -6,6 +6,7 @@
import com.yeshi.fanli.vo.goods.MoneyInfoVO;
import com.yeshi.fanli.vo.goods.ShopInfoVO;
import java.math.BigDecimal;
import java.util.List;
public class GoodsDetailVO {
@@ -50,7 +51,16 @@
        private MoneyInfoVO moneyInfo;
        private List<GoodsHongBaoListVO> priceList;
        private String zkPrice;
        private BigDecimal couponPrice;
        public BigDecimal getCouponPrice() {
            return couponPrice;
        }
        public void setCouponPrice(BigDecimal couponPrice) {
            this.couponPrice = couponPrice;
        }
        public String getZkPrice() {
            return zkPrice;
@@ -352,7 +362,7 @@
            this.desc = desc;
        }
        static class UserLevelVO {
        public static class UserLevelVO {
            //VIP等级 0-初级  1-青铜 2-白银 3-铂金
            private int vipRank;
            private String desc;
fanli/src/main/java/com/yeshi/fanli/service/impl/brand/BrandClassShopServiceImpl.java
@@ -17,7 +17,7 @@
import org.yeshi.utils.JsonUtil;
import com.yeshi.fanli.dao.mybatis.brand.BrandClassShopMapper;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.entity.brand.BrandClass;
import com.yeshi.fanli.entity.brand.BrandClassShop;
import com.yeshi.fanli.entity.goods.CommonGoods;
@@ -436,7 +436,7 @@
            count = taoBaoShopService.countBrandShopinfo(cid);
        }
        ConfigParamsDTO paramsDTO =     orderHongBaoMoneyComputeService.getShowComputeRate(platform, version,system);
        GoodsMoneyConfigParamsDTO paramsDTO =     orderHongBaoMoneyComputeService.getShowComputeRate(platform, version,system);
        // 淘宝商品信息过滤
        Map<Long, TaoBaoGoodsBrief> goodsMap = getFilterTaoBaoGoods(listInfo);
@@ -541,7 +541,7 @@
            return listInfo;
        
        ConfigParamsDTO paramsDTO =
        GoodsMoneyConfigParamsDTO paramsDTO =
                orderHongBaoMoneyComputeService.getShowComputeRate(platform, version,system);
        // 淘宝商品信息过滤
        Map<Long, TaoBaoGoodsBrief> goodsMap = getFilterTaoBaoGoods(listInfo);
fanli/src/main/java/com/yeshi/fanli/service/impl/brand/BrandInfoServiceImpl.java
@@ -16,7 +16,7 @@
import org.yeshi.utils.tencentcloud.COSManager;
import com.yeshi.fanli.dao.mybatis.brand.BrandInfoMapper;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
import com.yeshi.fanli.entity.brand.BrandClass;
import com.yeshi.fanli.entity.brand.BrandGoodsCahe;
@@ -435,7 +435,7 @@
        if (list == null || list.size() == 0)
            return null;
        ConfigParamsDTO configParamsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(platform, version,system);
        GoodsMoneyConfigParamsDTO configParamsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(platform, version,system);
        List<BrandInfoVO> listInfo = new ArrayList<BrandInfoVO>();
        for (int i = 0; i < list.size(); i++) {
@@ -486,7 +486,7 @@
        if (list == null || list.size() == 0)
            return null;
        ConfigParamsDTO configParamsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(platform, version, system);
        GoodsMoneyConfigParamsDTO configParamsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(platform, version, system);
        BrandInfoVO brand = list.get(0);
        List<BrandGoodsCahe> listGoods = brandGoodsCaheService.getByBrandId(1, 3, brand.getId());
fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/DynamicInfoServiceImpl.java
@@ -24,7 +24,7 @@
import org.yeshi.utils.taobao.TbImgUtil;
import com.yeshi.fanli.dao.dynamic.DynamicInfoDao;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.goods.facade.dto.taobao.TaoBaoShopDTO;
import com.yeshi.fanli.entity.bus.activity.ActivityRuleUser;
import com.yeshi.fanli.entity.bus.activity.ActivityUser;
@@ -977,7 +977,7 @@
            BigDecimal fanLiRate = hongBaoManageService.getFanLiRate(SystemEnum.blks);
            BigDecimal shareRate = hongBaoManageService.getShareRate(SystemEnum.blks);
            ConfigParamsDTO paramsDTO = new ConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE,hongBaoManageService.getFanLiRate(UserLevelEnum.superVIP,SystemEnum.blks));
            GoodsMoneyConfigParamsDTO paramsDTO = new GoodsMoneyConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE,hongBaoManageService.getFanLiRate(UserLevelEnum.superVIP,SystemEnum.blks));
            for (DynamicInfo dynamicInfo : list) {
                DynamicInfo dynamicNew = new DynamicInfo();
fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/GoodsEvaluateServiceImpl.java
@@ -32,7 +32,7 @@
import org.yeshi.utils.tencentcloud.COSManager;
import com.yeshi.fanli.dao.dynamic.GoodsEvaluateDao;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.jd.JDCouponInfo;
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
import com.yeshi.fanli.dto.suning.SuningGoodsInfo;
@@ -426,7 +426,7 @@
        GoodsDetailVO goodsDetailVO = null;
        JDGoods jdGoods = null;
        PDDGoodsDetail pddGoods = null;
        ConfigParamsDTO params = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
        GoodsMoneyConfigParamsDTO params = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
        params.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(system));
        if (goodsType == Constant.SOURCE_TYPE_TAOBAO) {
            try {
@@ -652,7 +652,7 @@
    public GoodsDetailVO getGoodsDetailVO(Long goodsId, Integer goodsType, SystemEnum system) throws GoodsEvaluateException {
        GoodsDetailVO goodsDetail = null;
        ConfigParamsDTO params = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
        GoodsMoneyConfigParamsDTO params = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
        params.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(system));
        if (goodsType == Constant.SOURCE_TYPE_TAOBAO) {
            try {
@@ -1828,7 +1828,7 @@
            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            for (GoodsEvaluate goodsEvaluate : list) {
                ConfigParamsDTO params = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", goodsEvaluate.getSystem());
                GoodsMoneyConfigParamsDTO params = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", goodsEvaluate.getSystem());
                params.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(goodsEvaluate.getSystem()));
                // 是否2个小时之内已更新
                Date updateTime = goodsEvaluate.getUpdateTime();
@@ -1921,7 +1921,7 @@
        }
    }
    private GoodsDetailVO getGoodsNewInfo(String goodsId, int goodsType, ConfigParamsDTO paramsDTO) {
    private GoodsDetailVO getGoodsNewInfo(String goodsId, int goodsType, GoodsMoneyConfigParamsDTO paramsDTO) {
        GoodsDetailVO vo = null;
        if (goodsType == Constant.SOURCE_TYPE_TAOBAO) {
            TaoBaoGoodsBrief goods;
@@ -1982,7 +1982,7 @@
        imgs.addAll(goodsBrief.getImgList());
        // 商品VO
        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
        paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(system));
        GoodsDetailVO goodsVO = GoodsDetailVOFactory.convertTaoBao(goodsBrief, paramsDTO);
@@ -2107,7 +2107,7 @@
        }
        // 商品VO
        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
        paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(system));
        GoodsDetailVO goodsVO = GoodsDetailVOFactory.convertTaoBao(goodsBrief, paramsDTO);
@@ -2294,7 +2294,7 @@
                return false;
            }
            ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
            GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
            paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(system));
            GoodsDetailVO goodsVO = GoodsDetailVOFactory.convertTaoBao(goodsBrief, paramsDTO);
@@ -2524,7 +2524,7 @@
                if (queryExist == null || queryExist.size() == 0) {
                    continue;
                }
                ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
                GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
                paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(system));
                GoodsDetailVO goodsNew = GoodsDetailVOFactory.convertTaoBao(goods, paramsDTO);
                updateGoods(queryExist, goodsNew);
@@ -2546,7 +2546,7 @@
                continue;
            }
            ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
            GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
            paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(system));
            GoodsDetailVO goodsNew = GoodsDetailVOFactory.convertJDGoods(jdGoods, paramsDTO);
@@ -2565,7 +2565,7 @@
                continue;
            }
            ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
            GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
            paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(system));
            GoodsDetailVO goodsNew = GoodsDetailVOFactory.convertPDDGoods(pddGoods, paramsDTO);
            updateGoods(queryExist, goodsNew);
@@ -2584,7 +2584,7 @@
                continue;
            }
            ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
            GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
            paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(system));
            GoodsDetailVO goodsNew = GoodsDetailVOFactory.convertVIPGoods(goods, paramsDTO);
            updateGoods(queryExist, goodsNew);
@@ -2602,7 +2602,7 @@
            if (queryExist == null || queryExist.size() == 0) {
                continue;
            }
            ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
            GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate("android", "55", system);
            paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate(system));
            GoodsDetailVO goodsNew = GoodsDetailVOFactory.convertSuningGoods(goods, paramsDTO);
            updateGoods(queryExist, goodsNew);
fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityGoodsServiceImpl.java
@@ -16,7 +16,7 @@
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.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.entity.bus.lable.Label;
import com.yeshi.fanli.entity.bus.lable.LabelGoods;
import com.yeshi.fanli.entity.bus.lable.QualityFactory;
@@ -359,7 +359,7 @@
        } catch (Exception e) {
        }
        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(platform, version,system);
        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(platform, version,system);
        for (TaoBaoGoodsBrief taoBaoGoodsBrief : goodsList) {
            GoodsDetailVO detailVO = GoodsDetailVOFactory.convertTaoBao(taoBaoGoodsBrief, paramsDTO);
fanli/src/main/java/com/yeshi/fanli/service/impl/lable/TaoKeGoodsServiceImpl.java
@@ -17,7 +17,7 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.entity.bus.lable.QualityFactory;
import com.yeshi.fanli.entity.taobao.SearchFilter;
import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief;
@@ -301,7 +301,7 @@
        int fh = sf.getHongbao();
        boolean ft = sf.isTmall();
        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(platform, version,system);
        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(platform, version,system);
        if (fq == 0 && fh == 0 && !ft) {
            if (result != null && result.getTaoBaoGoodsBriefs() != null)
fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderHongBaoMoneyComputeServiceImpl.java
@@ -11,7 +11,7 @@
import com.yeshi.fanli.service.inter.user.UserInfoService;
import org.springframework.stereotype.Service;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.order.UserTeamLevel;
import com.yeshi.fanli.dto.order.UserTeamRate;
import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum;
@@ -391,10 +391,10 @@
    }
    @Override
    public ConfigParamsDTO getShowComputeRate(String platform, String version, UserLevelEnum userLevel,SystemEnum system) {
    public GoodsMoneyConfigParamsDTO getShowComputeRate(String platform, String version, UserLevelEnum userLevel, SystemEnum system) {
        BigDecimal fanLiRate = getFanliRate(new Date(), userLevel,system);
        BigDecimal shareRate = fanLiRate;
        ConfigParamsDTO paramsDTO = new ConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE,
        GoodsMoneyConfigParamsDTO paramsDTO = new GoodsMoneyConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE,
                getFanliRate(new Date(), UserLevelEnum.superVIP,system));
        if (VersionUtil.greaterThan_2_0_5(platform, version)) {
            paramsDTO.setMaxRewardRate(null);
@@ -403,7 +403,7 @@
    }
    @Override
    public ConfigParamsDTO getShowComputeRate(String platform, String version,SystemEnum system) {
    public GoodsMoneyConfigParamsDTO getShowComputeRate(String platform, String version, SystemEnum system) {
        return getShowComputeRate(platform, version, UserLevelEnum.daRen,system);
    }
fanli/src/main/java/com/yeshi/fanli/service/impl/order/config/HongBaoManageServiceImpl.java
@@ -13,7 +13,7 @@
import org.springframework.transaction.annotation.Transactional;
import com.yeshi.fanli.dao.mybatis.HongBaoManageMapper;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.entity.bus.user.HongBaoManage;
import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum;
import com.yeshi.fanli.log.LogHelper;
@@ -236,11 +236,11 @@
    }
    @Override
    public ConfigParamsDTO getShowComputeRate(String platform, String version, UserLevelEnum userLevel, SystemEnum system) {
    public GoodsMoneyConfigParamsDTO getShowComputeRate(String platform, String version, UserLevelEnum userLevel, SystemEnum system) {
        BigDecimal fanLiRate = getFanLiRate(userLevel,system);
        BigDecimal shareRate = getShareRate(userLevel,system);
        ConfigParamsDTO paramsDTO = new ConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE,
        GoodsMoneyConfigParamsDTO paramsDTO = new GoodsMoneyConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE,
                getFanLiRate(UserLevelEnum.superVIP,system));
        if (VersionUtil.greaterThan_2_0_5(platform, version)) {
            paramsDTO.setMaxRewardRate(null);
@@ -249,11 +249,11 @@
    }
    @Override
    public ConfigParamsDTO getShowComputeRate(String platform, String version, SystemEnum system) {
    public GoodsMoneyConfigParamsDTO getShowComputeRate(String platform, String version, SystemEnum system) {
        BigDecimal fanLiRate = getFanLiRate(UserLevelEnum.daRen,system);
        BigDecimal shareRate = getShareRate(UserLevelEnum.daRen,system);
        ConfigParamsDTO paramsDTO = new ConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE,
        GoodsMoneyConfigParamsDTO paramsDTO = new GoodsMoneyConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE,
                getFanLiRate(UserLevelEnum.superVIP,system));
        if (VersionUtil.greaterThan_2_0_5(platform, version)) {
            paramsDTO.setMaxRewardRate(null);
fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoShopServiceImpl.java
@@ -15,7 +15,7 @@
import org.yeshi.utils.tencentcloud.COSManager;
import com.yeshi.fanli.dao.mybatis.taobao.TaoBaoShopMapper;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum;
import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief;
import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBriefExtra;
@@ -216,7 +216,7 @@
            return null;
        }
        ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(platform, version,UserLevelEnum.daRen,system);
        GoodsMoneyConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(platform, version,UserLevelEnum.daRen,system);
        for (TaoBaoShopVO taoBaoShopVO : list) {
fanli/src/main/java/com/yeshi/fanli/service/inter/order/OrderHongBaoMoneyComputeService.java
@@ -4,7 +4,7 @@
import java.util.Date;
import java.util.List;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.order.UserTeamLevel;
import com.yeshi.fanli.dto.order.UserTeamRate;
import com.yeshi.fanli.entity.SystemEnum;
@@ -18,9 +18,9 @@
 */
public interface OrderHongBaoMoneyComputeService {
    public ConfigParamsDTO getShowComputeRate(String platform, String version, UserLevelEnum userLevel,SystemEnum system);
    public GoodsMoneyConfigParamsDTO getShowComputeRate(String platform, String version, UserLevelEnum userLevel, SystemEnum system);
    public ConfigParamsDTO getShowComputeRate(String platform, String version,SystemEnum system);
    public GoodsMoneyConfigParamsDTO getShowComputeRate(String platform, String version, SystemEnum system);
    /**
     * 获取基础的返利金额
fanli/src/main/java/com/yeshi/fanli/service/inter/order/config/HongBaoManageService.java
@@ -7,7 +7,7 @@
import com.yeshi.fanli.entity.SystemEnum;
import org.springframework.cache.annotation.CacheEvict;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.entity.bus.user.HongBaoManage;
import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum;
@@ -156,10 +156,10 @@
     * @param version
     * @return
     */
    public ConfigParamsDTO getShowComputeRate(String platform, String version,UserLevelEnum userLevel, SystemEnum system);
    public GoodsMoneyConfigParamsDTO getShowComputeRate(String platform, String version, UserLevelEnum userLevel, SystemEnum system);
    
    
    public ConfigParamsDTO getShowComputeRate(String platform, String version, SystemEnum system);
    public GoodsMoneyConfigParamsDTO getShowComputeRate(String platform, String version, SystemEnum system);
    /**
     * 获取基础的返利比例
fanli/src/main/java/com/yeshi/fanli/util/factory/goods/GoodsDetailVOFactory.java
@@ -11,7 +11,7 @@
import org.yeshi.utils.taobao.TbImgUtil;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.common.GoodsOtherInfoDTO;
import com.yeshi.fanli.dto.jd.JDCouponInfo;
import com.yeshi.fanli.dto.jd.JDPingouInfo;
@@ -60,7 +60,7 @@
     * @param fanLiRate 返利比例
     * @return
     */
    public static GoodsDetailVO convertCommonGoods(CommonGoods goods, ConfigParamsDTO params) {
    public static GoodsDetailVO convertCommonGoods(CommonGoods goods, GoodsMoneyConfigParamsDTO params) {
        GoodsDetailVO goodsInfo = new GoodsDetailVO();
        goodsInfo.setGoodsId(goods.getGoodsId() + "");
        goodsInfo.setTitle(goods.getTitle());
@@ -259,7 +259,7 @@
     * @param fanLiRate 返利比例
     * @return
     */
    public static GoodsDetailVO convertTaoBaoGoodsBriefExtra(TaoBaoGoodsBriefExtra goods, ConfigParamsDTO params) {
    public static GoodsDetailVO convertTaoBaoGoodsBriefExtra(TaoBaoGoodsBriefExtra goods, GoodsMoneyConfigParamsDTO params) {
        GoodsDetailVO goodsInfo = new GoodsDetailVO();
        goodsInfo.setBaoyou(true);
        goodsInfo.setGoodsType(Constant.SOURCE_TYPE_TAOBAO);
@@ -370,7 +370,7 @@
     * @param fanLiRate 返利比例
     * @return
     */
    public static GoodsDetailVO convertTaoBao(TaoBaoGoodsBrief goods, ConfigParamsDTO params) {
    public static GoodsDetailVO convertTaoBao(TaoBaoGoodsBrief goods, GoodsMoneyConfigParamsDTO params) {
        GoodsDetailVO goodsInfo = new GoodsDetailVO();
        goodsInfo.setBaoyou(true);
        goodsInfo.setGoodsType(Constant.SOURCE_TYPE_TAOBAO);
@@ -596,7 +596,7 @@
     * @param fanLiRate 返利比例
     * @return
     */
    public static GoodsDetailVO convertJDGoods(JDGoods goods, ConfigParamsDTO params) {
    public static GoodsDetailVO convertJDGoods(JDGoods goods, GoodsMoneyConfigParamsDTO params) {
        GoodsDetailVO goodsInfo = new GoodsDetailVO();
        goodsInfo.setGoodsType(Constant.SOURCE_TYPE_JD);
        goodsInfo.setGoodsId(goods.getSkuId() + "");
@@ -749,7 +749,7 @@
     * @param fanLiRate 返利比例
     * @return
     */
    public static GoodsDetailVO convertPDDGoods(PDDGoodsDetail goods, ConfigParamsDTO params) {
    public static GoodsDetailVO convertPDDGoods(PDDGoodsDetail goods, GoodsMoneyConfigParamsDTO params) {
        GoodsDetailVO goodsInfo = new GoodsDetailVO();
        goodsInfo.setBaoyou(true);
        goodsInfo.setGoodsType(Constant.SOURCE_TYPE_PDD);
@@ -888,7 +888,7 @@
        return goodsInfo;
    }
    public static GoodsDetailVO convertVIPGoods(VIPGoodsInfo goods, ConfigParamsDTO params) {
    public static GoodsDetailVO convertVIPGoods(VIPGoodsInfo goods, GoodsMoneyConfigParamsDTO params) {
        GoodsDetailVO goodsInfo = new GoodsDetailVO();
        goodsInfo.setBaoyou(true);
        goodsInfo.setGoodsType(Constant.SOURCE_TYPE_VIP);
@@ -967,7 +967,7 @@
        return goodsInfo;
    }
    public static GoodsDetailVO convertSuningGoods(SuningGoodsInfo goods, ConfigParamsDTO params) {
    public static GoodsDetailVO convertSuningGoods(SuningGoodsInfo goods, GoodsMoneyConfigParamsDTO params) {
        GoodsDetailVO goodsInfo = new GoodsDetailVO();
        goodsInfo.setBaoyou(true);
        goodsInfo.setGoodsType(Constant.SOURCE_TYPE_SUNING);
fanli/src/main/java/com/yeshi/fanli/util/factory/goods/GoodsDetailVOLijinFactory.java
@@ -1,7 +1,7 @@
package com.yeshi.fanli.util.factory.goods;
import com.yeshi.common.vo.ClientTextStyleVO;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.GoodsMoneyConfigParamsDTO;
import com.yeshi.fanli.dto.jd.JDCouponInfo;
import com.yeshi.fanli.dto.jd.JDPingouInfo;
import com.yeshi.fanli.dto.jd.JDShopInfo;
@@ -22,9 +22,9 @@
import com.yeshi.fanli.vo.goods.CouponInfoVO;
import com.yeshi.fanli.vo.goods.MoneyInfoVO;
import com.yeshi.fanli.vo.goods.ShopInfoVO;
import com.yeshi.fanli.vo.goods.lijin.GoodsDetailVO;
import com.yeshi.fanli.vo.goods.lijin.GoodsDetailVO.GoodsInfoVO;
import com.yeshi.fanli.vo.goods.lijin.GoodsDetailVO.GoodsRightsVO;
import com.yeshi.fanli.lijin.vo.GoodsDetailVO;
import com.yeshi.fanli.lijin.vo.GoodsDetailVO.GoodsInfoVO;
import com.yeshi.fanli.lijin.vo.GoodsDetailVO.GoodsRightsVO;
import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief;
import org.yeshi.utils.MoneyBigDecimalUtil;
import org.yeshi.utils.TimeUtil;
@@ -41,7 +41,7 @@
public class GoodsDetailVOLijinFactory {
    public static GoodsInfoVO convertTaoBao(TaoBaoGoodsBrief goods, ConfigParamsDTO params) {
    public static GoodsInfoVO convertTaoBao(TaoBaoGoodsBrief goods, GoodsMoneyConfigParamsDTO params) {
        GoodsInfoVO goodsInfo = new GoodsInfoVO();
        goodsInfo.setGoodsType(Constant.SOURCE_TYPE_TAOBAO);
        goodsInfo.setGoodsId(goods.getAuctionId() + "");
@@ -51,7 +51,7 @@
        String provcity = goods.getProvcity();
        if (!StringUtil.isNullOrEmpty(provcity)) {
            String[] arr = provcity.split("\\s+");
            goodsInfo.setAddress(arr[arr.length - 1]);
            goodsInfo.setAddress(StringUtil.concat(Arrays.asList(arr),"·"));
        }
        List<String> imgList = goods.getImgList();
@@ -81,6 +81,7 @@
        }
        goodsInfo.setZkPrice(getMoneyDesc(goods.getZkPrice()));
        goodsInfo.setCouponPrice(TaoBaoUtil.getCouponPrice(goods));
        //-----------资金信息--------------
        MoneyInfoVO moneyInfoVO = new MoneyInfoVO();
@@ -89,7 +90,7 @@
        boolean isSpecialGoods = TaoBaoUtil.isSpecialGoods(goods.getMaterialLibType());
        BigDecimal buyCommission = TaoBaoUtil.getGoodsHongBaoMoney(goods, params.getFanLiRate(), !isSpecialGoods);
        moneyInfoVO.setFanliMoney("¥" + buyCommission);
        moneyInfoVO.setFinalMoney(getMoneyDesc(TaoBaoUtil.getCouponPrice(goods).subtract(buyCommission)));
        moneyInfoVO.setFinalMoney(getMoneyDesc(goodsInfo.getCouponPrice().subtract(buyCommission)));
        goodsInfo.setMoneyInfo(moneyInfoVO);
//        moneyInfoVO.setShareMoney(TaoBaoUtil.getGoodsHongBaoInfo(goods, params.getShareRate(), true));
@@ -117,6 +118,7 @@
                        TaoBaoCouponUtil.getCoupleUrl(goods.getCouponActivityId(), null, goods.getAuctionId() + ""));
            coupon.setStartFee(goods.getCouponStartFee());
            coupon.setShopCoupon(goods.isShopCoupon());
            goodsInfo.setTempCoupon(coupon);
            couponInfoVOList.add(coupon);
            goodsInfo.setCouponInfoList(couponInfoVOList);
@@ -216,7 +218,7 @@
    }
    public static GoodsInfoVO convertJDGoods(JDGoods goods, ConfigParamsDTO params) {
    public static GoodsInfoVO convertJDGoods(JDGoods goods, GoodsMoneyConfigParamsDTO params) {
        GoodsInfoVO goodsInfo = new GoodsInfoVO();
        goodsInfo.setGoodsType(Constant.SOURCE_TYPE_JD);
        goodsInfo.setGoodsId(goods.getSkuId() + "");
@@ -244,6 +246,8 @@
            zkPrice = pinGouInfo.getPingouPrice();
        }
        goodsInfo.setZkPrice(getMoneyDesc(zkPrice));
        goodsInfo.setCouponPrice(JDUtil.getCouponPrice(goods));
        // 资金信息
        MoneyInfoVO moneyInfoVO = new MoneyInfoVO();
@@ -330,7 +334,7 @@
    }
    public static GoodsInfoVO convertPDDGoods(PDDGoodsDetail goods, ConfigParamsDTO params) {
    public static GoodsInfoVO convertPDDGoods(PDDGoodsDetail goods, GoodsMoneyConfigParamsDTO params) {
        boolean bijia = false;
@@ -371,6 +375,7 @@
        BigDecimal zkPrice = MoneyBigDecimalUtil.div(new BigDecimal(goods.getMinGroupPrice()), new BigDecimal(100)).setScale(2);
        goodsInfo.setZkPrice(getMoneyDesc(zkPrice));
        goodsInfo.setCouponPrice(PinDuoDuoUtil.getCouponPrice(goods));
        Boolean hasCoupon = goods.getHasCoupon();
        if (hasCoupon != null && hasCoupon) {
            BigDecimal hundred = new BigDecimal(100);
@@ -425,7 +430,7 @@
        return fillFanliPrice(fillRights(goodsInfo), bijia);
    }
    public static GoodsInfoVO convertVIPGoods(VIPGoodsInfo goods, ConfigParamsDTO params) {
    public static GoodsInfoVO convertVIPGoods(VIPGoodsInfo goods, GoodsMoneyConfigParamsDTO params) {
        GoodsInfoVO goodsInfo = new GoodsInfoVO();
        goodsInfo.setGoodsType(Constant.SOURCE_TYPE_VIP);
        goodsInfo.setGoodsId(Long.parseLong(goods.getGoodsId()) + "");
@@ -444,6 +449,7 @@
        goodsInfo.setSalesCount("");
        goodsInfo.setZkPrice(getMoneyDesc(new BigDecimal(goods.getVipPrice())));
        goodsInfo.setCouponPrice(new BigDecimal(goods.getVipPrice()));
        // 资金信息
        MoneyInfoVO moneyInfoVO = new MoneyInfoVO();
@@ -475,7 +481,7 @@
        return fillFanliPrice(fillRights(goodsInfo), false);
    }
    public static GoodsInfoVO convertSuningGoods(SuningGoodsInfo goods, ConfigParamsDTO params) {
    public static GoodsInfoVO convertSuningGoods(SuningGoodsInfo goods, GoodsMoneyConfigParamsDTO params) {
        GoodsInfoVO goodsInfo = new GoodsInfoVO();
        goodsInfo.setGoodsType(Constant.SOURCE_TYPE_SUNING);
        goodsInfo.setGoodsId(SuningUtil.getConcatGoodsIId(goods.getCommodityInfo().getSupplierCode(),
@@ -487,7 +493,7 @@
            zkPrice = goods.getCommodityInfo().getSnPrice();
        }
        goodsInfo.setZkPrice(getMoneyDesc(new BigDecimal(zkPrice)));
        goodsInfo.setCouponPrice(SuningUtil.getCouponPrice(goods));
        goodsInfo.setShopType(CommonGoods.SHOP_TYPE_SUNING);
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java
@@ -188,6 +188,8 @@
        if (item.optBoolean("free_shipment"))
            goods.setFreeShipment(1);
        goods.setMaterialLibTypes(item.optString("material_lib_type"));
        if (!StringUtil.isNullOrEmpty(item.optString("material_lib_type"))) {
            try {
                String materialLibType = item.optString("material_lib_type");
fanli/src/main/java/com/yeshi/fanli/vo/goods/MoneyInfoVO.java
@@ -1,6 +1,7 @@
package com.yeshi.fanli.vo.goods;
import java.io.Serializable;
import java.math.BigDecimal;
import com.google.gson.annotations.Expose;
@@ -26,12 +27,16 @@
    @Expose
    private String hongBaoMoney;
    @Expose
    private String finalMoney;//最终价格
    private String maxRateInfo;// 最大比例信息
    private String maxCompositionInfo;//最大构成信息
    //原始佣金比例
    private BigDecimal commissionRate;
    public String getFinalMoney() {
@@ -122,4 +127,11 @@
        this.hongBaoMoney = hongBaoMoney;
    }
    public BigDecimal getCommissionRate() {
        return commissionRate;
    }
    public void setCommissionRate(BigDecimal commissionRate) {
        this.commissionRate = commissionRate;
    }
}
fanli/src/main/resource/dubbo/consumer.xml
@@ -9,6 +9,8 @@
        <dubbo:parameter key="qos.port" value="33333"></dubbo:parameter>
    </dubbo:application>
    <dubbo:annotation package="com.yeshi.fanli"></dubbo:annotation>
    <dubbo:registry  address="zookeeper://193.112.35.168:2181"/>
    <!-- url=dubbo://192.168.3.122:20882/com.yeshi.goods.facade.service.TaoBaoCouponCacheService -->
pom.xml
@@ -41,6 +41,14 @@
        </profile>
    </profiles>
    <repositories>
        <repository>
            <id>nexus</id>
            <name>nexus</name>
            <url>http://193.112.35.168:8081/nexus/content/groups/public/</url>
        </repository>
    </repositories>
    <dependencies>
        <dependency>