1、宜安同步项目任务接口,提供返回值

This commit is contained in:
2025-11-28 14:39:44 +08:00
parent 7ce4dbbc96
commit d58ebfffbe
6 changed files with 70 additions and 14 deletions

View File

@@ -7,6 +7,7 @@ import com.sdm.common.entity.req.data.UploadFilesReq;
import com.sdm.common.feign.inter.data.IDataFeignClient;
import com.sdm.project.model.req.YA.*;
import com.sdm.project.model.resp.YA.BosimSaveNodeInfoRsp;
import com.sdm.project.model.resp.YA.BosimSaveProjectTaskRsp;
import com.sdm.project.service.INodeService;
import com.sdm.project.service.ITaskService;
import io.swagger.v3.oas.annotations.Operation;
@@ -136,13 +137,13 @@ public class YAModelController {
)
public BosimSaveNodeInfoRsp saveKeyResultNodeInfo(SaveKeyResultNodeInfoReq req)
{
return null;
}
@PostMapping("")
public BosimSaveNodeInfoRsp deleteModelNodeInfo(DeleteModelNodeInfoReq req)
{
return null;
}
@@ -164,15 +165,15 @@ public class YAModelController {
}
@PostMapping("syncProject")
public void syncCidProject(@RequestBody @Validated SyncCidProjectReq req)
public BosimSaveProjectTaskRsp syncCidProject(@RequestBody @Validated SyncCidProjectReq req)
{
nodeService.syncProject(req);
return nodeService.syncProject(req);
}
@PostMapping("syncCidTask")
public void syncCidTask(@RequestBody @Validated SyncCidTaskReq req)
public BosimSaveProjectTaskRsp syncCidTask(@RequestBody @Validated SyncCidTaskReq req)
{
taskService.syncCidTask(req);
return taskService.syncCidTask(req);
}
}

View File

@@ -0,0 +1,18 @@
package com.sdm.project.model.resp.YA;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
@Data
public class BosimSaveProjectTaskRsp {
@Schema(description = "返回码")
private String code ;
@Schema(description = "返回信息")
private String message = "";
}

View File

@@ -12,6 +12,8 @@ import com.sdm.common.entity.resp.project.SimulationNodeResp;
import com.sdm.project.model.entity.SimulationNode;
import com.sdm.project.model.req.*;
import com.sdm.project.model.req.YA.SyncCidProjectReq;
import com.sdm.project.model.resp.YA.BosimSaveNodeInfoRsp;
import com.sdm.project.model.resp.YA.BosimSaveProjectTaskRsp;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.RequestParam;
@@ -73,5 +75,5 @@ public interface INodeService extends IService<SimulationNode> {
SdmResponse getNodeDetailForData(GetNodeDetailReq req);
void syncProject(SyncCidProjectReq req);
BosimSaveProjectTaskRsp syncProject(SyncCidProjectReq req);
}

View File

@@ -9,6 +9,7 @@ import com.sdm.project.model.req.YA.SyncCidTaskReq;
import com.sdm.project.model.resp.GetAllRunResultByTaskIdResp;
import com.sdm.project.model.resp.TaskCountResp;
import com.sdm.project.model.resp.UserWorkloadResp;
import com.sdm.project.model.resp.YA.BosimSaveProjectTaskRsp;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Service;
@@ -52,6 +53,6 @@ public interface ITaskService {
SdmResponse getTaskDetail(GetTaskDetailReq req);
void syncCidTask(SyncCidTaskReq req);
BosimSaveProjectTaskRsp syncCidTask(SyncCidTaskReq req);
}

View File

@@ -47,6 +47,8 @@ import com.sdm.project.model.po.TaskNodeExtraPo;
import com.sdm.project.model.po.TaskNodePo;
import com.sdm.project.model.req.*;
import com.sdm.project.model.req.YA.SyncCidProjectReq;
import com.sdm.project.model.resp.YA.BosimSaveNodeInfoRsp;
import com.sdm.project.model.resp.YA.BosimSaveProjectTaskRsp;
import com.sdm.project.model.vo.*;
import com.sdm.project.service.*;
import jakarta.servlet.http.HttpServletResponse;
@@ -1478,7 +1480,7 @@ public class NodeServiceImpl extends ServiceImpl<SimulationNodeMapper, Simulatio
@Transactional(rollbackFor = Exception.class)
@Override
public void syncProject(SyncCidProjectReq req) {
public BosimSaveProjectTaskRsp syncProject(SyncCidProjectReq req) {
log.info("syncProject参数为{}", req);
String curDateStr = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
SpdmProjectNodeEditReq spdmProjectNodeEditReq = new SpdmProjectNodeEditReq();
@@ -1489,9 +1491,12 @@ public class NodeServiceImpl extends ServiceImpl<SimulationNodeMapper, Simulatio
spdmProjectNodeEditReq.setTag1(req.getProjectId());
spdmProjectNodeEditReq.setCreateTime(curDateStr);
spdmProjectNodeEditReq.setTenantId(1999999999999999999L);
BosimSaveProjectTaskRsp resp = new BosimSaveProjectTaskRsp();
if (nodeMapper.addNodeBatch(Collections.singletonList(spdmProjectNodeEditReq)) <= 0) {
log.error("同步CID项目{}失败",req.getProjectId() + " " + req.getProjectName());
return;
resp.setCode(String.valueOf(ResultCode.FAILED.getCode()));
resp.setMessage(ResultCode.FAILED.getMessage());
return resp;
}
try {
// 创建项目节点的文件夹
@@ -1499,11 +1504,20 @@ public class NodeServiceImpl extends ServiceImpl<SimulationNodeMapper, Simulatio
if (ObjectUtils.isEmpty(response) || response.getCode() != ResultCode.SUCCESS.getCode()) {
log.error("同步CID项目{}时,创建文件夹失败,原因为:{}",req.getProjectId() + " " + req.getProjectName(),response.getMessage());
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
resp.setCode(String.valueOf(ResultCode.FAILED.getCode()));
resp.setMessage(ResultCode.FAILED.getMessage());
return resp;
}
}catch (Exception ex) {
log.error("同步CID项目{}时,创建文件夹异常,原因为:{}",req.getProjectId() + " " + req.getProjectName(),ex.getMessage());
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
resp.setCode(String.valueOf(ResultCode.FAILED.getCode()));
resp.setMessage(ResultCode.FAILED.getMessage());
return resp;
}
resp.setCode(String.valueOf(ResultCode.SUCCESS.getCode()));
resp.setMessage("success");
return resp;
}
}

View File

@@ -31,6 +31,7 @@ import com.sdm.project.model.req.*;
import com.sdm.project.model.req.YA.ProjectTaskInfo;
import com.sdm.project.model.req.YA.SyncCidTaskReq;
import com.sdm.project.model.resp.*;
import com.sdm.project.model.resp.YA.BosimSaveProjectTaskRsp;
import com.sdm.project.model.vo.*;
import com.sdm.project.service.*;
import jakarta.servlet.http.HttpServletResponse;
@@ -1247,12 +1248,15 @@ public class TaskServiceImpl implements ITaskService {
@Transactional
@Override
public void syncCidTask(SyncCidTaskReq req) {
public BosimSaveProjectTaskRsp syncCidTask(SyncCidTaskReq req) {
log.info("syncCidTask参数为{}", req);
List<ProjectTaskInfo> taskInfoList = req.getTaskInfoList();
BosimSaveProjectTaskRsp resp = new BosimSaveProjectTaskRsp();
if (CollectionUtils.isEmpty(taskInfoList)) {
log.error("同步cid任务时任务为空");
return;
resp.setCode(String.valueOf(ResultCode.FAILED.getCode()));
resp.setMessage(ResultCode.FAILED.getMessage());
return resp;
}
String curDateStr = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
SpdmProjectNodeEditReq spdmProjectNodeEditReq = new SpdmProjectNodeEditReq();
@@ -1265,7 +1269,9 @@ public class TaskServiceImpl implements ITaskService {
spdmProjectNodeEditReq.setTenantId(1999999999999999999L);
if (nodeMapper.addNodeBatch(Collections.singletonList(spdmProjectNodeEditReq)) <= 0) {
log.error("同步CID项目:{}失败",req.getProjectId() + " " + req.getProjectName());
return;
resp.setCode(String.valueOf(ResultCode.FAILED.getCode()));
resp.setMessage(ResultCode.FAILED.getMessage());
return resp;
}
List<CidTaskNode> taskNodeList = new ArrayList<>();
for (ProjectTaskInfo projectTaskInfo : taskInfoList) {
@@ -1280,7 +1286,9 @@ public class TaskServiceImpl implements ITaskService {
if (projectMapper.batchAddSimulationCidTask(taskNodeList) <= 0) {
log.error("同步CID任务失败");
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return;
resp.setCode(String.valueOf(ResultCode.FAILED.getCode()));
resp.setMessage(ResultCode.FAILED.getMessage());
return resp;
}
try {
// 创建项目节点的文件夹
@@ -1288,6 +1296,9 @@ public class TaskServiceImpl implements ITaskService {
if (ObjectUtils.isEmpty(response) || response.getCode() != ResultCode.SUCCESS.getCode()) {
log.error("同步CID任务时创建项目{}的文件夹失败,原因为:{}",req.getProjectId() + " " + req.getProjectName(),response.getMessage());
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
resp.setCode(String.valueOf(ResultCode.FAILED.getCode()));
resp.setMessage(ResultCode.FAILED.getMessage());
return resp;
}
// 创建任务节点的文件夹
for (CidTaskNode taskNode : taskNodeList) {
@@ -1295,12 +1306,21 @@ public class TaskServiceImpl implements ITaskService {
if (ObjectUtils.isEmpty(response) || response.getCode() != ResultCode.SUCCESS.getCode()) {
log.error("同步CID任务时创建任务{}的文件夹失败,原因为:{}",taskNode.getUuid() + " " + taskNode.getTaskName(),response.getMessage());
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
resp.setCode(String.valueOf(ResultCode.FAILED.getCode()));
resp.setMessage(ResultCode.FAILED.getMessage());
return resp;
}
}
}catch (Exception ex) {
log.error("同步CID任务时创建文件夹失败原因为{}",ex.getMessage());
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
resp.setCode(String.valueOf(ResultCode.FAILED.getCode()));
resp.setMessage(ResultCode.FAILED.getMessage());
return resp;
}
resp.setCode(String.valueOf(ResultCode.SUCCESS.getCode()));
resp.setMessage("success");
return resp;
}
}