From 573c491b4a1ba60e12a5678a01c1546c0077c1ee Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 30 七月 2019 09:07:42 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- fanli/src/main/java/com/yeshi/fanli/job/TaoLiJinJob.java | 162 +++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 147 insertions(+), 15 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/job/TaoLiJinJob.java b/fanli/src/main/java/com/yeshi/fanli/job/TaoLiJinJob.java index d5c1d61..7ed5d75 100644 --- a/fanli/src/main/java/com/yeshi/fanli/job/TaoLiJinJob.java +++ b/fanli/src/main/java/com/yeshi/fanli/job/TaoLiJinJob.java @@ -1,44 +1,176 @@ package com.yeshi.fanli.job; +import java.math.BigDecimal; +import java.util.Collections; +import java.util.Date; +import java.util.List; + import javax.annotation.Resource; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; +import com.yeshi.fanli.entity.taobao.ShareHotGoods; +import com.yeshi.fanli.entity.taobao.TLJBuyGoods; +import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; +import com.yeshi.fanli.entity.taobao.TaoKeAppInfo; +import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException; import com.yeshi.fanli.log.LogHelper; +import com.yeshi.fanli.service.inter.taobao.ShareHotGoodsService; +import com.yeshi.fanli.service.inter.taobao.TLJBuyGoodsService; +import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailService; import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinReportService; import com.yeshi.fanli.util.Constant; - +import com.yeshi.fanli.util.TaoBaoConstant; +import com.yeshi.fanli.util.TimeUtil; +import com.yeshi.fanli.util.taobao.TaoBaoUtil; +import com.yeshi.fanli.util.taobao.TaoKeApiUtil; @Component public class TaoLiJinJob { - @Resource private UserTaoLiJinReportService userTaoLiJinReportService; - - + + @Resource + private ShareHotGoodsService shareHotGoodsService; + + @Resource + private TLJBuyGoodsService tljBuyGoodsService; + + @Resource + private DaTaoKeGoodsDetailService daTaoKeGoodsDetailService; + /** - * 鏇存柊鎶ュ憡 + * 鏇存柊鎶ュ憡 */ - @Scheduled(cron = "0 0 0,10 * * ?") + @Scheduled(cron = "0 0 1,10 * * ?") public void insetDynamicInfo() { - + if (!Constant.IS_TASK) { return; } - + try { userTaoLiJinReportService.needUpdateReport(); } catch (Exception e) { - try { - LogHelper.errorDetailInfo(e); - } catch (Exception e1) { - e1.printStackTrace(); + LogHelper.errorDetailInfo(e); + } + } + + /** + * 閫�鍥炶秴杩�3澶╂棤棰嗗彇鐨勬窐绀奸噾 + */ + @Scheduled(cron = "0 0 1 * * ?") + public void refundNotWin() { + + if (!Constant.IS_TASK) { + return; + } + + try { + userTaoLiJinReportService.refundNotWin(); + } catch (Exception e) { + LogHelper.errorDetailInfo(e); + } + } + + /** + * 姣忓ぉ鍑屾櫒杩�5鍒嗛挓楠岃瘉 + */ + @Scheduled(cron = "0 2 0 * * ?") + public void updateShareTLJGoods() { + if (!Constant.IS_TASK) + return; + LogHelper.test("楠岃瘉鐖嗘鍟嗗搧搴撳晢鍝�"); + String day = TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyy-MM-dd"); + List<ShareHotGoods> list = shareHotGoodsService.listByDay(day, 15); + int count = 0; + for (int i = 0; i < list.size(); i++) { + if (count >= 10) + break; + boolean success = shareHotGoodsService.verifyCanCreateTLJ(list.get(i).getGoods().getAuctionId(), + new TaoKeAppInfo(TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET, + TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT)); + if (success) { + count++; } } } - - - + + /** + * 姣忓ぉ鍑屾櫒5鐐硅繃10鍒嗛挓楠岃瘉 + */ + @Scheduled(cron = "0 10 5 * * ? ") + public void updateBuyTLJGoods() { + if (!Constant.IS_TASK) + return; + LogHelper.test("楠岃瘉鑷喘绔嬪噺鍟嗗搧"); + String day = TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyy-MM-dd"); + List<TLJBuyGoods> list = tljBuyGoodsService.listByDay(day, 15); + int count = 0; + for (int i = 0; i < list.size(); i++) { + if (count >= 10) + break; + boolean success = tljBuyGoodsService.verifyCanCreateTLJ(list.get(i).getGoods().getAuctionId()); + if (success) { + count++; + } + } + } + + private void addTLJBuyGoods(List<TaoBaoGoodsBrief> list, String day) { + for (TaoBaoGoodsBrief goods : list) { + // 鑾峰彇鍟嗗搧璇︽儏 + 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.getAfterUseCouplePrice(goods).multiply(goods.getTkRate()) + .compareTo(new BigDecimal("143")) >= 0) { + goods = daTaoKeGoodsDetailService.filterTaoBaoGoods(goods); + int totalHongBaoCount = 2000 + (int) (Math.random() * 8000); + int leftHongBaoCount = 200 + (int) (Math.random() * 2000); + tljBuyGoodsService.addTLJBuyGoods( + new TLJBuyGoods(null, day, new Date(), goods, totalHongBaoCount, leftHongBaoCount), + TaoBaoConstant.ownBuyApp); + } + } + } + } + + /** + * 姣忓ぉ鏅氫笂11鐐�50娣诲姞娣樼ぜ閲�1涓晢鍝侊紝鐢ㄤ簬鍏煎Android鍓嶇娌℃湁鍟嗗搧涓嶆樉绀篵anner鐨勯棶棰� + */ + @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() > 0) + 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, 20); + addTLJBuyGoods(list, day); + } + } -- Gitblit v1.8.0