APL函數(shù)代碼開放場景-計劃任務(wù)Java接口說明
2025-01-02 14:30:53 50 本站
package fx.custom.apl.example.scheduledtask;
import com.fxiaoke.functions.FunctionContext;
import com.fxiaoke.functions.Fx;
import com.fxiaoke.functions.client.DebugHelper;
import com.fxiaoke.functions.model.APIResult;
import com.fxiaoke.functions.template.IScheduledTaskAction;
import com.fxiaoke.functions.utils.Lists;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import static com.fxiaoke.functions.Fx.log;
/**
* 計劃任務(wù)基礎(chǔ)模板
* <p>
* 計劃任務(wù)需要從context.objectIds拿到數(shù)據(jù)id,然后自己查出相關(guān)數(shù)據(jù)再進(jìn)行操作
*/
public class ScheduledTaskExample implements IScheduledTaskAction {
/**
* 計劃任務(wù)函數(shù)的運行方法
*/
@Override
public void execute(FunctionContext context, Map<String, Object> args) {
List<String> ids = context.getObjectIds();
if (ids == null || ids.size() == 0) {
log.info("ids is empty!");
return;
}
APIResult result = Fx.object.findByIds("AccountObj", ids);
if (result.isError() || result.getData() == null) {
log.info(result.message());
return;
}
// result.getData()默認(rèn)是Object,需要強(qiáng)制類型轉(zhuǎn)換
List dataList = (List) result.getData();
if (dataList == null || dataList.size() == 0) {
log.info("dataList is empty!");
return;
}
//處理數(shù)據(jù)
for (Object data : dataList) {
//按邏輯處理
log.info("data: " + data);
}
}
public static void main(String[] args) {
//調(diào)試器
DebugHelper helper = new DebugHelper();
helper.init();
Map<String, Object> param = new HashMap<>();
//計劃任務(wù)分兩種場景
// 1是需要從context.objectIds拿到數(shù)據(jù)id,然后自己查出相關(guān)數(shù)據(jù)再進(jìn)行操作
// 2是與參數(shù)無關(guān),做自定義查詢/自定義業(yè)務(wù)操作
FunctionContext context = helper.scheduledContext(Lists.newArrayList("111"));
new ScheduledTaskExample().execute(context, param);
}}
部分內(nèi)容來源于互聯(lián)網(wǎng),如有侵權(quán),請聯(lián)系客服刪除處理。