代码提交
This commit is contained in:
@@ -29,7 +29,7 @@ public class QvvrDataStruct extends Structure {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected List<String> getFieldOrder() { // 返回值填入的顺序
|
||||
return Arrays.asList(new String[]{"sys_res"});
|
||||
protected List<String> getFieldOrder() {
|
||||
return Arrays.asList("sys_num", "line_idx", "line_num", "sys_res");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,12 +37,12 @@
|
||||
<groupId>org.apache.commons</groupId>
|
||||
<artifactId>commons-pool2</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<!-- <dependency>
|
||||
<groupId>com.njcn</groupId>
|
||||
<artifactId>influxdb-springboot-starter</artifactId>
|
||||
<version>1.0.0</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
</dependency>-->
|
||||
|
||||
</dependencies>
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@ import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.fasterxml.jackson.databind.jsontype.impl.LaissezFaireSubTypeValidator;
|
||||
import com.fasterxml.jackson.databind.module.SimpleModule;
|
||||
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
|
||||
import com.njcn.influx.utils.InstantDateDeserializer;
|
||||
import com.njcn.redis.seriallizer.RedisInstantDateDeserializer;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory;
|
||||
@@ -41,7 +41,7 @@ public class RedisConfig {
|
||||
//解决Java 8 date/time type java.time.Instant not supported
|
||||
objectMapper.registerModule(new JavaTimeModule());
|
||||
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
|
||||
objectMapper.registerModule(new SimpleModule().addDeserializer(Instant.class, new InstantDateDeserializer()));
|
||||
objectMapper.registerModule(new SimpleModule().addDeserializer(Instant.class, new RedisInstantDateDeserializer()));
|
||||
|
||||
objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
|
||||
objectMapper.activateDefaultTyping(LaissezFaireSubTypeValidator.instance, ObjectMapper.DefaultTyping.NON_FINAL);
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
package com.njcn.redis.seriallizer;
|
||||
|
||||
import cn.hutool.core.date.DatePattern;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.fasterxml.jackson.core.JsonParser;
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.databind.DeserializationContext;
|
||||
import com.fasterxml.jackson.databind.deser.std.StdDeserializer;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.time.Instant;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
/**
|
||||
* @Author: cdf
|
||||
* @CreateTime: 2025-07-25
|
||||
* @Description:
|
||||
*/
|
||||
@Component
|
||||
public class RedisInstantDateDeserializer extends StdDeserializer<Instant> {
|
||||
|
||||
public RedisInstantDateDeserializer() {
|
||||
this(null);
|
||||
}
|
||||
|
||||
|
||||
protected RedisInstantDateDeserializer(Class<?> vc) {
|
||||
super(vc);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Instant deserialize(JsonParser p, DeserializationContext ctxt) throws IOException, JsonProcessingException {
|
||||
String text = p.getValueAsString();
|
||||
return DateUtil.parse(text, DatePattern.NORM_DATETIME_PATTERN).toInstant().plusMillis(TimeUnit.HOURS.toMillis(8));
|
||||
}
|
||||
}
|
||||
@@ -654,6 +654,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
||||
}
|
||||
|
||||
|
||||
//记录终端相关操作日志
|
||||
List<PqsTerminalLogs> pqsTerminalLogsList = new ArrayList<>();
|
||||
Map<String,DictData> dictDataMap = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_TYPE.getCode()).getData().stream().collect(Collectors.toMap(DictData::getId, Function.identity()));
|
||||
DictData dicDataByCode = dicDataFeignClient.getDicDataByCode(DicDataEnum.DEV_PARAMETER.getCode()).getData();
|
||||
|
||||
@@ -48,7 +48,7 @@ public class IpUtils {
|
||||
public static String getRealIpAddress(ServerHttpRequest request) {
|
||||
HttpHeaders headers = request.getHeaders();
|
||||
String ipAddress = headers.getFirst(HEADER_X_FORWARDED_FOR);
|
||||
log.error("X-Forwarded-For:"+ipAddress);
|
||||
log.info("X-Forwarded-For:"+ipAddress);
|
||||
ipAddress = headers.getFirst("X-Real-IP");
|
||||
log.error("X-Real-IP:"+ipAddress);
|
||||
ipAddress = headers.getFirst("Proxy-Client-IP");
|
||||
|
||||
@@ -94,12 +94,12 @@
|
||||
<artifactId>joda-time</artifactId>
|
||||
<version>2.9.9</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<!-- <dependency>
|
||||
<groupId>com.njcn</groupId>
|
||||
<artifactId>prepare-api</artifactId>
|
||||
<version>1.0.0</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
</dependency>-->
|
||||
<dependency>
|
||||
<groupId>com.njcn</groupId>
|
||||
<artifactId>advance-api</artifactId>
|
||||
|
||||
@@ -4,7 +4,6 @@ import com.github.jeffreyning.mybatisplus.service.IMppService;
|
||||
import com.njcn.harmonic.pojo.po.RActivePowerRangePO;
|
||||
import com.njcn.harmonic.pojo.vo.PowerStatisticsTargetVO;
|
||||
import com.njcn.harmonic.pojo.vo.RActivePowerRangeVO;
|
||||
import com.njcn.prepare.harmonic.pojo.param.RActivePowerRangeParam;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@@ -11,7 +11,6 @@ import com.njcn.harmonic.pojo.vo.PowerStatisticsTargetVO;
|
||||
import com.njcn.harmonic.pojo.vo.RActivePowerRangeVO;
|
||||
import com.njcn.harmonic.service.activepowerrange.RActivePowerRangeService;
|
||||
import com.njcn.influx.pojo.constant.InfluxDBTableConstant;
|
||||
import com.njcn.prepare.harmonic.pojo.param.RActivePowerRangeParam;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -26,6 +26,7 @@ import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -165,7 +166,7 @@ public class TimersServiceImpl extends ServiceImpl<TimersMapper, Timers> impleme
|
||||
int retryCount = 0;
|
||||
while (retryCount < maxRetryCount) {
|
||||
try {
|
||||
System.out.println("重试机制:"+(retryCount+1));
|
||||
System.out.println(LocalDateTime.now()+"手动重试机制:"+(retryCount+1));
|
||||
timerTaskRunner.action(date);
|
||||
System.out.println("成功重试机制:"+(retryCount+1));
|
||||
return; // 任务执行成功,跳出循环
|
||||
|
||||
@@ -14,6 +14,8 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* hutool方式的定时任务执行
|
||||
*
|
||||
@@ -67,10 +69,11 @@ public class HutoolTimerExeServiceImpl implements TimerExeService {
|
||||
int retryCount = 0;
|
||||
while (retryCount < maxRetryCount) {
|
||||
try {
|
||||
System.out.println("重试机制:"+(retryCount+1));
|
||||
System.out.println(LocalDateTime.now()+"自动重试机制:"+(retryCount+1));
|
||||
timerTaskRunner.action(null);
|
||||
return; // 任务执行成功,跳出循环
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
// 处理异常
|
||||
// 增加重试次数
|
||||
retryCount++;
|
||||
|
||||
Reference in New Issue
Block a user