Search in sources :

Example 91 with Page

use of com.baomidou.mybatisplus.extension.plugins.pagination.Page in project dolphinscheduler by apache.

the class ResourcesService method queryResourceListPaging.

/**
 * query resources list paging
 *
 * @param loginUser login user
 * @param type resource type
 * @param searchVal search value
 * @param pageNo page number
 * @param pageSize page size
 * @return resource list page
 */
public Map<String, Object> queryResourceListPaging(User loginUser, int direcotryId, ResourceType type, String searchVal, Integer pageNo, Integer pageSize) {
    HashMap<String, Object> result = new HashMap<>(5);
    Page<Resource> page = new Page(pageNo, pageSize);
    int userId = loginUser.getId();
    if (isAdmin(loginUser)) {
        userId = 0;
    }
    if (direcotryId != -1) {
        Resource directory = resourcesMapper.selectById(direcotryId);
        if (directory == null) {
            putMsg(result, Status.RESOURCE_NOT_EXIST);
            return result;
        }
    }
    IPage<Resource> resourceIPage = resourcesMapper.queryResourcePaging(page, userId, direcotryId, type.ordinal(), searchVal);
    PageInfo pageInfo = new PageInfo<Resource>(pageNo, pageSize);
    pageInfo.setTotalCount((int) resourceIPage.getTotal());
    pageInfo.setLists(resourceIPage.getRecords());
    result.put(Constants.DATA_LIST, pageInfo);
    putMsg(result, Status.SUCCESS);
    return result;
}
Also used : PageInfo(org.apache.dolphinscheduler.api.utils.PageInfo) Page(com.baomidou.mybatisplus.extension.plugins.pagination.Page) IPage(com.baomidou.mybatisplus.core.metadata.IPage)

Example 92 with Page

use of com.baomidou.mybatisplus.extension.plugins.pagination.Page in project dolphinscheduler by apache.

the class TaskInstanceService method queryTaskListPaging.

/**
 * query task list by project, process instance, task name, task start time, task end time, task status, keyword paging
 *
 * @param loginUser login user
 * @param projectName project name
 * @param processInstanceId process instance id
 * @param searchVal search value
 * @param taskName task name
 * @param stateType state type
 * @param host host
 * @param startDate start time
 * @param endDate end time
 * @param pageNo page number
 * @param pageSize page size
 * @return task list page
 */
public Map<String, Object> queryTaskListPaging(User loginUser, String projectName, Integer processInstanceId, String taskName, String executorName, String startDate, String endDate, String searchVal, ExecutionStatus stateType, String host, Integer pageNo, Integer pageSize) {
    Map<String, Object> result = new HashMap<>(5);
    Project project = projectMapper.queryByName(projectName);
    Map<String, Object> checkResult = projectService.checkProjectAndAuth(loginUser, project, projectName);
    Status status = (Status) checkResult.get(Constants.STATUS);
    if (status != Status.SUCCESS) {
        return checkResult;
    }
    int[] statusArray = null;
    if (stateType != null) {
        statusArray = new int[] { stateType.ordinal() };
    }
    Date start = null;
    Date end = null;
    try {
        if (StringUtils.isNotEmpty(startDate)) {
            start = DateUtils.getScheduleDate(startDate);
        }
        if (StringUtils.isNotEmpty(endDate)) {
            end = DateUtils.getScheduleDate(endDate);
        }
    } catch (Exception e) {
        result.put(Constants.STATUS, Status.REQUEST_PARAMS_NOT_VALID_ERROR);
        result.put(Constants.MSG, MessageFormat.format(Status.REQUEST_PARAMS_NOT_VALID_ERROR.getMsg(), "startDate,endDate"));
        return result;
    }
    Page<TaskInstance> page = new Page(pageNo, pageSize);
    PageInfo pageInfo = new PageInfo<TaskInstance>(pageNo, pageSize);
    int executorId = usersService.getUserIdByName(executorName);
    IPage<TaskInstance> taskInstanceIPage = taskInstanceMapper.queryTaskInstanceListPaging(page, project.getId(), processInstanceId, searchVal, taskName, executorId, statusArray, host, start, end);
    Set<String> exclusionSet = new HashSet<>();
    exclusionSet.add(Constants.CLASS);
    exclusionSet.add("taskJson");
    List<TaskInstance> taskInstanceList = taskInstanceIPage.getRecords();
    for (TaskInstance taskInstance : taskInstanceList) {
        taskInstance.setDuration(DateUtils.differSec(taskInstance.getStartTime(), taskInstance.getEndTime()));
        User executor = usersService.queryUser(taskInstance.getExecutorId());
        if (null != executor) {
            taskInstance.setExecutorName(executor.getUserName());
        }
    }
    pageInfo.setTotalCount((int) taskInstanceIPage.getTotal());
    pageInfo.setLists(CollectionUtils.getListByExclusion(taskInstanceIPage.getRecords(), exclusionSet));
    result.put(Constants.DATA_LIST, pageInfo);
    putMsg(result, Status.SUCCESS);
    return result;
}
Also used : Status(org.apache.dolphinscheduler.api.enums.Status) ExecutionStatus(org.apache.dolphinscheduler.common.enums.ExecutionStatus) TaskInstance(org.apache.dolphinscheduler.dao.entity.TaskInstance) User(org.apache.dolphinscheduler.dao.entity.User) Page(com.baomidou.mybatisplus.extension.plugins.pagination.Page) IPage(com.baomidou.mybatisplus.core.metadata.IPage) Project(org.apache.dolphinscheduler.dao.entity.Project) PageInfo(org.apache.dolphinscheduler.api.utils.PageInfo)

Example 93 with Page

use of com.baomidou.mybatisplus.extension.plugins.pagination.Page in project tutorials-java by Artister.

the class PaginationTest method tests1.

@Test
public void tests1() {
    System.out.println("----- baseMapper 自带分页 ------");
    Page<User> page = new Page<>(1, 5);
    IPage<User> userIPage = mapper.selectPage(page, new QueryWrapper<User>().eq("age", 20).eq("name", "Jack"));
    assertThat(page).isSameAs(userIPage);
    System.out.println("总条数 ------> " + userIPage.getTotal());
    System.out.println("当前页数 ------> " + userIPage.getCurrent());
    System.out.println("当前每页显示数 ------> " + userIPage.getSize());
    print(userIPage.getRecords());
    System.out.println("----- baseMapper 自带分页 ------");
    System.out.println("json 正反序列化 begin");
    String json = JSON.toJSONString(page);
    Page<User> page1 = JSON.parseObject(json, TypeBuilder.newInstance(Page.class).addTypeParam(User.class).build());
    print(page1.getRecords());
    System.out.println("json 正反序列化 end");
    System.out.println("----- 自定义 XML 分页 ------");
    MyPage<User> myPage = new MyPage<User>(1, 5).setSelectInt(20).setSelectStr("Jack");
    ParamSome paramSome = new ParamSome(20, "Jack");
    MyPage<User> userMyPage = mapper.mySelectPage(myPage, paramSome);
    assertThat(myPage).isSameAs(userMyPage);
    System.out.println("总条数 ------> " + userMyPage.getTotal());
    System.out.println("当前页数 ------> " + userMyPage.getCurrent());
    System.out.println("当前每页显示数 ------> " + userMyPage.getSize());
    print(userMyPage.getRecords());
    System.out.println("----- 自定义 XML 分页 ------");
}
Also used : User(com.baomidou.mybatisplus.samples.pagination.entity.User) ParamSome(com.baomidou.mybatisplus.samples.pagination.model.ParamSome) MyPage(com.baomidou.mybatisplus.samples.pagination.model.MyPage) Page(com.baomidou.mybatisplus.extension.plugins.pagination.Page) IPage(com.baomidou.mybatisplus.core.metadata.IPage) MyPage(com.baomidou.mybatisplus.samples.pagination.model.MyPage) Test(org.junit.Test) SpringBootTest(org.springframework.boot.test.context.SpringBootTest)

Example 94 with Page

use of com.baomidou.mybatisplus.extension.plugins.pagination.Page in project tutorials-java by Artister.

the class DeluxeTest method testPage.

@Test
public void testPage() {
    System.out.println("------ 自定义 xml 分页 ------");
    UserPage selectPage = new UserPage(1, 5).setSelectInt(20);
    UserPage userPage = mapper.selectUserPage(selectPage);
    Assert.assertSame(userPage, selectPage);
    System.out.println("总条数 ------> " + userPage.getTotal());
    System.out.println("当前页数 ------> " + userPage.getCurrent());
    System.out.println("当前每页显示数 ------> " + userPage.getSize());
    print(userPage.getRecords());
    System.out.println("------ baseMapper 自带分页 ------");
    Page<User> page = new Page<>(1, 5);
    IPage<User> userIPage = mapper.selectPage(page, new QueryWrapper<User>().eq("age", 20));
    Assert.assertSame(userIPage, page);
    System.out.println("总条数 ------> " + userIPage.getTotal());
    System.out.println("当前页数 ------> " + userIPage.getCurrent());
    System.out.println("当前每页显示数 ------> " + userIPage.getSize());
    print(userIPage.getRecords());
}
Also used : User(com.baomidou.mybatisplus.samples.deluxe.entity.User) QueryWrapper(com.baomidou.mybatisplus.core.conditions.query.QueryWrapper) Page(com.baomidou.mybatisplus.extension.plugins.pagination.Page) UserPage(com.baomidou.mybatisplus.samples.deluxe.model.UserPage) IPage(com.baomidou.mybatisplus.core.metadata.IPage) UserPage(com.baomidou.mybatisplus.samples.deluxe.model.UserPage) Test(org.junit.Test) SpringBootTest(org.springframework.boot.test.context.SpringBootTest)

Example 95 with Page

use of com.baomidou.mybatisplus.extension.plugins.pagination.Page in project LarkMidTable by birdLark.

the class BaseForm method getPlusPagingQueryEntity.

/**
 * 解析出mybatis plus分页查询参数
 */
public Page getPlusPagingQueryEntity() {
    Page page = new Page();
    // 如果无current,默认返回1000条数据
    page.setCurrent(this.getPageNo());
    page.setSize(this.getPageSize());
    if (ObjectUtil.isNotNull(this.get("ifCount"))) {
        page.setSearchCount(BooleanUtil.toBoolean(this.getString("ifCount")));
    } else {
        // 默认给true
        page.setSearchCount(true);
    }
    return page;
}
Also used : Page(com.baomidou.mybatisplus.extension.plugins.pagination.Page)

Aggregations

Page (com.baomidou.mybatisplus.extension.plugins.pagination.Page)239 IPage (com.baomidou.mybatisplus.core.metadata.IPage)171 QueryWrapper (com.baomidou.mybatisplus.core.conditions.query.QueryWrapper)62 ApiOperation (io.swagger.annotations.ApiOperation)38 ArrayList (java.util.ArrayList)29 LoginUser (org.jeecg.common.system.vo.LoginUser)26 Test (org.junit.Test)24 SpringBootTest (org.springframework.boot.test.context.SpringBootTest)22 RequiresPermissions (org.apache.shiro.authz.annotation.RequiresPermissions)19 LambdaQueryWrapper (com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper)17 JSONObject (com.alibaba.fastjson.JSONObject)15 PageInfo (org.apache.dolphinscheduler.api.utils.PageInfo)13 Result (org.jeecg.common.api.vo.Result)12 User (org.apache.dolphinscheduler.dao.entity.User)11 OrderItem (com.baomidou.mybatisplus.core.metadata.OrderItem)9 java.util (java.util)9 HashMap (java.util.HashMap)9 Project (org.apache.dolphinscheduler.dao.entity.Project)9 Service (org.springframework.stereotype.Service)9 IOException (java.io.IOException)8