public ActionResult Register(int Category, App.Models.Oferta.RegisterViewModel model, string Argument) { this.ValidateRegistration(model, false); if (!ModelState.IsValid) { ViewBag.Argument = Argument; return(View("~/Views/Oferta/Register.cshtml", model)); } var surveycomplation = this.RegisterViewModelCompanyMap(model); this.modelContext.Companies.Add(surveycomplation.Company); this.modelContext.Products.Add(surveycomplation.Product); this.modelContext.Contacts.Add(surveycomplation.Company.ComercialContact); this.modelContext.Contacts.Add(surveycomplation.Product.ProductContact); this.modelContext.SaveChanges(); if (model.CompanyLogo != null) { surveycomplation.Company.CompanyLogo = surveycomplation.Company.Id + "_" + model.CompanyLogo.FileName; } this.modelContext.SaveChanges(); if (model.CompanyLogo != null) { var fileName = Path.GetFileName(surveycomplation.Company.CompanyLogo); var path = Path.Combine(Server.MapPath("~/Content/images/logos"), fileName); model.CompanyLogo.SaveAs(path); } return(RedirectToAction("Survey", "../Product", new { Category = Category, Company = surveycomplation.Company.Id })); }
public ActionResult Register(int Category) { var model = new App.Models.Oferta.RegisterViewModel { CategoryId = Category }; ViewBag.Argument = "Register"; return(View("~/Views/Oferta/Register.cshtml", model)); }
public ActionResult RegisterContinue(App.Models.Oferta.RegisterViewModel model, string Argument) { this.ValidateRegistration(model, false); if (!ModelState.IsValid) { ViewBag.Argument = Argument; return(View("~/Views/Oferta/Register.cshtml", model)); } var surveyCompletion = this.RegisterViewModelCompanyMap(model); this.modelContext.Companies.Add(surveyCompletion.Company); this.modelContext.Products.Add(surveyCompletion.Product); this.modelContext.Contacts.Add(surveyCompletion.Company.ComercialContact); this.modelContext.Contacts.Add(surveyCompletion.Product.ProductContact); this.modelContext.SaveChanges(); if (model.CompanyLogo != null) { surveyCompletion.Company.CompanyLogo = surveyCompletion.Company.Id + "_" + model.CompanyLogo.FileName; } this.modelContext.SaveChanges(); if (model.CompanyLogo != null) { var fileName = Path.GetFileName(surveyCompletion.Company.CompanyLogo); var path = Path.Combine(Server.MapPath("~/Content/images/logos"), fileName); model.CompanyLogo.SaveAs(path); } else { var surveyCompletionPartialCompany = this.modelContext .SurveysCompletion .Include("Company") .FirstOrDefault(x => x.Id == model.SurveyCompletionId) .Company; surveyCompletion.Company.CompanyLogo = surveyCompletionPartialCompany.CompanyLogo; this.modelContext.SaveChanges(); } return(RedirectToAction("SurveyContinue", "../Product", new { Category = model.CategoryId, Company = surveyCompletion.Company.Id, SurveyCompletionId = model.SurveyCompletionId })); }
private SurveyCompletion RegisterViewModelCompanyMap(App.Models.Oferta.RegisterViewModel model) { var surveyCompletion = new SurveyCompletion { Company = { CompanyName = model.CompanyName, CompanyDescription = model.CompanyDescription, CompanyWebSite = model.CompanyWebSite, CompanyCountry = model.CompanyCountry, CompanyCity = model.CompanyCity, CompanyAddress = model.CompanyAddress, CompanyPostalCode = model.CompanyPostalCode, CompanyBranchOfficesIn = model.CompanyBranchOfficesIn, CompanyFiscalStartDate = model.CompanyFiscalStartDate, CompanyFiscalEndDate = model.CompanyFiscalEndDate, CompanyPeopleInCompany = model.CompanyPeopleInCompany, ComercialContact = { FullName = model.ComercialContactFullName, Position = model.ComercialContactPosition, Phone = model.ComercialContactPhone, Email = model.ComercialContactEmail }, }//, //Product = //{ // Name = model.ProductName, // Version = model.ProductVersion, // Description = model.ProductDescription, // WebSite = model.ProductWebSite, // ProductContact = // { // FullName = model.ProductContactFullName, // Position = model.ProductContactPosition, // Phone = model.ProductContactPhone, // Email = model.ProductContactEmail // } //} }; return(surveyCompletion); }
private App.Models.Oferta.RegisterViewModel CompanyRegisterViewModelMap(SurveyCompletionParent surveyCompletion, int surveyCompletionId) { var model = new App.Models.Oferta.RegisterViewModel { SurveyCompletionId = surveyCompletionId, CompanyName = surveyCompletion.Company.CompanyName, CompanyDescription = surveyCompletion.Company.CompanyDescription, CompanyWebSite = surveyCompletion.Company.CompanyWebSite, CompanyCountry = surveyCompletion.Company.CompanyCountry, CompanyCity = surveyCompletion.Company.CompanyCity, CompanyAddress = surveyCompletion.Company.CompanyAddress, CompanyPostalCode = surveyCompletion.Company.CompanyPostalCode, CompanyBranchOfficesIn = surveyCompletion.Company.CompanyBranchOfficesIn, CompanyFiscalStartDate = surveyCompletion.Company.CompanyFiscalStartDate, CompanyFiscalEndDate = surveyCompletion.Company.CompanyFiscalEndDate, CompanyPeopleInCompany = surveyCompletion.Company.CompanyPeopleInCompany, ComercialContactFullName = surveyCompletion.Company.ComercialContact.FullName, ComercialContactPosition = surveyCompletion.Company.ComercialContact.Position, ComercialContactPhone = surveyCompletion.Company.ComercialContact.Phone, ComercialContactEmail = surveyCompletion.Company.ComercialContact.Email }; return(model); }
private void ValidateRegistration(App.Models.Oferta.RegisterViewModel model, bool partial) { var errorMessage = "El campo {0} es obligatorio"; if (model.ComercialContactEmail == null) { ModelState.AddModelError("ComercialContactEmail", string.Format(errorMessage, "Email")); } if (!partial) { if (model.CompanyName == null) { ModelState.AddModelError("CompanyName", string.Format(errorMessage, "Nombre")); } if (model.CompanyDescription == null) { ModelState.AddModelError("CompanyDescription", string.Format(errorMessage, "Descripción")); } if (model.CompanyWebSite == null) { ModelState.AddModelError("CompanyWebSite", string.Format(errorMessage, "Web Site")); } if (model.CompanyCountry == null) { ModelState.AddModelError("CompanyCountry", string.Format(errorMessage, "País")); } if (model.CompanyCity == null) { ModelState.AddModelError("CompanyCity", string.Format(errorMessage, "Ciudad")); } if (model.CompanyAddress == null) { ModelState.AddModelError("CompanyAddress", string.Format(errorMessage, "Dirección")); } if (model.CompanyFiscalStartDate == null) { ModelState.AddModelError("CompanyFiscalStartDate", string.Format(errorMessage, "Mes de inicio del año fiscal")); } if (model.CompanyFiscalEndDate == null) { ModelState.AddModelError("CompanyFiscalEndDate", string.Format(errorMessage, "Mes de cierre del año fiscal")); } //if (model.ProductName == null) //{ // ModelState.AddModelError("ProductName", string.Format(errorMessage, "Nombre")); //} //if (model.ProductDescription == null) //{ // ModelState.AddModelError("ProductDescription", string.Format(errorMessage, "Descripción")); //} if (model.ComercialContactFullName == null) { ModelState.AddModelError("ComercialContactFullName", string.Format(errorMessage, "Nombre y Apellido")); } if (model.ComercialContactPosition == null) { ModelState.AddModelError("ComercialContactPosition", string.Format(errorMessage, "Cargo / Función")); } if (model.ComercialContactPhone == null) { ModelState.AddModelError("ComercialContactPhone", string.Format(errorMessage, "Teléfono")); } } }
public ActionResult RegisterContinuePartial(App.Models.Oferta.RegisterViewModel model, string Argument) { this.ValidateRegistration(model, true); if (!ModelState.IsValid) { ViewBag.Argument = Argument; return(View("~/Views/Oferta/Register.cshtml", model)); } var surveyCompletionTmp = this.RegisterViewModelCompanyMap(model); this.modelContext.Companies.Add(surveyCompletionTmp.Company); this.modelContext.Products.Add(surveyCompletionTmp.Product); this.modelContext.Contacts.Add(surveyCompletionTmp.Company.ComercialContact); this.modelContext.Contacts.Add(surveyCompletionTmp.Product.ProductContact); this.modelContext.SaveChanges(); if (model.CompanyLogo != null) { surveyCompletionTmp.Company.CompanyLogo = surveyCompletionTmp.Company.Id + "_" + model.CompanyLogo.FileName; } this.modelContext.SaveChanges(); if (model.CompanyLogo != null) { var fileName = Path.GetFileName(surveyCompletionTmp.Company.CompanyLogo); var path = Path.Combine(Server.MapPath("~/Content/images/logos"), fileName); model.CompanyLogo.SaveAs(path); } else { if (model.SurveyCompletionId != 0) { var surveyCompletionPartialCompany = this.modelContext .SurveysCompletion .Include("Company") .FirstOrDefault(x => x.Id == model.SurveyCompletionId) .Company; surveyCompletionTmp.Company.CompanyLogo = surveyCompletionPartialCompany.CompanyLogo; this.modelContext.SaveChanges(); } } var surveyViewModel = new SurveyViewModel { CompanyId = surveyCompletionTmp.Company.Id, SurveyId = model.CategoryId, SurveyCompletionId = model.SurveyCompletionId, CategoryId = model.CategoryId }; var surveyCompletionPartial = this.modelContext .SurveysCompletion .Include("Questions") .Include("Questions.Answers") .FirstOrDefault(x => x.Id == model.SurveyCompletionId); var surveyCompletionParent = this.InsertSurveyCompletion(surveyViewModel, true); //surveyCompletionParent.Questions = surveyCompletionPartial.Questions; /*this.modelContext.SaveChanges(); * * var template = this.RenderRazorViewToString("~/Views/Demanda/Email/EvaluationTemplate.cshtml", surveyCompletion); * var pdfFileName = this.pdfService.GetEvaluationFileName(surveyCompletion.Id); * var pdfFullName = this.pdfService.Generate(surveyCompletion.Id, template, pdfFileName); * * this.surveyPartialCompletionBySupplyEmailService.Send(pdfFullName, surveyCompletion);*/ return(RedirectToAction("ThanksPartial", "../Product/Evaluation")); }