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/TaoLiJinJob.java | 222 ++++++++++++++++++++++++++++++++---------------------- 1 files changed, 131 insertions(+), 91 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 c1cbbf7..9e68ca4 100644 --- a/fanli/src/main/java/com/yeshi/fanli/job/TaoLiJinJob.java +++ b/fanli/src/main/java/com/yeshi/fanli/job/TaoLiJinJob.java @@ -4,24 +4,28 @@ import java.util.Collections; import java.util.Date; import java.util.List; +import java.util.Random; 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.TLJFreeBuyGoods; import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; +import com.yeshi.fanli.entity.taobao.TaoBaoUnionConfig; 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.taobao.TLJFreeBuyGoodsService; +import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService; +import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailV2Service; +import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinGiveRecordService; +import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinOriginService; 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; @@ -33,104 +37,55 @@ private UserTaoLiJinReportService userTaoLiJinReportService; @Resource - private ShareHotGoodsService shareHotGoodsService; - - @Resource private TLJBuyGoodsService tljBuyGoodsService; @Resource - private DaTaoKeGoodsDetailService daTaoKeGoodsDetailService; + private DaTaoKeGoodsDetailV2Service daTaoKeGoodsDetailV2Service; + + @Resource + private TaoBaoUnionConfigService taoBaoUnionConfigService; + + @Resource + private UserTaoLiJinGiveRecordService userTaoLiJinGiveRecordService; + + @Resource + private UserTaoLiJinOriginService userTaoLiJinOriginService; + + @Resource + private TLJFreeBuyGoodsService tljFreeBuyGoodsService; + + /** - * 鏇存柊鎶ュ憡 + * 姣忓ぉ鍑屾櫒5鐐硅繃10鍒嗛挓楠岃瘉 */ - @Scheduled(cron = "0 0 1,10 * * ?") - public void insetDynamicInfo() { - - if (!Constant.IS_TASK) { - return; - } - - try { - userTaoLiJinReportService.needUpdateReport(); - } catch (Exception e) { - 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++; - } - } - } - - /** - * 姣忓ぉ鍑屾櫒杩�3鍒嗛挓楠岃瘉 - */ - @Scheduled(cron = "0 3 0 * * ?") + @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++; + List<TaoBaoUnionConfig> configList = taoBaoUnionConfigService + .getConfigByTypeCache(TaoBaoUnionConfig.TYPE_TLJ_BUY); + int totalCount = 0; + for (TaoBaoUnionConfig app : configList) { + List<TLJBuyGoods> list = tljBuyGoodsService.listByDay(app.getAppKey(), day, 15);// 鑾峰彇鏈�澶�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(), + new TaoKeAppInfo(app.getAppKey(), app.getAppSecret(), app.getDefaultPid())); + if (success) { + count++; + } } + totalCount += count; } + LogHelper.test("鑷喘绔嬪噺鍟嗗搧楠岃瘉閫氳繃鐨勬暟閲�:" + totalCount); } - /** - * 姣忓ぉ鏅氫笂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 { @@ -141,17 +96,102 @@ if (goods != null && goods.getCouponAmount() != null && goods.getCouponAmount().compareTo(new BigDecimal(0)) > 0) { + // 娣樼ぜ閲戠殑閲戦浣嶄簬1-10鍧椾箣闂� 蹇呴』鏄ぉ鐚� if (TaoBaoUtil.getAfterUseCouplePrice(goods).multiply(goods.getTkRate()) - .compareTo(new BigDecimal("143")) >= 0) { - goods = daTaoKeGoodsDetailService.filterTaoBaoGoods(goods); + .compareTo(new BigDecimal("143")) >= 0 + && TaoBaoUtil.getAfterUseCouplePrice(goods).multiply(goods.getTkRate()) + .compareTo(new BigDecimal("1430")) <= 0 + && goods.getUserType() == 1) { + goods = daTaoKeGoodsDetailV2Service.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); + new TLJBuyGoods(null, day, new Date(), goods, totalHongBaoCount, leftHongBaoCount)); } } } } + /** + * 姣忓ぉ鍑屾櫒5鐐硅繃1鍒嗗紑濮嬬埇鍙栧墿浣�9涓晢鍝� + */ + @Scheduled(cron = "0 1 5 * * ? ") + public void autoAddTLJBuyGoods2() { + // if (!Constant.IS_TASK) + // return; + LogHelper.test("鑷喘绔嬪噺寮�濮嬮�夊搧"); + String day = TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyy-MM-dd"); + // 閲嶈瘯3娆� + List<TaoBaoGoodsBrief> list = null; + try { + list = tljBuyGoodsService.listPreGoods(1); + } catch (Exception e) { + } + if (list == null || list.size() == 0) + try { + list = tljBuyGoodsService.listPreGoods(1); + } catch (Exception e) { + } + if (list == null || list.size() == 0) + try { + list = tljBuyGoodsService.listPreGoods(1); + } catch (Exception e) { + } + + LogHelper.test("鑷喘绔嬪噺澶囬�夊晢鍝佹暟閲�:" + list.size()); + Collections.shuffle(list); + List<TaoBaoUnionConfig> configList = taoBaoUnionConfigService + .getConfigByTypeCache(TaoBaoUnionConfig.TYPE_TLJ_BUY); + + if (list.size() > 12 * configList.size()) + list = list.subList(0, 12 * configList.size()); + addTLJBuyGoods(list, day); + } + + + /** + * 姣忓ぉ鍑屾櫒23鐐硅繃1鍒嗗紑濮嬬埇鍙� + */ + @Scheduled(cron = "0 1 23 * * ? ") + public void autoAddTLJFreeBuyGoods() { + if (!Constant.IS_TASK) + return; + + String day = TimeUtil.getGernalTime(System.currentTimeMillis() + 1000 * 60 * 60 * 24L, "yyyy-MM-dd"); + LogHelper.test("鍏嶅崟鍟嗗搧寮�濮嬮�夊搧" + day); + + // 鏄惁宸查閫� + List<TLJFreeBuyGoods> listSelect = tljFreeBuyGoodsService.listByDay(day); + if (listSelect != null && listSelect.size() > 0) + return; + + int count = 0; + int maxCount = 15; + for (int page = 1; page <= 10; page ++) { + List<TaoBaoGoodsBrief> list = tljFreeBuyGoodsService.listPreGoods("", page); + if (list == null || list.size() == 0) + break; + + while (list.size() > 0) { + if (count >= maxCount) + break; + + Random random = new Random(); + int n = random.nextInt(list.size()); + TaoBaoGoodsBrief goods = list.get(n); + if (goods.getCouponAmount() != null && goods.getCouponAmount().compareTo(new BigDecimal(0)) > 0) { + BigDecimal couplePrice = TaoBaoUtil.getAfterUseCouplePrice(goods); + if (couplePrice.compareTo(new BigDecimal(1.0)) >= 0 && couplePrice.compareTo(new BigDecimal(2.0)) <= 0) { + tljFreeBuyGoodsService.addGoods(new TLJFreeBuyGoods(day, goods)); + count ++; + } + } + list.remove(n); + } + + if (count >= maxCount) + break; + } + + } } -- Gitblit v1.8.0