APL函數(shù)代碼開(kāi)放場(chǎng)景-流程校驗(yàn)函Java接口說(shuō)明
2025-01-14 15:33:21 513 本站
package fx.custom.apl.example.validate_function;
import com.fxiaoke.functions.FunctionContext;
import com.fxiaoke.functions.Fx;
import com.fxiaoke.functions.client.DebugHelper;
import com.fxiaoke.functions.model.ValidateResult;
import com.fxiaoke.functions.template.IValidateAction;
import fx.custom.apl.example.flow.FlowValidateExample;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
/**
* 校驗(yàn)函數(shù)使用樣例
* 校驗(yàn)函數(shù)返回值字段含義介紹
*/
public class ValidateExample implements IValidateAction {
/**
* 校驗(yàn)函數(shù)的運(yùn)行方法
*/
@Override
public ValidateResult validate(FunctionContext context, Map<String, Object> args) {
Map data = context.getData();
String type = String.valueOf(data.get("filed_afgsd__c"));
if (Objects.equals("sign", type)) {
ValidateResult valid = ValidateResult.builder()
.success(true)
.build();
return valid;
}
ValidateResult valid = ValidateResult.builder()
.success(false) //校驗(yàn)是否通過(guò)
.errorMessage("類(lèi)型錯(cuò)誤") //success為false時(shí)的錯(cuò)誤信息(阻塞后續(xù)操作)
.nonBlockMessage("xxx為空") //success為false時(shí)的錯(cuò)誤信息(不阻塞后續(xù)操作)和errorMessage兩者選填一個(gè)就行
.data("5ecf2029903bc400019dd8cb") //非必填, 用來(lái)做階段跳轉(zhuǎn)校驗(yàn)的,放可以跳轉(zhuǎn)的階段ID
.build();
return valid;
}
public static void main(String[] args) throws IOException {
//調(diào)試器
DebugHelper helper = new DebugHelper();
helper.init();
Map<String, Object> param = new HashMap<>();
//構(gòu)造當(dāng)前執(zhí)行類(lèi)
//模擬調(diào)試的上下文,例如開(kāi)發(fā)時(shí)想模擬一個(gè)客戶(hù)對(duì)象的上下文,以方便開(kāi)發(fā)
FunctionContext context = helper.context("AccountObj", "63100e7915d6a300017121cc");
ValidateResult validate = new FlowValidateExample().validate(context, param);
Fx.log.info(validate);
}
}
部分內(nèi)容來(lái)源于互聯(lián)網(wǎng),如有侵權(quán),請(qǐng)聯(lián)系客服刪除處理。