2023年8月8日09:08:57

main
litao 3 years ago
parent 691f2f77bc
commit ec154190e4
  1. 2
      src/main/java/org/springblade/hospital/agent/service/HikAgentService.java
  2. 10
      src/main/java/org/springblade/hospital/controller/AlarmInformationController.java
  3. 47
      src/main/java/org/springblade/hospital/controller/AppDataController.java
  4. 31
      src/main/java/org/springblade/hospital/controller/CornJobController.java
  5. 108
      src/main/java/org/springblade/hospital/entity/AlarmData.java
  6. 45
      src/main/java/org/springblade/hospital/entity/Alarms.java
  7. 6
      src/main/java/org/springblade/hospital/hik/alarm/AlarmDataParse.java
  8. 3
      src/main/java/org/springblade/hospital/service/ICornJobService.java
  9. 6
      src/main/java/org/springblade/hospital/service/impl/AppDataServiceImpl.java
  10. 59
      src/main/java/org/springblade/hospital/service/impl/CornJobServiceImpl.java
  11. 57
      src/main/java/org/springblade/hospital/utils/CornJobUtil.java
  12. 31
      src/main/java/org/springblade/hospital/utils/ExternalUtils.java
  13. 1
      src/main/resources/application.yml

@ -188,7 +188,7 @@ public class HikAgentService extends AgentGrpc.AgentImplBase {
list.forEach(map -> { list.forEach(map -> {
// Map<String, String> extra = JSON.parseObject(JSON.toJSONString(roadwayVo), new TypeReference<Map<String, String>>() { // Map<String, String> extra = JSON.parseObject(JSON.toJSONString(roadwayVo), new TypeReference<Map<String, String>>() {
// }); // });
// 获取mac标签 // 获取mac标签2
String s = JSON.toJSONString(map.get("tags")).replace("\\", ""); String s = JSON.toJSONString(map.get("tags")).replace("\\", "");
s = s.substring(1, s.length() - 1); s = s.substring(1, s.length() - 1);
Map tagsMap = JSONObject.parseObject(s, Map.class); Map tagsMap = JSONObject.parseObject(s, Map.class);

@ -16,6 +16,7 @@
*/ */
package org.springblade.hospital.controller; package org.springblade.hospital.controller;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
@ -67,9 +68,12 @@ public class AlarmInformationController extends BladeController {
} }
@PostMapping("/hikRemote") @PostMapping("/hikRemote")
public R hikRemote(@RequestParam Map<String, String> params) { public R hikRemote(@RequestBody Map<String, Object> params) {
String data = params.get("data"); System.out.println("-------params:" + params);
Point point = new Gson().fromJson(data, Point.class); // String data = params.get("data");
// System.out.println("-------data:" + data);
Point point = new Gson().fromJson(JSON.toJSONString(params), Point.class);
System.out.println("-------point:" + point);
if (point == null) { if (point == null) {
return R.success("请求参数不能为空"); return R.success("请求参数不能为空");
} }

@ -30,6 +30,7 @@ import org.springblade.core.mp.support.Query;
import org.springblade.core.tenant.annotation.NonDS; import org.springblade.core.tenant.annotation.NonDS;
import org.springblade.core.tool.api.R; import org.springblade.core.tool.api.R;
import org.springblade.hospital.entity.AlarmInformation; import org.springblade.hospital.entity.AlarmInformation;
import org.springblade.hospital.entity.Alarms;
import org.springblade.hospital.entity.AppData; import org.springblade.hospital.entity.AppData;
import org.springblade.hospital.entity.KeyAndSecret; import org.springblade.hospital.entity.KeyAndSecret;
import org.springblade.hospital.hik.alarm.Alarm; import org.springblade.hospital.hik.alarm.Alarm;
@ -52,6 +53,7 @@ import java.io.IOException;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.UUID;
import static org.springblade.core.cache.constant.CacheConstant.SYS_CACHE; import static org.springblade.core.cache.constant.CacheConstant.SYS_CACHE;
@ -83,9 +85,9 @@ public class AppDataController extends BladeController {
/** /**
* 文件上传 * 文件上传
*/ */
@SneakyThrows @CrossOrigin
@PostMapping("/putFile") @PostMapping("/putFile")
public R<List<String>> putFile(AppData appData, HttpServletRequest request) { public R putFile(AppData appData, HttpServletRequest request) {
List<MultipartFile> resultList = new ArrayList<>(); List<MultipartFile> resultList = new ArrayList<>();
CommonsMultipartResolver commonsMultipartResolver = new CommonsMultipartResolver(request.getSession().getServletContext()); CommonsMultipartResolver commonsMultipartResolver = new CommonsMultipartResolver(request.getSession().getServletContext());
@ -105,23 +107,32 @@ public class AppDataController extends BladeController {
/** /**
* 海信上报接口 * 海信上报接口
*/ */
@CrossOrigin
@PostMapping("/escalation") @PostMapping("/escalation")
public void escalation(@RequestBody AlarmInformation alarmInformation) { public R escalation(@RequestBody Alarms alarm) {
try { String response = "";
// 创建RestTemplate实例
// RestTemplate restTemplate = new RestTemplate(); // 请求地址
String url = "https://test48xwjfile.juhaolian.cn/iot-open-device/report/alarm";
// String url = paramService.getValue("url");
// 设置请求Header
String appKey = "BN8ZDpBI";
String appSecret = "5FtRlaVFqvggNUM8/b7u0/MP6zE65V80EPWEK6dDAps=";
// 设置请求Header // String zfcAll = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
String appKey = "BN8ZDpBI"; // char[] zfc = zfcAll.toCharArray();
String appSecret = "5FtRlaVFqvggNUM8/b7u0/MP6zE65V80EPWEK6dDAps="; // String nonce = RandomStringUtils.random(32, zfc);
UUID id = UUID.randomUUID();
String[] idd = id.toString().split("-");
String nonce = idd[0] + idd[1] + idd[2] + idd[3] + idd[4];
String zfcAll = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"; String timestamp = String.valueOf(System.currentTimeMillis());
char[] zfc = zfcAll.toCharArray();
String nonce = RandomStringUtils.random(32, zfc);
String timestamp = String.valueOf(System.currentTimeMillis());
try {
// 基于HMAC-SHA256的base64加密 // 基于HMAC-SHA256的base64加密
String message = "/report/data/device?appKey=" + appKey + "&nonce=" + nonce + "&timestamp=" + timestamp; String message = "/report/data/device?appKey=" + appKey + "&nonce=" + nonce + "&timestamp=" + timestamp;
Mac sha256_HMAC = Mac.getInstance("HmacSHA256"); Mac sha256_HMAC = Mac.getInstance("HmacSHA256");
SecretKeySpec secret_key = new SecretKeySpec(appSecret.getBytes(), "HmacSHA256"); SecretKeySpec secret_key = new SecretKeySpec(appSecret.getBytes(), "HmacSHA256");
sha256_HMAC.init(secret_key); sha256_HMAC.init(secret_key);
@ -134,22 +145,22 @@ public class AppDataController extends BladeController {
headers.set("Haiot-timeStamp", timestamp); headers.set("Haiot-timeStamp", timestamp);
headers.set("Haiot-signature", hash); headers.set("Haiot-signature", hash);
// 请求地址
String url = "http://test48xwjfile.juhaolian.cn/iot-open-device/report/alarm";
// String url = paramService.getValue("url");
System.out.println("url:" + url); System.out.println("url:" + url);
String content = JSON.toJSONString(alarmInformation); String content = JSON.toJSONString(alarm);
HttpEntity<String> httpEntity = new HttpEntity<>(content, headers); HttpEntity<String> httpEntity = new HttpEntity<>(content, headers);
// 发送post请求,并输出结果 // 发送post请求,并输出结果
String response = restTemplate.postForObject(url, httpEntity, String.class); response = restTemplate.postForObject(url, httpEntity, String.class);
System.out.println("fhxx:" + response); System.out.println("fhxx:" + response);
return R.data(response);
// AlarmInformation result = restTemplate.postForObject(url, alarmInformation, AlarmInformation.class); // AlarmInformation result = restTemplate.postForObject(url, alarmInformation, AlarmInformation.class);
// System.out.println(result); // System.out.println(result);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
return R.data(response);
} }
/** /**

@ -29,14 +29,9 @@ import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.Func;
import org.springblade.hospital.entity.CornJob; import org.springblade.hospital.entity.CornJob;
import org.springblade.hospital.service.ICornJobService; import org.springblade.hospital.service.ICornJobService;
import org.springblade.modules.develop.service.ICodeService;
import org.springblade.modules.system.entity.TopMenu;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.Valid; import javax.validation.Valid;
import java.sql.Time;
import java.time.*;
import java.util.Date;
/** /**
* 接口权限控制器 * 接口权限控制器
@ -68,10 +63,7 @@ public class CornJobController extends BladeController {
@ApiOperationSupport(order = 4) @ApiOperationSupport(order = 4)
@ApiOperation(value = "新增", notes = "传入topMenu") @ApiOperation(value = "新增", notes = "传入topMenu")
public R save(@Valid @RequestBody CornJob cornJob) { public R save(@Valid @RequestBody CornJob cornJob) {
if (cornJob.getExecuteTime() != null) { return R.status(cornJobService.add(cornJob));
cornJob.setNextExecuteTime(getNextTime(cornJob.getExecuteTime()));
}
return R.status(cornJobService.save(cornJob));
} }
/** /**
@ -81,10 +73,7 @@ public class CornJobController extends BladeController {
@ApiOperationSupport(order = 5) @ApiOperationSupport(order = 5)
@ApiOperation(value = "修改", notes = "传入topMenu") @ApiOperation(value = "修改", notes = "传入topMenu")
public R update(@Valid @RequestBody CornJob cornJob) { public R update(@Valid @RequestBody CornJob cornJob) {
if (cornJob.getExecuteTime() != null) { return R.status(cornJobService.edit(cornJob));
cornJob.setNextExecuteTime(getNextTime(cornJob.getExecuteTime()));
}
return R.status(cornJobService.updateById(cornJob));
} }
@ -98,20 +87,4 @@ public class CornJobController extends BladeController {
return R.status(cornJobService.deleteLogic(Func.toLongList(ids))); return R.status(cornJobService.deleteLogic(Func.toLongList(ids)));
} }
private Date getNextTime(Time executeTime) {
// 定时任务设定每天执行时间
LocalTime localTime = executeTime.toLocalTime();
LocalDateTime localDateTime = localTime.atDate(LocalDate.now());
// 当前时间
LocalDateTime now = LocalDateTime.now();
if (now.isAfter(localDateTime)) {
localDateTime = localDateTime.plusDays(1);
}
ZonedDateTime zonedDateTime = localDateTime.atZone(ZoneId.systemDefault());
Instant instant = zonedDateTime.toInstant();
Date date = Date.from(instant);
return date;
}
} }

@ -0,0 +1,108 @@
/*
* Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the dreamlu.net developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: Chill 庄骞 (smallchill@163.com)
*/
package org.springblade.hospital.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* 报警信息
*
* @author BladeX
*/
@Data
public class AlarmData implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 事件系统内编号第三方报警 ID
*/
private String alarmId;
/**
* 事件类型 参考数据字典 AlarmType 定义
*/
private Integer alarmType;
/**
* 事件说明
*/
private String alarmMsg;
/**
* 事件状态1:已处理0:未处理 默认填 0
*/
private Integer handleStatus;
/**
* 事件源类型0:设备1:数据分析默认填
* 0
*/
private Integer srcType;
/**
* 事件源上报的三方厂商设备唯一编号
*/
private String srcDeviceId;
/**
* 事件上报平台
*/
private String srcReporter;
/**
* 长整型事件产生时间戳精确到毫秒
*/
private Long startTime;
/**
* 长整型事件结束时间戳精确到毫秒
*/
private Long endTime;
/**
* 浮点型数字事件发生地址纬度
*/
private Double latitude;
/**
* 浮点型数字事件发生地址经度
*/
private Double longitude;
/**
* 事件产生时抓拍的图片地址
*/
private List<String> pictureList;
/**
* 事件产生抓拍的视频地址
*/
private List<String> videoList;
/**
* 事件参数内容取决于告警类型
*/
private Map<String, Object> params;
}

@ -0,0 +1,45 @@
/*
* Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the dreamlu.net developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: Chill 庄骞 (smallchill@163.com)
*/
package org.springblade.hospital.entity;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
import java.util.Map;
/**
* 报警信息
*
* @author BladeX
*/
@Data
public class Alarms implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 所属区域编号
*/
private String regionId;
/**
* 设备唯一编号
*/
private List<AlarmData> alarmList;
}

@ -376,15 +376,15 @@ public class AlarmDataParse {
} }
String url = "http://152.136.119.150:81/alarmInformation/hikRemote"; String url = "http://152.136.119.150:81/alarmInformation/hikRemote";
HttpHeaders headers = new HttpHeaders(); HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED); headers.setContentType(MediaType.parseMediaType("application/json;charset=UTF-8"));
Map<String, Object> map = new HashMap<>(); Map<String, Object> map = new HashMap<>();
map.put("id_", String.valueOf(Integer.sum(strCIDalarm.wDefenceNo, 1))); map.put("id_", String.valueOf(Integer.sum(strCIDalarm.wDefenceNo, 1)));
map.put("type_", 2); map.put("type_", 2);
map.put("dataType_", 1); map.put("dataType_", 1);
map.put("pntType_", 5);
map.put("devType_", 2);
map.put("chann_", 4); map.put("chann_", 4);
map.put("devType_", 2);
map.put("pntType_", 5);
map.put("pntTypeValue_", 6); map.put("pntTypeValue_", 6);
String content = JSON.toJSONString(map); String content = JSON.toJSONString(map);

@ -26,4 +26,7 @@ import org.springblade.hospital.entity.CornJob;
*/ */
public interface ICornJobService extends BaseService<CornJob> { public interface ICornJobService extends BaseService<CornJob> {
boolean add(CornJob cornJob);
boolean edit(CornJob cornJob);
} }

@ -67,7 +67,7 @@ public class AppDataServiceImpl extends BaseServiceImpl<AppDataMapper, AppData>
SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd/"); SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd/");
String uploadUrl = format.format(new Date()); String uploadUrl = format.format(new Date());
try { try {
if (!appData.getType().equals(3)) { if (appData.getType() == 1 || appData.getType() == 2) {
String url = ""; String url = "";
for (MultipartFile file : resultList) { for (MultipartFile file : resultList) {
// 文件上传到指定地址 // 文件上传到指定地址
@ -80,7 +80,9 @@ public class AppDataServiceImpl extends BaseServiceImpl<AppDataMapper, AppData>
url += attach.getId() + ","; url += attach.getId() + ",";
links.add(s); links.add(s);
} }
appData.setUrl(url.substring(0, url.length() - 1)); if (StringUtils.isNotBlank(url)) {
appData.setUrl(url.substring(0, url.length() - 1));
}
} }
// 数据入库 // 数据入库
appData.setEscalationTime(new Date()); appData.setEscalationTime(new Date());

@ -16,6 +16,9 @@
*/ */
package org.springblade.hospital.service.impl; package org.springblade.hospital.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.hospital.entity.BfcfLog; import org.springblade.hospital.entity.BfcfLog;
import org.springblade.hospital.entity.CornJob; import org.springblade.hospital.entity.CornJob;
@ -25,12 +28,66 @@ import org.springblade.hospital.service.IBfcfLogService;
import org.springblade.hospital.service.ICornJobService; import org.springblade.hospital.service.ICornJobService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.sql.Time;
import java.time.*;
import java.util.Date;
/** /**
* 服务实现类 * 服务实现类
*
* @author BladeX * @author BladeX
*/ */
@Service @Service
public class CornJobServiceImpl extends BaseServiceImpl<CornJobMapper, CornJob> implements ICornJobService { public class CornJobServiceImpl extends BaseServiceImpl<CornJobMapper, CornJob> implements ICornJobService {
@Override
public boolean add(CornJob cornJob) {
// 重复校验
check(cornJob.getId(), cornJob.getType(), cornJob.getDeviceId());
if (cornJob.getExecuteTime() != null) {
cornJob.setNextExecuteTime(getNextTime(cornJob.getExecuteTime()));
}
return this.save(cornJob);
}
@Override
public boolean edit(CornJob cornJob) {
// 重复校验
check(cornJob.getId(), cornJob.getType(), cornJob.getDeviceId());
if (cornJob.getExecuteTime() != null) {
cornJob.setNextExecuteTime(getNextTime(cornJob.getExecuteTime()));
}
return this.updateById(cornJob);
}
private Date getNextTime(Time executeTime) {
// 定时任务设定每天执行时间
LocalTime localTime = executeTime.toLocalTime();
LocalDateTime localDateTime = localTime.atDate(LocalDate.now());
// 当前时间
LocalDateTime now = LocalDateTime.now();
if (now.isAfter(localDateTime)) {
localDateTime = localDateTime.plusDays(1);
}
ZonedDateTime zonedDateTime = localDateTime.atZone(ZoneId.systemDefault());
Instant instant = zonedDateTime.toInstant();
Date date = Date.from(instant);
return date;
}
private void check(Long id, int type, String deviceId) {
LambdaQueryWrapper<CornJob> wrapper = Wrappers.lambdaQuery();
wrapper.eq(CornJob::getType, type).eq(CornJob::getDeviceId, deviceId);
if (id != null) {
wrapper.ne(CornJob::getId, id);
}
long count = this.count(wrapper);
if (count > 0) {
throw new ServiceException("数据重复!");
}
}
} }

@ -31,7 +31,7 @@ public class CornJobUtil {
@Scheduled(initialDelay = 5000, fixedRate = 60000) @Scheduled(initialDelay = 5000, fixedRate = 60000)
public void updateStatus() { public void updateStatus() {
System.out.println("定时任务执行了1"); System.out.println("定时任务执行了1");
// externalUtils.updateStatus(); externalUtils.updateStatus();
} }
/** /**
@ -41,32 +41,33 @@ public class CornJobUtil {
@Scheduled(initialDelay = 5000, fixedRate = 180000) @Scheduled(initialDelay = 5000, fixedRate = 180000)
public void task() { public void task() {
System.out.println("定时任务执行了2"); System.out.println("定时任务执行了2");
// List<CornJob> jobs = cornJobService.list(Wrappers.<CornJob>lambdaQuery().eq(CornJob::getStatus, 1)); List<CornJob> jobs = cornJobService.list(Wrappers.<CornJob>lambdaQuery().eq(CornJob::getStatus, 1));
// if (CollectionUtils.isNotEmpty(jobs)) { if (CollectionUtils.isNotEmpty(jobs)) {
// List<CornJob> jobList = new ArrayList<>(); List<CornJob> jobList = new ArrayList<>();
// for (CornJob job : jobs) { for (CornJob job : jobs) {
// Date nextExecuteTime = job.getNextExecuteTime(); Date nextExecuteTime = job.getNextExecuteTime();
// if (new Date().compareTo(nextExecuteTime) < 0) { if (new Date().compareTo(nextExecuteTime) < 0) {
// continue; continue;
// } }
// // 布防 System.out.println("-----------------====================");
// if (job.getType() == 1) { // 布防
// Alarm.fqbf(Integer.parseInt(job.getDeviceId()) - 1); if (job.getType() == 1) {
// } Alarm.fqbf(Integer.parseInt(job.getDeviceId()) - 1);
// // 撤防 }
// else if (job.getType() == 2) { // 撤防
// Alarm.fqcf(Integer.parseInt(job.getDeviceId()) - 1); else if (job.getType() == 2) {
// } Alarm.fqcf(Integer.parseInt(job.getDeviceId()) - 1);
// }
// // 修改下次执行之间
// Calendar calendar = new GregorianCalendar(); // 修改下次执行之间
// calendar.setTime(nextExecuteTime); Calendar calendar = new GregorianCalendar();
// // 把日期往后增加一天,整数 往后推,负数往前移动 calendar.setTime(nextExecuteTime);
// calendar.add(Calendar.DATE, 1); // 把日期往后增加一天,整数 往后推,负数往前移动
// job.setNextExecuteTime(calendar.getTime()); calendar.add(Calendar.DATE, 1);
// jobList.add(job); job.setNextExecuteTime(calendar.getTime());
// } jobList.add(job);
// cornJobService.updateBatchById(jobList); }
// } cornJobService.updateBatchById(jobList);
}
} }
} }

@ -161,13 +161,14 @@ public class ExternalUtils {
} }
if (fqStatus == state) { if (fqStatus == state) {
updateById(id, byBypassStatus); // updateById(id, byBypassStatus);
test(id, byBypassStatus);
continue; continue;
} }
// 海信iot // 海信iot
updateById(id, byBypassStatus); // updateById(id, byBypassStatus);
test(id, byBypassStatus);
// 物联网平台 // 物联网平台
bizDevice(Integer.parseInt(String.valueOf(map.get("id"))), fqStatus); bizDevice(Integer.parseInt(String.valueOf(map.get("id"))), fqStatus);
} }
@ -234,4 +235,28 @@ public class ExternalUtils {
ResponseEntity<String> exchange = restTemplate.exchange(url, HttpMethod.PUT, httpEntity, String.class); ResponseEntity<String> exchange = restTemplate.exchange(url, HttpMethod.PUT, httpEntity, String.class);
return JSONObject.parseObject(exchange.getBody(), Map.class); return JSONObject.parseObject(exchange.getBody(), Map.class);
} }
/**
* 和iot联调测试专用接口
* @param id
* @param byBypassStatus
*/
public void test(String id, byte byBypassStatus) {
String url = "http://152.136.119.150:81/alarmInformation/hikRemote";
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.parseMediaType("application/json;charset=UTF-8"));
Map<String, Object> map = new HashMap<>();
map.put("id_", id);
map.put("devType_", 2);
map.put("pntType_", 8);
map.put("pntTypeValue_", byBypassStatus);
String content = JSON.toJSONString(map);
HttpEntity<String> httpEntity = new HttpEntity<>(content, headers);
// 发送post请求,并输出结果
R r = restTemplate.postForObject(url, httpEntity, R.class);
System.out.println("调用远程服务器接口成功!!:" + r);
}
} }

@ -225,6 +225,7 @@ blade:
skip-url: skip-url:
- /blade-test/** - /blade-test/**
- /** - /**
- /api/appData/putFile
#授权认证配置 #授权认证配置
auth: auth:
- method: ALL - method: ALL

Loading…
Cancel
Save