From 64efb660b2c119c00432434c0f651f8996483f18 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期五, 21 二月 2025 15:51:13 +0800 Subject: [PATCH] OSD大华数据格式+数据中心重点标签统计数 --- ycl-server/src/main/java/com/ycl/platform/service/impl/YwPointServiceImpl.java | 66 +++++++++++++++++--------------- 1 files changed, 35 insertions(+), 31 deletions(-) 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 77e4435..f5adcac 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 @@ -201,7 +201,11 @@ Assert.notNull(entity, "璁板綍涓嶅瓨鍦�"); YwPointVO vo = YwPointVO.getVoByEntity(entity, null); if (Objects.nonNull(entity.getDeptId())) { - vo.setDeptIds(sysDeptMapper.selectParents(entity.getDeptId())); + //TODO:鏂规硶寰呭畬鍠� 绠�鍗曞鐞� + List<Long> deptIds = sysDeptMapper.selectParents(entity.getDeptId()); + deptIds.remove(deptIds.size()-1); + deptIds.add(entity.getDeptId()); + vo.setDeptIds(deptIds); } return Result.ok().data(vo); } @@ -261,7 +265,7 @@ if (!CollectionUtils.isEmpty(dynamics)) { dynamicMap = dynamics.stream().filter(vo -> vo.getRefId() != null).collect(Collectors.groupingBy(DynamicColumnVO::getRefId)); } - //瀹氫箟琛ㄥご鍒楄〃 + //瀹氫箟鍥哄畾琛ㄥご鍒楄〃 LinkedHashSet<String> headers = new LinkedHashSet<>(); headers.add(PointHeaderConstant.ID); headers.add(PointHeaderConstant.Point_Name); @@ -274,6 +278,8 @@ headers.add(PointHeaderConstant.Province_Tag_Face); headers.add(PointHeaderConstant.Impotrant_Command_Image); headers.add(PointHeaderConstant.Dept_Tag); + headers.add(PointHeaderConstant.Username); + headers.add(PointHeaderConstant.Password); List<String> headersList = new LinkedList<>(); if (!CollectionUtils.isEmpty(dynamicsHeaders)) { //浣跨敤閾捐〃淇濊瘉鍚庣画琛ュ厖鏁版嵁鏃惰幏鍙栨暟鎹『搴忎竴鑷� @@ -296,6 +302,8 @@ list.add(export.getProvinceTagFaceString()); list.add(export.getImportantCommandImageTagString()); list.add(export.getDeptTagString()); + list.add(export.getUsername()); + list.add(export.getPassword()); for (String header : headersList) { //鍒涘缓涓�涓彉閲忚褰曟壘娌℃壘鍒拌繖涓猦eader boolean flag = false; @@ -353,6 +361,8 @@ pointExport.setProvinceTagFace("鏄�".equals(map.get(PointHeaderConstant.Province_Tag_Face))); pointExport.setImportantCommandImageTag("鏄�".equals(map.get(PointHeaderConstant.Impotrant_Command_Image))); pointExport.setDeptTag("鏄�".equals(map.get(PointHeaderConstant.Dept_Tag))); + pointExport.setUsername(map.get(PointHeaderConstant.Username)); + pointExport.setPassword(map.get(PointHeaderConstant.Password)); List<DynamicColumnVO> dynamics = new ArrayList<>(); // 澶勭悊鍔ㄦ�佸垪 for (Map.Entry<String, String> entry : map.entrySet()) { @@ -399,6 +409,8 @@ point.setProvinceTagCar(item.getProvinceTagCar()); point.setProvinceTagFace(item.getProvinceTagFace()); point.setDeptTag(item.getDeptTag()); + point.setUsername(item.getUsername()); + point.setPassword(item.getPassword()); if (needUpdateUnit) { if (Objects.nonNull(unitId)) { point.setUnitId(Long.valueOf(unitId)); @@ -436,40 +448,32 @@ } //鏍规嵁label_value鍜宺ef_id鍒ゆ柇鏄惁鏄悓涓�鏁版嵁 for (PointExport pointExport : dataList) { - //寰楀埌excel涓姩鎬佸垪鍚嶄綔涓簁ey鐨刴ap - Map<String, DynamicColumnVO> exportMap = pointExport.getDynamicData().stream().collect(Collectors.toMap(DynamicColumnVO::getLabelValue, Function.identity())); - //鏌ュ嚭鏁版嵁搴撲腑杩欎釜鐐逛綅鐨勫姩鎬佸垪 - List<DynamicColumnVO> dynamicColumnVOS = dynamicVOMap.get(pointExport.getId()); - if (!CollectionUtils.isEmpty(dynamicColumnVOS)) { - //閬嶅巻鏁版嵁搴撲腑杩欎釜鐐逛綅鐨勫姩鎬佸垪锛屽苟鏍规嵁鍔ㄦ�佸垪鍚嶆壘鍑篹xcel涓殑鍊� - for (DynamicColumnVO vo : dynamicColumnVOS) { - DynamicColumnVO dynamicColumnVO = exportMap.get(vo.getLabelValue()); - //瀛樺湪璇存槑excel鏈夎繖涓暟鎹紝灏嗘暟鎹簱杩欎釜鏁版嵁鐨勫�兼敼涓篹xcel鐨勫�� - if (dynamicColumnVO.getColumnValue() != null) { - DynamicColumnValue entity = new DynamicColumnValue(); - entity.setColumnValue(dynamicColumnVO.getColumnValue()); - entity.setDynamicColumnId(vo.getId()); - entity.setRefId(vo.getRefId()); - entity.setId(vo.getValueId()); - updateList.add(entity); + //鏁版嵁搴撲腑鐨勫姩鎬佸垪 + List<DynamicColumnVO> dynamicColumnVOS = dynamicVOMap.getOrDefault(pointExport.getId(), Collections.emptyList()); + Map<String, DynamicColumnVO> databaseMap = dynamicColumnVOS.stream() + .collect(Collectors.toMap(DynamicColumnVO::getLabelValue, Function.identity())); + for (DynamicColumnVO excelVo : pointExport.getDynamicData()) { + String labelValue = excelVo.getLabelValue(); + DynamicColumnVO databaseVo = databaseMap.get(labelValue); + //濡傛灉excel鍊间笉涓虹┖鍒ゅ畾涓烘柊澧炴垨淇敼 + if (excelVo.getColumnValue() != null) { + Integer dynamicId = dictionary.get(labelValue); + DynamicColumnValue entity = new DynamicColumnValue(); + entity.setColumnValue(excelVo.getColumnValue()); + entity.setRefId(pointExport.getId()); + //鏁版嵁搴撴壘涓嶅埌涓烘柊澧炲惁鍒欎负淇敼 + if (databaseVo != null) { + entity.setDynamicColumnId(databaseVo.getId()); + entity.setId(databaseVo.getValueId()); + updateList.add(entity); } else { - //涓嶅瓨鍦ㄥ垯鍙栨秷鏍囩锛屽垹闄� - deleteList.add(vo.getValueId()); - } - } - } else { - //鏁版嵁搴撻噷鏌ヤ笉鍒癳xcel閲岄潰鐨勮繖涓偣浣嶅姩鎬佸垪锛屽叏涓烘柊澧� - List<DynamicColumnVO> dynamicData = pointExport.getDynamicData(); - for (DynamicColumnVO excelData : dynamicData) { - if (excelData.getColumnValue() != null) { - Integer dynamicId = dictionary.get(excelData.getLabelValue()); - DynamicColumnValue entity = new DynamicColumnValue(); - entity.setColumnValue(excelData.getColumnValue()); entity.setDynamicColumnId(dynamicId); - entity.setRefId(pointExport.getId()); insertList.add(entity); } + } else if (databaseVo != null) { + //excel閲屼负绌轰絾鏄暟鎹簱瀛樺湪 鍒犻櫎 + deleteList.add(databaseVo.getValueId()); } } } -- Gitblit v1.8.0