ソースを参照

add 设置网桥初始值

18339543638 4 年 前
コミット
0592d52dba

+ 7 - 3
jetlinks-manager/bridge-manager/src/main/java/org/jetlinks/community/bridge/server/aliyun/AliBridgeServer.java

@@ -269,7 +269,7 @@ public class AliBridgeServer extends AbstractClusterUniqueTask<AliBridgeServer>
 
     public Mono<Void> pauseBridge(boolean broadcast ) {
         return Mono.fromRunnable(()->{
-            if(bootstrap!=null&&bootstrap.isBridgeConnected()){
+            if(bootstrap!=null&&!isReplica()){
                 bootstrap.disconnectBridge();
             }
             changeStatus(BridgeStatus.stop,broadcast);
@@ -280,7 +280,7 @@ public class AliBridgeServer extends AbstractClusterUniqueTask<AliBridgeServer>
 
     public Mono<Void> delBridge(boolean broadcast) {
         return Mono.fromRunnable(()->{
-            if(bootstrap!=null&&isReplica()){
+            if(bootstrap!=null&&!isReplica()){
                 bootstrap.disconnectBridge();
                 bootstrap=null;
             }
@@ -318,7 +318,11 @@ public class AliBridgeServer extends AbstractClusterUniqueTask<AliBridgeServer>
 
     @Override
     public void beMasterPostProcessor() {
-        handleStatus(this.params.getState(),false).subscribe();
+        handleStatus(this.params.getState(),false)
+            .flatMap(ignore->
+                bridgeService.createUpdate()
+                    .set(AliIotBridgeEntity::getNodeId,this.getCurrentSeverId())
+                    .execute()).subscribe();
     }
 
     @Override

+ 1 - 1
jetlinks-manager/bridge-manager/src/main/java/org/jetlinks/community/bridge/web/AliBridgeServerController.java

@@ -64,8 +64,8 @@ public class AliBridgeServerController implements
     @DeleteAction
     public Mono<Void> deleteBridge(@PathVariable("bridgeId")String id){
         return  Mono.zip(
-            bridgeDeviceService.createDelete().where(AliIotBridgeDeviceConfig::getBridgeId,id).execute(),
             bridgeService.deleteById(id),
+            bridgeDeviceService.createDelete().where(AliIotBridgeDeviceConfig::getBridgeId,id).execute(),
             bridgeGateway.delBridgeServer(id,true))
             .then();
     }