package com.usky.vpp.domain; 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.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import lombok.EqualsAndHashCode; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import java.io.Serializable; import java.time.LocalDateTime; /** * vpp_contract_template */ @Data @EqualsAndHashCode(callSuper = false) @TableName("vpp_contract_template") public class VppContractTemplate implements Serializable { private static final long serialVersionUID = 1L; @TableId(value = "id", type = IdType.AUTO) private Long id; @TableField("template_code") @NotBlank(message = "模板编码不能为空!") private String templateCode; @TableField("template_name") @NotBlank(message = "模板名称不能为空!") private String templateName; /** * 1、购售电合同 2、需求响应合作协议 3、聚合代理协议(2024 版) 4、虚拟电厂服务代理协议 5、居民个人充电桩协议 */ @TableField("contract_type") @NotNull(message = "合同类型不能为空!") private Integer contractType; /** * 模板分类:1居间/层间 2普通/直网(用于一对一关联校验) */ @TableField("template_kind") private Integer templateKind; private String version; @TableField("file_url") @NotBlank(message = "文件路径不能为空!") private String fileUrl; @TableField("variables_json") private String variablesJson; @TableField("is_enabled") @NotNull(message = "是否启用不能为空!") private Integer isEnabled; @TableField("tenant_id") private Integer tenantId; @TableField("create_time") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime createTime; @TableField("update_time") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime updateTime; @TableField("created_by") private String createdBy; @TableField("updated_by") private String updatedBy; @TableField("delete_flag") private Integer deleteFlag; @TableField("deleted_at") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime deletedAt; }