private bool SaveOTP(string OTP, string MobileNo) { tblOtpTransaction objOtp = new tblOtpTransaction(); objOtp.GenerateDateTime = DateTime.Now; objOtp.OTP = OTP; objOtp.MobileNo = MobileNo; using (var entities = new LiftBuddyEntities()) { try { entities.tblOtpTransactions.Add(objOtp); entities.SaveChanges(); } catch (Exception ex) { return(false); } } return(true); }
public async Task <UserResponse> VerifyOTP(tblOtpTransaction objOTP) { UserResponse objResponse = new UserResponse(); try { tblOtpTransaction verifyWith = new tblOtpTransaction(); using (var entities = new LiftBuddyEntities()) { verifyWith = await Task.Run(() => entities.tblOtpTransactions.Where(o => o.MobileNo == objOTP.MobileNo).OrderByDescending(o => o.GenerateDateTime).FirstOrDefault()); if (objOTP.OTP == verifyWith.OTP) { verifyWith.IsUsed = true; verifyWith.UsedOn = DateTime.Now; await entities.SaveChangesAsync(); objResponse.Status = true; objResponse.UserId = await Task.Run(() => entities.tblUsers.Where(o => o.MobileNo == objOTP.MobileNo).Select(o => o.ID).FirstOrDefault()); objResponse.ResponseValue = "OTP matched."; } else { objResponse.Status = false; objResponse.ResponseValue = "Otp mismatched."; objResponse.UserId = 0; } } } catch (Exception ex) { objResponse.Status = false; objResponse.ResponseValue = ex.Message; } return(objResponse); }