From 74ee9c42c1d87f3724a21e92871bc8c95c8364c6 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 03 九月 2019 17:04:03 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div
---
fanli/src/main/java/com/yeshi/fanli/job/IntegralTaskJob.java | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 53 insertions(+), 5 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/job/IntegralTaskJob.java b/fanli/src/main/java/com/yeshi/fanli/job/IntegralTaskJob.java
index c83bc32..26aabc0 100644
--- a/fanli/src/main/java/com/yeshi/fanli/job/IntegralTaskJob.java
+++ b/fanli/src/main/java/com/yeshi/fanli/job/IntegralTaskJob.java
@@ -1,12 +1,22 @@
package com.yeshi.fanli.job;
+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.integral.IntegralTaskClass;
+import com.yeshi.fanli.entity.integral.IntegralTaskClass.UniqueKeyEnum;
+import com.yeshi.fanli.exception.push.PushException;
+import com.yeshi.fanli.entity.integral.IntegralTaskRecord;
+import com.yeshi.fanli.service.inter.integral.IntegralTaskClassService;
+import com.yeshi.fanli.service.inter.integral.IntegralTaskRecordService;
import com.yeshi.fanli.service.inter.push.PushService;
import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.util.TimeUtil;
/**
* 閲戝竵浠诲姟
@@ -20,20 +30,58 @@
@Resource
private PushService pushService;
+ @Resource
+ private IntegralTaskRecordService integralTaskRecordService;
+
+ @Resource
+ private IntegralTaskClassService integralTaskClassService;
+
/**
* 鎺ㄩ�佺鍒版彁閱�(姣忓ぉ15鐐瑰崐鏌ヨ)
*/
- @Scheduled(cron="0 30 15 * * ? ")
+ @Scheduled(cron = "0 30 15 * * ? ")
public void pushSignInNotify() {
if (!Constant.IS_TASK)
return;
// 鑾峰彇鏄ㄥぉ绛惧埌杩囩殑
+ IntegralTaskClass dailySignClass = integralTaskClassService.getByUniqueKey(UniqueKeyEnum.dailySign.name());
+ if (dailySignClass == null)
+ return;
+ Long cid = dailySignClass.getId();
- // 鏌ヨ浠婂ぉ鏄惁宸茬粡绛惧埌
+ long timeStamp = System.currentTimeMillis();
+ Date minTime = new Date(TimeUtil.convertToTimeTemp(
+ TimeUtil.getGernalTime(timeStamp - 1000 * 60 * 60 * 24L, "yyyy-MM-dd"), "yyyy-MM-dd"));
+ Date maxTime = new Date(
+ TimeUtil.convertToTimeTemp(TimeUtil.getGernalTime(timeStamp, "yyyy-MM-dd"), "yyyy-MM-dd"));
- // 濡傛灉鏈鍒帮紝闇�瑕佹帹閫佷俊鎭�
- // pushService.pushUserSignInNotification(uid, title, content, null,
- // null);
+ Date todayMinTime = new Date(
+ TimeUtil.convertToTimeTemp(TimeUtil.getGernalTime(timeStamp, "yyyy-MM-dd"), "yyyy-MM-dd"));
+
+ Date todayMaxTime = new Date(TimeUtil.convertToTimeTemp(
+ TimeUtil.getGernalTime(timeStamp + 1000 * 60 * 60 * 24L, "yyyy-MM-dd"), "yyyy-MM-dd"));
+
+ long count = integralTaskRecordService.countByCidAndUidAndCreateTime(cid, null, minTime, maxTime);
+ int page = (int) (count % 200 == 0 ? count / 200 : count / 200 + 1);
+ for (int p = 0; p < page; p++) {
+ List<IntegralTaskRecord> list = integralTaskRecordService.listByCidAndUidAndCreateTime(cid, null, minTime,
+ maxTime, p + 1, 200);
+ if (list != null) {
+ for (IntegralTaskRecord record : list) {
+ // 鏌ヨ浠婂ぉ鏄惁宸茬粡绛惧埌
+ long todayCount = integralTaskRecordService.countByCidAndUidAndCreateTime(cid, record.getUid(),
+ todayMinTime, todayMaxTime);
+ if (todayCount <= 0) {// 濡傛灉鏈鍒帮紝闇�瑕佹帹閫佷俊鎭�
+ try {
+ pushService.pushUserSignInNotification(record.getUid(), "浠婃棩鏈鍒版彁閱�", "浠婃棩杩樻湭绛惧埌锛岃繛缁鍒伴噾甯佺炕鍊嶅摝", null,
+ null);
+ } catch (PushException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+ }
}
}
--
Gitblit v1.8.0