feat:下发命令增加主动拍照mqtt

dev
郭承 2 months ago
parent 30c009faa3
commit 13d1df339e

@ -74,7 +74,7 @@ public class TermSetController extends BaseController {
@ApiResponses({@ApiResponse(code = 200, message = "请求成功"), @ApiResponse(code = 400, message = "请求参数没填好"), @ApiResponse(code = 404, message = "请求路径没有或页面跳转路径不对")})
@RequestMapping("/setTermCamera")
@Log(title = "设备控制接口", type = "查询")
public ResponseReult<CmaRequestModel> setTermCamera(@RequestBody @Validated TermCtrlVo vo) {
public ResponseReult<CmaRequestModel> setTermCamera(@RequestBody @Validated TermCtrlVo vo) throws Exception{
ServiceBody<CmaRequestModel> serviceBody = termSetService.setTermCamera(vo);
if (serviceBody.getCode() == ServiceStatus.SUCCESS) {
return ResponseReult.success(serviceBody.getData());

@ -19,6 +19,9 @@ public class TermCtrlVo {
@ApiModelProperty(value = "通道编号", example = "123456")
private Integer channelId;
@ApiModelProperty(value = "是否发送mqtt的命令",example = "0")
private Integer mqtt;
@NotNull(message = "不能传入空值")
@ApiModelProperty(value = "控制对象数组", required = true)
private List<CtrlBean> list;

@ -21,6 +21,7 @@ import com.shxy.xymanager_dao.dao.RequestResultsDao;
import com.shxy.xymanager_dao.dao.TerminalChannelMapperDao;
import com.shxy.xymanager_dao.dao.TerminalResolutionDao;
import com.shxy.xymanager_service.service.CacheService;
import com.shxy.xymanager_service.service.MqttService;
import com.shxy.xymanager_service.service.NewCacheService;
import com.shxy.xymanager_service.service.TermSetService;
import lombok.extern.slf4j.Slf4j;
@ -58,6 +59,9 @@ public class TermSetServiceImpl implements TermSetService {
@Autowired
TerminalChannelMapperDao terminalChannelMapperDao;
@Resource
MqttService mqttService;
// 记录主动拍照参数
public static Map<String, TermChannelModel> termChannelModelMap = new HashMap<>();
@ -115,7 +119,7 @@ public class TermSetServiceImpl implements TermSetService {
* @return
*/
@Override
public ServiceBody<CmaRequestModel> setTermCamera(TermCtrlVo vo) {
public ServiceBody<CmaRequestModel> setTermCamera(TermCtrlVo vo) throws Exception{
// 返回对象
CmaRequestModel model = new CmaRequestModel();
// 装置信息
@ -125,6 +129,11 @@ public class TermSetServiceImpl implements TermSetService {
// 通道id
Integer channelId = vo.getChannelId();
Map<String , Object> ctrlBeanMap = new HashMap<>();
for (TermCtrlVo.CtrlBean ctrlBean : vo.getList()) {
ctrlBeanMap.put(ctrlBean.getName() , ctrlBean.getValue());
}
boolean isFlse = false;
if (null != termId && null != channelId && null != list && list.size() > 0) {
for (TermCtrlVo.CtrlBean ctrlBean : list) {
@ -157,8 +166,16 @@ public class TermSetServiceImpl implements TermSetService {
cmdid = terminals.getCmdid();
}
int requestId = Constants.REQUEST_ID.addAndGet(1);
List<String> cmd = CmaUtil.cmaCtrl(list, cmdid, requestId);
ProcessExecUtils.execArray(cmd);
if (vo.getMqtt() != null && vo.getMqtt().intValue() == 1) {
if (ctrlBeanMap.get("cat").equals("capture")) {
int preset = Integer.parseInt(ctrlBeanMap.get("preset").toString());
int type = Integer.parseInt(ctrlBeanMap.get("type").toString());
mqttService.takePic(cmdid, channelId, preset, type, requestId);
}
} else {
List<String> cmd = CmaUtil.cmaCtrl(list, cmdid, requestId);
ProcessExecUtils.execArray(cmd);
}
model.setRequestId(requestId);
DateTime now = DateTime.now();
model.setDate(now);

@ -39,7 +39,7 @@ public interface TermSetService {
* @param vo
* @return
*/
ServiceBody<CmaRequestModel> setTermCamera(TermCtrlVo vo);
ServiceBody<CmaRequestModel> setTermCamera(TermCtrlVo vo) throws Exception;
/**
*

Loading…
Cancel
Save