Adding
This commit is contained in:
+84
@@ -0,0 +1,84 @@
|
||||
using System;
|
||||
using System.Globalization;
|
||||
using LCU.Library.DocumentType.Extensions;
|
||||
using LCU.Library.Internal.DocumentIngestorModels.Constants;
|
||||
using LCU.Library.Internal.DocumentIngestorModels.Models;
|
||||
|
||||
namespace LCU.Library.Internal.DocumentIngestorModels.Validations
|
||||
{
|
||||
public static class MetaDataValidation
|
||||
{
|
||||
public static ProcessResult ValidateAccountNumber(ProcessResult processResult, string accountNumber)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(accountNumber) || accountNumber == "0")
|
||||
{
|
||||
processResult = ProcessResult.ProcessDataMappingFailure(processResult, ValidationMessages.AccountInvalidMessage);
|
||||
}
|
||||
|
||||
return processResult;
|
||||
}
|
||||
|
||||
public static ProcessResult ValidateFileName(ProcessResult processResult, string fileName)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(fileName))
|
||||
{
|
||||
processResult = ProcessResult.ProcessDataMappingFailure(processResult, ValidationMessages.FileNameInvalidMessage);
|
||||
}
|
||||
|
||||
return processResult;
|
||||
}
|
||||
|
||||
public static ProcessResult ValidateFullName(ProcessResult processResult, string fullName)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(fullName))
|
||||
{
|
||||
processResult = ProcessResult.ProcessDataMappingFailure(processResult, ValidationMessages.FullNameInvalidMessage);
|
||||
}
|
||||
|
||||
return processResult;
|
||||
}
|
||||
|
||||
public static ProcessResult ValidateDocumentType<T>(ProcessResult processResult, string documentType) where T: Enum
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(documentType) || !EnumExtensions.IsDocumentTypeOf<T>(documentType))
|
||||
{
|
||||
processResult = ProcessResult.ProcessCriticalFailure(processResult, $"{ValidationMessages.DocumentTypeInvalidMessage}. Document Type provided was {documentType}, which was not of type {typeof(T).Name}");
|
||||
}
|
||||
|
||||
return processResult;
|
||||
}
|
||||
|
||||
public static ProcessResult ValidatePdf(ProcessResult processResult, string pdf)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(pdf))
|
||||
{
|
||||
processResult = ProcessResult.ProcessDataMappingFailure(processResult, ValidationMessages.PdfInvalidMessage);
|
||||
}
|
||||
|
||||
return processResult;
|
||||
}
|
||||
|
||||
public static ProcessResult ValidateTin(ProcessResult processResult, string tin)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(tin) || tin == "0")
|
||||
{
|
||||
processResult = ProcessResult.ProcessDataMappingFailure(processResult, ValidationMessages.TinInvalidMessage);
|
||||
}
|
||||
|
||||
return processResult;
|
||||
}
|
||||
|
||||
public static ProcessResult ValidateDate(ProcessResult processResult, string date, string format)
|
||||
{
|
||||
try{
|
||||
if (string.IsNullOrEmpty(date) || !DateTime.TryParseExact(date, format, CultureInfo.InvariantCulture, DateTimeStyles.AssumeLocal, out _)){
|
||||
return ProcessResult.ProcessDataMappingFailure(processResult, $"{ValidationMessages.CreationDateInvalidMessage}. Date provided {date} could not be parsed from format {format}");
|
||||
}
|
||||
}
|
||||
catch (Exception){
|
||||
return ProcessResult.ProcessDataMappingFailure(processResult, ValidationMessages.CreationDateInvalidMessage);
|
||||
}
|
||||
return processResult;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user