This commit is contained in:
2021-03-05 18:59:06 +00:00
parent 7e3da146b5
commit 4dcc6ebeff

View File

@@ -214,6 +214,7 @@ namespace AyaNova.Biz
.AddText(obj.Name)
.AddText(obj.Wiki)
.AddText(obj.Tags)
.AddText(obj.AlertNotes)
.AddCustomFields(obj.CustomFields);
}
@@ -245,6 +246,109 @@ namespace AyaNova.Biz
}
//VALIDATE TAGGED ITEMS
if (proposedObj.ContractPartOverrideItems.Count > 1)
{
List<string> allTags = new List<string>();
for (int i = 0; i < proposedObj.ContractPartOverrideItems.Count; i++)
{
var item = proposedObj.ContractPartOverrideItems[i];
if (item.Tags.Count < 1)
AddError(ApiErrorCode.VALIDATION_REQUIRED, $"ContractPartOverrideItems[{i}].Tags");
else
{
//add to list, check for dupes
foreach (string s in item.Tags)
{
if (allTags.Contains(s))
{
AddError(ApiErrorCode.VALIDATION_NOT_UNIQUE, $"ContractPartOverrideItems[{i}].Tags");
break;
}
else
{
allTags.Add(s);
}
}
}
if (item.Override == 0)
AddError(ApiErrorCode.VALIDATION_REQUIRED, $"ContractPartOverrideItems[{i}].Override");
if (item.OverrideType == ContractOverrideType.NotSet)
AddError(ApiErrorCode.VALIDATION_REQUIRED, $"ContractPartOverrideItems[{i}].OverrideType");
}
}
if (proposedObj.ContractServiceRateOverrideItems.Count > 1)
{
List<string> allTags = new List<string>();
//check for overlapping dupes
for (int i = 0; i < proposedObj.ContractServiceRateOverrideItems.Count; i++)
{
var item = proposedObj.ContractServiceRateOverrideItems[i];
if (item.Tags.Count < 1)
AddError(ApiErrorCode.VALIDATION_REQUIRED, $"ContractServiceRateOverrideItems[{i}].Tags");
else
{
//add to list, check for dupes
foreach (string s in item.Tags)
{
if (allTags.Contains(s))
{
AddError(ApiErrorCode.VALIDATION_NOT_UNIQUE, $"ContractServiceRateOverrideItems[{i}].Tags");
break;
}
else
{
allTags.Add(s);
}
}
}
if (item.Override == 0)
AddError(ApiErrorCode.VALIDATION_REQUIRED, $"ContractPartOverrideItems[{i}].Override");
if (item.OverrideType == ContractOverrideType.NotSet)
AddError(ApiErrorCode.VALIDATION_REQUIRED, $"ContractPartOverrideItems[{i}].OverrideType");
}
}
if (proposedObj.ContractTravelRateOverrideItems.Count > 1)
{
List<string> allTags = new List<string>();
//check for overlapping dupes
for (int i = 0; i < proposedObj.ContractTravelRateOverrideItems.Count; i++)
{
var item = proposedObj.ContractTravelRateOverrideItems[i];
if (item.Tags.Count < 1)
AddError(ApiErrorCode.VALIDATION_REQUIRED, $"ContractTravelRateOverrideItems[{i}].Tags");
else
{
//add to list, check for dupes
foreach (string s in item.Tags)
{
if (allTags.Contains(s))
{
AddError(ApiErrorCode.VALIDATION_NOT_UNIQUE, $"ContractTravelRateOverrideItems[{i}].Tags");
break;
}
else
{
allTags.Add(s);
}
}
}
if (item.Override == 0)
AddError(ApiErrorCode.VALIDATION_REQUIRED, $"ContractPartOverrideItems[{i}].Override");
if (item.OverrideType == ContractOverrideType.NotSet)
AddError(ApiErrorCode.VALIDATION_REQUIRED, $"ContractPartOverrideItems[{i}].OverrideType");
}
}
//Any form customizations to validate?
var FormCustomization = await ct.FormCustom.AsNoTracking().SingleOrDefaultAsync(x => x.FormKey == AyaType.Contract.ToString());
if (FormCustomization != null)
@@ -319,7 +423,7 @@ namespace AyaNova.Biz
return await GetReportData(idList);
}