Helius
2021-03-09 8fe37f0f7af3667b60e0f29a1ce8188c08c35bb1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
package com.matrix.system.shopXcx.quartz;
 
import com.matrix.core.tools.LogUtil;
import com.matrix.core.tools.WebUtil;
import com.matrix.system.hive.plugin.util.CollectionUtils;
import com.matrix.system.shopXcx.bean.ShopActivitiesGroupJoin;
import com.matrix.system.shopXcx.bean.ShopActivitiesGroupJoinUser;
import com.matrix.system.shopXcx.bean.ShopOrder;
import com.matrix.system.shopXcx.dao.ShopActivitiesGroupJoinDao;
import com.matrix.system.shopXcx.dao.ShopActivitiesGroupJoinUserDao;
import com.matrix.system.shopXcx.dao.ShopOrderDao;
 
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
 
import java.util.List;
 
/**
 * 拼团支付超时处理任务
 *
 * @author wzy
 */
@Configuration
@EnableScheduling
public class ShopActivityPayTimeOutQuartz {
 
    @Autowired
    private ShopActivitiesGroupJoinUserDao shopActivitiesGroupJoinUserDao;
 
    @Autowired
    private ShopOrderDao shopOrderDao;
 
    @Autowired
    private ShopActivitiesGroupJoinDao shopActivitiesGroupJoinDao;
 
    @Value("${scheduling.enabled}")
    private boolean taskSwitch;
 
 
    @Scheduled(cron = "0 */1 * * * ?")
    public void executeExt() {
        if (taskSwitch) {
            LogUtil.info("#拼团支付超时处理任务#");
            List<ShopActivitiesGroupJoinUser> joinUserList = shopActivitiesGroupJoinUserDao.selectGroupJoinUserEnd();
            if (CollectionUtils.isNotEmpty(joinUserList)) {
                for (ShopActivitiesGroupJoinUser joinUser : joinUserList) {
                    if (joinUser.getIsHead() == ShopActivitiesGroupJoinUser.USER_IS_HEAD_Y) {
                        ShopActivitiesGroupJoin groupJoin = shopActivitiesGroupJoinDao.selectById(joinUser.getGjId());
                        groupJoin.setGjStatus(ShopActivitiesGroupJoin.ACTIVITIES_JOIN_FAIL);
                        shopActivitiesGroupJoinDao.updateByModel(groupJoin);
                    }
 
                    ShopOrder shopOrder = new ShopOrder();
                    joinUser.setIsHasPay(ShopActivitiesGroupJoinUser.IS_HAS_PAY_TIME_OUT);
                    joinUser.setIsHasCancel(ShopActivitiesGroupJoinUser.IS_HAS_CANCEL_Y);
                    shopActivitiesGroupJoinUserDao.updateByModel(joinUser);
 
                    shopOrder.setId(joinUser.getOrderId().intValue());
//                shopOrder.setPayStatus(ShopOrder.ORDER_WX_STATUS_PAY_FAIL);
                    shopOrder.setOrderStatus(ShopOrder.ORDER_STATUS_CANCEL);
                    shopOrderDao.updateByModel(shopOrder);
                }
            }
        }
    }
}