Commit a0b1c60a authored by duanruiming's avatar duanruiming

修改HttpRestUtils调用方式通过以openFeign远程调用utcService

parent 1ecddeb2
...@@ -27,11 +27,11 @@ ...@@ -27,11 +27,11 @@
<module>identity-client-starter</module> <module>identity-client-starter</module>
<module>signal-utc-service</module> <module>signal-utc-service</module>
<module>signal-control-service</module> <module>signal-control-service</module>
<module>signal-feign-service</module>
<module>wj-common</module> <module>wj-common</module>
<module>wj-databus</module> <module>wj-databus</module>
<module>wj-identity</module> <module>wj-identity</module>
<module>wj-portal</module> <module>wj-portal</module>
<module>signal-feign-service</module>
</modules> </modules>
<!-- 依赖版本 --> <!-- 依赖版本 -->
...@@ -51,11 +51,17 @@ ...@@ -51,11 +51,17 @@
<pagehelper.boot.version>1.3.1</pagehelper.boot.version> <pagehelper.boot.version>1.3.1</pagehelper.boot.version>
<jersey.version>2.23.2</jersey.version> <jersey.version>2.23.2</jersey.version>
<artemis.version>1.1.7</artemis.version> <artemis.version>1.1.7</artemis.version>
<validator-version>6.0.1.Final</validator-version>
</properties> </properties>
<!-- 依赖声明 --> <!-- 依赖声明 -->
<dependencyManagement> <dependencyManagement>
<dependencies> <dependencies>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>${validator-version}</version>
</dependency>
<dependency> <dependency>
<groupId>org.springframework.cloud</groupId> <groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId> <artifactId>spring-cloud-dependencies</artifactId>
......
...@@ -31,7 +31,7 @@ ...@@ -31,7 +31,7 @@
<dependency> <dependency>
<groupId>net.wanji</groupId> <groupId>net.wanji</groupId>
<artifactId>signal-feign-service</artifactId> <artifactId>signal-feign-service</artifactId>
<version>0.0.1-SNAPSHOT</version> <version>0.0.1-REALSE</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
...@@ -93,7 +93,6 @@ ...@@ -93,7 +93,6 @@
<dependency> <dependency>
<groupId>org.hibernate</groupId> <groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId> <artifactId>hibernate-validator</artifactId>
<version>6.0.1.Final</version>
</dependency> </dependency>
<!-- apache commons--> <!-- apache commons-->
<dependency> <dependency>
......
package net.wanji.web.common.entity;
import net.wanji.web.common.Constants;
import net.wanji.web.common.enums.HttpCode;
import lombok.Data;
import java.io.Serializable;
//没有get set方法会导致feign 接口调用时,无法使用JsonViewObject作为返回值
@Data
public class JsonViewObject implements Serializable {
private Object content;
private String message;
private String status;
private Integer code;
private Long timestamp;
public Object getContent() {
return content;
}
public String getMessage() {
return message;
}
public String getStatus() {
return status;
}
private JsonViewObject() {
}
public static JsonViewObject newInstance() {
return new JsonViewObject();
}
public JsonViewObject success() {
return success((Object) "");
}
public JsonViewObject success(Object content) {
return success(content, "");
}
public JsonViewObject success(String message) {
return success("", message);
}
public JsonViewObject success(Object content, String message) {
return pack(content, message, Constants.JsonView.STATUS_SUCCESS);
}
public JsonViewObject fail() {
return fail("", "");
}
public JsonViewObject fail(Exception e) {
String message = e.getMessage();
int index = message.indexOf(":");
return fail(index == -1 ? message : message.substring(index + 1));
}
public JsonViewObject fail(String errMsg) {
return fail("", errMsg);
}
public JsonViewObject fail(Object content, String message) {
return pack(content, message, Constants.JsonView.STATUS_FAIL);
}
private JsonViewObject pack(Object content, String message, String status) {
this.content = content;
this.message = message;
this.status = status;
//增加服务返回状态码,后期待完善
this.code=(status.equals(Constants.JsonView.STATUS_SUCCESS) ? HttpCode.SUCCESS.value():HttpCode.INTERNAL_SERVER_ERROR.value());
return this;
}
}
\ No newline at end of file
package net.wanji.web.common.entity;
import net.wanji.web.common.enums.StatusCode;
/**
* HTTP响应类
*
* @author Kent HAN
* @date 2022/10/26 15:48
*/
public class Result<T> {
private String status;
private String msg;
private T data;
private Result(T data) {
this.status = StatusCode.SUCCESS.getStatus();
this.msg = StatusCode.SUCCESS.getMsg();
this.data = data;
}
private Result(StatusCode statusCode) {
if (statusCode == null) {
return;
}
this.status = statusCode.getStatus();
this.msg = statusCode.getMsg();
}
private Result(StatusCode statusCode, String msg) {
if (statusCode == null) {
return;
}
this.status = statusCode.getStatus();
this.msg = statusCode.getMsg() + "--" + msg;
}
/**
* 成功时候的调用
*/
public static <T> Result<T> success(T data) {
return new Result<T>(data);
}
/**
* 成功,不需要传入参数
*/
@SuppressWarnings("unchecked")
public static <T> Result<T> success() {
return (Result<T>) success("");
}
/**
* 失败时候的调用
*/
public static <T> Result<T> error(StatusCode statusCode) {
return new Result<T>(statusCode);
}
/**
* 失败时候的调用,扩展消息参数
*/
public static <T> Result<T> error(StatusCode statusCode, String msg) {
return new Result<T>(statusCode, msg);
}
public T getData() {
return data;
}
public String getStatus() {
return status;
}
public String getMsg() {
return msg;
}
}
\ No newline at end of file
package net.wanji.web.common.exception; package net.wanji.web.common.exception;
import net.wanji.web.common.entity.JsonViewObject; import net.wanji.feign.pojo.entity.JsonViewObject;
import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice; import org.springframework.web.bind.annotation.RestControllerAdvice;
......
package net.wanji.web.controller; package net.wanji.web.controller;
import net.wanji.web.common.entity.JsonViewObject; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import net.wanji.feign.pojo.entity.JsonViewObject;
import net.wanji.web.service.SignalEvaluateService; import net.wanji.web.service.SignalEvaluateService;
import net.wanji.web.vo.signalEvaluate.FlowQueueInVO; import net.wanji.web.vo.signalEvaluate.FlowQueueInVO;
import net.wanji.web.vo.signalEvaluate.FlowQueueOutVO; import net.wanji.web.vo.signalEvaluate.FlowQueueOutVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
......
...@@ -2,7 +2,7 @@ package net.wanji.web.controller; ...@@ -2,7 +2,7 @@ package net.wanji.web.controller;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import net.wanji.web.common.entity.JsonViewObject; import net.wanji.feign.pojo.entity.JsonViewObject;
import net.wanji.web.service.SituationDetectionService; import net.wanji.web.service.SituationDetectionService;
import net.wanji.web.vo.situationDetection.*; import net.wanji.web.vo.situationDetection.*;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
......
package net.wanji.web.controller; package net.wanji.web.controller;
import net.wanji.web.common.entity.JsonViewObject;
import net.wanji.web.common.exception.CrossRelationException;
import net.wanji.web.service.SpecialServiceService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse; import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses; import io.swagger.annotations.ApiResponses;
import net.wanji.feign.pojo.entity.JsonViewObject;
import net.wanji.web.common.exception.CrossRelationException;
import net.wanji.web.service.SpecialServiceService;
import net.wanji.web.vo.specialService.*; import net.wanji.web.vo.specialService.*;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
......
...@@ -3,7 +3,7 @@ package net.wanji.web.controller; ...@@ -3,7 +3,7 @@ package net.wanji.web.controller;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import net.wanji.web.common.Result; import net.wanji.feign.pojo.result.Result;
import net.wanji.web.po.AreaTreePO; import net.wanji.web.po.AreaTreePO;
import net.wanji.web.po.CrossInfoPO; import net.wanji.web.po.CrossInfoPO;
import net.wanji.web.po.PageResultPO; import net.wanji.web.po.PageResultPO;
......
...@@ -4,7 +4,7 @@ import io.swagger.annotations.Api; ...@@ -4,7 +4,7 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse; import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses; import io.swagger.annotations.ApiResponses;
import net.wanji.web.common.entity.JsonViewObject; import net.wanji.feign.pojo.entity.JsonViewObject;
import net.wanji.web.common.exception.LightLaneConflictException; import net.wanji.web.common.exception.LightLaneConflictException;
import net.wanji.web.dto.CrossIdDTO; import net.wanji.web.dto.CrossIdDTO;
import net.wanji.web.dto.SaveLaneInfoDTO; import net.wanji.web.dto.SaveLaneInfoDTO;
......
...@@ -3,7 +3,7 @@ package net.wanji.web.controller.scheme; ...@@ -3,7 +3,7 @@ package net.wanji.web.controller.scheme;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse; import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses; import io.swagger.annotations.ApiResponses;
import net.wanji.web.common.entity.JsonViewObject; import net.wanji.feign.pojo.entity.JsonViewObject;
import net.wanji.web.dto.CrossIdDTO; import net.wanji.web.dto.CrossIdDTO;
import net.wanji.web.dto.SaveLightsInfoDTO; import net.wanji.web.dto.SaveLightsInfoDTO;
import net.wanji.web.service.scheme.impl.LightsConfigServiceImpl; import net.wanji.web.service.scheme.impl.LightsConfigServiceImpl;
......
...@@ -4,7 +4,7 @@ import io.swagger.annotations.Api; ...@@ -4,7 +4,7 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse; import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses; import io.swagger.annotations.ApiResponses;
import net.wanji.web.common.entity.JsonViewObject; import net.wanji.feign.pojo.entity.JsonViewObject;
import net.wanji.web.dto.LaneIdDTO; import net.wanji.web.dto.LaneIdDTO;
import net.wanji.web.dto.LightIdDTO; import net.wanji.web.dto.LightIdDTO;
import net.wanji.web.dto.SaveSchemeConfigDTO; import net.wanji.web.dto.SaveSchemeConfigDTO;
......
...@@ -2,9 +2,8 @@ package net.wanji.web.exception; ...@@ -2,9 +2,8 @@ package net.wanji.web.exception;
import lombok.Getter; import lombok.Getter;
import lombok.Setter; import lombok.Setter;
import net.wanji.web.common.BaseInfoInterface; import net.wanji.feign.feignEnum.BaseInfoInterface;
import net.wanji.feign.feignEnum.ResultEnum;
import static net.wanji.web.common.ResultEnum.INTERNAL_SERVER_ERROR;
/** /**
* @author wuxiaokai * @author wuxiaokai
...@@ -25,7 +24,7 @@ public class CrossException extends RuntimeException { ...@@ -25,7 +24,7 @@ public class CrossException extends RuntimeException {
protected String errorMsg; protected String errorMsg;
public CrossException() { public CrossException() {
this(INTERNAL_SERVER_ERROR.getResultCode(), INTERNAL_SERVER_ERROR.getResultMsg()); this(ResultEnum.INTERNAL_SERVER_ERROR.getResultCode(), ResultEnum.INTERNAL_SERVER_ERROR.getResultMsg());
} }
public CrossException(BaseInfoInterface errorInfoInterface) { public CrossException(BaseInfoInterface errorInfoInterface) {
...@@ -41,7 +40,7 @@ public class CrossException extends RuntimeException { ...@@ -41,7 +40,7 @@ public class CrossException extends RuntimeException {
} }
public CrossException(String errorMsg) { public CrossException(String errorMsg) {
this(INTERNAL_SERVER_ERROR.getResultCode(), errorMsg); this(ResultEnum.INTERNAL_SERVER_ERROR.getResultCode(), errorMsg);
} }
public CrossException(Integer errorCode, String errorMsg) { public CrossException(Integer errorCode, String errorMsg) {
......
package net.wanji.web.handler; package net.wanji.web.handler;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import net.wanji.web.common.Result; import net.wanji.feign.feignEnum.ResultEnum;
import net.wanji.feign.pojo.result.Result;
import net.wanji.web.exception.CrossException; import net.wanji.web.exception.CrossException;
import org.springframework.validation.FieldError; import org.springframework.validation.FieldError;
import org.springframework.web.bind.MethodArgumentNotValidException; import org.springframework.web.bind.MethodArgumentNotValidException;
...@@ -10,8 +11,6 @@ import org.springframework.web.bind.annotation.RestControllerAdvice; ...@@ -10,8 +11,6 @@ import org.springframework.web.bind.annotation.RestControllerAdvice;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import static net.wanji.web.common.ResultEnum.INTERNAL_SERVER_ERROR;
/** /**
* @author wuxiaokai * @author wuxiaokai
* @date 2022/11/21 9:06:40 * @date 2022/11/21 9:06:40
...@@ -36,7 +35,7 @@ public class GlobalExceptionHandler { ...@@ -36,7 +35,7 @@ public class GlobalExceptionHandler {
public Result<String> exceptionHandler(HttpServletRequest req, NullPointerException e) { public Result<String> exceptionHandler(HttpServletRequest req, NullPointerException e) {
String errorMessage = e.getCause().getMessage(); String errorMessage = e.getCause().getMessage();
log.error("发生空指针异常!原因是:{}", errorMessage); log.error("发生空指针异常!原因是:{}", errorMessage);
return Result.error(INTERNAL_SERVER_ERROR.getResultCode(), "发生空指针异常!原因是:" + errorMessage); return Result.error(ResultEnum.INTERNAL_SERVER_ERROR.getResultCode(), "发生空指针异常!原因是:" + errorMessage);
} }
/** /**
...@@ -45,12 +44,12 @@ public class GlobalExceptionHandler { ...@@ -45,12 +44,12 @@ public class GlobalExceptionHandler {
@ExceptionHandler(value = MethodArgumentNotValidException.class) @ExceptionHandler(value = MethodArgumentNotValidException.class)
public Result<String> exceptionHandler(HttpServletRequest req, MethodArgumentNotValidException e) { public Result<String> exceptionHandler(HttpServletRequest req, MethodArgumentNotValidException e) {
FieldError fieldError = e.getBindingResult().getFieldError(); FieldError fieldError = e.getBindingResult().getFieldError();
String errorMessage = INTERNAL_SERVER_ERROR.getResultMsg(); String errorMessage = ResultEnum.INTERNAL_SERVER_ERROR.getResultMsg();
if (fieldError != null) { if (fieldError != null) {
errorMessage = fieldError.getDefaultMessage(); errorMessage = fieldError.getDefaultMessage();
} }
log.error("发生参数异常!原因是:{}", errorMessage); log.error("发生参数异常!原因是:{}", errorMessage);
return Result.error(INTERNAL_SERVER_ERROR.getResultCode(), "发生参数异常!原因是:" + errorMessage); return Result.error(ResultEnum.INTERNAL_SERVER_ERROR.getResultCode(), "发生参数异常!原因是:" + errorMessage);
} }
/** /**
...@@ -66,6 +65,6 @@ public class GlobalExceptionHandler { ...@@ -66,6 +65,6 @@ public class GlobalExceptionHandler {
errorMessage = e.getMessage(); errorMessage = e.getMessage();
} }
log.error("未知异常!原因是:{}", errorMessage); log.error("未知异常!原因是:{}", errorMessage);
return Result.error(INTERNAL_SERVER_ERROR.getResultCode(), "未知异常!原因是:" + errorMessage); return Result.error(ResultEnum.INTERNAL_SERVER_ERROR.getResultCode(), "未知异常!原因是:" + errorMessage);
} }
} }
package net.wanji.web.service; package net.wanji.web.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import net.wanji.web.common.Result; import net.wanji.feign.pojo.result.Result;
import net.wanji.web.common.enums.CrossTypeEnum; import net.wanji.web.common.enums.CrossTypeEnum;
import net.wanji.web.entity.TBaseAreaInfo; import net.wanji.web.entity.TBaseAreaInfo;
import net.wanji.web.entity.TBaseCrossInfo; import net.wanji.web.entity.TBaseCrossInfo;
......
...@@ -3,17 +3,16 @@ package net.wanji.web.task; ...@@ -3,17 +3,16 @@ package net.wanji.web.task;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import net.wanji.web.common.entity.JsonViewObject; import net.wanji.feign.pojo.entity.JsonViewObject;
import net.wanji.feign.service.UtcFeignClients;
import net.wanji.web.common.util.StringUtils; import net.wanji.web.common.util.StringUtils;
import net.wanji.web.entity.TBaseCrossInfo; import net.wanji.web.entity.TBaseCrossInfo;
import net.wanji.web.entity.TDeviceStatusInfo; import net.wanji.web.entity.TDeviceStatusInfo;
import net.wanji.web.mapper.TDeviceStatusMapper; import net.wanji.web.mapper.TDeviceStatusMapper;
import net.wanji.web.service.SituationDetectionService; import net.wanji.web.service.SituationDetectionService;
import net.wanji.web.util.HttpRestUtil;
import net.wanji.web.vo.situationDetection.CommonEventAlarmOutVo; import net.wanji.web.vo.situationDetection.CommonEventAlarmOutVo;
import net.wanji.web.websocket.CommonEventWarnWebSocketServer; import net.wanji.web.websocket.CommonEventWarnWebSocketServer;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Scheduled; import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
...@@ -28,8 +27,6 @@ import java.util.Map; ...@@ -28,8 +27,6 @@ import java.util.Map;
import java.util.Objects; import java.util.Objects;
import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentHashMap;
import static net.wanji.web.util.HttpRestUtil.buildHeader;
/** /**
* @author duanruiming * @author duanruiming
* @date 2023/01/06 10:45 * @date 2023/01/06 10:45
...@@ -39,12 +36,7 @@ import static net.wanji.web.util.HttpRestUtil.buildHeader; ...@@ -39,12 +36,7 @@ import static net.wanji.web.util.HttpRestUtil.buildHeader;
public class CommonEventWarnTask { public class CommonEventWarnTask {
@Autowired @Autowired
private HttpRestUtil httpRestUtil; private UtcFeignClients utcFeignClients;
@Value("${utcServiceUrl}")
private String utcServiceUrl;
@Value("${syncDeviceSatusUrn}")
private String syncDeviceSatusUrl;
@Autowired @Autowired
private SituationDetectionService situationDetectionService; private SituationDetectionService situationDetectionService;
...@@ -94,10 +86,9 @@ public class CommonEventWarnTask { ...@@ -94,10 +86,9 @@ public class CommonEventWarnTask {
*/ */
private JsonViewObject getSignalWarnData() { private JsonViewObject getSignalWarnData() {
List<CommonEventAlarmOutVo> results = new ArrayList<>(); List<CommonEventAlarmOutVo> results = new ArrayList<>();
Map<String, String> header = buildHeader(); JsonViewObject jsonViewObject = utcFeignClients.runningStatusAlarm();
JsonViewObject jsonViewObject = httpRestUtil.doPost(utcServiceUrl.concat(syncDeviceSatusUrl), header, "", JsonViewObject.class);
if (Objects.isNull(jsonViewObject) || jsonViewObject.getCode() != 200) { if (Objects.isNull(jsonViewObject) || jsonViewObject.getCode() != 200) {
return jsonViewObject.fail("远程服务调用异常".concat(utcServiceUrl.concat(syncDeviceSatusUrl))); return jsonViewObject.fail("信号机告警UTC服务调用异常!");
} }
LocalDateTime now = LocalDateTime.now(); LocalDateTime now = LocalDateTime.now();
String formatNow = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss").format(now); String formatNow = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss").format(now);
......
package net.wanji.web.task; package net.wanji.web.task;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import net.wanji.feign.pojo.entity.JsonViewObject;
import net.wanji.feign.service.UtcFeignClients; import net.wanji.feign.service.UtcFeignClients;
import net.wanji.web.entity.TDeviceStatusInfo; import net.wanji.web.entity.TDeviceStatusInfo;
import net.wanji.web.mapper.TDeviceStatusMapper; import net.wanji.web.mapper.TDeviceStatusMapper;
import net.wanji.web.util.HttpRestUtil; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Scheduled; import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.List;
import java.util.Map;
import java.util.Objects; import java.util.Objects;
/** /**
...@@ -20,51 +23,40 @@ import java.util.Objects; ...@@ -20,51 +23,40 @@ import java.util.Objects;
@Slf4j @Slf4j
public class SignalStatusTask { public class SignalStatusTask {
@Autowired
private HttpRestUtil httpRestUtil;
@Value("${utcServiceUrl}")
private String utcServiceUrl;
@Value("${syncDeviceSatusUrn}")
private String syncDeviceSatusUrl;
@Autowired @Autowired
private UtcFeignClients utcFeignClients; private UtcFeignClients utcFeignClients;
@Autowired @Autowired
private TDeviceStatusMapper tDeviceStatusMapper; private TDeviceStatusMapper tDeviceStatusMapper;
@Scheduled(fixedRate = 5 * 60 * 1000) @Scheduled(fixedRate = 1 * 60 * 1000)
public void syncSignalStatus() { public void syncSignalStatus() {
net.wanji.feign.entity.JsonViewObject jsonViewObject1 = utcFeignClients.runningStatusAlarm(); try {
System.out.println(jsonViewObject1); JsonViewObject jsonViewObject = utcFeignClients.runningStatusAlarm();
// try { if (Objects.isNull(jsonViewObject) || jsonViewObject.getCode() != 200) {
// // 远程通过UTC服务获取信号机状态 log.error("定时任务同步信号机设备状态utcService调用异常");
// JsonViewObject jsonViewObject = httpRestUtil.doPost(utcServiceUrl.concat(syncDeviceSatusUrl), null, "", JsonViewObject.class); return;
// if (Objects.isNull(jsonViewObject) || jsonViewObject.getCode() != 200) { }
// log.error("定时任务同步信号机设备状态远程utcService调用异常,url:".concat(utcServiceUrl.concat("/signalStatus/runningStatusAlarm"))); List<Map<String, Object>> content = (List<Map<String, Object>>) jsonViewObject.getContent();
// return; Map<String, Object> result = content.get(0);
// } String signalId = (String) result.get("signalId");
// List<Map<String, Object>> content = (List<Map<String, Object>>) jsonViewObject.getContent(); Integer currentSignalStatus = result.get("status") == null ? 0 : (Integer) result.get("status");
// Map<String, Object> result = content.get(0); Integer currentFaultType = result.get("faultType") == null ? 0 : (Integer) result.get("faultType");
// String signalId = (String) result.get("signalId");
// Integer currentSignalStatus = result.get("status") == null ? 0 : (Integer) result.get("status"); // 当前服务数据库状态
// Integer currentFaultType = result.get("faultType") == null ? 0 : (Integer) result.get("faultType"); LambdaQueryWrapper<TDeviceStatusInfo> lambdaQueryWrapper = new LambdaQueryWrapper<>();
// if (StringUtils.isNotEmpty(signalId)) {
// // 当前服务数据库状态 lambdaQueryWrapper.eq(TDeviceStatusInfo::getCode, signalId);
// LambdaQueryWrapper<TDeviceStatusInfo> lambdaQueryWrapper = new LambdaQueryWrapper<>(); TDeviceStatusInfo tDeviceStatusInfo = tDeviceStatusMapper.selectOne(lambdaQueryWrapper);
// if (StringUtils.isNotEmpty(signalId)) { if (isExucuteUpdate(currentSignalStatus, currentFaultType, tDeviceStatusInfo)) {
// lambdaQueryWrapper.eq(TDeviceStatusInfo::getCode, signalId); tDeviceStatusInfo.setStatus(currentSignalStatus);
// TDeviceStatusInfo tDeviceStatusInfo = tDeviceStatusMapper.selectOne(lambdaQueryWrapper); tDeviceStatusInfo.setFaultType(currentFaultType);
// if (isExucuteUpdate(currentSignalStatus, currentFaultType, tDeviceStatusInfo)) { tDeviceStatusMapper.updateById(tDeviceStatusInfo);
// tDeviceStatusInfo.setStatus(currentSignalStatus); }
// tDeviceStatusInfo.setFaultType(currentFaultType); }
// tDeviceStatusMapper.updateById(tDeviceStatusInfo); } catch (Exception e) {
// } log.error("定时任务同步信号机设备状态远程utcService调用异常", e);
// } }
// } catch (Exception e) {
// log.error("定时任务同步信号机设备状态远程utcService调用异常", e);
// }
} }
private static boolean isExucuteUpdate(Integer currentSignalStatus, Integer currentFaultType, TDeviceStatusInfo tDeviceStatusInfo) { private static boolean isExucuteUpdate(Integer currentSignalStatus, Integer currentFaultType, TDeviceStatusInfo tDeviceStatusInfo) {
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
</parent> </parent>
<artifactId>signal-feign-service</artifactId> <artifactId>signal-feign-service</artifactId>
<name>signal-feign-service</name> <name>signal-feign-service</name>
<version>0.0.1-SNAPSHOT</version> <version>0.0.1-REALSE</version>
<dependencies> <dependencies>
<dependency> <dependency>
...@@ -23,5 +23,18 @@ ...@@ -23,5 +23,18 @@
<groupId>org.projectlombok</groupId> <groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId> <artifactId>lombok</artifactId>
</dependency> </dependency>
<!-- Swagger -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
</dependency>
</dependencies> </dependencies>
</project> </project>
package net.wanji.feign.config; package net.wanji.feign.config;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.openfeign.EnableFeignClients; import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
/** /**
* @author duanruiming * @author duanruiming
* @date 2023/01/09 15:23 * @date 2023/01/09 15:23
*/ */
@Configuration @Configuration(value = "FeignClientsConfig")
@EnableFeignClients(basePackages = "net.wanji.feign.service") @EnableFeignClients(basePackages = "net.wanji.feign.service")
public class FeignClientsConfig { public class FeignClientsConfig {
@Value("${utc.service.url}")
private String url;
@Bean
public void testUrl() {
System.err.println("===========feign url:" + url);
}
} }
package net.wanji.web.common; package net.wanji.feign.feignEnum;
/** /**
* @author wuxiaokai * @author wuxiaokai
...@@ -15,4 +15,4 @@ public interface BaseInfoInterface { ...@@ -15,4 +15,4 @@ public interface BaseInfoInterface {
* 错误描述 * 错误描述
*/ */
String getResultMsg(); String getResultMsg();
} }
\ No newline at end of file
package net.wanji.web.common; package net.wanji.feign.feignEnum;
/** /**
* @author wuxiaokai * @author wuxiaokai
......
package net.wanji.web.common; package net.wanji.feign.pojo.result;
import java.io.Serializable; import net.wanji.feign.feignEnum.ResultEnum;
import static net.wanji.web.common.ResultEnum.INTERNAL_SERVER_ERROR; import java.io.Serializable;
import static net.wanji.web.common.ResultEnum.SUCCESS;
/** /**
...@@ -59,14 +58,14 @@ public class Result<T> implements Serializable { ...@@ -59,14 +58,14 @@ public class Result<T> implements Serializable {
} }
public static <T> Result<T> success() { public static <T> Result<T> success() {
return Result.response(SUCCESS.getResultCode(), SUCCESS.getResultMsg(), null); return Result.response(ResultEnum.SUCCESS.getResultCode(), ResultEnum.SUCCESS.getResultMsg(), null);
} }
public static <T> Result<T> success(String message) { public static <T> Result<T> success(String message) {
return Result.response(SUCCESS.getResultCode(), message, null); return Result.response(ResultEnum.SUCCESS.getResultCode(), message, null);
} }
public static <T> Result<T> success(T content) { public static <T> Result<T> success(T content) {
return Result.response(SUCCESS.getResultCode(), SUCCESS.getResultMsg(), content); return Result.response(ResultEnum.SUCCESS.getResultCode(), ResultEnum.SUCCESS.getResultMsg(), content);
} }
public static <T> Result<T> error(Integer state, String message, T content) { public static <T> Result<T> error(Integer state, String message, T content) {
...@@ -78,11 +77,11 @@ public class Result<T> implements Serializable { ...@@ -78,11 +77,11 @@ public class Result<T> implements Serializable {
} }
public static <T> Result<T> error(Integer state) { public static <T> Result<T> error(Integer state) {
return Result.response(state, INTERNAL_SERVER_ERROR.getResultMsg(), null); return Result.response(state, ResultEnum.INTERNAL_SERVER_ERROR.getResultMsg(), null);
} }
public static <T> Result<T> error() { public static <T> Result<T> error() {
return error(INTERNAL_SERVER_ERROR); return error(ResultEnum.INTERNAL_SERVER_ERROR);
} }
public static <T> Result<T> error(ResultEnum resultEnum, String message) { public static <T> Result<T> error(ResultEnum resultEnum, String message) {
...@@ -94,6 +93,6 @@ public class Result<T> implements Serializable { ...@@ -94,6 +93,6 @@ public class Result<T> implements Serializable {
} }
public static <T> Result<T> error(String message) { public static <T> Result<T> error(String message) {
return Result.response(INTERNAL_SERVER_ERROR.getResultCode(), message, null); return Result.response(ResultEnum.INTERNAL_SERVER_ERROR.getResultCode(), message, null);
} }
} }
package net.wanji.web.vo.signalservice; package net.wanji.feign.pojo.vo;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
......
package net.wanji.web.vo.signalservice; package net.wanji.feign.pojo.vo;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
......
package net.wanji.web.vo.signalservice; package net.wanji.feign.pojo.vo;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
......
package net.wanji.web.vo.signalservice; package net.wanji.feign.pojo.vo;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
......
package net.wanji.web.vo.signalservice; package net.wanji.feign.pojo.vo;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
......
package net.wanji.feign.service; package net.wanji.feign.service;
import net.wanji.feign.entity.JsonViewObject; import net.wanji.feign.pojo.entity.JsonViewObject;
import net.wanji.feign.pojo.result.Result;
import net.wanji.feign.pojo.vo.*;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
/** /**
* @author duanruiming * @author duanruiming
* @date 2023/01/09 15:29 * @date 2023/01/09 15:29
*/ */
@FeignClient(name = "UtcFeignClients", url = "${utcServiceUrl}") @FeignClient(name = "UtcFeignClients", url = "${utc.service.url}")
public interface UtcFeignClients { public interface UtcFeignClients {
@PostMapping("/signalStatus/runningStatusAlarm") @PostMapping("/signalStatus/runningStatusAlarm")
JsonViewObject runningStatusAlarm(); JsonViewObject runningStatusAlarm();
@PostMapping("/controlCommand/schemeSend")
Result schemeSend(@RequestBody SchemeSendVO schemeSendVO);
@PostMapping("/controlCommand/planSend")
Result planSend(@RequestBody PlanSendVO planSendVO);
@PostMapping("/controlCommand/scheduleSend")
Result scheduleSend(@RequestBody ScheduleSendVO scheduleSendVO);
@PostMapping("/controlCommand/phaseTimingSend")
Result phaseTimingSend(@RequestBody PhaseTimingSendVO phaseTimingSendVO);
@PostMapping("/controlCommand/allRedControl")
Result allRedControl(@RequestBody ControlCommandVO commandVO);
@PostMapping("/controlCommand/yellowLightControl")
Result yellowLightControl(@RequestBody ControlCommandVO commandVO);
@PostMapping("/controlCommand/closeLightControl")
Result closeLightControl(@RequestBody ControlCommandVO commandVO);
@PostMapping("/controlCommand/stepControl")
Result stepControl(@RequestParam String code, @RequestParam Integer command, @RequestParam int stepNum);
@PostMapping("/controlCommand/recoverSchedule")
Result recoverSchedule(@RequestParam String code);
@PostMapping("/controlCommand/lockControl")
Result lockControl(@RequestBody ControlCommandVO commandVO);
@PostMapping("/controlCommand/phaseDiffSend")
Result phaseDiffSend();
} }
#utc:
# service:
# url: http://10.100.1.59:32000/utc
utc.service.url=http://10.100.1.59:32000/utc
\ No newline at end of file
utcServiceUrl: http://10.100.1.59:32000/utc
#utcServiceUrl: http://127.0.0.1:32000/utc
\ No newline at end of file
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