public ActionResult Create(ConsultaViewModel consulta) { try { if (consulta.TipoSessao != "80000509" && String.IsNullOrEmpty(consulta.Autorizacao)) { //ModelState.AddModelError(string.Empty, @"Autorização deve ser preenchida"); TempData["warning"] = "Preencha a autorização."; return(View(consulta)); } // if(consulta.Liberacao.PacienteId == 1) //{ /// ModelState.AddModelError(string.Empty, @"Paciente Selecionado Invalido"); //return View(consulta); //} if (consulta.ProfissionalId == 2) { //ModelState.AddModelError(string.Empty, @"Profissional não selecionado"); TempData["warning"] = "Profissional inválido."; return(View(consulta)); } if (consulta.DataHoraConsulta.Year == 1) { //ModelState.AddModelError(string.Empty, @"Data selecionada inválida"); TempData["warning"] = "Data inválida."; return(View(consulta)); } if (new DateTime(consulta.DataHoraConsulta.Year, consulta.DataHoraConsulta.Month, 1) != (new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1))) //if (consulta.DataHoraConsulta != (new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1))) { //ModelState.AddModelError(string.Empty, @"Data da consulta inferior a início do mês"); TempData["warning"] = "Mês da consulta diferente do mês atual."; return(View(consulta)); } if (ModelState.IsValid) { var consultaDomain = Mapper.Map <ConsultaViewModel, Consulta>(consulta); consultaDomain.DataCadastro = DateTime.Now; _consultaApp.Add(consultaDomain); TempData["success"] = "Consulta incluída com sucesso."; return(RedirectToAction("Index")); } ViewBag.LiberacaoId = listaLiberacao(consulta); ViewBag.ProfissionalId = listaProfissional(consulta); return(View(consulta)); } catch (Exception) { TempData["error"] = "Não foi possível incluir a consulta."; return(View()); } }
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)); } }