public IActionResult DeleteUniteLegale(String siren) { UniteLegale existingUniteLegale = _context.UniteLegale.Include(u => u.etablissements) .FirstOrDefault(u => u.siren == siren); if (existingUniteLegale == null) { return(BadRequest()); } _context.RemoveRange(existingUniteLegale.etablissements); _context.Remove(existingUniteLegale); _context.SaveChanges(); return(Ok()); }
public IActionResult SaveUniteLegale([FromBody] List <String> sirets) { string siren = sirets.First().Substring(0, 9); UniteLegale uniteLegale = _apiClient.GetUniteLegale(siren); List <Etablissement> etablissementBySiret = new List <Etablissement>(); foreach (string siret in sirets) { Etablissement selectedEtablissement = uniteLegale.etablissements.FirstOrDefault(etablissement => etablissement.siret == siret); Etablissement existingEtablissement = _context.Etablissements.FirstOrDefault(e => e.siret == selectedEtablissement.siret); if (selectedEtablissement != null) { if (existingEtablissement != null) { return(BadRequest(StatusCode(404))); } else { etablissementBySiret.Add(selectedEtablissement); } } } uniteLegale.etablissements = etablissementBySiret; UniteLegale existingUniteLegale = _context.UniteLegale.Include(u => u.etablissements).FirstOrDefault(u => u.siren == uniteLegale.siren); if (existingUniteLegale != null) { return(BadRequest(StatusCode(404))); } else { _context.Add(uniteLegale); } _context.SaveChanges(); return(Ok()); }