Browse Source

#31064 validate age for mobile api

feature/Redmine-17825-Email_Template
Leeza Baidar 4 months ago
parent
commit
627aa51183
  1. 28
      Business/Mobile/MobileServices.cs

28
Business/Mobile/MobileServices.cs

@ -1760,6 +1760,25 @@ namespace Business.Mobile
return _resp;
}
private JsonRxResponse CalculateAge(string dob)
{
JsonRxResponse _resp = new JsonRxResponse() { ErrorCode = "0", Msg = "Success" };
if (DateTime.TryParse(dob, out DateTime dateOfBirth))
{
DateTime today = DateTime.Today;
int age = today.Year - dateOfBirth.Year;
if (dateOfBirth.Date > today.AddYears(-age))
age--;
if (age < 18)
{
_resp.SetResponse("100", "User must be at least 18 years old!");
return _resp;
}
}
return _resp;
}
public JsonRxResponse NewUserRegister(NewUserRegisterModel newUserRegister)
{
var lang = Convert.ToString(CallContext.GetData(Constants.Language));
@ -1770,7 +1789,7 @@ namespace Business.Mobile
string pwd = newUserRegister.Password;
string Confirmpwd = newUserRegister.ConfirmPassword;
string enumString = string.Empty;
string dob = newUserRegister.DOB;
if (!newUserRegister.UserId.IsValidEmail())
{
@ -1807,6 +1826,13 @@ namespace Business.Mobile
return verifyPwdResp;
}
var calculateAge = CalculateAge(dob);
Log.Debug("NewUserRegister.IsValidAge | RESPONSE : " + JsonConvert.SerializeObject(calculateAge));
if (calculateAge.ErrorCode != "0")
{
return calculateAge;
}
newUserRegister.MobileNumber = newUserRegister.MobileNumber.getUKFormattedNumber();
res = _requestServices.NewUserRegister(newUserRegister);

Loading…
Cancel
Save