feat:人脸质量上报、人脸支付对比凭证

This commit is contained in:
dzc committed 2026-09-10 17:49:07 +08:00
1 parent e15197edf4
commit dc5ef2bc9e
9 files changed
+341 -130

No files matched your search

@@ -114,6 +114,12 @@ class ServiceAsyncFace {
/// 部门名
final String? deptName;
/// 服务端记录更新时间;V2 调试同步将其作为图片版本,缺失时回退创建时间。
final DateTime? updateTime;
/// 服务端记录创建时间;V2 调试同步在更新时间缺失时的图片版本回退值。
final DateTime? createTime;
/// 删除标志
@JsonKey(fromJson: JsonTool.stringToBoolean, toJson: JsonTool.booleanToString)
final bool? delFlag;
@@ -127,6 +133,8 @@ class ServiceAsyncFace {
this.userAvatar,
this.deptId,
this.deptName,
this.updateTime,
this.createTime,
this.delFlag,
});
@@ -61,6 +61,12 @@ ServiceAsyncFace _$ServiceAsyncFaceFromJson(Map<String, dynamic> json) =>
userAvatar: json['userAvatar'] as String?,
deptId: json['deptId'] as String?,
deptName: json['deptName'] as String?,
updateTime: json['updateTime'] == null
? null
: DateTime.parse(json['updateTime'] as String),
createTime: json['createTime'] == null
? null
: DateTime.parse(json['createTime'] as String),
delFlag: JsonTool.stringToBoolean(json['delFlag'] as String?),
);
@@ -74,6 +80,8 @@ Map<String, dynamic> _$ServiceAsyncFaceToJson(ServiceAsyncFace instance) =>
'userAvatar': instance.userAvatar,
'deptId': instance.deptId,
'deptName': instance.deptName,
'updateTime': instance.updateTime?.toIso8601String(),
'createTime': instance.createTime?.toIso8601String(),
'delFlag': JsonTool.booleanToString(instance.delFlag),
};
@@ -22,6 +22,7 @@ class FaceSyncSummary {
required this.skipped,
required this.failed,
required this.maskedFailedSampleIds,
this.qualityReportNote,
});
/// 本次同步模式。
@@ -48,6 +49,9 @@ class FaceSyncSummary {
/// 失败样本的脱敏编号,最多由同步服务保留有限数量用于现场定位。
final List<String> maskedFailedSampleIds;
/// 同步末尾的质量上报未完成时的提示;上报成功或无需上报时为空。
final String? qualityReportNote;
/// 本次成功新增、更新和删除的变更总数。
int get changed => added + updated + deleted;
@@ -56,13 +60,14 @@ class FaceSyncSummary {
/// 面向任务日志和设置页的简短结果描述。
String get message {
final note = qualityReportNote == null ? '' : ';$qualityReportNote';
if (!hasFailures) {
return '扫描 $scanned,新增 $added,更新 $updated,删除 $deleted,跳过 $skipped';
return '扫描 $scanned,新增 $added,更新 $updated,删除 $deleted,跳过 $skipped$note';
}
final failedSamples = maskedFailedSampleIds.isEmpty
? ''
: ',失败样本 ${maskedFailedSampleIds.join(',')}';
return '扫描 $scanned,新增 $added,更新 $updated,删除 $deleted,失败 $failed$failedSamples';
return '扫描 $scanned,新增 $added,更新 $updated,删除 $deleted,失败 $failed$failedSamples$note';
}
}