admin
2024-04-26 5e7b0ed4a154ad067cbcf4aa1a1c7cce32f9864c
fanli/src/main/java/com/yeshi/fanli/service/manger/JobManager.java
@@ -4,9 +4,11 @@
import com.yeshi.fanli.dto.ad.DouYinDeviceActiveQueueDTO;
import com.yeshi.fanli.dto.money.UserMoneyChangeDTO;
import com.yeshi.fanli.dto.mq.UidDateDTO;
import com.yeshi.fanli.dto.mq.order.body.CommonOrderMQMsg;
import com.yeshi.fanli.dto.push.PushContentDetailDTO;
import com.yeshi.fanli.entity.ad.DouYinClickEvent;
import com.yeshi.fanli.entity.bus.user.*;
import com.yeshi.fanli.entity.dy.DYOrder;
import com.yeshi.fanli.entity.jd.JDOrder;
import com.yeshi.fanli.entity.order.CommonOrder;
import com.yeshi.fanli.entity.order.HongBaoOrder;
@@ -29,6 +31,7 @@
import com.yeshi.fanli.service.inter.order.HongBaoOrderService;
import com.yeshi.fanli.service.inter.order.HongBaoV2Service;
import com.yeshi.fanli.service.inter.order.OrderProcessService;
import com.yeshi.fanli.service.inter.order.dy.DYOrderService;
import com.yeshi.fanli.service.inter.order.jd.JDOrderService;
import com.yeshi.fanli.service.inter.order.pdd.PDDOrderService;
import com.yeshi.fanli.service.inter.order.suning.SuningOrderService;
@@ -43,10 +46,7 @@
import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce;
import com.yeshi.fanli.service.manger.money.TeamEincomeManager;
import com.yeshi.fanli.service.manger.order.TeamDividentsManager;
import com.yeshi.fanli.util.CMQManager;
import com.yeshi.fanli.util.RedisKeyEnum;
import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.*;
import com.yeshi.fanli.util.ad.DouYinAdUtil;
import com.yeshi.fanli.util.mq.cmq.DouYinDeviceActiveCMQManager;
import com.yeshi.fanli.util.mq.cmq.HongBaoRecieveCMQManager;
@@ -55,6 +55,8 @@
import com.yeshi.fanli.util.mq.cmq.order.*;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.core.task.TaskExecutor;
import org.springframework.stereotype.Component;
import org.yeshi.utils.NumberUtil;
@@ -67,6 +69,8 @@
@Component
public class JobManager {
    Logger orderMoneyLog = LoggerFactory.getLogger("orderMoneyLog");
    @Resource
    private BoutiqueAutoRuleService boutiqueAutoRuleService;
@@ -135,6 +139,9 @@
    private SuningOrderService suningOrderService;
    @Resource
    private DYOrderService dyOrderService;
    @Resource
    private HWPushService hwPushService;
    private Map<String, Long> latestRunTimeMap = new HashMap<>();
@@ -172,6 +179,7 @@
        doPDDOrderJob();// 拼多多订单处理
        doVipShopOrderJob();// 唯品会订单处理
        doSuningOrderJob();// 苏宁订单处理
        doAllOrderJob();//所有订单处理
        doImportantTaoBaoGoodsUpdateJob();// 淘宝重要商品的信息更新
        doHongBaoRecieveIntegralGetJob();// 返利到账,金币增加
        // doPlaceOrderIntegralJob();// 下单赠送金币任务
@@ -433,8 +441,9 @@
                            String handler = its.next();
                            try {
                                UidDateDTO dto = map.get(handler);
                                orderMoneyLog.info("团队收益结算开始处理:日期-{} Uid-{}", TimeUtil.getGernalTime(dto.getDate().getTime(), "yyyy-MM-dd"), dto.getUid());
                                teamEincomeManager.addTeamRewardTOUserAccount(dto.getDate(), dto.getUid());
                                TeamOrderCMQManager.getInstance().deleteTeamIncomeMsg(handler);
                                orderMoneyLog.info("团队收益结算处理成功:日期-{} Uid-{}", TimeUtil.getGernalTime(dto.getDate().getTime(), "yyyy-MM-dd"), dto.getUid());
                            } catch (Exception e) {
                                try {
                                    LogHelper.errorDetailInfo(e, map.get(handler).toString(), "");
@@ -442,6 +451,8 @@
                                    e1.printStackTrace();
                                }
                            }
                            //无论结算是否成功都删除消息
                            TeamOrderCMQManager.getInstance().deleteTeamIncomeMsg(handler);
                        }
                    }
                } catch (Exception e) {
@@ -578,12 +589,12 @@
                public void run() {
                    super.run();
                    try {
                        Map<String, Long> map = CMQManager.getInstance().consumeNeedUpdateTaoBaoGoodsIdMsg(16);
                        Map<String, String> map = CMQManager.getInstance().consumeNeedUpdateTaoBaoGoodsIdMsg(16);
                        if (map != null) {
                            Iterator<String> its = map.keySet().iterator();
                            while (its.hasNext()) {
                                String key = its.next();
                                taoBaoGoodsUpdateService.updateByTaoKeGoodsDetail(Long.parseLong(key));
                                taoBaoGoodsUpdateService.updateByTaoKeGoodsDetail(map.get(key));
                                CMQManager.getInstance().deleteNeedUpdateTaoBaoGoodsIdMsg(key);
                            }
                        }
@@ -778,6 +789,84 @@
    }
    public void doAllOrderJob() {
        String methodName = getMethodName(Thread.currentThread());
        new JobThreadExecutorServiceImpl().run(new MyRunnable(methodName) {
            @Override
            public void run() {
                super.run();
                try {
                    Map<String, CommonOrderMQMsg> map = OrdersCMQManager.getInstance().consumeOrders(16);
                    if (map != null) {
                        Iterator<String> its = map.keySet().iterator();
                        while (its.hasNext()) {
                            String key = its.next();
                            try {
                                CommonOrderMQMsg orderMQMsg = map.get(key);
                                LogHelper.test("订单消费:" + new Gson().toJson(orderMQMsg));
                                if (orderMQMsg != null) {
                                    String orderId = orderMQMsg.getOrderId();
                                    switch (orderMQMsg.getSourceType()) {
                                        case Constant
                                                .SOURCE_TYPE_JD: {
                                            JDOrder order = jdOrderService.selectDetailByOrderId(Long.parseLong(orderId));
                                            orderProcessService.processJDOrder(order);
                                        }
                                        break;
                                        case Constant
                                                .SOURCE_TYPE_PDD: {
                                            List<PDDOrder> orderList = pddOrderService.selectByOrderSn(orderId);
                                            if (orderList != null)
                                                for (PDDOrder order : orderList)
                                                    orderProcessService.processPDDOrder(order);
                                        }
                                        break;
                                        case Constant
                                                .SOURCE_TYPE_VIP: {
                                            List<VipShopOrder> orderList = vipShopOrderService.listDetailByOrderSn(orderId);
                                            if (orderList != null)
                                                for (VipShopOrder order : orderList)
                                                    orderProcessService.processVipShopOrder(order);
                                        }
                                        break;
                                        case Constant
                                                .SOURCE_TYPE_SUNING: {
                                            List<SuningOrderInfo> orderList = suningOrderService.listByOrderCode(orderId);
                                            if (orderList != null)
                                                for (SuningOrderInfo order : orderList)
                                                    orderProcessService.processSuningOrder(order);
                                        }
                                        break;
                                        case Constant
                                                .SOURCE_TYPE_DY: {
                                            List<DYOrder> orderList = dyOrderService.listByOrderId(orderId);
                                            if (orderList != null)
                                                for (DYOrder order : orderList)
                                                    orderProcessService.processDYOrder(order);
                                        }
                                        break;
                                    }
                                }
                                OrdersCMQManager.getInstance().deleteOrder(key);
                            } catch (Exception e) {
                                LogHelper.errorDetailInfo(e);
                            }
                        }
                    }
                } catch (Exception e) {
                    LogHelper.errorDetailInfo(e);
                }
            }
        });
    }
    /**
     * 重要的淘宝商品信息更新
     */
@@ -789,7 +878,7 @@
                @Override
                public void run() {
                    super.run();
                    Map<String, Long> map = CMQManager.getInstance().consumeTBImpGoodsUpdateMsg(16);
                    Map<String, String> map = CMQManager.getInstance().consumeTBImpGoodsUpdateMsg(16);
                    if (map != null) {
                        Iterator<String> its = map.keySet().iterator();
                        while (its.hasNext()) {