diff --git a/muyu-common/muyu-common-core/src/main/java/com/muyu/common/core/utils/ObjUtils.java b/muyu-common/muyu-common-core/src/main/java/com/muyu/common/core/utils/ObjUtils.java new file mode 100644 index 0000000..35f459c --- /dev/null +++ b/muyu-common/muyu-common-core/src/main/java/com/muyu/common/core/utils/ObjUtils.java @@ -0,0 +1,65 @@ +package com.muyu.common.core.utils; + +import org.apache.commons.lang3.ObjectUtils; + +import java.math.BigDecimal; + +/** + * @author DongZl + * @description: 对象工具类 + * @Date 2023-10-9 下午 04:56 + */ +public class ObjUtils { + + /** + * 兼容 + * CharSequence: 如果长度为零,则认为为空。 + * Array: 如果长度为零,则认为为空。 + * Collection: 如果元素为零,则认为为空。 + * Map: 如果键值映射为零,则认为为空。 + * @param o 对象 + * @return 如果对象具有受支持的类型并且为空或null,则为true,否则为false + */ + public static boolean notNull(Object o){ + return ObjectUtils.isNotEmpty(o); + } + + /** + * 判断long类型不为0 + * @param val 值 + * @return 返回值不为0 + */ + public static boolean notNull(Long val){ + return ObjectUtils.isNotEmpty(val) && val != 0; + } + + /** + * 判断Integer类型不为0 + * @param val 值 + * @return 返回值不为0 + */ + public static boolean notNull(Integer val){ + return ObjectUtils.isNotEmpty(val) && val != 0; + } + /** + * 判断BigDecimal类型不为0 + * @param val 值 + * @return 返回值不为0 + */ + public static boolean notNull(BigDecimal val){ + return ObjectUtils.isNotEmpty(val) && val.doubleValue() == 0.00; + } + /** + * 判断BigDecimal类型不为0 + * @param val 值 + * @return 返回值不为0 + */ + public static boolean notChildNull(Object[] val){ + for (Object o : val) { + if (!notNull(o)){ + return false; + } + } + return true; + } +} diff --git a/muyu-common/muyu-common-security/src/main/java/com/muyu/common/security/config/mybatisplus/MyMetaObjectHandler.java b/muyu-common/muyu-common-security/src/main/java/com/muyu/common/security/config/mybatisplus/MyMetaObjectHandler.java new file mode 100644 index 0000000..ea37dc2 --- /dev/null +++ b/muyu-common/muyu-common-security/src/main/java/com/muyu/common/security/config/mybatisplus/MyMetaObjectHandler.java @@ -0,0 +1,33 @@ +package com.muyu.common.security.config.mybatisplus; + +import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; +import com.muyu.common.security.utils.SecurityUtils; +import lombok.extern.log4j.Log4j2; +import org.apache.ibatis.reflection.MetaObject; +import org.springframework.stereotype.Component; + +import java.util.Date; + +/** + * 实体类字段填充 + */ +@Log4j2 +@Component +public class MyMetaObjectHandler implements MetaObjectHandler { + + public MyMetaObjectHandler () { + log.info("mybatis-plus 系统字段填充拦截器 初始化成功"); + } + + @Override + public void insertFill(MetaObject metaObject) { + this.setFieldValByName("createBy", SecurityUtils.getUsername(), metaObject); + this.setFieldValByName("createTime", new Date(), metaObject); + } + + @Override + public void updateFill(MetaObject metaObject) { + this.setFieldValByName("updateBy", SecurityUtils.getUsername(), metaObject); + this.setFieldValByName("updateTime", new Date(),metaObject); + } +} diff --git a/muyu-modules/muyu-gen/src/main/java/com/muyu/gen/util/VelocityUtils.java b/muyu-modules/muyu-gen/src/main/java/com/muyu/gen/util/VelocityUtils.java index 9305ff7..36a0189 100644 --- a/muyu-modules/muyu-gen/src/main/java/com/muyu/gen/util/VelocityUtils.java +++ b/muyu-modules/muyu-gen/src/main/java/com/muyu/gen/util/VelocityUtils.java @@ -15,9 +15,9 @@ import java.util.List; import java.util.Set; /** - * 模板工具类 + * 模板处理工具类 * - * @author muyu + * @author ruoyi */ public class VelocityUtils { /** @@ -70,9 +70,6 @@ public class VelocityUtils { if (GenConstants.TPL_TREE.equals(tplCategory)) { setTreeVelocityContext(velocityContext, genTable); } - if (GenConstants.TPL_SUB.equals(tplCategory)) { - setSubVelocityContext(velocityContext, genTable); - } return velocityContext; } @@ -102,22 +99,6 @@ public class VelocityUtils { } } - public static void setSubVelocityContext (VelocityContext context, GenTable genTable) { - GenTable subTable = genTable.getSubTable(); - String subTableName = genTable.getSubTableName(); - String subTableFkName = genTable.getSubTableFkName(); - String subClassName = genTable.getSubTable().getClassName(); - String subTableFkClassName = StringUtils.convertToCamelCase(subTableFkName); - - context.put("subTable", subTable); - context.put("subTableName", subTableName); - context.put("subTableFkName", subTableFkName); - context.put("subTableFkClassName", subTableFkClassName); - context.put("subTableFkclassName", StringUtils.uncapitalize(subTableFkClassName)); - context.put("subClassName", subClassName); - context.put("subclassName", StringUtils.uncapitalize(subClassName)); - context.put("subImportList", getImportList(genTable.getSubTable())); - } /** * 获取模板信息 @@ -127,10 +108,13 @@ public class VelocityUtils { public static List getTemplateList (String tplCategory) { List templates = new ArrayList(); templates.add("vm/java/domain.java.vm"); - templates.add("vm/java/mapper.java.vm"); + templates.add("vm/java/query.java.vm"); + templates.add("vm/java/save.java.vm"); + templates.add("vm/java/edit.java.vm"); + templates.add("vm/java/controller.java.vm"); templates.add("vm/java/service.java.vm"); templates.add("vm/java/serviceImpl.java.vm"); - templates.add("vm/java/controller.java.vm"); + templates.add("vm/java/mapper.java.vm"); templates.add("vm/xml/mapper.xml.vm"); templates.add("vm/sql/sql.vm"); templates.add("vm/js/api.js.vm"); @@ -138,9 +122,6 @@ public class VelocityUtils { templates.add("vm/vue/index.vue.vm"); } else if (GenConstants.TPL_TREE.equals(tplCategory)) { templates.add("vm/vue/index-tree.vue.vm"); - } else if (GenConstants.TPL_SUB.equals(tplCategory)) { - templates.add("vm/vue/index.vue.vm"); - templates.add("vm/java/sub-domain.java.vm"); } return templates; } @@ -167,12 +148,19 @@ public class VelocityUtils { if (template.contains("domain.java.vm")) { fileName = StringUtils.format("{}/domain/{}.java", javaPath, className); } - if (template.contains("sub-domain.java.vm") && StringUtils.equals(GenConstants.TPL_SUB, genTable.getTplCategory())) { - fileName = StringUtils.format("{}/domain/{}.java", javaPath, genTable.getSubTable().getClassName()); - } else if (template.contains("mapper.java.vm")) { + if (template.contains("query.java.vm")) { + fileName = StringUtils.format("{}/domain/req/{}QueryReq.java", javaPath, className); + } + if (template.contains("save.java.vm")) { + fileName = StringUtils.format("{}/domain/req/{}SaveReq.java", javaPath, className); + } + if (template.contains("edit.java.vm")) { + fileName = StringUtils.format("{}/domain/req/{}EditReq.java", javaPath, className); + } + if (template.contains("mapper.java.vm")) { fileName = StringUtils.format("{}/mapper/{}Mapper.java", javaPath, className); } else if (template.contains("service.java.vm")) { - fileName = StringUtils.format("{}/service/I{}Service.java", javaPath, className); + fileName = StringUtils.format("{}/service/{}Service.java", javaPath, className); } else if (template.contains("serviceImpl.java.vm")) { fileName = StringUtils.format("{}/service/impl/{}ServiceImpl.java", javaPath, className); } else if (template.contains("controller.java.vm")) { @@ -212,11 +200,7 @@ public class VelocityUtils { */ public static HashSet getImportList (GenTable genTable) { List columns = genTable.getColumns(); - GenTable subGenTable = genTable.getSubTable(); HashSet importList = new HashSet(); - if (StringUtils.isNotNull(subGenTable)) { - importList.add("java.util.List"); - } for (GenTableColumn column : columns) { if (!column.isSuperColumn() && GenConstants.TYPE_DATE.equals(column.getJavaType())) { importList.add("java.util.Date"); @@ -239,10 +223,6 @@ public class VelocityUtils { List columns = genTable.getColumns(); Set dicts = new HashSet(); addDicts(dicts, columns); - if (StringUtils.isNotNull(genTable.getSubTable())) { - List subColumns = genTable.getSubTable().getColumns(); - addDicts(dicts, subColumns); - } return StringUtils.join(dicts, ", "); } diff --git a/muyu-modules/muyu-gen/src/main/resources/vm/java/controller.java.vm b/muyu-modules/muyu-gen/src/main/resources/vm/java/controller.java.vm index ed7a33a..7acde82 100644 --- a/muyu-modules/muyu-gen/src/main/resources/vm/java/controller.java.vm +++ b/muyu-modules/muyu-gen/src/main/resources/vm/java/controller.java.vm @@ -1,8 +1,9 @@ package ${packageName}.controller; import java.util.List; -import java.io.IOException; import javax.servlet.http.HttpServletResponse; + +import io.swagger.annotations.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -12,15 +13,18 @@ import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import com.muyu.common.core.domain.Result; +import com.muyu.common.core.utils.poi.ExcelUtil; +import com.muyu.common.core.web.controller.BaseController; import com.muyu.common.log.annotation.Log; import com.muyu.common.log.enums.BusinessType; import com.muyu.common.security.annotation.RequiresPermissions; import ${packageName}.domain.${ClassName}; -import ${packageName}.service.I${ClassName}Service; -import com.muyu.common.core.web.controller.BaseController; -import com.muyu.common.core.domain.Result; -import com.muyu.common.core.utils.poi.ExcelUtil; -#if($table.crud || $table.sub) +import ${packageName}.domain.req.${ClassName}QueryReq; +import ${packageName}.domain.req.${ClassName}SaveReq; +import ${packageName}.domain.req.${ClassName}EditReq; +import ${packageName}.service.${ClassName}Service; +#if($table.crud) import com.muyu.common.core.web.page.TableDataInfo; #elseif($table.tree) #end @@ -31,42 +35,41 @@ import com.muyu.common.core.web.page.TableDataInfo; * @author ${author} * @date ${datetime} */ +@Api(tags = "${functionName}") @RestController @RequestMapping("/${businessName}") -public class ${ClassName}Controller extends BaseController -{ +public class ${ClassName}Controller extends BaseController { @Autowired - private I${ClassName}Service ${className}Service; + private ${ClassName}Service ${className}Service; /** * 查询${functionName}列表 */ + @ApiOperation("获取${functionName}列表") @RequiresPermissions("${permissionPrefix}:list") @GetMapping("/list") -#if($table.crud || $table.sub) - public Result list(${ClassName} ${className}) - { +#if($table.crud) + public Result> list(${ClassName}QueryReq ${className}QueryReq) { startPage(); - List<${ClassName}> list = ${className}Service.select${ClassName}List(${className}); + List<${ClassName}> list = ${className}Service.list(${ClassName}.queryBuild(${className}QueryReq)); return getDataTable(list); } #elseif($table.tree) - public Result list(${ClassName} ${className}) - { - List<${ClassName}> list = ${className}Service.select${ClassName}List(${className}); - return success(list); + public Result> list(${ClassName} ${className}) { + List<${ClassName}> list = ${className}Service.list(${className}); + return Result.success(list); } #end /** * 导出${functionName}列表 */ + @ApiOperation("导出${functionName}列表") @RequiresPermissions("${permissionPrefix}:export") @Log(title = "${functionName}", businessType = BusinessType.EXPORT) @PostMapping("/export") - public void export(HttpServletResponse response, ${ClassName} ${className}) - { - List<${ClassName}> list = ${className}Service.select${ClassName}List(${className}); + public void export(HttpServletResponse response, ${ClassName} ${className}) { + List<${ClassName}> list = ${className}Service.list(${className}); ExcelUtil<${ClassName}> util = new ExcelUtil<${ClassName}>(${ClassName}.class); util.exportExcel(response, list, "${functionName}数据"); } @@ -74,11 +77,12 @@ public class ${ClassName}Controller extends BaseController /** * 获取${functionName}详细信息 */ + @ApiOperation("获取${functionName}详细信息") @RequiresPermissions("${permissionPrefix}:query") @GetMapping(value = "/{${pkColumn.javaField}}") - public Result getInfo(@PathVariable("${pkColumn.javaField}") ${pkColumn.javaType} ${pkColumn.javaField}) - { - return success(${className}Service.select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField})); + @ApiImplicitParam(name = "${pkColumn.javaField}", value = "${pkColumn.javaField}", required = true, dataType = "${pkColumn.javaType}", paramType = "path", dataTypeClass = ${pkColumn.javaType}.class) + public Result<${ClassName}> getInfo(@PathVariable("${pkColumn.javaField}") ${pkColumn.javaType} ${pkColumn.javaField}) { + return Result.success(${className}Service.getById(${pkColumn.javaField})); } /** @@ -87,9 +91,9 @@ public class ${ClassName}Controller extends BaseController @RequiresPermissions("${permissionPrefix}:add") @Log(title = "${functionName}", businessType = BusinessType.INSERT) @PostMapping - public Result add(@RequestBody ${ClassName} ${className}) - { - return toAjax(${className}Service.insert${ClassName}(${className})); + @ApiOperation("新增${functionName}") + public Result add(@RequestBody ${ClassName}SaveReq ${className}SaveReq) { + return toAjax(${className}Service.save(${ClassName}.saveBuild(${className}SaveReq))); } /** @@ -97,10 +101,10 @@ public class ${ClassName}Controller extends BaseController */ @RequiresPermissions("${permissionPrefix}:edit") @Log(title = "${functionName}", businessType = BusinessType.UPDATE) - @PutMapping - public Result edit(@RequestBody ${ClassName} ${className}) - { - return toAjax(${className}Service.update${ClassName}(${className})); + @PutMapping("/{${pkColumn.javaField}}") + @ApiOperation("修改${functionName}") + public Result edit(@PathVariable ${pkColumn.javaType} ${pkColumn.javaField}, @RequestBody ${ClassName}EditReq ${className}EditReq) { + return toAjax(${className}Service.updateById(${ClassName}.editBuild(${pkColumn.javaField},${className}EditReq))); } /** @@ -109,8 +113,9 @@ public class ${ClassName}Controller extends BaseController @RequiresPermissions("${permissionPrefix}:remove") @Log(title = "${functionName}", businessType = BusinessType.DELETE) @DeleteMapping("/{${pkColumn.javaField}s}") - public Result remove(@PathVariable ${pkColumn.javaType}[] ${pkColumn.javaField}s) - { - return toAjax(${className}Service.delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaField}s)); + @ApiOperation("删除${functionName}") + @ApiImplicitParam(name = "${pkColumn.javaField}", value = "${pkColumn.javaField}", required = true, dataType = "${pkColumn.javaType}", paramType = "path", dataTypeClass = String.class, example = "1,2,3,4") + public Result remove(@PathVariable List<${pkColumn.javaType}> ${pkColumn.javaField}s) { + return toAjax(${className}Service.removeBatchByIds(${pkColumn.javaField}s)); } } diff --git a/muyu-modules/muyu-gen/src/main/resources/vm/java/domain.java.vm b/muyu-modules/muyu-gen/src/main/resources/vm/java/domain.java.vm index 4d0d9a6..492ef96 100644 --- a/muyu-modules/muyu-gen/src/main/resources/vm/java/domain.java.vm +++ b/muyu-modules/muyu-gen/src/main/resources/vm/java/domain.java.vm @@ -3,10 +3,20 @@ package ${packageName}.domain; #foreach ($import in $importList) import ${import}; #end -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; import com.muyu.common.core.annotation.Excel; -#if($table.crud || $table.sub) +import ${packageName}.domain.req.${ClassName}QueryReq; +import ${packageName}.domain.req.${ClassName}SaveReq; +import ${packageName}.domain.req.${ClassName}EditReq; +#if($table.crud) import com.muyu.common.core.web.domain.BaseEntity; #elseif($table.tree) import com.muyu.common.core.web.domain.TreeEntity; @@ -18,13 +28,20 @@ import com.muyu.common.core.web.domain.TreeEntity; * @author ${author} * @date ${datetime} */ -#if($table.crud || $table.sub) +#if($table.crud) #set($Entity="BaseEntity") #elseif($table.tree) #set($Entity="TreeEntity") #end -public class ${ClassName} extends ${Entity} -{ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@TableName("${tableName}") +@EqualsAndHashCode(callSuper = true) +@ApiModel(value = "${ClassName}", description = "${functionName}") +public class ${ClassName} extends ${Entity} { + private static final long serialVersionUID = 1L; #foreach ($column in $columns) @@ -46,60 +63,77 @@ public class ${ClassName} extends ${Entity} @Excel(name = "${comment}") #end #end +#if($column.javaField == $pkColumn.javaField) + @TableId(value = "${pkColumn.columnName}",type = IdType.AUTO) +#end +#set($comment='') +#if($column.isRequired == '1') + #set($comment=', required = true') +#end + @ApiModelProperty(name = "${column.columnComment}", value = "${column.columnComment}"$comment) private $column.javaType $column.javaField; #end #end -#if($table.sub) - /** $table.subTable.functionName信息 */ - private List<${subClassName}> ${subclassName}List; + /** + * 查询构造器 + */ + public static ${ClassName} queryBuild( ${ClassName}QueryReq ${className}QueryReq){ + return ${ClassName}.builder() + #foreach ($column in $columns) + #if($column.isQuery == '1') + #if(!$table.isSuperColumn($column.javaField)) + #if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]")) + #set($AttrName=$column.javaField) + #else + #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) + #end + .${column.javaField}(${className}QueryReq.get${AttrName}()) + #end + #end + #end + .build(); + } -#end + /** + * 添加构造器 + */ + public static ${ClassName} saveBuild(${ClassName}SaveReq ${className}SaveReq){ + return ${ClassName}.builder() + #foreach ($column in $columns) + #if($column.isEdit == '1') + #if(!$table.isSuperColumn($column.javaField)) + #if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]")) + #set($AttrName=$column.javaField) + #else + #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) + #end + .${column.javaField}(${className}SaveReq.get${AttrName}()) + #end + #end + #end + .build(); + } + + /** + * 修改构造器 + */ + public static ${ClassName} editBuild(${pkColumn.javaType} ${pkColumn.javaField}, ${ClassName}EditReq ${className}EditReq){ + return ${ClassName}.builder() + .${pkColumn.javaField}(${pkColumn.javaField}) #foreach ($column in $columns) -#if(!$table.isSuperColumn($column.javaField)) -#if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]")) -#set($AttrName=$column.javaField) -#else -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) + #if($column.isEdit == '1') + #if(!$table.isSuperColumn($column.javaField)) + #if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]")) + #set($AttrName=$column.javaField) + #else + #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) + #end + .${column.javaField}(${className}EditReq.get${AttrName}()) + #end + #end #end - public void set${AttrName}($column.javaType $column.javaField) - { - this.$column.javaField = $column.javaField; + .build(); } - public $column.javaType get${AttrName}() - { - return $column.javaField; - } -#end -#end - -#if($table.sub) - public List<${subClassName}> get${subClassName}List() - { - return ${subclassName}List; - } - - public void set${subClassName}List(List<${subClassName}> ${subclassName}List) - { - this.${subclassName}List = ${subclassName}List; - } - -#end - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) -#foreach ($column in $columns) -#if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]")) -#set($AttrName=$column.javaField) -#else -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) -#end - .append("${column.javaField}", get${AttrName}()) -#end -#if($table.sub) - .append("${subclassName}List", get${subClassName}List()) -#end - .toString(); - } } diff --git a/muyu-modules/muyu-gen/src/main/resources/vm/java/edit.java.vm b/muyu-modules/muyu-gen/src/main/resources/vm/java/edit.java.vm new file mode 100644 index 0000000..d3c3cd4 --- /dev/null +++ b/muyu-modules/muyu-gen/src/main/resources/vm/java/edit.java.vm @@ -0,0 +1,63 @@ +package ${packageName}.domain.req; + +#foreach ($import in $importList) +import ${import}; +#end +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; +#if($table.crud) +import com.muyu.common.core.web.domain.BaseEntity; +#elseif($table.tree) +import com.muyu.common.core.web.domain.TreeEntity; +#end + +/** + * ${functionName}对象 ${tableName} + * + * @author ${author} + * @date ${datetime} + */ +#if($table.crud) + #set($Entity="BaseEntity") +#elseif($table.tree) + #set($Entity="TreeEntity") +#end +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "${ClassName}EditReq", description = "${functionName}") +public class ${ClassName}EditReq extends ${Entity} { + + private static final long serialVersionUID = 1L; + +#foreach ($column in $columns) + #if(!$table.isSuperColumn($column.javaField)) + #if($column.isEdit == '1') + /** $column.columnComment */ + #if($column.list) + #set($parentheseIndex=$column.columnComment.indexOf("(")) + #if($parentheseIndex != -1) + #set($comment=$column.columnComment.substring(0, $parentheseIndex)) + #else + #set($comment=$column.columnComment) + #end + #if($column.javaType == 'Date') + @JsonFormat(pattern = "yyyy-MM-dd") + #end + #end + #set($isRequired='') + #if($column.isRequired == '1') + #set($isRequired=', required = true') + #end + @ApiModelProperty(name = "${column.columnComment}", value = "${column.columnComment}"$isRequired) + private $column.javaType $column.javaField; + + #end + #end +#end +} diff --git a/muyu-modules/muyu-gen/src/main/resources/vm/java/mapper.java.vm b/muyu-modules/muyu-gen/src/main/resources/vm/java/mapper.java.vm index 7e7d7c2..2926740 100644 --- a/muyu-modules/muyu-gen/src/main/resources/vm/java/mapper.java.vm +++ b/muyu-modules/muyu-gen/src/main/resources/vm/java/mapper.java.vm @@ -1,91 +1,15 @@ package ${packageName}.mapper; import java.util.List; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import ${packageName}.domain.${ClassName}; -#if($table.sub) -import ${packageName}.domain.${subClassName}; -#end /** * ${functionName}Mapper接口 - * + * * @author ${author} * @date ${datetime} */ -public interface ${ClassName}Mapper -{ - /** - * 查询${functionName} - * - * @param ${pkColumn.javaField} ${functionName}主键 - * @return ${functionName} - */ - public ${ClassName} select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}); +public interface ${ClassName}Mapper extends BaseMapper<${ClassName}> { - /** - * 查询${functionName}列表 - * - * @param ${className} ${functionName} - * @return ${functionName}集合 - */ - public List<${ClassName}> select${ClassName}List(${ClassName} ${className}); - - /** - * 新增${functionName} - * - * @param ${className} ${functionName} - * @return 结果 - */ - public int insert${ClassName}(${ClassName} ${className}); - - /** - * 修改${functionName} - * - * @param ${className} ${functionName} - * @return 结果 - */ - public int update${ClassName}(${ClassName} ${className}); - - /** - * 删除${functionName} - * - * @param ${pkColumn.javaField} ${functionName}主键 - * @return 结果 - */ - public int delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}); - - /** - * 批量删除${functionName} - * - * @param ${pkColumn.javaField}s 需要删除的数据主键集合 - * @return 结果 - */ - public int delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaType}[] ${pkColumn.javaField}s); -#if($table.sub) - - /** - * 批量删除${subTable.functionName} - * - * @param ${pkColumn.javaField}s 需要删除的数据主键集合 - * @return 结果 - */ - public int delete${subClassName}By${subTableFkClassName}s(${pkColumn.javaType}[] ${pkColumn.javaField}s); - - /** - * 批量新增${subTable.functionName} - * - * @param ${subclassName}List ${subTable.functionName}列表 - * @return 结果 - */ - public int batch${subClassName}(List<${subClassName}> ${subclassName}List); - - - /** - * 通过${functionName}主键删除${subTable.functionName}信息 - * - * @param ${pkColumn.javaField} ${functionName}ID - * @return 结果 - */ - public int delete${subClassName}By${subTableFkClassName}(${pkColumn.javaType} ${pkColumn.javaField}); -#end } diff --git a/muyu-modules/muyu-gen/src/main/resources/vm/java/query.java.vm b/muyu-modules/muyu-gen/src/main/resources/vm/java/query.java.vm new file mode 100644 index 0000000..7976c5e --- /dev/null +++ b/muyu-modules/muyu-gen/src/main/resources/vm/java/query.java.vm @@ -0,0 +1,62 @@ +package ${packageName}.domain.req; + +#foreach ($import in $importList) +import ${import}; +#end +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; +#if($table.crud) +import com.muyu.common.core.web.domain.BaseEntity; +#elseif($table.tree) +import com.muyu.common.core.web.domain.TreeEntity; +#end + +/** + * ${functionName}对象 ${tableName} + * + * @author ${author} + * @date ${datetime} + */ +#if($table.crud) +#set($Entity="BaseEntity") +#elseif($table.tree) +#set($Entity="TreeEntity") +#end +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "${ClassName}QueryReq", description = "${functionName}") +public class ${ClassName}QueryReq extends ${Entity} { + + private static final long serialVersionUID = 1L; + +#foreach ($column in $columns) +#if(!$table.isSuperColumn($column.javaField)) +#if($column.isQuery == '1') + /** $column.columnComment */ +#if($column.list) + #set($parentheseIndex=$column.columnComment.indexOf("(")) + #if($parentheseIndex != -1) + #set($comment=$column.columnComment.substring(0, $parentheseIndex)) + #else + #set($comment=$column.columnComment) + #end + #if($column.javaType == 'Date') + @JsonFormat(pattern = "yyyy-MM-dd") + #end +#end +#if($column.javaField == $pkColumn.javaField) + @TableId(value = "${pkColumn.javaField}",type = IdType.AUTO) +#end + @ApiModelProperty(name = "${column.columnComment}", value = "${column.columnComment}") + private $column.javaType $column.javaField; + +#end +#end +#end +} diff --git a/muyu-modules/muyu-gen/src/main/resources/vm/java/save.java.vm b/muyu-modules/muyu-gen/src/main/resources/vm/java/save.java.vm new file mode 100644 index 0000000..2ea1326 --- /dev/null +++ b/muyu-modules/muyu-gen/src/main/resources/vm/java/save.java.vm @@ -0,0 +1,64 @@ +package ${packageName}.domain.req; + +#foreach ($import in $importList) +import ${import}; +#end +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; +#if($table.crud) +import com.muyu.common.core.web.domain.BaseEntity; +#elseif($table.tree) +import com.muyu.common.core.web.domain.TreeEntity; +#end + +/** + * ${functionName}对象 ${tableName} + * + * @author ${author} + * @date ${datetime} + */ +#if($table.crud) + #set($Entity="BaseEntity") +#elseif($table.tree) + #set($Entity="TreeEntity") +#end +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "${ClassName}SaveReq", description = "${functionName}") +public class ${ClassName}SaveReq extends ${Entity} { + + private static final long serialVersionUID = 1L; + +#foreach ($column in $columns) + #if(!$table.isSuperColumn($column.javaField)) + #if($column.isInsert == '1') + /** $column.columnComment */ + #if($column.list) + #set($parentheseIndex=$column.columnComment.indexOf("(")) + #if($parentheseIndex != -1) + #set($comment=$column.columnComment.substring(0, $parentheseIndex)) + #else + #set($comment=$column.columnComment) + #end + #if($column.javaType == 'Date') + @JsonFormat(pattern = "yyyy-MM-dd") + #end + #end + + #set($isRequired='') + #if($column.isRequired == '1') + #set($isRequired=', required = true') + #end + @ApiModelProperty(name = "${column.columnComment}", value = "${column.columnComment}"$isRequired) + private $column.javaType $column.javaField; + + #end + #end +#end +} diff --git a/muyu-modules/muyu-gen/src/main/resources/vm/java/service.java.vm b/muyu-modules/muyu-gen/src/main/resources/vm/java/service.java.vm index 264882b..89bbdf4 100644 --- a/muyu-modules/muyu-gen/src/main/resources/vm/java/service.java.vm +++ b/muyu-modules/muyu-gen/src/main/resources/vm/java/service.java.vm @@ -2,60 +2,21 @@ package ${packageName}.service; import java.util.List; import ${packageName}.domain.${ClassName}; +import com.baomidou.mybatisplus.extension.service.IService; /** * ${functionName}Service接口 - * + * * @author ${author} * @date ${datetime} */ -public interface I${ClassName}Service -{ - /** - * 查询${functionName} - * - * @param ${pkColumn.javaField} ${functionName}主键 - * @return ${functionName} - */ - public ${ClassName} select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}); - +public interface ${ClassName}Service extends IService<${ClassName}> { /** * 查询${functionName}列表 - * + * * @param ${className} ${functionName} * @return ${functionName}集合 */ - public List<${ClassName}> select${ClassName}List(${ClassName} ${className}); + public List<${ClassName}> list(${ClassName} ${className}); - /** - * 新增${functionName} - * - * @param ${className} ${functionName} - * @return 结果 - */ - public int insert${ClassName}(${ClassName} ${className}); - - /** - * 修改${functionName} - * - * @param ${className} ${functionName} - * @return 结果 - */ - public int update${ClassName}(${ClassName} ${className}); - - /** - * 批量删除${functionName} - * - * @param ${pkColumn.javaField}s 需要删除的${functionName}主键集合 - * @return 结果 - */ - public int delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaType}[] ${pkColumn.javaField}s); - - /** - * 删除${functionName}信息 - * - * @param ${pkColumn.javaField} ${functionName}主键 - * @return 结果 - */ - public int delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}); } diff --git a/muyu-modules/muyu-gen/src/main/resources/vm/java/serviceImpl.java.vm b/muyu-modules/muyu-gen/src/main/resources/vm/java/serviceImpl.java.vm index 3904af5..ed2eef8 100644 --- a/muyu-modules/muyu-gen/src/main/resources/vm/java/serviceImpl.java.vm +++ b/muyu-modules/muyu-gen/src/main/resources/vm/java/serviceImpl.java.vm @@ -1,23 +1,15 @@ package ${packageName}.service.impl; import java.util.List; -#foreach ($column in $columns) -#if($column.javaField == 'createTime' || $column.javaField == 'updateTime') -import com.muyu.common.core.utils.DateUtils; -#break -#end -#end -import org.springframework.beans.factory.annotation.Autowired; + +import com.muyu.common.core.utils.ObjUtils; +import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -#if($table.sub) -import java.util.ArrayList; -import com.muyu.common.core.utils.StringUtils; -import org.springframework.transaction.annotation.Transactional; -import ${packageName}.domain.${subClassName}; -#end import ${packageName}.mapper.${ClassName}Mapper; import ${packageName}.domain.${ClassName}; -import ${packageName}.service.I${ClassName}Service; +import ${packageName}.service.${ClassName}Service; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; /** * ${functionName}Service业务层处理 @@ -25,23 +17,9 @@ import ${packageName}.service.I${ClassName}Service; * @author ${author} * @date ${datetime} */ +@Slf4j @Service -public class ${ClassName}ServiceImpl implements I${ClassName}Service -{ - @Autowired - private ${ClassName}Mapper ${className}Mapper; - - /** - * 查询${functionName} - * - * @param ${pkColumn.javaField} ${functionName}主键 - * @return ${functionName} - */ - @Override - public ${ClassName} select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}) - { - return ${className}Mapper.select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField}); - } +public class ${ClassName}ServiceImpl extends ServiceImpl<${ClassName}Mapper, ${ClassName}> implements ${ClassName}Service { /** * 查询${functionName}列表 @@ -50,120 +28,49 @@ public class ${ClassName}ServiceImpl implements I${ClassName}Service * @return ${functionName} */ @Override - public List<${ClassName}> select${ClassName}List(${ClassName} ${className}) - { - return ${className}Mapper.select${ClassName}List(${className}); - } + public List<${ClassName}> list(${ClassName} ${className}) { + LambdaQueryWrapper<${ClassName}> queryWrapper = new LambdaQueryWrapper<>(); +#foreach($column in $columns) + #set($queryType=$column.queryType) + #set($javaField=$column.javaField) + #set($JavaField=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) - /** - * 新增${functionName} - * - * @param ${className} ${functionName} - * @return 结果 - */ -#if($table.sub) - @Transactional -#end - @Override - public int insert${ClassName}(${ClassName} ${className}) - { -#foreach ($column in $columns) -#if($column.javaField == 'createTime') - ${className}.setCreateTime(DateUtils.getNowDate()); -#end -#end -#if($table.sub) - int rows = ${className}Mapper.insert${ClassName}(${className}); - insert${subClassName}(${className}); - return rows; -#else - return ${className}Mapper.insert${ClassName}(${className}); -#end - } - - /** - * 修改${functionName} - * - * @param ${className} ${functionName} - * @return 结果 - */ -#if($table.sub) - @Transactional -#end - @Override - public int update${ClassName}(${ClassName} ${className}) - { -#foreach ($column in $columns) -#if($column.javaField == 'updateTime') - ${className}.setUpdateTime(DateUtils.getNowDate()); -#end -#end -#if($table.sub) - ${className}Mapper.delete${subClassName}By${subTableFkClassName}(${className}.get${pkColumn.capJavaField}()); - insert${subClassName}(${className}); -#end - return ${className}Mapper.update${ClassName}(${className}); - } - - /** - * 批量删除${functionName} - * - * @param ${pkColumn.javaField}s 需要删除的${functionName}主键 - * @return 结果 - */ -#if($table.sub) - @Transactional -#end - @Override - public int delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaType}[] ${pkColumn.javaField}s) - { -#if($table.sub) - ${className}Mapper.delete${subClassName}By${subTableFkClassName}s(${pkColumn.javaField}s); -#end - return ${className}Mapper.delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaField}s); - } - - /** - * 删除${functionName}信息 - * - * @param ${pkColumn.javaField} ${functionName}主键 - * @return 结果 - */ -#if($table.sub) - @Transactional -#end - @Override - public int delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}) - { -#if($table.sub) - ${className}Mapper.delete${subClassName}By${subTableFkClassName}(${pkColumn.javaField}); -#end - return ${className}Mapper.delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField}); - } -#if($table.sub) - - /** - * 新增${subTable.functionName}信息 - * - * @param ${className} ${functionName}对象 - */ - public void insert${subClassName}(${ClassName} ${className}) - { - List<${subClassName}> ${subclassName}List = ${className}.get${subClassName}List(); - ${pkColumn.javaType} ${pkColumn.javaField} = ${className}.get${pkColumn.capJavaField}(); - if (StringUtils.isNotNull(${subclassName}List)) - { - List<${subClassName}> list = new ArrayList<${subClassName}>(); - for (${subClassName} ${subclassName} : ${subclassName}List) - { - ${subclassName}.set${subTableFkClassName}(${pkColumn.javaField}); - list.add(${subclassName}); - } - if (list.size() > 0) - { - ${className}Mapper.batch${subClassName}(list); - } + #if($column.query) + #if($queryType == "EQ") + if (ObjUtils.notNull(${className}.get$JavaField())){ + queryWrapper.eq(${ClassName}::get$JavaField, ${className}.get$JavaField()); } - } + #elseif($queryType == "NE") + if (ObjUtils.notNull(${className}.get$JavaField())){ + queryWrapper.ne(${ClassName}::get$JavaField, ${className}.get$JavaField()); + } + #elseif($queryType == "GT") + if (ObjUtils.notNull(${className}.get$JavaField())){ + queryWrapper.gt(${ClassName}::get$JavaField, ${className}.get$JavaField()); + } + #elseif($queryType == "GTE") + if (ObjUtils.notNull(${className}.get$JavaField())){ + queryWrapper.ge(${ClassName}::get$JavaField, ${className}.get$JavaField()); + } + #elseif($queryType == "LT") + if (ObjUtils.notNull(${className}.get$JavaField())){ + queryWrapper.lt()${ClassName}::get$JavaField, ${className}.get$JavaField()); + } + #elseif($queryType == "LTE") + if (ObjUtils.notNull(${className}.get$JavaField())){ + queryWrapper.le()${ClassName}::get$JavaField, ${className}.get$JavaField()); + } + #elseif($queryType == "LIKE") + if (ObjUtils.notNull(${className}.get$JavaField())){ + queryWrapper.like(${ClassName}::get$JavaField, ${className}.get$JavaField()); + } + #elseif($queryType == "BETWEEN") + if (ObjUtils.notChildNull(${className}.getBetween("$JavaField"))){ + queryWrapper.between(${ClassName}::get$JavaField, ${className}.getBeginParam("$JavaField"),${className}.getEndParam("$JavaField")); + } + #end + #end #end + return list(queryWrapper); + } } diff --git a/muyu-modules/muyu-gen/src/main/resources/vm/java/sub-domain.java.vm b/muyu-modules/muyu-gen/src/main/resources/vm/java/sub-domain.java.vm deleted file mode 100644 index df72461..0000000 --- a/muyu-modules/muyu-gen/src/main/resources/vm/java/sub-domain.java.vm +++ /dev/null @@ -1,81 +0,0 @@ -package ${packageName}.domain; - -#foreach ($import in $subImportList) -import ${import}; -#end -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; -import com.muyu.common.core.annotation.Excel; -import com.muyu.common.core.web.domain.BaseEntity; - -/** - * ${subTable.functionName}对象 ${subTableName} - * - * @author ${author} - * @date ${datetime} - */ -@Data -@SuperBuilder -@NoArgsConstructor -@AllArgsConstructor -@EqualsAndHashCode(callSuper = true) -public class ${subClassName} extends BaseEntity -{ - private static final long serialVersionUID = 1L; - -#foreach ($column in $subTable.columns) -#if(!$table.isSuperColumn($column.javaField)) - /** $column.columnComment */ -#if($column.list) -#set($parentheseIndex=$column.columnComment.indexOf("(")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#if($parentheseIndex != -1) - @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") -#elseif($column.javaType == 'Date') - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "${comment}", width = 30, dateFormat = "yyyy-MM-dd") -#else - @Excel(name = "${comment}") -#end -#end - private $column.javaType $column.javaField; - -#end -#end -#foreach ($column in $subTable.columns) -#if(!$table.isSuperColumn($column.javaField)) -#if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]")) -#set($AttrName=$column.javaField) -#else -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) -#end - public void set${AttrName}($column.javaType $column.javaField) - { - this.$column.javaField = $column.javaField; - } - - public $column.javaType get${AttrName}() - { - return $column.javaField; - } -#end -#end - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) -#foreach ($column in $subTable.columns) -#if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]")) -#set($AttrName=$column.javaField) -#else -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) -#end - .append("${column.javaField}", get${AttrName}()) -#end - .toString(); - } -} diff --git a/muyu-modules/muyu-gen/src/main/resources/vm/js/api.js.vm b/muyu-modules/muyu-gen/src/main/resources/vm/js/api.js.vm index 9295524..9f6bae9 100644 --- a/muyu-modules/muyu-gen/src/main/resources/vm/js/api.js.vm +++ b/muyu-modules/muyu-gen/src/main/resources/vm/js/api.js.vm @@ -29,7 +29,7 @@ export function add${BusinessName}(data) { // 修改${functionName} export function update${BusinessName}(data) { return request({ - url: '/${moduleName}/${businessName}', + url: '/${moduleName}/${businessName}/'+data.${pkColumn.javaField}, method: 'put', data: data }) diff --git a/muyu-modules/muyu-gen/src/main/resources/vm/sql/sql.vm b/muyu-modules/muyu-gen/src/main/resources/vm/sql/sql.vm index 0575583..787f1db 100644 --- a/muyu-modules/muyu-gen/src/main/resources/vm/sql/sql.vm +++ b/muyu-modules/muyu-gen/src/main/resources/vm/sql/sql.vm @@ -1,22 +1,22 @@ -- 菜单 SQL insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}', '${parentMenuId}', '1', '${businessName}', '${moduleName}/${businessName}/index', 1, 0, 'C', '0', '0', '${permissionPrefix}:list', '#', 'admin', sysdate(), '', null, '${functionName}菜单'); +values('${functionName}', '${parentMenuId}', '1', '${businessName}', '${moduleName}/${businessName}/index', 1, 0, 'C', '0', '0', '${permissionPrefix}:list', '#', 1, sysdate(), null, null, '${functionName}菜单'); -- 按钮父菜单ID SELECT @parentId := LAST_INSERT_ID(); -- 按钮 SQL insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}查询', @parentId, '1', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:query', '#', 'admin', sysdate(), '', null, ''); +values('${functionName}查询', @parentId, '1', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:query', '#', 1, sysdate(), null, null, ''); insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}新增', @parentId, '2', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:add', '#', 'admin', sysdate(), '', null, ''); +values('${functionName}新增', @parentId, '2', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:add', '#', 1, sysdate(), null, null, ''); insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}修改', @parentId, '3', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:edit', '#', 'admin', sysdate(), '', null, ''); +values('${functionName}修改', @parentId, '3', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:edit', '#', 1, sysdate(), null, null, ''); insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}删除', @parentId, '4', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:remove', '#', 'admin', sysdate(), '', null, ''); +values('${functionName}删除', @parentId, '4', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:remove', '#', 1, sysdate(), null, null, ''); insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}导出', @parentId, '5', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:export', '#', 'admin', sysdate(), '', null, ''); \ No newline at end of file +values('${functionName}导出', @parentId, '5', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:export', '#', 1, sysdate(), null, null, ''); \ No newline at end of file diff --git a/muyu-modules/muyu-gen/src/main/resources/vm/vue/index-tree.vue.vm b/muyu-modules/muyu-gen/src/main/resources/vm/vue/index-tree.vue.vm index a4c64a0..4819c2a 100644 --- a/muyu-modules/muyu-gen/src/main/resources/vm/vue/index-tree.vue.vm +++ b/muyu-modules/muyu-gen/src/main/resources/vm/vue/index-tree.vue.vm @@ -453,7 +453,7 @@ export default { this.reset(); this.getTreeselect(); if (row != null) { - this.form.${treeParentCode} = row.${treeCode}; + this.form.${treeParentCode} = row.${treeParentCode}; } get${BusinessName}(row.${pkColumn.javaField}).then(response => { this.form = response.data; diff --git a/muyu-modules/muyu-gen/src/main/resources/vm/vue/index.vue.vm b/muyu-modules/muyu-gen/src/main/resources/vm/vue/index.vue.vm index 6296014..ac7b661 100644 --- a/muyu-modules/muyu-gen/src/main/resources/vm/vue/index.vue.vm +++ b/muyu-modules/muyu-gen/src/main/resources/vm/vue/index.vue.vm @@ -170,7 +170,7 @@ - + ${subTable.functionName}信息 - - - 添加 - - - 删除 - - - - - -#foreach($column in $subTable.columns) -#set($javaField=$column.javaField) -#set($parentheseIndex=$column.columnComment.indexOf("(")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#if($column.pk || $javaField == ${subTableFkclassName}) -#elseif($column.list && $column.htmlType == "input") - - - -#elseif($column.list && $column.htmlType == "datetime") - - - -#elseif($column.list && ($column.htmlType == "select" || $column.htmlType == "radio") && "" != $column.dictType) - - - -#elseif($column.list && ($column.htmlType == "select" || $column.htmlType == "radio") && "" == $column.dictType) - - - -#end -#end - #end