liurunyu
5 天以前 e1f1023dee5d094fcb1e428f36cce09211c4542a
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
package com.dy.pipIrrGlobal.pojoMd;
 
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.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.*;
import org.hibernate.validator.constraints.Length;
 
import java.util.Date;
 
/**
 * @Author: liurunyu
 * @Date: 2025/8/15 15:22
 * @Description
 */
@TableName(value="md_crops", autoResultMap = true)
@Data
@Builder
@ToString
@NoArgsConstructor
@AllArgsConstructor
@Schema(name = "作物实体")
public class MdCrops implements BaseEntity {
 
    public static final long serialVersionUID = 202508061126001L;
    /**
     * 主键
     */
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    @TableId(type = IdType.INPUT)
    @Schema(description = "实体id", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Long id;
 
    /**
     * 指向气象站外键
     */
    @Schema(description = "关联的气象站", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "关联的气象站不能为空") //不能为空也不能为null
    public Long weatherId;
 
    /**
     * 作物名称
     */
    @Schema(description = "作物名称", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "作物名称不能为空") //不能为空也不能为null
    @Length(message = "作物名称不大于{max}字,不小于{min}字", min = 1, max = 50)
    public String name;
 
    /**
     * 计算开始日期(一年生作物是种植时间或出芽时间),如果为空值则为长久计算,格式yyyy-mm-dd
     */
    @Schema(description = "计算开始日期(一年生作物是种植时间或出芽时间),如果为空值则为长久计算,格式yyyy-mm-dd", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    @JsonFormat(pattern = "MM-dd")
    public String startDt;
 
    /**
     * 计算截止日期(一年生作物是停止灌溉时间),如果为空值则为长久计算,格式yyyy-mm-dd
     */
    @Schema(description = "计算截止日期(一年生作物是停止灌溉时间),如果为空值则为长久计算,格式yyyy-mm-dd", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    @JsonFormat(pattern = "MM-dd")
    public String endDt;
 
 
    /**
     * 生长初期开始天数(默认是1)
     */
    @Schema(description = "生长初期开始天数(默认是1)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Integer life1Start;
 
    /**
     * 生长初期结束天数
     */
    @Schema(description = "生长初期结束天数", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Integer life1End;
 
    /**
     * 生长初期作物系数
     */
    @Schema(description = "生长初期作物系数", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Double life1Factor ;
 
    /**
     * 快速生长期开始天数(默认生长初期结束天数+1)
     */
   @Schema(description = "快速生长期开始天数(默认生长初期结束天数+1)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
   public Integer life2Start;
 
    /**
     * 快速生长期结束天数
     */
    @Schema(description = "快速生长期结束天数", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Integer life2End;
 
    /**
     * 快速生长期作物系数
     */
    @Schema(description = "快速生长期作物系数", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Double life2Factor ;
 
    /**
     * 生长中期开始天数(默认快速生长期结束天数+1)
     */
    @Schema(description = "生长中期开始天数(默认快速生长期结束天数+1)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Integer life3Start;
 
    /**
     * 生长中期结束天数
     */
    @Schema(description = "生长中期结束天数", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Integer life3End;
 
    /**
     * 生长中期作物系数
     */
    @Schema(description = "生长中期作物系数", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Double life3Factor ;
 
    /**
     * 生长末期开始天数(默认生长中期结束天数+1)
     */
    @Schema(description = "生长末期开始天数(默认生长中期结束天数+1)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Integer life4Start;
 
    /**
     * 生长末期结束天数
     */
    @Schema(description = "生长末期结束天数", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Integer life4End;
 
    /**
     * 生长末期作物系数
     */
    @Schema(description = "生长末期作物系数", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Double life4Factor ;
 
    /**
     * 是否停止计算,1是,0否
     */
    @Schema(description = "停止计算标识", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Byte stopped;
 
    /**
     * 备注
     */
    @Schema(description = "备注", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    @Length(message = "备注不大于{max}字,不小于{min}字", min = 1, max = 100)
    public String remarks;
 
    /**
     * 数据记录创建日期,格式yyyy-mm-dd hh:mm:ss
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    public Date createDt;
 
    /**
     * 是否删除: 0表示未删除  1表示删除.
     */
    @Schema(description = "作物删除标志,表单不用填写", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Byte deleted;
 
}