Example #1
0
        public DisciplinaSAPResponse DT_CARACT_LaborSafety_RFC01_ProcessaDisciplina(DisciplinaSAPModelo modelo)
        {
            var disciplinaResponse       = new DisciplinaSAPResponse();
            DisciplinaSAPResponse result = new DisciplinaSAPResponse();

            result.Itens = new List <DisciplinaItemSAPResponse>();

            try
            {
                //Grava o que chegou na integração, em um arquivo texto
                this.GeraLogRecebimentoIntegracao(modelo, TipoIntegracao.Disciplina);

                result = disciplinaSAPNegocio.ProcessarDisciplina(modelo);
            }
            catch (Exception e)
            {
                DisciplinaItemSAPResponse itemResponse = new DisciplinaItemSAPResponse();
                itemResponse.Caracteristica = "";
                itemResponse.Status         = Constantes.StatusResponseIntegracao.E.ToString();
                itemResponse.Descricao      = e.Message;

                result.Itens.Add(itemResponse);
            }

            return(result);
        }
        public DisciplinaSAPResponse ProcessarDisciplina(DisciplinaSAPModelo modelo)
        {
            DisciplinaSAPResponse response = new DisciplinaSAPResponse();

            response.Itens = new List <DisciplinaItemSAPResponse>();

            this.ValidaDisciplina(modelo);

            List <DisciplinaModelo> listaDisciplina = new List <DisciplinaModelo>();

            foreach (var item in modelo.Itens)
            {
                listaDisciplina.Add(new DisciplinaModelo()
                {
                    Nome      = item.ValorCaracteristica,
                    Descricao = item.ValorCaracteristica
                });
            }

            foreach (var disciplina in listaDisciplina)
            {
                DisciplinaItemSAPResponse itemResponse = new DisciplinaItemSAPResponse();

                try
                {
                    //disciplina.Descricao = Utils.StringUtils.RemoveAcentuacao(disciplina.Descricao);
                    var disciplinaExistente = disciplinaPersistencia.ListarDisciplinaPorNome(disciplina.Descricao);

                    if (disciplinaExistente == null)
                    {
                        disciplinaPersistencia.Inserir(disciplina);
                    }
                    else
                    {
                        disciplinaPersistencia.Editar(disciplina);
                    }

                    itemResponse.Caracteristica = disciplina.Descricao;
                    itemResponse.Status         = Constantes.StatusResponseIntegracao.S.ToString();
                    itemResponse.Descricao      = "";
                }
                catch (Exception ex)
                {
                    itemResponse.Caracteristica = disciplina.Descricao;
                    itemResponse.Status         = Constantes.StatusResponseIntegracao.E.ToString();
                    itemResponse.Descricao      = ex.Message;
                }
                finally
                {
                    response.Itens.Add(itemResponse);
                }
            }

            return(response);
        }
Example #3
0
        private void geraLogMetodoDisciplina(DisciplinaSAPModelo modelo, StreamWriter sw)
        {
            sw.WriteLine($@"-----MÉTODO PROCESSA DISCIPLINA-----");
            int i = 0;

            foreach (var disciplina in modelo.Itens)
            {
                sw.WriteLine("");
                sw.WriteLine($@"___ITEM {i} da lista___");
                sw.WriteLine($@"Propriedade Característica - {disciplina.Caracteristica}");
                sw.WriteLine($@"Propriedade Valor da Característica - {disciplina.ValorCaracteristica}");
            }
        }
        private void ValidaDisciplina(DisciplinaSAPModelo modelo)
        {
            try
            {
                if (modelo == null)
                {
                    throw new Exception("O modelo de disciplina não foi informado!");
                }

                if (modelo.Itens == null)
                {
                    throw new Exception("A(s) disciplina(s) não foi(ram) informada(s)!");
                }

                if (modelo.Itens.Count == 0)
                {
                    throw new Exception("A(s) disciplina(s) não foi(ram) informada(s)!");
                }
                else
                {
                    for (int i = 0; i < modelo.Itens.Count; i++)
                    {
                        DisciplinaItemSAPModelo item = modelo.Itens[i];

                        if (String.IsNullOrEmpty(item.Caracteristica) && String.IsNullOrEmpty(item.ValorCaracteristica))
                        {
                            throw new Exception($"O item de posição {i + 1} não possui valores para nenhum dos campos!");
                        }

                        if (String.IsNullOrEmpty(item.ValorCaracteristica))
                        {
                            throw new Exception($"O item de posição {i + 1} não possui valor para o campo VALOR_CARACTERISTICA");
                        }
                    }

                    //foreach (var item in modelo.Itens)
                    //{
                    //    if(String.IsNullOrEmpty(item.ValorCaracteristica))
                    //        throw new Exception($"A disciplina {item.Caracteristica} não foi informada!");
                    //}
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }