| | |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springblade.core.tenant.annotation.NonDS; |
| | | import org.springblade.core.tool.api.R; |
| | | import org.springblade.core.tool.utils.Func; |
| | | import org.springblade.mdm.basesetting.machine.vo.MachineQueryVO; |
| | | import org.springblade.mdm.basesetting.machine.vo.MachineVO; |
| | | import org.springblade.mdm.flow.service.FlowProgramFileService; |
| | | import org.springblade.mdm.program.entity.NcNode; |
| | | import org.springblade.mdm.program.entity.NcProgram; |
| | | import org.springblade.mdm.program.service.NcNodeService; |
| | | import org.springblade.mdm.program.service.NcProgramService; |
| | | import org.springblade.mdm.program.vo.NcNodeProgramQueryVO; |
| | | import org.springblade.mdm.program.vo.NcNodeProgramVO; |
| | | import org.springblade.mdm.program.vo.NcNodeVO; |
| | | import org.springblade.mdm.program.service.ProgramFlowStatusQueryService; |
| | | import org.springblade.mdm.program.vo.*; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import java.util.List; |
| | |
| | | public class NcNodeController { |
| | | private final NcProgramService ncProgramService; |
| | | private final NcNodeService ncNodeService; |
| | | |
| | | private final ProgramFlowStatusQueryService programFlowStatusQueryService; |
| | | private final FlowProgramFileService flowProgramFileService; |
| | | /** |
| | | * 新增 |
| | | */ |
| | |
| | | List<NcNodeVO> list = ncNodeService.lazyList(parentId); |
| | | if(list != null && !list.isEmpty()) { |
| | | for(NcNodeVO ncNodeVO : list) { |
| | | if(!"60".equals(ncNodeVO.getNodeType())){ |
| | | break; |
| | | } |
| | | ncNodeVO.setFlowStatus(programFlowStatusQueryService.queryFlowStatus(ncNodeVO.getProcessInstanceId())); |
| | | |
| | | } |
| | | |
| | | } |
| | | return R.data(list); |
| | | } |
| | | |
| | | @GetMapping("/search-list") |
| | | @Operation(summary = "查询树状列表", description = "程序目录树形结构(查询专用)") |
| | | public R<List<NcNodeVO>> searchList(NcNodeQueryVO queryVO) { |
| | | if(Func.isEmpty(queryVO.getName())){ |
| | | return R.fail("请输入名称"); |
| | | } |
| | | List<NcNodeVO> list = ncNodeService.searchList(queryVO); |
| | | /* |
| | | if(list != null && !list.isEmpty()) { |
| | | for(NcNodeVO ncNodeVO : list) { |
| | | if(!"70".equals(ncNodeVO.getNodeType())){ |
| | | break; |
| | | } |
| | |
| | | ncNodeVO.setDrawingNo(program.getDrawingNo()); |
| | | ncNodeVO.setMachineCode(program.getMachineCode()); |
| | | ncNodeVO.setProcessName(program.getProcessName()); |
| | | ncNodeVO.setVersionNumber(program.getVersionNumber()); |
| | | |
| | | //record中找不到时未启动0;找到了需要查询流程实例id,是否运行中 |
| | | ncNodeVO.setFlowStatus(programFlowStatusQueryService.queryFlowStatus(program.getId())); |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | */ |
| | | return R.data(list); |
| | | } |
| | | |
| | | /* |
| | | @Operation(summary = "程序分页查询", description = "用于在编制节点选择流程对应的程序") |
| | | @GetMapping("/programpickpage") |
| | | public R<IPage<NcNodeProgramVO>> page(NcNodeProgramQueryVO query) { |
| | | IPage<NcNodeProgramVO> pages = ncNodeService.programPageQuery(query); |
| | | return R.data(pages); |
| | | @GetMapping("/history-by-nodeid") |
| | | @Operation(summary = "根据绑定节点id获取历史列表", description = "程序历史列表,仅‘程序包’字典值70的数据。用于显示程序的‘历史版本’") |
| | | public R<List<NcNodeVO>> historyByBindNodeId(@Parameter(description="节点ID(nodeType=70的节点id)")@RequestParam Long id) { |
| | | return R.data(this.ncNodeService.historyByNodeId(id)); |
| | | } |
| | | */ |
| | | |
| | | |
| | | @GetMapping("/compare-content") |
| | | @Operation(summary = "对比内容数据", description = "查询对比内容的2个文本数据") |
| | | public R<CompareDataVO> compareContent(@Parameter(description="节点1的ID(nodeType=70的节点id)")Long id1,@Parameter(description="节点2的ID(nodeType=70的节点id)")Long id2) { |
| | | CompareDataVO vo = new CompareDataVO(); |
| | | NcNode node1 = ncNodeService.getById(id1); |
| | | NcNode node2 = ncNodeService.getById(id2); |
| | | if(node1.getFlowProgramFileId() != null) { |
| | | vo.setContent1(flowProgramFileService.getFileContent(node1.getFlowProgramFileId())); |
| | | |
| | | } |
| | | if(node2.getFlowProgramFileId() != null) { |
| | | vo.setContent2(flowProgramFileService.getFileContent(node2.getFlowProgramFileId())); |
| | | } |
| | | |
| | | return R.data(vo); |
| | | } |
| | | } |