Pu Zhibing
6 天以前 14fb187e3fba39d0978871ac0e0770058de2aea2
Merge branch 'dev' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile
2个文件已修改
69 ■■■■ 已修改文件
ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/governmentCloud/UploadDataTaskUtil.java 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/util/GovernmentCloudTask.java 50 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/governmentCloud/UploadDataTaskUtil.java
@@ -3,6 +3,7 @@
import com.alibaba.fastjson.JSONObject;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.redis.service.RedisService;
import com.ruoyi.integration.api.model.*;
import com.ruoyi.jianguan.mongodb.service.*;
import com.ruoyi.jianguan.mqtt.config.TopicConstants;
@@ -13,11 +14,13 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.Date;
import java.util.List;
import java.util.Objects;
import java.util.concurrent.*;
/**
@@ -31,15 +34,25 @@
    private UploadRealTimeMonitoringDataService uploadRealTimeMonitoringDataService;
    @Autowired
    private MqttPushUtil mqttPushUtil;
    @Autowired
    private RedisService redisService;
    /**
     * 每天的9点执行的任务
     */
    @Scheduled(cron = "0 0 12 * * ?")
    @Scheduled(fixedRate = 86400000)
    public void taskDay(){
        try {
            // 传输mongodb的硬件数据
            createCustomThreadPool();
            // 判断是否存在标识
            Thread.sleep(1000);
            String flag = redisService.getCacheObject("cloud_integration");
            System.out.println("市政云硬件数据传输标识:" + flag);
            if (Objects.isNull(flag)) {
                log.info("市政云硬件数据传输无标识,开始传输硬件数据");
                redisService.setCacheObject("cloud_integration", "1",24L,TimeUnit.HOURS);
                // 传输mongodb的硬件数据
                createCustomThreadPool();
            }
        }catch (Exception e){
            e.printStackTrace();
        }
ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/util/GovernmentCloudTask.java
@@ -299,6 +299,10 @@
                log.info("用户优惠券"+appCoupons.size());
                // 将id 设置为null
                log.info("策略"+appCoupons.size());
                appCoupons = appCoupons.stream()
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isAfter(startOfDay))
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isBefore(endOfDay))
                        .collect(Collectors.toList());
                // 分批插入数据 每次最多700条
                for (int i = 0; i < appCoupons.size(); i += 700) {
                    appCouponService.saveOrUpdateBatch(appCoupons.subList(i, Math.min(i + 700, appCoupons.size())));
@@ -307,16 +311,23 @@
            List<TAppUser> appUsers = data.getAppUsers();
            if (!appUsers.isEmpty()) {
                log.info("用户"+appUsers.size());
                appUsers = appUsers.stream()
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isAfter(startOfDay))
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isBefore(endOfDay))
                        .collect(Collectors.toList());
                // 分批插入数据 每次最多700条
                for (int i = 0; i < appUsers.size(); i += 700) {
                    appUserService.saveOrUpdateBatch(appUsers.subList(i, Math.min(i + 700, appUsers.size())));
                }
            }
            List<TAppUserAddress> appUserAddresses = data.getAppUserAddresses();
            if (!appUserAddresses.isEmpty()) {
                log.info("用户地址"+appUserAddresses.size());
                appUserAddresses = appUserAddresses.stream()
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isAfter(startOfDay))
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isBefore(endOfDay))
                        .collect(Collectors.toList());
                // 分批插入数据 每次最多700条
                for (int i = 0; i < appUserAddresses.size(); i += 700) {
                    appUserAddressService.saveOrUpdateBatch(appUserAddresses.subList(i, Math.min(i + 700, appUserAddresses.size())));
@@ -325,7 +336,10 @@
            List<TAppUserCar> appUserCars = data.getAppUserCars();
            if (!appUserCars.isEmpty()) {
                log.info("用户车辆"+appUserCars.size());
                appUserCarService.saveOrUpdateBatch(appUserCars);
                appUserCars = appUserCars.stream()
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isAfter(startOfDay))
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isBefore(endOfDay))
                        .collect(Collectors.toList());
                // 分批插入数据 每次最多700条
                for (int i = 0; i < appUserCars.size(); i += 700) {
                    appUserCarService.saveOrUpdateBatch(appUserCars.subList(i, Math.min(i + 700, appUserCars.size())));
@@ -334,7 +348,10 @@
            List<TAppUserIntegralChange> appUserIntegralChanges = data.getAppUserIntegralChanges();
            if (!appUserIntegralChanges.isEmpty()) {
                log.info("用户积分变动"+appUserIntegralChanges.size());
                appUserIntegralChanges = appUserIntegralChanges.stream()
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isAfter(startOfDay))
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isBefore(endOfDay))
                        .collect(Collectors.toList());
                // 分批插入数据 每次最多700条
                for (int i = 0; i < appUserIntegralChanges.size(); i += 700) {
                    appUserIntegralChangeService.saveOrUpdateBatch(appUserIntegralChanges.subList(i, Math.min(i + 700, appUserIntegralChanges.size())));
@@ -343,7 +360,10 @@
            List<TAppUserSign> appUserSigns = data.getAppUserSigns();
            if (!appUserSigns.isEmpty()) {
                log.info("用户签到"+appUserSigns.size());
                appUserSigns = appUserSigns.stream()
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isAfter(startOfDay))
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isBefore(endOfDay))
                        .collect(Collectors.toList());
                // 分批插入数据 每次最多700条
                for (int i = 0; i < appUserSigns.size(); i += 700) {
                    appUserSignService.saveOrUpdateBatch(appUserSigns.subList(i, Math.min(i + 700, appUserSigns.size())));
@@ -353,7 +373,10 @@
            if (!appUserTags.isEmpty()) {
                log.info("用户标签"+appUserTags.size());
                appUserTags = appUserTags.stream()
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isAfter(startOfDay))
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isBefore(endOfDay))
                        .collect(Collectors.toList());
                // 分批插入数据 每次最多700条
                for (int i = 0; i < appUserTags.size(); i += 700) {
                    appUserTagService.saveOrUpdateBatch(appUserTags.subList(i, Math.min(i + 700, appUserTags.size())));
@@ -363,7 +386,10 @@
            if (!appUserVipDetails.isEmpty()) {
                log.info("用户会员明细"+appUserVipDetails.size());
                appUserVipDetails = appUserVipDetails.stream()
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isAfter(startOfDay))
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isBefore(endOfDay))
                        .collect(Collectors.toList());
                // 分批插入数据 每次最多700条
                for (int i = 0; i < appUserVipDetails.size(); i += 700) {
                    appUserVipDetailService.saveOrUpdateBatch(appUserVipDetails.subList(i, Math.min(i + 700, appUserVipDetails.size())));
@@ -372,7 +398,10 @@
            List<TInviteUser> inviteUsers = data.getInviteUsers();
            if (!inviteUsers.isEmpty()) {
                log.info("邀请用户"+inviteUsers.size());
                inviteUsers = inviteUsers.stream()
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isAfter(startOfDay))
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isBefore(endOfDay))
                        .collect(Collectors.toList());
                // 分批插入数据 每次最多700条
                for (int i = 0; i < inviteUsers.size(); i += 700) {
                    inviteUserService.saveOrUpdateBatch(inviteUsers.subList(i, Math.min(i + 700, inviteUsers.size())));
@@ -381,7 +410,10 @@
            List<TInvoiceInformation> invoiceInformations = data.getInvoiceInformations();
            if (!invoiceInformations.isEmpty()) {
                log.info("开票"+invoiceInformations.size());
                invoiceInformations = invoiceInformations.stream()
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isAfter(startOfDay))
                        .filter(accountingStrategy -> accountingStrategy.getCreateTime().isBefore(endOfDay))
                        .collect(Collectors.toList());
                // 分批插入数据 每次最多700条
                for (int i = 0; i < invoiceInformations.size(); i += 700) {
                    tInvoiceInformationService.saveOrUpdateBatch(invoiceInformations.subList(i, Math.min(i + 700, invoiceInformations.size())));