Esempio n. 1
0
        public async Task <ActionResult> AgregarEspecialidad(string hospitalId)
        {
            using (HttpClient client = new HttpClient())
            {
                client.BaseAddress = new Uri("https://localhost:44349");
                var ck = ControllerContext.HttpContext.Request.Cookies["Token"];
                client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", ck);
                var response = await client.GetAsync($"api/SpecialitiesCatalog");

                if (response.IsSuccessStatusCode)
                {
                    List <SelectListItem> lst = new List <SelectListItem>();
                    foreach (var speciality in JsonConvert.DeserializeObject <List <SpecialitiesCatalog> >(await response.Content.ReadAsStringAsync()).ToList())
                    {
                        lst.Add(new SelectListItem()
                        {
                            Text = $"{speciality.Type}", Value = $"{speciality.Id}"
                        });
                    }
                    ViewBag.Especialidades = lst;
                    var hospitalEspecialidad = new HospitalSpeciality
                    {
                        HospitalId = hospitalId
                    };
                    return(View(hospitalEspecialidad));
                }
                return(NotFound());
            }
        }
Esempio n. 2
0
        public async Task <ActionResult> AgregarEspecialidad(HospitalSpeciality hospitalSpeciality)
        {
            using (HttpClient client = new HttpClient())
            {
                client.BaseAddress = new Uri("https://localhost:44349");
                var ck = ControllerContext.HttpContext.Request.Cookies["Token"];
                client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", ck);
                var map = new HospitalSpecialityAdd
                {
                    HospitalId     = hospitalSpeciality.HospitalId,
                    EspecialidadId = Convert.ToInt32(hospitalSpeciality.EspecialidadId)
                };
                var response = await client.PostAsJsonAsync <HospitalSpecialityAdd>($"api/HospitalSpecialities", map);

                if (response.IsSuccessStatusCode)
                {
                    return(RedirectToAction("HospitalEspecialidades", "Hospitals", new { id = hospitalSpeciality.HospitalId }));
                }
                return(NotFound());
            }
        }
Esempio n. 3
0
        /// <summary>
        /// Generates the seed data.
        /// </summary>
        /// <param name="overwrite">if set to <c>true</c> [overwrite].</param>
        private void GenerateSeedData(bool overwrite = false)
        {
            if (overwrite == false)
            {
                return;
            }

            Log.Debug($"Generating seed data with overwrite set to {true}");

            Directory.CreateDirectory(BasePathGeneratedSeed);

            #region -- Generate Seed for Speciality --

            List <Speciality> specialityList = SeedHelper.ParseSourceFile <Speciality>(SpecialitiesFileName);

            var specialitiesJsonString = JsonConvert.SerializeObject(specialityList, new JsonSerializerSettings {
                Formatting = Formatting.Indented
            });

            SeedHelper.SaveOrOverwriteGeneratedFile(SpecialitiesFileName, specialitiesJsonString, true);

            #endregion

            #region -- Generate Seed for doctors --

            List <string> firstNames = SeedHelper.ParseSourceFile <string>(FirstNamesFileName)
                                       .Select(fn => fn.Trim()).Distinct().Shuffle().ToList();

            List <string> middleNames = SeedHelper.ParseSourceFile <string>(MiddleNamesFileName)
                                        .Select(mn => mn.Trim()).Distinct().Shuffle().ToList();

            List <string> lastNames = SeedHelper.ParseSourceFile <string>(LastNamesFileName)
                                      .Select(ln => ln.Trim()).Distinct().Shuffle().ToList();

            var doctorList = new List <Doctor>();

            for (int i = 1; i < 500; i++)
            {
                doctorList.Add(GetRandomDoctor(i));
            }

            var doctorListJsonString = JsonConvert.SerializeObject(doctorList, _defaultJsonSerializerSettings);

            SeedHelper.SaveOrOverwriteGeneratedFile(DoctorFileName, doctorListJsonString, true);

            // Local function
            Doctor GetRandomDoctor(int doctorID)
            {
                return(new Doctor
                {
                    DoctorID = doctorID,
                    SpecialityID = specialityList.GetRandomShuffled().SpecialtyID,
                    Firstname = firstNames.GetRandomShuffled(),
                    Middlename = middleNames.GetRandomShuffled(),
                    Lastname = lastNames.GetRandomShuffled()
                });
            }

            #endregion

            #region -- Generate Seed for Addresses --

            List <Address> addressList = SeedHelper.ParseSourceFile <Address>(AddressesFileName);

            var addressJsonString = JsonConvert.SerializeObject(addressList, _defaultJsonSerializerSettings);

            SeedHelper.SaveOrOverwriteGeneratedFile(AddressesFileName, addressJsonString, true);

            #endregion

            #region -- Generate Seed for Hospital --

            List <Hospital> hospitalList = SeedHelper.ParseSourceFile <Hospital>(HospitalsFileName);

            var hospitalJsonString = JsonConvert.SerializeObject(hospitalList, _defaultJsonSerializerSettings);

            SeedHelper.SaveOrOverwriteGeneratedFile(HospitalsFileName, hospitalJsonString, true);

            #endregion

            #region -- Generate Seed for HospitalDoctor --

            List <HospitalDoctor> hospitalDoctorList = new List <HospitalDoctor>();

            for (int i = 1; i < 10000; i++)
            {
                hospitalDoctorList.Add(GetRandomHospitalDoctor(i));
            }

            HospitalDoctor GetRandomHospitalDoctor(int hospitalDoctorID)
            {
                return(new HospitalDoctor
                {
                    HospitalDoctorID = hospitalDoctorID,
                    HospitalID = hospitalList.GetRandomShuffled().HospitalID,
                    DoctorID = doctorList.GetRandomShuffled().DoctorID
                });
            }

            var hospitalDoctorJsonString = JsonConvert.SerializeObject(hospitalDoctorList, _defaultJsonSerializerSettings);

            SeedHelper.SaveOrOverwriteGeneratedFile(HospitalDoctorsFileName, hospitalDoctorJsonString, true);

            #endregion

            #region  -- Generate Seed for HospitalSpeciality --

            List <HospitalSpeciality> hospitalSpecialities = new List <HospitalSpeciality>();

            int countHospitalSpeciality = 1;

            hospitalList.ForEach(hospital =>
            {
                var randomNumberOfSpecialities = RandomHelpers.Next(specialityList.Count);

                for (int i = 0; i < randomNumberOfSpecialities; i++)
                {
                    var hs = new HospitalSpeciality()
                    {
                        HospitalSpecialityID = countHospitalSpeciality++,
                        HospitalID           = hospital.HospitalID,
                        SpecialtyID          = specialityList.GetRandomShuffled().SpecialtyID
                    };

                    hospitalSpecialities.Add(hs);
                }
            });

            int currentHs = 1;

            hospitalSpecialities = hospitalSpecialities
                                   .DistinctBy(hs => new { hs.HospitalID, hs.SpecialtyID })
                                   .Select(hs => new HospitalSpeciality()
            {
                HospitalSpecialityID = currentHs++,
                HospitalID           = hs.HospitalID,
                SpecialtyID          = hs.SpecialtyID
            })
                                   .ToList();

            var hospitalSpecialitiesJsonString = JsonConvert.SerializeObject(hospitalSpecialities, _defaultJsonSerializerSettings);

            SeedHelper.SaveOrOverwriteGeneratedFile(HospitalSpecialityFileName, hospitalSpecialitiesJsonString, true);


            #endregion

            Log.Debug("Completed generation of seed data");
        }
        public async Task <ActionResult <HospitalSpecialitiesDTO> > AddHospitalSpeciality([FromBody] HospitalSpeciality hospitalSpeciality)
        {
            var newHospitalSpeciality = new HospitalEspecialidad {
                EspecialidadId = hospitalSpeciality.EspecialidadId,
                HospitalId     = hospitalSpeciality.HospitalId
            };
            await context.HospitalEspecialidades.AddAsync(newHospitalSpeciality);

            await context.SaveChangesAsync();

            return(new CreatedAtRouteResult("HospitalSpeciality", new { hospitalId = newHospitalSpeciality.HospitalId, specialityId = newHospitalSpeciality.EspecialidadId }, newHospitalSpeciality));
        }