From 918b26794c7d3b3faa2c57e6a6cb0c11ea4e73e8 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期四, 05 十二月 2024 16:34:56 +0800 Subject: [PATCH] 省厅标签拆分2 --- ycl-common/src/main/java/constant/CheckConstants.java | 2 + ycl-pojo/src/main/java/com/ycl/platform/domain/result/BaseResult.java | 4 ++ ycl-server/src/main/java/com/ycl/task/UYTask.java | 60 +++++++++++++----------------- ycl-server/src/main/java/com/ycl/platform/service/impl/YwPointServiceImpl.java | 6 +++ ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml | 3 - 5 files changed, 39 insertions(+), 36 deletions(-) diff --git a/ycl-common/src/main/java/constant/CheckConstants.java b/ycl-common/src/main/java/constant/CheckConstants.java index 465c0fb..02a8d2d 100644 --- a/ycl-common/src/main/java/constant/CheckConstants.java +++ b/ycl-common/src/main/java/constant/CheckConstants.java @@ -4,6 +4,8 @@ * 鑰冩牳甯搁噺 */ public class CheckConstants { + //瑙嗛鎴栬溅杈嗘垨浜鸿劯 + public static final Short Rule_Category_Or = 0; //瑙嗛瑙勫垯 public static final Short Rule_Category_Video = 1; //杞﹁締瑙勫垯 diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/result/BaseResult.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/result/BaseResult.java index 022fd14..461ebe2 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/result/BaseResult.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/result/BaseResult.java @@ -26,6 +26,10 @@ * 鐪佸巺 */ private Boolean provinceTag; + //鎺ユ敹mysql鏁版嵁鐢� + private Boolean provinceTagVideo; + private Boolean provinceTagCar; + private Boolean provinceTagFace; /** * 閮ㄧ骇 diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/YwPointServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/YwPointServiceImpl.java index 9d0b316..77e4435 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/YwPointServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/YwPointServiceImpl.java @@ -517,6 +517,12 @@ data.setProvinceTag(tag.getProvinceTagCar()); }else if(CheckConstants.Rule_Category_Face.equals(category)){ data.setProvinceTag(tag.getProvinceTagFace()); + }else if(CheckConstants.Rule_Category_Or.equals(category)){ + if(tag.getProvinceTagVideo() || tag.getProvinceTagCar() || tag.getProvinceTagFace()) { + data.setProvinceTag(Boolean.TRUE); + }else { + data.setProvinceTag(Boolean.FALSE); + } } } } diff --git a/ycl-server/src/main/java/com/ycl/task/UYTask.java b/ycl-server/src/main/java/com/ycl/task/UYTask.java index ebc9afb..138418e 100644 --- a/ycl-server/src/main/java/com/ycl/task/UYTask.java +++ b/ycl-server/src/main/java/com/ycl/task/UYTask.java @@ -31,6 +31,8 @@ import enumeration.general.WorkOrderStatusEnum; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Value; import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.query.Criteria; @@ -152,8 +154,7 @@ item.setNo(item.getSerialNumber().getShowValue()); } }); - //TODO:浼樹簯鐨勪竴鏈轰竴妗e寘鍚簡瑙嗛銆佽溅杈嗐�佷汉鑴� 鏄湁涓�绉嶆槸鐪佸巺灏辩畻鐪佸巺鍚� - pointService.setDeviceTagByGB(records,CheckConstants.Rule_Category_Video); + pointService.setDeviceTagByGB(records,CheckConstants.Rule_Category_Or); pointService.setNew(records); //瀛樻斁鍦╩ongo涓� mongoTemplate.insertAll(records); @@ -193,7 +194,6 @@ } // 鍏堟煡鍑鸿澶嘔P闆嗗悎,鍓旈櫎鎺夊湪绾挎儏鍐垫槸鏈煡鐨�,骞朵笖鍙娴嬫鍦ㄨ�冩牳鐨勮澶囬伩鍏嶅浣欏伐鍗� //TODO锛氶渶瑕佹妸娴峰悍鍜屼紭浜戠殑浠诲姟鐨勬椂闂磋皟鍒皃ing涔嬪墠 - //TODO锛氳繖閲岄渶瑕佸瓨涓変釜鏍囩鍚� List<TMonitorResult> monitorList = monitorMapper.getDistinctIP(); //琛ュ厖閿欒鏃堕棿鐐� Query onlineQuery = new Query(Criteria.where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); @@ -220,36 +220,6 @@ ex.printStackTrace(); } return null; -// int checkTimes = 1; -// int offLineTimes = 1; -// Map<String, Object> map = (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstant.ONLINE_KEY, monitor.getNo()); -// if (!CollectionUtils.isEmpty(map)) { -// checkTimes = (Integer) map.get("checkTimes") + 1; -// offLineTimes = (Integer) map.get("offLineTimes"); -// }else { -// map = new HashMap<>(); -// } -// monitor.setPingOnline(Boolean.FALSE); -// monitor.setCheckCount(checkTimes); -// monitor.setOffLineCount(offLineTimes); -// List<Date> offLineTime = monitor.getOffLineTime(); -// if(CollectionUtils.isEmpty(offLineTime)) offLineTime = new ArrayList<>(); -// offLineTime.add(new Date()); -// monitor.setOffLineTime(offLineTime); -// if (monitor.getOffLineCount() >= time) { -// WorkOrder workOrder = new WorkOrder(); -// workOrder.setSerialNumber(monitor.getNo()); -// List<String> errList = new ArrayList<>(); -// errList.add(ErrorType.DEVICE_OFFLINE.getValue()); -// workOrder.setErrorTypeList(errList); -// workOrder.setStatus(WorkOrderStatusEnum.DISTRIBUTED); -// monitor.setWorkOrder(workOrder); -// } -// map.put("checkTimes", checkTimes); -// map.put("offLineTimes", offLineTimes); -// redisTemplate.opsForHash().put(RedisConstant.ONLINE_KEY, monitor.getNo(), map); -// return monitor; // 杩斿洖澶辫触鐨勭粨鏋� - })) .collect(Collectors.toList()); @@ -292,11 +262,32 @@ } //瀛樻斁鍒癿ongo if (!CollectionUtils.isEmpty(dataList)) { + List<TMonitorResult> mongoList = new ArrayList<>(); + dataList.forEach(item->{ + String monitorType = item.getMonitorType(); + //鍚屼竴涓澶囧涓被鍨嬫瘡涓被鍨嬪瓨涓�鏉℃暟鎹紝浠ユ鍦ㄤ繚鐣欐暟鎹殑鎯呭喌涓嬪尯鍒嗙渷鍘呮爣绛� + if(StringUtils.isNotEmpty(monitorType)){ + String[] monitors = monitorType.split("/"); + for (String type : monitors) { + TMonitorResult mongoData = new TMonitorResult(); + BeanUtils.copyProperties(item,mongoData); + mongoData.setMonitorType(type); + if("1".equals(type)){ + mongoData.setProvinceTag(mongoData.getProvinceTagVideo()); + }else if("2".equals(type)){ + mongoData.setProvinceTag(mongoData.getProvinceTagCar()); + }else if("3".equals(type)){ + mongoData.setProvinceTag(mongoData.getProvinceTagFace()); + } + mongoList.add(mongoData); + } + } + }); //濡傛灉瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎 Query query = new Query(Criteria.where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); DeleteResult result = mongoTemplate.remove(query, TMonitorResult.class); //瀛樻斁鍦╩ongo涓� - mongoTemplate.insertAll(dataList); + mongoTemplate.insertAll(mongoList); } //宸ュ崟锛堝悓涓�IP鍙敓鎴愪竴涓伐鍗曪級 List<WorkOrder> workOrderList = dataList.stream() @@ -344,6 +335,7 @@ item.setNo(item.getDeviceId()); } }); + //璨屼技杩欓噷鍙互蹇界暐鐪佸巺鏍囩鍥犱负椤圭洰灞曠ず鐨勫悗闈ing鐨勬椂鍊欏瓨鐨勬暟鎹� pointService.setDeviceTagByGB(records,CheckConstants.Rule_Category_Video); //瀛樻斁鍦╩ongo涓� mongoTemplate.insertAll(records); diff --git a/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml index 607fb80..42bcced 100644 --- a/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml +++ b/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml @@ -712,10 +712,9 @@ WHERE serial_number in <foreach collection="gbList" open="(" separator="," close=")" item="no">#{no}</foreach> </select> - <!-- TODO --> <select id="getDistinctIP" resultType="com.ycl.platform.domain.result.SYS.TMonitorResult"> select DISTINCT m.id, m.ip,m.serial_number as no,m.name,m.camera_fun_type as monitorType,d.dept_id, - p.province_tag, + p.province_tag_video, p.province_tag_car, p.province_tag_face, p.important_tag,p.important_command_image_tag,p.dept_tag,p.online from t_monitor m left join t_yw_point p on m.serial_number = p.serial_number -- Gitblit v1.8.0