feat();代码生成器更改
parent
72b0510f9e
commit
eba9643f44
|
@ -128,6 +128,7 @@ public class VelocityUtils {
|
|||
List<String> templates = new ArrayList<String>();
|
||||
templates.add("vm/java/domain.java.vm");
|
||||
templates.add("vm/java/query.java.vm");
|
||||
templates.add("vm/java/queryModel.java.vm");
|
||||
templates.add("vm/java/save.java.vm");
|
||||
templates.add("vm/java/edit.java.vm");
|
||||
templates.add("vm/java/controller.java.vm");
|
||||
|
@ -173,6 +174,9 @@ public class VelocityUtils {
|
|||
if (template.contains("query.java.vm")) {
|
||||
fileName = StringUtils.format("{}/domain/req/{}QueryReq.java", javaPath, className);
|
||||
}
|
||||
if (template.contains("queryModel.java.vm")) {
|
||||
fileName = StringUtils.format("{}/domain/model/{}QueryModel.java", javaPath, className);
|
||||
}
|
||||
if (template.contains("save.java.vm")) {
|
||||
fileName = StringUtils.format("{}/domain/req/{}SaveReq.java", javaPath, className);
|
||||
}
|
||||
|
|
|
@ -1,10 +1,18 @@
|
|||
package ${packageName}.controller;
|
||||
|
||||
import java.util.List;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import io.swagger.annotations.*;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
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.core.web.page.DataPageResp;
|
||||
import com.muyu.common.core.web.page.PageQueryModel;
|
||||
import com.muyu.common.log.annotation.Log;
|
||||
import com.muyu.common.log.enums.BusinessType;
|
||||
import com.muyu.common.security.annotation.RequiresPermissions;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
@ -14,18 +22,14 @@ 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.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.Result;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import ${packageName}.domain.${ClassName};
|
||||
import ${packageName}.domain.req.${ClassName}QueryReq;
|
||||
import ${packageName}.domain.model.${ClassName}QueryModel;
|
||||
import ${packageName}.domain.req.${ClassName}SaveReq;
|
||||
import ${packageName}.domain.req.${ClassName}EditReq;
|
||||
import ${packageName}.service.${ClassName}Service;
|
||||
import com.ruoyi.common.utils.poi.ExcelUtil;
|
||||
#if($table.crud)
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.muyu.common.core.web.page.DataPageResp;
|
||||
#elseif($table.tree)
|
||||
#end
|
||||
|
||||
|
@ -35,9 +39,9 @@ import com.ruoyi.common.core.page.TableDataInfo;
|
|||
* @author ${author}
|
||||
* @date ${datetime}
|
||||
*/
|
||||
@Api(tags = "${functionName}")
|
||||
@RestController
|
||||
@RequestMapping("/${moduleName}/${businessName}")
|
||||
@Tag(name = "${functionName}", description = "${functionName}控制层")
|
||||
public class ${ClassName}Controller extends BaseController {
|
||||
@Autowired
|
||||
private ${ClassName}Service ${className}Service;
|
||||
|
@ -45,14 +49,13 @@ public class ${ClassName}Controller extends BaseController {
|
|||
/**
|
||||
* 查询${functionName}列表
|
||||
*/
|
||||
@ApiOperation("获取${functionName}列表")
|
||||
@PreAuthorize("@ss.hasPermi('${permissionPrefix}:list')")
|
||||
@Operation(summary = "获取${functionName}列表", description = "获取${functionName}列表")
|
||||
@RequiresPermissions("${permissionPrefix}:list")
|
||||
@GetMapping("/list")
|
||||
#if($table.crud)
|
||||
public Result<TableDataInfo<${ClassName}>> list(${ClassName}QueryReq ${className}QueryReq) {
|
||||
startPage();
|
||||
List<${ClassName}> list = ${className}Service.list(${ClassName}.queryBuild(${className}QueryReq));
|
||||
return getDataTable(list);
|
||||
public Result<DataPageResp<${ClassName}>> list(${ClassName}QueryReq ${className}QueryReq) {
|
||||
PageQueryModel<${ClassName}> pageQueryModel = ${className}Service.pageQuery(${ClassName}QueryModel.reqBuild(${className}QueryReq));
|
||||
return resultList(pageQueryModel);
|
||||
}
|
||||
#elseif($table.tree)
|
||||
public Result<List<${ClassName}>> list(${ClassName} ${className}) {
|
||||
|
@ -64,23 +67,22 @@ public class ${ClassName}Controller extends BaseController {
|
|||
/**
|
||||
* 导出${functionName}列表
|
||||
*/
|
||||
@ApiOperation("导出${functionName}列表")
|
||||
@PreAuthorize("@ss.hasPermi('${permissionPrefix}:export')")
|
||||
@Operation(summary = "导出${functionName}列表", description = "导出${functionName}列表")
|
||||
@RequiresPermissions("${permissionPrefix}:export")
|
||||
@Log(title = "${functionName}", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(HttpServletResponse response, ${ClassName} ${className}) {
|
||||
List<${ClassName}> list = ${className}Service.list(${className});
|
||||
ExcelUtil<${ClassName}> util = new ExcelUtil<${ClassName}>(${ClassName}.class);
|
||||
List<${ClassName}> list = ${className}Service.exportList(${className});
|
||||
ExcelUtil<${ClassName}> util = new ExcelUtil<>(${ClassName}.class);
|
||||
util.exportExcel(response, list, "${functionName}数据");
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取${functionName}详细信息
|
||||
*/
|
||||
@ApiOperation("获取${functionName}详细信息")
|
||||
@PreAuthorize("@ss.hasPermi('${permissionPrefix}:query')")
|
||||
@Operation(summary = "获取${functionName}详细信息", description = "获取${functionName}详细信息")
|
||||
@RequiresPermissions("${permissionPrefix}:query")
|
||||
@GetMapping(value = "/{${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}));
|
||||
}
|
||||
|
@ -88,10 +90,10 @@ public class ${ClassName}Controller extends BaseController {
|
|||
/**
|
||||
* 新增${functionName}
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('${permissionPrefix}:add')")
|
||||
@RequiresPermissions("${permissionPrefix}:add")
|
||||
@Log(title = "${functionName}", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
@ApiOperation("新增${functionName}")
|
||||
@Operation(summary = "新增${functionName}", description = "新增${functionName}")
|
||||
public Result<String> add(@RequestBody ${ClassName}SaveReq ${className}SaveReq) {
|
||||
return toAjax(${className}Service.save(${ClassName}.saveBuild(${className}SaveReq)));
|
||||
}
|
||||
|
@ -99,10 +101,10 @@ public class ${ClassName}Controller extends BaseController {
|
|||
/**
|
||||
* 修改${functionName}
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('${permissionPrefix}:edit')")
|
||||
@RequiresPermissions("${permissionPrefix}:edit")
|
||||
@Log(title = "${functionName}", businessType = BusinessType.UPDATE)
|
||||
@PutMapping("/{${pkColumn.javaField}}")
|
||||
@ApiOperation("修改${functionName}")
|
||||
@Operation(summary = "修改${functionName}", description = "修改${functionName}")
|
||||
public Result<String> edit(@PathVariable ${pkColumn.javaType} ${pkColumn.javaField}, @RequestBody ${ClassName}EditReq ${className}EditReq) {
|
||||
return toAjax(${className}Service.updateById(${ClassName}.editBuild(${pkColumn.javaField},${className}EditReq)));
|
||||
}
|
||||
|
@ -110,11 +112,10 @@ public class ${ClassName}Controller extends BaseController {
|
|||
/**
|
||||
* 删除${functionName}
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('${permissionPrefix}:remove')")
|
||||
@RequiresPermissions("${permissionPrefix}:remove")
|
||||
@Log(title = "${functionName}", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{${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")
|
||||
@Operation(summary = "删除${functionName}", description = "删除${functionName}")
|
||||
public Result<String> remove(@PathVariable List<${pkColumn.javaType}> ${pkColumn.javaField}s) {
|
||||
return toAjax(${className}Service.removeBatchByIds(${pkColumn.javaField}s));
|
||||
}
|
||||
|
|
|
@ -3,23 +3,26 @@ package ${packageName}.domain;
|
|||
#foreach ($import in $importList)
|
||||
import ${import};
|
||||
#end
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.muyu.common.core.annotation.Excel;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import java.io.Serial;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
import io.swagger.annotations.*;
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import ${packageName}.domain.req.${ClassName}QueryReq;
|
||||
import ${packageName}.domain.req.${ClassName}SaveReq;
|
||||
import ${packageName}.domain.req.${ClassName}EditReq;
|
||||
#if($table.crud)
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import com.muyu.common.core.web.domain.BaseEntity;
|
||||
#elseif($table.tree)
|
||||
import com.ruoyi.common.core.domain.TreeEntity;
|
||||
import com.muyu.common.core.web.domain.TreeEntity;
|
||||
#end
|
||||
|
||||
/**
|
||||
|
@ -39,9 +42,9 @@ import com.ruoyi.common.core.domain.TreeEntity;
|
|||
@AllArgsConstructor
|
||||
@TableName("${tableName}")
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ApiModel(value = "${ClassName}", description = "${functionName}")
|
||||
@Schema(description = "${functionName}")
|
||||
public class ${ClassName} extends ${Entity} {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
#foreach ($column in $columns)
|
||||
|
@ -70,30 +73,11 @@ public class ${ClassName} extends ${Entity} {
|
|||
#if($column.isRequired == '1')
|
||||
#set($comment=', required = true')
|
||||
#end
|
||||
@ApiModelProperty(name = "${column.columnComment}", value = "${column.columnComment}"$comment)
|
||||
@Schema(name = "${column.columnComment}")
|
||||
private $column.javaType $column.javaField;
|
||||
|
||||
#end
|
||||
#end
|
||||
/**
|
||||
* 查询构造器
|
||||
*/
|
||||
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();
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加构造器
|
||||
|
|
|
@ -3,20 +3,13 @@ package ${packageName}.domain.req;
|
|||
#foreach ($import in $importList)
|
||||
import ${import};
|
||||
#end
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
import io.swagger.annotations.*;
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
#if($table.crud)
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
#elseif($table.tree)
|
||||
import com.ruoyi.common.core.domain.TreeEntity;
|
||||
#end
|
||||
|
||||
/**
|
||||
* ${functionName}对象 ${tableName}
|
||||
|
@ -33,10 +26,8 @@ import com.ruoyi.common.core.domain.TreeEntity;
|
|||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel(value = "${ClassName}EditReq", description = "${functionName}")
|
||||
public class ${ClassName}EditReq extends ${Entity} {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
@Schema(description = "${functionName}")
|
||||
public class ${ClassName}EditReq {
|
||||
|
||||
#foreach ($column in $columns)
|
||||
#if(!$table.isSuperColumn($column.javaField))
|
||||
|
@ -57,7 +48,7 @@ public class ${ClassName}EditReq extends ${Entity} {
|
|||
#if($column.isRequired == '1')
|
||||
#set($isRequired=', required = true')
|
||||
#end
|
||||
@ApiModelProperty(name = "${column.columnComment}", value = "${column.columnComment}"$isRequired)
|
||||
@Schema(name = "${column.columnComment}" $isRequired)
|
||||
private $column.javaType $column.javaField;
|
||||
|
||||
#end
|
||||
|
|
|
@ -3,20 +3,16 @@ package ${packageName}.domain.req;
|
|||
#foreach ($import in $importList)
|
||||
import ${import};
|
||||
#end
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.muyu.common.core.web.page.PageReq;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
import io.swagger.annotations.*;
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
#if($table.crud)
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
#elseif($table.tree)
|
||||
import com.ruoyi.common.core.domain.TreeEntity;
|
||||
#end
|
||||
import ${packageName}.domain.model.${ClassName}QueryModel;
|
||||
|
||||
/**
|
||||
* ${functionName}对象 ${tableName}
|
||||
|
@ -33,10 +29,9 @@ import com.ruoyi.common.core.domain.TreeEntity;
|
|||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel(value = "${ClassName}QueryReq", description = "${functionName}")
|
||||
public class ${ClassName}QueryReq extends ${Entity} {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
@Schema(description = "${functionName}")
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class ${ClassName}QueryReq extends PageReq {
|
||||
|
||||
#foreach ($column in $columns)
|
||||
#if(!$table.isSuperColumn($column.javaField))
|
||||
|
@ -56,7 +51,7 @@ public class ${ClassName}QueryReq extends ${Entity} {
|
|||
#if($column.javaField == $pkColumn.javaField)
|
||||
@TableId(value = "${pkColumn.javaField}",type = IdType.AUTO)
|
||||
#end
|
||||
@ApiModelProperty(name = "${column.columnComment}", value = "${column.columnComment}")
|
||||
@Schema(name = "${column.columnComment}")
|
||||
private $column.javaType $column.javaField;
|
||||
|
||||
#end
|
||||
|
|
|
@ -0,0 +1,73 @@
|
|||
package ${packageName}.domain.req;
|
||||
|
||||
#foreach ($import in $importList)
|
||||
import ${import};
|
||||
#end
|
||||
import com.muyu.common.core.web.model.QueryModel;
|
||||
import com.muyu.system.domain.req.StudentInfoQueryReq;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
/**
|
||||
* ${functionName}对象 ${tableName}
|
||||
*
|
||||
* @author ${author}
|
||||
* @date ${datetime}
|
||||
*/
|
||||
#if($table.crud)
|
||||
#set($Entity="BaseEntity")
|
||||
#elseif($table.tree)
|
||||
#set($Entity="TreeEntity")
|
||||
#end
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Schema(description = "${functionName}")
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class ${ClassName}QueryModel extends QueryModel<${ClassName}QueryModel> {
|
||||
|
||||
#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
|
||||
#end
|
||||
@Schema(name = "${column.columnComment}")
|
||||
private $column.javaType $column.javaField;
|
||||
|
||||
#end
|
||||
#end
|
||||
#end
|
||||
/**
|
||||
* 查询构造器
|
||||
*/
|
||||
public static ${ClassName}QueryModel reqBuild( ${ClassName}QueryReq queryReq){
|
||||
${ClassName}QueryModel ${className}QueryModel = ${ClassName}QueryModel.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}(queryReq.get${AttrName}())
|
||||
#end
|
||||
#end
|
||||
#end
|
||||
.build();
|
||||
${className}QueryModel.domainBuild(queryReq);
|
||||
return ${className}QueryModel;
|
||||
}
|
||||
}
|
|
@ -3,20 +3,13 @@ package ${packageName}.domain.req;
|
|||
#foreach ($import in $importList)
|
||||
import ${import};
|
||||
#end
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
import io.swagger.annotations.*;
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
#if($table.crud)
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
#elseif($table.tree)
|
||||
import com.ruoyi.common.core.domain.TreeEntity;
|
||||
#end
|
||||
|
||||
/**
|
||||
* ${functionName}对象 ${tableName}
|
||||
|
@ -33,10 +26,9 @@ import com.ruoyi.common.core.domain.TreeEntity;
|
|||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel(value = "${ClassName}SaveReq", description = "${functionName}")
|
||||
public class ${ClassName}SaveReq extends ${Entity} {
|
||||
@Schema(description = "${functionName}")
|
||||
public class ${ClassName}SaveReq{
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
#foreach ($column in $columns)
|
||||
#if(!$table.isSuperColumn($column.javaField))
|
||||
|
@ -58,7 +50,7 @@ public class ${ClassName}SaveReq extends ${Entity} {
|
|||
#if($column.isRequired == '1')
|
||||
#set($isRequired=', required = true')
|
||||
#end
|
||||
@ApiModelProperty(name = "${column.columnComment}", value = "${column.columnComment}"$isRequired)
|
||||
@Schema(name = "${column.columnComment}" $isRequired)
|
||||
private $column.javaType $column.javaField;
|
||||
|
||||
#end
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
package ${packageName}.service;
|
||||
|
||||
import java.util.List;
|
||||
import com.muyu.common.core.web.page.PageQueryModel;
|
||||
import ${packageName}.domain.${ClassName};
|
||||
import ${packageName}.domain.model.${ClassName}QueryModel;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
|
@ -14,9 +16,17 @@ public interface ${ClassName}Service extends IService<${ClassName}> {
|
|||
/**
|
||||
* 查询${functionName}列表
|
||||
*
|
||||
* @param ${className} ${functionName}
|
||||
* @param pageQueryModel ${functionName}
|
||||
* @return ${functionName}集合
|
||||
*/
|
||||
public List<${ClassName}> list(${ClassName} ${className});
|
||||
public PageQueryModel<${ClassName}> pageQuery(${ClassName}QueryModel pageQueryModel);
|
||||
|
||||
/**
|
||||
* 查询${functionName}列表
|
||||
*
|
||||
* @param pageQueryModel ${functionName}
|
||||
* @return ${functionName}集合
|
||||
*/
|
||||
public List<${ClassName}> exportList(${ClassName} pageQueryModel);
|
||||
|
||||
}
|
||||
|
|
|
@ -2,15 +2,17 @@ package ${packageName}.service.impl;
|
|||
|
||||
import java.util.List;
|
||||
|
||||
import com.ruoyi.common.utils.ObjUtils;
|
||||
import com.ruoyi.common.utils.StringUtils;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.muyu.common.core.web.page.PageQueryModel;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
import ${packageName}.mapper.${ClassName}Mapper;
|
||||
import ${packageName}.domain.${ClassName};
|
||||
import ${packageName}.service.${ClassName}Service;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import ${packageName}.mapper.${ClassName}Mapper;
|
||||
import ${packageName}.domain.${ClassName};
|
||||
import ${packageName}.domain.model.${ClassName}QueryModel;
|
||||
import ${packageName}.service.${ClassName}Service;
|
||||
|
||||
/**
|
||||
* ${functionName}Service业务层处理
|
||||
|
@ -25,53 +27,70 @@ public class ${ClassName}ServiceImpl extends ServiceImpl<${ClassName}Mapper, ${C
|
|||
/**
|
||||
* 查询${functionName}列表
|
||||
*
|
||||
* @param ${className} ${functionName}
|
||||
* @param pageQueryModel ${functionName}
|
||||
* @return ${functionName}
|
||||
*/
|
||||
@Override
|
||||
public List<${ClassName}> list(${ClassName} ${className}) {
|
||||
public PageQueryModel<${ClassName}> pageQuery(${ClassName}QueryModel pageQueryModel) {
|
||||
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)})
|
||||
|
||||
#if($column.query)
|
||||
#if($queryType == "EQ")
|
||||
if (ObjUtils.notNull(${className}.get$JavaField())){
|
||||
queryWrapper.eq(${ClassName}::get$JavaField, ${className}.get$JavaField());
|
||||
}
|
||||
queryWrapper.eq(ObjectUtil.isNotNull(pageQueryModel.get$JavaField()), ${ClassName}::get$JavaField, pageQueryModel.get$JavaField());
|
||||
#elseif($queryType == "NE")
|
||||
if (ObjUtils.notNull(${className}.get$JavaField())){
|
||||
queryWrapper.ne(${ClassName}::get$JavaField, ${className}.get$JavaField());
|
||||
}
|
||||
queryWrapper.ne(ObjectUtil.isNotNull(pageQueryModel.get$JavaField()),${ClassName}::get$JavaField, pageQueryModel.get$JavaField());
|
||||
#elseif($queryType == "GT")
|
||||
if (ObjUtils.notNull(${className}.get$JavaField())){
|
||||
queryWrapper.gt(${ClassName}::get$JavaField, ${className}.get$JavaField());
|
||||
}
|
||||
queryWrapper.gt(ObjectUtil.isNotNull(pageQueryModel.get$JavaField()),${ClassName}::get$JavaField, pageQueryModel.get$JavaField());
|
||||
#elseif($queryType == "GTE")
|
||||
if (ObjUtils.notNull(${className}.get$JavaField())){
|
||||
queryWrapper.ge(${ClassName}::get$JavaField, ${className}.get$JavaField());
|
||||
}
|
||||
queryWrapper.ge(ObjectUtil.isNotNull(pageQueryModel.get$JavaField()),${ClassName}::get$JavaField, pageQueryModel.get$JavaField());
|
||||
#elseif($queryType == "LT")
|
||||
if (ObjUtils.notNull(${className}.get$JavaField())){
|
||||
queryWrapper.lt()${ClassName}::get$JavaField, ${className}.get$JavaField());
|
||||
}
|
||||
queryWrapper.lt(ObjectUtil.isNotNull(pageQueryModel.get$JavaField()),${ClassName}::get$JavaField, pageQueryModel.get$JavaField());
|
||||
#elseif($queryType == "LTE")
|
||||
if (ObjUtils.notNull(${className}.get$JavaField())){
|
||||
queryWrapper.le()${ClassName}::get$JavaField, ${className}.get$JavaField());
|
||||
}
|
||||
queryWrapper.le(ObjectUtil.isNotNull(pageQueryModel.get$JavaField()), ${ClassName}::get$JavaField, pageQueryModel.get$JavaField());
|
||||
#elseif($queryType == "LIKE")
|
||||
if (ObjUtils.notNull(${className}.get$JavaField())){
|
||||
queryWrapper.like(${ClassName}::get$JavaField, ${className}.get$JavaField());
|
||||
}
|
||||
queryWrapper.like(ObjectUtil.isNotNull(pageQueryModel.get$JavaField()),${ClassName}::get$JavaField, pageQueryModel.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);
|
||||
queryWrapper.between(ObjectUtil.isNotNull(pageQueryModel.get$JavaField()),${ClassName}::get$JavaField, pageQueryModel.getBeginParam("$JavaField"),pageQueryModel.getEndParam("$JavaField"));
|
||||
#end #end #end
|
||||
Page<${ClassName}> page = this.page(pageQueryModel.buildPage(), queryWrapper);
|
||||
return PageQueryModel.of(page);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 查询${functionName}列表
|
||||
*
|
||||
* @param pageQueryModel ${functionName}
|
||||
* @return ${functionName}
|
||||
*/
|
||||
@Override
|
||||
public List<${ClassName}> exportList(${ClassName} pageQueryModel) {
|
||||
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)})
|
||||
#if($column.query)
|
||||
#if($queryType == "EQ")
|
||||
queryWrapper.eq(ObjectUtil.isNotNull(pageQueryModel.get$JavaField()), ${ClassName}::get$JavaField, pageQueryModel.get$JavaField());
|
||||
#elseif($queryType == "NE")
|
||||
queryWrapper.ne(ObjectUtil.isNotNull(pageQueryModel.get$JavaField()),${ClassName}::get$JavaField, pageQueryModel.get$JavaField());
|
||||
#elseif($queryType == "GT")
|
||||
queryWrapper.gt(ObjectUtil.isNotNull(pageQueryModel.get$JavaField()),${ClassName}::get$JavaField, pageQueryModel.get$JavaField());
|
||||
#elseif($queryType == "GTE")
|
||||
queryWrapper.ge(ObjectUtil.isNotNull(pageQueryModel.get$JavaField()),${ClassName}::get$JavaField, pageQueryModel.get$JavaField());
|
||||
#elseif($queryType == "LT")
|
||||
queryWrapper.lt(ObjectUtil.isNotNull(pageQueryModel.get$JavaField()),${ClassName}::get$JavaField, pageQueryModel.get$JavaField());
|
||||
#elseif($queryType == "LTE")
|
||||
queryWrapper.le(ObjectUtil.isNotNull(pageQueryModel.get$JavaField()), ${ClassName}::get$JavaField, pageQueryModel.get$JavaField());
|
||||
#elseif($queryType == "LIKE")
|
||||
queryWrapper.like(ObjectUtil.isNotNull(pageQueryModel.get$JavaField()),${ClassName}::get$JavaField, pageQueryModel.get$JavaField());
|
||||
#elseif($queryType == "BETWEEN")
|
||||
queryWrapper.between(ObjectUtil.isNotNull(pageQueryModel.get$JavaField()),${ClassName}::get$JavaField, pageQueryModel.getBeginParam("$JavaField"),pageQueryModel.getEndParam("$JavaField"));
|
||||
#end #end #end
|
||||
return this.list(queryWrapper);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -4,7 +4,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="${packageName}.mapper.${ClassName}Mapper">
|
||||
|
||||
<resultMap type="${ClassName}" id="${ClassName}Result">
|
||||
<resultMap type="${packageName}.domain.${ClassName}" id="${ClassName}Result">
|
||||
#foreach ($column in $columns)
|
||||
<result property="${column.javaField}" column="${column.columnName}" />
|
||||
#end
|
||||
|
@ -21,115 +21,4 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
#end
|
||||
</resultMap>
|
||||
#end
|
||||
|
||||
<sql id="select${ClassName}Vo">
|
||||
select#foreach($column in $columns) $column.columnName#if($foreach.count != $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}By${pkColumn.capJavaField}" parameterType="${pkColumn.javaType}" resultMap="#if($table.sub)${ClassName}${subClassName}Result#else${ClassName}Result#end">
|
||||
#if($table.crud || $table.tree)
|
||||
<include refid="select${ClassName}Vo"/>
|
||||
where ${pkColumn.columnName} = #{${pkColumn.javaField}}
|
||||
#elseif($table.sub)
|
||||
select#foreach($column in $columns) a.$column.columnName#if($foreach.count != $columns.size()),#end#end,
|
||||
#foreach($column in $subTable.columns) b.$column.columnName as sub_$column.columnName#if($foreach.count != $subTable.columns.size()),#end#end
|
||||
|
||||
from ${tableName} a
|
||||
left join ${subTableName} b on b.${subTableFkName} = a.${pkColumn.columnName}
|
||||
where a.${pkColumn.columnName} = #{${pkColumn.javaField}}
|
||||
#end
|
||||
</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' && $column.required) 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' && $column.required) 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' && $column.required) and $column.javaField != ''#end">$column.columnName = #{$column.javaField},</if>
|
||||
#end
|
||||
#end
|
||||
</trim>
|
||||
where ${pkColumn.columnName} = #{${pkColumn.javaField}}
|
||||
</update>
|
||||
|
||||
<delete id="delete${ClassName}By${pkColumn.capJavaField}" parameterType="${pkColumn.javaType}">
|
||||
delete from ${tableName} where ${pkColumn.columnName} = #{${pkColumn.javaField}}
|
||||
</delete>
|
||||
|
||||
<delete id="delete${ClassName}By${pkColumn.capJavaField}s" parameterType="String">
|
||||
delete from ${tableName} where ${pkColumn.columnName} in
|
||||
<foreach item="${pkColumn.javaField}" collection="array" open="(" separator="," close=")">
|
||||
#{${pkColumn.javaField}}
|
||||
</foreach>
|
||||
</delete>
|
||||
#if($table.sub)
|
||||
|
||||
<delete id="delete${subClassName}By${subTableFkClassName}s" parameterType="String">
|
||||
delete from ${subTableName} where ${subTableFkName} in
|
||||
<foreach item="${subTableFkclassName}" collection="array" open="(" separator="," close=")">
|
||||
#{${subTableFkclassName}}
|
||||
</foreach>
|
||||
</delete>
|
||||
|
||||
<delete id="delete${subClassName}By${subTableFkClassName}" parameterType="${pkColumn.javaType}">
|
||||
delete from ${subTableName} where ${subTableFkName} = #{${subTableFkclassName}}
|
||||
</delete>
|
||||
|
||||
<insert id="batch${subClassName}">
|
||||
insert into ${subTableName}(#foreach($column in $subTable.columns) $column.columnName#if($foreach.count != $subTable.columns.size()),#end#end) values
|
||||
<foreach item="item" index="index" collection="list" separator=",">
|
||||
(#foreach($column in $subTable.columns) #{item.$column.javaField}#if($foreach.count != $subTable.columns.size()),#end#end)
|
||||
</foreach>
|
||||
</insert>
|
||||
#end
|
||||
</mapper>
|
Loading…
Reference in New Issue