public static void Initializer(NLHContext nLHContext) { // IApplicationBuilder applicationBuilder) // NLHContext nLHContext = applicationBuilder.ApplicationServices.GetRequiredService<NLHContext>(); //nLHContext.Database.EnsureCreated(); if (nLHContext.medecins.Any()) { return; } var Medecins = new Medecin[] { new Medecin { Id_Medecin = "MaMa", Nom_Medecin = "Manon", Prenom_Medecin = "Marie", Specialite_Medecin = "Chirugien" }, new Medecin { Id_Medecin = "PaLa", Nom_Medecin = "Patrick", Prenom_Medecin = "Lambert", Specialite_Medecin = "Dentiste" }, new Medecin { Id_Medecin = "LoHe", Nom_Medecin = "Lonbon", Prenom_Medecin = "Henrie", Specialite_Medecin = "Pédiatre" }, new Medecin { Id_Medecin = "MaAn", Nom_Medecin = "Marilou", Prenom_Medecin = "Annette", Specialite_Medecin = "Géneraliste" }, new Medecin { Id_Medecin = "HoIn", Nom_Medecin = "Hoiutiu", Prenom_Medecin = "Ines", Specialite_Medecin = "Ophtamologue" }, new Medecin { Id_Medecin = "LoMa", Nom_Medecin = "Londurt", Prenom_Medecin = "Max", Specialite_Medecin = "Chirugien" }, }; foreach (Medecin m in Medecins) { nLHContext.medecins.Add(m); } nLHContext.SaveChanges(); var Parents = new Parent[] { new Parent { Nom_Parent = "Marilyn", Prenom_Parent = "Monar", Adresse_Parent = "Jarry", Ville_Parent = "Montréal", Province_Parent = "Québec", Code_Postale_Parent = "H2G3R8", Telephone_Parent = "4385825748" }, new Parent { Nom_Parent = "Pat", Prenom_Parent = "Le chat", Adresse_Parent = "Papineau", Ville_Parent = "Montréal", Province_Parent = "Québec", Code_Postale_Parent = "H1G3R7", Telephone_Parent = "4385805748" }, new Parent { Nom_Parent = "Marcelle", Prenom_Parent = "Desailly", Adresse_Parent = "Bourassa", Ville_Parent = "Montréal", Province_Parent = "Québec", Code_Postale_Parent = "H2G3G9", Telephone_Parent = "5145825748" }, new Parent { Nom_Parent = "Lambertin", Prenom_Parent = "Moiu", Adresse_Parent = "Beaubien", Ville_Parent = "Montréal", Province_Parent = "Québec", Code_Postale_Parent = "J5G3R8", Telephone_Parent = "4385825760" }, }; foreach (Parent p in Parents) { nLHContext.parents.Add(p); } nLHContext.SaveChanges(); var CompagnieAssurances = new Compagnie_Assurance[] { new Compagnie_Assurance { Nom_Compagnie = "Industriel Alliance" }, new Compagnie_Assurance { Nom_Compagnie = "La crois bleue" }, new Compagnie_Assurance { Nom_Compagnie = "RAMQ" }, new Compagnie_Assurance { Nom_Compagnie = "AXA" }, }; foreach (Compagnie_Assurance c in CompagnieAssurances) { nLHContext.assurances.Add(c); } nLHContext.SaveChanges(); var Patients = new Patient[] { new Patient { NSS = "RIAN0212", Date_Naissance_Patient = DateTime.Parse("1998-02-12"), Nom_Patient = "Rita", Prenom_Patient = "Anuska", Adresse_Patient = "Jarry", Ville_Patient = "Montréal", Province_Patient = "Québec", Code_Postale_Patient = "K5O6T8", Telephone_Patient = "5142876589", Id_Medecin = Medecins.Single(m => m.Nom_Medecin == "Manon").Id_Medecin, Id_Compagnie = CompagnieAssurances.Single(c => c.Nom_Compagnie == "Industriel Alliance").Id_Compagnie, Ref_Parent = Parents.Single(p => p.Nom_Parent == "Marilyn").Ref_Parent }, new Patient { NSS = "MALI0212", Date_Naissance_Patient = DateTime.Parse("2009-02-12"), Nom_Patient = "Marina", Prenom_Patient = "lise", Adresse_Patient = "Papineau", Ville_Patient = "Montréal", Province_Patient = "Québec", Code_Postale_Patient = "K5A6S8", Telephone_Patient = "5146986589", Id_Medecin = Medecins.Single(m => m.Nom_Medecin == "Patrick").Id_Medecin, Id_Compagnie = CompagnieAssurances.Single(c => c.Nom_Compagnie == "RAMQ").Id_Compagnie, Ref_Parent = Parents.Single(p => p.Nom_Parent == "Pat").Ref_Parent }, new Patient { NSS = "LOMA1012", Date_Naissance_Patient = DateTime.Parse("2016-10-12"), Nom_Patient = "Louise", Prenom_Patient = "Mali", Adresse_Patient = "Pie IX", Ville_Patient = "Montréal", Province_Patient = "Québec", Code_Postale_Patient = "B4P6T8", Telephone_Patient = "4382876589", Id_Medecin = Medecins.Single(m => m.Nom_Medecin == "Lonbon").Id_Medecin, Id_Compagnie = CompagnieAssurances.Single(c => c.Nom_Compagnie == "La crois bleue").Id_Compagnie, Ref_Parent = Parents.Single(p => p.Nom_Parent == "Marcelle").Ref_Parent }, new Patient { NSS = "MALO1130", Date_Naissance_Patient = DateTime.Parse("2016-11-30"), Nom_Patient = "Marina", Prenom_Patient = "Loula", Adresse_Patient = "Pie IX", Ville_Patient = "Montréal", Province_Patient = "Québec", Code_Postale_Patient = "B4P6T8", Telephone_Patient = "4382876589", Id_Medecin = Medecins.Single(m => m.Nom_Medecin == "Lonbon").Id_Medecin, Id_Compagnie = CompagnieAssurances.Single(c => c.Nom_Compagnie == "La crois bleue").Id_Compagnie, Ref_Parent = Parents.Single(p => p.Nom_Parent == "Marcelle").Ref_Parent }, }; foreach (Patient p in Patients) { var patientInDB = nLHContext.patients.Where( m => m.Medecin.Id_Medecin == p.Id_Medecin && m.Compagnie_Assurance.Id_Compagnie == p.Id_Compagnie && m.Parent.Ref_Parent == p.Ref_Parent ).SingleOrDefault(); if (patientInDB == null) { nLHContext.patients.Add(p); } } nLHContext.SaveChanges(); var Departements = new Departement[] { new Departement { Nom_Departement = "Pédiatrie" }, new Departement { Nom_Departement = "Chirugie" }, new Departement { Nom_Departement = "Ophtamologie" }, new Departement { Nom_Departement = "Génicologie" }, new Departement { Nom_Departement = "Pédiatrie" }, }; foreach (Departement d in Departements) { nLHContext.departements.Add(d); } nLHContext.SaveChanges(); var TypeLits = new Type_Lit[] { new Type_Lit { Description = "Individuel", Cout = 250 }, new Type_Lit { Description = "Double", Cout = 150 }, new Type_Lit { Description = "standart", Cout = 50 }, }; foreach (Type_Lit t in TypeLits) { nLHContext.Type_Lits.Add(t); } nLHContext.SaveChanges(); var Lits = new Lit[] { new Lit { Occupe = "non", Id_Departement = Departements.Single(l => l.Nom_Departement == "Pédiatrie").Id_Departement, Numero_Type = TypeLits.Single(t => t.Description == "Individuel").Numero_Type }, new Lit { Occupe = "non", Id_Departement = Departements.Single(l => l.Nom_Departement == "Pédiatrie").Id_Departement, Numero_Type = TypeLits.Single(t => t.Description == "standart").Numero_Type }, new Lit { Occupe = "oui", Id_Departement = Departements.Single(l => l.Nom_Departement == "Pédiatrie").Id_Departement, Numero_Type = TypeLits.Single(t => t.Description == "Double").Numero_Type } }; foreach (Lit l in Lits) { var litInDB = nLHContext.lits.Where( s => s.Departement.Id_Departement == l.Id_Departement && s.Type_Lit.Numero_Type == l.Numero_Type ).SingleOrDefault(); if (litInDB == null) { nLHContext.lits.Add(l); } } nLHContext.SaveChanges(); var DossierAdmissions = new Dossier_Admission[] { new Dossier_Admission { Chirugie_Programme = "Jambe", Date_Admission = DateTime.Parse("2018/06/03"), Date_Chirugie = DateTime.Parse("2018/06/04"), Date_Conge = DateTime.Parse("2018/08/10"), NSS = Patients.Single(p => p.NSS == "MALI0212").NSS, Numero_Lit = Lits.Single(l => l.Occupe == "non").Numero_Lit }, new Dossier_Admission { Chirugie_Programme = "Colon", Date_Admission = DateTime.Parse("2018/10/03"), Date_Chirugie = DateTime.Parse("2018/10/04"), Date_Conge = DateTime.Parse("2018/11/10"), NSS = Patients.Single(p => p.NSS == "RIAN0212").NSS, Numero_Lit = Lits.Single(l => l.Occupe == "non").Numero_Lit }, new Dossier_Admission { Chirugie_Programme = "Jambe", Date_Admission = DateTime.Parse("2019/06/03"), Date_Chirugie = DateTime.Parse("2019/06/04"), Date_Conge = DateTime.Parse("2019/08/10"), NSS = Patients.Single(p => p.NSS == "LOMA1012").NSS, Numero_Lit = Lits.Single(l => l.Occupe == "oui").Numero_Lit }, new Dossier_Admission { Chirugie_Programme = "Genou", Date_Admission = DateTime.Parse("2018/06/03"), Date_Chirugie = DateTime.Parse("2018/06/04"), Date_Conge = DateTime.Parse("2018/08/10"), NSS = Patients.Single(p => p.NSS == "MALO1130").NSS, Numero_Lit = Lits.Single(l => l.Occupe == "oui").Numero_Lit } }; foreach (Dossier_Admission d in DossierAdmissions) { var dossAdmInDB = nLHContext.dossier_Admissions.Where( s => s.Patient.NSS == d.NSS && s.Lit.Numero_Lit == d.Numero_Lit).SingleOrDefault(); if (dossAdmInDB == null) { nLHContext.dossier_Admissions.Add(d); } } nLHContext.SaveChanges(); var Factures = new Facture[] { new Facture { Date_Facture = DateTime.Parse("2019/08/20"), Montant_Facture = 568, Id_Admission = DossierAdmissions.Single(d => d.Chirugie_Programme == "Prostate").Id_Admission }, new Facture { Date_Facture = DateTime.Parse("2018/08/20"), Montant_Facture = 668, Id_Admission = DossierAdmissions.Single(d => d.Chirugie_Programme == "Colon").Id_Admission }, new Facture { Date_Facture = DateTime.Parse("2017/08/20"), Montant_Facture = 1000, Id_Admission = DossierAdmissions.Single(d => d.Chirugie_Programme == "Jambe").Id_Admission }, new Facture { Date_Facture = DateTime.Parse("2019/01/20"), Montant_Facture = 1000, Id_Admission = DossierAdmissions.Single(d => d.Chirugie_Programme == "Genou").Id_Admission } }; foreach (Facture f in Factures) { nLHContext.factures.Add(f); } nLHContext.SaveChanges(); var CommoditeExtras = new Commodites_Extra[] { new Commodites_Extra { Description_Commodite = "Televiseur", Taux_Quotidient = 205, }, new Commodites_Extra { Description_Commodite = "Televiseur+téléphone", Taux_Quotidient = 355, }, new Commodites_Extra { Description_Commodite = "Téléphone", Taux_Quotidient = 205, } }; foreach (Commodites_Extra c in CommoditeExtras) { nLHContext.commodites_Extras.Add(c); } nLHContext.SaveChanges(); var CommoditeAdmissions = new Commodite_Admission[] { new Commodite_Admission { Id_Admission = DossierAdmissions.Single(d => d.Chirugie_Programme == "Prostate").Id_Admission, Id_Commodite = CommoditeExtras.Single(c => c.Description_Commodite == "Televiseur").Id_Commodites }, new Commodite_Admission { Id_Admission = DossierAdmissions.Single(d => d.Chirugie_Programme == "Colon").Id_Admission, Id_Commodite = CommoditeExtras.Single(c => c.Description_Commodite == "Téléphone").Id_Commodites }, new Commodite_Admission { Id_Admission = DossierAdmissions.Single(d => d.Chirugie_Programme == "Jambe").Id_Admission, Id_Commodite = CommoditeExtras.Single(c => c.Description_Commodite == "Televiseur+téléphone").Id_Commodites }, new Commodite_Admission { Id_Admission = DossierAdmissions.Single(d => d.Chirugie_Programme == "Genou").Id_Admission, Id_Commodite = CommoditeExtras.Single(c => c.Description_Commodite == "Televiseur+téléphone").Id_Commodites }, }; foreach (Commodite_Admission c in CommoditeAdmissions) { nLHContext.commodite_Admissions.Add(c); } nLHContext.SaveChanges(); }