|
@@ -8,14 +8,17 @@ import java.util.concurrent.locks.Lock;
|
|
|
import java.util.concurrent.locks.ReentrantLock;
|
|
|
|
|
|
import com.iamberry.wechat.core.entity.admin.ShopSystemRule;
|
|
|
+import com.iamberry.wechat.core.entity.channel.ChannelRebate;
|
|
|
import com.iamberry.wechat.core.entity.coupon.CouponItem;
|
|
|
import com.iamberry.wechat.core.entity.integral.IntegralConfig;
|
|
|
import com.iamberry.wechat.core.entity.integral.UseIntegral;
|
|
|
import com.iamberry.wechat.core.entity.member.Member;
|
|
|
import com.iamberry.wechat.core.entity.order.NumberBacklogDto;
|
|
|
+import com.iamberry.wechat.core.entity.order.Order;
|
|
|
import com.iamberry.wechat.core.entity.report.Report;
|
|
|
import com.iamberry.wechat.face.admin.SystemService;
|
|
|
import com.iamberry.wechat.face.agentInfo.AgentPurchaseOrderService;
|
|
|
+import com.iamberry.wechat.face.channel.ChannelRebateService;
|
|
|
import com.iamberry.wechat.face.coupon.CouponItemService;
|
|
|
import com.iamberry.wechat.face.integral.UseIntegralService;
|
|
|
import com.iamberry.wechat.face.member.MemberService;
|
|
@@ -85,6 +88,8 @@ public class MQTask implements InitializingBean {
|
|
|
private MemberService memberService;
|
|
|
@Autowired
|
|
|
private ReportService reportService;
|
|
|
+ @Autowired
|
|
|
+ private ChannelRebateService channelRebateService;
|
|
|
|
|
|
private Lock lock = new ReentrantLock();
|
|
|
|
|
@@ -528,5 +533,40 @@ public class MQTask implements InitializingBean {
|
|
|
}
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
+ * 上朵分销返利定时任务
|
|
|
+ * 每天1点
|
|
|
+ */
|
|
|
+ @SuppressWarnings(value = {"unchecked", "rawtypes"})
|
|
|
+// @Scheduled(cron = "0 0/2 * * * ?") //每三分钟执行一次
|
|
|
+ @Scheduled(cron = "0 0 1 * * ?") //每天1点触发
|
|
|
+ public void channelRebate() {
|
|
|
+ logger.info("上朵分销返利任务开始");
|
|
|
+ ChannelRebate channelRebate = new ChannelRebate();
|
|
|
+ channelRebate.setRebackStatus(1);
|
|
|
+ List<ChannelRebate> channelRebateList = channelRebateService.listChannelRebate(channelRebate);
|
|
|
+ Integer num = Integer.valueOf(systemService.selectOneShopRuleById(258).getRuleNum().intValue()); //10
|
|
|
+ logger.info("上朵分销返利订单处理时间为:"+num + "天");
|
|
|
+ for (ChannelRebate cr:channelRebateList) {
|
|
|
+ Order order = adminOrderService.getShopOrderByOrderId(cr.getSalesOrderid());
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ calendar.setTime(order.getSalesCreateDate());
|
|
|
+ calendar.add(Calendar.DATE, num);
|
|
|
+ if(calendar.getTime().getTime() < new Date().getTime()){ //如果订单时间+10天 小于 当前时间,那么表示该返利状态更改为已返利(2)
|
|
|
+ ChannelRebate newCr = new ChannelRebate();
|
|
|
+ newCr.setRebateId(cr.getRebateId());
|
|
|
+ newCr.setRebackStatus(2);
|
|
|
+ Integer flag = channelRebateService.update(newCr);
|
|
|
+ if(flag > 0){
|
|
|
+ logger.info("上朵分销返利成功,订单号为:"+cr.getSalesOrderid()+"--返利id为:"+cr.getRebateId());
|
|
|
+ }else{
|
|
|
+ logger.info("上朵分销返利失败,订单号为:"+cr.getSalesOrderid()+"--返利id为:"+cr.getRebateId());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ logger.info("上朵分销返利任务结束");
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
|
|
|
}
|