fix: runner, pcap, job 接口添加 workspaceId path 参数
This commit is contained in:
@@ -13,33 +13,38 @@ import org.springframework.web.bind.annotation.*;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/api/v1/job")
|
@RequestMapping("/api/v1/{workspaceId}/job")
|
||||||
public class JobController {
|
public class JobController {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private IJobService jobService;
|
private IJobService jobService;
|
||||||
|
|
||||||
@GetMapping("/{id}")
|
@GetMapping("/{id}")
|
||||||
public R detail(@PathVariable("id") String id) {
|
public R detail(@PathVariable String workspaceId,
|
||||||
JobEntity jobEntity = jobService.queryInfo(id);
|
@PathVariable("id") String id) {
|
||||||
|
JobEntity jobEntity = jobService.queryInfo(id, workspaceId);
|
||||||
return R.ok().putData("record", jobEntity);
|
return R.ok().putData("record", jobEntity);
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping
|
@GetMapping
|
||||||
public R list(@RequestParam Map<String, Object> params) {
|
public R list(@PathVariable String workspaceId,
|
||||||
|
@RequestParam Map<String, Object> params) {
|
||||||
T.VerifyUtil.is(params).notNull()
|
T.VerifyUtil.is(params).notNull()
|
||||||
.and(T.MapUtil.getStr(params, "workspaceId")).notEmpty(RCode.WORKSPACE_ID_CANNOT_EMPTY);
|
.and(workspaceId).notEmpty(RCode.WORKSPACE_ID_CANNOT_EMPTY);
|
||||||
|
params.put("workspaceId", workspaceId);
|
||||||
Page page = jobService.queryList(params);
|
Page page = jobService.queryList(params);
|
||||||
return R.ok(page);
|
return R.ok(page);
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping
|
@PostMapping
|
||||||
public R add(@RequestBody JobEntity entity) {
|
public R add(@PathVariable String workspaceId,
|
||||||
|
@RequestBody JobEntity entity) {
|
||||||
T.VerifyUtil.is(entity).notNull()
|
T.VerifyUtil.is(entity).notNull()
|
||||||
.and(entity.getRunnerId()).notEmpty(RCode.RUNNER_ID_CANNOT_EMPTY)
|
.and(entity.getRunnerId()).notEmpty(RCode.RUNNER_ID_CANNOT_EMPTY)
|
||||||
.and(entity.getPackageId()).notEmpty(RCode.PACKAGE_ID_CANNOT_EMPTY)
|
.and(entity.getPackageId()).notEmpty(RCode.PACKAGE_ID_CANNOT_EMPTY)
|
||||||
.and(entity.getWorkspaceId()).notEmpty(RCode.WORKSPACE_ID_CANNOT_EMPTY);
|
.and(workspaceId).notEmpty(RCode.WORKSPACE_ID_CANNOT_EMPTY);
|
||||||
|
|
||||||
|
entity.setWorkspaceId(workspaceId);
|
||||||
JobEntity jobEntity = jobService.saveJob(entity);
|
JobEntity jobEntity = jobService.saveJob(entity);
|
||||||
return R.ok().putData("id", jobEntity.getId());
|
return R.ok().putData("id", jobEntity.getId());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ import java.util.List;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/api/v1/pcap")
|
@RequestMapping("/api/v1/{workspaceId}/pcap")
|
||||||
public class PcapController {
|
public class PcapController {
|
||||||
|
|
||||||
private static final Log log = Log.get();
|
private static final Log log = Log.get();
|
||||||
@@ -31,16 +31,19 @@ public class PcapController {
|
|||||||
private IPcapService pcapService;
|
private IPcapService pcapService;
|
||||||
|
|
||||||
@GetMapping("/{id}")
|
@GetMapping("/{id}")
|
||||||
public R detail(@PathVariable("id") String id) {
|
public R detail(@PathVariable String workspaceId,
|
||||||
PcapEntity pcapEntity = pcapService.queryInfo(id);
|
@PathVariable("id") String id) {
|
||||||
|
PcapEntity pcapEntity = pcapService.queryInfo(id,workspaceId);
|
||||||
return R.ok().putData("record", pcapEntity);
|
return R.ok().putData("record", pcapEntity);
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping
|
@GetMapping
|
||||||
public R list(@RequestParam Map<String, Object> params) {
|
public R list(@PathVariable String workspaceId,
|
||||||
|
@RequestParam Map<String, Object> params) {
|
||||||
T.VerifyUtil.is(params).notNull()
|
T.VerifyUtil.is(params).notNull()
|
||||||
.and(T.MapUtil.getStr(params, "workspaceId")).notEmpty(RCode.WORKSPACE_ID_CANNOT_EMPTY);
|
.and(workspaceId).notEmpty(RCode.WORKSPACE_ID_CANNOT_EMPTY);
|
||||||
|
|
||||||
|
params.put("workspaceId",workspaceId);
|
||||||
Page page = pcapService.queryList(params);
|
Page page = pcapService.queryList(params);
|
||||||
return R.ok(page);
|
return R.ok(page);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package net.geedge.asw.module.runner.controller;
|
|||||||
import cn.dev33.satoken.annotation.SaIgnore;
|
import cn.dev33.satoken.annotation.SaIgnore;
|
||||||
import cn.hutool.core.lang.Opt;
|
import cn.hutool.core.lang.Opt;
|
||||||
import cn.hutool.log.Log;
|
import cn.hutool.log.Log;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import jakarta.servlet.http.HttpServletResponse;
|
import jakarta.servlet.http.HttpServletResponse;
|
||||||
@@ -23,7 +24,7 @@ import java.io.IOException;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/api/v1/runner")
|
@RequestMapping("/api/v1/{workspaceId}/runner")
|
||||||
public class RunnerController {
|
public class RunnerController {
|
||||||
|
|
||||||
private static final Log log = Log.get();
|
private static final Log log = Log.get();
|
||||||
@@ -35,35 +36,44 @@ public class RunnerController {
|
|||||||
private IRunnerService runnerService;
|
private IRunnerService runnerService;
|
||||||
|
|
||||||
@GetMapping("/{id}")
|
@GetMapping("/{id}")
|
||||||
public R detail(@PathVariable("id") String id) {
|
public R detail(@PathVariable String workspaceId,
|
||||||
RunnerEntity runnerEntity = runnerService.getById(id);
|
@PathVariable("id") String id) {
|
||||||
|
RunnerEntity runnerEntity = runnerService.getOne(new LambdaQueryWrapper<RunnerEntity>()
|
||||||
|
.eq(RunnerEntity::getId, id)
|
||||||
|
.eq(RunnerEntity::getWorkspaceId, workspaceId));
|
||||||
return R.ok().putData("record", runnerEntity);
|
return R.ok().putData("record", runnerEntity);
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping
|
@GetMapping
|
||||||
public R list(@RequestParam Map<String, Object> params) {
|
public R list(@PathVariable String workspaceId,
|
||||||
|
@RequestParam Map<String, Object> params) {
|
||||||
T.VerifyUtil.is(params).notNull()
|
T.VerifyUtil.is(params).notNull()
|
||||||
.and(T.MapUtil.getStr(params, "workspaceId")).notEmpty(RCode.WORKSPACE_ID_CANNOT_EMPTY);
|
.and(workspaceId).notEmpty(RCode.WORKSPACE_ID_CANNOT_EMPTY);
|
||||||
|
|
||||||
|
params.put("workspaceId", workspaceId);
|
||||||
Page page = runnerService.queryList(params);
|
Page page = runnerService.queryList(params);
|
||||||
return R.ok(page);
|
return R.ok(page);
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping
|
@PostMapping
|
||||||
public R add(@RequestBody RunnerEntity entity) {
|
public R add(@PathVariable String workspaceId,
|
||||||
|
@RequestBody RunnerEntity entity) {
|
||||||
T.VerifyUtil.is(entity).notNull()
|
T.VerifyUtil.is(entity).notNull()
|
||||||
.and(entity.getWorkspaceId()).notEmpty(RCode.WORKSPACE_ID_CANNOT_EMPTY);
|
.and(workspaceId).notEmpty(RCode.WORKSPACE_ID_CANNOT_EMPTY);
|
||||||
|
|
||||||
|
entity.setWorkspaceId(workspaceId);
|
||||||
RunnerEntity runner = runnerService.saveRunner(entity);
|
RunnerEntity runner = runnerService.saveRunner(entity);
|
||||||
return R.ok().putData("record", runner);
|
return R.ok().putData("record", runner);
|
||||||
}
|
}
|
||||||
|
|
||||||
@PutMapping
|
@PutMapping
|
||||||
public R update(@RequestBody RunnerEntity entity) {
|
public R update(@PathVariable String workspaceId,
|
||||||
|
@RequestBody RunnerEntity entity) {
|
||||||
T.VerifyUtil.is(entity).notNull()
|
T.VerifyUtil.is(entity).notNull()
|
||||||
.and(entity.getId()).notEmpty(RCode.ID_CANNOT_EMPTY)
|
.and(entity.getId()).notEmpty(RCode.ID_CANNOT_EMPTY)
|
||||||
.and(entity.getWorkspaceId()).notEmpty(RCode.WORKSPACE_ID_CANNOT_EMPTY);
|
.and(workspaceId).notEmpty(RCode.WORKSPACE_ID_CANNOT_EMPTY);
|
||||||
|
|
||||||
|
entity.setWorkspaceId(workspaceId);
|
||||||
RunnerEntity runner = runnerService.updateRunner(entity);
|
RunnerEntity runner = runnerService.updateRunner(entity);
|
||||||
return R.ok().putData("record", runner);
|
return R.ok().putData("record", runner);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ import java.util.Map;
|
|||||||
|
|
||||||
public interface IJobService extends IService<JobEntity>{
|
public interface IJobService extends IService<JobEntity>{
|
||||||
|
|
||||||
JobEntity queryInfo(String id);
|
JobEntity queryInfo(String id, String workspaceId);
|
||||||
|
|
||||||
Page queryList(Map<String, Object> params);
|
Page queryList(Map<String, Object> params);
|
||||||
|
|
||||||
|
|||||||
@@ -5,11 +5,12 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
|||||||
import net.geedge.asw.module.runner.entity.PcapEntity;
|
import net.geedge.asw.module.runner.entity.PcapEntity;
|
||||||
import org.springframework.core.io.Resource;
|
import org.springframework.core.io.Resource;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
public interface IPcapService extends IService<PcapEntity>{
|
public interface IPcapService extends IService<PcapEntity>{
|
||||||
|
|
||||||
PcapEntity queryInfo(String id);
|
PcapEntity queryInfo(String id, String workspaceId);
|
||||||
|
|
||||||
Page queryList(Map<String, Object> params);
|
Page queryList(Map<String, Object> params);
|
||||||
|
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package net.geedge.asw.module.runner.service.impl;
|
|||||||
import cn.dev33.satoken.stp.StpUtil;
|
import cn.dev33.satoken.stp.StpUtil;
|
||||||
import cn.hutool.core.io.IORuntimeException;
|
import cn.hutool.core.io.IORuntimeException;
|
||||||
import cn.hutool.log.Log;
|
import cn.hutool.log.Log;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
@@ -67,21 +68,31 @@ public class JobServiceImpl extends ServiceImpl<JobDao, JobEntity> implements IJ
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public JobEntity queryInfo(String id) {
|
public JobEntity queryInfo(String id, String workspaceId) {
|
||||||
JobEntity job = this.getById(id);
|
JobEntity job = this.getOne(new LambdaQueryWrapper<JobEntity>()
|
||||||
|
.eq(JobEntity::getId, id)
|
||||||
|
.eq(JobEntity::getWorkspaceId, workspaceId));
|
||||||
T.VerifyUtil.is(job).notNull(RCode.SYS_RECORD_NOT_FOUND);
|
T.VerifyUtil.is(job).notNull(RCode.SYS_RECORD_NOT_FOUND);
|
||||||
|
|
||||||
RunnerEntity runner = runnerService.getById(job.getRunnerId());
|
RunnerEntity runner = runnerService.getOne(new LambdaQueryWrapper<RunnerEntity>()
|
||||||
|
.eq(RunnerEntity::getId, job.getRunnerId())
|
||||||
|
.eq(RunnerEntity::getWorkspaceId, workspaceId));
|
||||||
job.setRunner(runner);
|
job.setRunner(runner);
|
||||||
|
|
||||||
PlaybookEntity playbook = playbookService.getById(job.getPlaybookId());
|
PlaybookEntity playbook = playbookService.getOne(new LambdaQueryWrapper<PlaybookEntity>()
|
||||||
|
.eq(PlaybookEntity::getId, job.getPlaybookId())
|
||||||
|
.eq(PlaybookEntity::getWorkspaceId, workspaceId));
|
||||||
job.setPlaybook(playbook);
|
job.setPlaybook(playbook);
|
||||||
|
|
||||||
PackageEntity pkg = packageService.getById(job.getPackageId());
|
PackageEntity pkg = packageService.getOne(new LambdaQueryWrapper<PackageEntity>()
|
||||||
|
.eq(PackageEntity::getId, job.getPackageId())
|
||||||
|
.eq(PackageEntity::getWorkspaceId, workspaceId));
|
||||||
job.setPkg(pkg);
|
job.setPkg(pkg);
|
||||||
|
|
||||||
if (T.ObjectUtil.isNotNull(playbook)) {
|
if (T.ObjectUtil.isNotNull(playbook)) {
|
||||||
ApplicationEntity application = applicationService.getById(playbook.getAppId());
|
ApplicationEntity application = applicationService.getOne(new LambdaQueryWrapper<ApplicationEntity>()
|
||||||
|
.eq(ApplicationEntity::getId, playbook.getAppId())
|
||||||
|
.eq(ApplicationEntity::getWorkspaceId, workspaceId));
|
||||||
job.setApplication(application);
|
job.setApplication(application);
|
||||||
}
|
}
|
||||||
return job;
|
return job;
|
||||||
@@ -106,9 +117,10 @@ public class JobServiceImpl extends ServiceImpl<JobDao, JobEntity> implements IJ
|
|||||||
// save
|
// save
|
||||||
this.save(entity);
|
this.save(entity);
|
||||||
|
|
||||||
// workbook resource
|
if (T.StrUtil.isEmpty(entity.getWorkbookId())){
|
||||||
workbookResourceService.saveResource(entity.getWorkbookId(), entity.getId(), WorkbookConstant.ResourceType.JOB.getValue());
|
// workbook resource
|
||||||
|
workbookResourceService.saveResource(entity.getWorkbookId(), entity.getId(), WorkbookConstant.ResourceType.JOB.getValue());
|
||||||
|
}
|
||||||
// trace log file path
|
// trace log file path
|
||||||
File traceLogFile = T.FileUtil.file(this.getJobResultPath(entity.getId()), "trace.log");
|
File traceLogFile = T.FileUtil.file(this.getJobResultPath(entity.getId()), "trace.log");
|
||||||
this.update(new LambdaUpdateWrapper<JobEntity>()
|
this.update(new LambdaUpdateWrapper<JobEntity>()
|
||||||
|
|||||||
@@ -70,8 +70,8 @@ public class PcapServiceImpl extends ServiceImpl<PcapDao, PcapEntity> implements
|
|||||||
private IWorkspaceService workspaceService;
|
private IWorkspaceService workspaceService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public PcapEntity queryInfo(String id) {
|
public PcapEntity queryInfo(String id, String workspaceId) {
|
||||||
PcapEntity pcap = this.getById(id);
|
PcapEntity pcap = this.getOne(new LambdaQueryWrapper<PcapEntity>().eq(PcapEntity::getId, id).eq(PcapEntity::getWorkspaceId, workspaceId));
|
||||||
T.VerifyUtil.is(pcap).notNull(RCode.SYS_RECORD_NOT_FOUND);
|
T.VerifyUtil.is(pcap).notNull(RCode.SYS_RECORD_NOT_FOUND);
|
||||||
|
|
||||||
JobEntity job = jobService.getOne(new LambdaQueryWrapper<JobEntity>().eq(JobEntity::getPcapId, pcap.getId()));
|
JobEntity job = jobService.getOne(new LambdaQueryWrapper<JobEntity>().eq(JobEntity::getPcapId, pcap.getId()));
|
||||||
|
|||||||
Reference in New Issue
Block a user