diff --git a/vehicle-firm-common/pom.xml b/vehicle-firm-common/pom.xml
index fe00b68..6a76358 100644
--- a/vehicle-firm-common/pom.xml
+++ b/vehicle-firm-common/pom.xml
@@ -20,7 +20,7 @@
com.dragon
dragon-common-core
- 3.6.3
+ 3.6.4
diff --git a/vehicle-firm-remote/pom.xml b/vehicle-firm-remote/pom.xml
index 84d4032..905c88c 100644
--- a/vehicle-firm-remote/pom.xml
+++ b/vehicle-firm-remote/pom.xml
@@ -22,5 +22,10 @@
vehicle-firm-common
3.6.3
+
+ com.dragon
+ dragon-common-core
+ 3.6.4
+
diff --git a/vehicle-firm-remote/src/main/java/dragon/vehicle/firm/remote/RemoteFirmService.java b/vehicle-firm-remote/src/main/java/dragon/vehicle/firm/remote/RemoteFirmService.java
index 0e6989a..94a2733 100644
--- a/vehicle-firm-remote/src/main/java/dragon/vehicle/firm/remote/RemoteFirmService.java
+++ b/vehicle-firm-remote/src/main/java/dragon/vehicle/firm/remote/RemoteFirmService.java
@@ -1,10 +1,21 @@
package dragon.vehicle.firm.remote;
+import com.dragon.common.core.constant.ServiceNameConstants;
+import com.dragon.common.core.domain.Result;
+import com.dragon.vehicle.firm.domain.cache.FirmInfoCache;
+import dragon.vehicle.firm.remote.factory.RemoteFirmServiceFallbackFactory;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+
/**
* @author 冯凯
* @version 1.0
* @description:
* @date 2023/11/20 13:40
*/
+@FeignClient(contextId = "remoteFirmService",value = ServiceNameConstants.COMPANY_SERVICE,fallbackFactory = RemoteFirmServiceFallbackFactory.class)
public interface RemoteFirmService {
+
+ @GetMapping("/by/userId")
+ public Result getFirmInfoByUserId();
}
diff --git a/vehicle-firm-remote/src/main/java/dragon/vehicle/firm/remote/factory/RemoteFirmServiceFallbackFactory.java b/vehicle-firm-remote/src/main/java/dragon/vehicle/firm/remote/factory/RemoteFirmServiceFallbackFactory.java
index 30b9ca5..8f666a0 100644
--- a/vehicle-firm-remote/src/main/java/dragon/vehicle/firm/remote/factory/RemoteFirmServiceFallbackFactory.java
+++ b/vehicle-firm-remote/src/main/java/dragon/vehicle/firm/remote/factory/RemoteFirmServiceFallbackFactory.java
@@ -1,6 +1,11 @@
package dragon.vehicle.firm.remote.factory;
+import com.dragon.common.core.domain.Result;
+import com.dragon.vehicle.firm.domain.cache.FirmInfoCache;
import dragon.vehicle.firm.remote.RemoteFirmService;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
/**
@@ -10,5 +15,18 @@ import org.springframework.stereotype.Component;
* @date 2023/11/20 13:40
*/
@Component
-public class RemoteFirmServiceFallbackFactory implements RemoteFirmService {
+public class RemoteFirmServiceFallbackFactory implements FallbackFactory {
+
+ public static final Logger logger=LoggerFactory.getLogger(RemoteFirmService.class);
+ @Override
+ public RemoteFirmService create(Throwable throwable) {
+ logger.error("用户服务调用失败:{}", throwable.getMessage());
+ return new RemoteFirmService(){
+ @Override
+ public Result getFirmInfoByUserId() {
+ return Result.error("获取企业信息失败:" + throwable.getMessage());
+ }
+ };
+
+ }
}
diff --git a/vehicle-firm-server/src/main/java/com/dragon/vehicle/firm/server/controller/FirmInfoController.java b/vehicle-firm-server/src/main/java/com/dragon/vehicle/firm/server/controller/FirmInfoController.java
index 2ca7602..b4e14c4 100644
--- a/vehicle-firm-server/src/main/java/com/dragon/vehicle/firm/server/controller/FirmInfoController.java
+++ b/vehicle-firm-server/src/main/java/com/dragon/vehicle/firm/server/controller/FirmInfoController.java
@@ -1,8 +1,10 @@
package com.dragon.vehicle.firm.server.controller;
import com.dragon.common.core.domain.Result;
+import com.dragon.common.security.utils.SecurityUtils;
import com.dragon.vehicle.firm.domain.cache.FirmInfoCache;
import com.dragon.vehicle.firm.server.service.FirmInfoService;
+import org.apache.catalina.security.SecurityUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -34,7 +36,7 @@ public class FirmInfoController {
@GetMapping("/by/userId")
public Result getFirmInfoByUserId(){
- Long userId = 6L;
+ Long userId = SecurityUtils.getUserId();//获取当前登录人的userId
FirmInfoCache firmInfoCache=firmService.getFirmInfoByUserId(userId);
return Result.success(firmInfoCache);
}