public ActionResult DeleteCompany(int?id) { var company = companyService.GetById(id.Value); var deleteCompanyViewModel = new CreateEditCompanyViewModel(); deleteCompanyViewModel = Mapper.Map <Company, CreateEditCompanyViewModel>(company, deleteCompanyViewModel); return(PartialView(deleteCompanyViewModel)); }
public IActionResult RegisterCompany(string returnUrl = null) { ViewData["ReturnUrl"] = returnUrl; var cecvm = new CreateEditCompanyViewModel(); ViewData["Title"] = _settings.ApplicationTitle + "Регистрация"; ViewData["HeaderTitle"] = _settings.HeaderTitle; ViewData["FooterTitle"] = _settings.FooterTitle; return(View(cecvm)); }
public ActionResult CreateCompany(CreateEditCompanyViewModel model) { if (!ModelState.IsValid) return PartialView(); var newCompany = new Company(); newCompany.Name = model.Name; companyService.Add(newCompany); return Json(new { success = true }); }
public ActionResult CreateCompany(CreateEditCompanyViewModel model) { if (!ModelState.IsValid) { return(PartialView()); } var newCompany = new Company(); newCompany.Name = model.Name; companyService.Add(newCompany); return(Json(new { success = true })); }
public ActionResult EditCompany(CreateEditCompanyViewModel model) { if (!ModelState.IsValid) { return(PartialView(model)); } var companyToEdit = companyService.GetById(model.ID); companyToEdit.Name = model.Name; companyService.Update(companyToEdit); return(Json(new { success = true })); }
public async Task <IActionResult> RegisterPrivatePerson(CreateEditCompanyViewModel model, string returnUrl = null) { ViewData["ReturnUrl"] = returnUrl; if (ModelState.IsValid) { var user = new ApplicationUser { UserName = model.Email, Email = model.Email }; var result = await _userManager.CreateAsync(user, model.Password); if (result.Succeeded) { // For more information on how to enable account confirmation and password reset please visit http://go.microsoft.com/fwlink/?LinkID=532713 // Send an email with this link //var code = await _userManager.GenerateEmailConfirmationTokenAsync(user); //var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: HttpContext.Request.Scheme); //await _emailSender.SendEmailAsync(model.Email, "Confirm your account", // $"Please confirm your account by clicking this link: <a href='{callbackUrl}'>link</a>"); await _signInManager.SignInAsync(user, isPersistent : false); _logger.LogInformation(3, "User created a new account with password."); #region ФОРМИРУЕМ СПИСОК ИЗОБРАЖЕНИЙ //ФОРМИРУЕМ СПИСОК ИЗОБРАЖЕНИЙ - для PrivatePerson он пустой List <RelCompanyImage> relImages = new List <RelCompanyImage>(); #endregion #region СОЗДАНИЕ КОМПАНИИ //При регистрации пользователя для него по умолчанию создается компания с параметрами которые он задал _repositoryCompany.SaveCompanyAccount(new Company { ApplicationUserId = user.Id, AccountType = AccountType.PrivatePerson, Title = model.Name, Description = model.ActivityDescription, ContactEmail = model.Email, Telephone = model.Telephone, Images = relImages }); #endregion return(RedirectToAction(nameof(HomeController.IndexCat), "Home")); } AddErrors(result); } return(View(model)); }
public async Task <IActionResult> RegisterCompany(CreateEditCompanyViewModel model, string returnUrl = null) { ViewData["ReturnUrl"] = returnUrl; if (ModelState.IsValid) { var user = new ApplicationUser { UserName = model.Email, Email = model.Email }; var result = await _userManager.CreateAsync(user, model.Password); if (result.Succeeded) { // For more information on how to enable account confirmation and password reset please visit http://go.microsoft.com/fwlink/?LinkID=532713 // Send an email with this link //var code = await _userManager.GenerateEmailConfirmationTokenAsync(user); //var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: HttpContext.Request.Scheme); //await _emailSender.SendEmailAsync(model.Email, "Confirm your account", // $"Please confirm your account by clicking this link: <a href='{callbackUrl}'>link</a>"); await _signInManager.SignInAsync(user, isPersistent : false); _logger.LogInformation(3, "User created a new account with password."); #region ФОРМИРУЕМ СПИСОК ИЗОБРАЖЕНИЙ //ФОРМИРУЕМ СПИСОК ИЗОБРАЖЕНИЙ List <RelCompanyImage> relImages = new List <RelCompanyImage>(); //если строка id изображений непуста тогда формируем список if (model.companyImagesIds != null) { string[] strImgids = model.companyImagesIds.Trim().Substring(0, model.companyImagesIds.Length - 1).Split('_'); foreach (var strImageId in strImgids) { if (strImageId.Length == 0) { continue; //это случай когдау товара нет изображений, но в массив все равно попадает распарсеная пустая строка } relImages.Add(new RelCompanyImage { CompanyId = 0, ImageId = Convert.ToInt32(strImageId) }); } } #endregion #region СОЗДАНИЕ КОМПАНИИ //При регистрации пользователя для него по умолчанию создается компания с параметрами которые он задал _repositoryCompany.SaveCompanyAccount(new Company { ApplicationUserId = user.Id, AccountType = AccountType.Company, Title = model.Name, Description = model.ActivityDescription, ContactEmail = model.Email, Telephone = model.Telephone, Images = relImages }); #endregion return(RedirectToAction(nameof(HomeController.IndexCat), "Home")); } AddErrors(result); } #region ОТОБРАЖЕНИЕ УЖЕ ДОБАВЛЕННЫХ ФОТОК ЕСЛИ ОШИБКА ПРИ СОХРАНЕНИИ // If we got this far, something failed, redisplay form // заполняем список изображений уже добавленных пользователем при регистрации if (model.companyImagesIds != null) { List <int> logoids = GetIntIds.ConvertIdsToInt(model.companyImagesIds); model.LogoImageInBase64 = FromByteToBase64Converter.GetImageBase64Src(_repositoryImage.GetImage(logoids[0])); foreach (var id in logoids) { Image im = _repositoryImage.GetImage(id); //для каждого изображения составляем соответствующую модель отображения model.ImageViewModels.Add( new ImageViewModel { GoodId = 0, Id = im.Id, goodImageIds = "0_" + im.Id, ImageMimeType = im.ImageMimeType, ImageInBase64 = FromByteToBase64Converter.GetImageBase64Src(im) } ); } } #endregion return(View(model)); }
public IActionResult EditProfile() { ViewBag.ActiveSubMenu = "Профиль"; ViewData["Title"] = _settings.ApplicationTitle + "Администрирование: Статьи"; ViewData["HeaderTitle"] = _settings.HeaderTitle; ViewData["FooterTitle"] = _settings.FooterTitle; var user = _repositoryUser.GetCurrentUser(User.Identity.Name); var Company = _repositoryCompany.GetUserCompany(user); switch (Company.AccountType) { case AccountType.Company: { #region редирект на view для Company var cecvm = new CreateEditCompanyViewModel { Id = Company.Id, Name = Company.Title, ActivityDescription = Company.Description, Email = Company.ContactEmail, Telephone = Company.Telephone }; #region ЗАПИСЬ ИЗОБРАЖЕНИЙ ВО VIEWMODEL if (Company.Images.Count != 0) { cecvm.LogoImageInBase64 = FromByteToBase64Converter.GetImageBase64Src(Company.Images.ToList()[0].Image); foreach (var rci in Company.Images) { //для каждого изображения составляем соответствующую модель отображения cecvm.ImageViewModels.Add( new ImageViewModel { GoodId = rci.CompanyId, Id = rci.ImageId, goodImageIds = rci.CompanyId + "_" + rci.ImageId, ImageMimeType = rci.Image.ImageMimeType, ImageInBase64 = FromByteToBase64Converter.GetImageBase64Src(rci.Image) } ); //для каждого изображения оставляем его id в input всех id изображений товара cecvm.companyImagesIds += rci.ImageId + "_"; } } #endregion return(View("CompanyProfileEditView", cecvm)); #endregion } case AccountType.PrivatePerson: { #region редирект на view для PrivatePerson var cecvm = new CreateEditCompanyViewModel { Name = Company.Title, ActivityDescription = Company.Description, Email = Company.ContactEmail, Telephone = Company.Telephone }; return(View("PrivatePersonProfileEditView", cecvm)); #endregion } default: return(View("PrivatePersonProfileEditView")); } }
public async System.Threading.Tasks.Task <RedirectToActionResult> EditProfile(CreateEditCompanyViewModel model) { //if (ModelState.IsValid) //{ var user = _repositoryUser.GetCurrentUser(User.Identity.Name); var Company = _repositoryCompany.GetUserCompanyWithNoTrackingImages(user); #region ФОРМИРУЕМ СПИСОК ИЗОБРАЖЕНИЙ //ФОРМИРУЕМ СПИСОК ИЗОБРАЖЕНИЙ List <RelCompanyImage> relImages = new List <RelCompanyImage>(); //если строка id изображений непуста тогда формируем список if (model.companyImagesIds != null) { string[] strImgids = model.companyImagesIds.Trim().Substring(0, model.companyImagesIds.Length - 1).Split('_'); foreach (var strImageId in strImgids) { if (strImageId.Length == 0) { continue; //это случай когдау товара нет изображений, но в массив все равно попадает распарсеная пустая строка } relImages.Add(new RelCompanyImage { CompanyId = Company.Id, ImageId = Convert.ToInt32(strImageId) }); } } #endregion //если меняем email if (user.Email != model.Email) { user.Email = model.Email; user.UserName = model.Email; await _userManager.UpdateAsync(user); } await _signInManager.SignInAsync(user, isPersistent : false); #region ФОРМИРУЕМ ИЗМЕНЕНННУЮ КОМПАНИЮ Company.Title = model.Name; Company.Description = model.ActivityDescription; Company.ContactEmail = model.Email; Company.Telephone = model.Telephone; Company.Images = relImages; #endregion _repositoryCompany.SaveCompanyAccount(Company); //} return(RedirectToAction("EditProfile")); }
public ActionResult EditCompany(CreateEditCompanyViewModel model) { if (!ModelState.IsValid) return PartialView(model); var companyToEdit = companyService.GetById(model.ID); companyToEdit.Name = model.Name; companyService.Update(companyToEdit); return Json(new { success = true }); }
public ActionResult EditCompany(int? id) { var company = companyService.GetById(id.Value); var editCompanyViewModel = new CreateEditCompanyViewModel(); editCompanyViewModel = Mapper.Map<Company, CreateEditCompanyViewModel>(company, editCompanyViewModel); return PartialView(editCompanyViewModel); }