public async Task <IActionResult> OnGetAsync(int id) { AccessoriesOrder = await _context.AccessoriesOrder .Include(m => m.MalfunctionWorkOrder) .ThenInclude(m => m.Instrument) .FirstOrDefaultAsync(m => m.ID == id); if (AccessoriesOrder == null) { return(NotFound()); } // 如果工单已完成则跳转到工单详情页 if (AccessoriesOrder.MalfunctionWorkOrder.Progress == WorkOrderProgress.Completed) { return(RedirectToPage("../WorkOrders/Details", new { id = AccessoriesOrder.MalfunctionWorkOrderID })); } var isAuthorized = await _authorizationService.AuthorizeAsync(User, AccessoriesOrder.MalfunctionWorkOrder, Operations.Update); if (!isAuthorized.Succeeded) { return(Forbid()); } return(Page()); }
public async Task <IActionResult> OnPostAsync(int id) { AccessoriesOrder = await _context.AccessoriesOrder .Include(m => m.MalfunctionWorkOrder) .ThenInclude(m => m.Instrument) .FirstOrDefaultAsync(m => m.ID == id); if (AccessoriesOrder == null) { return(NotFound()); } // 如果工单已完成则跳转到工单详情页 if (AccessoriesOrder.MalfunctionWorkOrder.Progress == WorkOrderProgress.Completed) { return(RedirectToPage("../WorkOrders/Details", new { id = AccessoriesOrder.MalfunctionWorkOrderID })); } var isAuthorized = await _authorizationService.AuthorizeAsync(User, AccessoriesOrder.MalfunctionWorkOrder, Operations.Update); if (!isAuthorized.Succeeded) { return(Forbid()); } if (await TryUpdateModelAsync <AccessoriesOrder>( AccessoriesOrder, "AccessoriesOrder", i => i.Name, i => i.PlaceTime, i => i.ArrivalTime, i => i.Remark)) { // 更新进度 if (AccessoriesOrder.MalfunctionWorkOrder.Progress < WorkOrderProgress.Waiting) { AccessoriesOrder.MalfunctionWorkOrder.Progress = WorkOrderProgress.Waiting; } await _context.SaveChangesAsync(); return(RedirectToPage("../WorkOrders/Details", new { id = AccessoriesOrder.MalfunctionWorkOrderID })); } return(Page()); }