package com.dy.pipIrrGlobal.pojoRm; import com.alibaba.fastjson2.JSONObject; 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.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; import com.dy.common.po.BaseEntity; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import lombok.*; import java.util.Date; /** * @author ZhuBaoMin * @date 2024-05-21 16:53 * @LastEditTime 2024-05-21 16:53 * @Description 命令日志实体类 */ /** * 命令日志表 */ @TableName(value = "rm_command_history", autoResultMap = true) @Data @Builder @ToString @NoArgsConstructor @AllArgsConstructor public class RmCommandHistory implements BaseEntity{ public static final long serialVersionUID = 202401151517005L; /** * 主键 */ @JSONField(serializeUsing = ObjectWriterImplToString.class) @TableId(type = IdType.INPUT) private Long id; /** * 功能码 */ @JSONField(serializeUsing = ObjectWriterImplToString.class) @NotBlank(message = "功能码不能为空") private String commandCode; /** * 操作内容 */ private String commandName; /** * 阀控器地址 */ @NotBlank(message = "阀控器地址不能为空") private String rtuaddr; /** * 通讯协议 */ @NotBlank(message = "通讯协议不能为空") private String protocol; /** * 命令类型 */ @NotBlank(message = "命令类型不能为空") private String commandType; /** * 回调URL */ @NotBlank(message = "回调URL不能为空") private String callback; /** * 参数数据 */ @TableField(typeHandler = JacksonTypeHandler.class) private JSONObject param; /** * 发送命令时间 */ @NotNull(message = "发送命令时间不能为空") private Date sendTime; /** * 操作人 */ @JSONField(serializeUsing = ObjectWriterImplToString.class) @NotNull(message = "操作人不能为空") private Long operator; /** * 命令结果;0-失败,1-成功 */ private Byte result; /** * 收到命令结果时间 */ private Date resultTime; /** * 命令结果内容 */ @TableField(typeHandler = JacksonTypeHandler.class) private JSONObject resultText; }