Bläddra i källkod

工作报告独立服务

fuyuchuan 3 veckor sedan
förälder
incheckning
75fd15d0c7

+ 6 - 0
service-job/pom.xml

@@ -70,6 +70,12 @@
             <scope>compile</scope>
         </dependency>
 
+        <dependency>
+            <groupId>com.usky</groupId>
+            <artifactId>service-pm-api</artifactId>
+            <version>0.0.1</version>
+            <scope>compile</scope>
+        </dependency>
     </dependencies>
 
     <build>

+ 6 - 6
service-job/src/main/java/com/ruoyi/job/task/RyTask.java

@@ -3,8 +3,8 @@ package com.ruoyi.job.task;
 import com.usky.common.core.utils.StringUtils;
 import com.usky.demo.RemoteMeetingService;
 import com.usky.fire.RemoteFireService;
-import com.usky.iot.RemoteIotTaskService;
-import com.usky.iot.RemotePmService;
+import com.usky.pm.RemotePmTaskService;
+import com.usky.pm.RemotePmService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -19,10 +19,10 @@ public class RyTask {
     private RemoteFireService remoteFireService;
 
     @Autowired
-    private RemotePmService remotePmService;
+    private RemotePmService remoteIotService;
 
     @Autowired
-    private RemoteIotTaskService remoteIotTaskService;
+    private RemotePmTaskService remoteIotTaskService;
 
     @Autowired
     private RemoteMeetingService remoteMeetingService;
@@ -47,7 +47,7 @@ public class RyTask {
     // 工作报告定时发送
     public void executeTimedSending() {
         System.out.println("executeTimedSending start........");
-        remotePmService.executeTimedSending();
+        remoteIotService.executeTimedSending();
     }
 
     public void dataOverviewJobData(){
@@ -78,7 +78,7 @@ public class RyTask {
     // 报告提交提醒
     public void reportSubmissionReminder(){
         System.out.println("reportSubmissionReminder start......");
-        remotePmService.reportSubmissionReminder();
+        remoteIotService.reportSubmissionReminder();
     }
 
 }

+ 29 - 0
service-pm/service-pm-api/src/main/java/com/usky/pm/RemotePmTaskService.java

@@ -0,0 +1,29 @@
+package com.usky.pm;
+
+
+import com.usky.pm.factory.RemotePmTaskFactory;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+
+@FeignClient(contextId = "RemotePmTaskService", value = "service-pm" , fallbackFactory = RemotePmTaskFactory.class)
+public interface RemotePmTaskService {
+
+    @GetMapping("/dataOverviewJobData")
+    void dataOverviewJobData();
+
+    @GetMapping("/deviceStatus")
+    void deviceStatus();
+
+    @GetMapping("/deviceOffLineAlarm")
+    void deviceOffLineAlarm();
+
+    @GetMapping("/customInfoStatus")
+    void customInfoStatus();
+
+    @GetMapping("/addDeviceInfo")
+    void addDeviceInfo(@RequestParam("productCode") String productCode, @RequestParam(value = "deviceUuid") String deviceUuid, @RequestParam(value = "deviceId") String deviceId, @RequestParam(value = "deviceName") String deviceName, @RequestParam(value = "installAddress") String installAddress, @RequestParam(value = "serviceStatus") Integer serviceStatus);
+
+    @GetMapping("/deleteDeviceInfo")
+    void deleteDeviceInfo(@RequestParam(value = "deviceUuid") String deviceUuid);
+}

+ 59 - 0
service-pm/service-pm-api/src/main/java/com/usky/pm/factory/RemotePmTaskFactory.java

@@ -0,0 +1,59 @@
+package com.usky.pm.factory;
+
+import com.usky.common.core.exception.FeignBadRequestException;
+import com.usky.pm.RemotePmTaskService;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.cloud.openfeign.FallbackFactory;
+import org.springframework.stereotype.Component;
+
+
+/**
+ * 用户服务降级处理
+ *
+ * @author ruoyi
+ */
+@Component
+public class RemotePmTaskFactory implements FallbackFactory<RemotePmTaskService>
+{
+    private static final Logger log = LoggerFactory.getLogger(RemotePmTaskFactory.class);
+
+    @Override
+    public RemotePmTaskService create(Throwable throwable)
+    {
+        log.error("用户服务调用失败:{}", throwable.getMessage());
+        return new RemotePmTaskService()
+        {
+            @Override
+            public void dataOverviewJobData() {
+                throw new FeignBadRequestException(500,"数据概览数据定时生成异常"+throwable.getMessage());
+            }
+
+            @Override
+            public void deviceStatus() {
+                throw new FeignBadRequestException(500,"定时同步设备状态异常"+throwable.getMessage());
+            }
+
+            @Override
+            public void deviceOffLineAlarm() {
+                throw new FeignBadRequestException(500,"定时同步设备离线告警数据异常"+throwable.getMessage());
+            }
+
+            @Override
+            public void customInfoStatus() {
+                throw new FeignBadRequestException(500,"定时同步客户信息状态异常"+throwable.getMessage());
+            }
+
+            @Override
+            public void addDeviceInfo(String productCode, String deviceUuid, String deviceId, String deviceName, String installAddress, Integer serviceStatus) {
+                throw new FeignBadRequestException(500,"新增设备信息异常"+throwable.getMessage());
+            }
+
+            @Override
+            public void deleteDeviceInfo(String deviceUuid) {
+                throw new FeignBadRequestException(500,"删除设备信息异常"+throwable.getMessage());
+            }
+
+        };
+    }
+}

+ 0 - 80
service-pm/service-pm-biz/pom.xml

@@ -14,22 +14,6 @@
             <artifactId>common-cloud-starter</artifactId>
         </dependency>
 
-        <dependency>
-            <groupId>com.usky</groupId>
-            <artifactId>service-backend-api</artifactId>
-            <version>0.0.1</version>
-        </dependency>
-        <dependency>
-            <groupId>com.usky</groupId>
-            <artifactId>data-tsdb-proxy-api</artifactId>
-            <version>0.0.1</version>
-        </dependency>
-        <dependency>
-            <groupId>com.usky</groupId>
-            <artifactId>data-transfer-api</artifactId>
-            <version>0.0.1</version>
-        </dependency>
-
         <dependency>
             <groupId>com.usky</groupId>
             <artifactId>service-pm-api</artifactId>
@@ -42,40 +26,6 @@
             <version>4.1.0</version>
         </dependency>
 
-        <dependency>
-            <groupId>com.aliyun</groupId>
-            <artifactId>aliyun-java-sdk-core</artifactId>
-            <version>4.5.16</version>
-        </dependency>
-
-        <dependency>
-            <groupId>com.aliyun</groupId>
-            <artifactId>aliyun-java-sdk-dysmsapi</artifactId>
-            <version>1.1.0</version>
-        </dependency>
-
-        <!--MQTT依赖-->
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-integration</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>org.springframework.integration</groupId>
-            <artifactId>spring-integration-mqtt</artifactId>
-        </dependency>
-        <!--websocket依赖-->
-        <dependency>
-            <groupId>org.springframework</groupId>
-            <artifactId>spring-websocket</artifactId>
-            <version>5.2.8.RELEASE</version>
-        </dependency>
-        <dependency>
-            <groupId>com.usky</groupId>
-            <artifactId>service-agbox-api</artifactId>
-            <version>0.0.1</version>
-            <scope>compile</scope>
-        </dependency>
 
         <dependency>
             <groupId>com.usky</groupId>
@@ -83,21 +33,10 @@
             <version>0.0.1</version>
         </dependency>
 
-        <dependency>
-            <groupId>com.github.binarywang</groupId>
-            <artifactId>weixin-java-mp</artifactId>
-            <version>4.3.0</version>
-        </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-amqp</artifactId>
         </dependency>
-        <dependency>
-            <groupId>com.usky</groupId>
-            <artifactId>service-alarm-api</artifactId>
-            <version>0.0.1</version>
-            <scope>compile</scope>
-        </dependency>
 
         <dependency>
             <groupId>com.usky</groupId>
@@ -117,25 +56,6 @@
             <artifactId>alibaba-dingtalk-service-sdk</artifactId>
             <version>2.0.0</version>
         </dependency>
-        <dependency>
-            <groupId>com.usky</groupId>
-            <artifactId>service-pm</artifactId>
-            <version>0.0.1</version>
-            <scope>compile</scope>
-        </dependency>
-        <dependency>
-            <groupId>com.usky</groupId>
-            <artifactId>service-pm-api</artifactId>
-            <version>0.0.1</version>
-            <scope>compile</scope>
-        </dependency>
-        <dependency>
-            <groupId>com.usky</groupId>
-            <artifactId>service-pm-api</artifactId>
-            <version>0.0.1</version>
-            <scope>compile</scope>
-        </dependency>
-
     </dependencies>
 
     <build>

+ 0 - 75
service-pm/service-pm-biz/src/main/java/com/usky/pm/service/config/websocket/WebSocket.java

@@ -1,75 +0,0 @@
-package com.usky.pm.service.config.websocket;
-
-import cn.hutool.json.JSONUtil;
-import org.springframework.stereotype.Component;
-
-import javax.websocket.OnClose;
-import javax.websocket.OnMessage;
-import javax.websocket.OnOpen;
-import javax.websocket.Session;
-import javax.websocket.server.PathParam;
-import javax.websocket.server.ServerEndpoint;
-import java.io.IOException;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
-
-@ServerEndpoint(value = "/websocket/{userId}")
-@Component
-public class WebSocket {
-    private static ConcurrentHashMap<String, WebSocket> webSocketMap = new ConcurrentHashMap<>();
-    //实例一个session,这个session是websocket的session
-    private Session session;
-
-    //新增一个方法用于主动向客户端发送消息
-    public void sendMessage(Object message, String userId) {
-        Iterator<Map.Entry<String, WebSocket>> iterator = webSocketMap.entrySet().iterator();
-        while (iterator.hasNext()) {
-            Map.Entry<String, WebSocket> entry = iterator.next();
-            int index = entry.getKey().indexOf(",");
-            String result = entry.getKey().substring(0, index);
-            if (result.equals(userId)){
-                if (entry.getValue() != null) {
-                    try {
-                        entry.getValue().session.getBasicRemote().sendText(JSONUtil.toJsonStr(message));
-                        System.out.println("【websocket消息】发送消息成功,用户=" + userId + ",消息内容" + message.toString());
-                    } catch (IOException e) {
-                        e.printStackTrace();
-                    }
-                }
-            }
-        }
-    }
-
-    public static ConcurrentHashMap<String, WebSocket> getWebSocketMap() {
-        return webSocketMap;
-    }
-
-    public static void setWebSocketMap(ConcurrentHashMap<String, WebSocket> webSocketMap) {
-        WebSocket.webSocketMap = webSocketMap;
-    }
-
-    //前端请求时一个websocket时
-    @OnOpen
-    public void onOpen(Session session, @PathParam("userId") String userId) {
-        this.session = session;
-        webSocketMap.put(userId, this);
-        sendMessage("CONNECT_SUCCESS", userId);
-        System.out.println("【websocket消息】有新的连接,连接id" + userId);
-    }
-
-    //前端关闭时一个websocket时
-    @OnClose
-    public void onClose(@PathParam("userId") String userId) {
-        webSocketMap.remove(userId);
-        System.out.println("【websocket消息】连接断开,总数:" + webSocketMap.size());
-    }
-
-    //前端向后端发送消息
-    @OnMessage
-    public void onMessage(String message) {
-        if (!message.equals("ping")) {
-            System.out.println("【websocket消息】收到客户端发来的消息:" + message);
-        }
-    }
-}

+ 0 - 16
service-pm/service-pm-biz/src/main/java/com/usky/pm/service/config/websocket/WebSocketConfig.java

@@ -1,16 +0,0 @@
-package com.usky.pm.service.config.websocket;
-
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.web.socket.server.standard.ServerEndpointExporter;
-
-//开启WebSocket的支持,并把该类注入到spring容器中
-@Configuration
-public class WebSocketConfig {
-
-    @Bean
-    public ServerEndpointExporter serverEndpointExporter() {
-        return new ServerEndpointExporter();
-    }
-
-}