package com.dy.pipIrrGlobal.pojoSe; import com.alibaba.fastjson2.annotation.JSONField; import com.alibaba.fastjson2.writer.ObjectWriterImplToString; import com.baomidou.mybatisplus.annotation.IdType; 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 jakarta.validation.constraints.Max; import jakarta.validation.constraints.Min; import jakarta.validation.constraints.NotNull; import lombok.*; import java.util.Date; /** * @author ZhuBaoMin * @date 2024-05-23 16:44 * @LastEditTime 2024-05-23 16:44 * @Description */ /** * 虚拟卡表 */ @TableName(value="se_virtual_card", autoResultMap = true) @Data @Builder @ToString @NoArgsConstructor @AllArgsConstructor @Schema(name = "虚拟卡实体") public class SeVirtualCard implements BaseEntity { public static final long serialVersionUID = 202403052048001L; /** * 主键 */ @JSONField(serializeUsing= ObjectWriterImplToString.class) @TableId(type = IdType.INPUT) @Schema(description = "实体id", requiredMode = Schema.RequiredMode.NOT_REQUIRED) private Long id; /** * 虚拟卡编号 */ @Schema(description = "虚拟卡编号", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @NotNull(message = "虚拟卡编号不能为空") private Long vcNum; /** * 农户ID */ @Schema(description = "农户ID", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @NotNull(message = "农户ID不能为空") private Long clientId; /** * 钱包余额 */ @Schema(description = "钱包余额", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @Min(value = 0, message = "钱包余额不能小于0") @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) private Double money; /** * 水卡状态;1-正常,2-已注销 */ @Min(value = 1, message = "水卡状态不能小于1") @Max(value = 2, message = "水卡状态不能大于2") private Byte state; /** * 最后操作;1-开户,2-充值,3-消费,4-申请退款,5-退款审核 */ @Schema(description = "操作类型", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @Min(value = 1, message = "最后操作不能小于1") @Max(value = 5, message = "最后操作不能大于5") private Byte lastOperate; /** * 最后操作时间 */ @Schema(description = "最后操作时间", requiredMode = Schema.RequiredMode.NOT_REQUIRED) private Date lastOperateTime; /** * 是否使用中;0-未使用,1-使用中 */ @Schema(description = "是否使用中", requiredMode = Schema.RequiredMode.NOT_REQUIRED) private Byte inUse; /** * 取水口ID(虚拟卡使用时所应用于的取水口ID) */ @Schema(description = "取水口ID", requiredMode = Schema.RequiredMode.NOT_REQUIRED) private Long intakeId; /** * 开阀时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date openTime; /** * 创建时间 */ @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.NOT_REQUIRED) private Date createTime; }