public ActionResult Onboarding(TenantDetailsModel model, HttpPostedFileBase imageFile) { var fs = Request.Files; var isAjax = Request.IsAjaxRequest(); if (ModelState.IsValid) { var userName = User.Identity.Name; if (String.IsNullOrEmpty(userName)) { return(Json(new { Success = false, ErrorMsg = "User does not exist!" })); } var login = AccountService.GetLoginByEmail(userName); var tenant = login == null ? null : TenantService.GetTenantByLogin(login); var detailResult = TenantService.SaveDetails(model, login); if (detailResult.IsSuccess) { var files = Request.Files; var mediaResult = TenantService.AddTenantMediaFiles(Request.Files, tenant, Server.MapPath("~/images")); if (isAjax) { return(Json(new { Success = true })); } else { return(RedirectToAction("Index")); } } else { return(Json(new { Success = false })); } } return(View(model)); }
public ActionResult UpdateTenantDetails(TenantDetailsModel details) { var client = new ApplicationManagerClient(); client.UpdateTenantUrl(details.ApplicationName, details.Name, details.Url); return(RedirectToAction("TenantDetails", new { details.ApplicationName, details.Name })); }
private TenantDetailsModel GetTenantDetailsModel(string applicationName, string name) { var tenantDetailsModel = default(TenantDetailsModel); var client = new ApplicationManagerClient(); var headerInfo = client.GetTenantDetails(applicationName, name); if (headerInfo == null) { ModelState.AddModelError("TenantNotFound", string.Format("Tenant {0} in application {1} could not be found.", name, applicationName)); } else { tenantDetailsModel = new TenantDetailsModel(); tenantDetailsModel.ApplicationName = applicationName; tenantDetailsModel.Name = name; tenantDetailsModel.Url = headerInfo.Url; tenantDetailsModel.ContractStartTime = headerInfo.ContractStartedAt; tenantDetailsModel.IsActive = headerInfo.IsActive; tenantDetailsModel.Connections = client.GetDatabaseConfiguration(applicationName, name); } return(tenantDetailsModel); }
public static ServiceResponseResult SaveDetails(TenantDetailsModel model, Login login) { using (var db = new KeysEntities()) { var result = new ServiceResponseResult { IsSuccess = false }; if (!IsLoginATenant(login)) { var errorMsg = "Account not tenant!"; result.ErrorMessage = errorMsg; return(result); } var address = new Address { CountryId = 1, Number = model.Address.Number, Street = model.Address.Street, Suburb = model.Address.Suburb, City = model.Address.City, PostCode = model.Address.PostCode, Lat = model.Address.Latitude, Lng = model.Address.Longitude, UpdatedBy = login.Email, CreatedOn = DateTime.UtcNow, CreatedBy = login.Email, UpdatedOn = DateTime.UtcNow, IsActive = true }; var tenant = db.Tenant.FirstOrDefault(x => x.Id == login.Id); tenant.DateOfBirth = model.DateOfBirth; tenant.HomePhoneNumber = model.HomePhoneNumber; tenant.MobilePhoneNumber = model.MobilePhoneNumber; tenant.CreatedOn = DateTime.UtcNow; tenant.UpdatedOn = DateTime.UtcNow; tenant.CreatedBy = login.Id; tenant.UpdatedBy = login.Id; tenant.IsActive = true; tenant.HasProofOfIdentity = false; tenant.IsCompletedPersonalProfile = true; var person = db.Person.FirstOrDefault(x => x.Id == login.Id); try { db.Address.Add(address); db.SaveChanges(); tenant.Address = address; person.Address1 = address; db.SaveChanges(); return(new ServiceResponseResult { IsSuccess = true }); } catch (Exception ex) { return(new ServiceResponseResult { IsSuccess = false, ErrorMessage = _error }); } } }