Commit d3fcdf4e authored by hanbing's avatar hanbing

Merge remote-tracking branch 'origin/master'

parents f81f05e0 a8e94323
...@@ -24,7 +24,7 @@ import java.util.stream.Collectors; ...@@ -24,7 +24,7 @@ import java.util.stream.Collectors;
*/ */
@Component @Component
@Slf4j @Slf4j
public class PhaseDirTurnCache implements CommandLineRunner { public class CrossDirTurnPhaseCache implements CommandLineRunner {
private static Map<String, CrossPhaseDTO> phaseMap = new ConcurrentHashMap<>(); private static Map<String, CrossPhaseDTO> phaseMap = new ConcurrentHashMap<>();
...@@ -35,6 +35,7 @@ public class PhaseDirTurnCache implements CommandLineRunner { ...@@ -35,6 +35,7 @@ public class PhaseDirTurnCache implements CommandLineRunner {
/** /**
* 统一获取缓存方法 * 统一获取缓存方法
* key: crossId-dir-turn value:CrossPhaseDTO
* *
* @return * @return
*/ */
...@@ -52,7 +53,7 @@ public class PhaseDirTurnCache implements CommandLineRunner { ...@@ -52,7 +53,7 @@ public class PhaseDirTurnCache implements CommandLineRunner {
* *
* key: crossId-dir-turn value:CrossPhaseDTO * key: crossId-dir-turn value:CrossPhaseDTO
*/ */
private synchronized void init() { private void init() {
try { try {
long start = System.currentTimeMillis(); long start = System.currentTimeMillis();
// 获取已执行的调度详情信息 // 获取已执行的调度详情信息
......
package net.wanji.opt.common.exception; package net.wanji.opt.common.exception;
import net.wanji.common.framework.exceptionhandler.GlobalExceptionHandler;
import net.wanji.common.framework.rest.JsonViewObject; import net.wanji.common.framework.rest.JsonViewObject;
import org.springframework.dao.DuplicateKeyException; import org.springframework.dao.DuplicateKeyException;
import org.springframework.validation.BindingResult; import org.springframework.validation.BindingResult;
...@@ -20,7 +21,7 @@ import java.util.Map; ...@@ -20,7 +21,7 @@ import java.util.Map;
* @date 2023/1/5 13:18 * @date 2023/1/5 13:18
*/ */
@RestControllerAdvice @RestControllerAdvice
public class GlobalExceptionHandler { public class OptExceptionHandler extends GlobalExceptionHandler {
@ExceptionHandler(value = MethodArgumentNotValidException.class) @ExceptionHandler(value = MethodArgumentNotValidException.class)
public JsonViewObject methodArgumentExceptionHandler(MethodArgumentNotValidException e) { public JsonViewObject methodArgumentExceptionHandler(MethodArgumentNotValidException e) {
BindingResult bindingResult = e.getBindingResult(); BindingResult bindingResult = e.getBindingResult();
......
...@@ -10,7 +10,7 @@ import net.wanji.databus.entity.develop.servicedevelop.develop.StatusCodeEnum; ...@@ -10,7 +10,7 @@ import net.wanji.databus.entity.develop.servicedevelop.develop.StatusCodeEnum;
import net.wanji.feign.pojo.vo.SchemeSendVO; import net.wanji.feign.pojo.vo.SchemeSendVO;
import net.wanji.feign.pojo.vo.SignalStatusVO; import net.wanji.feign.pojo.vo.SignalStatusVO;
import net.wanji.feign.service.UtcFeignClients; import net.wanji.feign.service.UtcFeignClients;
import net.wanji.opt.cache.PhaseDirTurnCache; import net.wanji.opt.cache.CrossDirTurnPhaseCache;
import net.wanji.opt.dao.mapper.CrossPhaseMapper; import net.wanji.opt.dao.mapper.CrossPhaseMapper;
import net.wanji.opt.dao.mapper.CrossSchemeMapper; import net.wanji.opt.dao.mapper.CrossSchemeMapper;
import net.wanji.opt.dao.mapper.CrossSchemeOptLogMapper; import net.wanji.opt.dao.mapper.CrossSchemeOptLogMapper;
...@@ -57,7 +57,7 @@ public class CrossOptimizeServiceImpl implements CrossOptimizeService { ...@@ -57,7 +57,7 @@ public class CrossOptimizeServiceImpl implements CrossOptimizeService {
@Resource @Resource
UtcFeignClients utcFeignClients; UtcFeignClients utcFeignClients;
@Resource @Resource
PhaseDirTurnCache phaseDirTurnCache; CrossDirTurnPhaseCache crossDirTurnPhaseCache;
@Value("${crossOptParam.maxVehheadDist}") @Value("${crossOptParam.maxVehheadDist}")
private Double maxVehheadDist; private Double maxVehheadDist;
...@@ -91,7 +91,7 @@ public class CrossOptimizeServiceImpl implements CrossOptimizeService { ...@@ -91,7 +91,7 @@ public class CrossOptimizeServiceImpl implements CrossOptimizeService {
try { try {
// 相位配时信息,key: 路口编号_方向类型_转向类型,value: 相位配时信息 // 相位配时信息,key: 路口编号_方向类型_转向类型,value: 相位配时信息
Map<String, CrossPhaseDTO> phaseMap = phaseDirTurnCache.getPhaseDirTurnMap(); Map<String, CrossPhaseDTO> phaseMap = crossDirTurnPhaseCache.getPhaseDirTurnMap();
setTurnList(abnormalCrossList, phaseMap); setTurnList(abnormalCrossList, phaseMap);
setTurnList(crossDataRealtimePOList, phaseMap); setTurnList(crossDataRealtimePOList, phaseMap);
......
...@@ -5,7 +5,7 @@ import net.wanji.common.framework.rest.JsonViewObject; ...@@ -5,7 +5,7 @@ import net.wanji.common.framework.rest.JsonViewObject;
import net.wanji.databus.entity.develop.servicedevelop.develop.StatusCodeEnum; import net.wanji.databus.entity.develop.servicedevelop.develop.StatusCodeEnum;
import net.wanji.feign.pojo.vo.SchemeSendVO; import net.wanji.feign.pojo.vo.SchemeSendVO;
import net.wanji.feign.service.UtcFeignClients; import net.wanji.feign.service.UtcFeignClients;
import net.wanji.opt.cache.PhaseDirTurnCache; import net.wanji.opt.cache.CrossDirTurnPhaseCache;
import net.wanji.opt.dao.mapper.CrossSchemeOptLogMapper; import net.wanji.opt.dao.mapper.CrossSchemeOptLogMapper;
import net.wanji.opt.dto.CrossPhaseDTO; import net.wanji.opt.dto.CrossPhaseDTO;
import net.wanji.opt.po.base.CrossSchemeOptLogPO; import net.wanji.opt.po.base.CrossSchemeOptLogPO;
...@@ -35,7 +35,7 @@ public class FeignProxyServiceImpl implements FeignProxyService { ...@@ -35,7 +35,7 @@ public class FeignProxyServiceImpl implements FeignProxyService {
@Autowired @Autowired
private CrossSchemeOptLogMapper crossSchemeOptLogMapper; private CrossSchemeOptLogMapper crossSchemeOptLogMapper;
@Autowired @Autowired
private PhaseDirTurnCache phaseDirTurnCache; private CrossDirTurnPhaseCache crossDirTurnPhaseCache;
@Override @Override
public JsonViewObject schemeOptSend(SchemeOptSendVO schemeOptSendVO) throws Exception { public JsonViewObject schemeOptSend(SchemeOptSendVO schemeOptSendVO) throws Exception {
...@@ -57,7 +57,7 @@ public class FeignProxyServiceImpl implements FeignProxyService { ...@@ -57,7 +57,7 @@ public class FeignProxyServiceImpl implements FeignProxyService {
@Override @Override
public JsonViewObject schemeOptRestore(String crossId) throws Exception { public JsonViewObject schemeOptRestore(String crossId) throws Exception {
// 下发原始方案 // 下发原始方案
Map<String, CrossPhaseDTO> phaseMap = phaseDirTurnCache.getPhaseDirTurnMap(); Map<String, CrossPhaseDTO> phaseMap = crossDirTurnPhaseCache.getPhaseDirTurnMap();
SchemeSendVO schemeSendVO = getSchemeSendVO(crossId, phaseMap, Collections.EMPTY_MAP); SchemeSendVO schemeSendVO = getSchemeSendVO(crossId, phaseMap, Collections.EMPTY_MAP);
JsonViewObject jsonViewObject = utcFeignClients.schemeSend(schemeSendVO); JsonViewObject jsonViewObject = utcFeignClients.schemeSend(schemeSendVO);
if (Objects.isNull(jsonViewObject) || jsonViewObject.getCode() != 200) { if (Objects.isNull(jsonViewObject) || jsonViewObject.getCode() != 200) {
...@@ -75,7 +75,7 @@ public class FeignProxyServiceImpl implements FeignProxyService { ...@@ -75,7 +75,7 @@ public class FeignProxyServiceImpl implements FeignProxyService {
*/ */
private List<CrossSchemeOptLogPO> getCrossSchemeOptLogPOList(SchemeOptSendVO schemeOptSendVO) { private List<CrossSchemeOptLogPO> getCrossSchemeOptLogPOList(SchemeOptSendVO schemeOptSendVO) {
List<CrossSchemeOptLogPO> crossSchemeOptLogPOS = new ArrayList<>(); List<CrossSchemeOptLogPO> crossSchemeOptLogPOS = new ArrayList<>();
Map<String, CrossPhaseDTO> phaseDirTurnMap = phaseDirTurnCache.getPhaseDirTurnMap(); Map<String, CrossPhaseDTO> phaseDirTurnMap = crossDirTurnPhaseCache.getPhaseDirTurnMap();
long dataBatchTimeLong = LocalDateTime.now().toEpochSecond(ZoneOffset.of("+8")); long dataBatchTimeLong = LocalDateTime.now().toEpochSecond(ZoneOffset.of("+8"));
Map<String, Integer> phaseOffsetTimeMap = schemeOptSendVO.getPhaseOffsetTimeMap(); Map<String, Integer> phaseOffsetTimeMap = schemeOptSendVO.getPhaseOffsetTimeMap();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment