5 files modified
2 files added
| | |
| | | </configuration> |
| | | </plugin> |
| | | </plugins> |
| | | |
| | | <!--配置后才可以扫描到xml文件--> |
| | | <resources> |
| | | <resource> |
| | | <directory>src/main/resources</directory> |
| | | </resource> |
| | | <resource> |
| | | <directory>src/main/java</directory> |
| | | <includes> |
| | | <include>**/*.xml</include> |
| | | </includes> |
| | | </resource> |
| | | </resources> |
| | | </build> |
| | | </project> |
| | |
| | | import com.dji.sample.wayline.model.dto.WaylineJobDTO; |
| | | import com.dji.sample.wayline.model.param.CreateJobParam; |
| | | import com.dji.sample.wayline.model.param.UpdateJobParam; |
| | | import com.dji.sample.wayline.model.param.WaylineJobQueryParam; |
| | | import com.dji.sample.wayline.service.IWaylineJobService; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | |
| | | @GetMapping("/{workspace_id}/jobs") |
| | | public ResponseResult<PaginationData<WaylineJobDTO>> getJobs(@RequestParam(defaultValue = "1") Long page, |
| | | @RequestParam(name = "page_size", defaultValue = "10") Long pageSize, |
| | | @PathVariable(name = "workspace_id") String workspaceId) { |
| | | PaginationData<WaylineJobDTO> data = waylineJobService.getJobsByWorkspaceId(workspaceId, page, pageSize); |
| | | @PathVariable(name = "workspace_id") String workspaceId, WaylineJobQueryParam waylineJobQueryParam){ |
| | | PaginationData<WaylineJobDTO> data = waylineJobService.getJobsByWorkspaceId(workspaceId, page, pageSize,waylineJobQueryParam); |
| | | return ResponseResult.success(data); |
| | | } |
| | | |
| | |
| | | package com.dji.sample.wayline.dao; |
| | | |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.dji.sample.wayline.model.entity.WaylineJobEntity; |
| | | import com.dji.sample.wayline.model.param.WaylineJobQueryParam; |
| | | import org.apache.ibatis.annotations.Param; |
| | | |
| | | /** |
| | | * @author sean |
| | |
| | | * @date 2022/6/1 |
| | | */ |
| | | public interface IWaylineJobMapper extends BaseMapper<WaylineJobEntity> { |
| | | |
| | | Page<WaylineJobEntity> getPage(Page<WaylineJobEntity> waylineJobEntityPage, @Param("queryParam") WaylineJobQueryParam param, @Param("workspaceId") String workspaceId); |
| | | } |
| New file |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
| | | <mapper namespace="com.dji.sample.wayline.dao.IWaylineJobMapper"> |
| | | |
| | | |
| | | <select id="getPage" resultType="com.dji.sample.wayline.model.entity.WaylineJobEntity"> |
| | | |
| | | SELECT job.* FROM wayline_job job |
| | | LEFT JOIN wayline_file file ON job.file_id = file.wayline_id |
| | | WHERE job.workspace_id = #{workspaceId} |
| | | <if test="queryParam.taskType != null and queryParam.taskType!= '' or queryParam.taskType==0 "> |
| | | AND job.task_type = #{queryParam.taskType} |
| | | </if> |
| | | |
| | | <if test="queryParam.name != null and queryParam.name != '' "> |
| | | AND ( (job.name LIKE CONCAT('%',#{queryParam.name},'%'))or(file.name LIKE CONCAT('%',#{queryParam.name},'%')) ) |
| | | </if> |
| | | |
| | | <if test="queryParam.status != null and queryParam.status !='' "> |
| | | AND job.status in |
| | | <foreach collection="queryParam.status.split(',')" item="item" open="(" separator="," close=")"> |
| | | #{item} |
| | | </foreach> |
| | | </if> |
| | | |
| | | <if test="queryParam.startTime !=null and queryParam.endTime !=null"> |
| | | AND DATE_FORMAT(FROM_UNIXTIME(job.begin_time/1000,'%Y-%m-%d'),'%Y-%m-%d') >= DATE_FORMAT(#{queryParam.startTime},'%Y-%m-%d') |
| | | </if> |
| | | |
| | | <if test="queryParam.endTime !=null and queryParam.endTime !=null"> |
| | | AND DATE_FORMAT(FROM_UNIXTIME(job.end_time/1000,'%Y-%m-%d'),'%Y-%m-%d') <= DATE_FORMAT(#{queryParam.endTime},'%Y-%m-%d') |
| | | </if> |
| | | |
| | | <if test="queryParam.dockSn != null and queryParam.dockSn != '' "> |
| | | AND job.dock_sn in |
| | | <foreach collection="queryParam.dockSn.split(',')" item="item" open="(" separator="," close=")"> |
| | | #{item} |
| | | </foreach> |
| | | </if> |
| | | |
| | | </select> |
| | | </mapper> |
| New file |
| | |
| | | package com.dji.sample.wayline.model.param; |
| | | |
| | | import com.dji.sample.wayline.model.enums.WaylineTaskTypeEnum; |
| | | import lombok.AllArgsConstructor; |
| | | import lombok.Builder; |
| | | import lombok.Data; |
| | | import lombok.NoArgsConstructor; |
| | | |
| | | /** |
| | | * 航线计划查询参数 |
| | | */ |
| | | @Data |
| | | @Builder |
| | | @AllArgsConstructor |
| | | @NoArgsConstructor |
| | | public class WaylineJobQueryParam { |
| | | |
| | | /** |
| | | * 状态(逗号分隔字符串) |
| | | */ |
| | | private String status; |
| | | |
| | | /** |
| | | * 航线名或计划名 |
| | | */ |
| | | private String name; |
| | | |
| | | /** |
| | | * 航线计划类型 |
| | | */ |
| | | private Integer taskType; |
| | | |
| | | //开始时间 |
| | | private String startTime; |
| | | |
| | | //结束时间 |
| | | private String endTime; |
| | | |
| | | /** |
| | | * 设备编码 |
| | | */ |
| | | private String dockSn; |
| | | } |
| | |
| | | import com.dji.sample.wayline.model.enums.WaylineJobStatusEnum; |
| | | import com.dji.sample.wayline.model.param.CreateJobParam; |
| | | import com.dji.sample.wayline.model.param.UpdateJobParam; |
| | | import com.dji.sample.wayline.model.param.WaylineJobQueryParam; |
| | | import org.springframework.messaging.MessageHeaders; |
| | | |
| | | import java.sql.SQLException; |
| | |
| | | * @param pageSize |
| | | * @return |
| | | */ |
| | | PaginationData<WaylineJobDTO> getJobsByWorkspaceId(String workspaceId, long page, long pageSize); |
| | | PaginationData<WaylineJobDTO> getJobsByWorkspaceId(String workspaceId, long page, long pageSize, WaylineJobQueryParam waylineJobQueryParam); |
| | | |
| | | /** |
| | | * Process to get interface data of flight mission resources. |
| | |
| | | import com.dji.sample.wayline.model.enums.*; |
| | | import com.dji.sample.wayline.model.param.CreateJobParam; |
| | | import com.dji.sample.wayline.model.param.UpdateJobParam; |
| | | import com.dji.sample.wayline.model.param.WaylineJobQueryParam; |
| | | import com.dji.sample.wayline.service.IWaylineFileService; |
| | | import com.dji.sample.wayline.service.IWaylineJobService; |
| | | import com.dji.sample.wayline.service.IWaylineRedisService; |
| | |
| | | } |
| | | |
| | | @Override |
| | | public PaginationData<WaylineJobDTO> getJobsByWorkspaceId(String workspaceId, long page, long pageSize) { |
| | | Page<WaylineJobEntity> pageData = mapper.selectPage( |
| | | new Page<WaylineJobEntity>(page, pageSize), |
| | | new LambdaQueryWrapper<WaylineJobEntity>() |
| | | .eq(WaylineJobEntity::getWorkspaceId, workspaceId) |
| | | .orderByDesc(WaylineJobEntity::getId)); |
| | | public PaginationData<WaylineJobDTO> getJobsByWorkspaceId(String workspaceId, long page, long pageSize, WaylineJobQueryParam waylineJobQueryParam) { |
| | | // Page<WaylineJobEntity> pageData = mapper.selectPage( |
| | | // new Page<WaylineJobEntity>(page, pageSize), |
| | | // new LambdaQueryWrapper<WaylineJobEntity>() |
| | | // .eq(WaylineJobEntity::getWorkspaceId, workspaceId) |
| | | // .eq(waylineJobDTO.getTaskType() !=null, WaylineJobEntity::getTaskType, waylineJobDTO.getTaskType()) |
| | | // .eq(waylineJobDTO.getStatus()!=null, WaylineJobEntity::getStatus, waylineJobDTO.getStatus()) |
| | | // .like(StringUtils.hasText(waylineJobDTO.getJobName()),WaylineJobEntity::getName,waylineJobDTO.getJobName()) |
| | | // |
| | | // |
| | | // .orderByDesc(WaylineJobEntity::getId)); |
| | | |
| | | Page<WaylineJobEntity> pageData = mapper.getPage(new Page<WaylineJobEntity>(page, pageSize),waylineJobQueryParam,workspaceId); |
| | | |
| | | |
| | | |
| | | List<WaylineJobDTO> records = pageData.getRecords() |
| | | .stream() |
| | | .map(this::entity2Dto) |