yangys
2025-08-10 79175184a6b131cef9a318ffd34529f10373c331
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/entity/NcNode.java
@@ -4,6 +4,10 @@
import lombok.Getter;
import lombok.Setter;
import org.springblade.core.mp.base.BizEntity;
import org.springblade.mdm.flow.entity.FlowProgramFile;
import java.util.Date;
@Setter
@Getter
@@ -49,6 +53,19 @@
    */
   public static final String TYPE_PROGRAM_FILE = "70";
   /**
    * 文件节点文件类型:程序
    */
   public static final String FILE_CATEGOAY_PROGRAM = "program";
   /**
    * 文件节点文件类型:其他
    */
   public static final String FILE_CATEGORY_OTHER = "other";
   /**
    * 文件节点文件类型:子程序
    */
   public static final String FILE_CATEGORY_SUBPROGRAM = "subprogram";
   private String name;
   private Long parentId;
@@ -61,8 +78,10 @@
    */
   private String machineCode;
   /**
    * 文件类型,只有
    */
   //private String fileCategory;
   /**
    * 工序,如“精铣”
    */
@@ -78,6 +97,10 @@
    */
   private String craftEdition;
   /**
    * 是否最新版次,1:最新版次;0:历史版次
    */
   private Integer isLastEdition = 1;
   /**
    * 零组件号/图号
    */
   private String drawingNo;
@@ -89,15 +112,15 @@
   /**
    * 是否固化
    */
   private Integer isCured;
   private Integer isCured = 0;
   /**
    * 过期日期
    */
   //private LocalDate expireDate;
   private Date expireDate;
   /**
    * 是否锁定
    */
   //private Integer isLocked;
   private Integer isLocked = 0;
   /**
    * 节点类型:字典
     */
@@ -110,6 +133,68 @@
    * 程序文件节点的数据
    */
   private String processNo;
   /**
    * 产品型号
    */
   private String productModel;
   /**
    * 程序编号(程序包名节点需要)
    */
   private String programNo;
   /**
    * 流程程序文件id,只有程序文件(70)类型的节点有此值
    */
   private Long flowProgramFileId;
   /**
    * 审批时的流程实例id,只有程序包节点有这个字段值
    */
   private String processInstanceId;
   /**
    * 偏离单号
    */
   private String deviation;
   /**
    * 版本号,更新一次(入升版,dnc导入),就会+1
    */
   private Integer versionNumber = 1;
   transient FlowProgramFile flowProgramFile;
   /**
    * 根据当前版本号,获取新增版本号
    * @return 升级后的版本号
    */
   public int genNewVersionNumber(){
      if(this.versionNumber == null){
         return 1;
      }else{
         return this.versionNumber + 1;
      }
   }
   /**
    * 是否在有效期内
    * @return 是否
    */
   public boolean withinValidityPeriod() {
      if(expireDate == null){
         return true;
      }
      return expireDate.getTime() > System.currentTimeMillis();
   }
   /**
    * 是否已经固化
    * @return 是否
    */
   public boolean hasCured() {
      return this.isCured != null && this.isCured == 1;
   }
   public void upgradeVersionNUmber() {
      this.versionNumber = genNewVersionNumber();
   }
}