This commit is contained in:
2020-05-17 18:56:20 +00:00
parent bb14f24360
commit fa701f790b

View File

@@ -2343,64 +2343,64 @@ namespace AyaNova.Biz
#region Utility #region Utility
public ICoreBizObjectModel GetWorkOrderGraphItem(AyaType ayaType, long id) public async Task<ICoreBizObjectModel> GetWorkOrderGraphItem(AyaType ayaType, long id)
{ {
switch (ayaType) switch (ayaType)
{ {
case AyaType.WorkOrder: case AyaType.WorkOrder:
return (ICoreBizObjectModel)WorkOrderGetAsync(id, false); return await WorkOrderGetAsync(id, false) as ICoreBizObjectModel;
case AyaType.WorkOrderItem: case AyaType.WorkOrderItem:
return (ICoreBizObjectModel)ItemGetAsync(id, false); return await ItemGetAsync(id, false);
case AyaType.WorkOrderItemExpense: case AyaType.WorkOrderItemExpense:
return (ICoreBizObjectModel)ExpenseGetAsync(id, false); return await ExpenseGetAsync(id, false);
case AyaType.WorkOrderItemLabor: case AyaType.WorkOrderItemLabor:
return (ICoreBizObjectModel)LaborGetAsync(id, false); return await LaborGetAsync(id, false);
case AyaType.WorkOrderItemLoan: case AyaType.WorkOrderItemLoan:
return (ICoreBizObjectModel)LoanGetAsync(id, false); return await LoanGetAsync(id, false);
case AyaType.WorkOrderItemPart: case AyaType.WorkOrderItemPart:
return (ICoreBizObjectModel)PartGetAsync(id, false); return await PartGetAsync(id, false);
case AyaType.WorkOrderItemPartRequest: case AyaType.WorkOrderItemPartRequest:
return (ICoreBizObjectModel)PartRequestGetAsync(id, false); return await PartRequestGetAsync(id, false);
case AyaType.WorkOrderItemScheduledUser: case AyaType.WorkOrderItemScheduledUser:
return (ICoreBizObjectModel)ScheduledUserGetAsync(id, false); return await ScheduledUserGetAsync(id, false);
case AyaType.WorkOrderItemTask: case AyaType.WorkOrderItemTask:
return (ICoreBizObjectModel)TaskGetAsync(id, false); return await TaskGetAsync(id, false);
case AyaType.WorkOrderItemTravel: case AyaType.WorkOrderItemTravel:
return (ICoreBizObjectModel)TravelGetAsync(id, false); return await TravelGetAsync(id, false);
case AyaType.WorkOrderItemUnit: case AyaType.WorkOrderItemUnit:
return (ICoreBizObjectModel)UnitGetAsync(id, false); return await UnitGetAsync(id, false);
default: default:
throw new System.ArgumentOutOfRangeException($"WorkOrder::GetWorkOrderGraphItem -> Invalid ayaType{ayaType}"); throw new System.ArgumentOutOfRangeException($"WorkOrder::GetWorkOrderGraphItem -> Invalid ayaType{ayaType}");
} }
} }
public ICoreBizObjectModel PutWorkOrderGraphItem(AyaType ayaType, ICoreBizObjectModel o) public async Task<ICoreBizObjectModel> PutWorkOrderGraphItem(AyaType ayaType, ICoreBizObjectModel o)
{ {
ClearErrors(); ClearErrors();
switch (ayaType) switch (ayaType)
{ {
case AyaType.WorkOrder: case AyaType.WorkOrder:
return (ICoreBizObjectModel)WorkOrderPutAsync((dtWorkOrder)o); return await WorkOrderPutAsync((dtWorkOrder)o) as ICoreBizObjectModel;
case AyaType.WorkOrderItem: case AyaType.WorkOrderItem:
return (ICoreBizObjectModel)ItemPutAsync((dtWorkOrderItem)o); return await ItemPutAsync((dtWorkOrderItem)o);
case AyaType.WorkOrderItemExpense: case AyaType.WorkOrderItemExpense:
return (ICoreBizObjectModel)ExpensePutAsync((WorkOrderItemExpense)o); return await ExpensePutAsync((WorkOrderItemExpense)o);
case AyaType.WorkOrderItemLabor: case AyaType.WorkOrderItemLabor:
return (ICoreBizObjectModel)LaborPutAsync((WorkOrderItemLabor)o); return await LaborPutAsync((WorkOrderItemLabor)o);
case AyaType.WorkOrderItemLoan: case AyaType.WorkOrderItemLoan:
return (ICoreBizObjectModel)LoanPutAsync((WorkOrderItemLoan)o); return await LoanPutAsync((WorkOrderItemLoan)o);
case AyaType.WorkOrderItemPart: case AyaType.WorkOrderItemPart:
return (ICoreBizObjectModel)PartPutAsync((WorkOrderItemPart)o); return await PartPutAsync((WorkOrderItemPart)o);
case AyaType.WorkOrderItemPartRequest: case AyaType.WorkOrderItemPartRequest:
return (ICoreBizObjectModel)PartRequestPutAsync((WorkOrderItemPartRequest)o); return await PartRequestPutAsync((WorkOrderItemPartRequest)o);
case AyaType.WorkOrderItemScheduledUser: case AyaType.WorkOrderItemScheduledUser:
return (ICoreBizObjectModel)ScheduledUserPutAsync((WorkOrderItemScheduledUser)o); return await ScheduledUserPutAsync((WorkOrderItemScheduledUser)o);
case AyaType.WorkOrderItemTask: case AyaType.WorkOrderItemTask:
return (ICoreBizObjectModel)TaskPutAsync((WorkOrderItemTask)o); return await TaskPutAsync((WorkOrderItemTask)o);
case AyaType.WorkOrderItemTravel: case AyaType.WorkOrderItemTravel:
return (ICoreBizObjectModel)TravelPutAsync((WorkOrderItemTravel)o); return await TravelPutAsync((WorkOrderItemTravel)o);
case AyaType.WorkOrderItemUnit: case AyaType.WorkOrderItemUnit:
return (ICoreBizObjectModel)UnitPutAsync((WorkOrderItemUnit)o); return await UnitPutAsync((WorkOrderItemUnit)o);
default: default:
throw new System.ArgumentOutOfRangeException($"WorkOrder::PutWorkOrderGraphItem -> Invalid ayaType{ayaType}"); throw new System.ArgumentOutOfRangeException($"WorkOrder::PutWorkOrderGraphItem -> Invalid ayaType{ayaType}");
} }
@@ -2444,26 +2444,7 @@ namespace AyaNova.Biz
{ {
SaveIt = false; SaveIt = false;
ClearErrors(); ClearErrors();
ICoreBizObjectModel o = null; ICoreBizObjectModel o = await GetWorkOrderGraphItem(job.ObjectType, id);
switch (job.ObjectType)
{
case AyaType.WorkOrder:
o = (ICoreBizObjectModel)WorkOrderGetAsync(id, false);
break;
case AyaType.WorkOrderItem:
case AyaType.WorkOrderItemExpense:
case AyaType.WorkOrderItemLabor:
case AyaType.WorkOrderItemLoan:
case AyaType.WorkOrderItemPart:
case AyaType.WorkOrderItemPartRequest:
case AyaType.WorkOrderItemScheduledUser:
case AyaType.WorkOrderItemTask:
case AyaType.WorkOrderItemTravel:
case AyaType.WorkOrderItemUnit:
}
// var o = await GetAsync(id, false);
switch (job.SubType) switch (job.SubType)
{ {
case JobSubType.TagAddAny: case JobSubType.TagAddAny:
@@ -2479,7 +2460,7 @@ namespace AyaNova.Biz
} }
if (SaveIt) if (SaveIt)
{ {
// o = await PutAsync(o); o = await PutWorkOrderGraphItem(job.ObjectType, o);
if (o == null) if (o == null)
await JobsBiz.LogJobAsync(job.GId, $"Error processing item {id}: {GetErrorsAsString()}", ct); await JobsBiz.LogJobAsync(job.GId, $"Error processing item {id}: {GetErrorsAsString()}", ct);
else else