liurunyu
19 小时以前 83d9b0de6d127cf0f2822c51139fa4e15a3326e7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
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.NotBlank;
import jakarta.validation.constraints.Positive;
import jakarta.validation.constraints.Size;
import lombok.*;
import org.hibernate.validator.constraints.Length;
 
import java.util.Date;
 
/**
 * @author ZhuBaoMin
 * @date 2025-06-06 10:21
 * @LastEditTime 2025-06-06 10:21
 * @Description
 */
 
/**
 * 农户水卡表
 */
 
@TableName(value="se_client_card", autoResultMap = true)
@Data
@Builder
@ToString
@NoArgsConstructor
@AllArgsConstructor
public class SeClientCard implements BaseEntity {
    public static final long serialVersionUID = 202401151518004L;
 
    /**
     * 主键
     */
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    @TableId(type = IdType.INPUT)
    private Long id;
 
    @NotBlank(message = "通讯协议不能为空")
    private String protocol;
 
    /**
     * 水卡地址
     */
    @NotBlank(message = "水卡地址不能为空")
    private String cardaddr;
 
    /**
     * 水卡编号
     */
    @NotBlank(message = "水卡编号不能为空")
    private String cardnum;
 
    /**
     * 农户ID
     */
    @NotBlank(message = "农户ID不能为空")
    private Long clientid;
 
    /**
     * 余额
     */
    @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
    private Float money;
 
    /**
     * 卡片状态;1-正常,2-已注销,3-已挂失
     */
    @Positive(message = "卡片状态必须为1或2或3")
    @Size(min = 1, max = 3)
    private Byte state;
 
    /**
     * 原挂失卡ID
     */
    @Positive(message = "原挂失卡ID必须为正数")
    private Long originalCardId;
 
    /**
     * 开卡时间
     */
    private Date createdt;
 
    /**
     * 补卡时间
     */
    private Date replacedt;
 
    /**
     * 充值时间
     */
    private Date rechargedt;
 
    /**
     * 挂失时间
     */
    private Date lossdtdt;
 
    /**
     * 注销时间
     */
    @Schema(description = "注销时间", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    private Date canceldt;
 
    /**
     * 解锁时间
     */
    private Date unlockdt;
 
    /**
     * 冲正时间
     */
    private Date reversaldt;
 
    /**
     * 补扣时间
     */
    private Date refunddt;
 
    /**
     * 消费时间
     */
    private Date consumedt;
 
    /**
     * 最后操作类型;1-开卡,2-补卡,3-充值,4-挂失,5-注销,6-解锁,7-冲正,8-消费
     */
    @Positive(message = "卡片状态必须为1到8的正整数")
    @Size(min = 1, max = 8)
    private Byte lastoper;
 
    /**
     * 备注信息
     */
    @Length(message = "备注长度小于{max}字", min = 1, max = 200)
    private String remarks;
 
    /**
     * 订单号
     */
    private String orderNo;
}