public ActionResult Cadastrar() { CarregarDadosImpressaoItem(); var model = new PerfilImpressoraCreateViewModel() { Ativo = true }; return(View(model)); }
public ActionResult Cadastrar(PerfilImpressoraCreateViewModel model) { Func <string, ViewResult> errorView = (error) => { CarregarDadosImpressaoItem(); if (error != null) { Notify.Error(Resources.CommonStrings.RequestUnexpectedErrorMessage); } return(View(model)); }; if (!ModelState.IsValid) { return(errorView(null)); } if (model.TiposImpressao.NullOrEmpty()) { ModelState.AddModelError(nameof(model.TiposImpressao), "Selecione pelo menos um tipo de impressão para o perfil."); return(errorView(null)); } var teste = model.TiposImpressao.Where(w => w.Impressoras.Any(a => a.Selecionado)).Any(); if (!model.TiposImpressao.Where(w => w.Impressoras.Any(a => a.Selecionado)).Any()) { ModelState.AddModelError(nameof(model.TiposImpressao), "Escolha pelo menos uma impressora para o perfil"); return(errorView(null)); } var teste2 = model.TiposImpressao.Where(w => w.Impressoras.Any(a => a.Selecionado)).Any(); if (model.TiposImpressao.Where(w => !w.Impressoras.Any(a => a.Selecionado)).Any()) { ModelState.AddModelError(nameof(model.TiposImpressao), "Todos os tipos de impressão selecionados devem ter pelos menos um empresa escolhida."); return(errorView(null)); } PerfilImpressora perfilImpressora = Mapper.Map <PerfilImpressora>(model); perfilImpressora.IdEmpresa = IdEmpresa; _perfilImpressoraService.Add(perfilImpressora); Notify.Success(Resources.CommonStrings.RegisterCreatedSuccessMessage); return(RedirectToAction("Index")); }