From 98a45e34ab4a6740f95980040fa9207a779b2529 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期六, 12 十月 2024 16:31:18 +0800 Subject: [PATCH] 点位在线web修复+点位考核状态字段 --- ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java | 104 ++++++++++++++++++++++++++++------------------------ 1 files changed, 56 insertions(+), 48 deletions(-) diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java index dad7b84..4c7fa55 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java @@ -209,7 +209,7 @@ SysConfig normal = configMapper.checkConfigKeyUnique("normal.wordkorder.alarm.time"); // 濡傛灉鍗冲皢鐢熸垚宸ュ崟锛屼絾鏄澶囧浗鏍囩爜鏌ヤ笉鍒扮偣浣嶏紝鍒欎笉娣诲姞锛� List<WorkOrder> notAddList = new ArrayList<>(); - //鏌edis浠婃棩宸ュ崟鏁伴噺 + //TODO锛氭煡redis浠婃棩宸ュ崟鏁伴噺 int workOrderNum = 0; //UUID浣滀负value锛屼繚璇佷笂閿佺殑绾跨▼鑷繁瑙i攣 String requestId = IdUtils.fastSimpleUUID(); @@ -764,56 +764,64 @@ @Override public synchronized String getFrameImgByDevice(String deviceId, String channelId, String workOrderNo) throws Exception { - String url = String.format(this.rtspServer + "/api/play/start/%s/%s", deviceId, channelId); + String url = String.format(this.rtspServer + "/api/play/start/img/%s/%s", deviceId, channelId); String result = HttpUtils.sendGet(url); - log.info("鎷垮埌鍙栨祦鍝嶅簲缁撴灉锛�" + result); + log.info("鎷垮埌鍙栨祦鍥剧墖鍝嶅簲缁撴灉锛�" + result); WVPResult wvpResult = JSON.parseObject(result, WVPResult.class); - String imgUrl = null; - if (wvpResult.getCode() == 0) { - JSONObject data = (JSONObject) wvpResult.getData(); - String rtspUrl = data.getString("fmp4"); // 鍙杕p4鍦板潃 - if (StringUtils.hasText(rtspUrl)) { - System.out.println("鐩爣鍦板潃锛�" + rtspUrl); - FFmpegFrameGrabber grabber = null; - try { - grabber = new FFmpegFrameGrabber(rtspUrl); -// grabber.setOption("rtsp_transport", "tcp"); // 浣跨敤tcp鐨勬柟寮忥紝涓嶇劧浼氫涪鍖呭緢涓ラ噸 -// grabber.setVideoOption("probesize", "10000"); // 璁剧疆鎹曡幏鍒嗘瀽鐨勬渶澶у瓧鑺� - grabber.start(); - Frame frame = grabber.grabImage(); // 鐩存帴鎹曡幏涓�甯� - if (frame != null) { - System.out.println("鎴愬姛鎹曡幏涓�甯�"); - // 灏咶rame杞崲涓篗at - OpenCVFrameConverter.ToMat converter = new OpenCVFrameConverter.ToMat(); - Mat mat = converter.convertToMat(frame); - - imgUrl = workOrderNo + "_" + IdUtils.fastSimpleUUID() + ".png"; - // 鐢熸垚鍥剧墖璺緞 - String imgPath = PlatformConfig.getProfile() + "/" + imgUrl; - System.out.println("鍥剧墖淇濆瓨鍦板潃锛�" + imgPath); - imgUrl = Constants.RESOURCE_PREFIX + "/" + imgUrl; - // 淇濆瓨鍥剧墖 - opencv_imgcodecs.imwrite(imgPath, mat); - } else { - System.out.println("鏈崟鑾峰埌甯�"); - } - } catch (FrameGrabber.Exception e) { - e.printStackTrace(); - } finally { - if (grabber != null) { - try { - grabber.stop(); // 鍋滄鎹曡幏 - } catch (FrameGrabber.Exception e) { - e.printStackTrace(); - } - } - } - } - } else { - System.out.println("璇锋眰澶辫触锛岄敊璇爜锛�" + wvpResult.getCode() + "--" + wvpResult.getMsg()); + if(wvpResult.getCode() == 0) { + Object imgUrl = (Object) wvpResult.getData(); + imgUrl = Objects.isNull(imgUrl) ? "" : imgUrl; + log.info("鎷垮埌鍙栨祦鍥剧墖锛�" + imgUrl); + return (String) imgUrl; } - System.out.println("鍥剧墖URL锛�" + imgUrl); - return imgUrl; + return null; +// WVPResult wvpResult = JSON.parseObject(result, WVPResult.class); +// String imgUrl = null; +// if (wvpResult.getCode() == 0) { +// JSONObject data = (JSONObject) wvpResult.getData(); +// String rtspUrl = data.getString("fmp4"); // 鍙杕p4鍦板潃 +// if (StringUtils.hasText(rtspUrl)) { +// System.out.println("鐩爣鍦板潃锛�" + rtspUrl); +// FFmpegFrameGrabber grabber = null; +// try { +// grabber = new FFmpegFrameGrabber(rtspUrl); +//// grabber.setOption("rtsp_transport", "tcp"); // 浣跨敤tcp鐨勬柟寮忥紝涓嶇劧浼氫涪鍖呭緢涓ラ噸 +//// grabber.setVideoOption("probesize", "10000"); // 璁剧疆鎹曡幏鍒嗘瀽鐨勬渶澶у瓧鑺� +// grabber.start(); +// Frame frame = grabber.grabImage(); // 鐩存帴鎹曡幏涓�甯� +// if (frame != null) { +// System.out.println("鎴愬姛鎹曡幏涓�甯�"); +// // 灏咶rame杞崲涓篗at +// OpenCVFrameConverter.ToMat converter = new OpenCVFrameConverter.ToMat(); +// Mat mat = converter.convertToMat(frame); +// +// imgUrl = workOrderNo + "_" + IdUtils.fastSimpleUUID() + ".png"; +// // 鐢熸垚鍥剧墖璺緞 +// String imgPath = PlatformConfig.getProfile() + "/" + imgUrl; +// System.out.println("鍥剧墖淇濆瓨鍦板潃锛�" + imgPath); +// imgUrl = Constants.RESOURCE_PREFIX + "/" + imgUrl; +// // 淇濆瓨鍥剧墖 +// opencv_imgcodecs.imwrite(imgPath, mat); +// } else { +// System.out.println("鏈崟鑾峰埌甯�"); +// } +// } catch (FrameGrabber.Exception e) { +// e.printStackTrace(); +// } finally { +// if (grabber != null) { +// try { +// grabber.stop(); // 鍋滄鎹曡幏 +// } catch (FrameGrabber.Exception e) { +// e.printStackTrace(); +// } +// } +// } +// } +// } else { +// System.out.println("璇锋眰澶辫触锛岄敊璇爜锛�" + wvpResult.getCode() + "--" + wvpResult.getMsg()); +// } +// System.out.println("鍥剧墖URL锛�" + imgUrl); +// return imgUrl; } @Override -- Gitblit v1.8.0