From c34415c583b097c5ad3a19684557d97402d2f230 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期四, 10 十月 2024 00:30:27 +0800
Subject: [PATCH] appId同步

---
 collect/src/main/java/com/qianwen/mdc/collect/entity/mgr/WorkstationAppMapping.java     |   13 +++++++------
 collect/src/main/resources/application-dev.yml                                          |    4 ++--
 collect/src/main/java/com/qianwen/mdc/collect/service/WorkstationAppMappingService.java |    1 +
 collect/src/main/java/com/qianwen/mdc/collect/config/MqttConfig.java                    |   15 +++++++++++++--
 4 files changed, 23 insertions(+), 10 deletions(-)

diff --git a/collect/src/main/java/com/qianwen/mdc/collect/config/MqttConfig.java b/collect/src/main/java/com/qianwen/mdc/collect/config/MqttConfig.java
index ec769d0..df16c29 100644
--- a/collect/src/main/java/com/qianwen/mdc/collect/config/MqttConfig.java
+++ b/collect/src/main/java/com/qianwen/mdc/collect/config/MqttConfig.java
@@ -23,6 +23,7 @@
 
 import com.qianwen.mdc.collect.service.DeviceStateFixPointService;
 import com.qianwen.mdc.collect.service.IOTMqttReceiveService;
+import com.qianwen.mdc.collect.service.WorkstationAppMappingService;
 import com.qianwen.mdc.collect.service.feedback.WorkstationFeedbackService;
 
 import cn.hutool.core.date.DateTime;
@@ -47,6 +48,10 @@
 	
 	@Autowired
     private WorkstationFeedbackService workstationFeedbackService;
+	
+	@Autowired
+    private WorkstationAppMappingService workstationAppMappingService;
+	
 	public static final String COLLECT_DATA_TOPIC = "forward/test";
 	
 	/**
@@ -55,6 +60,8 @@
 	public static final String FEEDBACK_TOPIC = "mdc/feedback";
 	
 	public static final String WOCKSTATION_CREATE_TOPIC = "mdc/workstation-create";
+	
+	private final String WORKSTATION_APP_MAPPING_CHANGED_TOPIC = "mdc/workstation_app_mapping_changed";
 	
 	@Bean
     public MqttPahoClientFactory mqttClientFactory() {
@@ -86,7 +93,7 @@
     	String clientId = "spring-boot-mqtt-client-inbound"+r.nextInt(1000);
         MqttPahoMessageDrivenChannelAdapter adapter =
                 new MqttPahoMessageDrivenChannelAdapter(clientId,
-                        mqttClientFactory(), COLLECT_DATA_TOPIC, FEEDBACK_TOPIC,WOCKSTATION_CREATE_TOPIC);//鏈�鍚庝竴涓弬鏁板厑璁稿涓猼opic鍙傛暟
+                        mqttClientFactory(), COLLECT_DATA_TOPIC, FEEDBACK_TOPIC,WOCKSTATION_CREATE_TOPIC,WORKSTATION_APP_MAPPING_CHANGED_TOPIC);//鏈�鍚庝竴涓弬鏁板厑璁稿涓猼opic鍙傛暟
         adapter.setCompletionTimeout(5000);
         adapter.setConverter(new DefaultPahoMessageConverter());
         adapter.setQos(1);
@@ -116,7 +123,11 @@
         		logger.info("宸ヤ綅鍒涘缓鎺ユ敹娑堟伅={}",workstationId);
         		stateFixPointService.deviceStateFixPoint(DateTime.now(), Arrays.asList(workstationId));
         		recService.handle((String)message.getPayload());
-        	}else {//璁㈤槄浜嗗嚑涓猼opic灏变細鎺ユ敹鍒板嚑涓紝鍏朵粬鐨勪笉浼氳繘鏉�
+        	}else if(WORKSTATION_APP_MAPPING_CHANGED_TOPIC.equals(topic)) {
+        		String workstationId = (String)message.getPayload();
+        		logger.info("宸ヤ綅appId鏄犲皠鍙樺寲娑堟伅={}",workstationId);
+        		workstationAppMappingService.saveToCache();
+        	} else {//璁㈤槄浜嗗嚑涓猼opic灏变細鎺ユ敹鍒板嚑涓紝鍏朵粬鐨勪笉浼氳繘鏉�
         		logger.warn("topic={},msg={},鏃犲搴旂殑澶勭悊鍣�",topic,message.getPayload());
         	}
         };
diff --git a/collect/src/main/java/com/qianwen/mdc/collect/entity/mgr/WorkstationAppMapping.java b/collect/src/main/java/com/qianwen/mdc/collect/entity/mgr/WorkstationAppMapping.java
index 45943f9..076af2e 100644
--- a/collect/src/main/java/com/qianwen/mdc/collect/entity/mgr/WorkstationAppMapping.java
+++ b/collect/src/main/java/com/qianwen/mdc/collect/entity/mgr/WorkstationAppMapping.java
@@ -15,11 +15,12 @@
     /**
      * id
      */
+    //@TableId(type=IdType.ASSIGN_ID)
+    //private Long id;
+
+
+   // @TableField("workstation_id")
     @TableId(type=IdType.ASSIGN_ID)
-    private Long id;
-
-
-    @TableField("workstation_id")
     private long workstationId;
 
     /**
@@ -29,14 +30,14 @@
     private String appId;
 
 	private static final long serialVersionUID = 1L;
-
+	/*
     public Long getId() {
         return id;
     }
 
     public void setId(Long id) {
         this.id = id;
-    }
+    }*/
 
 	public long getWorkstationId() {
 		return workstationId;
diff --git a/collect/src/main/java/com/qianwen/mdc/collect/service/WorkstationAppMappingService.java b/collect/src/main/java/com/qianwen/mdc/collect/service/WorkstationAppMappingService.java
index 567357a..df63146 100644
--- a/collect/src/main/java/com/qianwen/mdc/collect/service/WorkstationAppMappingService.java
+++ b/collect/src/main/java/com/qianwen/mdc/collect/service/WorkstationAppMappingService.java
@@ -53,6 +53,7 @@
      */
 	public void saveToCache() {
 		List<WorkstationAppMapping> list =  allList();
+		redisUtil.del(MAPPING_REDIS_KEY);
 		list.forEach(m ->{
 			redisUtil.hset(MAPPING_REDIS_KEY, m.getAppId(), m.getWorkstationId());
 		});
diff --git a/collect/src/main/resources/application-dev.yml b/collect/src/main/resources/application-dev.yml
index 5f73d6b..dda4930 100644
--- a/collect/src/main/resources/application-dev.yml
+++ b/collect/src/main/resources/application-dev.yml
@@ -27,9 +27,9 @@
   # mysql
 datasource:
   type: mysql
-  url: jdbc:mysql://localhost:3306/blade_boot?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true
+  url: jdbc:mysql://120.46.212.231:3306/smart_boot?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true
   port: 3306
-  username: root
+  username: qwmdc
   password: Kknd_1234
   driver-class-name: com.mysql.cj.jdbc.Driver
 #iotdb 浠ュ強鍏秊dbc涓�璧烽厤缃�

--
Gitblit v1.9.3