From 926aac10d3306a78aaf19ced841633edb0e4a2b5 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期五, 23 一月 2026 16:16:57 +0800
Subject: [PATCH] 功能优化

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetGridServiceImpl.java |  101 +++++++++++++++++++++++++++++++++-----------------
 1 files changed, 66 insertions(+), 35 deletions(-)

diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetGridServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetGridServiceImpl.java
index 2f75c23..88528a7 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetGridServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetGridServiceImpl.java
@@ -145,6 +145,7 @@
             //鏇存柊閽ュ寵鏌滀俊鎭�
             jkCabinetGridMapper.update(new UpdateWrapper<JkCabinetGrid>().lambda()
                     .set(JkCabinetGrid::getKeyId,jkCabinetGrid.getKeyId())
+                    .set(JkCabinetGrid::getActualLable,keysModel.getRfidLable())
                     .set(JkCabinetGrid::getEditor,loginUserInfo.getId())
                     .set(JkCabinetGrid::getEditDate,DateUtil.getCurrDateTime())
                     .set(JkCabinetGrid::getEditDate, DateUtil.getCurrDateTime())
@@ -259,6 +260,7 @@
                 //鏇存柊閽ュ寵鏌滀俊鎭�
                 jkCabinetGridMapper.update(new UpdateWrapper<JkCabinetGrid>().lambda()
                         .set(JkCabinetGrid::getKeyId,null)
+                        .set(JkCabinetGrid::getActualLable,null)
                         .set(JkCabinetGrid::getEditDate, DateUtil.getCurrDateTime())
                         .eq(JkCabinetGrid::getId,model.getId()));
                 JkKeys keysModel = jkKeysMapper.selectById(model.getKeyId());
@@ -277,6 +279,7 @@
             if(CollectionUtils.isNotEmpty(jkCabinetGridList)){
                 jkCabinetGridMapper.update(new UpdateWrapper<JkCabinetGrid>().lambda()
                         .set(JkCabinetGrid::getKeyId,null)
+                        .set(JkCabinetGrid::getActualLable,null)
                         .set(JkCabinetGrid::getEditDate, DateUtil.getCurrDateTime())
                         .in(JkCabinetGrid::getId,jkCabinetGridList.stream().map(i->i.getId()).collect(Collectors.toList())));
                 List<Integer> keyIdList = jkCabinetGridList.stream().filter(i->Objects.nonNull(i.getKeyId())).map(i->i.getKeyId()).collect(Collectors.toList());
@@ -488,6 +491,14 @@
                                 .set(JkKeys::getStatus,dto.getKeyStatus())
                                 .eq(JkKeys::getId,jkKeys.getId())
                         );
+                        if(Constants.equalsInteger(dto.getKeyStatus(),Constants.ONE)&&
+                                (StringUtils.isBlank(jkCabinetGrid.getActualLable())||!StringUtils.equals(jkCabinetGrid.getActualLable(),jkKeys.getRfidLable()))){
+                            //鏇存柊閽ュ寵瀹為檯缂栫爜
+                            jkCabinetGridMapper.update(null,new UpdateWrapper<JkCabinetGrid>().lambda()
+                                    .set(JkCabinetGrid::getActualLable,jkKeys.getRfidLable())
+                                    .eq(JkCabinetGrid::getId,jkCabinetGrid.getId())
+                            );
+                        }
                     }
                 }
             }
@@ -1144,39 +1155,59 @@
 
 
 
-//    @Override
-//    public void syncGridData(SyncCabinetDTO dto){
-//        if(Objects.isNull(dto)
-//                ||StringUtils.isBlank(dto.getCode())
-//                || CollectionUtils.isEmpty(dto.getGridDTOList())){
-//            return;
-//        }
-//        List<JkCabinetGrid> jkCabinetGridList =
-//                jkCabinetGridMapper.selectJoinList(JkCabinetGrid.class, new MPJLambdaWrapper<JkCabinetGrid>()
-//                        .selectAll(JkCabinetGrid.class)
-//                        .selectAs(JkKeys::getCarCode,JkCabinetGrid::getCarCode)
-//                        .selectAs(JkKeys::getRfidLable,JkCabinetGrid::getKeyCode)
-//                        .selectAs(JkKeys::getStatus,JkCabinetGrid::getKeyStatus)
-//                        .leftJoin(JkKeys.class,JkKeys::getId,JkCabinetGrid::getKeyId)
-//                        .leftJoin(JkCabinet.class,JkCabinet::getId,JkCabinetGrid::getCabinetId)
-//                        .eq(JkCabinet::getCode,dto.getCode())
-//                        .eq(JkCabinetGrid::getIsdeleted,Constants.ZERO)
-//                        .isNotNull(JkCabinetGrid::getBoardCode)
-//                        .isNotNull(JkCabinetGrid::getChannelCode)
-//                        .orderByAsc(JkCabinetGrid::getCode)
-//                );
-//        if(CollectionUtils.isEmpty(jkCabinetGridList)){
-//            return;
-//        }
-//        List<SyncGridDTO> gridDTOList = dto.getGridDTOList();
-//        for (JkCabinetGrid jkCabinetGrid:jkCabinetGridList) {
-//            List<SyncGridDTO> gridSyncList = gridDTOList.stream().filter(i->StringUtils.isNotBlank(i.getBoardCode())&&
-//                    StringUtils.isNotBlank(i.getChannelCode())&&StringUtils.isNotBlank(i.getActualLable())&&i.getBoardCode().equals(jkCabinetGrid.getBoardCode())
-//                    && i.getChannelCode().equals(jkCabinetGrid.getChannelCode())).collect(Collectors.toList());
-//            if(CollectionUtils.isEmpty(gridSyncList)){
-//                continue;
-//            }
-//            SyncGridDTO syncGridDTO = gridSyncList.get(Constants.ZERO);
+    @Override
+    public void syncGridData(SyncCabinetDTO dto){
+        if(Objects.isNull(dto)
+                ||StringUtils.isBlank(dto.getCode())
+                || CollectionUtils.isEmpty(dto.getGridDTOList())){
+            return;
+        }
+        List<JkCabinetGrid> jkCabinetGridList =
+                jkCabinetGridMapper.selectJoinList(JkCabinetGrid.class, new MPJLambdaWrapper<JkCabinetGrid>()
+                        .selectAll(JkCabinetGrid.class)
+                        .selectAs(JkKeys::getCarCode,JkCabinetGrid::getCarCode)
+                        .selectAs(JkKeys::getRfidLable,JkCabinetGrid::getKeyCode)
+                        .selectAs(JkKeys::getStatus,JkCabinetGrid::getKeyStatus)
+                        .leftJoin(JkKeys.class,JkKeys::getId,JkCabinetGrid::getKeyId)
+                        .leftJoin(JkCabinet.class,JkCabinet::getId,JkCabinetGrid::getCabinetId)
+                        .eq(JkCabinet::getCode,dto.getCode())
+                        .eq(JkCabinetGrid::getIsdeleted,Constants.ZERO)
+                        .isNotNull(JkCabinetGrid::getBoardCode)
+                        .isNotNull(JkCabinetGrid::getChannelCode)
+                        .orderByAsc(JkCabinetGrid::getCode)
+                );
+        if(CollectionUtils.isEmpty(jkCabinetGridList)){
+            return;
+        }
+        List<SyncGridDTO> gridDTOList = dto.getGridDTOList();
+        for (JkCabinetGrid jkCabinetGrid:jkCabinetGridList) {
+            List<SyncGridDTO> gridSyncList = gridDTOList.stream().filter(i->StringUtils.isNotBlank(i.getBoardCode())&&
+                    StringUtils.isNotBlank(i.getChannelCode())&&i.getBoardCode().equals(jkCabinetGrid.getBoardCode())
+                    && i.getChannelCode().equals(jkCabinetGrid.getChannelCode())).collect(Collectors.toList());
+            if(CollectionUtils.isEmpty(gridSyncList)){
+                continue;
+            }
+            SyncGridDTO syncGridDTO = gridSyncList.get(Constants.ZERO);
+            //涓虹┖鐨勬儏鍐� 鎴� 閽ュ寵涓庢煖鏍奸挜鍖欎笉涓�鑷� 鏍囪閽ュ寵涓嶅湪浣�
+            if(StringUtils.isBlank(syncGridDTO.getActualLable())
+                || !jkCabinetGrid.getKeyCode().equals(syncGridDTO.getActualLable())
+            ){
+                if(Constants.equalsInteger(jkCabinetGrid.getKeyStatus(),Constants.ONE)){
+                    jkKeysMapper.update(null,new UpdateWrapper<JkKeys>().lambda()
+                            .set(JkKeys::getStatus,Constants.TWO)
+                            .eq(JkKeys::getId,jkCabinetGrid.getKeyId())
+                    );
+                    log.error("閽ュ寵鏌滀俊鎭帹閫佸疄闄呴挜鍖欏彉鍖栵細"+jkCabinetGrid.getKeyCode());
+                }
+            }else{
+                if(!Constants.equalsInteger(jkCabinetGrid.getKeyStatus(),Constants.ONE)){
+                    jkKeysMapper.update(null,new UpdateWrapper<JkKeys>().lambda()
+                            .set(JkKeys::getStatus,Constants.ONE)
+                            .eq(JkKeys::getId,jkCabinetGrid.getKeyId())
+                    );
+                    log.error("閽ュ寵鏌滀俊鎭帹閫佸疄闄呴挜鍖欏彉鍖栵細"+jkCabinetGrid.getKeyCode());
+                }
+            }
 //            if(StringUtils.isBlank(jkCabinetGrid.getKeyCode())
 //                    || (!jkCabinetGrid.getKeyCode().equals(syncGridDTO.getActualLable())
 //                    && !jkCabinetGrid.getActualLable().equals(syncGridDTO.getActualLable()))){
@@ -1186,8 +1217,8 @@
 //                        .eq(JkCabinetGrid::getId,jkCabinetGrid.getId())
 //                );
 //            }
-//        }
-//    }
+        }
+    }
 
 
 

--
Gitblit v1.9.3