コード例 #1
0
        public async Task StartSearchAsync()
        {
            var    cancellationToken = new CancellationTokenSource().Token;
            string date             = DateTime.Now.ToString("dd-MM-yyyy");
            var    sessionsResponse = await coWINAppointmentService.FetchSessionsByDistrictIdAndDate(
                DistrictsDTO.Where(x => x.DistrictName == District).FirstOrDefault().DistrictId.ToString(), date, cancellationToken);



            foreach (var center in sessionsResponse.Centers)
            {
                if (center != null)
                {
                    foreach (var session in center.Sessions)
                    {
                        if (session != null)
                        {
                            var vaccineCenter = new VaccineCenter();
                            vaccineCenter.CenterName        = center.Name;
                            vaccineCenter.Availability      = session.AvailableCapacity;
                            vaccineCenter.AvailabilityDose1 = session.AvailableCapacityDose1;
                            vaccineCenter.AvailabilityDose2 = session.AvailableCapacityDose2;
                            vaccineCenter.MinimumAgeLimit   = session.MinAgeLimit;
                            vaccineCenter.VaccineType       = session.Vaccine;
                            AvailableVaccineCenters.Add(vaccineCenter);
                        }
                    }
                }
            }

            HideSearchResults = false;
            StateHasChangedDelegate?.Invoke();
        }
コード例 #2
0
        private string CompactNotification(VaccineCenter vc)
        {
            var    sb             = new StringBuilder();
            double totalAvailable = 0;

            foreach (var session in vc.Sessions)
            {
                //sb.AppendLine($"  - {session.AvailableCapacity} available on {session.Date}, age limit {session.MinAgeLimit} for {session.VaccineName} vaccine ");
                totalAvailable += session.AvailableCapacity;
            }
            sb.Append($"- {vc.Name} | {vc.PinCode} | {vc.StartTime} - {vc.EndTime} | {vc.BillType} | {totalAvailable} slots available");
            return(sb.ToString());
        }