Explorar el Código

修复export与list结果不统一的问题

wangxianl hace 4 años
padre
commit
a514330db3

+ 8 - 95
ruoyi-generator/src/main/resources/vm/java/controller.java.vm

@@ -1,12 +1,8 @@
 package ${packageName}.controller;
 
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-
 import java.util.List;
 import java.util.Arrays;
 
-import com.ruoyi.common.utils.StringUtils;
 import lombok.RequiredArgsConstructor;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -49,98 +45,14 @@ public class ${ClassName}Controller extends BaseController {
     @PreAuthorize("@ss.hasPermi('${permissionPrefix}:list')")
     @GetMapping("/list")
 #if($table.crud)
-    public TableDataInfo list(${ClassName} ${className})
-    {
+    public TableDataInfo list(${ClassName} ${className}) {
         startPage();
-        LambdaQueryWrapper<${ClassName}> lqw = Wrappers.lambdaQuery();
-#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);
+        List<${ClassName}> list = i${ClassName}Service.queryList(${className});
         return getDataTable(list);
     }
 #elseif($table.tree)
     public AjaxResult list(${ClassName} ${className}) {
-        LambdaQueryWrapper<${ClassName}> lqw = Wrappers.lambdaQuery();
-        List<${ClassName}> list = i${ClassName}Service.list(lqw);
+        List<${ClassName}> list = i${ClassName}Service.queryList(${className});
         return AjaxResult.success(list);
     }
 #end
@@ -152,9 +64,8 @@ public class ${ClassName}Controller extends BaseController {
     @Log(title = "${functionName}" , businessType = BusinessType.EXPORT)
     @GetMapping("/export" )
     public AjaxResult export(${ClassName} ${className}) {
-        LambdaQueryWrapper<${ClassName}> lqw = Wrappers.lambdaQuery(${className});
-        List<${ClassName}> list = i${ClassName}Service.list(lqw);
-        ExcelUtil<${ClassName}> util = new ExcelUtil<${ClassName}>(${ClassName}. class);
+        List<${ClassName}> list = i${ClassName}Service.queryList(${className});
+        ExcelUtil<${ClassName}> util = new ExcelUtil<${ClassName}>(${ClassName}.class);
         return util.exportExcel(list, "${businessName}" );
     }
 
@@ -174,7 +85,9 @@ public class ${ClassName}Controller extends BaseController {
     @Log(title = "${functionName}" , businessType = BusinessType.INSERT)
     @PostMapping
     public AjaxResult add(@RequestBody ${ClassName} ${className}) {
-        return toAjax(i${ClassName}Service.save(${className}) ? 1 : 0);
+        AjaxResult result = toAjax(i${ClassName}Service.save(${className}) ? 1 : 0);
+        result.put("data",${className});
+        return result;
     }
 
     /**

+ 5 - 0
ruoyi-generator/src/main/resources/vm/java/service.java.vm

@@ -2,6 +2,7 @@ package ${packageName}.service;
 
 import ${packageName}.domain.${ClassName};
 import com.baomidou.mybatisplus.extension.service.IService;
+import java.util.List;
 
 /**
  * ${functionName}Service接口
@@ -11,4 +12,8 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface I${ClassName}Service extends IService<${ClassName}> {
 
+    /**
+     * 查询列表
+     */
+    List<${ClassName}> queryList(${ClassName} ${className});
 }

+ 91 - 0
ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm

@@ -2,10 +2,15 @@ package ${packageName}.service.impl;
 
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import org.apache.commons.lang3.StringUtils;
 import ${packageName}.mapper.${ClassName}Mapper;
 import ${packageName}.domain.${ClassName};
 import ${packageName}.service.I${ClassName}Service;
 
+import java.util.List;
+
 /**
  * ${functionName}Service业务层处理
  *
@@ -15,4 +20,90 @@ import ${packageName}.service.I${ClassName}Service;
 @Service
 public class ${ClassName}ServiceImpl extends ServiceImpl<${ClassName}Mapper, ${ClassName}> implements I${ClassName}Service {
 
+    @Override
+    public List<${ClassName}> queryList(${ClassName} ${className}) {
+        LambdaQueryWrapper<${ClassName}> lqw = Wrappers.lambdaQuery();
+#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
+        return this.list(lqw);
+    }
 }