示例#1
0
 public override void DefineTemplateByTableInfoFields(Context config, TableInfo tableInfo, UniqueListInfo infos)
 {
     new HelperSysObjectsTableModel(config, "Templates").DefineTemplateByTableInfoFields(config, tableInfo, infos);
 }
示例#2
0
 public override void DefineTemplateByTableInfoFieldsFront(Context config, TableInfo tableInfo, UniqueListInfo infos)
 {
     if (config.MakeFront)
     {
         var front = this.DefineFrontTemplateClass(config);
         front.SetCamelCasingExceptions(base._camelCasingExceptions);
         front.DefineTemplateByTableInfoFields(config, tableInfo, infos);
     }
 }
示例#3
0
        private void ExecuteTemplateAngularModelFilterGenerated(TableInfo tableInfo, Context configContext, UniqueListInfo infos)
        {
            if (tableInfo.CodeCustomImplemented)
            {
                return;
            }

            if (!tableInfo.MakeFront)
            {
                return;
            }

            var pathOutput = PathOutputAngular.PathOutputAngularModelFilterGenerated(tableInfo, configContext);

            var pathTemplateModelGenerated = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameAngular.AngularModelFilterGenerated(tableInfo));
            var textTemplateModelGenerated = Read.AllText(tableInfo, pathTemplateModelGenerated, this._defineTemplateFolder);
            var classBuilderModelGenerated = GenericTagsTransformer(tableInfo, configContext, textTemplateModelGenerated);

            var classBuilderForm = string.Empty;

            if (infos.IsAny())
            {
                foreach (var item in infos)
                {
                    var itemForm          = string.Empty;
                    var pathTemplateField = string.Empty;
                    var textTemplateField = string.Empty;

                    if (item.Type == "string" || item.Type == "DateTime" || item.Type == "DateTime?" || item.Type == "Guid" || item.Type == "Guid?")
                    {
                        if (item.Type == "DateTime" || item.Type == "DateTime?")
                        {
                            itemForm  = string.Format(@"    public {0}Start: string;{1}", item.PropertyName, System.Environment.NewLine);
                            itemForm += string.Format(@"    public {0}End: string;", item.PropertyName);
                        }
                        else
                        {
                            itemForm = string.Format(@"    public {0}: string;", item.PropertyName);
                        }
                    }

                    else if (item.Type == "bool")
                    {
                        itemForm = string.Format(@"    public {0}: boolean;", item.PropertyName);
                    }

                    else if (item.Type == "bool?")
                    {
                        itemForm = string.Format(@"    public {0}?: boolean;", item.PropertyName);
                    }

                    else if (item.Type == "int" || item.Type == "float" || item.Type == "decimal")
                    {
                        itemForm = string.Format(@"    public {0}: number;", item.PropertyName);
                    }

                    else if (item.Type == "int?" || item.Type == "float?" || item.Type == "decimal?")
                    {
                        itemForm = string.Format(@"    public {0}?: number;", item.PropertyName);
                    }



                    classBuilderForm += string.Format("{0}{1}", itemForm, System.Environment.NewLine);
                }
            }

            classBuilderModelGenerated = classBuilderModelGenerated.Replace("<#formFields#>", classBuilderForm);

            using (var stream = new HelperStream(pathOutput).GetInstance()) { stream.Write(classBuilderModelGenerated); }
        }
示例#4
0
        public override void DefineTemplateByTableInfoFieldsBack(Context config, TableInfo tableInfo, UniqueListInfo infos)
        {
            if (config.MakeBack)
            {
                this.ExecuteTemplateEntitysBase(tableInfo, config, infos);
                this.ExecuteTemplateEntitysExt(tableInfo, config, infos);

                this.ExecuteTemplateIEntityRepository(tableInfo, config, infos);
                this.ExecuteTemplateEntityRepository(tableInfo, config, infos);

                this.ExecuteTemplateFilter(tableInfo, config, infos);
                this.ExecuteTemplateFilterPartial(tableInfo, config, infos);
                this.ExecuteTemplateFilterBasicExtension(tableInfo, config, infos);
                this.ExecuteTemplateFilterCustomExtension(tableInfo, config, infos);
                this.ExecuteTemplateOrderByDomainExtension(tableInfo, config, infos);

                this.ExecuteTemplateEntityMapBase(tableInfo, config, infos);
                this.ExecuteTemplateEntityMapExtension(tableInfo, config, infos);

                this.ExecuteTemplateApi(tableInfo, config, infos);
                this.ExecuteTemplateApiMore(tableInfo, config, infos);
            }
        }
示例#5
0
        public override void DefineTemplateByTableInfoFields(Context configContext, TableInfo tableInfo, UniqueListInfo infos)
        {
            base.DefineTemplateByTableInfoFields(configContext, tableInfo, infos);

            ExecuteTemplateVueFormComponent(tableInfo, configContext, infos);
            ExecuteTemplateVueFilterComponent(tableInfo, configContext, infos);
            ExecuteTemplateVueIndex(tableInfo, configContext, infos);
        }
示例#6
0
        public override void DefineTemplateByTableInfoFields(Context config, TableInfo tableInfo, UniqueListInfo infos)
        {
            foreach (var item in infos)
            {
                var order = TypeConvertCSharp.OrderByType(item.Type);

                if (tableInfo.FieldsConfig.IsAny())
                {
                    var orderField = tableInfo.FieldsConfig
                                     .Where(_ => _.Name.ToLower() == item.ColumnName.ToString().ToLower())
                                     .SingleOrDefault();

                    if (orderField.IsNotNull() && orderField.Order.IsSent())
                    {
                        order = orderField.Order;
                    }
                }

                item.Order = order;
            }

            base.CastOrdenabledToUniqueListInfo(infos);
        }
        public override void DefineTemplateByTableInfoFieldsFront(Context config, TableInfo tableInfo, UniqueListInfo infos)
        {
            if (config.Arquiteture == ArquitetureType.TransactionScript)
            {
                this._transaction.DefineTemplateByTableInfoFieldsFront(config, tableInfo, infos);
            }

            if (config.Arquiteture == ArquitetureType.DDD)
            {
                this._ddd.DefineTemplateByTableInfoFieldsFront(config, tableInfo, infos);
            }
        }
示例#8
0
        private string MakeFilterClassBuilder(TableInfo tableInfo, Context configContext, UniqueListInfo infos, string textTemplate)
        {
            var classBuilder = GenericTagsTransformer(tableInfo, configContext, textTemplate);

            var classBuilderForm = string.Empty;

            if (infos.IsAny())
            {
                foreach (var item in infos)
                {
                    if (Audit.IsAuditField(item.PropertyName))
                    {
                        continue;
                    }

                    if (item.IsKey == 1 && !IsPropertyNavigationTypeInstance(tableInfo, item.PropertyName))
                    {
                        continue;
                    }

                    var itemForm          = string.Empty;
                    var pathTemplateField = string.Empty;
                    var textTemplateField = string.Empty;

                    var fieldInBlackListFilter = FieldInBlackListFilter(tableInfo, item.PropertyName);
                    if (fieldInBlackListFilter)
                    {
                        continue;
                    }

                    if (item.Type == "string")
                    {
                        pathTemplateField = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueFieldInput(tableInfo));
                        textTemplateField = Read.AllText(tableInfo, pathTemplateField, this._defineTemplateFolder);
                    }

                    else if (item.Type == "DateTime" || item.Type == "DateTime?")
                    {
                        pathTemplateField = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueFieldDate(tableInfo));
                        textTemplateField = Read.AllText(tableInfo, pathTemplateField, this._defineTemplateFolder);

                        itemForm.Replace("<#propertyName#>", string.Format("{0}{1}{2}", item.PropertyName + "Start", System.Environment.NewLine, "<#propertyName#>"));
                        itemForm.Replace("<#propertyName#>", string.Format("{0}", item.PropertyName + "End"));
                    }
                    else if (item.Type == "bool" || item.Type == "bool?")
                    {
                        pathTemplateField = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueFieldRadio(tableInfo));
                        textTemplateField = Read.AllText(tableInfo, pathTemplateField, this._defineTemplateFolder);
                    }

                    else
                    {
                        if (IsPropertyNavigationTypeInstance(tableInfo, item.PropertyName))
                        {
                            pathTemplateField = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueFieldSelect(tableInfo));
                            textTemplateField = Read.AllText(tableInfo, pathTemplateField, this._defineTemplateFolder);
                        }
                        else
                        {
                            pathTemplateField = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueFieldInput(tableInfo));
                            textTemplateField = Read.AllText(tableInfo, pathTemplateField, this._defineTemplateFolder);
                        }
                    }

                    itemForm = FormFieldReplace(configContext, tableInfo, item, textTemplateField);
                    itemForm = itemForm
                               .Replace("<#modelType#>", "filter")
                               .Replace("<#propertyName#>", item.PropertyName)
                               .Replace("<#propertyNameLowerCase#>", CamelCaseTransform(item.PropertyName))
                               .Replace("<#className#>", tableInfo.ClassName)
                               .Replace("<#isRequired#>", "")
                               .Replace("<#isRequiredLabelTag#>", "")
                               .Replace("<#ReletedClass#>", PropertyNavigationTypeInstance(tableInfo, item.PropertyName));

                    classBuilderForm += string.Format("{0}{1}", itemForm, System.Environment.NewLine);
                }
            }

            classBuilder = classBuilder.Replace("<#formFields#>", classBuilderForm);
            return(classBuilder);
        }
示例#9
0
 public override void DefineTemplateByTableInfoFieldsFront(Context config, TableInfo tableInfo, UniqueListInfo infos)
 {
     new HelperSysObjectsVue(config).DefineTemplateByTableInfoFields(config, tableInfo, infos);
 }
示例#10
0
        public override void DefineTemplateByTableInfoFieldsBack(Context config, TableInfo tableInfo, UniqueListInfo infos)
        {
            this.ExecuteTemplateModelsBase(tableInfo, config, infos);
            this.ExecuteTemplateModels(tableInfo, config, infos);

            this.ExecuteTemplateRepositoryBase(tableInfo, config, infos);
            this.ExecuteTemplateRepository(tableInfo, config, infos);

            this.ExecuteTemplateFilterBase(tableInfo, config, infos);
            this.ExecuteTemplateFilter(tableInfo, config, infos);

            this.ExecuteTemplateMapsBase(tableInfo, config, infos);
            this.ExecuteTemplateMaps(tableInfo, config, infos);

            this.ExecuteTemplateAppBase(tableInfo, config, infos);
            this.ExecuteTemplateApp(tableInfo, config, infos);

            this.ExecuteTemplateDtoBase(tableInfo, config, infos);
            this.ExecuteTemplateDtoSave(tableInfo, config, infos);
            this.ExecuteTemplateDtoGet(tableInfo, config, infos);
            this.ExecuteTemplateDtoDetail(tableInfo, config, infos);

            this.ExecuteTemplateApi(tableInfo, config, infos);
            this.ExecuteTemplateApiPartial(tableInfo, config, infos);
        }
示例#11
0
 public override void DefineTemplateByTableInfoFields(Context config, TableInfo tableInfo, UniqueListInfo infos)
 {
     throw new NotImplementedException();
 }
 protected abstract void DefineTemplateByTableInfoFieldsBack(Context config, TableInfo tableInfo, UniqueListInfo infos);
示例#13
0
 public abstract void DefineTemplateByTableInfoFieldsFront(Context config, TableInfo tableInfo, UniqueListInfo infos);
示例#14
0
 public override void DefineTemplateByTableInfoFields(Context config, TableInfo tableInfo, UniqueListInfo infos)
 {
     this.DefineTemplateByTableInfoFieldsBack(config, tableInfo, infos);
     this.DefineTemplateByTableInfoFieldsFront(config, tableInfo, infos);
 }
示例#15
0
        private string MakeSaveClassBuilder(TableInfo tableInfo, Context configContext, UniqueListInfo infos, string textTemplate)
        {
            var classBuilder = GenericTagsTransformer(tableInfo, configContext, textTemplate);

            var classBuilderForm = string.Empty;

            if (infos.IsAny())
            {
                foreach (var item in infos)
                {
                    if (Audit.IsAuditField(item.PropertyName))
                    {
                        continue;
                    }

                    var itemForm          = string.Empty;
                    var pathTemplateField = string.Empty;
                    var textTemplateField = string.Empty;

                    var fieldInBlackListCreate = FieldInBlackListSave(tableInfo, item.PropertyName);
                    if (fieldInBlackListCreate)
                    {
                        continue;
                    }

                    if (item.IsKey == 1 && !IsPropertyNavigationTypeInstance(tableInfo, item.PropertyName))
                    {
                        pathTemplateField = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameAngular.AngularFieldHidden(tableInfo));
                        textTemplateField = Read.AllText(tableInfo, pathTemplateField, this._defineTemplateFolder);
                    }

                    else if (item.Type == "string")
                    {
                        pathTemplateField = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameAngular.AngularFieldInput(tableInfo));
                        textTemplateField = Read.AllText(tableInfo, pathTemplateField, this._defineTemplateFolder);
                    }

                    else if (item.Type == "DateTime" || item.Type == "DateTime?")
                    {
                        pathTemplateField = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameAngular.AngularFieldDate(tableInfo));
                        textTemplateField = Read.AllText(tableInfo, pathTemplateField, this._defineTemplateFolder);
                    }
                    else if (item.Type == "bool")
                    {
                        pathTemplateField = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameAngular.AngularFieldCheckbox(tableInfo));
                        textTemplateField = Read.AllText(tableInfo, pathTemplateField, this._defineTemplateFolder);
                    }
                    else if (item.Type == "bool?")
                    {
                        pathTemplateField = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameAngular.AngularFieldRadio(tableInfo));
                        textTemplateField = Read.AllText(tableInfo, pathTemplateField, this._defineTemplateFolder);
                    }

                    else
                    {
                        if (IsPropertyNavigationTypeInstance(tableInfo, item.PropertyName))
                        {
                            pathTemplateField = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameAngular.AngularFieldSelect(tableInfo));
                            textTemplateField = Read.AllText(tableInfo, pathTemplateField, this._defineTemplateFolder);
                        }
                        else
                        {
                            pathTemplateField = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameAngular.AngularFieldInput(tableInfo));
                            textTemplateField = Read.AllText(tableInfo, pathTemplateField, this._defineTemplateFolder);
                        }
                    }

                    itemForm = FormFieldReplace(configContext, tableInfo, item, textTemplateField);
                    itemForm = itemForm
                               .Replace("<#formType#>", "save")
                               .Replace("<#propertyName#>", item.PropertyName)
                               .Replace("<#className#>", tableInfo.ClassName)
                               .Replace("<#isRequired#>", item.IsNullable == 0 ? "required" : "")
                               .Replace("<#ReletedClass#>", PropertyNavigationTypeInstance(tableInfo, item.PropertyName));

                    classBuilderForm += string.Format("{0}{1}", itemForm, System.Environment.NewLine);
                }
            }

            classBuilder = classBuilder.Replace("<#formFields#>", classBuilderForm);
            return(classBuilder);
        }
示例#16
0
        public override void DefineTemplateByTableInfoFieldsBack(Context configContext, TableInfo tableInfo, UniqueListInfo infos)
        {
            var overrideFile = configContext.OverrideFiles;

            if (configContext.MakeBack)
            {
                ExecuteTemplate(new ConfigExecutetemplate
                {
                    TableInfo      = tableInfo,
                    Infos          = infos,
                    ConfigContext  = configContext,
                    PathOutput     = PathOutputTransactionScript.PathOutputTransactionScriptEntityRepository(tableInfo, configContext),
                    Template       = DefineTemplateNameTransactionScript.TransactionScriptEntityRepository(tableInfo),
                    TemplateFields = new List <TemplateField> {
                        new TemplateField
                        {
                            TemplateName = DefineTemplateNameTransactionScript.TransactionScriptParameters(tableInfo),
                            TagTemplate  = "<#property#>"
                        }
                    },
                    WithRestrictions = false,
                    Operation        = EOperation.Back_Transaction_EntityRepository,
                    Flow             = EFlowTemplate.Field,
                    Layer            = ELayer.Back,
                    OverrideFile     = overrideFile
                });

                ExecuteTemplate(new ConfigExecutetemplate
                {
                    TableInfo      = tableInfo,
                    ConfigContext  = configContext,
                    Infos          = infos,
                    PathOutput     = PathOutputTransactionScript.PathOutputTransactionScriptDto(tableInfo, configContext),
                    Template       = DefineTemplateNameTransactionScript.TransactionScriptDto(tableInfo),
                    TemplateFields = new List <TemplateField> {
                        new TemplateField
                        {
                            TemplateName = DefineTemplateNameTransactionScript.TransactionScriptProperty(tableInfo),
                            TagTemplate  = "<#property#>"
                        }
                    },
                    WithRestrictions = false,
                    Operation        = EOperation.Back_Transaction_Dto,
                    Flow             = EFlowTemplate.Field,
                    Layer            = ELayer.Back
                });

                ExecuteTemplate(new ConfigExecutetemplate
                {
                    TableInfo      = tableInfo,
                    ConfigContext  = configContext,
                    Infos          = infos,
                    PathOutput     = PathOutputTransactionScript.PathOutputTransactionScriptDtoSpecialized(tableInfo, configContext),
                    Template       = DefineTemplateNameTransactionScript.TransactionScriptDtoSpecialized(tableInfo),
                    TemplateFields = new List <TemplateField> {
                        new TemplateField
                        {
                            TemplateName = DefineTemplateNameTransactionScript.TransactionScriptProperty(tableInfo),
                            TagTemplate  = "<#property#>"
                        }
                    },
                    Operation    = EOperation.Back_Transaction_DtoSpecialized,
                    Flow         = EFlowTemplate.Field,
                    Layer        = ELayer.Back,
                    OverrideFile = overrideFile
                });

                ExecuteTemplate(new ConfigExecutetemplate
                {
                    TableInfo      = tableInfo,
                    ConfigContext  = configContext,
                    Infos          = infos,
                    PathOutput     = PathOutputTransactionScript.PathOutputFilter(tableInfo, configContext),
                    Template       = DefineTemplateNameTransactionScript.TransactionScriptFilter(tableInfo),
                    TemplateFields = new List <TemplateField> {
                        new TemplateField
                        {
                            TemplateName = DefineTemplateNameTransactionScript.TransactionScriptProperty(tableInfo),
                            TagTemplate  = "<#property#>"
                        }
                    },
                    WithRestrictions = false,
                    Operation        = EOperation.Back_Transaction_Filter,
                    Flow             = EFlowTemplate.Field,
                    Layer            = ELayer.Back,
                });

                ExecuteTemplate(new ConfigExecutetemplate
                {
                    TableInfo      = tableInfo,
                    ConfigContext  = configContext,
                    Infos          = infos,
                    PathOutput     = PathOutputTransactionScript.PathOutputFilterPartial(tableInfo, configContext),
                    Template       = DefineTemplateNameTransactionScript.TransactionScriptFilterPartial(tableInfo),
                    TemplateFields = new List <TemplateField> {
                        new TemplateField
                        {
                            TemplateName = DefineTemplateNameTransactionScript.TransactionScriptProperty(tableInfo),
                            TagTemplate  = "<#property#>"
                        }
                    },
                    Operation    = EOperation.Back_Transaction_FilterPartial,
                    Flow         = EFlowTemplate.Field,
                    Layer        = ELayer.Back,
                    OverrideFile = overrideFile
                });
            }
        }
示例#17
0
        public override void DefineTemplateByTableInfoFields(Context configContext, TableInfo tableInfo, UniqueListInfo infos)
        {
            base.DefineTemplateByTableInfoFields(configContext, tableInfo, infos);

            ExecuteTemplateAngularSaveGeneratedComponentHtml(tableInfo, configContext, infos);
            ExecuteTemplateAngularSaveComponentHtml(tableInfo, configContext, infos);
            ExecuteTemplateAngularGridGeneratedComponentHtml(tableInfo, configContext, infos);
            ExecuteTemplateAngularGridComponentHtml(tableInfo, configContext, infos);
            ExecuteTemplateAngularFilterGeneratedComponentHtml(tableInfo, configContext, infos);
            ExecuteTemplateAngularFilterComponentHtml(tableInfo, configContext, infos);
            ExecuteTemplateAngularModelGenerated(tableInfo, configContext, infos);
            ExecuteTemplateAngularModelFilterGenerated(tableInfo, configContext, infos);
        }
示例#18
0
        private string MakeGridClassBuilder(TableInfo tableInfo, Context configContext, UniqueListInfo infos, string textTemplate)
        {
            var classBuilder = GenericTagsTransformer(tableInfo, configContext, textTemplate);

            var classBuilderThead = string.Empty;
            var classBuilderTbody = string.Empty;

            if (infos.IsAny())
            {
                foreach (var item in infos)
                {
                    if (Audit.IsAuditField(item.PropertyName))
                    {
                        continue;
                    }

                    var itemForm          = string.Empty;
                    var textTemplateThead = string.Empty;
                    var textTemplateTbody = string.Empty;

                    var fieldInBlackListCreate = FieldInBlackListSave(tableInfo, item.PropertyName);
                    if (fieldInBlackListCreate)
                    {
                        continue;
                    }

                    if (item.IsKey == 1 && !IsPropertyNavigationTypeInstance(tableInfo, item.PropertyName))
                    {
                        var pathTemplateThead = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueTheadId(tableInfo));
                        textTemplateThead = Read.AllText(tableInfo, pathTemplateThead, this._defineTemplateFolder);
                        var pathTemplateTbody = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueTbodyString(tableInfo));
                        textTemplateTbody = Read.AllText(tableInfo, pathTemplateTbody, this._defineTemplateFolder);
                    }

                    else if (item.Type == "string")
                    {
                        var pathTemplateThead = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueTheadFields(tableInfo));
                        textTemplateThead = Read.AllText(tableInfo, pathTemplateThead, this._defineTemplateFolder);
                        var pathTemplateTbody = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueTbodyString(tableInfo));
                        textTemplateTbody = Read.AllText(tableInfo, pathTemplateTbody, this._defineTemplateFolder);
                    }

                    else if (item.Type == "DateTime" || item.Type == "DateTime?")
                    {
                        var pathTemplateThead = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueTheadFields(tableInfo));
                        textTemplateThead = Read.AllText(tableInfo, pathTemplateThead, this._defineTemplateFolder);
                        var pathTemplateTbody = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueTbodyDate(tableInfo));
                        textTemplateTbody = Read.AllText(tableInfo, pathTemplateTbody, this._defineTemplateFolder);
                    }
                    else if (item.Type == "bool" || item.Type == "bool?")
                    {
                        var pathTemplateThead = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueTheadFields(tableInfo));
                        textTemplateThead = Read.AllText(tableInfo, pathTemplateThead, this._defineTemplateFolder);
                        var pathTemplateTbody = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueTbodyBoolean(tableInfo));
                        textTemplateTbody = Read.AllText(tableInfo, pathTemplateTbody, this._defineTemplateFolder);
                    }

                    else if (item.Type == "decimal" || item.Type == "decimal?" || item.Type == "float" || item.Type == "float?")
                    {
                        var pathTemplateThead = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueTheadFields(tableInfo));
                        textTemplateThead = Read.AllText(tableInfo, pathTemplateThead, this._defineTemplateFolder);
                        var pathTemplateTbody = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueTbodyNumber(tableInfo));
                        textTemplateTbody = Read.AllText(tableInfo, pathTemplateTbody, this._defineTemplateFolder);
                    }

                    else
                    {
                        if (!IsPropertyNavigationTypeInstance(tableInfo, item.PropertyName))
                        {
                            var pathTemplateThead = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueTheadId(tableInfo));
                            textTemplateThead = Read.AllText(tableInfo, pathTemplateThead, this._defineTemplateFolder);
                            var pathTemplateTbody = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueTbodyString(tableInfo));
                            textTemplateTbody = Read.AllText(tableInfo, pathTemplateTbody, this._defineTemplateFolder);
                        }
                        else
                        {
                            continue;
                        }
                    }

                    textTemplateThead = textTemplateThead
                                        .Replace("<#propertyName#>", item.PropertyName)
                                        .Replace("<#className#>", tableInfo.ClassName)
                                        .Replace("<#propertyNameLowerCase#>", CamelCaseTransform(item.PropertyName))
                                        .Replace("<#ReletedClass#>", PropertyNavigationTypeInstance(tableInfo, item.PropertyName));

                    textTemplateTbody = textTemplateTbody
                                        .Replace("<#propertyName#>", item.PropertyName)
                                        .Replace("<#className#>", tableInfo.ClassName)
                                        .Replace("<#propertyNameLowerCase#>", CamelCaseTransform(item.PropertyName))
                                        .Replace("<#ReletedClass#>", PropertyNavigationTypeInstance(tableInfo, item.PropertyName));

                    classBuilderThead += string.Format("{0}{1}", textTemplateThead, System.Environment.NewLine);
                    classBuilderTbody += string.Format("{0}{1}", textTemplateTbody, System.Environment.NewLine);
                }
            }

            classBuilder = classBuilder
                           .Replace("<#theadFields#>", classBuilderThead)
                           .Replace("<#tbodyFields#>", classBuilderTbody);
            return(classBuilder);
        }
示例#19
0
        private void ExecuteTemplateAngularGridGeneratedComponentHtml(TableInfo tableInfo, Context configContext, UniqueListInfo infos)
        {
            if (tableInfo.CodeCustomImplemented)
            {
                return;
            }

            if (!tableInfo.MakeFront)
            {
                return;
            }

            var pathOutput = PathOutputAngular.PathOutputAngularGridGeneratedComponentHtml(tableInfo, configContext);

            var pathTemplate = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameAngular.AngularGridGeneratedComponentHtml(tableInfo));
            var textTemplate = Read.AllText(tableInfo, pathTemplate, this._defineTemplateFolder);
            var classBuilder = this.MakeGridClassBuilder(tableInfo, configContext, infos, textTemplate);

            using (var stream = new HelperStream(pathOutput).GetInstance()) { stream.Write(classBuilder); }
        }
示例#20
0
        private void ExecuteTemplateVueFilterComponent(TableInfo tableInfo, Context configContext, UniqueListInfo infos)
        {
            if (tableInfo.CodeCustomImplemented)
            {
                return;
            }
            if (!tableInfo.MakeFront)
            {
                return;
            }

            var pathOutput = PathOutputVue.PathOutputVueViewComponent(tableInfo, configContext, "filter");

            if (File.Exists(pathOutput))
            {
                return;
            }

            var pathTemplate = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateNameVue.VueFilterComponent(tableInfo));
            var textTemplate = Read.AllText(tableInfo, pathTemplate, this._defineTemplateFolder);
            var classBuilder = this.MakeFilterClassBuilder(tableInfo, configContext, infos, textTemplate);

            using (var stream = new HelperStream(pathOutput).GetInstance()) { stream.Write(classBuilder); }
        }
        public override void DefineTemplateByTableInfoFields(Context config, TableInfo tableInfo, UniqueListInfo infos)
        {
            foreach (var item in infos)
            {
                var order       = TypeConvertCSharp.OrderByType(item.Type);
                var orderFilter = TypeConvertCSharp.OrderByType(item.Type);

                var group               = default(Group);
                var groupComponents     = default(List <GroupComponent>);
                var ShowFieldIsKey      = false;
                var CameCasingManual    = "";
                var RelationOneToOne    = false;
                var dateTimeComparation = config.DateTimeComparation;
                var htmlComponent       = "";

                if (tableInfo.FieldsConfig.IsAny())
                {
                    var dateTimeComparationConfig = tableInfo.FieldsConfig
                                                    .Where(_ => _.Name.ToLower() == item.PropertyName.ToString().ToLower())
                                                    .SingleOrDefault();

                    if (dateTimeComparationConfig.IsNotNull() && dateTimeComparationConfig.DateTimeComparation.IsSent())
                    {
                        dateTimeComparation = dateTimeComparationConfig.DateTimeComparation;
                    }


                    var orderConfig = tableInfo.FieldsConfig
                                      .Where(_ => _.Name.ToLower() == item.PropertyName.ToString().ToLower())
                                      .SingleOrDefault();

                    if (orderConfig.IsNotNull() && orderConfig.Order.IsSent())
                    {
                        order = orderConfig.Order;
                    }


                    if (orderConfig.IsNotNull() && orderConfig.OrderFilter.IsSent())
                    {
                        orderFilter = orderConfig.OrderFilter;
                    }
                    else
                    {
                        orderFilter = int.MaxValue;
                    }

                    var groupConfig = tableInfo.FieldsConfig
                                      .Where(_ => _.Name.ToLower() == item.PropertyName.ToString().ToLower())
                                      .SingleOrDefault();

                    if (groupConfig.IsNotNull() && groupConfig.Group.IsNotNull())
                    {
                        group = groupConfig.Group;
                    }


                    var groupComponentConfig = tableInfo.FieldsConfig
                                               .Where(_ => _.Name.ToLower() == item.PropertyName.ToString().ToLower())
                                               .SingleOrDefault();

                    if (groupComponentConfig.IsNotNull() && groupComponentConfig.GroupComponents.IsAny())
                    {
                        groupComponents = groupConfig.GroupComponents;
                    }


                    var ShowFieldIsKeyConfig = tableInfo.FieldsConfig
                                               .Where(_ => _.Name.ToLower() == item.PropertyName.ToString().ToLower())
                                               .SingleOrDefault();

                    if (ShowFieldIsKeyConfig.IsNotNull() && ShowFieldIsKeyConfig.ShowFieldIsKey.IsSent())
                    {
                        ShowFieldIsKey = groupConfig.ShowFieldIsKey;
                    }

                    var RelationOneToOneConfig = tableInfo.FieldsConfig
                                                 .Where(_ => _.Name.ToLower() == item.PropertyName.ToString().ToLower())
                                                 .SingleOrDefault();

                    if (RelationOneToOneConfig.IsNotNull() && RelationOneToOneConfig.RelationOneToOne.IsSent())
                    {
                        RelationOneToOne = groupConfig.RelationOneToOne;
                    }


                    var CameCasingManualConfig = tableInfo.FieldsConfig
                                                 .Where(_ => _.Name.ToLower() == item.PropertyName.ToString().ToLower())
                                                 .SingleOrDefault();

                    if (CameCasingManualConfig.IsNotNull() && CameCasingManualConfig.CameCasingManual.IsSent())
                    {
                        CameCasingManual = groupConfig.CameCasingManual;
                    }

                    var textEditor = tableInfo.FieldsConfig
                                     .Where(_ => _.Name.ToLower() == item.PropertyName.ToString().ToLower())
                                     .SingleOrDefault();

                    if (textEditor.IsNotNull() && textEditor.TextEditor.IsSent())
                    {
                        htmlComponent = "TextEditor";
                    }

                    if (textEditor.IsNotNull() && textEditor.Upload.IsSent())
                    {
                        htmlComponent = "Upload";
                    }
                }


                item.Order               = order;
                item.HtmlComponent       = htmlComponent;
                item.OrderFilter         = orderFilter;
                item.DateTimeComparation = dateTimeComparation;
                item.Group               = group;
                item.GroupComponents     = groupComponents;
                item.ShowFieldIsKey      = ShowFieldIsKey;
                item.CameCasingManual    = CameCasingManual;
                item.RelationOneToOne    = RelationOneToOne;
            }

            base.CastOrdenabledToUniqueListInfo(infos);
        }