PutAsync(HelpDeskTickets UpdatedHelpDeskTickets) { // Get the existing record // Note: Caller must have the TicketGuid var ExistingTicket = _context.HelpDeskTickets .Where(x => x.TicketGuid == UpdatedHelpDeskTickets.TicketGuid) .FirstOrDefault(); if (ExistingTicket != null) { ExistingTicket.TicketDate = UpdatedHelpDeskTickets.TicketDate; ExistingTicket.TicketDescription = UpdatedHelpDeskTickets.TicketDescription; ExistingTicket.TicketGuid = UpdatedHelpDeskTickets.TicketGuid; ExistingTicket.TicketRequesterEmail = UpdatedHelpDeskTickets.TicketRequesterEmail; ExistingTicket.TicketStatus = UpdatedHelpDeskTickets.TicketStatus; // Insert any new TicketDetails if (UpdatedHelpDeskTickets.HelpDeskTicketDetails != null) { foreach (var item in UpdatedHelpDeskTickets.HelpDeskTicketDetails) { if (item.Id == 0) { // Create New HelpDeskTicketDetails record HelpDeskTicketDetails newHelpDeskTicketDetails = new HelpDeskTicketDetails(); newHelpDeskTicketDetails.HelpDeskTicketId = UpdatedHelpDeskTickets.Id; newHelpDeskTicketDetails.TicketDetailDate = DateTime.Now; newHelpDeskTicketDetails.TicketDescription = item.TicketDescription; _context.HelpDeskTicketDetails .Add(newHelpDeskTicketDetails); } } } _context.SaveChanges(); } else { return(Task.FromResult(false)); } return(Task.FromResult(true)); }
UpdateTicketAsync( HelpDeskTickets UpdatedHelpDeskTickets) { try { // Get the existing record. var ExistingTicket = _context.HelpDeskTickets .Where(x => x.Id == UpdatedHelpDeskTickets.Id) .FirstOrDefault(); if (ExistingTicket != null) { ExistingTicket.TicketDate = UpdatedHelpDeskTickets.TicketDate; ExistingTicket.TicketDescription = UpdatedHelpDeskTickets.TicketDescription; ExistingTicket.TicketGuid = UpdatedHelpDeskTickets.TicketGuid; ExistingTicket.TicketRequesterEmail = UpdatedHelpDeskTickets.TicketRequesterEmail; ExistingTicket.TicketStatus = UpdatedHelpDeskTickets.TicketStatus; // Insert any new TicketDetails. if (UpdatedHelpDeskTickets.HelpDeskTicketDetails != null) { foreach (var item in UpdatedHelpDeskTickets.HelpDeskTicketDetails) { if (item.Id == 0) { // Create new HelpDeskTicketDetails record. HelpDeskTicketDetails newHelpDeskTicketDetails = new HelpDeskTicketDetails(); newHelpDeskTicketDetails.HelpDeskTicketId = UpdatedHelpDeskTickets.Id; newHelpDeskTicketDetails.TicketDetailDate = DateTime.Now; newHelpDeskTicketDetails.TicketDescription = item.TicketDescription; _context.HelpDeskTicketDetails .Add(newHelpDeskTicketDetails); } } } _context.SaveChanges(); } else { return(Task.FromResult(false)); } return(Task.FromResult(true)); } catch (Exception ex) { DetachAllEntities(); throw ex; } }