Exemple #1
0
        public string RetornarTipoPropriedade(Propriedade propriedade, eTratarConteudo tratarConteudo)
        {
            if (propriedade.Tipo == eTipoPropriedade.Reference && (tratarConteudo == eTratarConteudo.Request || tratarConteudo == eTratarConteudo.Response))
            {
                if (propriedade.IsCollection)
                {
                    return("IEnumerable<int>");
                }

                return("int" + (propriedade.Nullable ? "?" : ""));
            }

            if (propriedade.Tipo == eTipoPropriedade.String)
            {
                return("string");
            }

            if (propriedade.IsCollection)
            {
                return("IEnumerable<" + propriedade.Nome + tratarConteudo.GetEnumDescription() + ">");
            }

            if (propriedade.Tipo == eTipoPropriedade.Reference)
            {
                return(propriedade.Nome + tratarConteudo.GetEnumDescription());
            }

            return(propriedade.Tipo.GetEnumDescription() + (propriedade.Nullable ? "?" : ""));
        }
Exemple #2
0
        public string RetornarNomePropriedade(Propriedade propriedade, eTratarConteudo tratarConteudo)
        {
            if (propriedade.Tipo == eTipoPropriedade.Reference && (tratarConteudo == eTratarConteudo.Request || tratarConteudo == eTratarConteudo.Response))
            {
                if (propriedade.IsCollection)
                {
                    return("Ids" + propriedade.Nome);
                }

                return("Id" + propriedade.Nome);
            }

            if (propriedade.IsCollection)
            {
                return(propriedade.NomePlural);
            }

            return(propriedade.Nome);
        }
Exemple #3
0
        public string TratarParametroConstrutor(Propriedade propriedade, bool primeiroItem, eTratarConteudo tratarConteudo)
        {
            var separador = primeiroItem ? "" : ", ";

            return($"{separador}{RetornarTipoPropriedade(propriedade, tratarConteudo)} {RetornarNomePropriedadeCamelCase(propriedade, tratarConteudo)}");
        }
Exemple #4
0
        public string TratarConstrutor(IList <Propriedade> propriedades, string textoAtual, eTratarConteudo tratarConteudo)
        {
            var sbParametros = new StringBuilder();
            var sbCorpo      = new StringBuilder();

            for (int i = 0; i < propriedades.Count; i++)
            {
                sbParametros.Append(TratarParametroConstrutor(propriedades[i], i == 0, tratarConteudo));
                sbCorpo.Append(TratarCorpoConstrutor(propriedades[i], i == propriedades.Count - 1, tratarConteudo));
            }

            var textoTratado = textoAtual.Replace("{{params}}", sbParametros.ToString());

            return(textoTratado.Replace("{{constructorBody}}", sbCorpo.ToString()));
        }
Exemple #5
0
        public string TratarPropriedades(IList <Propriedade> propriedades, string textoAtual, eTratarConteudo tratarConteudo,
                                         bool definirVirtual, bool annotation)
        {
            var    sbPropriedades    = new StringBuilder();
            string modificadorAcesso = definirVirtual ? "public virtual " : "public ";

            for (int i = 0; i < propriedades.Count; i++)
            {
                var propriedade  = propriedades[i];
                var ultimoItem   = i == propriedades.Count - 1;
                var finalDaLinha = ultimoItem ? " { get; set; }" : " { get; set; }\n\n\t\t";

                if (annotation && !propriedade.Nullable)
                {
                    sbPropriedades.Append("[Required]\n\t\t");
                }

                sbPropriedades
                .Append($"{modificadorAcesso}{RetornarTipoPropriedade(propriedade, tratarConteudo)} ")
                .Append($"{RetornarNomePropriedade(propriedade, tratarConteudo)}{finalDaLinha}");
            }

            var teste0 = textoAtual;
            var teste  = sbPropriedades;

            return(textoAtual.Replace("{{property}}", sbPropriedades.ToString()));
        }
Exemple #6
0
 public string TratarPropriedades(IList <Propriedade> propriedades, string textoAtual, eTratarConteudo tratarConteudo, bool annotation)
 {
     return(TratarPropriedades(propriedades, textoAtual, tratarConteudo, false, annotation));
 }
Exemple #7
0
 public string TratarPropriedades(IList <Propriedade> propriedades, string textoAtual, eTratarConteudo tratarConteudo)
 {
     return(TratarPropriedades(propriedades, textoAtual, tratarConteudo, false, false));
 }
Exemple #8
0
 public string TratarConteudo(IList <Propriedade> propriedades, string textoAtual, eTratarConteudo tratarConteudo, bool definirVirtual)
 {
     return(TratarPropriedades(propriedades, textoAtual, tratarConteudo, definirVirtual, false));
 }
Exemple #9
0
 public string RetornarNomePropriedadeCamelCase(Propriedade propriedade, eTratarConteudo tratarConteudo)
 {
     return(RetornarNomePropriedade(propriedade, tratarConteudo).ToCamelCase());
 }
Exemple #10
0
        public string TratarCorpoConstrutor(Propriedade propriedade, bool ultimoItem, eTratarConteudo tratarConteudo)
        {
            var fimDaLinha = ultimoItem ? ";" : ";\n\t\t\t";

            return(RetornarNomePropriedade(propriedade, tratarConteudo) + " = " + RetornarNomePropriedadeCamelCase(propriedade, tratarConteudo) + fimDaLinha);
        }