将http的报错抛出,保证正常运行

淮阴-烟草
LAPTOP-S9HJSOEB\昊天 1 year ago
parent 5fcefe85f1
commit 5fa00186ce

@ -26,6 +26,7 @@ import io.swagger.models.auth.In;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.http.client.SimpleClientHttpRequestFactory;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
@ -279,33 +280,38 @@ public class PlcService {
} else { } else {
delayTime = configProperties.getCameraConfig().getC2OutDelayCaptureTime(); delayTime = configProperties.getCameraConfig().getC2OutDelayCaptureTime();
} }
sendHttp( street,plcCmdInfo.getLeftRight1());
//拍照拉平
} else if (code.startsWith("C3")) { } else if (code.startsWith("C3")) {
delayTime = configProperties.getCameraConfig().getC3DelayCaptureTime(); delayTime = configProperties.getCameraConfig().getC3DelayCaptureTime();
} else if (code.startsWith("C4")) { } else if (code.startsWith("C4")) {
//拍照拉平
if (sep == 1) { if (sep == 1) {
delayTime = configProperties.getCameraConfig().getC4DelayCaptureTime(); delayTime = configProperties.getCameraConfig().getC4DelayCaptureTime();
} else { } else {
delayTime = configProperties.getCameraConfig().getC4OutDelayCaptureTime(); delayTime = configProperties.getCameraConfig().getC4OutDelayCaptureTime();
} }
sendHttp( street,plcCmdInfo.getLeftRight2());
} }
path = PathUtil.createFileNameByRowColumn("jpg", cameraId, row, column); // path = PathUtil.createFileNameByRowColumn("jpg", cameraId, row, column);
path = cameraCapture(cameraId, delay, delayTime, path); // path = cameraCapture(cameraId, delay, delayTime, path);
} }
//update order info after capture //update order info after capture
if (path != null && needCapture) { // if (path != null && needCapture) {
captureUpdateOrderAndStock(orderInfo, path); // captureUpdateOrderAndStock(orderInfo, path);
} // }
//转向原点位 // //转向原点位
if (times == 2) { // if (times == 2) {
if (street.getCamera2Id() != null) { // if (street.getCamera2Id() != null) {
gyrateCameraByCodeTimeLater(street.getCamera2Id(), "C5", configProperties.getCameraConfig().getC2OutDelayCaptureTime() + 500); // gyrateCameraByCodeTimeLater(street.getCamera2Id(), "C5", configProperties.getCameraConfig().getC2OutDelayCaptureTime() + 500);
} // }
if (street.getCamera1Id() != null) { // if (street.getCamera1Id() != null) {
gyrateCameraByCodeTimeLater(street.getCamera1Id(), "C5", configProperties.getCameraConfig().getC2OutDelayCaptureTime() + 500); // gyrateCameraByCodeTimeLater(street.getCamera1Id(), "C5", configProperties.getCameraConfig().getC2OutDelayCaptureTime() + 500);
} // }
} // }
} }
public void gyrateCamera(PlcCmdInfo plcCmdInfo, String code) { public void gyrateCamera(PlcCmdInfo plcCmdInfo, String code) {
@ -695,7 +701,7 @@ public class PlcService {
stock = new Stock(); stock = new Stock();
} }
stock.setStreetId(street.getId()); stock.setStreetId(street.getId());
stock.setCheckNum(checkLog.getId().toString());
stock.setLotnum(dataInfo.getLotnum()); stock.setLotnum(dataInfo.getLotnum());
stock.setDirection(dataInfo.getFromDirection()); stock.setDirection(dataInfo.getFromDirection());
stock.setSide(dataInfo.getFromSide()); stock.setSide(dataInfo.getFromSide());
@ -733,9 +739,13 @@ public class PlcService {
checkLog.setPic("http://"+street.getPlcIp()+":9007/pic/"+algorithmPojo.getDeterminePath()); checkLog.setPic("http://"+street.getPlcIp()+":9007/pic/"+algorithmPojo.getDeterminePath());
stock.setCheckPic("http://"+street.getPlcIp()+":9007/pic/"+algorithmPojo.getDeterminePath()); stock.setCheckPic("http://"+street.getPlcIp()+":9007/pic/"+algorithmPojo.getDeterminePath());
}else {
checkLog.setStatus(StockStatus.ERROR.getStatus());
stock.setStatus(StockStatus.ERROR.getStatus());
} }
checkLogMapper.insert(checkLog); checkLogMapper.insert(checkLog);
stock.setCheckNum(checkLog.getId().toString());
stock.setExportTime(LocalDateTime.now()); stock.setExportTime(LocalDateTime.now());
if (stock.getId() == null) { if (stock.getId() == null) {
stockMapper.insert(stock); stockMapper.insert(stock);
@ -804,10 +814,14 @@ public class PlcService {
checkLogMapper.updateById(checkLog); checkLogMapper.updateById(checkLog);
stockMapper.updateById(stock); stockMapper.updateById(stock);
} }
public static AlgorithmPojo sendHttp(Street street,Integer direction , String category ){ public static AlgorithmPojo sendHttp(Street street,Integer direction , String category ){
// 创建RestTemplate实例 // 创建RestTemplate实例
RestTemplate restTemplate = new RestTemplate(); SimpleClientHttpRequestFactory factory = new SimpleClientHttpRequestFactory();
factory.setConnectTimeout(5000); // 5 seconds
factory.setReadTimeout(5000); // 5 seconds
RestTemplate restTemplate = new RestTemplate(factory);
// 定义请求URL // 定义请求URL
String url = "http://"+street.getPlcIp()+":8097/hik/distinguish?streetNumber={streetNumber}&direction={direction}&category={category}"; String url = "http://"+street.getPlcIp()+":8097/hik/distinguish?streetNumber={streetNumber}&direction={direction}&category={category}";
@ -815,7 +829,48 @@ public class PlcService {
// 替换为实际的category // 替换为实际的category
// 发送GET请求并获取响应 // 发送GET请求并获取响应
try {
ResponseEntity<AlgorithmPojo> response = restTemplate.getForEntity(url, AlgorithmPojo.class, street.getPlcId(),direction, category); ResponseEntity<AlgorithmPojo> response = restTemplate.getForEntity(url, AlgorithmPojo.class, street.getPlcId(),direction, category);
// 输出响应结果
if (response.getStatusCode().is2xxSuccessful()) {
System.out.println("Distinguish result: " + response);
return response.getBody();
} else {
System.out.println("Failed to get response. Status code: " + response.getStatusCode());
return null;
}
}catch (Exception e){
log.error("sendHttp error",e);
return null;
}
}
public static void main(String[] args) {
Street street = new Street();
street.setPlcIp("127.0.0.1");
sendHttp(street,1);
}
public static AlgorithmPojo sendHttp(Street street,Integer direction ){
// 创建RestTemplate实例
SimpleClientHttpRequestFactory factory = new SimpleClientHttpRequestFactory();
factory.setConnectTimeout(5000); // 5 seconds
factory.setReadTimeout(5000); // 5 seconds
RestTemplate restTemplate = new RestTemplate(factory);
// 定义请求URL
String url = "http://"+street.getPlcIp()+":8097/hik/calibration?direction={direction}";
// 定义请求参数
// 替换为实际的category
// 发送GET请求并获取响应
try {
// 发送GET请求并获取响应
ResponseEntity<AlgorithmPojo> response = restTemplate.getForEntity(url, AlgorithmPojo.class, direction);
// 输出响应结果 // 输出响应结果
if (response.getStatusCode().is2xxSuccessful()) { if (response.getStatusCode().is2xxSuccessful()) {
@ -827,13 +882,21 @@ public class PlcService {
return null; return null;
} }
}catch (Exception e){
log.error("sendHttp error",e);
return null;
}
} }
public int sendHttp(String streetNumber,PlcCmdInfo plcCmdInfo, KsecDataInfo dataInfo){ public int sendHttp(String streetNumber,PlcCmdInfo plcCmdInfo, KsecDataInfo dataInfo){
Street street = streetService.getStreetByPlcId(streetNumber); Street street = streetService.getStreetByPlcId(streetNumber);
// 创建RestTemplate实例 // 创建RestTemplate实例
RestTemplate restTemplate = new RestTemplate(); SimpleClientHttpRequestFactory factory = new SimpleClientHttpRequestFactory();
factory.setConnectTimeout(5000); // 5 seconds
factory.setReadTimeout(5000); // 5 seconds
RestTemplate restTemplate = new RestTemplate(factory);
// 定义 URL // 定义 URL
String url = "http://"+street.getPlcIp()+":8097/category/getBoxCountByCategory?streetId={streetNumber}&category={category}"; String url = "http://"+street.getPlcIp()+":8097/category/getBoxCountByCategory?streetId={streetNumber}&category={category}";

@ -59,8 +59,8 @@ savePath:
# ------------服务端类型 0TCP(罗伯泰克) 1:KSEC(JSON)(昆船) # ------------服务端类型 0TCP(罗伯泰克) 1:KSEC(JSON)(昆船)
serverMode: 1 serverMode: 1
ksec: ksec:
ip: 192.168.10.211 ip: 127.0.0.1
port: 3000 port: 8001
#断点重连的次数:-1->不断重连 #断点重连的次数:-1->不断重连
# reconnectNum: -1 # reconnectNum: -1
# #断点重连的时间间隔(单位ms) # #断点重连的时间间隔(单位ms)

Loading…
Cancel
Save