1、修改宜安科技同步任务接口
This commit is contained in:
@@ -86,4 +86,6 @@ public interface SimulationNodeMapper extends BaseMapper<SimulationNode> {
|
||||
|
||||
List<WorkstationApproveStatusVo> getWorkstationApproveStatus(@Param("req") GetWorkstationApproveStatusReq req);
|
||||
|
||||
SpdmNodeVo getNodeByProjectIdAndName(@Param("projectId") String projectId, @Param("projectName") String projectName);
|
||||
|
||||
}
|
||||
|
||||
@@ -1258,16 +1258,60 @@ public class TaskServiceImpl implements ITaskService {
|
||||
@Transactional
|
||||
@Override
|
||||
public BosimSaveProjectTaskRsp syncCidTask(SyncCidTaskReq req) {
|
||||
BosimSaveProjectTaskRsp resp = new BosimSaveProjectTaskRsp();
|
||||
String projectId = req.getProjectId();
|
||||
String projectName = req.getProjectName();
|
||||
if (StringUtils.isEmpty(projectId) || StringUtils.isEmpty(projectName)) {
|
||||
log.error("同步cid任务时,projectId或projectName为空");
|
||||
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());
|
||||
// 查询是否已同步过项目
|
||||
SpdmNodeVo spdmNodeVo = nodeMapper.getNodeByProjectIdAndName(projectId,projectName);
|
||||
if (ObjectUtils.isNotEmpty(spdmNodeVo)) {
|
||||
SpdmProjectNodeEditReq spdmProjectNodeEditReq = new SpdmProjectNodeEditReq();
|
||||
spdmProjectNodeEditReq.setNodeName(req.getProjectName());
|
||||
spdmProjectNodeEditReq.setNodeType(NodeTypeEnum.PROJECT.getValue());
|
||||
spdmProjectNodeEditReq.setUuid(req.getProjectId());
|
||||
spdmProjectNodeEditReq.setPid(req.getProjectId());
|
||||
spdmProjectNodeEditReq.setTag1(req.getProjectId());
|
||||
spdmProjectNodeEditReq.setCreateTime(curDateStr);
|
||||
spdmProjectNodeEditReq.setTenantId(ThreadLocalContext.getTenantId());
|
||||
if (nodeMapper.addNodeBatch(Collections.singletonList(spdmProjectNodeEditReq)) <= 0) {
|
||||
log.error("同步CID项目:{}失败",req.getProjectId() + " " + req.getProjectName());
|
||||
resp.setCode(String.valueOf(ResultCode.FAILED.getCode()));
|
||||
resp.setMessage(ResultCode.FAILED.getMessage());
|
||||
return resp;
|
||||
}
|
||||
try {
|
||||
// 创建项目节点的文件夹
|
||||
SdmResponse response = createDir(spdmProjectNodeEditReq.getUuid(), spdmProjectNodeEditReq.getNodeType(), null, spdmProjectNodeEditReq.getNodeName());
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
||||
log.info("syncCidTask参数为:{}", req);
|
||||
List<ProjectTaskInfo> taskInfoList = req.getTaskInfoList();
|
||||
BosimSaveProjectTaskRsp resp = new BosimSaveProjectTaskRsp();
|
||||
if (CollectionUtils.isEmpty(taskInfoList)) {
|
||||
log.error("同步cid任务时,任务为空");
|
||||
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());
|
||||
List<CidTaskNode> taskNodeList = new ArrayList<>();
|
||||
for (ProjectTaskInfo projectTaskInfo : taskInfoList) {
|
||||
CidTaskNode taskNode = new CidTaskNode();
|
||||
|
||||
@@ -578,4 +578,9 @@
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
<select id="getNodeByProjectIdAndName" resultType="com.sdm.project.model.vo.SpdmNodeVo">
|
||||
select * from simulation_node where uuid = #{projectId} and nodeName = #{projectName} and nodeType = 'project' limit 1
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user