From f4a0f2acc63d7785eab108419a4e16f5f688cb95 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期六, 18 一月 2020 12:06:27 +0800 Subject: [PATCH] 用户注册信息 --- fanli/src/main/java/com/yeshi/fanli/job/UpdateDaTaoKeJob.java | 139 +++++++++++++++++++--------------------------- 1 files changed, 58 insertions(+), 81 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/job/UpdateDaTaoKeJob.java b/fanli/src/main/java/com/yeshi/fanli/job/UpdateDaTaoKeJob.java index 71546a4..c487343 100644 --- a/fanli/src/main/java/com/yeshi/fanli/job/UpdateDaTaoKeJob.java +++ b/fanli/src/main/java/com/yeshi/fanli/job/UpdateDaTaoKeJob.java @@ -1,7 +1,7 @@ package com.yeshi.fanli.job; -import java.text.SimpleDateFormat; -import java.util.ArrayList; +import java.math.BigDecimal; +import java.util.Collections; import java.util.Date; import java.util.List; @@ -10,18 +10,17 @@ import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; -import com.yeshi.fanli.entity.bus.lable.BoutiqueAutoRule; -import com.yeshi.fanli.entity.bus.lable.QualityFactory; -import com.yeshi.fanli.entity.common.AdminUser; +import com.yeshi.fanli.entity.taobao.ShareHotGoods; import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; -import com.yeshi.fanli.entity.taobao.dataoke.DaTaoKeDetail; +import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.inter.lable.QualityFactoryService; -import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailService; +import com.yeshi.fanli.service.inter.taobao.ShareHotGoodsService; import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailV2Service; import com.yeshi.fanli.util.Constant; -import com.yeshi.fanli.util.taobao.DaTaoKeUtil; +import com.yeshi.fanli.util.TimeUtil; import com.yeshi.fanli.util.taobao.TaoBaoUtil; +import com.yeshi.fanli.util.taobao.TaoKeApiUtil; /** * 鏇存柊澶ф窐瀹㈡暟鎹� @@ -34,81 +33,14 @@ private QualityFactoryService qualityFactoryService; @Resource - private DaTaoKeGoodsDetailService daTaoKeGoodsService; - - @Resource private DaTaoKeGoodsDetailV2Service daTaoKeGoodsDetailV2Service; - /** - * 闄愭椂绉掓潃 鏁版嵁鏇存柊 - */ - @Scheduled(cron = "0 0 0/2 * * ?") - public void doUpdateJob() { + @Resource + private ShareHotGoodsService shareHotGoodsService; - if (!Constant.IS_TASK) - return; - List<DaTaoKeDetail> listTaoKe = DaTaoKeUtil.getDingDongQiang(); - if (listTaoKe == null || listTaoKe.size() == 0) { - return; - } - - List<Long> listDaoKeId = new ArrayList<Long>(); - for (DaTaoKeDetail daTaoKeDetail : listTaoKe) { - listDaoKeId.add(daTaoKeDetail.getId()); - } - - List<DaTaoKeDetail> listDetail = daTaoKeGoodsService.listByIds(listDaoKeId); - if (listDetail == null || listDetail.size() == 0) { - return; - } - - List<TaoBaoGoodsBrief> listgoods = new ArrayList<TaoBaoGoodsBrief>(); - for (DaTaoKeDetail daTaoKeDetail : listDetail) { - listgoods.add(TaoBaoUtil.convert(daTaoKeDetail)); - } - - String formatDate = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(new Date()); - try { - /* 鎿嶄綔浜猴細 寮�鍙戣处鍙� */ - AdminUser admin = new AdminUser(2L); - BoutiqueAutoRule autoRule = new BoutiqueAutoRule(); - autoRule.setAdminUser(admin); - autoRule.setCalss9k9(false); - autoRule.setFlashSale(true); - autoRule.setStartWeight(1); - autoRule.setEndWeight(3000); - autoRule.setGoodsSource(QualityFactory.SOURCE_TAOBAO_DATAOKE); - qualityFactoryService.autoInsertOrUpadateStorage(autoRule, listgoods, null); - - // 鍒犻櫎涔嬪墠鐨� - qualityFactoryService.deleteNotUpdateGoods(null, formatDate, autoRule.getGoodsSource()); - } catch (Exception e) { - LogHelper.errorDetailInfo(e); - } - } - - // 1涓皬鏃舵洿鏂颁竴娆� - @Scheduled(cron = "0 0 0/1 * * ? ") - public void doSyncJob() { - if (!Constant.IS_TASK) - return; - try { - new Thread(new Runnable() { - - @Override - public void run() { - daTaoKeGoodsService.startSyncGoods(); - } - }).start(); - - } catch (Exception e) { - LogHelper.errorDetailInfo(e); - } - } - - // 姣忓ぉ鏃╀笂鍚屾涓�娆� - @Scheduled(cron = "0 0 6 * * ? ") + // 姣忓ぉ鏃╂櫄鍚屾涓�娆� + @Scheduled(cron = "0 0 6,18 * * ? ") public void doSyncJobNew() { if (!Constant.IS_TASK) return; @@ -135,7 +67,7 @@ @Override public void run() { - daTaoKeGoodsDetailV2Service.updateNewGoods(); + daTaoKeGoodsDetailV2Service.updateNewGoods();// 鑾峰彇鏂颁笂鏋剁殑鍟嗗搧 } }).start(); @@ -162,7 +94,7 @@ } } - // 姣忓ぉ鐨�8鐐癸紝11鐐癸紝19鐐癸紝23鐐规墽琛屼竴娆� + // 鏇存柊鍟嗗搧鏁版嵁 姣忓ぉ鐨�8鐐癸紝11鐐癸紝19鐐癸紝23鐐规墽琛屼竴娆� @Scheduled(cron = "0 0 8,11,19,23 * * ? ") public void doUpdateInfoJobNew() { if (!Constant.IS_TASK) @@ -181,4 +113,49 @@ } } + /** + * 鍒犻櫎杩囨湡鏁版嵁锛堟瘡10鍒嗛挓鍒犻櫎涓�娆★級 + */ + @Scheduled(cron = "0 0/10 * * * ? ") + public void doDeleteOutOfDate() { + if (!Constant.IS_TASK) + return; + daTaoKeGoodsDetailV2Service.deleteOutOfDate(new Date(System.currentTimeMillis() - 1000 * 60 * 60 * 24L)); + } + + // 鑷姩閫夊搧 + @Scheduled(cron = "0 0 23 * * ? ") + public void setShareHotGoods() { + String day = TimeUtil.getGernalTime(System.currentTimeMillis() + 1000 * 60 * 60 * 24L, "yyyy-MM-dd"); + List<TaoBaoGoodsBrief> goodsList = shareHotGoodsService.listPreGoods(1); + Collections.shuffle(goodsList); + int count = 0; + for (TaoBaoGoodsBrief goods : goodsList) { + if (count > 20) + break; + try { + goods = TaoKeApiUtil.searchGoodsDetail(goods.getAuctionId()); + } catch (TaobaoGoodsDownException e) { + e.printStackTrace(); + } + if (goods != null && goods.getCouponAmount() != null + && goods.getCouponAmount().compareTo(new BigDecimal(0)) > 0) { + if (TaoBaoUtil.canAddToTLJBuyGoods(goods)) { + count++; + goods = daTaoKeGoodsDetailV2Service.filterTaoBaoGoods(goods); + shareHotGoodsService.addShareHotGoods(new ShareHotGoods(null, day, new Date(), goods)); + } + } + } + } + + @Scheduled(cron = "0 30 7,11,18,23 * * ? ") + public void syncGoodsBeiYong() { + long latestUpdateCount = daTaoKeGoodsDetailV2Service + .countByMinUpdateTime(new Date(System.currentTimeMillis() - 1000 * 60 * 60 * 24L)); + if (latestUpdateCount < 50000L) {// 鑻ユ瘡澶╂病鏈夎秴杩�5w鏁版嵁鏇存柊灏遍渶瑕侀噸鏂版洿鏂版暟鎹� + daTaoKeGoodsDetailV2Service.startSyncGoods(); + } + } + } -- Gitblit v1.8.0