mirror of
https://gitee.com/dromara/RuoYi-Cloud-Plus.git
synced 2026-04-24 03:18:35 +08:00
Revert "[重大更新] 使用 spring feign 替代 HttpServiceClient (功能太新 支持不完全 使用成本太高)"
This reverts commit 485c2001
This commit is contained in:
@@ -1,16 +1,14 @@
|
||||
package org.dromara.workflow.api;
|
||||
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.PutMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.dromara.common.core.annotation.RemoteHttpService;
|
||||
import org.dromara.workflow.api.domain.RemoteCompleteTask;
|
||||
import org.dromara.workflow.api.domain.RemoteStartProcess;
|
||||
import org.dromara.workflow.api.domain.RemoteStartProcessReturn;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.service.annotation.GetExchange;
|
||||
import org.springframework.web.service.annotation.HttpExchange;
|
||||
import org.springframework.web.service.annotation.PostExchange;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -21,8 +19,8 @@ import java.util.Map;
|
||||
* @Author ZETA
|
||||
* @Date 2024/6/3
|
||||
*/
|
||||
@FeignClient(contextId = "remoteWorkflowService", name = "ruoyi-workflow", path = "/remote/workflow",
|
||||
fallbackFactory = RemoteWorkflowServiceFallbackFactory.class, primary = false)
|
||||
@RemoteHttpService(value = "ruoyi-workflow", fallback = RemoteWorkflowServiceFallback.class)
|
||||
@HttpExchange("/remote/workflow")
|
||||
public interface RemoteWorkflowService {
|
||||
|
||||
/**
|
||||
@@ -31,7 +29,7 @@ public interface RemoteWorkflowService {
|
||||
* @param businessIds 业务id
|
||||
* @return 结果
|
||||
*/
|
||||
@PostMapping("/delete-instance")
|
||||
@PostExchange("/delete-instance")
|
||||
boolean deleteInstance(@RequestBody List<String> businessIds);
|
||||
|
||||
/**
|
||||
@@ -40,7 +38,7 @@ public interface RemoteWorkflowService {
|
||||
* @param taskId 任务id
|
||||
* @return 状态
|
||||
*/
|
||||
@GetMapping("/business-status-by-task-id")
|
||||
@GetExchange("/business-status-by-task-id")
|
||||
String getBusinessStatusByTaskId(@RequestParam Long taskId);
|
||||
|
||||
/**
|
||||
@@ -49,7 +47,7 @@ public interface RemoteWorkflowService {
|
||||
* @param businessId 业务id
|
||||
* @return 状态
|
||||
*/
|
||||
@GetMapping("/business-status")
|
||||
@GetExchange("/business-status")
|
||||
String getBusinessStatus(@RequestParam String businessId);
|
||||
|
||||
/**
|
||||
@@ -58,7 +56,7 @@ public interface RemoteWorkflowService {
|
||||
* @param instanceId 流程实例id
|
||||
* @param variable 流程变量
|
||||
*/
|
||||
@PostMapping("/set-variable")
|
||||
@PostExchange("/set-variable")
|
||||
void setVariable(@RequestParam Long instanceId, @RequestBody Map<String, Object> variable);
|
||||
|
||||
/**
|
||||
@@ -66,7 +64,7 @@ public interface RemoteWorkflowService {
|
||||
*
|
||||
* @param instanceId 流程实例id
|
||||
*/
|
||||
@GetMapping("/instance-variable")
|
||||
@GetExchange("/instance-variable")
|
||||
Map<String, Object> instanceVariable(@RequestParam Long instanceId);
|
||||
|
||||
/**
|
||||
@@ -75,7 +73,7 @@ public interface RemoteWorkflowService {
|
||||
* @param businessId 业务id
|
||||
* @return 结果
|
||||
*/
|
||||
@GetMapping("/instance-id-by-business-id")
|
||||
@GetExchange("/instance-id-by-business-id")
|
||||
Long getInstanceIdByBusinessId(@RequestParam String businessId);
|
||||
|
||||
/**
|
||||
@@ -84,7 +82,7 @@ public interface RemoteWorkflowService {
|
||||
* @param startProcess 参数
|
||||
* @return 结果
|
||||
*/
|
||||
@PostMapping("/start-workflow")
|
||||
@PostExchange("/start-workflow")
|
||||
RemoteStartProcessReturn startWorkFlow(@RequestBody RemoteStartProcess startProcess);
|
||||
|
||||
/**
|
||||
@@ -93,7 +91,7 @@ public interface RemoteWorkflowService {
|
||||
* @param completeTask 参数
|
||||
* @return 结果
|
||||
*/
|
||||
@PostMapping("/complete-task")
|
||||
@PostExchange("/complete-task")
|
||||
boolean completeTask(@RequestBody RemoteCompleteTask completeTask);
|
||||
|
||||
|
||||
@@ -104,7 +102,7 @@ public interface RemoteWorkflowService {
|
||||
* @param message 办理意见
|
||||
* @return 结果
|
||||
*/
|
||||
@PostMapping("/complete-task-simple")
|
||||
@PostExchange("/complete-task-simple")
|
||||
boolean completeTask(@RequestParam Long taskId, @RequestParam String message);
|
||||
|
||||
/**
|
||||
@@ -113,8 +111,7 @@ public interface RemoteWorkflowService {
|
||||
* @param startProcess 参数
|
||||
* @return 结果
|
||||
*/
|
||||
@PostMapping("/start-complete-task")
|
||||
@PostExchange("/start-complete-task")
|
||||
boolean startCompleteTask(@RequestBody RemoteStartProcess startProcess);
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,78 @@
|
||||
package org.dromara.workflow.api;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.dromara.workflow.api.domain.RemoteCompleteTask;
|
||||
import org.dromara.workflow.api.domain.RemoteStartProcess;
|
||||
import org.dromara.workflow.api.domain.RemoteStartProcessReturn;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 工作流服务熔断降级.
|
||||
*
|
||||
* @author Lion Li
|
||||
*/
|
||||
@Slf4j
|
||||
public class RemoteWorkflowServiceFallback implements RemoteWorkflowService {
|
||||
|
||||
@Override
|
||||
public boolean deleteInstance(List<String> businessIds) {
|
||||
log.warn("服务调用异常 -> 降级处理");
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getBusinessStatusByTaskId(Long taskId) {
|
||||
log.warn("服务调用异常 -> 降级处理");
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getBusinessStatus(String businessId) {
|
||||
log.warn("服务调用异常 -> 降级处理");
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setVariable(Long instanceId, Map<String, Object> variable) {
|
||||
log.warn("服务调用异常 -> 降级处理");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> instanceVariable(Long instanceId) {
|
||||
log.warn("服务调用异常 -> 降级处理");
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Long getInstanceIdByBusinessId(String businessId) {
|
||||
log.warn("服务调用异常 -> 降级处理");
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public RemoteStartProcessReturn startWorkFlow(RemoteStartProcess startProcess) {
|
||||
log.warn("服务调用异常 -> 降级处理");
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean completeTask(RemoteCompleteTask completeTask) {
|
||||
log.warn("服务调用异常 -> 降级处理");
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean completeTask(Long taskId, String message) {
|
||||
log.warn("服务调用异常 -> 降级处理");
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean startCompleteTask(RemoteStartProcess startProcess) {
|
||||
log.warn("服务调用异常 -> 降级处理");
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,83 +0,0 @@
|
||||
package org.dromara.workflow.api;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.dromara.workflow.api.domain.RemoteCompleteTask;
|
||||
import org.dromara.workflow.api.domain.RemoteStartProcess;
|
||||
import org.dromara.workflow.api.domain.RemoteStartProcessReturn;
|
||||
import org.springframework.cloud.openfeign.FallbackFactory;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 工作流服务 fallback factory.
|
||||
*
|
||||
* @author Lion Li
|
||||
*/
|
||||
@Slf4j
|
||||
public class RemoteWorkflowServiceFallbackFactory implements FallbackFactory<RemoteWorkflowService> {
|
||||
|
||||
@Override
|
||||
public RemoteWorkflowService create(Throwable cause) {
|
||||
return new RemoteWorkflowService() {
|
||||
@Override
|
||||
public boolean deleteInstance(List<String> businessIds) {
|
||||
log.warn("工作流服务调用失败, 已触发 fallback", cause);
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getBusinessStatusByTaskId(Long taskId) {
|
||||
log.warn("工作流服务调用失败, 已触发 fallback", cause);
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getBusinessStatus(String businessId) {
|
||||
log.warn("工作流服务调用失败, 已触发 fallback", cause);
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setVariable(Long instanceId, Map<String, Object> variable) {
|
||||
log.warn("工作流服务调用失败, 已触发 fallback", cause);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> instanceVariable(Long instanceId) {
|
||||
log.warn("工作流服务调用失败, 已触发 fallback", cause);
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Long getInstanceIdByBusinessId(String businessId) {
|
||||
log.warn("工作流服务调用失败, 已触发 fallback", cause);
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public RemoteStartProcessReturn startWorkFlow(RemoteStartProcess startProcess) {
|
||||
log.warn("工作流服务调用失败, 已触发 fallback", cause);
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean completeTask(RemoteCompleteTask completeTask) {
|
||||
log.warn("工作流服务调用失败, 已触发 fallback", cause);
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean completeTask(Long taskId, String message) {
|
||||
log.warn("工作流服务调用失败, 已触发 fallback", cause);
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean startCompleteTask(RemoteStartProcess startProcess) {
|
||||
log.warn("工作流服务调用失败, 已触发 fallback", cause);
|
||||
return false;
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user