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.NotNull; import java.time.LocalDate; import java.time.LocalDateTime; import java.util.List; /** *

* 设备统计数据 *

* * @author lijin * @since 2023-01-11 */ public class DeviceDataDto { @Data @Accessors(chain = true) public static class Page extends Vo { @ApiModelProperty(value = "分页对象", required = true) private PageBean page; @JsonFormat(pattern = "yyyy-MM-dd") @ApiModelProperty(value = "创建时间-起") private LocalDate beginCreateTime; @JsonFormat(pattern = "yyyy-MM-dd") @ApiModelProperty(value = "创建时间-始") private LocalDate endCreateTime; public LocalDateTime getBeginCreateTime() { return beginCreateTime == null ? null : beginCreateTime.atTime(0, 0, 0); } public LocalDateTime getEndCreateTime() { return endCreateTime == null ? null : endCreateTime.atTime(23, 59, 59); } } @Data @Accessors(chain = true) public static class SaveOrAccum extends Vo { @NotNull(message = "deviceId不能为空") @ApiModelProperty(value = "设备ID") private Long deviceId; } @Data @Accessors(chain = true) public static class Vo { @ApiModelProperty(value = "id") private Integer id; @ApiModelProperty(value = "商户ID") private Long mercId; @ApiModelProperty(value = "设备ID") private Long deviceId; @ApiModelProperty(value = "统计类型;year|month|day") private String type; @ApiModelProperty(value = "统计日期;2022|202206|20220603") private Integer dateValue; @ApiModelProperty(value = "营业额;单位分") private Integer salesMoney; @ApiModelProperty(value = "销售笔数") private Integer salesCount; @ApiModelProperty(value = "销售商品数") private Integer goodsCount; @ApiModelProperty(value = "退款金额;单位分") private Integer refundMoney; @ApiModelProperty(value = "退款笔数") private Integer refundCount; @ApiModelProperty(value = "风险订单数") private Integer riskCount; @ApiModelProperty(value = "0元订单笔数") private Integer zeroCount; @ApiModelProperty(value = "设备故障数") private Integer deviceFaultCount; @ApiModelProperty(value = "创建时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime createTime; @ApiModelProperty(value = "更新时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime updateTime; } @Data @Accessors(chain = true) public static class ListDTO { @ApiModelProperty(value = "商户ID") private Long mercId; @ApiModelProperty(value = "设备ID") private Long deviceId; @ApiModelProperty(value = "设备ID们") private List deviceIds; @ApiModelProperty(value = "统计类型;year|month|day") private String type; @ApiModelProperty(value = "统计日期;2022|202206|20220603") private Integer dateValue; @ApiModelProperty(value = "营业额;单位分") private Integer salesMoney; @ApiModelProperty(value = "销售笔数") private Integer salesCount; @ApiModelProperty(value = "销售商品数") private Integer goodsCount; @ApiModelProperty(value = "退款金额;单位分") private Integer refundMoney; @ApiModelProperty(value = "退款笔数") private Integer refundCount; @ApiModelProperty(value = "风险订单数") private Integer riskCount; @ApiModelProperty(value = "0元订单笔数") private Integer zeroCount; @ApiModelProperty(value = "设备故障数") private Integer deviceFaultCount; } }