/// <summary> /// Create action result after trying to link voter id with aadhar. /// </summary> /// <param name="response">Http response</param> /// <returns>Action result</returns> internal static IActionResult CreateVoterIdLinkActionResult(HttpResponseMessage response) { Dictionary <string, string> configDictionary = ConfigFileReader.GetConfigFromJsonFile(); string candidates = configDictionary["Candidates"]; string voterIdLinkStatus; switch ((int)response.StatusCode) { case (int)Enums.VoterIdLinkingStatus.Unauthorized: voterIdLinkStatus = Enums.VoterIdLinkingStatus.Unauthorized.ToString(); break; case (int)Enums.VoterIdLinkingStatus.LinkingFailed: voterIdLinkStatus = Enums.VoterIdLinkingStatus.LinkingFailed.ToString(); break; case (int)Enums.VoterIdLinkingStatus.AlreadyLinked: voterIdLinkStatus = string.Concat(Enums.VoterIdLinkingStatus.AlreadyLinked.ToString(), ":", candidates); break; case (int)Enums.VoterIdLinkingStatus.SuccessfullyLinked: voterIdLinkStatus = string.Concat(Enums.VoterIdLinkingStatus.SuccessfullyLinked.ToString(), ":", candidates); break; default: voterIdLinkStatus = Enums.VoterIdLinkingStatus.Unauthorized.ToString(); break; } return(new ContentResult { StatusCode = (int)Enums.ResponseMessageCode.Success, Content = voterIdLinkStatus }); }
/// <summary> /// Validate cast vote data. /// </summary> /// <param name="userDetails">User details</param> /// <returns>Action result</returns> internal static IActionResult ValidateCastVoteData(UserDetails userDetails) { double.TryParse(userDetails.AadharNo, out double aadharResult); if (string.IsNullOrWhiteSpace(userDetails.AadharNo) || !userDetails.AadharNo.Trim().Length.Equals(12) || aadharResult.Equals(0) || string.IsNullOrWhiteSpace(userDetails.VoterId) || !userDetails.VoterId.Trim().Length.Equals(10) || string.IsNullOrWhiteSpace(userDetails.VoteFor) || !ConfigFileReader.GetConfigFromJsonFile()["Candidates"].Split('#').ToList().Contains(userDetails.VoteFor) || userDetails.Otp.Equals(null) || userDetails.Otp < 100000 || userDetails.Otp > 999999) { return(new ContentResult { StatusCode = (int)Enums.ResponseMessageCode.Success, Content = Enums.CastVoteStatus.VotingFailed.ToString() }); } return(null); }