diff --git a/src/Oms.Application/Shared/CustomerContactHelper.cs b/src/Oms.Application/Shared/CustomerContactHelper.cs index e5f355c..4237453 100644 --- a/src/Oms.Application/Shared/CustomerContactHelper.cs +++ b/src/Oms.Application/Shared/CustomerContactHelper.cs @@ -30,6 +30,11 @@ public static class CustomerContactHelper public static string? NormalizeOptionalContact(string? value) { var trimmed = value?.Trim(); - return string.IsNullOrWhiteSpace(trimmed) ? null : trimmed; + if (string.IsNullOrWhiteSpace(trimmed)) return null; + // 前端/第三方有时会把缺失值以字符串形式传过来(如 "null" / "undefined") + // 这类值应按“未填写”处理,否则会误触发“已被占用”校验。 + if (trimmed.Equals("null", StringComparison.OrdinalIgnoreCase)) return null; + if (trimmed.Equals("undefined", StringComparison.OrdinalIgnoreCase)) return null; + return trimmed; } }