检查文档中的规则错误
复制
function hasRuleErrors() {
for (var i = 0; i < Context.Transaction.Documents.length; i++) {
var document = Context.Transaction.Documents[i];
if (document.RuleErrors.length > 0 || document.IsUnknownSkill === true || document.HasSuspiciousSymbols === true)
return true;
}
return false;
}
hasRuleErrors();
检查是否需要人工审核
- 规则错误
- 不确定的文档类型
- 识别结果不确定的字段或字段字符
复制
function needManualReview() {
for (var i = 0; i < Context.Transaction.Documents.length; i++) {
var document = Context.Transaction.Documents[i];
if (needManualReviewForDocument(document))
return true;
}
return false;
}
function needManualReviewForDocument(document) {
// Rule errors exist
if (document.RuleErrors.length > 0)
return true;
// Document type is not confident
if (!document.IsResultClassConfident)
return true;
// Some fields are suspicious
for (var i = 0; i < document.Fields.length; i++) {
var field = document.Fields[i];
if (field.IsSuspicious || containSuspiciousFields(field))
return true;
}
return false;
}
function containSuspiciousFields(field) {
// Check all children for suspicious field
if (field.Children) {
for (var i = 0; i < field.Children.length; i++) {
var childField = field.Children[i];
if (childField.IsSuspicious || containSuspiciousFields(childField))
return true;
}
}
// 检查所有实例字段是否存在疑问
if (field.Instances) {
for (var i = 0; i < field.Instances.length; i++) {
var instanceField = field.Instances[i];
if (instanceField.IsSuspicious || containSuspiciousFields(instanceField))
return true;
}
}
return false;
}
needManualReview();
