This commit is contained in:
@@ -51,7 +51,7 @@ namespace AyaNova.Api.Controllers
|
||||
return StatusCode(403, new ApiNotAuthorizedResponse());
|
||||
if (!ModelState.IsValid)
|
||||
return BadRequest(new ApiErrorResponse(ModelState));
|
||||
PurchaseOrder o = await biz.CreateAsync(newObject);
|
||||
PurchaseOrder o = await biz.CreateAsync(newObject, true);
|
||||
if (o == null)
|
||||
return BadRequest(new ApiErrorResponse(biz.Errors));
|
||||
else
|
||||
@@ -125,7 +125,7 @@ namespace AyaNova.Api.Controllers
|
||||
else
|
||||
return BadRequest(new ApiErrorResponse(biz.Errors));
|
||||
}
|
||||
return Ok(ApiOkResponse.Response(new { Concurrency = o.Concurrency })); ;
|
||||
return Ok(ApiOkResponse.Response(o));//Here return entire object since it's updated by the server in ways the client needs to see
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -41,7 +41,7 @@ namespace AyaNova.Biz
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//CREATE
|
||||
//
|
||||
internal async Task<PurchaseOrder> CreateAsync(PurchaseOrder newObject)
|
||||
internal async Task<PurchaseOrder> CreateAsync(PurchaseOrder newObject, bool populateDisplayFields)
|
||||
{
|
||||
await ValidateAsync(newObject, null);
|
||||
if (HasErrors)
|
||||
@@ -61,6 +61,8 @@ namespace AyaNova.Biz
|
||||
await SearchIndexAsync(newObject, true);
|
||||
await TagBiz.ProcessUpdateTagsInRepositoryAsync(ct, newObject.Tags, null);
|
||||
await HandlePotentialNotificationEvent(AyaEvent.Created, newObject);
|
||||
if (populateDisplayFields)
|
||||
await SetDisplayFields(newObject);
|
||||
return newObject;
|
||||
}
|
||||
}
|
||||
@@ -87,8 +89,8 @@ namespace AyaNova.Biz
|
||||
item.ReceivedCost = 0;
|
||||
item.ReceivedDate = null;
|
||||
item.PurchaseOrderId = 0;
|
||||
item.WorkorderItemPartRequestId=null;
|
||||
item.PartRequestedById=null;
|
||||
item.WorkorderItemPartRequestId = null;
|
||||
item.PartRequestedById = null;
|
||||
}
|
||||
newObject.Id = 0;
|
||||
newObject.Concurrency = 0;
|
||||
@@ -108,8 +110,8 @@ namespace AyaNova.Biz
|
||||
internal async Task<PurchaseOrder> GetAsync(long id, bool populateDisplayFields, bool logTheGetEvent)
|
||||
{
|
||||
var ret = await ct.PurchaseOrder.Include(z => z.Items).AsNoTracking().SingleOrDefaultAsync(z => z.Id == id);
|
||||
|
||||
await SetDisplayFields(ret);
|
||||
if (populateDisplayFields)
|
||||
await SetDisplayFields(ret);
|
||||
|
||||
if (logTheGetEvent && ret != null)
|
||||
await EventLogProcessor.LogEventToDatabaseAsync(new Event(UserId, id, BizType, AyaEvent.Retrieved), ct);
|
||||
@@ -132,6 +134,7 @@ namespace AyaNova.Biz
|
||||
|
||||
foreach (PurchaseOrderItem item in po.Items)
|
||||
{
|
||||
|
||||
item.DisplayPartNumber = await ct.Part.AsNoTracking().Where(x => x.Id == item.PartId).Select(x => x.PartNumber).SingleAsync();
|
||||
item.DisplayWarehouse = await ct.PartWarehouse.AsNoTracking().Where(x => x.Id == item.PartWarehouseId).Select(x => x.Name).SingleAsync();
|
||||
if (item.WorkorderItemPartRequestId != null)
|
||||
|
||||
@@ -1706,24 +1706,19 @@ namespace AyaNova.Util
|
||||
PurchaseOrder o = new PurchaseOrder();
|
||||
o.Notes = Fake.Lorem.Sentence();
|
||||
o.Tags = RandomTags();
|
||||
o.VendorId = Fake.Random.Long(1, 9);//this matches the range set in parts so that we get some vendor numbers being set
|
||||
o.VendorId = Fake.Random.Long(1, 9);//this matches the range set in parts so that we get ALL vendor numbers being set
|
||||
var poDate = Fake.Date.Between(seedStartWindow, seedEndWindow);
|
||||
o.OrderedDate = poDate.ToUniversalTime();
|
||||
o.ExpectedReceiveDate = poDate.AddDays(5).ToUniversalTime();
|
||||
o.Status = PurchaseOrderStatus.ClosedFullReceived;
|
||||
o.ReferenceNumber = Fake.Finance.Account(6);
|
||||
o.VendorMemo = Fake.Lorem.Sentence();
|
||||
if (Fake.Random.Number(1, 10) == 5)
|
||||
{
|
||||
o.ProjectId = Fake.Random.Long(1, TotalSeededProjects);
|
||||
}
|
||||
if (Fake.Random.Number(1, 10) == 5)
|
||||
o.ProjectId = Fake.Random.Long(1, TotalSeededProjects);
|
||||
|
||||
o.Text1 = Fake.Lorem.Sentence(1, 3);
|
||||
o.Text2 = Fake.Lorem.Sentence(1, 3);
|
||||
|
||||
|
||||
|
||||
|
||||
List<long> partsAdded = new List<long>();
|
||||
int partCount = Fake.Random.Int(1, 5);
|
||||
for (int y = 0; y < partCount; y++)
|
||||
@@ -1753,7 +1748,7 @@ namespace AyaNova.Util
|
||||
using (AyContext ct = ServiceProviderProvider.DBContext)
|
||||
{
|
||||
PurchaseOrderBiz biz = PurchaseOrderBiz.GetBiz(ct);
|
||||
var NewObject = await biz.CreateAsync(o);
|
||||
var NewObject = await biz.CreateAsync(o, false);
|
||||
TotalSeededPurchaseOrders++;
|
||||
if (NewObject == null)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user