public IActionResult Register([FromBody] PortCall portCall) { try { var clearanceAgencies = _context.Organization.Where(org => org.OrganizationTypeId == Constants.Integers.DatabaseTableIds.ORGANIZATION_TYPE_GOVERNMENT_AGENCY).ToList(); List <OrganizationPortCall> organizationPortCallList = new List <OrganizationPortCall>(); if (clearanceAgencies.Any()) { foreach (Organization agency in clearanceAgencies) { OrganizationPortCall opc = new OrganizationPortCall { OrganizationId = agency.OrganizationId, PortCallId = portCall.PortCallId }; organizationPortCallList.Add(opc); _context.OrganizationPortCall.Add(opc); } _context.SaveChanges(); return(Json(organizationPortCallList)); } else { return(BadRequest("Warning: clearance list for port call is empty: no authorities could be found")); } } catch (DbUpdateException ex) when(ex.InnerException is Npgsql.PostgresException) { Npgsql.PostgresException innerEx = (Npgsql.PostgresException)ex.InnerException; return(BadRequest("PostgreSQL Error Code: " + innerEx.SqlState)); } }
public IActionResult Save([FromBody] OrganizationPortCall organizationPortCall) { try { if (_context.OrganizationPortCall.Any(opc => opc.OrganizationPortCallId == organizationPortCall.OrganizationPortCallId)) { _context.OrganizationPortCall.Update(organizationPortCall); } else { _context.OrganizationPortCall.Add(organizationPortCall); } _context.SaveChanges(); } catch (DbUpdateException ex) when(ex.InnerException is Npgsql.PostgresException) { Npgsql.PostgresException innerEx = (Npgsql.PostgresException)ex.InnerException; return(BadRequest("PostgreSQL Error Code: " + innerEx.SqlState)); } return(Json(organizationPortCall)); }