diff --git a/server/AyaNova/biz/WorkOrderBiz.cs b/server/AyaNova/biz/WorkOrderBiz.cs index 723b968f..a04d2ffa 100644 --- a/server/AyaNova/biz/WorkOrderBiz.cs +++ b/server/AyaNova/biz/WorkOrderBiz.cs @@ -958,7 +958,7 @@ namespace AyaNova.Biz transaction = await ct.Database.BeginTransactionAsync(); try { - var dbObject = await ct.WorkOrderItem.AsNoTracking().SingleOrDefaultAsync(z => z.Id == id); + var dbObject = await ct.WorkOrderItem.AsNoTracking().SingleOrDefaultAsync(z => z.Id == id); if (dbObject == null) { AddError(ApiErrorCode.NOT_FOUND); @@ -3772,19 +3772,20 @@ namespace AyaNova.Biz { //static method long WoId = await GetWorkOrderIdFromRelativeAsync(ayaType, id, ct); - var currentStatus = await ct.WorkOrderState.AsNoTracking() - .Include(z => z.WorkOrderStatus) + var stat = await ct.WorkOrderState.AsNoTracking() .Where(z => z.WorkOrderId == WoId) - .OrderBy(z => z.Created) - .Select(z => z.WorkOrderStatus) + .OrderByDescending(z => z.Created) .Take(1) .FirstOrDefaultAsync(); - if (currentStatus == null) - { - //default + + + //no state set yet? + if (stat == null) + { //default return new WorkOrderStatus() { Id = -1, Locked = false, Completed = false }; } - return currentStatus; + return await ct.WorkOrderStatus.AsNoTracking().Where(z => z.Id == stat.WorkOrderStatusId).FirstAsync();//this should never not be null + } diff --git a/server/AyaNova/models/WorkOrderState.cs b/server/AyaNova/models/WorkOrderState.cs index 7128c9e1..c0530e70 100644 --- a/server/AyaNova/models/WorkOrderState.cs +++ b/server/AyaNova/models/WorkOrderState.cs @@ -19,7 +19,9 @@ namespace AyaNova.Models [Required] public long UserId { get; set; } - //UTILITY FIELDS + //UTILITY FIELDS + [NotMapped] + // public bool IsDirty { get; set; } = false;//never dirty coming from the server //related [JsonIgnore]//internal only here at server not used by client