新增:利元亨现场根据异常taskIdc查询enc异常信息
This commit is contained in:
@@ -2,11 +2,10 @@ package com.sdm.project.controller;
|
||||
|
||||
import com.sdm.common.common.SdmResponse;
|
||||
import com.sdm.common.entity.req.project.SpdmNodeListReq;
|
||||
import com.sdm.common.log.annotation.SysLog;
|
||||
import com.sdm.outbridge.entity.LyricVProjectStationExcepTionToDM;
|
||||
import com.sdm.outbridge.mode.GetProcessDataReq;
|
||||
import com.sdm.outbridge.service.lyric.LyricIntegrateService;
|
||||
import com.sdm.project.model.req.PushReportReq;
|
||||
import com.sdm.project.model.req.SpdmAddDemandReq;
|
||||
import com.sdm.project.model.req.ep.EpProjectQueryReq;
|
||||
import com.sdm.project.model.req.ep.EpSyncPhaseReq;
|
||||
import com.sdm.project.service.IDemandService;
|
||||
@@ -21,6 +20,7 @@ import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
@RestController
|
||||
@RequestMapping(value = "/node")
|
||||
@@ -201,5 +201,17 @@ public class SimulationLyricNodeController {
|
||||
return lyricInternalService.listNoPermission(req);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据taskId查询enc异常信息
|
||||
*
|
||||
* @param taskId 任务ID
|
||||
* @return 异常信息结果
|
||||
*/
|
||||
@GetMapping("/queryEncExceptionByTaskId")
|
||||
@Operation(summary = "根据taskId查询enc异常信息", description = "根据taskId查询enc异常信息")
|
||||
public SdmResponse<List<LyricVProjectStationExcepTionToDM>> queryEncExceptionByTaskId(@RequestParam String taskId) {
|
||||
return lyricInternalService.queryEncExceptionByTaskId(taskId);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -120,4 +120,5 @@ public interface SimulationNodeMapper extends BaseMapper<SimulationNode> {
|
||||
|
||||
List<SpdmNodeMemberVo> getNodeMemberListByMemberType(@Param("nodeIdList") List<String> nodeIdList,@Param("userId") Long userId,@Param("memberType") Integer memberType);
|
||||
|
||||
List<SimulationEncNodeVO>getEncNodeListByTaskId(@Param("taskId") String taskId);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
package com.sdm.project.model.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class SimulationEncNodeVO {
|
||||
/**
|
||||
* 任务ID(t1.uuid AS taskId)
|
||||
*/
|
||||
private String taskId;
|
||||
|
||||
/**
|
||||
* 节点UUID(t2.uuid)
|
||||
*/
|
||||
private String uuid;
|
||||
|
||||
/**
|
||||
* 节点编码
|
||||
*/
|
||||
private String nodeCode;
|
||||
|
||||
/**
|
||||
* 节点类型
|
||||
*/
|
||||
private String nodeType;
|
||||
|
||||
}
|
||||
@@ -2,11 +2,14 @@ package com.sdm.project.service;
|
||||
|
||||
import com.sdm.common.common.SdmResponse;
|
||||
import com.sdm.common.entity.req.project.SpdmNodeListReq;
|
||||
import com.sdm.outbridge.entity.LyricVProjectStationExcepTionToDM;
|
||||
import com.sdm.outbridge.mode.GetProcessDataReq;
|
||||
import com.sdm.project.model.req.PushReportReq;
|
||||
import com.sdm.project.model.req.ep.EpProjectQueryReq;
|
||||
import com.sdm.project.model.req.ep.EpSyncPhaseReq;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ILyricInternalService {
|
||||
|
||||
SdmResponse getProcessData(GetProcessDataReq req);
|
||||
@@ -53,4 +56,7 @@ public interface ILyricInternalService {
|
||||
SdmResponse listNoPermission(SpdmNodeListReq req);
|
||||
|
||||
SdmResponse optimisedGetTodoList(String http);
|
||||
|
||||
SdmResponse<List<LyricVProjectStationExcepTionToDM>> queryEncExceptionByTaskId(String taskId);
|
||||
|
||||
}
|
||||
|
||||
@@ -30,6 +30,7 @@ import com.sdm.outbridge.mode.HkUploadFileReq;
|
||||
import com.sdm.outbridge.mode.LyricExceptionModel;
|
||||
import com.sdm.outbridge.mode.SimulationTaskSyncExBo;
|
||||
import com.sdm.outbridge.service.lyric.*;
|
||||
import com.sdm.outbridge.thirdDao.LyricVProjectStationExcepTionToDMMapper;
|
||||
import com.sdm.project.common.ApprovalStatusEnum;
|
||||
import com.sdm.project.common.DemandTypeEnum;
|
||||
import com.sdm.project.common.MemberTypeEnum;
|
||||
@@ -44,10 +45,7 @@ import com.sdm.project.model.entity.SimulationNode;
|
||||
import com.sdm.project.model.req.*;
|
||||
import com.sdm.project.model.req.ep.EpProjectQueryReq;
|
||||
import com.sdm.project.model.req.ep.EpSyncPhaseReq;
|
||||
import com.sdm.project.model.vo.SpdmDemandVo;
|
||||
import com.sdm.project.model.vo.SpdmNodeExtraVo;
|
||||
import com.sdm.project.model.vo.SpdmNodeMemberVo;
|
||||
import com.sdm.project.model.vo.SpdmNodeVo;
|
||||
import com.sdm.project.model.vo.*;
|
||||
import com.sdm.project.service.ILyricInternalService;
|
||||
import com.sdm.project.service.INodeService;
|
||||
import com.sdm.project.service.ISimulationTaskService;
|
||||
@@ -199,6 +197,9 @@ public class LyricInternalServiceImpl implements ILyricInternalService {
|
||||
@Value("${lyricTodoInterval:90}")
|
||||
private int lyricTodoInterval;
|
||||
|
||||
@Autowired
|
||||
private LyricVProjectStationExcepTionToDMMapper lyricVProjectStationExcepTionToDMMapper;
|
||||
|
||||
// 拉取的EP项目,设置项目经理权限时,暂时写死为仿真组的19个用户
|
||||
List<Long> epFixManagerUserIdList = Arrays.asList(2003641538857771009L,2003641499053826049L,2000891541365284865L,
|
||||
2003641270736887809L,2000891541367895412L,2000891541367892039L,2017165368993247238L,2017165370440282114L,
|
||||
@@ -2270,6 +2271,40 @@ public class LyricInternalServiceImpl implements ILyricInternalService {
|
||||
return response;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SdmResponse<List<LyricVProjectStationExcepTionToDM>> queryEncExceptionByTaskId(String taskId) {
|
||||
// taskId --> project code & station code
|
||||
List<SimulationEncNodeVO> encNodeSpdmList = nodeMapper.getEncNodeListByTaskId(taskId);
|
||||
log.info("queryEncExceptionByTaskId spdm db back:{}",JSONObject.toJSONString(encNodeSpdmList));
|
||||
String projectNodeCode="";
|
||||
String workspaceNodeCode="";
|
||||
if (CollectionUtils.isNotEmpty(encNodeSpdmList)) {
|
||||
// 从集合中提取 nodeType = project 的 nodeCode
|
||||
projectNodeCode = encNodeSpdmList.stream()
|
||||
.filter(vo -> "project".equals(vo.getNodeType()))
|
||||
.map(SimulationEncNodeVO::getNodeCode)
|
||||
.findFirst()
|
||||
.orElse("");
|
||||
|
||||
// 从集合中提取 nodeType = workspace 的 nodeCode
|
||||
workspaceNodeCode = encNodeSpdmList.stream()
|
||||
.filter(vo -> "workspace".equals(vo.getNodeType()))
|
||||
.map(SimulationEncNodeVO::getNodeCode)
|
||||
.findFirst()
|
||||
.orElse("");
|
||||
}
|
||||
if(StringUtils.isBlank(projectNodeCode)||StringUtils.isBlank(workspaceNodeCode)){
|
||||
log.warn("queryEncExceptionByTaskId projectNodeCode or workspaceNodeCode is null");
|
||||
return SdmResponse.success();
|
||||
}
|
||||
// enc 视图查询
|
||||
log.info("queryEncExceptionByTaskId send lyric db projectNodeCode:{},workspaceNodeCode:{}",projectNodeCode,workspaceNodeCode);
|
||||
List<LyricVProjectStationExcepTionToDM> lyricEncInfos = lyricVProjectStationExcepTionToDMMapper.queryExceptionByProjectAndStation(projectNodeCode, workspaceNodeCode);
|
||||
log.info("queryEncExceptionByTaskId lyric db back:{}",lyricEncInfos.size());
|
||||
return SdmResponse.success(lyricEncInfos);
|
||||
}
|
||||
|
||||
|
||||
private List<SpdmProjectNodeEditReq> httpSyncHandleNoRelatedProjectTodo(List<LyricVTodoEmulationInfoDM> noRelatedProjectVTodoEmulationInfoDMList, Long tenantId, Long jobNumber) {
|
||||
CompletableFuture<List<SpdmProjectNodeEditReq>> syncHandleNoRelatedProjectTodoFeature = CompletableFuture.supplyAsync(() ->
|
||||
handleNoRelatedProjectTodo(noRelatedProjectVTodoEmulationInfoDMList, tenantId, jobNumber));
|
||||
|
||||
@@ -903,5 +903,20 @@
|
||||
limit #{pos},#{limit}
|
||||
</select>
|
||||
|
||||
<select id="getEncNodeListByTaskId" resultType="com.sdm.project.model.vo.SimulationEncNodeVO">
|
||||
SELECT
|
||||
t1.uuid AS taskId,
|
||||
t2.uuid,
|
||||
t2.nodeCode,
|
||||
t2.nodeType
|
||||
FROM simulation_task t1
|
||||
LEFT JOIN simulation_node t2
|
||||
ON (t1.tag1 = t2.uuid OR t1.tag5 = t2.uuid)
|
||||
WHERE
|
||||
t1.uuid = #{taskId}
|
||||
AND t1.tag1 IS NOT NULL
|
||||
AND t1.tag5 IS NOT NULL
|
||||
</select>
|
||||
|
||||
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user