|
@@ -7,7 +7,8 @@ import '../../core/theme/app_colors_extension.dart';
|
|
|
///
|
|
///
|
|
|
/// BillSave 成功后调用,根据 [getBillAuditConfig] 返回值决定:
|
|
/// BillSave 成功后调用,根据 [getBillAuditConfig] 返回值决定:
|
|
|
/// - 无审核流 → 直接 return
|
|
/// - 无审核流 → 直接 return
|
|
|
-/// - 有审核流 + 自动提交 → 直接调 [onShSubmit]
|
|
|
|
|
|
|
+/// - 有审核流 + 自动提交([skipOnAutoSubmit]=false)→ 直接调 [onShSubmit]
|
|
|
|
|
+/// - 有审核流 + 自动提交([skipOnAutoSubmit]=true)→ 直接 return(ERP 已处理)
|
|
|
/// - 有审核流 + 不自动提交 → 弹窗询问,用户确认后调 [onShSubmit]
|
|
/// - 有审核流 + 不自动提交 → 弹窗询问,用户确认后调 [onShSubmit]
|
|
|
/// - getBillAuditConfig 出错 → 直接 return
|
|
/// - getBillAuditConfig 出错 → 直接 return
|
|
|
class AuditFlowHelper {
|
|
class AuditFlowHelper {
|
|
@@ -15,11 +16,13 @@ class AuditFlowHelper {
|
|
|
|
|
|
|
|
/// [getConfig] 调用 getBillAuditConfig,[onShSubmit] 调用 SHSubmit。
|
|
/// [getConfig] 调用 getBillAuditConfig,[onShSubmit] 调用 SHSubmit。
|
|
|
/// 调用方需确保 [context] 来自当前 mounted 的 widget。
|
|
/// 调用方需确保 [context] 来自当前 mounted 的 widget。
|
|
|
|
|
+ /// [skipOnAutoSubmit] 为 true 时,自动提交场景不调 shSubmit(AE/BX 等 ERP 侧已处理的单据)。
|
|
|
static Future<void> handle({
|
|
static Future<void> handle({
|
|
|
required BuildContext context,
|
|
required BuildContext context,
|
|
|
required AppLocalizations l10n,
|
|
required AppLocalizations l10n,
|
|
|
required Future<Map<String, dynamic>> Function() getConfig,
|
|
required Future<Map<String, dynamic>> Function() getConfig,
|
|
|
required Future<void> Function() onShSubmit,
|
|
required Future<void> Function() onShSubmit,
|
|
|
|
|
+ bool skipOnAutoSubmit = false,
|
|
|
}) async {
|
|
}) async {
|
|
|
final colors = Theme.of(context).extension<AppColorsExtension>()!;
|
|
final colors = Theme.of(context).extension<AppColorsExtension>()!;
|
|
|
try {
|
|
try {
|
|
@@ -30,7 +33,7 @@ class AuditFlowHelper {
|
|
|
if (!hasFlow) return;
|
|
if (!hasFlow) return;
|
|
|
|
|
|
|
|
if (autoSubmit) {
|
|
if (autoSubmit) {
|
|
|
- await onShSubmit();
|
|
|
|
|
|
|
+ if (!skipOnAutoSubmit) await onShSubmit();
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
|
|
|