public UsersReport(PUserProfileDto model, string PAgency) { Name = model.FirstName + " " + model.LastName; Agency = model.Agency; Mobile = model.PhoneNumber; Email = model.Email; Balance = model.Balance; Parent = PAgency; }
public async Task <IHttpActionResult> UpdateProfile(PUserProfileDto model) { var messages = new Messages(); ObjectDto <string> result = new ObjectDto <string>(); if (String.IsNullOrEmpty(model.PanCard) || String.IsNullOrEmpty(model.LastName) || String.IsNullOrEmpty(model.FirstName) || String.IsNullOrEmpty(model.Country) || String.IsNullOrEmpty(model.State) || String.IsNullOrEmpty(model.City)) { messages.Message = "*All fields are required"; result.messages.Add(messages); } else { try { model.LastModifiedDate = TimeZoneInfo.ConvertTime(DateTime.Now, TimeZoneInfo.FindSystemTimeZoneById("India Standard Time")); using (var context = new ApplicationDbContext()) { var user = await context.PUserProfile.FindAsync(model.UserId); user.BirthDate = model.BirthDate; user.City = model.City; user.Country = model.Country; user.FirstName = model.FirstName; user.Gender = model.Gender; user.LastName = model.LastName; user.PanCard = model.PanCard; user.State = model.State; user.GST = model.GST; context.Entry(user).State = EntityState.Modified; int i = await context.SaveChangesAsync(); if (i == 0) { messages.Message = "Internal Server Error"; result.messages.Add(messages); } else { messages.Message = "Your profile has updated successfully"; messages.Type = Toaster.SUCCESS.ToString(); result.messages.Add(messages); result.valid = true; } } } catch (Exception e) { messages.Message = e.Message + " " + e.GetBaseException(); result.messages.Add(messages); } } return(Ok(result)); }
public UserCasesViewModel(UserCasesDto model, PUserProfileDto user) { Id = model.Id; ReferenceNo = (ReferenceIdHelper.getRefId((ServiceType)model.ServiceTypeId)) + model.TransactionId; Date = model.CreatedDate; Issue = ((UserCaseReason)model.Issue).ToString().Replace("_", " "); Refund = model.Refund; Charged = model.Charged; Remarks = model.Remarks; Status = ((UserCasesStatus)model.Status).ToString(); Severity = ((Severity)model.Severity).ToString(); Agency = user.Agency; PhoneNo = user.PhoneNumber; TransactionId = model.TransactionId; }
public static AuthenticationProperties CreateProperties(ApplicationUser userApp) { var user = new PUserProfileDto(); var userName = userApp.UserName; string userId = userApp.Id; var roleId = userApp.Roles.FirstOrDefault(x => x.UserId == userId).RoleId; var role = ""; IList <string> services = new List <string>(); if (!String.IsNullOrEmpty(userId)) { using (var con = new ApplicationDbContext()) { user = con.PUserProfile.Find(userId); role = con.Roles.FirstOrDefault(x => x.Id == roleId).Name; var plan = con.PUserRegistrationPlans.Find(user.PlanId); if (plan != null) { if (plan.Rail) { services.Add("Rail"); } if (plan.Recharge) { services.Add("Recharge"); } if (plan.Flight) { services.Add("Flight"); } if (plan.DMR) { services.Add("DMR"); } } } } IDictionary <string, string> data = new Dictionary <string, string> { { "userName", userName }, { "user", JsonConvert.SerializeObject(user) }, { "role", role }, { "services", JsonConvert.SerializeObject(services) } }; return(new AuthenticationProperties(data)); }
public FlightReport(PFlightDto model, PUserProfileDto user) { Id = model.Id; CreatedDate = model.CreatedDate; Origin = model.Origin; Destination = model.Destination; Trip = model.Type; DOJ = model.DOJ; Status = ((StatusFlag)model.Status).ToString(); Markup = model.Markup; GrossAmount = model.GrossAmount; Commission = model.Commission; Agency = user.Agency; ContactNo = user.PhoneNumber; Email = user.Email; Address = user.City + ", " + user.State; }
public async Task <IHttpActionResult> RegisterUser(UserProfile model) { var messages = new Messages(); ObjectDto <decimal> data = new ObjectDto <decimal>(); try { decimal balance = 0; var UId = User.Identity.GetUserId(); using (var con = new ApplicationDbContext()) { var usedPhoneNumber = con.Users.FirstOrDefault(x => x.PhoneNumber == model.PhoneNumber); if (usedPhoneNumber != null) { var message = new Messages(); message.Message = "*Phone Number '" + model.PhoneNumber + "' is already taken."; data.messages.Add(message); return(Ok(data)); } var plan = await con.PUserRegistrationPlans.FindAsync(model.PlanId); var User = await con.PUserProfile.FindAsync(UId); var AId = System.Configuration.ConfigurationManager.AppSettings.Get("PartnerLoginId"); var admin = await con.PUserProfile.FirstOrDefaultAsync(x => x.Email.ToUpper() == AId.ToUpper()); if (plan != null) { if (User.Balance < plan.Fee) { var message = new Messages(); message.Message = "*Your account balance is low"; data.messages.Add(message); return(Ok(data)); } User.Balance -= Convert.ToDecimal(plan.Fee); model.Balance = plan.BalanceAmount; var adminBal = Convert.ToDecimal(plan.Fee) - plan.BalanceAmount; User.LastModifiedDate = TimeZoneInfo.ConvertTime(DateTime.Now, TimeZoneInfo.FindSystemTimeZoneById("India Standard Time")); con.Entry(User).State = EntityState.Modified; admin.Balance += adminBal; admin.LastModifiedDate = TimeZoneInfo.ConvertTime(DateTime.Now, TimeZoneInfo.FindSystemTimeZoneById("India Standard Time")); con.Entry(admin).State = EntityState.Modified; if ((await con.SaveChangesAsync()) <= 0) { var message = new Messages(); message.Message = "*Internal Server Error"; data.messages.Add(message); return(Ok(data)); } balance = User.Balance; } model.ParentId = User.Id; model.Password = "******"; } var user = new ApplicationUser() { UserName = model.Email, Email = model.Email, PhoneNumber = model.PhoneNumber }; IdentityResult result = await UserManager.CreateAsync(user, model.Password); if (!result.Succeeded) { //return GetErrorResult(result); foreach (string error in result.Errors) { messages.Message = "*" + error; } data.messages.Add(messages); } else { await UserManager.AddToRoleAsync(user.Id, model.Role); data.valid = true; data.Object = balance; var Body = "<div style='font-family: Verdana;font-size:12px'>Dear " + model.FirstName + " " + model.LastName + ","; Body += "<br/><br/>Welcome to the Travelothon family. Now access best in class online services."; Body += "<br/><br/>Below are your details:<br/><br/>username: "******"<br/>password: "******"<br/><br/><a href='partner.travelothon.in'>Visit Partner Portal</a>"; var Subject = "Welcome to Travelothon"; var emailService = new EMail(); emailService.SendAsync(new IdentityMessage() { Body = Body, Subject = Subject, Destination = model.Email }); using (var con = new ApplicationDbContext()) { try { var tUserProfile = new PUserProfileDto { Aadhar = model.Aadhar, Agency = model.Agency, Balance = model.Balance, BirthDate = model.BirthDate, City = model.City, Country = model.Country, CreatedDate = TimeZoneInfo.ConvertTime(DateTime.Now, TimeZoneInfo.FindSystemTimeZoneById("India Standard Time")), LastName = model.LastName, LastModifiedDate = TimeZoneInfo.ConvertTime(DateTime.Now, TimeZoneInfo.FindSystemTimeZoneById("India Standard Time")), State = model.State, GST = model.GST, FirstName = model.FirstName, Gender = model.Gender, PanCard = model.PanCard, ParentId = model.ParentId, PaymentId = model.PaymentId, PlanId = model.PlanId, UserId = user.Id, Email = model.Email, PhoneNumber = model.PhoneNumber }; con.PUserProfile.Add(tUserProfile); con.SaveChanges(); } catch (Exception e) { var dd = e.Message + e.GetBaseException(); var error = e.Message + "\n" + e.GetBaseException() + "\n" + e.InnerException + "\n" + e.Data; var Destination = System.Configuration.ConfigurationManager.AppSettings.Get("AdminEmail"); await emailService.SendAsync(new IdentityMessage() { Body = error, Subject = "API:B2B UserRegistration Error,Environment:" + Request.RequestUri.Host.ToString(), Destination = Destination }); messages.Message = e.Message; data.messages.Add(messages); } } } } catch (Exception e) { var dd = e.Message + e.GetBaseException(); var error = e.Message + "\n" + e.GetBaseException() + "\n" + e.InnerException + "\n" + e.Data; var emailService = new EMail(); var Destination = System.Configuration.ConfigurationManager.AppSettings.Get("AdminEmail"); await emailService.SendAsync(new IdentityMessage() { Body = error, Subject = "API:B2B UserRegistration Error,Environment:" + Request.RequestUri.Host.ToString(), Destination = Destination }); messages.Message = e.Message; data.messages.Add(messages); } return(Ok(data)); }
public async Task <IHttpActionResult> Register(UserProfile model) { var messages = new Messages(); ObjectDto <object> data = new ObjectDto <object>(); //var isValidEmail = IsValidEmail(model.Email); //if (!isValidEmail) //{ // var message = new Messages(); // message.Message = "*Invalid Email Id"; // data.messages.Add(message); //} //var isValidMobileNumber = IsValidMobileNumber(model.PhoneNumber); //if (!isValidMobileNumber) //{ // var message = new Messages(); // message.Message = "*Invalid Mobile Number"; // data.messages.Add(message); //} //var isValidPassword = IsValidPassword(model.Password); //if (!isValidPassword) //{ // var message = new Messages(); // message.Message = "*Invalid Password"; // data.messages.Add(message); //} //if (data.messages.Count > 0) //{ // return Ok(data); //} try { using (var con = new ApplicationDbContext()) { var usedPhoneNumber = con.Users.FirstOrDefault(x => x.PhoneNumber == model.PhoneNumber); if (usedPhoneNumber != null) { var message = new Messages(); message.Message = "*Phone Number '" + model.PhoneNumber + "' is already taken."; data.messages.Add(message); return(Ok(data)); } } var user = new ApplicationUser() { UserName = model.Email, Email = model.Email, PhoneNumber = model.PhoneNumber }; IdentityResult result = await UserManager.CreateAsync(user, model.Password); if (!result.Succeeded) { //return GetErrorResult(result); foreach (string error in result.Errors) { messages.Message = "*" + error; } data.messages.Add(messages); } else { await UserManager.AddToRoleAsync(user.Id, model.Role); data.valid = true; var Body = "<div style='font-family: Verdana;font-size:12px'>Dear " + model.FirstName + " " + model.LastName + ","; Body += "<br/><br/>Welcome to the Travelothon family. Now access best in class online services."; Body += "<br/><br/>Below are your details:<br/><br/>username: "******"<br/>password: "******"<br/><br/><a href='partner.travelothon.in'>Visit Partner Portal</a>"; var Subject = "Welcome to Travelothon"; var emailService = new EMail(); await emailService.SendAsync(new IdentityMessage() { Body = Body, Subject = Subject, Destination = model.Email }); using (var con = new ApplicationDbContext()) { try { var tUserProfile = new PUserProfileDto { Aadhar = model.Aadhar, Agency = model.Agency, Balance = 0, BirthDate = model.BirthDate, City = model.City, Country = model.Country, CreatedDate = TimeZoneInfo.ConvertTime(DateTime.Now, TimeZoneInfo.FindSystemTimeZoneById("India Standard Time")), LastName = model.LastName, LastModifiedDate = TimeZoneInfo.ConvertTime(DateTime.Now, TimeZoneInfo.FindSystemTimeZoneById("India Standard Time")), State = model.State, GST = model.GST, FirstName = model.FirstName, Gender = model.Gender, PanCard = model.PanCard, ParentId = model.ParentId, PaymentId = model.PaymentId, PlanId = model.PlanId, UserId = user.Id, Email = model.Email, PhoneNumber = model.PhoneNumber }; con.PUserProfile.Add(tUserProfile); con.SaveChanges(); } catch (Exception e) { var error = e.Message + "\n" + e.GetBaseException() + "\n" + e.InnerException + "\n" + e.Data; var Destination = System.Configuration.ConfigurationManager.AppSettings.Get("AdminEmail"); emailService.SendAsync(new IdentityMessage() { Body = error, Subject = "API:B2B UserRegistration Error.Environment " + Request.RequestUri.Host.ToString(), Destination = Destination }); messages.Message = e.Message; data.messages.Add(messages); } } } } catch (Exception e) { var emailService = new EMail(); var Destination = System.Configuration.ConfigurationManager.AppSettings.Get("AdminEmail"); await emailService.SendAsync(new IdentityMessage() { Body = e.Message + " " + e.GetBaseException() + e.InnerException + "\n" + e.Data, Subject = "B2B User Registration Error. Environment: " + Request.RequestUri.Host.ToString(), Destination = Destination }); data.messages.Add(new Messages { Message = e.Message }); } return(Ok(data)); }