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; }