yangys
2025-08-16 66db2ddb74b0f1afba2ccb237ac949959501283f
导出dnc增加工序版次
已修改5个文件
24 ■■■■ 文件已修改
blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/DispatchFinishListener.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/replace/ReplaceFinishListener.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/FlowProgramFileService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcProgramApprovedMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/NcProgramExportDncPageVO.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/DispatchFinishListener.java
@@ -91,8 +91,12 @@
                ncNodeService.save(newCuredNode);
                //新的流程对应的文件更新到新节点下
                /*
                List<FlowProgramFile> newFlowFileList = flowProgramFileService.lambdaQuery()
                    .eq(FlowProgramFile::getProcessInstanceId, progProperties.getProcessInstanceId()).list();
                 */
                List<FlowProgramFile> newFlowFileList = flowProgramFileService.listByProcessInstanceId(progProperties.getProcessInstanceId());
                for (FlowProgramFile newFlowFile : newFlowFileList) {
                    NcNode newProgramNode = new NcNode();
                    newProgramNode.setName(newFlowFile.getName());
blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/replace/ReplaceFinishListener.java
@@ -47,7 +47,7 @@
        Long nodeId = runtimeService.getVariable(execution.getId(),ReplaceFlowService.NODE_ID,Long.class);
        log.info("事件名称{},instid={}" , execution.getEventName(),instId);
        List<FlowProgramFile> programFiles =  flowProgramFileService.lambdaQuery().eq(FlowProgramFile::getProcessInstanceId, instId).list();
        NcNode newProgramPackage = replaceProgram(nodeId,programFiles);
        NcNode newProgramPackage = replaceProgram(nodeId,instId,programFiles);
        addToApproved(newProgramPackage,Func.toStr(execution.getVariables().get(FlowContants.TITLE)));
@@ -72,7 +72,7 @@
     * @param programFiles 新的文件
     * @return 新的程序包名节点
     */
    NcNode replaceProgram(Long nodeId, List<FlowProgramFile> programFiles){
    NcNode replaceProgram(Long nodeId,String processInstanceId, List<FlowProgramFile> programFiles){
        //原节点改为老版本
        NcNode oldPackageNode = ncNodeService.getById(nodeId);
        oldPackageNode.setIsLastEdition(0);
@@ -86,9 +86,11 @@
        EntityUtil.clearBaseProperties(newPackageNode);
        newPackageNode.setIsLastEdition(1);
        newPackageNode.setVersionNumber(oldPackageNode.genNewVersionNumber());
        newPackageNode.setProcessInstanceId(processInstanceId);
        ncNodeService.save(newPackageNode);
        //老文件,更新成老版本
        List<NcNode> programFileNodes = ncNodeService.getProgramFilesByPackageId(nodeId);
        NcNode fileNodeOne = null;
        if(!programFileNodes.isEmpty()){
blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/FlowProgramFileService.java
@@ -134,4 +134,14 @@
            IOUtils.copy(ins,response.getOutputStream());
        }
    }
    /**
     * 获取关于流程的所有文件
     * @param processInstanceId 流程实例id
     * @return 流程关联的文件列表
     */
    public List<FlowProgramFile> listByProcessInstanceId(String processInstanceId){
        return lambdaQuery()
        .eq(FlowProgramFile::getProcessInstanceId, processInstanceId).list();
    }
}
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcProgramApprovedMapper.xml
@@ -11,7 +11,7 @@
        <result column="is_deleted" property="isDeleted"/>
    </resultMap>
    <select id="exportDncPageQuery" resultType="org.springblade.mdm.program.vo.NcProgramExportDncPageVO">
        select a.id,a.title,n.name,a.nc_node_id,n.drawing_no,n.drawing_no_edition,n.process_name,a.create_time,a.update_time from mdm_nc_program_approved a
        select a.id,a.title,n.name,a.nc_node_id,n.process_no,n.drawing_no,n.drawing_no_edition,n.process_name,a.create_time,a.update_time from mdm_nc_program_approved a
            inner join mdm_nc_node n on a.nc_node_id=n.id
        <where>
            a.is_deleted=0 and a.status=#{query.status}
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/NcProgramExportDncPageVO.java
@@ -21,4 +21,6 @@
    private String drawingNoEdition;
    @Schema(description = "工序名称")
    private String processName;
    @Schema(description = "工序号")
    private String processNo;
}