hecheng 3 éve
szülő
commit
e25eee8731

+ 5 - 1
zd-api/zd-api-system/src/main/java/com/zd/system/api/airbottle/RemoteAirBottleService.java

@@ -4,16 +4,20 @@ import com.zd.common.core.constant.ServiceNameConstants;
 import com.zd.common.core.domain.R;
 import com.zd.system.api.airbottle.factory.RemoteAirBottleFallbackFactory;
 import com.zd.system.api.domain.InventoryTag;
-import com.zd.system.api.laboratory.domain.RemoteLabHardware;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 
+/**
+ * @author Administrator
+ */
 @FeignClient(contextId = "remoteAirBottleService", value = ServiceNameConstants.AIR_BOTTLE_SERVICE, fallbackFactory = RemoteAirBottleFallbackFactory.class)
 public interface RemoteAirBottleService {
 
     /**
      * 识别器新增报警记录
+     * @param tag 标签数据
+     * @return R<Boolean>
      */
     @PostMapping("alarm/record/remote/add")
     R<Boolean> remoteAdd(@RequestBody InventoryTag tag);

+ 5 - 0
zd-common/zd-common-core/src/main/java/com/zd/common/core/constant/ServiceNameConstants.java

@@ -63,6 +63,11 @@ public class ServiceNameConstants {
     public static final String AIR_BOTTLE_SERVICE = "zd-airbottle";
 
     /**
+     * 气瓶服务
+     */
+    public static final String BOTTLE_SERVICE = "zd-bottle";
+
+    /**
      * 消息服务
      */
     public static final String MESSAGE_SERVICE = "zd-message";

+ 24 - 0
zd-modules/zd-bottle-parent/zd-bottle-api/src/main/java/com/zd/bottle/feign/RemoteBottleFallbackFactory.java

@@ -0,0 +1,24 @@
+package com.zd.bottle.feign;
+
+import com.zd.bottle.feign.service.RemoteBottleService;
+import com.zd.common.core.domain.R;
+import com.zd.system.api.airbottle.RemoteAirBottleService;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.cloud.openfeign.FallbackFactory;
+import org.springframework.stereotype.Component;
+
+/**
+ * @author Administrator
+ */
+@Component
+public class RemoteBottleFallbackFactory implements FallbackFactory<RemoteBottleService> {
+
+    private static final Logger log = LoggerFactory.getLogger(RemoteBottleFallbackFactory.class);
+
+    @Override
+    public RemoteBottleService create(Throwable throwable) {
+        log.error("气瓶服务调用失败:{}", throwable.getMessage());
+        return tag -> R.fail("新增报警记录失败:" + throwable.getMessage());
+    }
+}

+ 26 - 0
zd-modules/zd-bottle-parent/zd-bottle-api/src/main/java/com/zd/bottle/feign/service/RemoteBottleService.java

@@ -0,0 +1,26 @@
+package com.zd.bottle.feign.service;
+
+import com.zd.bottle.feign.RemoteBottleFallbackFactory;
+import com.zd.common.core.constant.ServiceNameConstants;
+import com.zd.common.core.domain.R;
+import com.zd.system.api.airbottle.factory.RemoteAirBottleFallbackFactory;
+import com.zd.system.api.domain.InventoryTag;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+
+/**
+ * @author Administrator
+ */
+@FeignClient(contextId = "remoteBottleService", value = ServiceNameConstants.BOTTLE_SERVICE, fallbackFactory = RemoteBottleFallbackFactory.class)
+public interface RemoteBottleService {
+
+    /**
+     * 识别器新增报警记录
+     * @param tag 标签信息
+     * @return R<Boolean>
+     */
+    @PostMapping("alarm/record/remote/add")
+    R<Boolean> remoteAdd(@RequestBody InventoryTag tag);
+
+}

+ 6 - 0
zd-modules/zd-netty/pom.xml

@@ -144,6 +144,12 @@
             <scope>system</scope>
             <systemPath>${project.basedir}/src/main/resources/libs/reader.jar</systemPath>
         </dependency>
+        <dependency>
+            <groupId>com.zd</groupId>
+            <artifactId>zd-bottle-api</artifactId>
+            <version>${project.version}</version>
+            <scope>compile</scope>
+        </dependency>
     </dependencies>
     <build>
         <finalName>${project.artifactId}</finalName>

+ 27 - 2
zd-modules/zd-netty/src/main/java/com/zd/netty/service/impl/SendServiceImpl.java

@@ -1,5 +1,6 @@
 package com.zd.netty.service.impl;
 
+import com.zd.bottle.feign.service.RemoteBottleService;
 import com.zd.netty.service.ISendService;
 import com.zd.system.api.airbottle.RemoteAirBottleService;
 import com.zd.system.api.chemical.RemoteStockService;
@@ -13,6 +14,9 @@ import javax.annotation.Resource;
 
 import static com.zd.netty.constant.RfidConstants.*;
 
+/**
+ * @author Administrator
+ */
 @Slf4j
 @Service(value = "sendService")
 public class SendServiceImpl implements ISendService {
@@ -22,6 +26,9 @@ public class SendServiceImpl implements ISendService {
     @Resource
     private RemoteAirBottleService bottleService;
 
+    @Resource
+    private RemoteBottleService remoteBottleService;
+
 
     @Override
     public void send(InventoryTag tag) {
@@ -39,6 +46,11 @@ public class SendServiceImpl implements ISendService {
                 log.info("气瓶服务异常:" + e.getMessage());
             }
             try {
+                remoteBottleService.remoteAdd(tag);
+            } catch (Exception e) {
+                log.info("新气瓶服务异常:" + e.getMessage());
+            }
+            try {
                 remoteStockService.rfidCheck(tag);
             } catch (Exception e) {
                 log.info("化学品服务异常:" + e.getMessage());
@@ -62,10 +74,23 @@ public class SendServiceImpl implements ISendService {
 
     private void sendTag(InventoryTag tag, String temp) {
         if (ALL_TYPE.equals(temp) || BOTTLE_TYPE.equals(temp)) {
-            bottleService.remoteAdd(tag);
+            try {
+                bottleService.remoteAdd(tag);
+            } catch (Exception e) {
+                log.info("气瓶服务异常:" + e.getMessage());
+            }
+            try {
+                remoteBottleService.remoteAdd(tag);
+            } catch (Exception e) {
+                log.info("新气瓶服务异常:" + e.getMessage());
+            }
         }
         if (ALL_TYPE.equals(temp) || CHEMICAL_TYPE.equals(temp)) {
-            remoteStockService.rfidCheck(tag);
+            try {
+                remoteStockService.rfidCheck(tag);
+            } catch (Exception e) {
+                log.info("化学品服务异常:" + e.getMessage());
+            }
         }
     }