// To protect from overposting attacks, see https://aka.ms/RazorPagesCRUD public async Task <IActionResult> OnPostAsync() { if (!ModelState.IsValid) { return(Page()); } var main = new LOVA.API.Models.Lova.Maintenance { RecurringFrequence = Maintenance.RecurringFrequence, Name = Maintenance.Name, MaintenanceGroupId = Maintenance.MaintenanceGroupId, AssociationId = Maintenance.AssociationId }; _context.Maintenances.Add(main); await _context.SaveChangesAsync(); var latestmain = new LatestMaintenance { MaintenanceId = main.Id, LastMaintenance = Maintenance.LastMaintenance, NextMaintenance = Maintenance.LastMaintenance.AddMonths(Maintenance.RecurringFrequence) }; _context.LatestMaintenances.Add(latestmain); await _context.SaveChangesAsync(); return(RedirectToPage("./ListMaintenanceActivities")); }
public async Task <IActionResult> OnGetAsync(int?id) { if (id == null) { return(NotFound()); } LatestMaintenance = await _context.LatestMaintenances .Include(l => l.Maintenance) .Where(m => m.MaintenanceId == id) .OrderByDescending(m => m.LastMaintenance) .FirstOrDefaultAsync(); if (LatestMaintenance == null) { return(NotFound()); } return(Page()); }
// To protect from overposting attacks, enable the specific properties you want to bind to. // For more details, see https://aka.ms/RazorPagesCRUD. public async Task <IActionResult> OnPostAsync() { if (!ModelState.IsValid) { return(Page()); } //_context.Attach(LatestMaintenance).State = EntityState.Modified; var latestMain = new LatestMaintenance { LastMaintenance = LatestMaintenance.LastMaintenance, NextMaintenance = LatestMaintenance.LastMaintenance.AddMonths(LatestMaintenance.Maintenance.RecurringFrequence), MaintenanceId = LatestMaintenance.MaintenanceId }; _context.Add(latestMain); try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!LatestMaintenanceExists(LatestMaintenance.Id)) { return(NotFound()); } else { throw; } } return(RedirectToPage("./ListMaintenanceActivities")); }