diff --git a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/media/api/IHttpMediaService.java b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/media/api/IHttpMediaService.java index b100045..84dbc89 100644 --- a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/media/api/IHttpMediaService.java +++ b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/media/api/IHttpMediaService.java @@ -70,9 +70,10 @@ public interface IHttpMediaService { value = "{\"code\": 0, \"message\":\"success\", \"data\": \"media/DJI_20220831151616_0004_W_Waypoint4.JPG\"}" )}))) - @PostMapping(PREFIX + "/workspaces/{workspace_id}/upload-callback") + @PostMapping(PREFIX + "/workspaces/{workspace_id}/{pro_id}/upload-callback") HttpResultResponse mediaUploadCallback( @PathVariable(name = "workspace_id") String workspaceId, + @PathVariable(name = "pro_id") Integer proId, @Valid @RequestBody MediaUploadCallbackRequest request, HttpServletRequest req, HttpServletResponse rsp); diff --git a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/wayline/api/IHttpWaylineService.java b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/wayline/api/IHttpWaylineService.java index e757ffb..202bd4f 100644 --- a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/wayline/api/IHttpWaylineService.java +++ b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/wayline/api/IHttpWaylineService.java @@ -48,7 +48,7 @@ public interface IHttpWaylineService { HttpResultResponse> getWaylineList( @Valid @ParameterObject GetWaylineListRequest request, @PathVariable(name = "workspace_id") String workspaceId, - @PathVariable(name = "proId") Integer proId, + @PathVariable(name = "proIds") List proIds, HttpServletRequest req, HttpServletResponse rsp); /** diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/manage/controller/DeviceController.java b/dk-modules/sample/src/main/java/org/dromara/sample/manage/controller/DeviceController.java index bd1ca9d..55c84df 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/manage/controller/DeviceController.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/manage/controller/DeviceController.java @@ -9,6 +9,7 @@ import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.web.core.BaseController; import org.dromara.sample.manage.model.dto.DeviceDTO; import org.dromara.sample.manage.model.dto.DeviceFirmwareUpgradeDTO; +import org.dromara.sample.manage.service.IDeviceProService; import org.dromara.sample.manage.service.IDeviceService; import com.fasterxml.jackson.databind.JsonNode; import lombok.extern.slf4j.Slf4j; @@ -37,6 +38,10 @@ public class DeviceController { @Autowired private IDeviceService deviceService; + + @Autowired + private IDeviceProService deviceProService; + /** * 获取一个工作区中所有在线设备的列表。 * Get the topology list of all online devices in one workspace. @@ -45,8 +50,8 @@ public class DeviceController { @GetMapping("/{workspace_id}/devices") @Operation(summary = "获取一个工作区中所有在线设备的列表。", description = "获取一个工作区中所有在线设备的列表") public HttpResultResponse> getDevices(@PathVariable("workspace_id") String workspaceId, - @RequestParam(name = "nickname",required = false) String nickname) { - List devicesList = deviceService.getDevicesTopoForWeb(workspaceId,nickname); + @RequestParam(name = "nickname",required = false) String nickname,@RequestParam(name = "proIds",required = false) List proIds) { + List devicesList = deviceService.getDevicesTopoForWeb(workspaceId,nickname,proIds); return HttpResultResponse.success(devicesList); } @@ -92,9 +97,9 @@ public class DeviceController { @PathVariable("workspace_id") String workspaceId,Integer domain, @RequestParam(name = "pageNum", defaultValue = "1") Long page, @RequestParam(name = "pageSize", defaultValue = "10") Long pageSize, - @RequestParam(name = "nickname",required = false) String nickname) { - LoginUser loginUser = LoginHelper.getLoginUser(); - PaginationData devices = deviceService.getBoundDevicesWithDomain(workspaceId, page, pageSize, domain,nickname); + @RequestParam(name = "nickname",required = false) String nickname, + @RequestParam(name = "proIds",required = false) List proIds) { + PaginationData devices = deviceService.getBoundDevicesWithDomain(workspaceId, page, pageSize, domain,nickname,proIds); return HttpResultResponse.success(devices); } diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/manage/model/param/DeviceQueryParam.java b/dk-modules/sample/src/main/java/org/dromara/sample/manage/model/param/DeviceQueryParam.java index 301b75c..55368e4 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/manage/model/param/DeviceQueryParam.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/manage/model/param/DeviceQueryParam.java @@ -35,4 +35,6 @@ public class DeviceQueryParam { private boolean orderBy; private boolean isAsc; + + private List proIds; } diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/IDeviceService.java b/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/IDeviceService.java index 0e046a6..93ce040 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/IDeviceService.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/IDeviceService.java @@ -66,7 +66,7 @@ public interface IDeviceService { * @param workspaceId * @return */ - List getDevicesTopoForWeb(String workspaceId,String nickname); + List getDevicesTopoForWeb(String workspaceId,String nickname,List proIds); /** @@ -129,7 +129,7 @@ public interface IDeviceService { * @param domain * @return */ - PaginationData getBoundDevicesWithDomain(String workspaceId, Long page, Long pageSize, Integer domain,String nickname); + PaginationData getBoundDevicesWithDomain(String workspaceId, Long page, Long pageSize, Integer domain,String nickname,List proIds); /** * Unbind device base on device's sn. diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/DeviceServiceImpl.java b/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/DeviceServiceImpl.java index 5bbdf41..c305431 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/DeviceServiceImpl.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/DeviceServiceImpl.java @@ -1,5 +1,6 @@ package org.dromara.sample.manage.service.impl; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; @@ -220,21 +221,24 @@ public class DeviceServiceImpl implements IDeviceService { } }) .eq(StringUtils.hasText(param.getWorkspaceId()), - DeviceEntity::getWorkspaceId, param.getWorkspaceId()) + DeviceEntity::getWorkspaceId, param.getWorkspaceId()) .eq(param.getBoundStatus() != null, DeviceEntity::getBoundStatus, param.getBoundStatus()) + .in(ObjectUtil.isAllNotEmpty(param.getProIds()), + DeviceEntity::getDeviceSn, param.getProIds()) .orderBy(param.isOrderBy(), - param.isAsc(), DeviceEntity::getId)) + param.isAsc(), DeviceEntity::getId)) .stream() .map(this::deviceEntityConvertToDTO) .collect(Collectors.toList()); } @Override - public List getDevicesTopoForWeb(String workspaceId,String nickname) { + public List getDevicesTopoForWeb(String workspaceId,String nickname,List proIds) { List devicesList = this.getDevicesByParams( DeviceQueryParam.builder() .workspaceId(workspaceId) .domains(List.of(DeviceDomainEnum.REMOTER_CONTROL.getDomain(), DeviceDomainEnum.DOCK.getDomain())) + .proIds(proIds) .build()); devicesList.stream() @@ -494,13 +498,14 @@ public class DeviceServiceImpl implements IDeviceService { @Override public PaginationData getBoundDevicesWithDomain(String workspaceId, Long page, - Long pageSize, Integer domain,String nickname) { + Long pageSize, Integer domain,String nickname,List proIds) { Page pagination = mapper.selectPage(new Page<>(page, pageSize), new LambdaQueryWrapper() .eq(DeviceEntity::getDomain, domain) .eq(DeviceEntity::getWorkspaceId, workspaceId) .eq(DeviceEntity::getBoundStatus, true) + .in(ObjectUtil.isAllNotEmpty(proIds),DeviceEntity::getProId, proIds) .eq(org.dromara.common.core.utils.StringUtils.isNotEmpty(nickname),DeviceEntity::getNickname,nickname)); List devicesList = pagination.getRecords().stream().map(this::deviceEntityConvertToDTO) .peek(device -> { diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/media/controller/FileController.java b/dk-modules/sample/src/main/java/org/dromara/sample/media/controller/FileController.java index d53add4..3690ef8 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/media/controller/FileController.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/media/controller/FileController.java @@ -14,6 +14,7 @@ import org.springframework.web.bind.annotation.*; import java.io.IOException; import java.net.URL; +import java.util.List; /** * @author sean @@ -37,8 +38,9 @@ public class FileController { @Operation(summary = "根据工作区id获取此工作区中所有媒体文件的信息。", description = "根据工作区id获取此工作区中所有媒体文件的信息。") public HttpResultResponse> getFilesList(@RequestParam(name = "pageNum", defaultValue = "1") Long page, @RequestParam(name = "pageSize", defaultValue = "10") Long pageSize, - @PathVariable(name = "workspace_id") String workspaceId) { - PaginationData filesList = fileService.getMediaFilesPaginationByWorkspaceId(workspaceId, page, pageSize); + @PathVariable(name = "workspace_id") String workspaceId, + @RequestParam(name = "deviceSns",required = false) List proIds) { + PaginationData filesList = fileService.getMediaFilesPaginationByWorkspaceId(workspaceId, page, pageSize,proIds); return HttpResultResponse.success(filesList); } diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/media/controller/MediaController.java b/dk-modules/sample/src/main/java/org/dromara/sample/media/controller/MediaController.java index 2fe3bc4..69dabb9 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/media/controller/MediaController.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/media/controller/MediaController.java @@ -52,8 +52,8 @@ public class MediaController implements IHttpMediaService { * @return */ @Override - public HttpResultResponse mediaUploadCallback( String workspaceId, @Valid MediaUploadCallbackRequest request, HttpServletRequest req, HttpServletResponse rsp) { - mediaService.saveMediaFile(workspaceId, request); + public HttpResultResponse mediaUploadCallback( String workspaceId,Integer proId, @Valid MediaUploadCallbackRequest request, HttpServletRequest req, HttpServletResponse rsp) { + mediaService.saveMediaFile(workspaceId, request,proId); return HttpResultResponse.success(request.getObjectKey()); } diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/media/model/MediaFileEntity.java b/dk-modules/sample/src/main/java/org/dromara/sample/media/model/MediaFileEntity.java index ac9b1b0..7d53fc8 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/media/model/MediaFileEntity.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/media/model/MediaFileEntity.java @@ -111,5 +111,8 @@ public class MediaFileEntity implements Serializable { @TableField("file_index") private Integer fileIndex; + + @TableField("pro_id") + private Integer proId; } diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/media/service/IFileService.java b/dk-modules/sample/src/main/java/org/dromara/sample/media/service/IFileService.java index 62adab9..e3edb3a 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/media/service/IFileService.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/media/service/IFileService.java @@ -29,7 +29,7 @@ public interface IFileService { * @param file * @return */ - Integer saveFile(String workspaceId, MediaUploadCallbackRequest file, FlightTask flightTask); + Integer saveFile(String workspaceId, MediaUploadCallbackRequest file, FlightTask flightTask,Integer proId); /** * Query information about all files in this workspace based on the workspace id. @@ -45,7 +45,7 @@ public interface IFileService { * @param pageSize * @return */ - PaginationData getMediaFilesPaginationByWorkspaceId(String workspaceId, long page, long pageSize); + PaginationData getMediaFilesPaginationByWorkspaceId(String workspaceId, long page, long pageSize,List proIds); /** * Get the download address of the file. diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/media/service/IMediaService.java b/dk-modules/sample/src/main/java/org/dromara/sample/media/service/IMediaService.java index 141039d..51940dc 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/media/service/IMediaService.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/media/service/IMediaService.java @@ -26,7 +26,7 @@ public interface IMediaService { * @param file * @return */ - Integer saveMediaFile(String workspaceId, MediaUploadCallbackRequest file); + Integer saveMediaFile(String workspaceId, MediaUploadCallbackRequest file,Integer proId); /** * Query tiny fingerprints about all files in this workspace based on the workspace id. diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/media/service/impl/FileServiceImpl.java b/dk-modules/sample/src/main/java/org/dromara/sample/media/service/impl/FileServiceImpl.java index 4b20be7..ca5f149 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/media/service/impl/FileServiceImpl.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/media/service/impl/FileServiceImpl.java @@ -1,6 +1,7 @@ package org.dromara.sample.media.service.impl; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -65,10 +66,11 @@ public class FileServiceImpl implements IFileService { } @Override - public Integer saveFile(String workspaceId, MediaUploadCallbackRequest file, FlightTask flightTask) { + public Integer saveFile(String workspaceId, MediaUploadCallbackRequest file, FlightTask flightTask,Integer proId) { MediaFileEntity fileEntity = this.fileUploadConvertToEntity(file,flightTask); fileEntity.setWorkspaceId(workspaceId); fileEntity.setFileId(UUID.randomUUID().toString()); + fileEntity.setProId(proId); fileEntity.setFileType(fileEntity.getFileName().substring( fileEntity.getFileName().lastIndexOf(".")+1)); if(!fileEntity.getFileType().equals("DAT")){ fileEntity.setFileStatus(fileEntity.getFileName().substring( fileEntity.getFileName().lastIndexOf("_")+1, fileEntity.getFileName().lastIndexOf("."))); @@ -91,11 +93,12 @@ public class FileServiceImpl implements IFileService { } @Override - public PaginationData getMediaFilesPaginationByWorkspaceId(String workspaceId, long page, long pageSize) { + public PaginationData getMediaFilesPaginationByWorkspaceId(String workspaceId, long page, long pageSize,List proIds) { Page pageData = mapper.selectPage( new Page(page, pageSize), new LambdaQueryWrapper() .eq(MediaFileEntity::getWorkspaceId, workspaceId) + .in(ObjectUtil.isAllNotEmpty(proIds),MediaFileEntity::getProId, proIds) .orderByDesc(MediaFileEntity::getId)); List records = pageData.getRecords() .stream() diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/media/service/impl/MediaServiceImpl.java b/dk-modules/sample/src/main/java/org/dromara/sample/media/service/impl/MediaServiceImpl.java index f6bcd97..366e7d7 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/media/service/impl/MediaServiceImpl.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/media/service/impl/MediaServiceImpl.java @@ -79,8 +79,8 @@ public class MediaServiceImpl extends AbstractMediaService implements IMediaServ } @Override - public Integer saveMediaFile(String workspaceId, MediaUploadCallbackRequest file) { - return fileService.saveFile(workspaceId, file,null); + public Integer saveMediaFile(String workspaceId, MediaUploadCallbackRequest file,Integer proId) { + return fileService.saveFile(workspaceId, file,null,proId); } @Override @@ -180,7 +180,7 @@ public class MediaServiceImpl extends AbstractMediaService implements IMediaServ file.setPath(objectKey.substring(Optional.of(objectKey.indexOf("mediafile")) .filter(index -> index > 0).map(index -> index++).orElse(0), objectKey.lastIndexOf("/"))); - Integer fileFlag = fileService.saveFile(device.getWorkspaceId(), file, callback.getFlightTask()); + Integer fileFlag = fileService.saveFile(device.getWorkspaceId(), file, callback.getFlightTask(),device.getProId()); return fileFlag> 0; } diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/controller/WaylineFileController.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/controller/WaylineFileController.java index 06fc063..7330e19 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/controller/WaylineFileController.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/controller/WaylineFileController.java @@ -92,8 +92,8 @@ public class WaylineFileController implements IHttpWaylineService { * @return */ @Override - public HttpResultResponse> getWaylineList(@Valid GetWaylineListRequest request,String workspaceId, Integer proId, HttpServletRequest req, HttpServletResponse rsp) { - PaginationData data = waylineFileService.getWaylinesByParam(workspaceId, request,proId); + public HttpResultResponse> getWaylineList(@Valid GetWaylineListRequest request,String workspaceId,List proIds, HttpServletRequest req, HttpServletResponse rsp) { + PaginationData data = waylineFileService.getWaylinesByParam(workspaceId, request,proIds); return HttpResultResponse.success(data); } diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/controller/WaylineJobController.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/controller/WaylineJobController.java index c7df333..9493605 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/controller/WaylineJobController.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/controller/WaylineJobController.java @@ -24,6 +24,8 @@ import java.sql.SQLException; import java.util.List; import java.util.Set; +import static org.bouncycastle.asn1.x500.style.RFC4519Style.name; + /** * @author sean @@ -67,8 +69,9 @@ public class WaylineJobController { @Operation(summary = "查询工作区中的所有作业。。", description = "查询工作区中的所有作业。") public HttpResultResponse> getJobs(@RequestParam(name = "pageNum", defaultValue = "1") Long page, @RequestParam(name = "pageSize", defaultValue = "10") Long pageSize, - @PathVariable(name = "workspace_id") String workspaceId) { - PaginationData data = waylineJobService.getJobsByWorkspaceId(workspaceId, page, pageSize); + @PathVariable(name = "workspace_id") String workspaceId, + @RequestParam(name = "proId") List proIds) { + PaginationData data = waylineJobService.getJobsByWorkspaceId(workspaceId, page, pageSize,proIds); return HttpResultResponse.success(data); } diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/WaylineJobDTO.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/WaylineJobDTO.java index 9973b5a..62e97e5 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/WaylineJobDTO.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/WaylineJobDTO.java @@ -10,6 +10,7 @@ import org.dromara.common.sdk.cloudapi.wayline.TaskTypeEnum; import org.dromara.common.sdk.cloudapi.wayline.WaylineTypeEnum; import java.time.LocalDateTime; +import java.util.List; /** * @author sean @@ -72,4 +73,6 @@ public class WaylineJobDTO { private String parentId; private ProgressExtBreakPoint breakPoint; + + private List proIds; } diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/entity/WaylineJobEntity.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/entity/WaylineJobEntity.java index 315eb97..853646f 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/entity/WaylineJobEntity.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/entity/WaylineJobEntity.java @@ -94,4 +94,7 @@ public class WaylineJobEntity implements Serializable { @TableField(exist = false) private ProgressExtBreakPoint breakPoint; + + @TableField("pro_id") + private Integer proId; } diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IWaylineFileService.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IWaylineFileService.java index be48b66..5c491c2 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IWaylineFileService.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IWaylineFileService.java @@ -26,7 +26,7 @@ public interface IWaylineFileService { * @param param * @return */ - PaginationData getWaylinesByParam(String workspaceId, GetWaylineListRequest param,Integer proId); + PaginationData getWaylinesByParam(String workspaceId, GetWaylineListRequest param,List proIds); /** * Query the information of this wayline file according to the wayline file id. diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IWaylineJobService.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IWaylineJobService.java index a0c6492..5b4d88b 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IWaylineJobService.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IWaylineJobService.java @@ -69,7 +69,7 @@ public interface IWaylineJobService { * @param pageSize * @return */ - PaginationData getJobsByWorkspaceId(String workspaceId, long page, long pageSize); + PaginationData getJobsByWorkspaceId(String workspaceId, long page, long pageSize,List proIds); /** * Query the wayline execution status of the dock. diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/WaylineFileServiceImpl.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/WaylineFileServiceImpl.java index ffa5203..cdb0df0 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/WaylineFileServiceImpl.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/WaylineFileServiceImpl.java @@ -78,7 +78,7 @@ public class WaylineFileServiceImpl implements IWaylineFileService { private RemoteFileService remoteFileService; @Override - public PaginationData getWaylinesByParam(String workspaceId, GetWaylineListRequest param,Integer proId) { + public PaginationData getWaylinesByParam(String workspaceId, GetWaylineListRequest param,List proIds) { // Paging Query Page page = mapper.selectPage( new Page(param.getPage(), param.getPageSize()), @@ -103,8 +103,8 @@ public class WaylineFileServiceImpl implements IWaylineFileService { .and(ObjectUtil.isNotEmpty(param.getDeviceSn()), wrapper -> { wrapper.eq(WaylineFileEntity::getDeviceSn, param.getDeviceSn()).or(); }) - .and(proId != null, wrapper -> { - wrapper.in(WaylineFileEntity::getProId, proId).or(); + .and(ObjectUtil.isAllNotEmpty(proIds), wrapper -> { + wrapper.in(WaylineFileEntity::getProId, proIds).or(); }) .like(Objects.nonNull(param.getKey()), WaylineFileEntity::getName, param.getKey()) // There is a risk of SQL injection diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/WaylineJobServiceImpl.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/WaylineJobServiceImpl.java index 23d1c98..e504d0f 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/WaylineJobServiceImpl.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/WaylineJobServiceImpl.java @@ -1,5 +1,6 @@ package org.dromara.sample.wayline.service.impl; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -154,11 +155,13 @@ public class WaylineJobServiceImpl implements IWaylineJobService { } @Override - public PaginationData getJobsByWorkspaceId(String workspaceId, long page, long pageSize) { + public PaginationData getJobsByWorkspaceId(String workspaceId, long page, long pageSize,List proIds) { Page pageData = mapper.selectPage( new Page(page, pageSize), new LambdaQueryWrapper() .eq(WaylineJobEntity::getWorkspaceId, workspaceId) + .eq(WaylineJobEntity::getWorkspaceId, workspaceId) + .in(ObjectUtil.isAllNotEmpty(proIds),WaylineJobEntity::getProId,proIds) .orderByDesc(WaylineJobEntity::getId)); List records = pageData.getRecords() .stream()