From c467370d8741bc05ca7c22d4253c58ac0a979ef5 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期二, 09 六月 2026 09:46:25 +0800
Subject: [PATCH] 功能优化

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetGridServiceImpl.java |  183 ++++++++++++++++++++++++++++++++++++---------
 1 files changed, 146 insertions(+), 37 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..617ac0f 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
@@ -4,7 +4,6 @@
 import com.doumee.biz.system.SystemDictDataBiz;
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.dingTalk.DingTalk;
-import com.doumee.core.dingTalk.DingTalkStream;
 import com.doumee.core.exception.BusinessException;
 import com.doumee.core.haikang.model.HKConstants;
 import com.doumee.core.jiandaoyun.api.arch.DeptApiClient;
@@ -56,6 +55,9 @@
 
     @Autowired
     private JkKeysMapper jkKeysMapper;
+
+    @Autowired
+    private CarsMapper carsMapper;
 
     @Autowired
     private SystemUserMapper systemUserMapper;
@@ -145,6 +147,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 +262,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 +281,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 +493,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())
+                            );
+                        }
                     }
                 }
             }
@@ -754,6 +767,26 @@
         }
     }
 
+    public static void main(String[] args) {
+        try {
+            JkCabinetGridServiceImpl temp = new JkCabinetGridServiceImpl();
+            FormDataApiClient apiClient = new FormDataApiClient("B4eyPmjtnvnameAKq5lbDLdRZi18VQ3p"  ,"https://lcdp.ahyc.com.cn:30443/api/");
+            FormDataCreateParam param  =new FormDataCreateParam();
+            WarningEvent warningEvent = new WarningEvent();
+            warningEvent.setTitle("璺ㄨ秺鐢熶骇绾�(娴嬭瘯锛�");
+            warningEvent.setContent("璺ㄨ秺鐢熶骇绾�-鑺滄箹鍖楀洿澧欒繃閬撲笢-鏋紙璺ㄨ秺锛�");
+            param.setData( temp.getJdyChildData(warningEvent,"gaoyf_b"));
+            param.setApp_id("6954aca3cdf8fb470ca1aabd");
+            param.setEntry_id("6954aca6ff1c406a1d7b9afa");
+            param.setIs_start_trigger(false);
+            param.setIs_start_trigger(true);
+            Map<String, Object>  response =  apiClient.singleDataCreate(param,apiClient.getDefaultVersion());
+            log.error(JSONObject.toJSONString(response));
+        }catch (Exception e){
+
+        }
+
+    }
 
     /**
      * 绠�閬撲簯娑堟伅鎺ㄩ�� 瀹氬埗
@@ -773,6 +806,7 @@
             param.setEntry_id(entryId);
             param.setIs_start_trigger(false);
             param.setIs_start_trigger(true);
+            log.error("绠�閬撲簯鍙戦�侀�氱煡[getJDYData]璇锋眰鍏ュ弬====>" + JSONObject.toJSONString(param) );
             Map<String, Object>  response =  apiClient.singleDataCreate(param,apiClient.getDefaultVersion());
             /*
              Map<String,Object> map = new HashMap<>();
@@ -793,7 +827,7 @@
                     .addHeader("Content-Type", "application/json")
                     .build();
             Response response = client.newCall(request).execute();*/
-            log.error("绠�閬撲簯鍙戦�侀�氱煡杩斿洖淇℃伅" + JSONObject.toJSONString(response));
+            log.error("绠�閬撲簯鍙戦�侀�氱煡[getJDYData]杩斿洖淇℃伅" + JSONObject.toJSONString(response));
         }catch (Exception e){
             log.error("绠�閬撲簯鍙戦�侀�氱煡杩斿洖淇℃伅寮傚父锛�" + e.getMessage());
         }
@@ -1144,39 +1178,114 @@
 
 
 
-//    @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)
+                        .selectAs(JkKeys::getCarId,JkCabinetGrid::getCarId)
+                        .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());
+                    JkCabinetLog cabinetLog = new JkCabinetLog();
+                    cabinetLog.setKeyInfo(jkCabinetGrid.getCarCode() + " " + jkCabinetGrid.getKeyCode());
+                    JkKeys jkKeys = jkKeysMapper.selectById(jkCabinetGrid.getKeyId());
+                    if(Objects.nonNull(jkKeys)){
+                        cabinetLog.setKeyInfo(jkCabinetGrid.getCarCode() + " " + jkKeys.getCode());
+                        Cars cars = carsMapper.selectById(jkCabinetGrid.getCarId());
+                        if(Objects.nonNull(cars)){
+                            cabinetLog.setMemberId(cars.getMemberId());
+                        }
+                    }
+                    cabinetLog.setCabinetId(jkCabinetGrid.getCabinetId());
+                    cabinetLog.setGridId(jkCabinetGrid.getId());
+                    cabinetLog.setKeyId(jkCabinetGrid.getKeyId());
+                    cabinetLog.setCarId(jkCabinetGrid.getCarId());
+                    cabinetLog.setType(Constants.ONE);
+                    cabinetLog.setStatus(Constants.ZERO);
+                    cabinetLog.setAuthType(3);
+                    cabinetLog.setKeyStatus(Constants.TWO);
+                    cabinetLog.setIsNotice(Constants.ZERO);
+                    cabinetLog.setInfo("纭欢鍚屾-閽ュ寵涓嶅湪浣�");
+                    cabinetLog.setIsdeleted(Constants.ZERO);
+                    cabinetLog.setCreateDate(new Date());
+                    jkCabinetLogMapper.insert(cabinetLog);
+                }
+            }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());
+                    JkCabinetLog cabinetLog = new JkCabinetLog();
+                    cabinetLog.setKeyInfo(jkCabinetGrid.getCarCode() + " " + jkCabinetGrid.getKeyCode());
+                    JkKeys jkKeys = jkKeysMapper.selectById(jkCabinetGrid.getKeyId());
+                    if(Objects.nonNull(jkKeys)){
+                        cabinetLog.setKeyInfo(jkCabinetGrid.getCarCode() + " " + jkKeys.getCode());
+                        Cars cars = carsMapper.selectById(jkCabinetGrid.getCarId());
+                        if(Objects.nonNull(cars)){
+                            cabinetLog.setMemberId(cars.getMemberId());
+                        }
+                    }
+                    cabinetLog.setCabinetId(jkCabinetGrid.getCabinetId());
+                    cabinetLog.setGridId(jkCabinetGrid.getId());
+                    cabinetLog.setKeyId(jkCabinetGrid.getKeyId());
+                    cabinetLog.setCarId(jkCabinetGrid.getCarId());
+                    cabinetLog.setType(Constants.ONE);
+                    cabinetLog.setStatus(Constants.ZERO);
+                    cabinetLog.setAuthType(3);
+                    cabinetLog.setKeyStatus(Constants.ONE);
+                    cabinetLog.setIsNotice(Constants.ZERO);
+                    cabinetLog.setInfo("纭欢鍚屾-閽ュ寵鍦ㄤ綅");
+                    cabinetLog.setIsdeleted(Constants.ZERO);
+                    cabinetLog.setCreateDate(new Date());
+                    jkCabinetLogMapper.insert(cabinetLog);
+
+                    jkCabinetLogMapper.update(null,new UpdateWrapper<JkCabinetLog>().lambda()
+                            .set(JkCabinetLog::getCloseLogId,cabinetLog.getId())
+                            .eq(JkCabinetLog::getKeyId,cabinetLog.getKeyId())
+                            .eq(JkCabinetLog::getType,Constants.ONE)
+                            .eq(JkCabinetLog::getKeyStatus,Constants.TWO)
+                            .isNull(JkCabinetLog::getCloseLogId));
+
+                }
+            }
 //            if(StringUtils.isBlank(jkCabinetGrid.getKeyCode())
 //                    || (!jkCabinetGrid.getKeyCode().equals(syncGridDTO.getActualLable())
 //                    && !jkCabinetGrid.getActualLable().equals(syncGridDTO.getActualLable()))){
@@ -1186,8 +1295,8 @@
 //                        .eq(JkCabinetGrid::getId,jkCabinetGrid.getId())
 //                );
 //            }
-//        }
-//    }
+        }
+    }
 
 
 

--
Gitblit v1.9.3