add
This commit is contained in:
@@ -1,19 +0,0 @@
|
|||||||
import lombok.RequiredArgsConstructor;
|
|
||||||
import org.springframework.stereotype.Component;
|
|
||||||
|
|
||||||
@Component
|
|
||||||
@RequiredArgsConstructor
|
|
||||||
public class WorkSheetExample implements SimpleWorkSheet {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String getWorkCode() {
|
|
||||||
return "ORDER_CREATE";
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Object execute(WorkSheetEntity workSheet) {
|
|
||||||
// do something
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -6,7 +6,46 @@
|
|||||||
|
|
||||||
请先在编写代码的模块,检查是否存在`WorkSheetHandler.java`或者`SimpleWorkSheet.java`类,若存在则直接使用工单,不存在则不使用工单。
|
请先在编写代码的模块,检查是否存在`WorkSheetHandler.java`或者`SimpleWorkSheet.java`类,若存在则直接使用工单,不存在则不使用工单。
|
||||||
|
|
||||||
## 使用方法
|
## 使用案例
|
||||||
|
|
||||||
1. 调用`WorkSheetHandler.java`中的`putObjectParam`或者`putStringParam`方法创建一条异步执行的任务。
|
调用方使用`tryOrderCreate`方法,遇到异常将自动处理重试逻辑。
|
||||||
2. 创建一个**SpringBean**实现`SimpleWorkSheet.java`接口,实现`getWorkCode`方法时,按照业务属性去定义一个字符串,例如:"ORDER_CREATE",在`execute`方法处理业务逻辑。
|
|
||||||
|
```java
|
||||||
|
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
@Slf4j
|
||||||
|
@Component
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
public class WorksheetExample implements SimpleWorkSheet {
|
||||||
|
|
||||||
|
private final WorkSheetHandler workSheetHandler;
|
||||||
|
|
||||||
|
public void tryOrderCreate(String taskId, ExampleDTO param) {
|
||||||
|
try {
|
||||||
|
createOrder(param);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("do_something_err", e);
|
||||||
|
workSheetHandler.putObjectParam(getWorkCode(), taskId, param);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void createOrder(ExampleDTO param) {
|
||||||
|
// do something
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getWorkCode() {
|
||||||
|
return "ORDER_CREATE";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Object execute(WorkSheetEntity workSheet) {
|
||||||
|
createOrder(workSheet.readBeanParam(ExampleDTO.class));
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
```
|
||||||
Reference in New Issue
Block a user