This commit is contained in:
@@ -261,7 +261,7 @@ namespace AyaNova.Api.Controllers
|
||||
if (!badRequest)
|
||||
{
|
||||
//check if object exists
|
||||
if (!await BizObjectExistsInDatabase.ExistsAsync(attachToObject))
|
||||
if (!await BizObjectExistsInDatabase.ExistsAsync(attachToObject, ct))
|
||||
{
|
||||
badRequest = true;
|
||||
errorMessage = "Invalid attach object";
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using AyaNova.Util;
|
||||
using AyaNova.Models;
|
||||
|
||||
|
||||
@@ -13,102 +12,93 @@ namespace AyaNova.Biz
|
||||
internal static class BizObjectExistsInDatabase
|
||||
{
|
||||
|
||||
//THIS IS THE METHOD CALLED BY THE ATTACHMENT CONTROLLER
|
||||
internal static async Task<bool> ExistsAsync(AyaTypeId tid)
|
||||
{
|
||||
return await ExistsAsync(tid.ObjectType, tid.ObjectId);
|
||||
}
|
||||
|
||||
|
||||
//Returns existance status of object type and id specified in database
|
||||
internal static async Task<bool> ExistsAsync(AyaType ayaType, long id, AyContext ct = null)
|
||||
internal static async Task<bool> ExistsAsync(AyaTypeId tid, AyContext ct)
|
||||
{
|
||||
//new up a context??
|
||||
if (ct == null)
|
||||
{
|
||||
ct = ServiceProviderProvider.DBContext;
|
||||
}
|
||||
switch (ayaType)
|
||||
|
||||
switch (tid.ObjectType)
|
||||
{
|
||||
//CoreBizObject add here
|
||||
|
||||
case AyaType.FileAttachment:
|
||||
return await ct.FileAttachment.AnyAsync(z => z.Id == id);
|
||||
return await ct.FileAttachment.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.DataListView:
|
||||
return await ct.DataListView.AnyAsync(z => z.Id == id);
|
||||
return await ct.DataListView.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.FormCustom:
|
||||
return await ct.FormCustom.AnyAsync(z => z.Id == id);
|
||||
return await ct.FormCustom.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.User:
|
||||
return await ct.User.AnyAsync(z => z.Id == id);
|
||||
return await ct.User.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.Widget:
|
||||
return await ct.Widget.AnyAsync(z => z.Id == id);
|
||||
return await ct.Widget.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.Customer:
|
||||
return await ct.Customer.AnyAsync(z => z.Id == id);
|
||||
return await ct.Customer.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.Contract:
|
||||
return await ct.Contract.AnyAsync(z => z.Id == id);
|
||||
return await ct.Contract.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.HeadOffice:
|
||||
return await ct.HeadOffice.AnyAsync(z => z.Id == id);
|
||||
return await ct.HeadOffice.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.LoanUnit:
|
||||
return await ct.LoanUnit.AnyAsync(z => z.Id == id);
|
||||
return await ct.LoanUnit.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.Part:
|
||||
return await ct.Part.AnyAsync(z => z.Id == id);
|
||||
return await ct.Part.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.PM:
|
||||
return await ct.PM.AnyAsync(z => z.Id == id);
|
||||
return await ct.PM.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.PMItem:
|
||||
return await ct.PMItem.AnyAsync(z => z.Id == id);
|
||||
return await ct.PMItem.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.PMTemplate:
|
||||
return await ct.PMTemplate.AnyAsync(z => z.Id == id);
|
||||
return await ct.PMTemplate.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.PMTemplateItem:
|
||||
return await ct.PMTemplateItem.AnyAsync(z => z.Id == id);
|
||||
return await ct.PMTemplateItem.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.Project:
|
||||
return await ct.Project.AnyAsync(z => z.Id == id);
|
||||
return await ct.Project.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.PurchaseOrder:
|
||||
return await ct.PurchaseOrder.AnyAsync(z => z.Id == id);
|
||||
return await ct.PurchaseOrder.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.Quote:
|
||||
return await ct.Quote.AnyAsync(z => z.Id == id);
|
||||
return await ct.Quote.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.QuoteItem:
|
||||
return await ct.QuoteItem.AnyAsync(z => z.Id == id);
|
||||
return await ct.QuoteItem.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.QuoteTemplate:
|
||||
return await ct.QuoteTemplate.AnyAsync(z => z.Id == id);
|
||||
return await ct.QuoteTemplate.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.QuoteTemplateItem:
|
||||
return await ct.QuoteTemplateItem.AnyAsync(z => z.Id == id);
|
||||
return await ct.QuoteTemplateItem.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.Unit:
|
||||
return await ct.Unit.AnyAsync(z => z.Id == id);
|
||||
return await ct.Unit.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.UnitModel:
|
||||
return await ct.UnitModel.AnyAsync(z => z.Id == id);
|
||||
return await ct.UnitModel.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.Vendor:
|
||||
return await ct.Vendor.AnyAsync(z => z.Id == id);
|
||||
return await ct.Vendor.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
//--- WorkOrder
|
||||
case AyaType.WorkOrder:
|
||||
return await ct.WorkOrder.AnyAsync(z => z.Id == id);
|
||||
return await ct.WorkOrder.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.WorkOrderItem:
|
||||
return await ct.WorkOrderItem.AnyAsync(z => z.Id == id);
|
||||
return await ct.WorkOrderItem.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.WorkOrderItemExpense:
|
||||
return await ct.WorkOrderItemExpense.AnyAsync(z => z.Id == id);
|
||||
return await ct.WorkOrderItemExpense.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.WorkOrderItemLabor:
|
||||
return await ct.WorkOrderItemLabor.AnyAsync(z => z.Id == id);
|
||||
return await ct.WorkOrderItemLabor.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.WorkOrderItemLoan:
|
||||
return await ct.WorkOrderItemLoan.AnyAsync(z => z.Id == id);
|
||||
return await ct.WorkOrderItemLoan.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.WorkOrderItemPart:
|
||||
return await ct.WorkOrderItemPart.AnyAsync(z => z.Id == id);
|
||||
return await ct.WorkOrderItemPart.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.WorkOrderItemPartRequest:
|
||||
return await ct.WorkOrderItemPartRequest.AnyAsync(z => z.Id == id);
|
||||
return await ct.WorkOrderItemPartRequest.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.WorkOrderItemScheduledUser:
|
||||
return await ct.WorkOrderItemScheduledUser.AnyAsync(z => z.Id == id);
|
||||
return await ct.WorkOrderItemScheduledUser.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.WorkOrderItemTask:
|
||||
return await ct.WorkOrderItemTask.AnyAsync(z => z.Id == id);
|
||||
return await ct.WorkOrderItemTask.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.WorkOrderItemTravel:
|
||||
return await ct.WorkOrderItemTravel.AnyAsync(z => z.Id == id);
|
||||
return await ct.WorkOrderItemTravel.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.WorkOrderItemUnit:
|
||||
return await ct.WorkOrderItemUnit.AnyAsync(z => z.Id == id);
|
||||
return await ct.WorkOrderItemUnit.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
//---
|
||||
case AyaType.WorkOrderTemplate:
|
||||
return await ct.WorkOrderTemplate.AnyAsync(z => z.Id == id);
|
||||
return await ct.WorkOrderTemplate.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
case AyaType.WorkOrderTemplateItem:
|
||||
return await ct.WorkOrderTemplateItem.AnyAsync(z => z.Id == id);
|
||||
return await ct.WorkOrderTemplateItem.AnyAsync(z => z.Id == tid.ObjectId);
|
||||
|
||||
default:
|
||||
throw new System.NotSupportedException($"AyaNova.Biz.BizObjectExistsInDatabase::ExistsAsync type {ayaType.ToString()} is not supported");
|
||||
throw new System.NotSupportedException($"AyaNova.Biz.BizObjectExistsInDatabase::ExistsAsync type {tid.ObjectType.ToString()} is not supported");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user