yangys
2025-09-17 3907579a69079b5ee462d17799e3995d9cd77fd4
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeAutoCreateService.java
@@ -41,7 +41,7 @@
    * @param programProperties 程序属性
    */
   @Transactional
   public NcNode createNodeTreeToMachine(FlowProgramProperties programProperties) {
   public NcNode createNodeTreeToMachineGroup(FlowProgramProperties programProperties) {
      NcNode root;
      if(programProperties.getProcessDefinitionKey().equals(FlowContants.TRY_PROCESS_KEY)){
         if(Func.isEmpty(programProperties.getDeviation()) ||
@@ -78,9 +78,9 @@
      //工序版次节点
      NcNode processEditionNode = createNodeIfNotExists(programProperties.getProcessEdition(),NcNode.TYPE_PROCESS_EDITION, processNoNode,programProperties,null);
      //加工机床节点
      return createNodeIfNotExists(programProperties.getMachineCode(),NcNode.TYPE_MACHINE_CODE, processEditionNode,programProperties,null);
      return createNodeIfNotExists(programProperties.getMachineGroupCode(),NcNode.TYPE_MACHINE_GROUP, processEditionNode,programProperties,null);
   }
   /*
   @Transactional
   public NcNode createNodeTreeToProcessEdition(FlowProgramProperties programProperties) {
      NcNode root;
@@ -121,6 +121,7 @@
      //加工机床节点
      return createNodeIfNotExists(programProperties.getMachineCode(),NcNode.TYPE_MACHINE_CODE, processEditionNode,programProperties,null);
   }
   */
   /**
    * 根据流程信息,自动创建各个节点,包括程序节点
    * @param programProperties 程序属性
@@ -179,18 +180,21 @@
    */
   @Transactional
   public NcNode createTreeToPackage(FlowProgramProperties programProperties,Integer versionNumber) {
      NcNode machineCodeNode = createNodeTreeToMachine(programProperties);
      NcNode processEditionNode = this.ncNodeService.getById(machineCodeNode.getParentId());
      NcNode machineGroupNode = createNodeTreeToMachineGroup(programProperties);
      //NcNode processEditionNode = this.ncNodeService.getById(machineCodeNode.getParentId());
      //获取工序版次下其他机床名,存在则删除
      ncNodeService.lambdaUpdate().eq(NcNode::getNodeType,NcNode.TYPE_MACHINE_CODE)
      /*
      ncNodeService.lambdaUpdate().eq(NcNode::getNodeType,NcNode.TYPE_MACHINE_GROUP)
         .eq(NcNode::getParentId,processEditionNode.getId()).eq(NcNode::getIsLastEdition,1)
         .ne(NcNode::getName,machineCodeNode.getName()).remove();
       */
      //保持加工机床是最新下发任务的机床,不是新建一个机床节点,插叙工序版次下是否有其他的机床(零件号一致,工序号,工序版次一致)
      //获取
      //加工机床和程序包名在同一级节点,同在工序版次下级
      //程序包名在机床组下级 20250913
      String programPkgName = NcNodeService.genProgramName(programProperties.getDrawingNo(),programProperties.getProcessNo(),programProperties.getProcessEdition());
      return createNodeIfNotExists(programPkgName ,NcNode.TYPE_PROGRAM_PACKAGE, processEditionNode,programProperties,versionNumber);
      return createNodeIfNotExists(programPkgName ,NcNode.TYPE_PROGRAM_PACKAGE, machineGroupNode,programProperties,versionNumber);
   }
@@ -230,6 +234,7 @@
            ncNode.setProcessEdition(programProperties.getProcessEdition());
            ncNode.setProcessName(programProperties.getProcessName());
            ncNode.setMachineCode(programProperties.getMachineCode());
            ncNode.setMachineGroupCode(programProperties.getMachineGroupCode());
            ncNode.setProductModel(programProperties.getProductModel());
            ncNode.setDeviation(programProperties.getDeviation());