Browse Source

推流接口

pull/6/head
李克 1 month ago
parent
commit
b626ee65f3
  1. 29
      dk-modules/business/src/main/java/org/dromara/business/controller/BusinessAlertController.java
  2. 15
      dk-modules/sample/src/main/java/org/dromara/sample/manage/mapper/ITaskJobMapper.java
  3. 212
      dk-modules/sample/src/main/java/org/dromara/sample/manage/model/dto/BusinessAlertVo.java
  4. 30
      dk-modules/sample/src/main/java/org/dromara/sample/manage/model/dto/EngineType.java
  5. 30
      dk-modules/sample/src/main/java/org/dromara/sample/manage/model/dto/EngineTypeResponse.java
  6. 33
      dk-modules/sample/src/main/java/org/dromara/sample/manage/model/entity/TaskJobEntity.java
  7. 15
      dk-modules/sample/src/main/java/org/dromara/sample/manage/service/ITaskJobService.java
  8. 165
      dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/SampleEngineRecordServiceImpl.java
  9. 44
      dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/TaskJobServiceImpl.java

29
dk-modules/business/src/main/java/org/dromara/business/controller/BusinessAlertController.java

@ -187,4 +187,33 @@ public class BusinessAlertController extends BaseController {
@Operation(summary ="ai实时流预警保存-用于演示",description = "ai实时流预警保存-用于演示")
@PostMapping("/saveAlert")
public R selectAlert(@RequestBody BusinessAlertVo vo) {
vo.setBusinessType(2);
BusinessAlert businessAlert = businessAlertService.addBusinessAlert(vo);
RemoteStartProcess startProcess = new RemoteStartProcess();
startProcess.setBusinessId(String.valueOf(businessAlert.getId()));
startProcess.setFlowCode("alertChz");
remoteWorkflowService.startWorkFlowBatch(List.of(startProcess));
RemoteNoticeBo remoteNoticeBo = new RemoteNoticeBo();
remoteNoticeBo.setNoticeTitle(vo.getDeptName()+"产生预警,预警类型["+vo.getLabelCn()+"],请立即查看");
remoteNoticeBo.setNoticeType("3");
remoteNoticeBo.setNoticeContent(vo.getDeptName()+"产生预警,预警类型["+vo.getLabelCn()+"],请立即查看");
remoteNoticeBo.setStatus("0");
remoteNoticeBo.setIsRead(0);
remoteNoticeBo.setCreateBy(1L);
remoteNoticeBo.setCreateDept(1L);
remoteNoticeBo.setCreateTime(businessAlert.getCreateTime());
if (businessAlert.getBusinessType() == 2){
businessAlert.setImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_DKCY, vo.getImages(), 3600).toString());
}
remoteNoticeBo.setDeviceSn(vo.getDeviceSn());
businessAlert.setDeviceSn(vo.getDeviceSn());
remoteNoticeBo.setParam(JSON.toJSONString(businessAlert));
remoteNoticeService.saveNotice(remoteNoticeBo);
remoteSubmailConfigService.remoteCmdSend("smsMultixsend", JSON.toJSONString(vo));
return R.ok();
}
} }

15
dk-modules/sample/src/main/java/org/dromara/sample/manage/mapper/ITaskJobMapper.java

@ -0,0 +1,15 @@
package org.dromara.sample.manage.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.dromara.sample.manage.model.entity.PlayTextEntity;
import org.dromara.sample.manage.model.entity.TaskJobEntity;
/**
*
* @author sean.zhou
* @date 2021/11/10
* @version 0.1
*/
public interface ITaskJobMapper extends BaseMapper<TaskJobEntity> {
}

212
dk-modules/sample/src/main/java/org/dromara/sample/manage/model/dto/BusinessAlertVo.java

@ -0,0 +1,212 @@
package org.dromara.sample.manage.model.dto;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 预警任务视图对象 wayline_alert
*
* @author LionLi
* @date 2025-02-27
*/
@Data
@ExcelIgnoreUnannotated
public class BusinessAlertVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
private Long id;
/**
* job任务id
*/
private String jobId;
/**
* 预警名称
*/
private String jobName;
/**
* 图片id 对应的media_file 的fileId
*/
private String taskImageId;
/**
* 处理原因
*/
private String reason;
/**
* 是否指派
*/
private Boolean assign;
/**
* 图片文件
*/
private String images;
/**
* 纬度
*/
private String lat;
/**
* 精度
*/
private String lng;
/**
* 标签名-
*/
private String labelCn;
/**
* 标签名-
*/
private String labelEn;
/**
* 任务内容
*/
private String taskContent;
/**
* 删除 0 正常 1已删除
*/
private Integer delFlag;
/**
* 模板图片
*/
private String mateSourceImgUrl;
/**
* 放大模板违建区域图片
*/
private String maxMateSourceImgUrl;
/**
* 预警类型
*/
private String alertType;
/**
* 放大违建区域图片
*/
private String maxImages;
/**
* 面积
*/
private Long area;
/**
* 面积
*/
private Long areaL;
/**
* 面积
*/
private Long areaW;
/**
* 流程处置状态(verify:验证,cancel:已撤销,draft:草稿,waiting:待审核,finish:已完成,invalid:已作废,back:已退回,termination:已终止)
*/
private String handleType;
/**
* 指派人员
*/
private String assignUserId;
/**
* 指派时间
*/
private Date assignDate;
/**
* 完成时间
*/
private Date completeDate;
/**
* 是否违建 01
*/
private Boolean isIllegal;
/**
* 部门id
*/
private String deptId;
/**
* 部门名称
*/
private String deptName;
/**
* 处理时间
*/
private Date handleTime;
/**
* 其他内容
*/
private String taskHandle;
/**
* 像素坐标
*/
private String pixelCoordinate;
/**
* 当前位置预警数量
*/
private Integer handleNum;
/**
* 地类信息数据
*/
private String landCategories;
/**
* 忽略原因
*/
private String ignoringCause;
private Integer value;
/**
* 来源0平台 1小程序
*/
private Integer handleSource;
/**
* 指派人员名称
*/
private String assignUserName;
private Date createTime;
//1:图片比对预警 2:AI实时预警
private Integer businessType;
private String deviceSn;
/**
* 案件号
*/
private String caseNumber;
}

30
dk-modules/sample/src/main/java/org/dromara/sample/manage/model/dto/EngineType.java

@ -0,0 +1,30 @@
package org.dromara.sample.manage.model.dto;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* The entity class of the device
*
* @author sean.zhou
* @version 0.1
* @date 2021/11/10
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class EngineType implements Serializable {
private String scene;
private int id;
}

30
dk-modules/sample/src/main/java/org/dromara/sample/manage/model/dto/EngineTypeResponse.java

@ -0,0 +1,30 @@
package org.dromara.sample.manage.model.dto;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* The entity class of the device
*
* @author sean.zhou
* @version 0.1
* @date 2021/11/10
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class EngineTypeResponse implements Serializable {
private Long code;
private String message;
private EngineType data;
}

33
dk-modules/sample/src/main/java/org/dromara/sample/manage/model/entity/TaskJobEntity.java

@ -0,0 +1,33 @@
package org.dromara.sample.manage.model.entity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
* The entity class of the device
*
* @author sean.zhou
* @version 0.1
* @date 2021/11/10
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName(value = "task_job")
public class TaskJobEntity implements Serializable {
@TableId(type = IdType.AUTO)
private Integer id;
private String taskId;
private String jobId;
}

15
dk-modules/sample/src/main/java/org/dromara/sample/manage/service/ITaskJobService.java

@ -0,0 +1,15 @@
package org.dromara.sample.manage.service;
import org.dromara.common.sdk.common.HttpResultResponse;
import org.dromara.common.sdk.common.PaginationData;
import org.dromara.sample.manage.model.entity.PlayTextEntity;
import java.util.Map;
/**
* @author sean.zhou
* @date 2021/11/10
* @version 0.1
*/
public interface ITaskJobService {
}

165
dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/SampleEngineRecordServiceImpl.java

@ -1,10 +1,12 @@
package org.dromara.sample.manage.service.impl; package org.dromara.sample.manage.service.impl;
import cn.hutool.core.map.MapUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
import io.seata.common.util.StringUtils; import io.seata.common.util.StringUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.config.annotation.DubboReference;
import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost; import org.apache.http.client.methods.HttpPost;
@ -15,11 +17,13 @@ import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils; import org.apache.http.util.EntityUtils;
import org.dromara.sample.common.util.Md5Utils; import org.dromara.sample.common.util.Md5Utils;
import org.dromara.sample.manage.mapper.ISampleEngineRecordMapper; import org.dromara.sample.manage.mapper.ISampleEngineRecordMapper;
import org.dromara.sample.manage.model.dto.EngineResponse; import org.dromara.sample.manage.mapper.ITaskJobMapper;
import org.dromara.sample.manage.model.dto.ExtraType; import org.dromara.sample.manage.model.dto.*;
import org.dromara.sample.manage.model.dto.ExtraTypeResponse;
import org.dromara.sample.manage.model.entity.EngineRecordEntity; import org.dromara.sample.manage.model.entity.EngineRecordEntity;
import org.dromara.sample.manage.model.entity.TaskJobEntity;
import org.dromara.sample.manage.service.ISampleEngineRecordService; import org.dromara.sample.manage.service.ISampleEngineRecordService;
import org.dromara.system.api.RemoteConfigService;
import org.json.JSONArray;
import org.json.JSONObject; import org.json.JSONObject;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
@ -27,10 +31,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.net.URI; import java.net.URI;
import java.net.URISyntaxException; import java.net.URISyntaxException;
import java.util.ArrayList; import java.util.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import static org.apache.commons.compress.utils.ArchiveUtils.sanitize; import static org.apache.commons.compress.utils.ArchiveUtils.sanitize;
@ -41,17 +42,22 @@ public class SampleEngineRecordServiceImpl implements ISampleEngineRecordService
@Resource @Resource
ISampleEngineRecordMapper mapper; ISampleEngineRecordMapper mapper;
@Resource
ITaskJobMapper taskJobMapper;
@DubboReference
private RemoteConfigService remoteConfigService;
@Override @Override
public Map<String, Object> startEngine(Map<String, Object> objectMap){ public Map<String, Object> startEngine(Map<String, Object> objectMap){
EngineRecordEntity record = new EngineRecordEntity(); EngineRecordEntity record = new EngineRecordEntity();
String ip = remoteConfigService.selectStreamIp();
//获取token //获取token
//设置请求Header和Body(如JSON) //设置请求Header和Body(如JSON)
String md5 = Md5Utils.hash("xuzhou_ai"); String md5 = Md5Utils.hash("xuzhou_ai");
JSONObject jsonObj = new JSONObject(); JSONObject jsonObj = new JSONObject();
jsonObj.put("username", sanitize("xuzhou_ai")); // sanitize函数见下文 jsonObj.put("username", sanitize("xuzhou_ai")); // sanitize函数见下文
jsonObj.put("password", sanitize(md5)); jsonObj.put("password", sanitize(md5));
String responseBody = PostRequest(jsonObj, "http://60.204.247.65:8100/Third/Login"); String responseBody = PostRequest(jsonObj, "http://60.204.247.65:8100/Third/Login","");
JSONObject jsonObject = new JSONObject(responseBody); JSONObject jsonObject = new JSONObject(responseBody);
// 逐层获取 data -> token // 逐层获取 data -> token
JSONObject data = jsonObject.getJSONObject("data"); JSONObject data = jsonObject.getJSONObject("data");
@ -60,96 +66,134 @@ public class SampleEngineRecordServiceImpl implements ISampleEngineRecordService
String algorithmResponseBody = null; String algorithmResponseBody = null;
//查询用户开通的场景 //查询用户开通的场景
if (StringUtils.isNotEmpty(token)){ if (StringUtils.isNotEmpty(token)){
try { // try {
URI uri = new URIBuilder("http://60.204.247.65:8100/V2/AI/WX/User/Scene") // URI uri = new URIBuilder("http://60.204.247.65:8100/V2/AI/WX/User/Scene")
.build(); // .build();
sceneResponseBody = GetRequest(uri, token); // sceneResponseBody = GetRequest(uri, token);
} catch (URISyntaxException e) { // } catch (URISyntaxException e) {
throw new RuntimeException(e); // throw new RuntimeException(e);
} // }
JSONObject jsonObject1 = new JSONObject(sceneResponseBody); // EngineTypeResponse engineTypeResponse = null;
// 逐层获取 data -> token // try {
JSONObject data1 = jsonObject.getJSONObject("data"); // ObjectMapper mapper = new ObjectMapper();
String scene = data1.getString("scene"); // engineTypeResponse = mapper.readValue(sceneResponseBody, EngineTypeResponse.class);
// } catch (JsonProcessingException e) {
//查询场景算法 // throw new RuntimeException(e);
List<String> extra_type_list = new ArrayList<>(); // }
try { //// JSONObject jsonObject1 = new JSONObject(sceneResponseBody);
URI uri = new URIBuilder("http://60.204.247.65:8100/V2/AI/WX/User/ExtraType/Get") // // 逐层获取 data -> token
.addParameter("scene",scene) //// JSONObject data1 = jsonObject1.getJSONObject("data");
.addParameter("if_open","1") // String scene = engineTypeResponse.getData().getScene();
.build(); //
algorithmResponseBody = GetRequest(uri, token); // //查询场景算法
ObjectMapper mapper = new ObjectMapper(); // List<String> extra_type_list = new ArrayList<>();
ExtraTypeResponse response = mapper.readValue(algorithmResponseBody,ExtraTypeResponse.class); // try {
List<ExtraType> list = response.getData(); // URI uri = new URIBuilder("http://60.204.247.65:8100/V2/AI/WX/User/ExtraType/Get")
for (ExtraType extraType : list) { // .addParameter("scene",scene)
extra_type_list.add(extraType.getExtra_type()); // .addParameter("if_open","1")
break; // .build();
} // algorithmResponseBody = GetRequest(uri, token);
} catch (URISyntaxException | JsonProcessingException e) { // ObjectMapper mapper = new ObjectMapper();
throw new RuntimeException(e); // ExtraTypeResponse response = mapper.readValue(algorithmResponseBody,ExtraTypeResponse.class);
} // List<ExtraType> list = response.getData();
// for (ExtraType extraType : list) {
// extra_type_list.add(extraType.getExtra_type());
// break;
// }
// } catch (URISyntaxException | JsonProcessingException e) {
// throw new RuntimeException(e);
// }
JSONObject jsonObj2 = new JSONObject(); JSONObject jsonObj2 = new JSONObject();
jsonObj2.put("scene", scene); // sanitize函数见下文 String type = objectMap.get("type").toString();
jsonObj2.put("callback_url", objectMap.get("callback_url")); if (StringUtils.isNotEmpty(type)){
jsonObj2.put("input_url", objectMap.get("input_url")); List<String> list = Arrays.asList(type.split(","));
jsonObj2.put("push_url", objectMap.get("push_url")); jsonObj2.put("scene", "可见光"); // sanitize函数见下文
jsonObj2.put("play_url", objectMap.get("play_url")); jsonObj2.put("callback_url", "http://114.235.183.162:9888/ces/iot/deviceLog/some");
String responseBody2 = PostRequest(jsonObj2, "http://60.204.247.65:8100/Third/Engine/Start"); jsonObj2.put("extra_type_list",new JSONArray(list));
jsonObj2.put("input_url","http://"+ip+":19008/live/livesteam/"+objectMap.get("rtmpUrl")+".flv");
jsonObj2.put("push_url", "rtmp://"+ip+"/live/livesteam/"+objectMap.get("rtmpUrl")+"ai1");
// jsonObj2.put("play_url", objectMap.get("play_url"));
String responseBody2 = PostRequest(jsonObj2, "http://60.204.247.65:8100/Third/Engine/Start",token);
ObjectMapper mapper1 = new ObjectMapper(); ObjectMapper mapper1 = new ObjectMapper();
EngineResponse response = null; EngineResponse response = null;
try { try {
response = mapper1.readValue(responseBody2, EngineResponse.class); response = mapper1.readValue(responseBody2, EngineResponse.class);
if (response.getCode() != 200){
throw new RuntimeException("第三方接口调用失败!");
}
} catch (JsonProcessingException e) { } catch (JsonProcessingException e) {
throw new RuntimeException(e); throw new RuntimeException(e);
} }
objectMap.put("task_id",response.getData().getTask_id()); objectMap.put("task_id",response.getData().getTask_id());
record.setPushUrl(objectMap.get("push_url").toString()); record.setPushUrl(objectMap.get("rtmpUrl").toString());
record.setDeviceSn(objectMap.get("device_sn").toString()); record.setTaskId(MapUtil.getStr(objectMap,"task_id",""));
record.setDeviceSn(MapUtil.getStr(objectMap,"deviceSn",""));
record.setTaskId(response.getData().getTask_id()); record.setTaskId(response.getData().getTask_id());
record.setExtraType(String.join(",", extra_type_list)); record.setExtraType(objectMap.get("type").toString());
System.out.print(objectMap);
}
} }
Map<String, Object> map = new HashMap(); Map<String, Object> map = new HashMap();
map.put("callback_url", objectMap.get("callback_url"));
map.put("input_url", objectMap.get("input_url")); map.put("push_url", "http://"+ip+":1985/rtc/v1/whep/?app=live/livesteam&stream="+objectMap.get("rtmpUrl")+"ai1");
map.put("push_url", objectMap.get("push_url"));
map.put("play_url", objectMap.get("play_url"));
map.put("task_id", objectMap.get("task_id")); map.put("task_id", objectMap.get("task_id"));
//添加启动引擎记录 //添加启动引擎记录
mapper.insert(record); mapper.insert(record);
//添加任务id和jobid关联关系
TaskJobEntity taskJobEntity = new TaskJobEntity();
taskJobEntity.setJobId(objectMap.get("jobId").toString());
taskJobEntity.setTaskId(objectMap.get("task_id").toString());
taskJobMapper.insert(taskJobEntity);
return map; return map;
} }
@Override @Override
public void closeEngine(Map<String, Object> objectMap) { public void closeEngine(Map<String, Object> objectMap) {
JSONObject jsonObj2 = new JSONObject(); JSONObject jsonObj2 = new JSONObject();
EngineRecordEntity record = mapper.selectOne(new LambdaQueryWrapper<EngineRecordEntity>().eq(EngineRecordEntity::getDeviceSn, objectMap.get("device_sn"))); EngineRecordEntity record = mapper.selectOne(new LambdaQueryWrapper<EngineRecordEntity>().eq(EngineRecordEntity::getDeviceSn, objectMap.get("deviceSn")));
if (record == null){ if (record == null){
throw new RuntimeException("关闭引擎失败!"); // throw new RuntimeException("关闭引擎失败!");
} }else {
//获取token
//设置请求Header和Body(如JSON)
String md5 = Md5Utils.hash("xuzhou_ai");
JSONObject jsonObj = new JSONObject();
jsonObj.put("username", sanitize("xuzhou_ai")); // sanitize函数见下文
jsonObj.put("password", sanitize(md5));
String responseBody = PostRequest(jsonObj, "http://60.204.247.65:8100/Third/Login","");
JSONObject jsonObject = new JSONObject(responseBody);
// 逐层获取 data -> token
JSONObject data = jsonObject.getJSONObject("data");
String token = data.getString("token");
jsonObj2.put("task_id", record.getTaskId()); // sanitize函数见下文 jsonObj2.put("task_id", record.getTaskId()); // sanitize函数见下文
String responseBody2 = PostRequest(jsonObj2, "http://60.204.247.65:8100/Third/Engine/Stop"); String responseBody2 = PostRequest(jsonObj2, "http://60.204.247.65:8100/Third/Engine/Stop",token);
JSONObject json = new JSONObject(responseBody2); JSONObject json = new JSONObject(responseBody2);
// 方式2:安全获取(先判空再转换) // 方式2:安全获取(先判空再转换)
Object dataObj = json.get("data"); Object dataObj = json.get("data");
if(dataObj != null && dataObj instanceof Integer) { if(dataObj != null && dataObj instanceof Integer) {
int data = (Integer) dataObj; int data1 = (Integer) dataObj;
if (data ==1){ if (data1 ==1){
mapper.delete(new LambdaQueryWrapper<EngineRecordEntity>().eq(EngineRecordEntity::getDeviceSn, objectMap.get("device_sn"))); mapper.delete(new LambdaQueryWrapper<EngineRecordEntity>().eq(EngineRecordEntity::getDeviceSn, objectMap.get("deviceSn")));
}else { }else {
throw new RuntimeException("关闭引擎失败!"); throw new RuntimeException("关闭引擎失败!");
} }
} else { } else {
throw new RuntimeException("关闭引擎失败!"); throw new RuntimeException("关闭引擎失败!");
} }
}
} }
public String PostRequest( JSONObject jsonObj, String url public String PostRequest( JSONObject jsonObj, String url, String token
) { ) {
try (CloseableHttpClient httpClient = HttpClients.createDefault()) { try (CloseableHttpClient httpClient = HttpClients.createDefault()) {
// 1. 创建POST请求对象 // 1. 创建POST请求对象
@ -158,6 +202,7 @@ public class SampleEngineRecordServiceImpl implements ISampleEngineRecordService
requestEntity.setContentType("application/json"); requestEntity.setContentType("application/json");
post.setEntity(requestEntity); post.setEntity(requestEntity);
post.setHeader("Accept", "application/json"); post.setHeader("Accept", "application/json");
post.setHeader("token", token);
// 3. 执行请求并获取响应 // 3. 执行请求并获取响应
try (CloseableHttpResponse response = httpClient.execute(post)) { try (CloseableHttpResponse response = httpClient.execute(post)) {
String responseBody = EntityUtils.toString(response.getEntity()); String responseBody = EntityUtils.toString(response.getEntity());
@ -182,7 +227,9 @@ public class SampleEngineRecordServiceImpl implements ISampleEngineRecordService
// .addParameter("param2", "value2") // .addParameter("param2", "value2")
// .build(); // .build();
HttpGet httpGet = new HttpGet(uri); HttpGet httpGet = new HttpGet(uri);
if (StringUtils.isNotEmpty(token)){
httpGet.setHeader("token",token); httpGet.setHeader("token",token);
}
try (CloseableHttpResponse response = httpClient.execute(httpGet)) { try (CloseableHttpResponse response = httpClient.execute(httpGet)) {
// 处理响应 // 处理响应
String responseBody = EntityUtils.toString(response.getEntity()); String responseBody = EntityUtils.toString(response.getEntity());

44
dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/TaskJobServiceImpl.java

@ -0,0 +1,44 @@
package org.dromara.sample.manage.service.impl;
import cn.hutool.core.convert.Convert;
import cn.hutool.crypto.SecureUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import jakarta.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.apache.dubbo.config.annotation.DubboReference;
import org.dromara.common.sdk.common.HttpResultResponse;
import org.dromara.common.sdk.common.Pagination;
import org.dromara.common.sdk.common.PaginationData;
import org.dromara.common.sdk.mqtt.CommonTopicRequest;
import org.dromara.common.sdk.mqtt.MqttGatewayPublish;
import org.dromara.sample.feign.RemoteSystemFeign;
import org.dromara.sample.manage.mapper.IPlayTextMapper;
import org.dromara.sample.manage.model.dto.StreamTypeDTO;
import org.dromara.sample.manage.model.entity.PlayTextEntity;
import org.dromara.sample.manage.service.IPlayTextService;
import org.dromara.sample.manage.service.ITaskJobService;
import org.dromara.system.api.RemoteConfigService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.UUID;
/**
*
* @author sean.zhou
* @version 0.1
* @date 2021/11/10
*/
@Service
@Slf4j
@Transactional
public class TaskJobServiceImpl implements ITaskJobService {
}
Loading…
Cancel
Save