From 6a68227f6750e6f930e0f6d06712f137d25c6cb9 Mon Sep 17 00:00:00 2001 From: dongzeliang <2746733890@qq.com> Date: Wed, 11 Oct 2023 22:04:47 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E7=94=9F=E6=88=90=E5=99=A8?= =?UTF-8?q?=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ruoyi/generator/domain/GenTable.java | 199 ++---------------- .../ruoyi/generator/util/VelocityUtils.java | 16 +- .../main/resources/vm/java/controller.java.vm | 17 +- .../src/main/resources/vm/java/domain.java.vm | 67 +++++- .../src/main/resources/vm/java/edit.java.vm | 74 +++++++ .../src/main/resources/vm/java/query.java.vm | 65 ++++++ .../src/main/resources/vm/java/save.java.vm | 74 +++++++ .../src/main/resources/vm/js/api.js.vm | 2 +- .../book/controller/BookInfoController.java | 19 +- .../java/com/ruoyi/book/domain/BookInfo.java | 29 ++- .../book/domain/req/BookInfoEditReq.java | 40 ++++ .../book/domain/req/BookInfoQueryReq.java | 40 ++++ .../book/domain/req/BookInfoSaveReq.java | 40 ++++ .../ruoyi/book/service/BookInfoService.java | 3 +- .../service/impl/BookInfoServiceImpl.java | 2 +- .../com/ruoyi/system/domain/BookInfo.java | 46 ---- 16 files changed, 480 insertions(+), 253 deletions(-) create mode 100644 ruoyi-generator/src/main/resources/vm/java/edit.java.vm create mode 100644 ruoyi-generator/src/main/resources/vm/java/query.java.vm create mode 100644 ruoyi-generator/src/main/resources/vm/java/save.java.vm create mode 100644 ruoyi-system/src/main/java/com/ruoyi/book/domain/req/BookInfoEditReq.java create mode 100644 ruoyi-system/src/main/java/com/ruoyi/book/domain/req/BookInfoQueryReq.java create mode 100644 ruoyi-system/src/main/java/com/ruoyi/book/domain/req/BookInfoSaveReq.java delete mode 100644 ruoyi-system/src/main/java/com/ruoyi/system/domain/BookInfo.java diff --git a/ruoyi-generator/src/main/java/com/ruoyi/generator/domain/GenTable.java b/ruoyi-generator/src/main/java/com/ruoyi/generator/domain/GenTable.java index 15257ee..055033a 100644 --- a/ruoyi-generator/src/main/java/com/ruoyi/generator/domain/GenTable.java +++ b/ruoyi-generator/src/main/java/com/ruoyi/generator/domain/GenTable.java @@ -3,6 +3,11 @@ package com.ruoyi.generator.domain; import com.ruoyi.common.constant.GenConstants; import com.ruoyi.common.core.domain.BaseEntity; import com.ruoyi.common.utils.StringUtils; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; import org.apache.commons.lang3.ArrayUtils; import javax.validation.Valid; @@ -14,6 +19,11 @@ import java.util.List; * * @author ruoyi */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) public class GenTable extends BaseEntity { private static final long serialVersionUID = 1L; @@ -141,6 +151,11 @@ public class GenTable extends BaseEntity { */ private String parentMenuName; + /** + * 备注 + */ + private String remark; + public static boolean isSub (String tplCategory) { return tplCategory != null && StringUtils.equals(GenConstants.TPL_SUB, tplCategory); } @@ -161,190 +176,6 @@ public class GenTable extends BaseEntity { return StringUtils.equalsAnyIgnoreCase(javaField, GenConstants.BASE_ENTITY); } - public Long getTableId () { - return tableId; - } - - public void setTableId (Long tableId) { - this.tableId = tableId; - } - - public String getTableName () { - return tableName; - } - - public void setTableName (String tableName) { - this.tableName = tableName; - } - - public String getTableComment () { - return tableComment; - } - - public void setTableComment (String tableComment) { - this.tableComment = tableComment; - } - - public String getSubTableName () { - return subTableName; - } - - public void setSubTableName (String subTableName) { - this.subTableName = subTableName; - } - - public String getSubTableFkName () { - return subTableFkName; - } - - public void setSubTableFkName (String subTableFkName) { - this.subTableFkName = subTableFkName; - } - - public String getClassName () { - return className; - } - - public void setClassName (String className) { - this.className = className; - } - - public String getTplCategory () { - return tplCategory; - } - - public void setTplCategory (String tplCategory) { - this.tplCategory = tplCategory; - } - - public String getPackageName () { - return packageName; - } - - public void setPackageName (String packageName) { - this.packageName = packageName; - } - - public String getModuleName () { - return moduleName; - } - - public void setModuleName (String moduleName) { - this.moduleName = moduleName; - } - - public String getBusinessName () { - return businessName; - } - - public void setBusinessName (String businessName) { - this.businessName = businessName; - } - - public String getFunctionName () { - return functionName; - } - - public void setFunctionName (String functionName) { - this.functionName = functionName; - } - - public String getFunctionAuthor () { - return functionAuthor; - } - - public void setFunctionAuthor (String functionAuthor) { - this.functionAuthor = functionAuthor; - } - - public String getGenType () { - return genType; - } - - public void setGenType (String genType) { - this.genType = genType; - } - - public String getGenPath () { - return genPath; - } - - public void setGenPath (String genPath) { - this.genPath = genPath; - } - - public GenTableColumn getPkColumn () { - return pkColumn; - } - - public void setPkColumn (GenTableColumn pkColumn) { - this.pkColumn = pkColumn; - } - - public GenTable getSubTable () { - return subTable; - } - - public void setSubTable (GenTable subTable) { - this.subTable = subTable; - } - - public List getColumns () { - return columns; - } - - public void setColumns (List columns) { - this.columns = columns; - } - - public String getOptions () { - return options; - } - - public void setOptions (String options) { - this.options = options; - } - - public String getTreeCode () { - return treeCode; - } - - public void setTreeCode (String treeCode) { - this.treeCode = treeCode; - } - - public String getTreeParentCode () { - return treeParentCode; - } - - public void setTreeParentCode (String treeParentCode) { - this.treeParentCode = treeParentCode; - } - - public String getTreeName () { - return treeName; - } - - public void setTreeName (String treeName) { - this.treeName = treeName; - } - - public String getParentMenuId () { - return parentMenuId; - } - - public void setParentMenuId (String parentMenuId) { - this.parentMenuId = parentMenuId; - } - - public String getParentMenuName () { - return parentMenuName; - } - - public void setParentMenuName (String parentMenuName) { - this.parentMenuName = parentMenuName; - } - public boolean isSub () { return isSub(this.tplCategory); } diff --git a/ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java b/ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java index 9fcb46b..d79b2e7 100644 --- a/ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java +++ b/ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java @@ -127,10 +127,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"); @@ -167,6 +170,15 @@ public class VelocityUtils { if (template.contains("domain.java.vm")) { fileName = StringUtils.format("{}/domain/{}.java", javaPath, className); } + 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("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")) { diff --git a/ruoyi-generator/src/main/resources/vm/java/controller.java.vm b/ruoyi-generator/src/main/resources/vm/java/controller.java.vm index 1375a31..9af7de3 100644 --- a/ruoyi-generator/src/main/resources/vm/java/controller.java.vm +++ b/ruoyi-generator/src/main/resources/vm/java/controller.java.vm @@ -19,6 +19,9 @@ 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.req.${ClassName}SaveReq; +import ${packageName}.domain.req.${ClassName}EditReq; import ${packageName}.service.${ClassName}Service; import com.ruoyi.common.utils.poi.ExcelUtil; #if($table.crud || $table.sub) @@ -46,9 +49,9 @@ public class ${ClassName}Controller extends BaseController { @PreAuthorize("@ss.hasPermi('${permissionPrefix}:list')") @GetMapping("/list") #if($table.crud || $table.sub) - public Result list(${ClassName} ${className}) { + public Result list(${ClassName}QueryReq ${className}QueryReq) { startPage(); - List<${ClassName}> list = ${className}Service.list(${className}); + List<${ClassName}> list = ${className}Service.list(${ClassName}.queryBuild(${className}QueryReq)); return getDataTable(list); } #elseif($table.tree) @@ -89,8 +92,8 @@ public class ${ClassName}Controller extends BaseController { @Log(title = "${functionName}", businessType = BusinessType.INSERT) @PostMapping @ApiOperation("新增${functionName}") - public Result add(@RequestBody ${ClassName} ${className}) { - return toAjax(${className}Service.save(${className})); + public Result add(@RequestBody ${ClassName}SaveReq ${className}SaveReq) { + return toAjax(${className}Service.save(${ClassName}.saveBuild(${className}SaveReq))); } /** @@ -98,10 +101,10 @@ public class ${ClassName}Controller extends BaseController { */ @PreAuthorize("@ss.hasPermi('${permissionPrefix}:edit')") @Log(title = "${functionName}", businessType = BusinessType.UPDATE) - @PutMapping + @PutMapping("/{${pkColumn.javaField}}") @ApiOperation("修改${functionName}") - public Result edit(@RequestBody ${ClassName} ${className}) { - return toAjax(${className}Service.updateById(${className})); + public Result edit(@PathVariable ${pkColumn.javaType} ${pkColumn.javaField}, @RequestBody ${ClassName}EditReq ${className}EditReq) { + return toAjax(${className}Service.updateById(${ClassName}.editBuild(${pkColumn.javaField},${className}EditReq))); } /** diff --git a/ruoyi-generator/src/main/resources/vm/java/domain.java.vm b/ruoyi-generator/src/main/resources/vm/java/domain.java.vm index fb6a982..f26375d 100644 --- a/ruoyi-generator/src/main/resources/vm/java/domain.java.vm +++ b/ruoyi-generator/src/main/resources/vm/java/domain.java.vm @@ -3,6 +3,7 @@ package ${packageName}.domain; #foreach ($import in $importList) import ${import}; #end +import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; @@ -12,6 +13,9 @@ 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 || $table.sub) import com.ruoyi.common.core.domain.BaseEntity; #elseif($table.tree) @@ -60,7 +64,7 @@ public class ${ClassName} extends ${Entity} { #end #end #if($column.javaField == $pkColumn.javaField) - @TableId(value = "${pkColumn.javaField}",type = IdType.AUTO) + @TableId(value = "${pkColumn.columnName}",type = IdType.AUTO) #end #set($comment='') #if($column.isRequired == '1') @@ -71,4 +75,65 @@ public class ${ClassName} extends ${Entity} { #end #end + /** + * 查询构造器 + */ + public static ${ClassName} queryBuild(${pkColumn.javaType} ${pkColumn.javaField}, ${ClassName}QueryReq ${className}QueryReq){ + return ${ClassName}.builder() + .${pkColumn.javaField}(${pkColumn.javaField}) + #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(); + } + + /** + * 添加构造器 + */ + 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(${ClassName}EditReq ${className}EditReq){ + return ${ClassName}.builder() +#foreach ($column in $columns) + #if($column.isInsert == '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 + .build(); + } + } diff --git a/ruoyi-generator/src/main/resources/vm/java/edit.java.vm b/ruoyi-generator/src/main/resources/vm/java/edit.java.vm new file mode 100644 index 0000000..3c34cf6 --- /dev/null +++ b/ruoyi-generator/src/main/resources/vm/java/edit.java.vm @@ -0,0 +1,74 @@ +package ${packageName}.domain.req; + +#foreach ($import in $importList) +import ${import}; +#end +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.ruoyi.common.annotation.Excel; +#if($table.crud || $table.sub) +import com.ruoyi.common.core.domain.BaseEntity; +#elseif($table.tree) +import com.ruoyi.common.core.domain.TreeEntity; +#end + +/** + * ${functionName}对象 ${tableName} + * + * @author ${author} + * @date ${datetime} + */ +#if($table.crud || $table.sub) + #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($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 + #if($column.javaField == $pkColumn.javaField) + @TableId(value = "${pkColumn.javaField}",type = IdType.AUTO) + #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/ruoyi-generator/src/main/resources/vm/java/query.java.vm b/ruoyi-generator/src/main/resources/vm/java/query.java.vm new file mode 100644 index 0000000..0d51a85 --- /dev/null +++ b/ruoyi-generator/src/main/resources/vm/java/query.java.vm @@ -0,0 +1,65 @@ +package ${packageName}.domain.req; + +#foreach ($import in $importList) +import ${import}; +#end +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.ruoyi.common.annotation.Excel; +#if($table.crud || $table.sub) +import com.ruoyi.common.core.domain.BaseEntity; +#elseif($table.tree) +import com.ruoyi.common.core.domain.TreeEntity; +#end + +/** + * ${functionName}对象 ${tableName} + * + * @author ${author} + * @date ${datetime} + */ +#if($table.crud || $table.sub) +#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/ruoyi-generator/src/main/resources/vm/java/save.java.vm b/ruoyi-generator/src/main/resources/vm/java/save.java.vm new file mode 100644 index 0000000..11bcf47 --- /dev/null +++ b/ruoyi-generator/src/main/resources/vm/java/save.java.vm @@ -0,0 +1,74 @@ +package ${packageName}.domain.req; + +#foreach ($import in $importList) +import ${import}; +#end +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.ruoyi.common.annotation.Excel; +#if($table.crud || $table.sub) +import com.ruoyi.common.core.domain.BaseEntity; +#elseif($table.tree) +import com.ruoyi.common.core.domain.TreeEntity; +#end + +/** + * ${functionName}对象 ${tableName} + * + * @author ${author} + * @date ${datetime} + */ +#if($table.crud || $table.sub) + #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($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 + #if($column.javaField == $pkColumn.javaField) + @TableId(value = "${pkColumn.javaField}",type = IdType.AUTO) + #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/ruoyi-generator/src/main/resources/vm/js/api.js.vm b/ruoyi-generator/src/main/resources/vm/js/api.js.vm index 9295524..9f6bae9 100644 --- a/ruoyi-generator/src/main/resources/vm/js/api.js.vm +++ b/ruoyi-generator/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/ruoyi-system/src/main/java/com/ruoyi/book/controller/BookInfoController.java b/ruoyi-system/src/main/java/com/ruoyi/book/controller/BookInfoController.java index 3dcced4..dcb6539 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/book/controller/BookInfoController.java +++ b/ruoyi-system/src/main/java/com/ruoyi/book/controller/BookInfoController.java @@ -19,6 +19,9 @@ import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.Result; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.book.domain.BookInfo; +import com.ruoyi.book.domain.req.BookInfoQueryReq; +import com.ruoyi.book.domain.req.BookInfoSaveReq; +import com.ruoyi.book.domain.req.BookInfoEditReq; import com.ruoyi.book.service.BookInfoService; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.core.page.TableDataInfo; @@ -27,7 +30,7 @@ import com.ruoyi.common.core.page.TableDataInfo; * 书籍信息Controller * * @author DongZeLiang - * @date 2023-10-10 + * @date 2023-10-11 */ @Api("书籍信息") @RestController @@ -42,9 +45,9 @@ public class BookInfoController extends BaseController { @ApiOperation("获取书籍信息列表") @PreAuthorize("@ss.hasPermi('book:info:list')") @GetMapping("/list") - public Result list(BookInfo bookInfo) { + public Result list(BookInfoQueryReq bookInfoQueryReq) { startPage(); - List list = bookInfoService.list(bookInfo); + List list = bookInfoService.list(BookInfo.queryBuild(bookInfoQueryReq)); return getDataTable(list); } @@ -79,8 +82,8 @@ public class BookInfoController extends BaseController { @Log(title = "书籍信息", businessType = BusinessType.INSERT) @PostMapping @ApiOperation("新增书籍信息") - public Result add(@RequestBody BookInfo bookInfo) { - return toAjax(bookInfoService.save(bookInfo)); + public Result add(@RequestBody BookInfoSaveReq bookInfoSaveReq) { + return toAjax(bookInfoService.save(BookInfo.saveBuild(bookInfoSaveReq))); } /** @@ -90,8 +93,8 @@ public class BookInfoController extends BaseController { @Log(title = "书籍信息", businessType = BusinessType.UPDATE) @PutMapping @ApiOperation("修改书籍信息") - public Result edit(@RequestBody BookInfo bookInfo) { - return toAjax(bookInfoService.updateById(bookInfo)); + public Result edit(@RequestBody BookInfoEditReq bookInfoEditReq) { + return toAjax(bookInfoService.updateById(BookInfo.editBuild(bookInfoEditReq))); } /** @@ -99,7 +102,7 @@ public class BookInfoController extends BaseController { */ @PreAuthorize("@ss.hasPermi('book:info:remove')") @Log(title = "书籍信息", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") + @DeleteMapping("/{ids}") @ApiOperation("删除书籍信息") @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = String.class, example = "1,2,3,4") public Result remove(@PathVariable List ids) { diff --git a/ruoyi-system/src/main/java/com/ruoyi/book/domain/BookInfo.java b/ruoyi-system/src/main/java/com/ruoyi/book/domain/BookInfo.java index 65f70a4..b8d5216 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/book/domain/BookInfo.java +++ b/ruoyi-system/src/main/java/com/ruoyi/book/domain/BookInfo.java @@ -12,13 +12,16 @@ import lombok.AllArgsConstructor; import lombok.experimental.SuperBuilder; import io.swagger.annotations.*; import com.ruoyi.common.annotation.Excel; +import com.ruoyi.book.domain.req.BookInfoQueryReq; +import com.ruoyi.book.domain.req.BookInfoSaveReq; +import com.ruoyi.book.domain.req.BookInfoEditReq; import com.ruoyi.common.core.domain.BaseEntity; /** * 书籍信息对象 book_info * * @author DongZeLiang - * @date 2023-10-10 + * @date 2023-10-11 */ @Data @SuperBuilder @@ -43,7 +46,29 @@ public class BookInfo extends BaseEntity { /** 价格 */ @Excel(name = "价格") - @ApiModelProperty(name = "价格", value = "价格") + @ApiModelProperty(name = "价格", value = "价格", required = true) private BigDecimal price; + + public static BookInfo queryBuild(BookInfoQueryReq bookInfoQueryReq){ + return BookInfo.builder() + .name(bookInfoQueryReq.getName()) + .price(bookInfoQueryReq.getPrice()) + .build(); + } + + public static BookInfo saveBuild(BookInfoSaveReq bookInfoSaveReq){ + return BookInfo.builder() + .name(bookInfoSaveReq.getName()) + .price(bookInfoSaveReq.getPrice()) + .build(); + } + + public static BookInfo editBuild(BookInfoEditReq bookInfoEditReq){ + return BookInfo.builder() + .name(bookInfoEditReq.getName()) + .price(bookInfoEditReq.getPrice()) + .build(); + } + } diff --git a/ruoyi-system/src/main/java/com/ruoyi/book/domain/req/BookInfoEditReq.java b/ruoyi-system/src/main/java/com/ruoyi/book/domain/req/BookInfoEditReq.java new file mode 100644 index 0000000..79a3124 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/book/domain/req/BookInfoEditReq.java @@ -0,0 +1,40 @@ +package com.ruoyi.book.domain.req; + +import java.math.BigDecimal; +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.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 书籍信息对象 book_info + * + * @author DongZeLiang + * @date 2023-10-11 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "BookInfoEditReq", description = "书籍信息") +public class BookInfoEditReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 名称 */ + @Excel(name = "名称") + @ApiModelProperty(name = "名称", value = "名称", required = true) + private String name; + + /** 价格 */ + @Excel(name = "价格") + @ApiModelProperty(name = "价格", value = "价格", required = true) + private BigDecimal price; + +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/book/domain/req/BookInfoQueryReq.java b/ruoyi-system/src/main/java/com/ruoyi/book/domain/req/BookInfoQueryReq.java new file mode 100644 index 0000000..a435b76 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/book/domain/req/BookInfoQueryReq.java @@ -0,0 +1,40 @@ +package com.ruoyi.book.domain.req; + +import java.math.BigDecimal; +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.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 书籍信息对象 book_info + * + * @author DongZeLiang + * @date 2023-10-11 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "BookInfoQueryReq", description = "书籍信息") +public class BookInfoQueryReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 名称 */ + @Excel(name = "名称") + @ApiModelProperty(name = "名称", value = "名称", required = true) + private String name; + + /** 价格 */ + @Excel(name = "价格") + @ApiModelProperty(name = "价格", value = "价格", required = true) + private BigDecimal price; + +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/book/domain/req/BookInfoSaveReq.java b/ruoyi-system/src/main/java/com/ruoyi/book/domain/req/BookInfoSaveReq.java new file mode 100644 index 0000000..60887a0 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/book/domain/req/BookInfoSaveReq.java @@ -0,0 +1,40 @@ +package com.ruoyi.book.domain.req; + +import java.math.BigDecimal; +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.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 书籍信息对象 book_info + * + * @author DongZeLiang + * @date 2023-10-11 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "BookInfoSaveReq", description = "书籍信息") +public class BookInfoSaveReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 名称 */ + @Excel(name = "名称") + @ApiModelProperty(name = "名称", value = "名称", required = true) + private String name; + + /** 价格 */ + @Excel(name = "价格") + @ApiModelProperty(name = "价格", value = "价格", required = true) + private BigDecimal price; + +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/book/service/BookInfoService.java b/ruoyi-system/src/main/java/com/ruoyi/book/service/BookInfoService.java index 07eb45a..1e0ef0f 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/book/service/BookInfoService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/book/service/BookInfoService.java @@ -1,8 +1,9 @@ package com.ruoyi.book.service; import java.util.List; -import com.ruoyi.book.domain.BookInfo; + import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.book.domain.BookInfo; /** * 书籍信息Service接口 diff --git a/ruoyi-system/src/main/java/com/ruoyi/book/service/impl/BookInfoServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/book/service/impl/BookInfoServiceImpl.java index f7dceb7..d1524e9 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/book/service/impl/BookInfoServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/book/service/impl/BookInfoServiceImpl.java @@ -2,10 +2,10 @@ package com.ruoyi.book.service.impl; import java.util.List; +import com.ruoyi.book.domain.BookInfo; import com.ruoyi.common.utils.ObjUtils; import org.springframework.stereotype.Service; import com.ruoyi.book.mapper.BookInfoMapper; -import com.ruoyi.book.domain.BookInfo; import com.ruoyi.book.service.BookInfoService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/domain/BookInfo.java b/ruoyi-system/src/main/java/com/ruoyi/system/domain/BookInfo.java deleted file mode 100644 index 46d6ac8..0000000 --- a/ruoyi-system/src/main/java/com/ruoyi/system/domain/BookInfo.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.ruoyi.system.domain; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * @author DongZl - * @description: 书籍信息 - * @Date 2023-10-7 上午 09:29 - */ -@Data -@Builder -@NoArgsConstructor -@AllArgsConstructor -@TableName("book_info") -public class BookInfo { - /** - * 主键 - */ - @TableId(type = IdType.AUTO) - private Long id; - /** - * 名称 - */ - private String name; - /** - * 价格 - */ - private BigDecimal price; - /** - * 创建人 - */ - private String create_by; - /** - * 创建时间 - */ - private Date create_time; -}