yangys
2025-08-22 9810791a41d381a10451f3e9770cfcfedf98e886
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/entity/NcNode.java
@@ -1,9 +1,14 @@
package org.springblade.mdm.program.entity;
import com.alibaba.excel.util.StringUtils;
import com.baomidou.mybatisplus.annotation.TableName;
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
@@ -50,6 +55,15 @@
   public static final String TYPE_PROGRAM_FILE = "70";
   /**
    * 未锁定
    */
   public static final int UNLOCK = 0;
   /**
    * 已锁定
    */
   public static final int LOCKED = 1;
   /**
    * 文件节点文件类型:程序
    */
   public static final String FILE_CATEGOAY_PROGRAM = "program";
@@ -73,7 +87,6 @@
    * 设备编号
    */
   private String machineCode;
   /**
    * 文件类型,只有
@@ -109,11 +122,11 @@
   /**
    * 是否固化
    */
   private Integer isCured;
   private Integer isCured = 0;
   /**
    * 过期日期
    */
   //private LocalDate expireDate;
   private Date expireDate;
   /**
    * 是否锁定
    */
@@ -149,4 +162,67 @@
    * 审批时的流程实例id,只有程序包节点有这个字段值
    */
   private String processInstanceId;
   /**
    * 偏离单号
    */
   private String deviation;
   /**
    * 版本号,更新一次(入升版,dnc导入),就会+1
    */
   private Integer versionNumber = 1;
   transient FlowProgramFile flowProgramFile;
   /**
    * 是否是偏离程序
    * @return 是否偏离
    */
   public boolean isDeviationProgram(){
      return StringUtils.isNotBlank(this.deviation);
   }
   /**
    * 根据当前版本号,获取新增版本号
    * @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();
   }
   /**
    * 锁定节点
    */
   public void lock() {
      this.isLocked = LOCKED;
   }
   public void unlock() {
      this.isLocked = UNLOCK;
   }
}