package com.dy.pipIrrGlobal.pojoUg; 
 | 
  
 | 
import com.alibaba.fastjson2.annotation.JSONField; 
 | 
import com.alibaba.fastjson2.writer.ObjectWriterImplToString; 
 | 
import com.baomidou.mybatisplus.annotation.IdType; 
 | 
import com.baomidou.mybatisplus.annotation.TableField; 
 | 
import com.baomidou.mybatisplus.annotation.TableId; 
 | 
import com.baomidou.mybatisplus.annotation.TableName; 
 | 
import com.dy.common.po.BaseEntity; 
 | 
import com.fasterxml.jackson.annotation.JsonFormat; 
 | 
import io.swagger.v3.oas.annotations.media.Schema; 
 | 
import lombok.*; 
 | 
import org.hibernate.validator.constraints.Length; 
 | 
  
 | 
import java.util.Date; 
 | 
  
 | 
/** 
 | 
 * @Author: liurunyu 
 | 
 * @Date: 2024/11/5 8:52 
 | 
 * @Description 
 | 
 */ 
 | 
@TableName(value="ug_rtu_program", autoResultMap = true) 
 | 
@Data 
 | 
@Builder 
 | 
@ToString 
 | 
@NoArgsConstructor 
 | 
@AllArgsConstructor 
 | 
@Schema(name = "RTU远程升级程序") 
 | 
public class UgRtuProgram implements BaseEntity { 
 | 
  
 | 
    public static final long serialVersionUID = 202411050919001L; 
 | 
    /** 
 | 
     * 主键 
 | 
     */ 
 | 
    @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED) 
 | 
    @JSONField(serializeUsing= ObjectWriterImplToString.class) 
 | 
    @TableId(type = IdType.INPUT) 
 | 
    public Long id; 
 | 
  
 | 
    /** 
 | 
    * 文件名 
 | 
    */ 
 | 
    @Schema(description = "升级程序文件名", requiredMode = Schema.RequiredMode.NOT_REQUIRED) 
 | 
    public String hexFileName; 
 | 
  
 | 
    /** 
 | 
    * 升级程序存放地址(4字节,8位十六进制字符) 
 | 
    */ 
 | 
    @Schema(description = "升级程序存放地址", requiredMode = Schema.RequiredMode.NOT_REQUIRED) 
 | 
    public String storeRamAddr; 
 | 
  
 | 
    /** 
 | 
    * 程序覆盖超始地址(4字节,8位十六进制字符) 
 | 
    */ 
 | 
    @Schema(description = "程序覆盖超始地址", requiredMode = Schema.RequiredMode.NOT_REQUIRED) 
 | 
    public String startRamAddr; 
 | 
  
 | 
    /** 
 | 
    * 升级程序计算字节数 
 | 
    */ 
 | 
    @Schema(description = "升级程序计算字节数", requiredMode = Schema.RequiredMode.NOT_REQUIRED) 
 | 
    public Integer programCalculateBytes; 
 | 
  
 | 
    /** 
 | 
    * 升级程序CRC16校验码 
 | 
    */ 
 | 
    @Schema(description = "升级程序CRC16校验码", requiredMode = Schema.RequiredMode.NOT_REQUIRED) 
 | 
    public Integer programCrc16; 
 | 
  
 | 
    /** 
 | 
    * 升级程序内容(程序文件内容字节数组) 
 | 
    */ 
 | 
    @Schema(description = "程序文件内容字节数组", requiredMode = Schema.RequiredMode.NOT_REQUIRED) 
 | 
    @JSONField(serialize = false) 
 | 
    public byte[] programBytes; 
 | 
  
 | 
    @Schema(description = "程序文件内容", requiredMode = Schema.RequiredMode.NOT_REQUIRED) 
 | 
    @TableField(exist = false) 
 | 
    public String programString; 
 | 
  
 | 
    /** 
 | 
    * 升级程序内容(解析后程序有效内容字节数组) 
 | 
    */ 
 | 
    @Schema(description = "升级程序内容字节数组", requiredMode = Schema.RequiredMode.NOT_REQUIRED) 
 | 
    @JSONField(serialize = false) 
 | 
    public byte[] fileBytes; 
 | 
  
 | 
    @Schema(description = "升级程序内容", requiredMode = Schema.RequiredMode.NOT_REQUIRED) 
 | 
    @TableField(exist = false) 
 | 
    public String fileString; 
 | 
  
 | 
    /** 
 | 
    * 备注 
 | 
    */ 
 | 
    @Schema(description = "备注", requiredMode = Schema.RequiredMode.NOT_REQUIRED) 
 | 
    @Length(message = "备注不大于{max}字,不小于{min}字", min = 1, max = 100) 
 | 
    public String remark; 
 | 
  
 | 
    /** 
 | 
    * 上传时间 
 | 
    */ 
 | 
    @Schema(description = "上传时间", requiredMode = Schema.RequiredMode.NOT_REQUIRED) 
 | 
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:SS") 
 | 
    public Date dt; 
 | 
  
 | 
    /** 
 | 
     * 删除标识 
 | 
     */ 
 | 
    @Schema(hidden=true) 
 | 
    @JSONField(serialize=false) 
 | 
    public Byte deleted; 
 | 
  
 | 
   
 | 
} 
 |