diff --git a/cemis/pom.xml b/cemis/pom.xml new file mode 100644 index 0000000..e379d71 --- /dev/null +++ b/cemis/pom.xml @@ -0,0 +1,12 @@ + + 4.0.0 + + com.hncy.generator + code-generator + 0.0.1-SNAPSHOT + + cemis + cemis-code-generator + http://maven.apache.org + diff --git a/src/main/java/com/optima/cemis/base/bean/CommonResult.java b/cemis/src/main/java/com/hncy/generator/zgf/base/bean/CommonResult.java similarity index 99% rename from src/main/java/com/optima/cemis/base/bean/CommonResult.java rename to cemis/src/main/java/com/hncy/generator/zgf/base/bean/CommonResult.java index 4e8337a..edabc3a 100644 --- a/src/main/java/com/optima/cemis/base/bean/CommonResult.java +++ b/cemis/src/main/java/com/hncy/generator/zgf/base/bean/CommonResult.java @@ -1,4 +1,4 @@ -package com.optima.cemis.base.bean; +package com.hncy.generator.zgf.base.bean; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonValue; diff --git a/src/main/java/com/optima/cemis/base/bean/Page.java b/cemis/src/main/java/com/hncy/generator/zgf/base/bean/Page.java similarity index 97% rename from src/main/java/com/optima/cemis/base/bean/Page.java rename to cemis/src/main/java/com/hncy/generator/zgf/base/bean/Page.java index f5a4c22..efbc6d8 100644 --- a/src/main/java/com/optima/cemis/base/bean/Page.java +++ b/cemis/src/main/java/com/hncy/generator/zgf/base/bean/Page.java @@ -1,9 +1,9 @@ -package com.optima.cemis.base.bean; +package com.hncy.generator.zgf.base.bean; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.core.metadata.OrderItem; import com.baomidou.mybatisplus.core.toolkit.StringUtils; -import com.optima.cemis.base.entity.BaseEntity; +import com.hncy.generator.zgf.base.entity.BaseEntity; import java.lang.reflect.Field; import java.util.ArrayList; diff --git a/src/main/java/com/optima/cemis/base/entity/BaseEntity.java b/cemis/src/main/java/com/hncy/generator/zgf/base/entity/BaseEntity.java similarity index 93% rename from src/main/java/com/optima/cemis/base/entity/BaseEntity.java rename to cemis/src/main/java/com/hncy/generator/zgf/base/entity/BaseEntity.java index 7f7185a..f35c1a5 100644 --- a/src/main/java/com/optima/cemis/base/entity/BaseEntity.java +++ b/cemis/src/main/java/com/hncy/generator/zgf/base/entity/BaseEntity.java @@ -1,4 +1,4 @@ -package com.optima.cemis.base.entity; +package com.hncy.generator.zgf.base.entity; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.extension.activerecord.Model; diff --git a/src/test/java/GeberatorUIServer.java b/cemis/src/test/java/GeberatorUIServer.java similarity index 100% rename from src/test/java/GeberatorUIServer.java rename to cemis/src/test/java/GeberatorUIServer.java diff --git a/src/test/resources/application.yml b/cemis/src/test/resources/application.yml similarity index 100% rename from src/test/resources/application.yml rename to cemis/src/test/resources/application.yml diff --git a/src/test/resources/codetpls/controller.java.btl b/cemis/src/test/resources/codetpls/controller.java.btl similarity index 97% rename from src/test/resources/codetpls/controller.java.btl rename to cemis/src/test/resources/codetpls/controller.java.btl index a7f5e94..42e1578 100644 --- a/src/test/resources/codetpls/controller.java.btl +++ b/cemis/src/test/resources/codetpls/controller.java.btl @@ -2,7 +2,7 @@ <% var serviceInstanceName = @cn.hutool.core.util.StrUtil.lowerFirst(table.serviceName); %> package ${package.Controller}; -import com.optima.cemis.base.bean.CommonResult; +import bean.com.hncy.generator.zgf.base.CommonResult; import org.springframework.web.bind.annotation.*; <% if(!restControllerStyle){ %> import org.springframework.stereotype.Controller; @@ -11,7 +11,7 @@ import org.springframework.stereotype.Controller; import ${superControllerClassPackage}; <% } %> <% if(isNotEmpty(controllerMethods.list)){ %> -import com.optima.cemis.base.bean.Page; +import bean.com.hncy.generator.zgf.base.Page; <% } %> <% if(isNotEmpty(controllerMethods.hasMethod)){ %> import ${package.Service}.${table.serviceName}; diff --git a/src/test/resources/codetpls/dto.btl b/cemis/src/test/resources/codetpls/dto.btl similarity index 100% rename from src/test/resources/codetpls/dto.btl rename to cemis/src/test/resources/codetpls/dto.btl diff --git a/src/test/resources/codetpls/entity.java.btl b/cemis/src/test/resources/codetpls/entity.java.btl similarity index 100% rename from src/test/resources/codetpls/entity.java.btl rename to cemis/src/test/resources/codetpls/entity.java.btl diff --git a/src/test/resources/codetpls/mapper.java.btl b/cemis/src/test/resources/codetpls/mapper.java.btl similarity index 100% rename from src/test/resources/codetpls/mapper.java.btl rename to cemis/src/test/resources/codetpls/mapper.java.btl diff --git a/src/test/resources/codetpls/mapper.xml.btl b/cemis/src/test/resources/codetpls/mapper.xml.btl similarity index 100% rename from src/test/resources/codetpls/mapper.xml.btl rename to cemis/src/test/resources/codetpls/mapper.xml.btl diff --git a/src/test/resources/codetpls/mapperMethods.btl b/cemis/src/test/resources/codetpls/mapperMethods.btl similarity index 100% rename from src/test/resources/codetpls/mapperMethods.btl rename to cemis/src/test/resources/codetpls/mapperMethods.btl diff --git a/src/test/resources/codetpls/resultMap.btl b/cemis/src/test/resources/codetpls/resultMap.btl similarity index 100% rename from src/test/resources/codetpls/resultMap.btl rename to cemis/src/test/resources/codetpls/resultMap.btl diff --git a/src/test/resources/codetpls/service.java.btl b/cemis/src/test/resources/codetpls/service.java.btl similarity index 100% rename from src/test/resources/codetpls/service.java.btl rename to cemis/src/test/resources/codetpls/service.java.btl diff --git a/src/test/resources/codetpls/serviceImpl.java.btl b/cemis/src/test/resources/codetpls/serviceImpl.java.btl similarity index 100% rename from src/test/resources/codetpls/serviceImpl.java.btl rename to cemis/src/test/resources/codetpls/serviceImpl.java.btl diff --git a/hncy4cloud-zgf/pom.xml b/hncy4cloud-zgf/pom.xml new file mode 100644 index 0000000..d08f674 --- /dev/null +++ b/hncy4cloud-zgf/pom.xml @@ -0,0 +1,12 @@ + + 4.0.0 + + com.hncy.generator + code-generator + 0.0.1-SNAPSHOT + + hncy4cloud-zgf + hncy4cloud-zgf-code-generator + http://maven.apache.org + diff --git a/hncy4cloud-zgf/src/main/java/com/hncy4cloud/hncy/common/core/constant/CommonConstants.java b/hncy4cloud-zgf/src/main/java/com/hncy4cloud/hncy/common/core/constant/CommonConstants.java new file mode 100644 index 0000000..f7550da --- /dev/null +++ b/hncy4cloud-zgf/src/main/java/com/hncy4cloud/hncy/common/core/constant/CommonConstants.java @@ -0,0 +1,18 @@ +package com.hncy4cloud.hncy.common.core.constant; + +public interface CommonConstants { + String STATUS_DEL = "1"; + String STATUS_NORMAL = "0"; + String STATUS_LOCK = "9"; + Long MENU_TREE_ROOT_ID = -1L; + String MENU = "0"; + String UTF8 = "UTF-8"; + String CONTENT_TYPE = "application/json; charset=utf-8"; + String FRONT_END_PROJECT = "hncy-ui"; + String BACK_END_PROJECT = "hncy"; + Integer SUCCESS = 200; + Integer FAIL = 500; + String CURRENT = "current"; + String SIZE = "size"; + String REQUEST_START_TIME = "REQUEST-START-TIME"; +} diff --git a/hncy4cloud-zgf/src/main/java/com/hncy4cloud/hncy/common/core/util/R.java b/hncy4cloud-zgf/src/main/java/com/hncy4cloud/hncy/common/core/util/R.java new file mode 100644 index 0000000..07c7bd0 --- /dev/null +++ b/hncy4cloud-zgf/src/main/java/com/hncy4cloud/hncy/common/core/util/R.java @@ -0,0 +1,100 @@ +package com.hncy4cloud.hncy.common.core.util; + +import com.hncy4cloud.hncy.common.core.constant.CommonConstants; + +import java.io.Serializable; + +public class R implements Serializable { + private static final long serialVersionUID = 1L; + private int code; + private String msg; + private T data; + + public static R ok() { + return restResult((T) null, CommonConstants.SUCCESS, (String) null); + } + + public static R ok(T data) { + return restResult(data, CommonConstants.SUCCESS, (String) null); + } + + public static R okMsg(String message) { + return restResult((T) null, CommonConstants.SUCCESS, message); + } + + public static R ok(T data, String msg) { + return restResult(data, CommonConstants.SUCCESS, msg); + } + + public static R failed() { + return restResult((T) null, CommonConstants.FAIL, (String) null); + } + + public static R failed(String msg) { + return restResult((T) null, CommonConstants.FAIL, msg); + } + + public static R failed(T data) { + return restResult(data, CommonConstants.FAIL, (String) null); + } + + public static R failed(T data, String msg) { + return restResult(data, CommonConstants.FAIL, msg); + } + + public static R result(T data, int code, String msg) { + return restResult(data, code, msg); + } + + public static R restResult(T data, int code, String msg) { + R apiResult = new R(); + apiResult.setCode(code); + apiResult.setData(data); + apiResult.setMsg(msg); + return apiResult; + } + + public Boolean isSuccess() { + return this.code == CommonConstants.SUCCESS; + } + + public String toString() { + return "R(code=" + this.getCode() + ", msg=" + this.getMsg() + ", data=" + this.getData() + ")"; + } + + public R() { + } + + public R(int code, String msg, T data) { + this.code = code; + this.msg = msg; + this.data = data; + } + + public int getCode() { + return this.code; + } + + public R setCode(int code) { + this.code = code; + return this; + } + + public String getMsg() { + return this.msg; + } + + public R setMsg(String msg) { + this.msg = msg; + return this; + } + + public T getData() { + return this.data; + } + + public R setData(T data) { + this.data = data; + return this; + } +} diff --git a/hncy4cloud-zgf/src/test/java/GeberatorUIServer.java b/hncy4cloud-zgf/src/test/java/GeberatorUIServer.java new file mode 100644 index 0000000..f15e4a3 --- /dev/null +++ b/hncy4cloud-zgf/src/test/java/GeberatorUIServer.java @@ -0,0 +1,55 @@ +import com.baomidou.mybatisplus.generator.config.rules.DateType; +import com.github.davidfantasy.mybatisplus.generatorui.GeneratorConfig; +import com.github.davidfantasy.mybatisplus.generatorui.MybatisPlusToolsApplication; +import com.github.davidfantasy.mybatisplus.generatorui.mbp.NameConverter; + +import java.util.HashMap; +import java.util.Map; + +public class GeberatorUIServer { + /** + * 数据库相关配置 + */ + private static final String dbName = "cgtf"; + private static final String url = "jdbc:mysql://38.147.185.130:3306/" + dbName + "?useUnicode=true&useSSL=false&characterEncoding=utf8"; + private static final String username = "root"; + private static final String password = "hncy@123"; + private static final String driverClassName = "com.mysql.cj.jdbc.Driver"; + + //项目父包名,service、controller等包会建在这个包下 + private static final String parent = "com.hncy.zgf.rota"; + //表名前缀,生成表时会删除 + private static final String tablePrefix = "rota_"; + + public static void main(String[] args) { + GeneratorConfig config = GeneratorConfig.builder() + .jdbcUrl(url) + .userName(username) + .password(password) + .driverClassName(driverClassName) + .dateType(DateType.TIME_PACK) + //数据库schema,MSSQL,PGSQL,ORACLE,DB2类型的数据库需要指定 + //.schemaName("myBusiness") + //数据库表前缀,生成entity名称时会去掉(v2.0.3新增) + .tablePrefix(tablePrefix) + .nameConverter(new NameConverter() { + /** + * 自定义Service类文件的名称规则 + */ + @Override + public String serviceNameConvert(String entityName) { + return entityName + "Service"; + } + }) + .templateVaribleInjecter(tableInfo -> { + Map map = new HashMap<>(); + map.put("mapperAnnotationClass", org.apache.ibatis.annotations.Mapper.class); + return map; + }) + //所有生成的java文件的父包名,后续也可单独在界面上设置 + .basePackage(parent) + .port(8068) + .build(); + MybatisPlusToolsApplication.run(config); + } +} diff --git a/hncy4cloud-zgf/src/test/resources/application.yml b/hncy4cloud-zgf/src/test/resources/application.yml new file mode 100644 index 0000000..148f815 --- /dev/null +++ b/hncy4cloud-zgf/src/test/resources/application.yml @@ -0,0 +1,3 @@ +spring: + mvc: + static-path-pattern: /** diff --git a/hncy4cloud-zgf/src/test/resources/codetpls/controller.java.btl b/hncy4cloud-zgf/src/test/resources/codetpls/controller.java.btl new file mode 100644 index 0000000..cf8c56b --- /dev/null +++ b/hncy4cloud-zgf/src/test/resources/codetpls/controller.java.btl @@ -0,0 +1,111 @@ +<% var entityInstanceName = @cn.hutool.core.util.StrUtil.lowerFirst(table.entityName); %> +<% var serviceInstanceName = @cn.hutool.core.util.StrUtil.lowerFirst(table.serviceName); %> +package ${package.Controller}; + +import com.hncy4cloud.hncy.common.core.util.R; +import org.springframework.web.bind.annotation.*; +<% if(!restControllerStyle){ %> +import org.springframework.stereotype.Controller; +<% } %> +<% if(isNotEmpty(superControllerClassPackage)){ %> +import ${superControllerClassPackage}; +<% } %> +<% if(isNotEmpty(controllerMethods.list)){ %> + +<% } %> +<% if(isNotEmpty(controllerMethods.hasMethod)){ %> +import ${package.Service}.${table.serviceName}; +import ${package.Entity}.${table.entityName}; + +import javax.annotation.Resource; +<% } %> +import java.util.List; +import java.io.Serializable; + +/** + *

+ * ${table.comment!} 前端控制器 + *

+ * + * @author ${author} + * @since ${date} + */ +<% if(restControllerStyle){ %> +@RestController +<% }else{ %> +@Controller +<% } %> +@RequestMapping("<% if(isNotEmpty(package.ModuleName)){ %>/${package.ModuleName}<% } %>/<% if(isNotEmpty(controllerMappingHyphenStyle)){ %>${controllerMappingHyphen}<% }else{ %>${table.entityPath}<% } %>") +<% if(kotlin){ %> +class ${table.controllerName}<% if(isNotEmpty(superControllerClass)){ %> : ${superControllerClass}()<% } %> +<% }else{ %> + <% if(isNotEmpty(superControllerClass)){ %> +public class ${table.controllerName} extends ${superControllerClass} { + <% }else{ %> +public class ${table.controllerName} { + <% } %> + + <% if(isNotEmpty(controllerMethods.hasMethod)){ %> + @Resource + private ${table.serviceName} ${serviceInstanceName}; + <% } %> + + <% if(isNotEmpty(controllerMethods.list)){ %> + @GetMapping(value = "/list") + <% if(!restControllerStyle){ %> + @ResponseBody + <% } %> + public R> list(${table.entityName} ${entityInstanceName}) { + R> result = R.ok(); + return result.setData(${serviceInstanceName}.list(${entityInstanceName})).setMsg("查询成功"); + } + <% } %> + + <% if(isNotEmpty(controllerMethods.getById)){ %> + @GetMapping(value = "/{id}") + <% if(!restControllerStyle){ %> + @ResponseBody + <% } %> + public R<${table.entityName}> detail(@PathVariable("id") Serializable id) { + R<${table.entityName}> result = R.ok(); + return result.setData(${serviceInstanceName}.getById(id)).setMsg("查询成功"); + } + <% } %> + + <% if(isNotEmpty(controllerMethods.create)){ %> + <% if(!restControllerStyle){ %> + @ResponseBody + <% } %> + @PostMapping(value = "/insert") + public R<${table.entityName}> insert(${table.entityName} ${entityInstanceName}) { + R<${table.entityName}> result = R.ok(); + ${serviceInstanceName}.save(${entityInstanceName}); + return result.setData(${entityInstanceName}).setMsg("保存成功"); + } + <% } %> + + <% if(isNotEmpty(controllerMethods.delete)){ %> + @GetMapping(value = "/delete/{id}") + <% if(!restControllerStyle){ %> + @ResponseBody + <% } %> + public R delete(@PathVariable("id") Serializable id) { + R result = R.ok(); + ${serviceInstanceName}.removeById(id); + return result.setData(id).setMsg("删除成功"); + } + <% } %> + + <% if(isNotEmpty(controllerMethods.update)){ %> + @PostMapping(value = "/update") + <% if(!restControllerStyle){ %> + @ResponseBody + <% } %> + public R<${table.entityName}> update(${table.entityName} ${entityInstanceName}) { + R<${table.entityName}> result = R.ok(); + ${serviceInstanceName}.updateById(${entityInstanceName}); + return result.setData(${serviceInstanceName}.getById(${entityInstanceName}.getId())).setMsg("更新成功"); + } + <% } %> +} +<% } %> diff --git a/hncy4cloud-zgf/src/test/resources/codetpls/dto.btl b/hncy4cloud-zgf/src/test/resources/codetpls/dto.btl new file mode 100644 index 0000000..476e85a --- /dev/null +++ b/hncy4cloud-zgf/src/test/resources/codetpls/dto.btl @@ -0,0 +1,53 @@ +package ${config.pkg}; +<% for(pkg in config.importPackages){ %> +import ${pkg}; +<% } %> +<% if(config.enableLombok){ %> +import lombok.Data; +<% } %> +/** + * ${config.comment!} + * + * @author ${config.author} + * @since ${config.createDate} + */ +<% if(config.enableLombok){ %> +@Data +<% } %> +public class ${config.dtoName} { + +<% /** -----------BEGIN 字段循环遍历----------- **/ %> +<% for(field in config.fields){ %> + <%/*字段定义*/%> + private ${field.shortJavaType} ${field.propertyName}; + +<% } %> +<% /** -----------END 字段循环遍历----------- **/ %> +<% if(!config.enableLombok){ %> + <% for(field in config.fields){ %> + public ${field.shortJavaType} ${field.getMethodName}() { + return ${field.propertyName}; + } + + public void ${field.setMethodName}(${field.shortJavaType} ${field.propertyName}) { + this.${field.propertyName} = ${field.propertyName}; + } + + <% } %> +<% } %> +<% if(!config.enableLombok){ %> + + @Override + public String toString() { + return "${config.dtoName}{" + + <% for(field in config.fields){ %> + <% if(fieldLP.index==0){ %> + "${field.propertyName}=" + ${field.propertyName} + + <% }else{ %> + ", ${field.propertyName}=" + ${field.propertyName} + + <% } %> + <% } %> + "}"; + } +<% } %> +} diff --git a/hncy4cloud-zgf/src/test/resources/codetpls/entity.java.btl b/hncy4cloud-zgf/src/test/resources/codetpls/entity.java.btl new file mode 100644 index 0000000..767df42 --- /dev/null +++ b/hncy4cloud-zgf/src/test/resources/codetpls/entity.java.btl @@ -0,0 +1,173 @@ +package ${package.Entity}; + +<% for(pkg in table.importPackages){ %> +import ${pkg}; +<% } %> +<% if(springdoc){ %> +import io.swagger.v3.oas.annotations.media.Schema; +<% }else if(swagger){ %> +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +<% } %> +<% if(entityLombokModel){ %> +import lombok.Getter; +import lombok.Setter; +<% if(chainModel){ %> +import lombok.experimental.Accessors; +<% } %> +<% } %> + +/** + *

+ * ${table.comment!} + *

+ * + * @author ${author} + * @since ${date} + */ +<% if(entityLombokModel){ %> +@Getter +@Setter + <% if(chainModel){ %> +@Accessors(chain = true) + <% } %> +<% } %> +<% if(table.convert){ %> +@TableName("${schemaName}${table.name}") +<% } %> +<% if(springdoc){ %> +@Schema(name = "${entity}", description = "$!{table.comment}") +<% }else if(swagger){ %> +@ApiModel(value = "${entity}对象", description = "${table.comment!''}") +<% } %> +<% if(isNotEmpty(superEntityClass)){ %> +public class ${entity} extends ${superEntityClass}<% if(activeRecord){ %><${entity}><%}%> { +<% }else if(activeRecord){ %> +public class ${entity} extends Model<${entity}> { +<% }else if(entitySerialVersionUID){ %> +public class ${entity} implements Serializable { +<% }else{ %> +public class ${entity} { +<% } %> +<% if(entitySerialVersionUID){ %> + + private static final long serialVersionUID = 1L; +<% } %> +<% var keyPropertyName; %> +<% /** -----------BEGIN 字段循环遍历----------- **/ %> +<% for(field in table.fields){ %> + <% + if(field.keyFlag){ + keyPropertyName = field.propertyName; + } + %> + <% if(isNotEmpty(field.comment)){ %> + + <% if(springdoc){ %> + @Schema(description = "${field.comment}") + <% }else if(swagger){ %> + @ApiModelProperty(value = "${field.comment}") + <% }else{ %> + /** + * ${field.comment} + */ + <% } %> + <% } %> + <% if(field.keyFlag){ %> + <% + /*主键*/ + %> + <% if(field.keyIdentityFlag){ %> + @TableId(value = "${field.annotationColumnName}", type = IdType.AUTO) + <% }else if(isNotEmpty(idType)){ %> + @TableId(value = "${field.annotationColumnName}", type = IdType.${idType}) + <% }else if(field.convert){ %> + @TableId("${field.annotationColumnName}") + <% } %> + <% + /*普通字段*/ + %> + <% }else if(isNotEmpty(field.fill)){ %> + <% if(field.convert){ %> + @TableField(value = "${field.annotationColumnName}", fill = FieldFill.${field.fill}) + <% }else{ %> + @TableField(fill = FieldFill.${field.fill}) + <% } %> + <% }else if(field.convert){ %> + @TableField("${field.annotationColumnName}") + <% } %> + <% + /*乐观锁注解*/ + %> + <% if(field.versionField){ %> + @Version + <% } %> + <% + /*逻辑删除注解*/ + %> + <% if(field.logicDeleteField){ %> + @TableLogic + <% } %> + private ${field.propertyType} ${field.propertyName}; +<% } %> +<% /** -----------END 字段循环遍历----------- **/ %> +<% if(!entityLombokModel){ %> + <% for(field in table.fields){ %> + <% + var getprefix =''; + if(field.propertyType=='boolean'){ + getprefix='is'; + }else{ + getprefix='get'; + } + %> + + public ${field.propertyType} ${getprefix}${field.capitalName}() { + return ${field.propertyName}; + } + + <% if(chainModel){ %> + public ${entity} set${field.capitalName}(${field.propertyType} ${field.propertyName}) { + <% }else{ %> + public void set${field.capitalName}(${field.propertyType} ${field.propertyName}) { + <% } %> + this.${field.propertyName} = ${field.propertyName}; + <% if(chainModel){ %> + return this; + <% } %> + } + <% } %> +<% } %> +<% if(entityColumnConstant){ %> + <% for(field in table.fields){ %> + + public static final String ${strutil.toUpperCase(field.name)} = "${field.name}"; + <% } %> +<% } %> +<% if(activeRecord){ %> + + @Override + public Serializable pkVal() { + <% if(isNotEmpty(keyPropertyName)){ %> + return this.${keyPropertyName}; + <% }else{ %> + return super.pkVal(); + <% } %> + } +<% } %> +<% if(!entityLombokModel){ %> + + @Override + public String toString() { + return "${entity}{" + + <% for(field in table.fields){ %> + <% if(fieldLP.index==0){ %> + "${field.propertyName} = " + ${field.propertyName} + + <% }else{ %> + ", ${field.propertyName} = " + ${field.propertyName} + + <% } %> + <% } %> + "}"; + } +<% } %> +} diff --git a/hncy4cloud-zgf/src/test/resources/codetpls/mapper.java.btl b/hncy4cloud-zgf/src/test/resources/codetpls/mapper.java.btl new file mode 100644 index 0000000..222ab15 --- /dev/null +++ b/hncy4cloud-zgf/src/test/resources/codetpls/mapper.java.btl @@ -0,0 +1,26 @@ +package ${package.Mapper}; + +import ${package.Entity}.${entity}; +import ${superMapperClassPackage}; +<% if(mapperAnnotationClass!=null){ %> +import ${mapperAnnotationClass.name}; +<% } %> + +/** + *

+ * ${table.comment!} Mapper 接口 + *

+ * + * @author ${author} + * @since ${date} + */ +<% if(mapperAnnotationClass!=null){ %> +@${mapperAnnotationClass.simpleName} +<% } %> +<% if(kotlin){ %> +interface ${table.mapperName} : ${superMapperClass}<${entity}> +<% }else{ %> +public interface ${table.mapperName} extends ${superMapperClass}<${entity}> { + +} +<% } %> diff --git a/hncy4cloud-zgf/src/test/resources/codetpls/mapper.xml.btl b/hncy4cloud-zgf/src/test/resources/codetpls/mapper.xml.btl new file mode 100644 index 0000000..0c42a38 --- /dev/null +++ b/hncy4cloud-zgf/src/test/resources/codetpls/mapper.xml.btl @@ -0,0 +1,41 @@ + + + + +<% if(enableCache){ %> + + + +<% } %> +<% if(baseResultMap){ %> + + +<% for(field in table.fields){ %> + <% /** 生成主键排在第一位 **/ %> + <% if(field.keyFlag){ %> + + <% } %> +<% } %> +<% for(field in table.commonFields){ %> + <% /** 生成公共字段 **/ %> + +<% } %> +<% for(field in table.fields){ %> + <% /** 生成普通字段 **/ %> + <% if(!field.keyFlag){ %> + + <% } %> +<% } %> + +<% } %> +<% if(baseColumnList){ %> + + +<% for(field in table.commonFields){ %> + ${field.columnName}, +<% } %> + ${table.fieldNames} + + +<% } %> + diff --git a/hncy4cloud-zgf/src/test/resources/codetpls/mapperMethods.btl b/hncy4cloud-zgf/src/test/resources/codetpls/mapperMethods.btl new file mode 100644 index 0000000..38ac229 --- /dev/null +++ b/hncy4cloud-zgf/src/test/resources/codetpls/mapperMethods.btl @@ -0,0 +1,10 @@ +<% if(elementType == 'select'){ %> + <% if(config.resultMap != null){ %> + + <% }%> + ${sql} + +<% } %> \ No newline at end of file diff --git a/hncy4cloud-zgf/src/test/resources/codetpls/resultMap.btl b/hncy4cloud-zgf/src/test/resources/codetpls/resultMap.btl new file mode 100644 index 0000000..9bf3536 --- /dev/null +++ b/hncy4cloud-zgf/src/test/resources/codetpls/resultMap.btl @@ -0,0 +1,3 @@ + +<% for(field in config.fields){ %><% } %> + \ No newline at end of file diff --git a/hncy4cloud-zgf/src/test/resources/codetpls/service.java.btl b/hncy4cloud-zgf/src/test/resources/codetpls/service.java.btl new file mode 100644 index 0000000..bf8cf42 --- /dev/null +++ b/hncy4cloud-zgf/src/test/resources/codetpls/service.java.btl @@ -0,0 +1,22 @@ +package ${package.Service}; + +import ${package.Entity}.${entity}; +import ${superServiceClassPackage}; + +import java.util.List; + +/** + *

+ * ${table.comment!} 服务类 + *

+ * + * @author ${author} + * @since ${date} + */ +<% if(kotlin){ %> +interface ${table.serviceName} : ${superServiceClass}<${entity}> +<% }else{ %> +public interface ${table.serviceName} extends ${superServiceClass}<${entity}> { + List<${table.entityName}> list(${table.entityName} ${table.entityPath}); +} +<% } %> diff --git a/hncy4cloud-zgf/src/test/resources/codetpls/serviceImpl.java.btl b/hncy4cloud-zgf/src/test/resources/codetpls/serviceImpl.java.btl new file mode 100644 index 0000000..e989451 --- /dev/null +++ b/hncy4cloud-zgf/src/test/resources/codetpls/serviceImpl.java.btl @@ -0,0 +1,35 @@ +package ${package.ServiceImpl}; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import ${package.Entity}.${entity}; +import ${package.Mapper}.${table.mapperName}; +<% if(table.serviceInterface){ %> +import ${package.Service}.${table.serviceName}; +<% } %> +import ${superServiceImplClassPackage}; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + *

+ * ${table.comment!} 服务实现类 + *

+ * + * @author ${author} + * @since ${date} + */ +@Service +<% if(kotlin){ %> +open class ${table.serviceImplName} : ${superServiceImplClass}<${table.mapperName}, ${entity}>()<% if(table.serviceInterface){ %>, ${table.serviceName}<% } %> { + +} +<% }else{ %> +public class ${table.serviceImplName} extends ${superServiceImplClass}<${table.mapperName}, ${entity}><% if(table.serviceInterface){ %> implements ${table.serviceName}<% } %> { + @Override + public List<${table.entityName}> list(${table.entityName} ${table.entityPath}) { + LambdaQueryWrapper<${table.entityName}> wrapper = new LambdaQueryWrapper<>(); + return this.list(wrapper); + } +} +<% } %> diff --git a/pom.xml b/pom.xml index 72d3d96..cfedc9b 100644 --- a/pom.xml +++ b/pom.xml @@ -2,11 +2,16 @@ 4.0.0 - com.optima.cemis - cemis-code-generator + com.hncy.generator + code-generator 0.0.1-SNAPSHOT + pom cemis-code-generator cemis-code-generator + + cemis + hncy4cloud-zgf + 1.8 2.7.18 @@ -92,4 +97,31 @@ + + + + hncy-release + Release Repository + http://hncy.info/nexus/repository/maven-public/ + + + spring-milestones + Spring Milestones + https://repo.spring.io/milestone + + false + + + + osgeo + OSGeo Release Repository + https://repo.osgeo.org/repository/release/ + + false + + + true + + +