This commit is contained in:
@@ -342,6 +342,8 @@ namespace AyaNova.Biz
|
|||||||
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("Unit"));
|
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("Unit"));
|
||||||
if (await ct.CustomerServiceRequest.AnyAsync(m => m.CustomerId == inObj.Id))
|
if (await ct.CustomerServiceRequest.AnyAsync(m => m.CustomerId == inObj.Id))
|
||||||
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("CustomerServiceRequest"));
|
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("CustomerServiceRequest"));
|
||||||
|
if (await ct.PurchaseOrder.AnyAsync(m => m.DropShipToCustomerId == inObj.Id))
|
||||||
|
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("PurchaseOrder"));
|
||||||
|
|
||||||
// await Task.CompletedTask;
|
// await Task.CompletedTask;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -412,6 +412,8 @@ namespace AyaNova.Biz
|
|||||||
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("PartInventoryList"));//translates to "Part inventory"
|
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("PartInventoryList"));//translates to "Part inventory"
|
||||||
if (await ct.PartStockLevel.AnyAsync(m => m.PartId == inObj.Id))
|
if (await ct.PartStockLevel.AnyAsync(m => m.PartId == inObj.Id))
|
||||||
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("PartStockingLevels"));
|
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("PartStockingLevels"));
|
||||||
|
if (await ct.PurchaseOrderItem.AnyAsync(m => m.PartId == inObj.Id))
|
||||||
|
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("PurchaseOrder"));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -271,6 +271,8 @@ namespace AyaNova.Biz
|
|||||||
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("PartInventoryTransaction"));
|
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("PartInventoryTransaction"));
|
||||||
if (await ct.PartStockLevel.AnyAsync(m => m.PartWarehouseId == inObj.Id))
|
if (await ct.PartStockLevel.AnyAsync(m => m.PartWarehouseId == inObj.Id))
|
||||||
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("PartStockingLevels"));
|
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("PartStockingLevels"));
|
||||||
|
if (await ct.PurchaseOrderItem.AnyAsync(m => m.PartWarehouseId == inObj.Id))
|
||||||
|
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("PurchaseOrder"));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -160,7 +160,7 @@ namespace AyaNova.Biz
|
|||||||
AddError(ApiErrorCode.NOT_FOUND);
|
AddError(ApiErrorCode.NOT_FOUND);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
ValidateCanDelete(dbObject);
|
await ValidateCanDeleteAsync(dbObject);
|
||||||
if (HasErrors)
|
if (HasErrors)
|
||||||
return false;
|
return false;
|
||||||
ct.Project.Remove(dbObject);
|
ct.Project.Remove(dbObject);
|
||||||
@@ -244,13 +244,9 @@ namespace AyaNova.Biz
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//Any form customizations to validate?
|
|
||||||
var FormCustomization = await ct.FormCustom.AsNoTracking().SingleOrDefaultAsync(x => x.FormKey == AyaType.Project.ToString());
|
var FormCustomization = await ct.FormCustom.AsNoTracking().SingleOrDefaultAsync(x => x.FormKey == AyaType.Project.ToString());
|
||||||
if (FormCustomization != null)
|
if (FormCustomization != null)
|
||||||
{
|
{
|
||||||
//Yeppers, do the validation, there are two, the custom fields and the regular fields that might be set to required
|
|
||||||
|
|
||||||
//validate users choices for required non custom fields
|
//validate users choices for required non custom fields
|
||||||
RequiredFieldsValidator.Validate(this, FormCustomization, proposedObj);
|
RequiredFieldsValidator.Validate(this, FormCustomization, proposedObj);
|
||||||
|
|
||||||
@@ -260,9 +256,12 @@ namespace AyaNova.Biz
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ValidateCanDelete(Project inObj)
|
private async Task ValidateCanDeleteAsync(Project inObj)
|
||||||
{
|
{
|
||||||
//whatever needs to be check to delete this object
|
//Referential integrity
|
||||||
|
//FOREIGN KEY CHECKS
|
||||||
|
if (await ct.PurchaseOrder.AnyAsync(m => m.ProjectId == inObj.Id))
|
||||||
|
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("PurchaseOrder"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -293,6 +293,8 @@ namespace AyaNova.Biz
|
|||||||
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("UnitModel"));
|
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("UnitModel"));
|
||||||
if (await ct.Unit.AnyAsync(m => m.PurchasedFromVendorId == inObj.Id))
|
if (await ct.Unit.AnyAsync(m => m.PurchasedFromVendorId == inObj.Id))
|
||||||
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("Unit"));
|
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("Unit"));
|
||||||
|
|
||||||
|
|
||||||
//part has three potential references, if any match that's good enough since it's the same message
|
//part has three potential references, if any match that's good enough since it's the same message
|
||||||
if (await ct.Part.AnyAsync(z => z.ManufacturerId == inObj.Id) == true)
|
if (await ct.Part.AnyAsync(z => z.ManufacturerId == inObj.Id) == true)
|
||||||
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("Part"));
|
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("Part"));
|
||||||
@@ -300,6 +302,9 @@ namespace AyaNova.Biz
|
|||||||
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("Part"));
|
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("Part"));
|
||||||
else if (await ct.Part.AnyAsync(z => z.AlternativeWholeSalerId == inObj.Id) == true)
|
else if (await ct.Part.AnyAsync(z => z.AlternativeWholeSalerId == inObj.Id) == true)
|
||||||
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("Part"));
|
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("Part"));
|
||||||
|
|
||||||
|
if (await ct.PurchaseOrder.AnyAsync(m => m.VendorId == inObj.Id))
|
||||||
|
AddError(ApiErrorCode.VALIDATION_REFERENTIAL_INTEGRITY, "generalerror", await Translate("PurchaseOrder"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -53,6 +53,7 @@ namespace AyaNova.Models
|
|||||||
public virtual DbSet<PMTemplateItem> PMTemplateItem { get; set; }
|
public virtual DbSet<PMTemplateItem> PMTemplateItem { get; set; }
|
||||||
public virtual DbSet<Project> Project { get; set; }
|
public virtual DbSet<Project> Project { get; set; }
|
||||||
public virtual DbSet<PurchaseOrder> PurchaseOrder { get; set; }
|
public virtual DbSet<PurchaseOrder> PurchaseOrder { get; set; }
|
||||||
|
public virtual DbSet<PurchaseOrderItem> PurchaseOrderItem { get; set; }
|
||||||
public virtual DbSet<Quote> Quote { get; set; }
|
public virtual DbSet<Quote> Quote { get; set; }
|
||||||
public virtual DbSet<QuoteItem> QuoteItem { get; set; }
|
public virtual DbSet<QuoteItem> QuoteItem { get; set; }
|
||||||
public virtual DbSet<QuoteTemplate> QuoteTemplate { get; set; }
|
public virtual DbSet<QuoteTemplate> QuoteTemplate { get; set; }
|
||||||
|
|||||||
Reference in New Issue
Block a user