admin
2019-07-18 9403254f1b45b1fda90bd794a2c1466402230cad
修改淘礼金商品爬取规则
2个文件已修改
51 ■■■■ 已修改文件
fanli/src/main/java/com/yeshi/fanli/job/TaoLiJinJob.java 43 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/dataoke/DaTaoKeGoodsDetailV2ServiceImpl.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/job/TaoLiJinJob.java
@@ -119,18 +119,7 @@
        }
    }
    /**
     * 每天晚上11点50添加淘礼金
     */
    @Scheduled(cron = "0 50 23 * * ? ")
    public void autoAddTLJBuyGoods() {
        if (!Constant.IS_TASK)
            return;
        String day = TimeUtil.getGernalTime(System.currentTimeMillis() + 1000 * 60 * 60 * 24L, "yyyy-MM-dd");
        List<TaoBaoGoodsBrief> list = tljBuyGoodsService.listPreGoods(1);
        Collections.shuffle(list);
        if (list.size() > 20)
            list = list.subList(0, 20);
    private void addTLJBuyGoods(List<TaoBaoGoodsBrief> list, String day) {
        for (TaoBaoGoodsBrief goods : list) {
            // 获取商品详情
            try {
@@ -154,4 +143,34 @@
        }
    }
    /**
     * 每天晚上11点50添加淘礼金1个商品,用于兼容Android前端没有商品不显示banner的问题
     */
    @Scheduled(cron = "0 50 23 * * ? ")
    public void autoAddTLJBuyGoods() {
        if (!Constant.IS_TASK)
            return;
        String day = TimeUtil.getGernalTime(System.currentTimeMillis() + 1000 * 60 * 60 * 24L, "yyyy-MM-dd");
        List<TaoBaoGoodsBrief> list = tljBuyGoodsService.listPreGoods(1);
        Collections.shuffle(list);
        if (list.size() > 20)
            list = list.subList(0, 1);
        addTLJBuyGoods(list, day);
    }
    /**
     * 每天凌晨5点过1分开始爬取剩余9个商品
     */
    @Scheduled(cron = "0 1 5 * * ? ")
    public void autoAddTLJBuyGoods2() {
        if (!Constant.IS_TASK)
            return;
        String day = TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyy-MM-dd");
        List<TaoBaoGoodsBrief> list = tljBuyGoodsService.listPreGoods(1);
        Collections.shuffle(list);
        if (list.size() > 20)
            list = list.subList(0, 1);
        addTLJBuyGoods(list, day);
    }
}
fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/dataoke/DaTaoKeGoodsDetailV2ServiceImpl.java
@@ -2,6 +2,7 @@
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Collections;
import java.util.Comparator;
import java.util.Date;
@@ -233,10 +234,17 @@
                if (commision.multiply(new BigDecimal("0.7")).compareTo(new BigDecimal("1.01")) >= 0
                        && v2.getActualPrice().compareTo(new BigDecimal(30)) < 0 && v2.getMonthSales() >= 5000) {
                    Date time = new Date(TimeUtil.convertToTimeTemp(v2.getCouponEndTime(), "yyyy-MM-dd HH:mm:ss"));
                    Date targetTime = new Date(TimeUtil
                            .convertToTimeTemp(TimeUtil.getGernalTime(
                                    System.currentTimeMillis() + 1000 * 60 * 60 * 24 * 2L, "yyyy-MM-dd"), "yyyy-MM-dd")
                            - 1000L);
                    // 如果是凌晨选择的
                    if (Calendar.getInstance().get(Calendar.HOUR_OF_DAY) < 12) {// 上午选择的计算为当天的
                        targetTime = new Date(TimeUtil.convertToTimeTemp(TimeUtil.getGernalTime(
                                System.currentTimeMillis() + 1000 * 60 * 60 * 24 * 1L, "yyyy-MM-dd"), "yyyy-MM-dd")
                                - 1000L);
                    }
                    if (time.getTime() >= targetTime.getTime())
                        goodsList.add(v2);
                }