ruoyi/src/main/resources/vm/java/controller.java.vm | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi/src/main/resources/vm/java/domain.java.vm | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi/src/main/resources/vm/java/mapper.java.vm | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi/src/main/resources/vm/java/service.java.vm | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi/src/main/resources/vm/java/serviceImpl.java.vm | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi/src/main/resources/vm/xml/mapper.xml.vm | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
ruoyi/src/main/resources/vm/java/controller.java.vm
@@ -1,6 +1,12 @@ package ${packageName}.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import java.util.List; import java.util.Arrays; import com.ruoyi.common.utils.StringUtils; import lombok.AllArgsConstructor; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -22,82 +28,159 @@ /** * ${functionName}Controller * * * @author ${author} * @date ${datetime} */ @AllArgsConstructor @RestController @RequestMapping("/${moduleName}/${businessName}") public class ${ClassName}Controller extends BaseController { @Autowired private I${ClassName}Service ${className}Service; @RequestMapping("/${moduleName}/${businessName}" ) public class ${ClassName}Controller extends BaseController { private final I${ClassName}Service i${ClassName}Service; /** * 查询${functionName}列表 */ @PreAuthorize("@ss.hasPermi('${permissionPrefix}:list')") @GetMapping("/list") public TableDataInfo list(${ClassName} ${className}) { @PreAuthorize("@ss.hasPermi('${permissionPrefix}:list')" ) @GetMapping("/list" ) public TableDataInfo list(${ClassName} ${className}) { startPage(); List<${ClassName}> list = ${className}Service.select${ClassName}List(${className}); LambdaQueryWrapper<${ClassName}> lqw = new LambdaQueryWrapper<${ClassName}>(); #foreach($column in $columns) #set($queryType=$column.queryType) #set($javaField=$column.javaField) #set($javaType=$column.javaType) #set($columnName=$column.columnName) #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) #if($column.query) #if($column.queryType == "EQ") #if($javaType == 'String') if (StringUtils.isNotBlank(${className}.get$AttrName())){ lqw.eq(${ClassName}::get$AttrName ,${className}.get$AttrName()); } #else if (${className}.get$AttrName() != null){ lqw.eq(${ClassName}::get$AttrName ,${className}.get$AttrName()); } #end #elseif($queryType == "NE") #if($javaType == 'String') if (StringUtils.isNotBlank(${className}.get$AttrName())){ lqw.ne(${ClassName}::get$AttrName ,${className}.get$AttrName()); } #else if (${className}.get$AttrName() != null){ lqw.ne(${ClassName}::get$AttrName ,${className}.get$AttrName()); } #end #elseif($queryType == "GT") #if($javaType == 'String') if (StringUtils.isNotBlank(${className}.get$AttrName())){ lqw.gt(${ClassName}::get$AttrName ,${className}.get$AttrName()); } #else if (${className}.get$AttrName() != null){ lqw.gt(${ClassName}::get$AttrName ,${className}.get$AttrName()); } #end #elseif($queryType == "GTE") #if($javaType == 'String') if (StringUtils.isNotBlank(${className}.get$AttrName())){ lqw.ge(${ClassName}::get$AttrName ,${className}.get$AttrName()); } #else if (${className}.get$AttrName() != null){ lqw.ge(${ClassName}::get$AttrName ,${className}.get$AttrName()); } #end #elseif($queryType == "LT") #if($javaType == 'String') if (StringUtils.isNotBlank(${className}.get$AttrName())){ lqw.lt(${ClassName}::get$AttrName ,${className}.get$AttrName()); } #else if (${className}.get$AttrName() != null){ lqw.lt(${ClassName}::get$AttrName ,${className}.get$AttrName()); } #end #elseif($queryType == "LTE") #if($javaType == 'String') if (StringUtils.isNotBlank(${className}.get$AttrName())){ lqw.le(${ClassName}::get$AttrName ,${className}.get$AttrName()); } #else if (${className}.get$AttrName() != null){ lqw.le(${ClassName}::get$AttrName ,${className}.get$AttrName()); } #end #elseif($queryType == "LIKE") #if($javaType == 'String') if (StringUtils.isNotBlank(${className}.get$AttrName())){ lqw.like(${ClassName}::get$AttrName ,${className}.get$AttrName()); } #else if (${className}.get$AttrName() != null){ lqw.like(${ClassName}::get$AttrName ,${className}.get$AttrName()); } #end #elseif($queryType == "BETWEEN") #end #end #end List<${ClassName}> list = i${ClassName}Service.list(lqw); return getDataTable(list); } /** * 导出${functionName}列表 */ @PreAuthorize("@ss.hasPermi('${permissionPrefix}:export')") @Log(title = "${functionName}", businessType = BusinessType.EXPORT) @GetMapping("/export") public AjaxResult export(${ClassName} ${className}) { List<${ClassName}> list = ${className}Service.select${ClassName}List(${className}); ExcelUtil<${ClassName}> util = new ExcelUtil<${ClassName}>(${ClassName}.class); return util.exportExcel(list, "${businessName}"); @PreAuthorize("@ss.hasPermi('${permissionPrefix}:export')" ) @Log(title = "${functionName}" , businessType = BusinessType.EXPORT) @GetMapping("/export" ) public AjaxResult export(${ClassName} ${className}) { LambdaQueryWrapper<${ClassName}> lqw = new LambdaQueryWrapper<${ClassName}>(${className}); List<${ClassName}> list = i${ClassName}Service.list(lqw); ExcelUtil<${ClassName}> util = new ExcelUtil<${ClassName}>(${ClassName}. class); return util.exportExcel(list, "${businessName}" ); } /** * 获取${functionName}详细信息 */ @PreAuthorize("@ss.hasPermi('${permissionPrefix}:query')") @GetMapping(value = "/{${pkColumn.javaField}}") public AjaxResult getInfo(@PathVariable("${pkColumn.javaField}") ${pkColumn.javaType} ${pkColumn.javaField}) { return AjaxResult.success(${className}Service.select${ClassName}ById(${pkColumn.javaField})); @PreAuthorize("@ss.hasPermi('${permissionPrefix}:query')" ) @GetMapping(value = "/{${pkColumn.javaField}}" ) public AjaxResult getInfo(@PathVariable("${pkColumn.javaField}" ) ${pkColumn.javaType} ${pkColumn.javaField}) { return AjaxResult.success(i${ClassName}Service.getById(${pkColumn.javaField})); } /** * 新增${functionName} */ @PreAuthorize("@ss.hasPermi('${permissionPrefix}:add')") @Log(title = "${functionName}", businessType = BusinessType.INSERT) @PreAuthorize("@ss.hasPermi('${permissionPrefix}:add')" ) @Log(title = "${functionName}" , businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody ${ClassName} ${className}) { return toAjax(${className}Service.insert${ClassName}(${className})); public AjaxResult add(@RequestBody ${ClassName} ${className}) { return toAjax(i${ClassName}Service.save(${className}) ? 1 : 0); } /** * 修改${functionName} */ @PreAuthorize("@ss.hasPermi('${permissionPrefix}:edit')") @Log(title = "${functionName}", businessType = BusinessType.UPDATE) @PreAuthorize("@ss.hasPermi('${permissionPrefix}:edit')" ) @Log(title = "${functionName}" , businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody ${ClassName} ${className}) { return toAjax(${className}Service.update${ClassName}(${className})); public AjaxResult edit(@RequestBody ${ClassName} ${className}) { return toAjax(i${ClassName}Service.updateById(${className}) ? 1 : 0); } /** * 删除${functionName} */ @PreAuthorize("@ss.hasPermi('${permissionPrefix}:remove')") @Log(title = "${functionName}", businessType = BusinessType.DELETE) @DeleteMapping("/{${pkColumn.javaField}s}") public AjaxResult remove(@PathVariable ${pkColumn.javaType}[] ${pkColumn.javaField}s) { return toAjax(${className}Service.delete${ClassName}ByIds(${pkColumn.javaField}s)); @PreAuthorize("@ss.hasPermi('${permissionPrefix}:remove')" ) @Log(title = "${functionName}" , businessType = BusinessType.DELETE) @DeleteMapping("/{${pkColumn.javaField}s}" ) public AjaxResult remove(@PathVariable ${pkColumn.javaType}[] ${pkColumn.javaField}s) { return toAjax(i${ClassName}Service.removeByIds(Arrays.asList(${pkColumn.javaField}s)) ? 1 : 0); } } ruoyi/src/main/resources/vm/java/domain.java.vm
@@ -1,26 +1,39 @@ package ${packageName}.domain; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import lombok.ToString; import lombok.experimental.Accessors; import com.ruoyi.framework.aspectj.lang.annotation.Excel; import com.ruoyi.framework.web.domain.BaseEntity; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.IdType; import java.io.Serializable; import java.util.Date; #foreach ($import in $importList) import ${import}; #end /** * ${functionName}对象 ${tableName} * * * @author ${author} * @date ${datetime} */ #set($Entity="BaseEntity") public class ${ClassName} extends ${Entity} { private static final long serialVersionUID = 1L; @Data @ToString @EqualsAndHashCode @NoArgsConstructor @Accessors(chain = true) @TableName("${tableName}") public class ${ClassName} implements Serializable { private static final long serialVersionUID=1L; #foreach ($column in $columns) #if(!$table.isSuperColumn($column.javaField)) /** $column.columnComment */ #if($column.list) #set($parentheseIndex=$column.columnComment.indexOf("(")) @@ -30,47 +43,19 @@ #set($comment=$column.columnComment) #end #if($parentheseIndex != -1) @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") @Excel(name = "${comment}" , readConverterExp = "$column.readConverterExp()") #elseif($column.javaType == 'Date') @Excel(name = "${comment}", width = 30, dateFormat = "yyyy-MM-dd") @Excel(name = "${comment}" , width = 30, dateFormat = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") #else @Excel(name = "${comment}") #end #end #if($column.isPk==1) @TableId(value = "$column.columnName", type = IdType.AUTO) private $column.javaType $column.javaField; #end #end #foreach ($column in $columns) #if(!$table.isSuperColumn($column.javaField)) #if($column.javaField > 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; } private $column.javaType $column.javaField; #end #end @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) #foreach ($column in $columns) #if($column.javaField > 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(); } } ruoyi/src/main/resources/vm/java/mapper.java.vm
@@ -1,61 +1,14 @@ package ${packageName}.mapper; import ${packageName}.domain.${ClassName}; import java.util.List; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** * ${functionName}Mapper接口 * * * @author ${author} * @date ${datetime} */ public interface ${ClassName}Mapper { /** * 查询${functionName} * * @param ${pkColumn.javaField} ${functionName}ID * @return ${functionName} */ public ${ClassName} select${ClassName}ById(${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}ID * @return 结果 */ public int delete${ClassName}ById(${pkColumn.javaType} ${pkColumn.javaField}); /** * 批量删除${functionName} * * @param ${pkColumn.javaField}s 需要删除的数据ID * @return 结果 */ public int delete${ClassName}ByIds(${pkColumn.javaType}[] ${pkColumn.javaField}s); } ruoyi/src/main/resources/vm/java/service.java.vm
@@ -1,61 +1,14 @@ package ${packageName}.service; import ${packageName}.domain.${ClassName}; import java.util.List; import com.baomidou.mybatisplus.extension.service.IService; /** * ${functionName}Service接口 * * * @author ${author} * @date ${datetime} */ public interface I${ClassName}Service { /** * 查询${functionName} * * @param ${pkColumn.javaField} ${functionName}ID * @return ${functionName} */ public ${ClassName} select${ClassName}ById(${pkColumn.javaType} ${pkColumn.javaField}); public interface I${ClassName}Service extends IService<${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}s 需要删除的${functionName}ID * @return 结果 */ public int delete${ClassName}ByIds(${pkColumn.javaType}[] ${pkColumn.javaField}s); /** * 删除${functionName}信息 * * @param ${pkColumn.javaField} ${functionName}ID * @return 结果 */ public int delete${ClassName}ById(${pkColumn.javaType} ${pkColumn.javaField}); } ruoyi/src/main/resources/vm/java/serviceImpl.java.vm
@@ -1,109 +1,18 @@ package ${packageName}.service.impl; import java.util.List; #foreach ($column in $columns) #if($column.javaField == 'createTime' || $column.javaField == 'updateTime') import com.ruoyi.common.utils.DateUtils; #break #end #end import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import ${packageName}.mapper.${ClassName}Mapper; import ${packageName}.domain.${ClassName}; import ${packageName}.service.I${ClassName}Service; /** * ${functionName}Service业务层处理 * * * @author ${author} * @date ${datetime} */ @Service public class ${ClassName}ServiceImpl implements I${ClassName}Service { @Autowired private ${ClassName}Mapper ${className}Mapper; public class ${ClassName}ServiceImpl extends ServiceImpl<${ClassName}Mapper, ${ClassName}> implements I${ClassName}Service { /** * 查询${functionName} * * @param ${pkColumn.javaField} ${functionName}ID * @return ${functionName} */ @Override public ${ClassName} select${ClassName}ById(${pkColumn.javaType} ${pkColumn.javaField}) { return ${className}Mapper.select${ClassName}ById(${pkColumn.javaField}); } /** * 查询${functionName}列表 * * @param ${className} ${functionName} * @return ${functionName} */ @Override public List<${ClassName}> select${ClassName}List(${ClassName} ${className}) { return ${className}Mapper.select${ClassName}List(${className}); } /** * 新增${functionName} * * @param ${className} ${functionName} * @return 结果 */ @Override public int insert${ClassName}(${ClassName} ${className}) { #foreach ($column in $columns) #if($column.javaField == 'createTime') ${className}.setCreateTime(DateUtils.getNowDate()); #end #end return ${className}Mapper.insert${ClassName}(${className}); } /** * 修改${functionName} * * @param ${className} ${functionName} * @return 结果 */ @Override public int update${ClassName}(${ClassName} ${className}) { #foreach ($column in $columns) #if($column.javaField == 'updateTime') ${className}.setUpdateTime(DateUtils.getNowDate()); #end #end return ${className}Mapper.update${ClassName}(${className}); } /** * 批量删除${functionName} * * @param ${pkColumn.javaField}s 需要删除的${functionName}ID * @return 结果 */ @Override public int delete${ClassName}ByIds(${pkColumn.javaType}[] ${pkColumn.javaField}s) { return ${className}Mapper.delete${ClassName}ByIds(${pkColumn.javaField}s); } /** * 删除${functionName}信息 * * @param ${pkColumn.javaField} ${functionName}ID * @return 结果 */ @Override public int delete${ClassName}ById(${pkColumn.javaType} ${pkColumn.javaField}) { return ${className}Mapper.delete${ClassName}ById(${pkColumn.javaField}); } } ruoyi/src/main/resources/vm/xml/mapper.xml.vm
@@ -10,86 +10,5 @@ #end </resultMap> <sql id="select${ClassName}Vo"> select#foreach($column in $columns) $column.columnName#if($velocityCount != $columns.size()),#end#end from ${tableName} </sql> <select id="select${ClassName}List" parameterType="${ClassName}" resultMap="${ClassName}Result"> <include refid="select${ClassName}Vo"/> <where> #foreach($column in $columns) #set($queryType=$column.queryType) #set($javaField=$column.javaField) #set($javaType=$column.javaType) #set($columnName=$column.columnName) #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) #if($column.query) #if($column.queryType == "EQ") <if test="$javaField != null #if($javaType == 'String' ) and $javaField.trim() != ''#end"> and $columnName = #{$javaField}</if> #elseif($queryType == "NE") <if test="$javaField != null #if($javaType == 'String' ) and $javaField.trim() != ''#end"> and $columnName != #{$javaField}</if> #elseif($queryType == "GT") <if test="$javaField != null #if($javaType == 'String' ) and $javaField.trim() != ''#end"> and $columnName > #{$javaField}</if> #elseif($queryType == "GTE") <if test="$javaField != null #if($javaType == 'String' ) and $javaField.trim() != ''#end"> and $columnName >= #{$javaField}</if> #elseif($queryType == "LT") <if test="$javaField != null #if($javaType == 'String' ) and $javaField.trim() != ''#end"> and $columnName < #{$javaField}</if> #elseif($queryType == "LTE") <if test="$javaField != null #if($javaType == 'String' ) and $javaField.trim() != ''#end"> and $columnName <= #{$javaField}</if> #elseif($queryType == "LIKE") <if test="$javaField != null #if($javaType == 'String' ) and $javaField.trim() != ''#end"> and $columnName like concat('%', #{$javaField}, '%')</if> #elseif($queryType == "BETWEEN") <if test="params.begin$AttrName != null and params.begin$AttrName != '' and params.end$AttrName != null and params.end$AttrName != ''"> and $columnName between #{params.begin$AttrName} and #{params.end$AttrName}</if> #end #end #end </where> </select> <select id="select${ClassName}ById" parameterType="${pkColumn.javaType}" resultMap="${ClassName}Result"> <include refid="select${ClassName}Vo"/> where ${pkColumn.columnName} = #{${pkColumn.javaField}} </select> <insert id="insert${ClassName}" parameterType="${ClassName}"#if($pkColumn.increment) useGeneratedKeys="true" keyProperty="$pkColumn.javaField"#end> insert into ${tableName} <trim prefix="(" suffix=")" suffixOverrides=","> #foreach($column in $columns) #if($column.columnName != $pkColumn.columnName || !$pkColumn.increment) <if test="$column.javaField != null #if($column.javaType == 'String' ) and $column.javaField != ''#end">$column.columnName,</if> #end #end </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> #foreach($column in $columns) #if($column.columnName != $pkColumn.columnName || !$pkColumn.increment) <if test="$column.javaField != null #if($column.javaType == 'String' ) and $column.javaField != ''#end">#{$column.javaField},</if> #end #end </trim> </insert> <update id="update${ClassName}" parameterType="${ClassName}"> update ${tableName} <trim prefix="SET" suffixOverrides=","> #foreach($column in $columns) #if($column.columnName != $pkColumn.columnName) <if test="$column.javaField != null #if($column.javaType == 'String' ) and $column.javaField != ''#end">$column.columnName = #{$column.javaField},</if> #end #end </trim> where ${pkColumn.columnName} = #{${pkColumn.javaField}} </update> <delete id="delete${ClassName}ById" parameterType="${pkColumn.javaType}"> delete from ${tableName} where ${pkColumn.columnName} = #{${pkColumn.javaField}} </delete> <delete id="delete${ClassName}ByIds" parameterType="String"> delete from ${tableName} where ${pkColumn.columnName} in <foreach item="${pkColumn.javaField}" collection="array" open="(" separator="," close=")"> #{${pkColumn.javaField}} </foreach> </delete> </mapper>