private Reply FindSignForDate(RequestBirth birthDate) { var day = birthDate.Day; var month = birthDate.Mo; var year = birthDate.Year; var sign = ZodiacSign.Varsator; var signRanges = ReadFile(); int signIndex = -1; foreach (var signRange in signRanges) { if ((month == signRange.StartMonth && day >= signRange.StartDay) || (month == signRange.EndMonth && day <= signRange.EndDay)) { signIndex = signRange.SignIndex; break; } } if (signIndex > -1) { return(new Reply() { Sign = (ZodiacSign)signIndex }); } else { Console.WriteLine("Nu s-a putut afla zodia"); return(null); } }
public override Task <Reply> ZodieFinder(RequestBirth request, ServerCallContext context) { Console.WriteLine("Request: " + request.Day + "/" + request.Mo + "/" + request.Year); Task <Reply> reply = null; try { reply = Task.FromResult(FindSignForDate(request)); } catch (Exception e) { Console.WriteLine(e.ToString()); } return(reply); }
private static RequestBirth getBirthday() { Console.Write("Ziua de nastere : "); var dateOfBirthStr = Console.ReadLine(); if (dateOfBirthStr == null || !IsDateValid(dateOfBirthStr)) { Console.WriteLine("Data invalida!"); System.Environment.Exit(1); } var fields = dateOfBirthStr.Split('/'); var rb = new RequestBirth(); rb.Day = Int32.Parse(fields[0]); rb.Mo = Int32.Parse(fields[1]); rb.Year = Int32.Parse(fields[2]); return(rb); }