Exemplo n.º 1
0
        /// <summary>
        ///  Search hospitals in database using Advanced option
        /// </summary>
        /// <param name="cityId">City ID</param>
        /// <param name="districtId">District ID</param>
        /// <param name="specialityId">Speciality ID</param>
        /// <param name="diseaseName">Disease name</param>
        /// <returns>List[HospitalEntity] that contains a list of Hospitals</returns>
        public async Task <List <HospitalEntity> > AdvancedSearchHospital(int cityId,
                                                                          int districtId, int specialityId, string diseaseName)
        {
            List <HospitalEntity> hospitalList = null;

            // Search for suitable hospitals in database
            using (LinqDBDataContext data = new LinqDBDataContext())
            {
                hospitalList = await Task.Run(() =>
                                              (from h in data.SP_ADVANCED_SEARCH_HOSPITAL(cityId, districtId, specialityId, diseaseName)
                                               select new HospitalEntity()
                {
                    Hospital_ID = h.Hospital_ID,
                    Hospital_Name = h.Hospital_Name,
                    Address = h.Address,
                    Ward_ID = h.Ward_ID,
                    District_ID = h.District_ID,
                    City_ID = h.City_ID,
                    Phone_Number = h.Phone_Number,
                    Coordinate = h.Coordinate,
                    Is_Active = h.Is_Active,
                    Rating = h.Rating
                }).ToList());
            }

            // Return list of hospitals
            return(hospitalList);
        }