yyy
2026-04-21 1d2370a15e299c033c11a3fd1416596f9b9f1a2d
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
package com.xiaopeng.api.model.operation;
 
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 com.xiaopeng.common.core.web.domain.BaseModel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
 
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.time.LocalDateTime;
 
/**
 * <p>
 * 场站
 * </p>
 *
 * @author mitao
 * @since 2026-04-12
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("xp_station")
@ApiModel(value = "XpStation对象", description = "场站")
public class XpStation extends BaseModel {
 
    private static final long serialVersionUID = 1L;
 
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
 
    @ApiModelProperty(value = "场站名称,C端展示主标题")
    @NotNull(message = "场站名称不能为空")
    private String stationName;
 
    @ApiModelProperty(value = "场站编号唯一 规则:城市首字母-HUB-4位流水号")
    private String stationNumber;
 
    @ApiModelProperty(value = "场站状态 0=草稿 1=待启用 2=启用中 3=已停用 4=失效")
    private Integer status;
 
 
    public String getStatusName() {
        if(status != null){
            if(status == 0){
                return "草稿";
            }else if(status == 1){
                return "待启用";
            } else if(status == 2){
                return "启用中";
            }else if(status == 3){
                return "已停用";
            }else if(status == 4){
                return "失效";
            }
        }
        return "";
    }
 
 
    @ApiModelProperty(value = "城市code")
    private String cityCode;
 
    @ApiModelProperty(value = "城市名称")
    private String cityName;
 
    @ApiModelProperty(value = "所属电子围栏id")
    @NotNull(message = "所属电子围栏id不能为空")
    private Long electronicId;
 
    @ApiModelProperty(value = "所属运营区id")
    @NotNull(message = "所属运营区id不能为空")
    private Long electronicAreaId;
 
    @ApiModelProperty(value = "默认展示点位id")
    private Long defaultPointId;
 
    @ApiModelProperty(value = "场站面积")
    private BigDecimal stationArea;
 
    @ApiModelProperty(value = "场站围栏点位 经度_纬度,经度_纬度")
    @NotNull(message = "场站围栏点位不能为空")
    private String fencePoints;
 
    @ApiModelProperty(value = "中心点经度")
    private Double centerLon;
 
    @ApiModelProperty(value = "中心点纬度")
    private Double centerLat;
 
    @ApiModelProperty(value = "限停时长")
    private Integer parkingTimeLimit;
 
    @ApiModelProperty(value = "运营类型 1=与运营区同步 2=自定义时间段")
    private Integer operationType;
 
    @ApiModelProperty(value = "生效周期 1=每日 2=仅工作日 3=仅非工作日 4=仅节假日")
    private Integer effectivePeriod;
 
    @ApiModelProperty(value = "生效时间段")
    private String effectiveTimePeriod;
 
    @ApiModelProperty(value = "是否同步运营信息到子点位 0=否 1=是")
    private Integer syncToPoints;
 
    @ApiModelProperty(value = "备注")
    private String remark;
 
    @ApiModelProperty(value = "停用原因")
    private String stopReason;
 
    @ApiModelProperty(value = "测试不通过原因")
    private String testFailReason;
 
    @ApiModelProperty(value = "计划生效时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime effectTime;
 
    @ApiModelProperty(value = "场站内排序")
    private Integer sortNo;
 
    @ApiModelProperty(value = "点位总数")
    @TableField(exist = false)
    private Integer pointCount;
 
    @ApiModelProperty(value = "运营中点位数")
    @TableField(exist = false)
    private Integer operatingPointCount;
}