From 2682d41ae695936d9c23f8a53fa5db726ca156a6 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期四, 03 八月 2023 17:43:39 +0800
Subject: [PATCH] 优化代码

---
 service-job/src/main/java/com/java110/job/smo/impl/DataBusInnerServiceSMOImpl.java |   47 +++++++++++++++++++++++++++++++++--------------
 1 files changed, 33 insertions(+), 14 deletions(-)

diff --git a/service-job/src/main/java/com/java110/job/smo/impl/DataBusInnerServiceSMOImpl.java b/service-job/src/main/java/com/java110/job/smo/impl/DataBusInnerServiceSMOImpl.java
index 827c02c..d0ca45d 100755
--- a/service-job/src/main/java/com/java110/job/smo/impl/DataBusInnerServiceSMOImpl.java
+++ b/service-job/src/main/java/com/java110/job/smo/impl/DataBusInnerServiceSMOImpl.java
@@ -3,14 +3,16 @@
 
 import com.alibaba.fastjson.JSONObject;
 import com.java110.core.base.smo.BaseServiceSMO;
+import com.java110.dto.data.DatabusQueueDataDto;
 import com.java110.dto.system.BusinessDatabusDto;
-import com.java110.dto.system.CustomBusinessDatabusDto;
+import com.java110.dto.data.DatabusDataDto;
 import com.java110.dto.machine.CarInoutDto;
 import com.java110.dto.machine.MachineDto;
 import com.java110.dto.fee.TempCarPayOrderDto;
 import com.java110.dto.system.Business;
 import com.java110.intf.job.IDataBusInnerServiceSMO;
 import com.java110.job.adapt.IDatabusAdapt;
+import com.java110.job.databus.DatabusDataQueue;
 import com.java110.utils.cache.DatabusCache;
 import com.java110.utils.factory.ApplicationContextFactory;
 import com.java110.vo.ResultVo;
@@ -19,6 +21,7 @@
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.util.ArrayList;
 import java.util.List;
 
 /**
@@ -48,7 +51,7 @@
         for (Business business : businesses) {
             doExchange(business, businesses, databusDtos);
         }
-        return false;
+        return true;
     }
 
     @Override
@@ -57,6 +60,7 @@
         return databusAdaptImpl.openDoor(reqJson);
 
     }
+
     @Override
     public ResultVo closeDoor(@RequestBody JSONObject reqJson) {
         IDatabusAdapt databusAdaptImpl = ApplicationContextFactory.getBean(DEFAULT_OPEN_DOOR_PROTOCOL, IDatabusAdapt.class);
@@ -88,8 +92,6 @@
         IDatabusAdapt databusAdaptImpl = ApplicationContextFactory.getBean(DEFAULT_OPEN_DOOR_PROTOCOL, IDatabusAdapt.class);
         return databusAdaptImpl.heartbeatVideo(reqJson);
     }
-
-
 
 
     @Override
@@ -145,23 +147,37 @@
     /**
      * 闂ㄧ寮�闂ㄨ褰�
      *
-     * @param customBusinessDatabusDto
+     * @param databusDataDto
      * @return
      */
     @Override
-    public void customExchange(@RequestBody CustomBusinessDatabusDto customBusinessDatabusDto) {
-        IDatabusAdapt databusAdaptImpl = null;
+    public boolean databusData(@RequestBody DatabusDataDto databusDataDto) {
+        // IDatabusAdapt databusAdaptImpl = null;
         List<BusinessDatabusDto> databusDtos = DatabusCache.getDatabuss();
+        Business business = null;
+        List<Business> businesses = null;
         for (BusinessDatabusDto databusDto : databusDtos) {
             try {
-                if (customBusinessDatabusDto.getBusinessTypeCd().equals(databusDto.getBusinessTypeCd())) {
-                    databusAdaptImpl = ApplicationContextFactory.getBean(databusDto.getBeanName(), IDatabusAdapt.class);
-                    databusAdaptImpl.customExchange(customBusinessDatabusDto);
+                if (!databusDataDto.getBusinessTypeCd().equals(databusDto.getBusinessTypeCd())) {
+                    continue;
                 }
+                businesses = new ArrayList<>();
+                business = new Business();
+                business.setData(databusDataDto.getData());
+                business.setBusinessTypeCd(databusDataDto.getBusinessTypeCd());
+                businesses.add(business);
+                //todo 瀛樻斁闃熷垪涓�
+                DatabusDataQueue.addMsg(new DatabusQueueDataDto(databusDto.getBeanName(), business, businesses));
+
+//                databusAdaptImpl = ApplicationContextFactory.getBean(databusDto.getBeanName(), IDatabusAdapt.class);
+//                databusAdaptImpl.customExchange(customBusinessDatabusDto);
             } catch (Exception e) {
                 logger.error("鎵цdatabus澶辫触", e);
             }
         }
+
+        return true;
+
     }
 
 
@@ -173,13 +189,16 @@
      * @param databusDtos databus
      */
     private void doExchange(Business business, List<Business> businesses, List<BusinessDatabusDto> databusDtos) {
-        IDatabusAdapt databusAdaptImpl = null;
+        // IDatabusAdapt databusAdaptImpl = null;
         for (BusinessDatabusDto databusDto : databusDtos) {
             try {
-                if (business.getBusinessTypeCd().equals(databusDto.getBusinessTypeCd())) {
-                    databusAdaptImpl = ApplicationContextFactory.getBean(databusDto.getBeanName(), IDatabusAdapt.class);
-                    databusAdaptImpl.execute(business, businesses);
+                if (!business.getBusinessTypeCd().equals(databusDto.getBusinessTypeCd())) {
+                    continue;
                 }
+                //todo 瀛樻斁闃熷垪涓�
+                DatabusDataQueue.addMsg(new DatabusQueueDataDto(databusDto.getBeanName(), business, businesses));
+//                    databusAdaptImpl = ApplicationContextFactory.getBean(databusDto.getBeanName(), IDatabusAdapt.class);
+//                    databusAdaptImpl.execute(business, businesses);
             } catch (Exception e) {
                 logger.error("鎵цdatabus澶辫触", e);
             }

--
Gitblit v1.8.0