package com.yeshi.fanli.job;
|
|
import java.util.Calendar;
|
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.bus.user.cloud.UserCloudOrder;
|
import com.yeshi.fanli.entity.dynamic.GoodsEvaluate;
|
import com.yeshi.fanli.entity.dynamic.GoodsEvaluate.EvaluateEnum;
|
import com.yeshi.fanli.log.LogHelper;
|
import com.yeshi.fanli.service.inter.dynamic.GoodsEvaluateService;
|
import com.yeshi.fanli.service.inter.user.cloud.UserCloudOrderService;
|
import com.yeshi.fanli.service.inter.user.cloud.UserCloudService;
|
import com.yeshi.fanli.service.manger.alipay.UserCloudAlipayManager;
|
import com.yeshi.fanli.util.Constant;
|
|
@Component
|
public class UserCloudJob {
|
@Resource
|
private UserCloudService userCloudService;
|
|
@Resource
|
private UserCloudOrderService userCloudOrderService;
|
|
@Resource
|
private UserCloudAlipayManager userCloudAlipayManager;
|
|
@Resource
|
private GoodsEvaluateService goodsEvaluateService;
|
|
/**
|
* 每十分钟检测是否付款
|
*/
|
@Scheduled(cron = "0 0/10 * * * ? ")
|
public void tradeQuery() {
|
if (!Constant.IS_TASK) {
|
return;
|
}
|
|
List<UserCloudOrder> list = userCloudOrderService.getLasthourByUnpaid();
|
if (list == null || list.size() == 0)
|
return;
|
|
for (UserCloudOrder cloudOrder : list) {
|
try {
|
userCloudAlipayManager.tradeQueryByOrderId(cloudOrder.getId());
|
} catch (Exception e) {
|
LogHelper.errorDetailInfo(e);
|
e.printStackTrace();
|
}
|
}
|
}
|
|
/**
|
* 定时检测是否存在新的发圈
|
*/
|
@Scheduled(cron = "0 0/20 * * * ? ")
|
public void fixedTimeSend() {
|
if (!Constant.IS_TASK) {
|
return;
|
}
|
|
// 9-21 执行云发单
|
Calendar nowCalendar = Calendar.getInstance();
|
nowCalendar.setTimeInMillis(java.lang.System.currentTimeMillis());
|
int hour = nowCalendar.get(Calendar.HOUR_OF_DAY);
|
if (hour < 9 || hour > 21)
|
return;
|
|
// 活动列表
|
List<GoodsEvaluate> listActivity = goodsEvaluateService.queryValidSortASC(1, 100, EvaluateEnum.activity, false);
|
// 单品商品
|
List<GoodsEvaluate> listGoods = goodsEvaluateService.queryValidSortASC(1, 5, EvaluateEnum.single, true);
|
// 执行发单
|
userCloudService.fixedTimeSend(listActivity, listGoods, true);
|
}
|
|
|
/**
|
* 每日22点进行深夜发圈
|
*/
|
@Scheduled(cron = "0 0 22 * * ? ")
|
public void zeroPoint() {
|
if (!Constant.IS_TASK) {
|
return;
|
}
|
|
List<GoodsEvaluate> list = goodsEvaluateService.queryValidZeroPoint(1, 50);
|
if (list == null || list.size() == 0) {
|
return;
|
}
|
// 执行发单
|
userCloudService.fixedTimeSend(null, list, false);
|
}
|
|
}
|