ycl-server/src/main/java/com/ycl/api/YS/YSApi.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
ycl-server/src/main/java/com/ycl/api/YS/YSApi.java
@@ -6,6 +6,7 @@ import com.ycl.api.YS.lib.NetDEVSDKLib; import com.ycl.api.YS.login.Login; import com.ycl.platform.domain.result.OSDResult; import com.ycl.utils.StringUtils; import enumeration.DeviceType; import lombok.extern.slf4j.Slf4j; @@ -91,14 +92,23 @@ return null; } stOSDInfo.read(); //省份 String name = new String(stOSDInfo.stNameOSD.szOSDText, StandardCharsets.UTF_8).trim(); if (StringUtils.isNotEmpty(name) && name.contains("|")){ String[] osdNames = name.split("\\|"); osdResult.setOSD1(osdNames[0]); osdResult.setOSD2(osdNames[1]); osdResult.setOSD3(osdNames[2]); osdResult.setName(osdNames[3]); }else { //省份 osdResult.setOSD1(name); // log.info("name"+name); // log.info("YSname"+name); int num = 0; for (NetDEVSDKLib.NETDEV_OSD_TEXT_OVERLAY_S osd : stOSDInfo.astTextOverlay) { String text = new String(osd.szOSDText, StandardCharsets.UTF_8).trim(); // log.info("num:"+num+",texr:"+text); // log.info("YSnum:"+num+",YStexr:"+text); if (num == 0) { osdResult.setOSD2(text); } else if (num == 1) { @@ -110,6 +120,9 @@ } num++; } } //登出 YSInit.netdevsdk.NETDEV_Logout(lpUserID); osdResult.setDeviceBrand(DeviceType.YS.getType()); ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java
@@ -1419,12 +1419,12 @@ private void setLoseDaily(VideoDailyExp videoDailyExp, List<RecordMetaDSumResult> recordResults) throws NoSuchFieldException, IllegalAccessException { //一个设备当月在线情况 for (RecordMetaDSumResult recordResult : recordResults) { int dayOfMonth = DateUtils.getDayOfMonth(recordResult.getStatTime()); int dayOfMonth = DateUtils.getDayOfMonth(recordResult.getStatTime()); //获取启动日期是当月第几天 //反射赋值,字段统一定义为day+1,2,3... Field field = videoDailyExp.getClass().getDeclaredField("day" + dayOfMonth); field.setAccessible(true); //防止转换为科学计数法 BigDecimal bigDecimal = BigDecimal.valueOf(recordResult.getMissDuration() == null ? 0 : recordResult.getMissDuration()); BigDecimal bigDecimal = BigDecimal.valueOf(recordResult.getMissDuration() == null ? 0 : (recordResult.getMissDuration()) * 60); field.set(videoDailyExp, bigDecimal.toString()); } }