Пример #1
0
        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);
        }
Пример #4
0
        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
                    });
                }
            }
        }