123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253 |
- package com.xy.dto;
- import com.fasterxml.jackson.annotation.JsonFormat;
- import com.xy.utils.PageBean;
- import io.swagger.annotations.ApiModelProperty;
- import lombok.Data;
- import lombok.experimental.Accessors;
- import javax.validation.constraints.NotBlank;
- import javax.validation.constraints.NotEmpty;
- import javax.validation.constraints.NotNull;
- import java.time.LocalDateTime;
- import java.util.List;
- /**
- * <p>
- * 设备计费表
- * </p>
- *
- * @author lijin
- * @since 2023-04-14
- */
- public class DeviceChargingDto {
- @Data
- @Accessors(chain = true)
- public static class Del {
- @NotEmpty(message = "设备id不能为空")
- @ApiModelProperty(value = "设备id")
- private List<Long> deviceId;
- }
- @Data
- @Accessors(chain = true)
- public static class Check {
- @NotEmpty(message = "设备id不能为空")
- @ApiModelProperty(value = "设备id")
- private Long deviceId;
- }
- @Data
- @Accessors(chain = true)
- public static class Charging {
- @NotEmpty(message = "设备id不能为空")
- @ApiModelProperty(value = "设备id集合")
- private List<Long> deviceIds;
- }
- @Data
- @Accessors(chain = true)
- public static class Page {
- @ApiModelProperty("分页对象")
- private PageBean page;
- @ApiModelProperty("商户id")
- private Long mercId;
- @ApiModelProperty("设备id")
- private Long deviceId;
- @ApiModelProperty("状态类型 字典=device_charging_query_type")
- private Integer chargingStatus;
- @ApiModelProperty(hidden = true)
- private LocalDateTime thisTime;
- @ApiModelProperty(hidden = true)
- private LocalDateTime theTime;
- }
- @Data
- @Accessors(chain = true)
- public static class Pay {
- @NotBlank(message = "orderId不能为空")
- @ApiModelProperty("订单号")
- private String orderId;
- @NotNull(message = "mercId不能为空")
- @ApiModelProperty(value = "商户id")
- private Long mercId;
- @NotEmpty(message = "deviceChargings不能为空")
- @ApiModelProperty("续费信息")
- private List<DeviceCharging> deviceChargings;
- @NotNull(message = "payType不能为空")
- @ApiModelProperty(value = "支付类型 2=支付宝 3=微信 100=赠送")
- private Integer payType;
- @ApiModelProperty(value = "备注")
- private String note;
- @Data
- @Accessors(chain = true)
- public static class DeviceCharging {
- @ApiModelProperty("设备id")
- private Long deviceId;
- @ApiModelProperty("购买年数/赠送天数")
- private Integer num;
- @ApiModelProperty("续费金额")
- private Integer chargingMoney;
- }
- }
- @Data
- @Accessors(chain = true)
- public static class PayNotice {
- @NotBlank(message = "orderId不能为空")
- private String orderId;
- }
- @Data
- @Accessors(chain = true)
- public static class PayCheck {
- @NotEmpty(message = "deviceId不能为空")
- @ApiModelProperty("设备id")
- private List<Long> deviceId;
- }
- @Data
- @Accessors(chain = true)
- public static class PayCheckVo {
- @ApiModelProperty(value = "设备信息")
- private DeviceInfo deviceInfo;
- @ApiModelProperty(value = "算法包月信息")
- private DeviceAlgorithmCharging moonDeviceAlgorithmCharging;
- @ApiModelProperty(value = "算法购买信息")
- private DeviceAlgorithmCharging infDeviceAlgorithmCharging;
- @Data
- @Accessors(chain = true)
- public static class DeviceInfo {
- @ApiModelProperty("设备id")
- private Long deviceId;
- @ApiModelProperty("设备名称")
- private String deviceName;
- @ApiModelProperty("设备类型")
- private Integer deviceType;
- @ApiModelProperty("设备类型名称")
- private String deviceTypeName;
- @ApiModelProperty("计费标准说明")
- private String standard;
- @ApiModelProperty("激活状态")
- private Integer activeState;
- @ApiModelProperty("运营状态")
- private Integer busyState;
- @ApiModelProperty("冻结状态")
- private Integer freezeStatus;
- @ApiModelProperty("价格")
- private Integer money;
- }
- @Data
- @Accessors(chain = true)
- public static class DeviceAlgorithmCharging {
- @ApiModelProperty("算法id")
- private Long algorithmId;
- @ApiModelProperty("算法名称")
- private String algorithmName;
- @ApiModelProperty("设备id")
- private Long deviceId;
- @ApiModelProperty("设备名称")
- private String deviceName;
- @ApiModelProperty("设备类型")
- private Integer deviceType;
- @ApiModelProperty("设备类型名称")
- private String deviceTypeName;
- @ApiModelProperty("计费标准说明")
- private String standard;
- @ApiModelProperty("价格")
- private Integer money;
- }
- }
- @Data
- @Accessors(chain = true)
- public static class Vo {
- @ApiModelProperty(value = "设备id")
- private Long deviceId;
- @ApiModelProperty(value = "累计续费金额")
- private Integer chargingSumMoney;
- @ApiModelProperty(value = "过期时间")
- @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
- private LocalDateTime timeout;
- @ApiModelProperty(value = "创建时间")
- @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
- private LocalDateTime createTime;
- @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
- @ApiModelProperty(value = "最后续费时间")
- private LocalDateTime lastChargingTime;
- @ApiModelProperty(value = "最后续费金额")
- private Integer lastChargingMoney;
- @ApiModelProperty(value = "最后续费方式")
- private Integer lastChargingPayType;
- @ApiModelProperty(value = "过期状态说明")
- private String timeoutStatus;
- }
- @Data
- @Accessors(chain = true)
- public static class PageVo {
- @ApiModelProperty(value = "计费信息")
- private Vo deviceCharging;
- @ApiModelProperty(value = "设备信息")
- private DeviceInfoDto.Vo deviceInfo;
- @ApiModelProperty(value = "计费标准金额/年")
- private Integer chargingMoney;
- }
- }
|