| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200 |
- package com.kym.entity.admin.vo;
- import com.alibaba.fastjson2.JSONArray;
- import com.alibaba.fastjson2.JSONObject;
- import com.alibaba.fastjson2.annotation.JSONCreator;
- import com.alibaba.fastjson2.annotation.JSONField;
- import com.baomidou.mybatisplus.annotation.TableField;
- import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
- import com.kym.entity.BaseEntity;
- import com.kym.entity.admin.Activity;
- import com.kym.entity.enplus.EnEquipmentInfo;
- import lombok.Data;
- import lombok.NoArgsConstructor;
- import lombok.experimental.Accessors;
- import java.io.Serializable;
- import java.util.List;
- /**
- * <p>
- * 充电站信息
- * </p>
- *
- * @author skyline
- * @since 2023-08-12
- */
- @Data
- @NoArgsConstructor
- @Accessors(chain = true)
- public class StationVo extends BaseEntity implements Serializable {
- private static final long serialVersionUID = 1L;
- /**
- * 电站组id
- */
- private Long groupId;
- /**
- * en+充电站id
- */
- @JSONField(name = "StationID")
- private String stationId;
- /**
- * en+运营商id
- */
- @JSONField(name = "OperatorID")
- private String operatorId;
- /**
- * 设备所属运营平台组织机构代码
- */
- @JSONField(name = "EquipmentOwnerID")
- private String equipmentOwnerId;
- /**
- * 站点名称
- */
- @JSONField(name = "StationName")
- private String stationName;
- /**
- * 充电中国家代码:CN
- */
- @JSONField(name = "CountryCode")
- private String countryCode;
- /**
- * 充电站省市辖区编码
- */
- @JSONField(name = "AreaCode")
- private String areaCode;
- /**
- * 地址
- */
- @JSONField(name = "Address")
- private String address;
- /**
- * 站点电话
- */
- @JSONField(name = "StationTel")
- private String stationTel;
- /**
- * 服务电话
- */
- @JSONField(name = "ServiceTel")
- private String serviceTel;
- /**
- * 站点类型:1:公共 50:个人 100:公交(专业)101:环卫(专用)102:物流(专用)103:出租车(专用)255:其他
- */
- @JSONField(name = "StationType")
- private Integer stationType;
- /**
- * 站点状态:0:未知 1:建设中 5:关闭下线 6:维护中 50:正常使用
- */
- @JSONField(name = "StationStatus")
- private Integer stationStatus;
- /**
- * 充电车位数量
- */
- @JSONField(name = "ParkNums")
- private Integer parkingNum;
- /**
- * 充电桩位置坐标
- * <p>
- * FastjsonTypeHandler
- * 支持 MVC JSON 解析
- * 不支持 MySQL JSON 解析
- * <p>
- * JacksonTypeHandler
- * 支持 MVC JSON 解析
- * 支持 MySQL JSON 解析
- */
- @TableField(typeHandler = JacksonTypeHandler.class)
- private JSONObject location;
- /**
- * 站点引导
- */
- @JSONField(name = "SiteGuide")
- private String siteGuide;
- /**
- * 建设场所:1:居民区 2:公共机构 3:企事业单位 4:写字楼 5:工业园区 6:交通枢纽 7:大型文体设施 8:城市绿地 9:大型建筑配建停车场 10:路边停车位 11:城际高速服务区 255:其他
- */
- @JSONField(name = "Construction")
- private Integer construction;
- /**
- * 站点照片
- */
- private String pictures;
- /**
- * 使用车型描述
- */
- @JSONField(name = "MatchCars")
- private String matchCars;
- /**
- * 车位楼层及数量描述
- */
- @JSONField(name = "ParkInfo")
- private String parkInfo;
- /**
- * 营业时间描述
- */
- @JSONField(name = "BusineHours")
- private String businessHours;
- /**
- * 充电费描述
- */
- @JSONField(name = "ElectricityFee")
- private String electricityFee;
- /**
- * 服务费率描述
- */
- @JSONField(name = "ServiceFee")
- private String serviceFee;
- /**
- * 停车费
- */
- @JSONField(name = "ParkFee")
- private String parkFee;
- /**
- * 支付方式:刷卡、线上、现金(电子钱包类卡为刷卡、身份鉴权卡、微信/支付宝、APP为线上)
- */
- @JSONField(name = "Payment")
- private String payment;
- /**
- * 是否支持预约:0:不支持 1:支持
- */
- @JSONField(name = "SupportOrder")
- private Integer supportOrder;
- /**
- * 备注
- */
- @JSONField(name = "Remark")
- private String remark;
- /**
- * 充电设备信息列表
- */
- @TableField(exist = false)
- private List<EnEquipmentInfo> equipmentInfos;
- /**
- * 站点活动
- */
- @TableField(exist = false)
- private List<Activity> activityList;
- @JSONCreator
- public StationVo(@JSONField(name = "StationLng") Double lng, @JSONField(name = "StationLat") Double lat, @JSONField(name = "EquipmentInfos") JSONArray array) {
- this.location = JSONObject.of("stationLng", lng, "stationLat", lat);
- this.equipmentInfos = array.toJavaList(EnEquipmentInfo.class);
- }
- }
|