public ActionResult Edit(LiberacaoViewModel liberacao) { try { // if (liberacao.PacienteId == 3) //{ // ModelState.AddModelError(string.Empty, @"Paciente Selecionado Invalido"); //return View(liberacao); //} if (ModelState.IsValid) { var liberacaoDomain = Mapper.Map <LiberacaoViewModel, Liberacao>(liberacao); _liberacaoApp.Update(liberacaoDomain); TempData["success"] = "Liberação editada com sucesso."; return(RedirectToAction("Index")); } ViewBag.PacienteId = listaPaciente(liberacao.PacienteId); ViewBag.ProfissionalId = listaProfissional(liberacao.ProfissionalId); return(View(liberacao)); } catch (Exception) { TempData["error"] = "Esta liberação não pode ser editada."; return(View(liberacao)); } }
public ActionResult Create(LiberacaoViewModel liberacao) { //if (liberacao.PacienteId == 1) //{ // ModelState.AddModelError(string.Empty, @"Paciente Selecionado Invalido"); //return View(liberacao); //} if (ModelState.IsValid) { try { var liberacaoDomain = Mapper.Map <LiberacaoViewModel, Liberacao>(liberacao); if (!String.IsNullOrEmpty(liberacaoDomain.MedicoEncaminhante)) { liberacaoDomain.MedicoEncaminhante = liberacaoDomain.MedicoEncaminhante.ToUpper(); } liberacaoDomain.QuantidadeRealizadaExterno = liberacaoDomain.QuantidadeRealizada; if (liberacao.PacienteId == 1136) // nao deixa salvar paciente selecione { //ModelState.AddModelError(string.Empty, @"Paciente Selecionado Invalido"); TempData["error"] = "O paciente Selecionado é inválido"; popularviewBag(); return(View(liberacao)); } if (liberacao.ProfissionalId == 2) // nao deixa salvar profissional selecione { //ModelState.AddModelError(string.Empty, @"Profissional Selecionado Invalido"); TempData["error"] = "O profissional Selecionado é inválido"; popularviewBag(); return(View(liberacao)); } _liberacaoApp.Add(liberacaoDomain); for (int i = 0; i < liberacaoDomain.QuantidadeTotal - liberacaoDomain.QuantidadeRealizada; i++) { var consultaDomain = new Consulta(); consultaDomain.DataCadastro = DateTime.Now; consultaDomain.LiberacaoId = liberacaoDomain.LiberacaoId; consultaDomain.Convenio = "Unimed"; consultaDomain.Status = "Pré-agendado"; consultaDomain.ValorConsulta = 0; consultaDomain.ValorConvenio = 0; consultaDomain.ValorCopart = 0; consultaDomain.ProfissionalId = liberacaoDomain.ProfissionalId; _consultaApp.Add(consultaDomain); } TempData["success"] = "Liberação incluída com sucesso."; return(RedirectToAction("Details", "Liberacoes", new { id = liberacaoDomain.LiberacaoId })); } catch (Exception) { TempData["error"] = "Não foi possível incluir a liberação."; return(View(liberacao)); } //liberacaoDomain.Paciente = _pacienteApp.GetById(liberacaoDomain.PacienteId); //var liberacaoViewModel = Mapper.Map<Liberacao, LiberacaoViewModel>(liberacaoDomain); //var consultasViewModel = Mapper.Map<IEnumerable<Consulta>, IEnumerable<ConsultaViewModel>>(_consultaApp.GetAll()); //consultasViewModel = consultasViewModel.Where(s => s.LiberacaoId == liberacaoDomain.LiberacaoId); //var tuple = new Tuple<LiberacaoViewModel, IEnumerable<ConsultaViewModel>>(liberacaoViewModel, consultasViewModel); //return View("Details",tuple); } ViewBag.PacienteId = listaPaciente(1); try { var nivelAcesso = (int)Session["nivelAcesso"]; int IdProfissional = 2; if (nivelAcesso == 2) { IdProfissional = (int)Session["idProfissional"]; } ViewBag.ProfissionalId = listaProfissional(IdProfissional); return(View(liberacao)); } catch (Exception) { TempData["error"] = "Não foi possível incluir a liberação."; return(View(liberacao)); } }