public DTOHistoricoExtraCurricular ConsultarExtraCurricular(int idAtividadeExtraCurricular) { var resultado = new DTOHistoricoExtraCurricular(); var ativExtraCurricular = new BMHistoricoExtraCurricular().ObterPorID(idAtividadeExtraCurricular); //TODO: CARREGAR OS FORNECEDORES DINAMICAMENTE VIA AJAX para não ter problema de ter um fornecedor retornado no webservice que não esta aqui na hora if (ativExtraCurricular == null) { return(resultado); } resultado.ID = ativExtraCurricular.ID; resultado.IdUsuario = ativExtraCurricular.Usuario.ID; resultado.NomeSolucaoExtraCurricular = ativExtraCurricular.SolucaoEducacionalExtraCurricular; resultado.TextoAtividade = ativExtraCurricular.TextoAtividade; resultado.CargaHoraria = ativExtraCurricular.CargaHoraria; resultado.DataFimAtividade = ativExtraCurricular.DataFimAtividade.HasValue ? ativExtraCurricular.DataFimAtividade.Value.ToString("dd/MM/yyyy") : ""; resultado.DataInicioAtividade = ativExtraCurricular.DataInicioAtividade.HasValue ? ativExtraCurricular.DataInicioAtividade.Value.ToString("dd/MM/yyyy") : ""; resultado.NomeInstituicao = ativExtraCurricular.Instituicao; if (ativExtraCurricular.FileServer == null) { return(resultado); } resultado.NomeArquivoComprovacao = ativExtraCurricular.FileServer.NomeDoArquivoNoServidor; resultado.TipoArquivoComprovacao = ativExtraCurricular.FileServer.TipoArquivo; resultado.NomeArquivoOriginal = ativExtraCurricular.FileServer.NomeDoArquivoOriginal; if (ativExtraCurricular.Fornecedor != null && ativExtraCurricular.Fornecedor.ID != 0) { resultado.IdFornecedor = ativExtraCurricular.Fornecedor.ID; } return(resultado); }
public void RemoverHistoricoExtraCurricular(DTOHistoricoExtraCurricular pHistoricoExtraCurricular, AuthenticationRequest autenticacao) { try { if (pHistoricoExtraCurricular.ID == 0) { throw new AcademicoException("Atividade Extra Curricular Inválida."); } var bmHistoricoExtraCurricular = new BMHistoricoExtraCurricular(); var historico = bmHistoricoExtraCurricular.ObterPorID(pHistoricoExtraCurricular.ID); if (historico != null) { bmHistoricoExtraCurricular.Excluir(historico); } } catch (Exception ex) { ErroUtil.Instancia.TratarErro(ex); } }
public void InserirHistoricoExtraCurricular(DTOHistoricoExtraCurricular pHistoricoExtraCurricular, AuthenticationRequest autenticacao) { try { // Caso seja cadastro e o arquivo não esteja informado, retorna o erro de validação. if ((pHistoricoExtraCurricular.ID == 0 && string.IsNullOrEmpty(pHistoricoExtraCurricular.CaminhoArquivoParticipacao))) { throw new AcademicoException("O arquivo anexo é obrigatório"); } /* * TODO: Atualmente o usuário do IIS não está permitindo a verficação do arquivo no file server, * investigar o porque do file exists não estar funcionando mesmo com o arquivo estando correto no servidor. * * Verifica inclusão do arquivo. * string caminho = string.Concat(ConfiguracaoSistemaUtil.ObterInformacoes(enumConfiguracaoSistema.RepositorioUpload).Registro, @"\", pHistoricoExtraCurricular.CaminhoArquivoParticipacao); * * if (pHistoricoExtraCurricular.ID == 0 && !File.Exists(caminho)) * { * throw new AcademicoException(caminho); * } */ var historico = pHistoricoExtraCurricular.ID > 0 ? new BMHistoricoExtraCurricular().ObterPorID(pHistoricoExtraCurricular.ID) : new HistoricoExtraCurricular(); historico.TextoAtividade = pHistoricoExtraCurricular.TextoAtividade; historico.Usuario = new BMUsuario().ObterPorId(pHistoricoExtraCurricular.IdUsuario); historico.CargaHoraria = pHistoricoExtraCurricular.CargaHoraria; historico.DataFimAtividade = Convert.ToDateTime(pHistoricoExtraCurricular.DataFimAtividade); historico.DataInicioAtividade = Convert.ToDateTime(pHistoricoExtraCurricular.DataInicioAtividade); historico.SolucaoEducacionalExtraCurricular = pHistoricoExtraCurricular.NomeSolucaoExtraCurricular; historico.Auditoria = new Auditoria(autenticacao.Login); historico.Instituicao = pHistoricoExtraCurricular.NomeInstituicao; if (pHistoricoExtraCurricular.IdFornecedor.HasValue && pHistoricoExtraCurricular.IdFornecedor.Value != 0) { var manterFornecedor = new ManterFornecedor(); var fornecedor = manterFornecedor.ObterFornecedorPorID(pHistoricoExtraCurricular.IdFornecedor.Value); historico.Fornecedor = fornecedor; } else { historico.Fornecedor = null; } if (!string.IsNullOrEmpty(pHistoricoExtraCurricular.CaminhoArquivoParticipacao)) { var fs = new FileServer { NomeDoArquivoNoServidor = pHistoricoExtraCurricular.CaminhoArquivoParticipacao, Auditoria = new Auditoria(autenticacao.Login), TipoArquivo = pHistoricoExtraCurricular.TipoArquivoComprovacao, NomeDoArquivoOriginal = pHistoricoExtraCurricular.NomeArquivoComprovacao, MediaServer = true }; new BMFileServer().Salvar(fs); historico.FileServer = fs; } new BMHistoricoExtraCurricular().Salvar(historico); } catch (Exception ex) { // Caso a exceção seja violação da chave que não permite atividades com mesmo nome, // do mesmo usuário e com a mesma data de início, retorna mensagem de erro amigável. var sqlException = ex.InnerException as SqlException; if (sqlException != null && sqlException.Number == 2627) { throw new AcademicoException( "Você já possui uma atividade extracurricular com este mesmo nome e com a mesma data de início. Altere os dados abaixo ou vá na listagem do seu histórico acadêmico e altere a atividade existente."); } ErroUtil.Instancia.TratarErro(ex); } }