private async Task SendGrantAdminConsentCard(IDialogContext context, Activity activity, TeamsChannelData channelData) { var configurationCard = new ThumbnailCard { Text = "Please grant permission to the application first." }; // Show button with Open URl. AdminUserDetails adminDetails = new AdminUserDetails { ServiceUrl = activity.ServiceUrl, UserEmailId = await GetUserEmailId(activity) }; var loginUrl = GetAdminConsentUrl(channelData.Tenant.Id, ApplicationSettings.AppId, adminDetails); configurationCard.Buttons = new List <CardAction>(); configurationCard.Buttons.Add(new CardAction() { Title = "Grant Admin Permission", Value = loginUrl, Type = ActionTypes.OpenUrl }); var reply = activity.CreateReply(); reply.Attachments.Add(configurationCard.ToAttachment()); await context.PostAsync(reply); }
/// <summary> /// Gets the admin user address details. /// </summary> /// <param name="userId">The user identifier.</param> /// <returns></returns> public AdminUserDetails GetAdminUserAddressDetails(int userId) { AdminUserDetails adminUserDetails = new AdminUserDetails(); try { SqlParameter[] parameters = new SqlParameter[1]; parameters[0] = new SqlParameter("adminUserId", userId); DataSet dataSet = DBHelper.GetDataTable("GetAdminLastAddress", parameters, DBHelper.ParseString(settings.Value.AppDbContext)); if (dataSet != null && dataSet.Tables != null && dataSet.Tables.Count > 0) { DataTable dt = dataSet.Tables[0]; if (dt != null && dt.Rows.Count > 0) { var row = dt.Rows[0]; adminUserDetails.Address1 = DBHelper.ParseString(row["Address1"]); adminUserDetails.Address2 = DBHelper.ParseString(row["Address2"]); adminUserDetails.City = DBHelper.ParseString(row["City"]); adminUserDetails.CountryName = DBHelper.ParseString(row["CountryName"]); adminUserDetails.FirstName = DBHelper.ParseString(row["FirstName"]); adminUserDetails.StateName = DBHelper.ParseString(row["StateName"]); } } return(adminUserDetails); } catch (Exception) { throw; } }
public IActionResult AddAdminUser([FromBody] PostModel inUsers) { AdminUserDetails obj = JsonConvert.DeserializeObject <AdminUserDetails>(inUsers.Key); try { var result = _IUser.AddAdminUser(obj); return(Ok(result)); } catch (Exception ex) { throw; } }
public Result AddAdminUser(AdminUserDetails adminUsers) { try { AdminUsers adminUserDetails = new AdminUsers(); using (DB_A3E3FF_scampus2020Context db = new DB_A3E3FF_scampus2020Context()) { adminUserDetails.Userid = Guid.NewGuid(); adminUserDetails.Username = adminUsers.Username; adminUserDetails.Password = adminUsers.Password; adminUserDetails.EmailId = adminUsers.EmailId; adminUserDetails.ConfigSettings = adminUsers.ConfigSettings; adminUserDetails.Status = adminUsers.Status; adminUserDetails.AccountStatus = adminUsers.AccountStatus; adminUserDetails.CreatedBy = adminUsers.CreatedBy; adminUserDetails.CreatedDate = adminUsers.CreatedDate; adminUserDetails.UpdatedBy = adminUsers.UpdatedBy; adminUserDetails.UpdatedDate = adminUsers.UpdatedDate; adminUserDetails.Role = adminUsers.Role; adminUserDetails.Baseurl = adminUsers.Baseurl; adminUserDetails.CreatedById = adminUsers.CreatedById; db.AdminUsers.Add(adminUserDetails); var result = db.SaveChanges(); if (result == 1) { return(new Result { StatusCode = 1, Message = "Added Successdully..!" }); } else { return(new Result { StatusCode = -1, Message = "Adding Failed..!" }); } } } catch (Exception ex) { throw ex; } }
public async Task <AdminUserDetailsList> GetUsers() { AdminUserDetailsList usersList = new AdminUserDetailsList(); ProfileDetails profileDetails; if (ValidateAuthentication(true, out profileDetails)) { IProfileService profileService = DependencyResolver.Current.GetService(typeof(IProfileService)) as IProfileService; profileDetails = profileService.GetProfile(profileDetails.PUID); if (profileDetails != null) { usersList.AdminUsers = new Collection <AdminUserDetails>(); usersList.Users = new Collection <AdminUserDetails>(); foreach (var profile in await profileService.GetAllProfiles(profileDetails.ID)) { AdminUserDetails user = new AdminUserDetails(); Mapper.Map(profile, user); if (profile.UserType == UserTypes.SiteAdmin) { usersList.AdminUsers.Add(user); } else { usersList.Users.Add(user); } } } else { throw new WebFaultException <string>(Resources.UserNotRegisteredMessage, HttpStatusCode.Unauthorized); } } return(usersList); }
/// <summary> /// Gets the user address. /// </summary> /// <param name="userId">The user identifier.</param> /// <param name="orderInvoiceId">The order invoice identifier.</param> /// <returns></returns> public AdminUserDetails GetUserAddress(int userId, long orderInvoiceId) { AdminUserDetails userDetails = new AdminUserDetails(); try { var orderInvoice = context.OrderInvoice.Where(a => a.OrderInvoiceId == orderInvoiceId).FirstOrDefault(); if (orderInvoice != null) { var order = context.Order.Where(a => a.OrderId == orderInvoice.OrderFK).FirstOrDefault(); if (order != null) { var userAddress = context.UserAddress.Where(a => a.UserAddressId == order.UserAddressFK).FirstOrDefault(); if (userAddress != null) { var country = context.Country.Where(a => a.CountryId == userAddress.CountryFK).FirstOrDefault(); var state = context.State.Where(a => a.StateId == userAddress.StateFK).FirstOrDefault(); userDetails.Address1 = userAddress.Address1; userDetails.Address2 = userAddress.Address2; userDetails.City = userAddress.City; userDetails.CountryName = country.Name; userDetails.StateName = state.Name; userDetails.Zipcode = userAddress.Zipcode; userDetails.PhoneNumber = userAddress.PhoneNumber; userDetails.FirstName = userAddress.FullName; userDetails.EmailAddress = userAddress.Email; } } } return(userDetails); } catch (Exception) { throw; } }
/// <summary> /// Orders the list. /// </summary> /// <param name="OrderId">The order identifier.</param> /// <param name="OrderStatusId">The order status identifier.</param> /// <returns></returns> public IActionResult ProcessInvoicePayment(OrderInvoicePayment model) { try { if (ModelState.IsValid) { StripeConfiguration.SetApiKey(config.GetValue <string>("app_settings:StripePublishKey")); StripeConfiguration.ApiKey = config.GetValue <string>("app_settings:StripeSecreteKey"); AdminUserDetails adminUserDetails = iOrderInvoice.GetUserAddress(model.LoggedInUserId, model.OrderInvoiceId); var customers = new CustomerService(); var charges = new ChargeService(); var customer = customers.Create(new CustomerCreateOptions { Email = model.StripeEmail, Source = model.StripeToken, Name = adminUserDetails.FirstName, Address = new AddressOptions { Line1 = adminUserDetails.Address1, Line2 = adminUserDetails.Address2, PostalCode = adminUserDetails.Zipcode, City = adminUserDetails.City, State = adminUserDetails.StateName, Country = adminUserDetails.CountryName }, }); var charge = charges.Create(new ChargeCreateOptions { Amount = DBHelper.ParseInt64(model.Amount), Description = string.Concat("Payment by ", adminUserDetails.FirstName, " For InvoiceId ", model.OrderInvoiceId), Currency = "usd", Customer = customer.Id, Shipping = new ChargeShippingOptions { Name = adminUserDetails.FirstName, Phone = adminUserDetails.PhoneNumber, Address = new AddressOptions { Line1 = adminUserDetails.Address1, Line2 = adminUserDetails.Address2, PostalCode = adminUserDetails.Zipcode, City = adminUserDetails.City, State = adminUserDetails.StateName, Country = adminUserDetails.CountryName } } }); iOrderInvoice.UpdateInvoiceStripeDetails(model.OrderInvoiceId, customer.Id, charge.Id); return(Ok(ResponseHelper.Success(MessageConstants.PaymentSuccess))); } return(Ok(ResponseHelper.Error(MessageConstants.CompulsoryData))); } catch (Exception ex) { LogHelper.ExceptionLog(ex.Message + " ::::: " + ex.StackTrace); return(Ok(ResponseHelper.Error(ex.Message))); } }
private static string GetAdminConsentUrl(string tenant, string appId, AdminUserDetails adminDetails) { var data = System.Web.HttpUtility.UrlEncode(JsonConvert.SerializeObject(adminDetails)); return($"https://login.microsoftonline.com/{tenant}/adminconsent?client_id={appId}&state={data}&redirect_uri={ System.Web.HttpUtility.UrlEncode(ApplicationSettings.BaseUrl + "/adminconsent")}"); }