优化任务,节点,节点配置的删除逻辑

master
面包骑士 2024-08-29 20:28:53 +08:00
parent 0d6e7e4f7b
commit e76fc4d2db
9 changed files with 45 additions and 8 deletions

View File

@ -138,9 +138,8 @@ public class NodeController extends BaseController {
@Transactional @Transactional
public Result<Integer> batch(@Validated @RequestBody ArrayList<Node> nodeList,@PathVariable("taskCode") String taskCode) { public Result<Integer> batch(@Validated @RequestBody ArrayList<Node> nodeList,@PathVariable("taskCode") String taskCode) {
// 批量删除 // 批量删除
LambdaQueryWrapper<Node> queryWrapper = new LambdaQueryWrapper<>(); nodeService.batchDelect(taskCode);
queryWrapper.eq(Node::getTaskCode,taskCode);
nodeService.remove(queryWrapper);
if (nodeList.isEmpty()){ if (nodeList.isEmpty()){
return Result.success(); return Result.success();
} }

View File

@ -122,10 +122,8 @@ public class NodeDispositionController extends BaseController
public Result<Integer> batch( public Result<Integer> batch(
@Validated @RequestBody ArrayList<NodeDisposition> dispList, @Validated @RequestBody ArrayList<NodeDisposition> dispList,
@PathVariable("nodeCode") String nodeCode){ @PathVariable("nodeCode") String nodeCode){
// 根据节点id删除 // 根据节点编码删除
LambdaQueryWrapper<NodeDisposition> queryWrapper = new LambdaQueryWrapper<>(); nodeDispositionService.batchDelect(nodeCode);
queryWrapper.eq(NodeDisposition::getNodeCode, nodeCode);
nodeDispositionService.remove(queryWrapper);
// 批量新增 // 批量新增
if (!dispList.isEmpty()) { if (!dispList.isEmpty()) {
nodeDispositionService.saveBatch(dispList); nodeDispositionService.saveBatch(dispList);

View File

@ -103,7 +103,7 @@ public class TaskController extends BaseController
// @RequiresPermissions("system:task:remove") // @RequiresPermissions("system:task:remove")
@DeleteMapping("/{taskIds}") @DeleteMapping("/{taskIds}")
public Result remove (@PathVariable("taskIds") Long[] taskIds) { public Result remove (@PathVariable("taskIds") Long[] taskIds) {
taskService.removeBatchByIds(Arrays.asList(taskIds)); taskService.removeBatch(Arrays.asList(taskIds));
return success(); return success();
} }

View File

@ -35,4 +35,6 @@ public interface INodeDispositionService extends IService<NodeDisposition> {
Boolean checkIdUnique(NodeDisposition nodeDisposition); Boolean checkIdUnique(NodeDisposition nodeDisposition);
Boolean checkDispUnique(NodeDisposition disp); Boolean checkDispUnique(NodeDisposition disp);
void batchDelect(String nodeCode);
} }

View File

@ -36,4 +36,6 @@ public interface INodeService extends IService<Node> {
Boolean checkIdUnique(Node node); Boolean checkIdUnique(Node node);
List<Node> selectNodeByIds(Long[] ids); List<Node> selectNodeByIds(Long[] ids);
void batchDelect(String taskCode);
} }

View File

@ -41,4 +41,6 @@ public interface TaskService extends IService<Task> {
* @return * @return
*/ */
Boolean checkIdUnique(Task task); Boolean checkIdUnique(Task task);
void removeBatch(List<Long> list);
} }

View File

@ -82,4 +82,11 @@ public class NodeDispositionServiceImpl
return this.exists(queryWrapper); return this.exists(queryWrapper);
} }
@Override
public void batchDelect(String nodeCode) {
LambdaQueryWrapper<NodeDisposition> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(NodeDisposition::getNodeCode, nodeCode);
this.remove(queryWrapper);
}
} }

View File

@ -4,6 +4,7 @@ import java.util.Arrays;
import java.util.List; import java.util.List;
import com.muyu.quest.req.NodeReq; import com.muyu.quest.req.NodeReq;
import com.muyu.quest.service.INodeDispositionService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.muyu.quest.mapper.NodeMapper; import com.muyu.quest.mapper.NodeMapper;
import com.muyu.quest.domain.Node; import com.muyu.quest.domain.Node;
@ -13,6 +14,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.muyu.common.core.utils.StringUtils; import com.muyu.common.core.utils.StringUtils;
import org.springframework.util.Assert; import org.springframework.util.Assert;
import javax.annotation.Resource;
/** /**
* Service * Service
* *
@ -23,6 +26,8 @@ import org.springframework.util.Assert;
public class NodeServiceImpl public class NodeServiceImpl
extends ServiceImpl<NodeMapper, Node> extends ServiceImpl<NodeMapper, Node>
implements INodeService { implements INodeService {
@Resource
private INodeDispositionService dispositionService;
/** /**
* *
@ -87,5 +92,16 @@ public class NodeServiceImpl
return this.list(queryWrapper); return this.list(queryWrapper);
} }
@Override
public void batchDelect(String taskCode) {
// 查询任务所有节点
NodeReq nodeReq = new NodeReq();
nodeReq.setTaskCode(taskCode);
selectNodeList(nodeReq).forEach(node -> dispositionService.removeById(node.getNodeCode()));
LambdaQueryWrapper<Node> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(Node::getTaskCode,taskCode);
this.remove(queryWrapper);
}
} }

View File

@ -7,12 +7,15 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.muyu.common.core.utils.StringUtils; import com.muyu.common.core.utils.StringUtils;
import com.muyu.quest.req.TaskReq; import com.muyu.quest.req.TaskReq;
import com.muyu.quest.resp.TaskResp; import com.muyu.quest.resp.TaskResp;
import com.muyu.quest.service.INodeService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.muyu.quest.mapper.TaskMapper; import com.muyu.quest.mapper.TaskMapper;
import com.muyu.quest.domain.Task; import com.muyu.quest.domain.Task;
import com.muyu.quest.service.TaskService; import com.muyu.quest.service.TaskService;
import org.springframework.util.Assert; import org.springframework.util.Assert;
import javax.annotation.Resource;
/** /**
* Service * Service
* *
@ -22,6 +25,8 @@ import org.springframework.util.Assert;
@Service @Service
public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task>
implements TaskService { implements TaskService {
@Resource
private INodeService nodeService;
/** /**
* *
@ -72,6 +77,12 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task>
return this.exists(queryWrapper); return this.exists(queryWrapper);
} }
@Override
public void removeBatch(List<Long> list) {
list.forEach(id -> nodeService.batchDelect(selectTaskById(id).getTaskCode()));
this.removeBatchByIds(list);
}
/** /**
* *
* *