Enterprise-level rapid development framework nbsaas-boot 1.1.4-2023 released

<parent>
     <groupId>com.nbsaas.boot</groupId>
     <artifactId>nbsaas-boot</artifactId>
     <version>1.1.4-2023</version>
</parent>

Contents of this update

1. Add @Dict@DictItem annotation to facilitate dictionary type data display

2. The DataRequest object is reconstructed into a Request object, and the SearchRequest object is reconstructed into a Search object.

3. Modify the code generation module Request object and SearchRequest object related modules

4. Add PageExtResponse object to facilitate adding other attributes to list data.

5. Add NeStrategy to support ne query.

6. Adjust FilterGroup and other types to be compatible with dubbo3

nbsaas-boot has the following characteristics:

Automatic table creation: nbsaas-boot provides an automatic table creation function, which automatically generates database table structures based on user-defined data models, reducing manual operations and improving development efficiency.

Development specifications: nbsaas-boot provides a set of development specifications, including coding style, naming specifications, annotation specifications, etc., to make team development more standardized and efficient.

Code generator: nbsaas-boot provides a code generator that automatically generates front-end and back-end code based on the data model to improve development efficiency and code quality.

Multi-tenant support: nbsaas-boot supports multi-tenancy, providing independent data storage space and access rights for different customers to ensure data security and isolation.

Handle complex business through Command

InputRequestObject context = new InputRequestObject();
context.setConfig(config);
context.setFormBean(formBean);

 

    new DomainCommand()
        .after(new ApiCommand())
        .after(new ConvertCommand())
        .after(new ControllerFrontCommand())
        .after(new RestCommand())
        .after(new ExtApiCommand())
        .after(new RepositoryCommand())
        .after(new FieldCommand())
        .after(new FinishCommand()).execute(context);

Model building

@CatalogClass
@FormAnnotation(title = "组织架构管理", model = "组织架构", menu = "1,27,88")
@Data
@Entity
@Table(name = "sys_structure")
public class Structure extends CatalogEntity {

    @FormField(title = "父分类名称")
    @Comment("父分id")
    @FieldName
    @FieldConvert(classType = "Integer")
    @ManyToOne(fetch = FetchType.LAZY)
    private Structure parent;

    @OneToMany(fetch = FetchType.LAZY, mappedBy = "parent")
    private List<Structure> children;

}

Search model

@Data
public class ArticleSearch extends PageRequest implements Serializable {

    /**
     * 主键id  ==查询
     **/
    @Search(name = "id", operator = Operator.eq)
    private Long id;

    /**
     * 文章标题  模糊查询
     **/
    @Search(name = "title", operator = Operator.like)
    private String title;


}

Extract model data, and then generate back-end code + vue3 back-end management code through the code generator

Basic function project https://gitee.com/cng1985/nbsaas-boot-starter
project scaffolding https://gitee.com/cng1985/nbsaas-admin
vue3 background management scaffolding https://gitee.com/cng1985/nbsaas-admin -vue3

Guess you like

Origin www.oschina.net/news/272190