mirror of
https://github.com/Sagit-chu/flvx.git
synced 2026-09-29 16:06:36 +08:00
feat: add batch pause/resume controls and improve batch toolbar usability
This commit is contained in:
@@ -106,6 +106,18 @@ public class ForwardController extends BaseController {
|
||||
return forwardService.batchDeleteForwards(batchDeleteDto);
|
||||
}
|
||||
|
||||
@LogAnnotation
|
||||
@PostMapping("/batch-pause")
|
||||
public R batchPause(@Validated @RequestBody BatchDeleteDto batchDeleteDto) {
|
||||
return forwardService.batchPauseForwards(batchDeleteDto);
|
||||
}
|
||||
|
||||
@LogAnnotation
|
||||
@PostMapping("/batch-resume")
|
||||
public R batchResume(@Validated @RequestBody BatchDeleteDto batchDeleteDto) {
|
||||
return forwardService.batchResumeForwards(batchDeleteDto);
|
||||
}
|
||||
|
||||
@LogAnnotation
|
||||
@PostMapping("/batch-redeploy")
|
||||
public R batchRedeploy(@Validated @RequestBody BatchRedeployDto batchRedeployDto) {
|
||||
|
||||
@@ -85,6 +85,10 @@ public interface ForwardService extends IService<Forward> {
|
||||
R updateForwardOrder(Map<String, Object> params);
|
||||
|
||||
R batchDeleteForwards(BatchDeleteDto batchDeleteDto);
|
||||
|
||||
R batchPauseForwards(BatchDeleteDto batchDeleteDto);
|
||||
|
||||
R batchResumeForwards(BatchDeleteDto batchDeleteDto);
|
||||
|
||||
R batchRedeployForwards(BatchRedeployDto batchRedeployDto);
|
||||
|
||||
|
||||
@@ -1304,6 +1304,37 @@ public class ForwardServiceImpl extends ServiceImpl<ForwardMapper, Forward> impl
|
||||
return R.ok(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public R batchPauseForwards(BatchDeleteDto batchDeleteDto) {
|
||||
return batchChangeForwardStatus(batchDeleteDto.getIds(), 0, "PauseService");
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public R batchResumeForwards(BatchDeleteDto batchDeleteDto) {
|
||||
return batchChangeForwardStatus(batchDeleteDto.getIds(), 1, "ResumeService");
|
||||
}
|
||||
|
||||
private R batchChangeForwardStatus(List<Long> ids, int targetStatus, String gostMethod) {
|
||||
BatchOperationResultDto result = new BatchOperationResultDto();
|
||||
|
||||
for (Long id : ids) {
|
||||
try {
|
||||
R changeResult = changeForwardStatus(id, targetStatus, gostMethod);
|
||||
if (changeResult.getCode() == 0) {
|
||||
result.incrementSuccess();
|
||||
} else {
|
||||
result.addFailedItem(id, changeResult.getMsg());
|
||||
}
|
||||
} catch (Exception e) {
|
||||
result.addFailedItem(id, e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
return R.ok(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public R batchRedeployForwards(BatchRedeployDto batchRedeployDto) {
|
||||
|
||||
Reference in New Issue
Block a user