RgvTaskController.java 3.15 KB
package com.huaheng.pc.rgv.controller;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.huaheng.common.utils.StringUtils;
import com.huaheng.common.utils.security.ShiroUtils;
import com.huaheng.framework.aspectj.lang.annotation.Log;
import com.huaheng.framework.aspectj.lang.constant.BusinessType;
import com.huaheng.framework.web.controller.BaseController;
import com.huaheng.framework.web.page.PageDomain;
import com.huaheng.framework.web.page.TableDataInfo;
import com.huaheng.framework.web.page.TableSupport;
import com.huaheng.pc.config.container.service.ContainerService;
import com.huaheng.pc.rgv.domain.RgvTask;
import com.huaheng.pc.rgv.service.RgvService;
import com.huaheng.pc.task.taskDetail.service.TaskDetailService;
import com.huaheng.pc.task.taskHeader.service.TaskHeaderService;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.annotation.Resource;
import java.util.List;

/**
 * RGV任务管理
 */
@Controller
@RequestMapping("/task/rgvTask")
public class RgvTaskController extends BaseController {

    private String prefix = "task/rgvTask";

    @Resource
    private RgvService rgvService;
    @Resource
    private TaskHeaderService taskHeaderService;
    @Resource
    private TaskDetailService taskDetailService;
    @Resource
    private ContainerService containerService;

    @GetMapping()
    public String address() {
        return prefix + "/rgvTask";
    }

    /**
     * 查看RGV任务
     */
    @Log(title = "任务-rgv任务", operating = "查看RGV任务", action = BusinessType.GRANT)
    @PostMapping("/list")
    @ResponseBody
    public TableDataInfo list(RgvTask rgvTask) {
        ShiroUtils.getUser();
        LambdaQueryWrapper<RgvTask> wrapper = Wrappers.lambdaQuery();
        wrapper.eq(StringUtils.isNotEmpty(rgvTask.getContainerCode()), RgvTask::getContainerCode, rgvTask.getContainerCode());
        wrapper.eq(StringUtils.isNotEmpty(rgvTask.getBeginAdress()), RgvTask::getBeginAdress, rgvTask.getBeginAdress());
        wrapper.eq(StringUtils.isNotEmpty(rgvTask.getEndAdress()), RgvTask::getEndAdress, rgvTask.getEndAdress());
        wrapper.orderByDesc(RgvTask::getId);


        PageDomain pageDomain = TableSupport.buildPageRequest();
        Integer pageNum = pageDomain.getPageNum();
        Integer pageSize = pageDomain.getPageSize();
        if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)) {
            /*使用分页查询*/
            Page<RgvTask> page = new Page<>(pageNum, pageSize);
            IPage<RgvTask> iPage = rgvService.page(page, wrapper);
            return getMpDataTable(iPage.getRecords(), iPage.getTotal());
        } else {
            List<RgvTask> list = rgvService.list(wrapper);
            return getDataTable(list);
        }
    }

}