/// <summary> /// /// </summary> /// <param name="entity"></param> /// <returns></returns> public int Inserir(Consulta entity) { //Verifica campos nulos if (!VerificaCamposObrigatorios(entity)) { throw new ConflitoException("Por favor preencha todos os campos obrigatórios !"); } var consultaExistente = _ConsultaRepositorio.SelecionarConsultaPorDataEHoraEMedico(entity.DataConsulta, entity.Horario, entity.IdMedico); //Verifica Consultas ao mesmo tempo existente if (consultaExistente != null) { throw new ConflitoException($"Já existe uma consulta nesta Data e Horario com este médico!"); } var MedicoDesativado = _ConsultaRepositorio.VerificaSeOMedicoEstaAtivo(entity.IdMedico); //Verifica Consultas ao mesmo tempo existente if (MedicoDesativado != null) { throw new ConflitoException($"Este médico esta desativado"); } return(_ConsultaRepositorio.Inserir(entity)); }