From 023b2e98dffc0bc45e7bbd9205e5c0a3dc2994a4 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期五, 17 一月 2025 15:29:10 +0800 Subject: [PATCH] 部级视频考核不做数量限制 --- ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java | 80 +++++++++++++++++++++++++++++++-------- 1 files changed, 63 insertions(+), 17 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 81b9299..c8aaf89 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 @@ -79,6 +79,7 @@ public class WorkOrderServiceImpl extends ServiceImpl<WorkOrderMapper, WorkOrder> implements WorkOrderService { private final YwPointService ywPointService; + private final YwPointMapper ywPointMapper; private final TMonitorMapper monitorMapper; private final DynamicColumnMapper dynamicColumnMapper; private final WorkOrderAuditingRecordMapper workOrderAuditingRecordMapper; @@ -348,15 +349,15 @@ List<WorkOrderYwConditionRecord> willAddMsg = new ArrayList<>(48); // 鍗冲皢瑕佹坊鍔犵殑閿欒绫诲瀷 List<WorkOrderErrorType> willAddErrorType = new ArrayList<>(96); - if(!CollectionUtils.isEmpty(inDatabaseWorkOrderList)){ + if (!CollectionUtils.isEmpty(inDatabaseWorkOrderList)) { WorkOrder workOrderInDB = inDatabaseWorkOrderList.get(0); List<String> errorNameList = workOrderInDB.getErrorTypeList(); List<String> errorTypes = entity.getErrorTypeList(); - if(errorNameList.containsAll(errorTypes)){ + if (errorNameList.containsAll(errorTypes)) { return Result.error("宸叉湁鍚岀鏁呴殰绫诲瀷宸ュ崟"); - }else { + } else { for (String errorType : errorTypes) { - if(!errorNameList.contains(errorType)){ + if (!errorNameList.contains(errorType)) { // 閿欒绫诲瀷涓嶄竴鏍凤紝灏辨柊澧炰竴涓敊璇被鍨嬶紝骞朵笖閲嶇疆宸ュ崟鐘舵�佷负寰呭鐞� WorkOrderErrorType workOrderErrorType = new WorkOrderErrorType(); workOrderErrorType.setWorkOrderNo(workOrderInDB.getWorkOrderNo()); @@ -394,7 +395,7 @@ } } return Result.ok("娣诲姞鎴愬姛"); - }else { + } else { //鏁版嵁搴撴病鏈夋鍦ㄨ繘琛岀殑宸ュ崟 //鏌edis浠婃棩宸ュ崟鏁伴噺 int workOrderNum = 0; @@ -421,7 +422,7 @@ workOrderErrorTypeService.getBaseMapper().insertWorkOrderErrorTypeList(workOrderErrorTypes); if (baseMapper.insert(entity) > 0) { return Result.ok("娣诲姞鎴愬姛"); - }else { + } else { return Result.error("娣诲姞澶辫触"); } } @@ -470,10 +471,21 @@ UrgentLevelEnum.WARNING, workOrder.getWorkOrderNo()); notifyService.save(notify); + List<String> errorList = workOrderErrorTypeMapper.getErrorList(workOrder.getWorkOrderNo()) + .stream().map(SysDictData::getDictValue).collect(Collectors.toList()); // 鍚屾鐐逛綅鐘舵�� if (form.getAuditingResult() == WorkOrderStatusEnum.AUDITING_SUCCESS) { ywPointService.updateRecovery(Collections.singletonList(workOrder.getSerialNumber()), 0); + //濡傛灉宸ュ崟涓虹绾垮伐鍗曢偅涔堜慨鏀圭偣浣峱ingOnline涓哄湪绾� + if(!CollectionUtils.isEmpty(errorList) && errorList.contains(ErrorType.DEVICE_OFFLINE.getValue())){ + new LambdaUpdateChainWrapper<>(ywPointMapper) + .eq(YwPoint::getSerialNumber, workOrder.getSerialNumber()) + .set(YwPoint::getUpdateTime, new Date()) + .set(YwPoint::getPingOnline, 1) + .update(); + } } + return Result.ok("鎿嶄綔鎴愬姛"); } @@ -660,6 +672,20 @@ } if (query.getStart() != null) query.setStart(DateUtils.getDayStart(query.getStart())); if (query.getEnd() != null) query.setEnd(DateUtils.getDayEnd(query.getEnd())); + if (query.getErrorType() != null) { + List<String> errorTypeList = new ArrayList<>(); + errorTypeList.add(query.getErrorType()); + if (ErrorType.ABNORMAL_PIC.getValue().equals(query.getErrorType())) { + //List娣诲姞涔嬪墠鍑犵宸ュ崟绫诲瀷 + errorTypeList.add(ErrorType.SIGNAL_LOSS.getValue()); + errorTypeList.add(ErrorType.SCREEN_COLOR_DEVIATION.getValue()); + errorTypeList.add(ErrorType.SNOW_STORM.getValue()); + errorTypeList.add(ErrorType.STRIPE_INTERFERENCE.getValue()); + errorTypeList.add(ErrorType.SCREEN_OCCLUSION.getValue()); + errorTypeList.add(ErrorType.ABNORMAL_CLARITY.getValue()); + } + query.setErrorTypeList(errorTypeList); + } baseMapper.page(page, query); if (!CollectionUtils.isEmpty(page.getRecords())) { page.getRecords().stream().forEach(item -> { @@ -1119,6 +1145,7 @@ /** * 宸ュ崟瀵煎嚭鐨勯�昏緫 * 鏍囩锛氬悓涓�涓猧p鏍囩鍚堝湪涓�璧凤紝閽堝绂荤嚎宸ュ崟锛坕p鐩稿悓灏变笉浼氱敓鎴愬伐鍗曪級锛屾柟渚胯繍缁村鐞� + * * @param query * @return */ @@ -1129,8 +1156,22 @@ } if (query.getStart() != null) query.setStart(query.getStart() + " 00:00:00"); if (query.getEnd() != null) query.setEnd(query.getEnd() + " 23:59:59"); + if (query.getErrorType() != null) { + List<String> errorTypeList = new ArrayList<>(); + errorTypeList.add(query.getErrorType()); + if (ErrorType.ABNORMAL_PIC.getValue().equals(query.getErrorType())) { + //List娣诲姞涔嬪墠鍑犵宸ュ崟绫诲瀷 + errorTypeList.add(ErrorType.SIGNAL_LOSS.getValue()); + errorTypeList.add(ErrorType.SCREEN_COLOR_DEVIATION.getValue()); + errorTypeList.add(ErrorType.SNOW_STORM.getValue()); + errorTypeList.add(ErrorType.STRIPE_INTERFERENCE.getValue()); + errorTypeList.add(ErrorType.SCREEN_OCCLUSION.getValue()); + errorTypeList.add(ErrorType.ABNORMAL_CLARITY.getValue()); + } + query.setErrorTypeList(errorTypeList); + } List<WorkOrderVO> export = baseMapper.export(query); - if(CollectionUtils.isEmpty(export)) return new ArrayList<WorkOrderVO>(); + if (CollectionUtils.isEmpty(export)) return new ArrayList<WorkOrderVO>(); List<String> ips = export.stream().map(WorkOrderVO::getIp).collect(Collectors.toList()); //鏌ュ嚭鐩稿悓ip鐨勮澶囥�佸苟鏌ュ嚭鏍囩 List<TMonitorResult> monitorVOS = monitorMapper.getByIp(ips); @@ -1145,7 +1186,7 @@ tMonitorResult.setDynamicColumnList(map.get(pointId)); } } - export.forEach(result->{ + export.forEach(result -> { StringBuilder dynamicTag = new StringBuilder(""); Boolean provinceTagVideo = false; Boolean provinceTagCar = false; @@ -1155,18 +1196,23 @@ Boolean deptTag = false; List<String> dynamicTags = new ArrayList<>(); for (TMonitorResult tagVO : monitorVOS) { - if(tagVO.getIp().equals(result.getIp())){ - if(tagVO.getProvinceTagVideo()) provinceTagVideo = true; - if(tagVO.getProvinceTagCar()) provinceTagCar = true; - if(tagVO.getProvinceTagFace()) provinceTagFace = true; - if(tagVO.getImportantTag()) importantTag = true; - if(tagVO.getImportantCommandImageTag()) importantCommandImageTag = true; - if(tagVO.getDeptTag()) deptTag = true; + //鐪佸巺鏍囩閫氳繃ip鍒ゆ柇 (杩愮淮瑕佹眰) + if (tagVO.getIp().equals(result.getIp())) { + if (tagVO.getProvinceTagVideo()) provinceTagVideo = true; + if (tagVO.getProvinceTagCar()) provinceTagCar = true; + if (tagVO.getProvinceTagFace()) provinceTagFace = true; + if (tagVO.getImportantTag()) importantTag = true; + if (tagVO.getImportantCommandImageTag()) importantCommandImageTag = true; + if (tagVO.getDeptTag()) deptTag = true; + } + //鍔ㄦ�佸垪鏍规嵁鍥芥爣鍒ゆ柇 + if (tagVO.getNo().equals(result.getSerialNumber())) { //鍔ㄦ�佸垪澶勭悊鍔犲湪鏍囩閲� if (!CollectionUtils.isEmpty(tagVO.getDynamicColumnList())) { List<DynamicColumnVO> dynamicColumnList = tagVO.getDynamicColumnList(); for (DynamicColumnVO dynamicColumnVO : dynamicColumnList) { - if(!dynamicTags.contains(dynamicColumnVO.getColumnValue())) dynamicTags.add(dynamicColumnVO.getColumnValue()); + if (!dynamicTags.contains(dynamicColumnVO.getColumnValue())) + dynamicTags.add(dynamicColumnVO.getColumnValue()); } } } @@ -1174,7 +1220,7 @@ for (String tag : dynamicTags) { dynamicTag.append(tag).append("銆�"); } - StringBuilder tag = new StringBuilder("" + (provinceTagVideo ? "鐪佸巺瑙嗛銆�" : "")+(provinceTagCar ? "鐪佸巺杞﹁締銆�" : "")+(provinceTagFace ? "鐪佸巺浜鸿劯銆�" : "") + (importantTag ? "閲嶇偣鐐逛綅銆�" : "") + (importantCommandImageTag ? "閲嶇偣鎸囨尌鍥惧儚銆�" : "") + (deptTag ? "閮ㄧ骇銆�" : "")); + StringBuilder tag = new StringBuilder("" + (provinceTagVideo ? "鐪佸巺瑙嗛銆�" : "") + (provinceTagCar ? "鐪佸巺杞﹁締銆�" : "") + (provinceTagFace ? "鐪佸巺浜鸿劯銆�" : "") + (importantTag ? "閲嶇偣鐐逛綅銆�" : "") + (importantCommandImageTag ? "閲嶇偣鎸囨尌鍥惧儚銆�" : "") + (deptTag ? "閮ㄧ骇銆�" : "")); if (tag.toString().endsWith("銆�")) { tag = new StringBuilder(tag.substring(0, tag.length() - 1)); } -- Gitblit v1.8.0