liurunyu
2024-06-26 e8d6c405c367e1bd501a6f6b4fa8cfa0dddbd806
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
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
package com.dy.pipIrrGlobal.pojoRm;
 
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.mw.protocol.p206V202404.DataV202404;
import com.dy.common.mw.protocol.p206V202404.upVos.DataCd84Vo;
import com.dy.common.mw.protocol.p206V202404.upVos.DataCd85Vo;
import com.dy.common.po.BaseEntity;
import com.dy.common.util.DateTime;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
 
import java.util.Date;
 
/**
 * @author ZhuBaoMin
 * @date 2024-06-20 10:34
 * @LastEditTime 2024-06-20 10:34
 * @Description
 */
/**
 * 开关阀报最新数据表
 */
 
@TableName(value="rm_open_close_last", autoResultMap = true)
@Data
@Builder
@ToString
@NoArgsConstructor
@AllArgsConstructor
@Schema(name = "开关阀报最新数据表")
public class RmOpenCloseLast implements BaseEntity {
    public static final long serialVersionUID = 202406201041001L;
 
    /**
     * 主键
     */
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    @TableId(type = IdType.INPUT)
    public Long id;
 
    /**
     * 控制器实体ID(外键)
     */
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    public Long controllerId;
 
    /**
     * 取水口实体ID(外键)
     */
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    public Long intakeId;
 
    /**
     * 控制器地址
     */
    public String rtuAddr;
 
    /**
     * 开阀数据接收日期时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    public Date opDt;
 
    /**
     * 开阀控制器时钟
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    public Date opRtuDt;
 
    /**
     * IC卡地址(远程关闭时为0)
     */
    public String opIcCardAddr;
 
    /**
     * IC卡编号(17位数字)
     */
    public String opIcCardNo;
 
    /**
     * 开阀订单号(16位数字)
     */
    public String opOrderNo;
 
    /**
     * 开泵/阀时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    public Date openDt;
 
    /**
     * 开阀水表累计水量
     */
    public Double opWaterTotalAmount;
 
    /**
     * 开阀电表累计电量
     */
    public Double opEleTotalAmount;
 
    /**
     * 开阀用户剩余金额
     */
    public Double opMoneyRemainUser;
 
    /**
     * 开阀用户剩余水量
     */
    public Double opWaterRemainUser;
 
    /**
     * 关泵/阀方式
     */
    public Byte opType;
 
    /**
     * 关阀IC卡地址(远程关闭时为0)
     */
    public String clIcCardAddr;
 
    /**
     * 关阀IC卡编号(17位数字)
     */
    public String clIcCardNo;
 
    /**
     * 关阀订单号(16位数字)
     */
    public String clOrderNo;
 
    /**
     * 开始时间(分时日月)
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    public Date startDt;
 
    /**
     * 结束时间(分时日月)
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    public Date endDt;
 
    /**
     * 水表累计流量
     */
    public Double clWaterTotalAmount;
 
    /**
     * 电表累计电量
     */
    public Double clEleTotalAmount;
 
    /**
     * 用户剩余金额
     */
    public Double clMoneyRemainUser;
 
    /**
     * 用户剩余水量
     */
    public Double clWaterRemainUser;
 
    /**
     * 本次使用电量
     */
    public Double thisEle;
 
    /**
     * 本次使用水量
     */
    public Double thisWater;
 
    /**
     * 本次使用金额
     */
    public Double thisMoney;
 
    /**
     * 本次使用时间长
     */
    public Integer thisDuration;
 
    public void valueFrom84(DataV202404 dataV202404, DataCd84Vo cdData) throws Exception{
        this.opDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataV202404.dt);
        this.openDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(cdData.opDt);
        //this.opRtuDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(cdData.opDt);
        this.opIcCardAddr = cdData.icCardAddr;
        this.opIcCardNo = cdData.icCardNo;
        this.opOrderNo = cdData.orderNo;
        this.opWaterTotalAmount = cdData.waterTotalAmount;
        this.opEleTotalAmount = cdData.eleTotalAmount;
        this.opMoneyRemainUser = cdData.moneyRemainUser;
        this.opWaterRemainUser = cdData.waterRemainUser;
    }
 
    public void valueFrom85(DataV202404 dataV202404, DataCd85Vo cdData) throws Exception{
        this.startDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(cdData.startDt);
        this.endDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(cdData.endDt);
        this.opType = cdData.opType;
        this.clIcCardAddr = cdData.icCardAddr;
        this.clIcCardNo = cdData.icCardNo;
        this.clOrderNo = cdData.orderNo;
        this.clWaterTotalAmount = cdData.waterTotalAmount;
        this.clEleTotalAmount = cdData.eleTotalAmount;
        this.clMoneyRemainUser = cdData.moneyRemain;
        this.clWaterRemainUser = cdData.waterRemain;
        this.thisEle = cdData.thisEle;
        this.thisWater = cdData.thisWater;
        this.thisMoney = cdData.thisMoney;
        this.thisDuration = cdData.thisDuration;
    }
}