疯狂的狮子li
2021-07-21 85376e8d6e56a7b7588dc556303ec16d45c5a7f3
add 演示Demo增加自定义分页接口案例
已修改7个文件
83 ■■■■ 文件已修改
ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestDemoController.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/TestDemoMapper.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-demo/src/main/java/com/ruoyi/demo/service/ITestDemoService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-demo/src/main/java/com/ruoyi/demo/service/impl/TestDemoServiceImpl.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-demo/src/main/resources/mapper/demo/TestDemoMapper.xml 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-ui/src/api/demo/demo.js 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-ui/src/views/demo/demo/index.vue 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestDemoController.java
@@ -48,7 +48,17 @@
        return iTestDemoService.queryPageList(bo);
    }
    /**
    /**
     * 自定义分页查询
     */
    @ApiOperation("自定义分页查询")
    @PreAuthorize("@ss.hasPermi('demo:demo:list')")
    @GetMapping("/page")
    public TableDataInfo<TestDemoVo> page(@Validated TestDemoQueryBo bo) {
        return iTestDemoService.customPageList(bo);
    }
    /**
     * 导出测试单表列表
     */
    @ApiOperation("导出测试单表列表")
ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/TestDemoMapper.java
@@ -1,9 +1,13 @@
package com.ruoyi.demo.mapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache;
import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
import com.ruoyi.demo.domain.TestDemo;
import com.ruoyi.demo.vo.TestDemoVo;
import org.apache.ibatis.annotations.CacheNamespace;
import org.apache.ibatis.annotations.Param;
/**
 * 测试单表Mapper接口
@@ -15,4 +19,6 @@
@CacheNamespace(implementation = MybatisPlusRedisCache.class, eviction = MybatisPlusRedisCache.class)
public interface TestDemoMapper extends BaseMapperPlus<TestDemo> {
    Page<TestDemoVo> customPageList(@Param("page") Page<TestDemo> page, @Param("ew") Wrapper<TestDemo> wrapper);
}
ruoyi-demo/src/main/java/com/ruoyi/demo/service/ITestDemoService.java
@@ -1,12 +1,12 @@
package com.ruoyi.demo.service;
import com.ruoyi.demo.domain.TestDemo;
import com.ruoyi.demo.vo.TestDemoVo;
import com.ruoyi.demo.bo.TestDemoQueryBo;
import com.ruoyi.demo.bo.TestDemoAddBo;
import com.ruoyi.demo.bo.TestDemoEditBo;
import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.demo.bo.TestDemoAddBo;
import com.ruoyi.demo.bo.TestDemoEditBo;
import com.ruoyi.demo.bo.TestDemoQueryBo;
import com.ruoyi.demo.domain.TestDemo;
import com.ruoyi.demo.vo.TestDemoVo;
import java.util.Collection;
import java.util.List;
@@ -29,7 +29,13 @@
     * 查询列表
     */
    TableDataInfo<TestDemoVo> queryPageList(TestDemoQueryBo bo);
    /**
     * 自定义分页查询
     */
    TableDataInfo<TestDemoVo> customPageList(TestDemoQueryBo bo);
    /**
     * 查询列表
     */
    List<TestDemoVo> queryList(TestDemoQueryBo bo);
ruoyi-demo/src/main/java/com/ruoyi/demo/service/impl/TestDemoServiceImpl.java
@@ -4,6 +4,7 @@
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.annotation.DataScope;
import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
import com.ruoyi.common.core.page.PagePlus;
@@ -43,6 +44,16 @@
        return PageUtils.buildDataInfo(result);
    }
    /**
     * 自定义分页查询
     */
    @DataScope(isUser = true)
    @Override
    public TableDataInfo<TestDemoVo> customPageList(TestDemoQueryBo bo) {
        Page<TestDemoVo> result = baseMapper.customPageList(PageUtils.buildPage(), buildQueryWrapper(bo));
        return PageUtils.buildDataInfo(result);
    }
    @DataScope(isUser = true)
    @Override
    public List<TestDemoVo> queryList(TestDemoQueryBo bo) {
ruoyi-demo/src/main/resources/mapper/demo/TestDemoMapper.xml
@@ -18,6 +18,9 @@
        <result property="updateBy" column="update_by"/>
        <result property="delFlag" column="del_flag"/>
    </resultMap>
    <select id="customPageList" resultType="com.ruoyi.demo.vo.TestDemoVo">
        SELECT * FROM test_demo ${ew.customSqlSegment}
    </select>
</mapper>
</mapper>
ruoyi-ui/src/api/demo/demo.js
@@ -9,6 +9,15 @@
  })
}
// 自定义分页接口
export function pageDemo(query) {
  return request({
    url: '/demo/demo/page',
    method: 'get',
    params: query
  })
}
// 查询测试单表详细
export function getDemo(id) {
  return request({
@@ -50,4 +59,4 @@
    method: 'get',
    params: query
  })
}
}
ruoyi-ui/src/views/demo/demo/index.vue
@@ -33,6 +33,7 @@
      </el-form-item>
      <el-form-item>
        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
        <el-button type="primary" icon="el-icon-search" size="mini" @click="handlePage">搜索(自定义分页接口)</el-button>
        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
      </el-form-item>
    </el-form>
@@ -168,7 +169,7 @@
</template>
<script>
import { listDemo, getDemo, delDemo, addDemo, updateDemo, exportDemo } from "@/api/demo/demo";
import { listDemo, pageDemo, getDemo, delDemo, addDemo, updateDemo, exportDemo } from "@/api/demo/demo";
export default {
  name: "Demo",
@@ -239,6 +240,20 @@
        this.loading = false;
      });
    },
    /** 自定义分页查询 */
    getPage() {
      this.loading = true;
      this.queryParams.params = {};
      if (null != this.daterangeCreateTime && '' != this.daterangeCreateTime) {
        this.queryParams.params["beginCreateTime"] = this.daterangeCreateTime[0];
        this.queryParams.params["endCreateTime"] = this.daterangeCreateTime[1];
      }
      pageDemo(this.queryParams).then(response => {
        this.demoList = response.rows;
        this.total = response.total;
        this.loading = false;
      });
    },
    // 取消按钮
    cancel() {
      this.open = false;
@@ -267,6 +282,11 @@
      this.queryParams.pageNum = 1;
      this.getList();
    },
    /** 搜索按钮操作 */
    handlePage() {
      this.queryParams.pageNum = 1;
      this.getPage();
    },
    /** 重置按钮操作 */
    resetQuery() {
      this.daterangeCreateTime = [];