DeviceSimChargeDto.java 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307
  1. package com.xy.dto;
  2. import com.alibaba.excel.annotation.ExcelProperty;
  3. import com.alibaba.excel.annotation.format.NumberFormat;
  4. import com.fasterxml.jackson.annotation.JsonFormat;
  5. import com.xy.annotate.DictFormat;
  6. import com.xy.consts.DictConsts;
  7. import com.xy.convert.CustomFenToYuanConverter;
  8. import com.xy.convert.DictConvert;
  9. import com.xy.utils.PageBean;
  10. import io.swagger.annotations.ApiModelProperty;
  11. import lombok.Data;
  12. import lombok.experimental.Accessors;
  13. import java.time.LocalDateTime;
  14. import java.util.List;
  15. /**
  16. * <p>
  17. * 设备流量卡充值表
  18. * </p>
  19. *
  20. * @author lijin
  21. * @since 2023-10-16
  22. */
  23. public class DeviceSimChargeDto {
  24. @Data
  25. @Accessors(chain = true)
  26. public static class Page extends Vo {
  27. @ApiModelProperty(value = "分页对象", required = true)
  28. private PageBean page;
  29. @ApiModelProperty(value = "创建时间-起")
  30. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  31. private LocalDateTime beginCreateTime;
  32. @ApiModelProperty(value = "创建时间-始")
  33. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  34. private LocalDateTime endCreateTime;
  35. }
  36. @Data
  37. @Accessors(chain = true)
  38. public static class PageExcelVo {
  39. @ExcelProperty("商户名称")
  40. @ApiModelProperty(value = "商户名称")
  41. private String mercName;
  42. @ExcelProperty("缴费单号")
  43. @ApiModelProperty(value = "缴费单号")
  44. private String orderId;
  45. @ExcelProperty("流量卡号")
  46. @ApiModelProperty(value = "流量卡id")
  47. private String simId;
  48. @ApiModelProperty(value = "金额")
  49. @ExcelProperty(value = "金额", converter = CustomFenToYuanConverter.class)
  50. @NumberFormat("#0.00")
  51. private Integer money;
  52. @ApiModelProperty(value = "佣金")
  53. @ExcelProperty(value = "佣金", converter = CustomFenToYuanConverter.class)
  54. @NumberFormat("#0.00")
  55. private Integer agentMoney;
  56. @ExcelProperty("续费时长(年)")
  57. @ApiModelProperty(value = "数量")
  58. private Integer size;
  59. @ExcelProperty(value = "支付方式", converter = DictConvert.class)
  60. @DictFormat(DictConsts.ORDER_PAY_TYPE)
  61. @ApiModelProperty(value = "支付方式")
  62. private Integer payType;
  63. @ExcelProperty(value = "支付状态", converter = DictConvert.class)
  64. @DictFormat(DictConsts.ORDER_MERC_MANAGE_STATUS)
  65. @ApiModelProperty(value = "支付状态")
  66. private Integer status;
  67. @ExcelProperty("支付时间")
  68. @ApiModelProperty(value = "创建时间")
  69. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  70. private LocalDateTime createTime;
  71. @ExcelProperty("过期时间")
  72. @ApiModelProperty(value = "过期时间")
  73. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  74. private LocalDateTime timeout;
  75. @ApiModelProperty(value = "状态")
  76. @ExcelProperty("过期状态说明")
  77. private String timeoutStatus;
  78. }
  79. @Data
  80. @Accessors(chain = true)
  81. public static class PageByTopMercVO {
  82. @ApiModelProperty(value = "过期时间")
  83. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  84. private LocalDateTime timeout;
  85. @ApiModelProperty(value = "过期状态说明")
  86. private String timeoutStatus;
  87. @ApiModelProperty(value = "id")
  88. private Long id;
  89. @ApiModelProperty(value = "订单id")
  90. private String orderId;
  91. @ApiModelProperty(value = "流量卡id")
  92. private String simId;
  93. @ApiModelProperty(value = "商户id")
  94. private Long mercId;
  95. @ApiModelProperty(value = "金额")
  96. private Integer money;
  97. @ApiModelProperty(value = "代理商金额")
  98. private Integer agentMoney;
  99. @ApiModelProperty(value = "数量")
  100. private Integer size;
  101. @ApiModelProperty(value = "支付方式")
  102. private Integer payType;
  103. @ApiModelProperty(value = "状态")
  104. private Integer status;
  105. @ApiModelProperty(value = "备注")
  106. private String note;
  107. @ApiModelProperty(value = "创建时间")
  108. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  109. private LocalDateTime createTime;
  110. @ApiModelProperty(value = "更新时间")
  111. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  112. private LocalDateTime updateTime;
  113. @ApiModelProperty(value = "附件")
  114. private String files;
  115. @ApiModelProperty(value = "商户名称")
  116. private String mercName;
  117. }
  118. @Data
  119. @Accessors(chain = true)
  120. public static class PageByTopMerc {
  121. @ApiModelProperty("分页对象")
  122. private PageBean page;
  123. @ApiModelProperty("是否导出当前页")
  124. private Boolean exportPage = true;
  125. @ApiModelProperty(value = "创建时间-起")
  126. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  127. private LocalDateTime beginCreateTime;
  128. @ApiModelProperty(value = "创建时间-始")
  129. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  130. private LocalDateTime endCreateTime;
  131. @ApiModelProperty(value = "商户id")
  132. private Long curMercId;
  133. @ApiModelProperty(value = "指定商户id")
  134. private Long chooseMercId;
  135. @ApiModelProperty(value = "id")
  136. private Long id;
  137. @ApiModelProperty(value = "订单id")
  138. private String orderId;
  139. @ApiModelProperty(value = "流量卡id")
  140. private String simId;
  141. @ApiModelProperty(value = "金额")
  142. private Integer money;
  143. @ApiModelProperty(value = "数量")
  144. private Integer size;
  145. @ApiModelProperty(value = "支付方式")
  146. private Integer payType;
  147. @ApiModelProperty(value = "状态")
  148. private Integer status;
  149. @ApiModelProperty(value = "备注")
  150. private String note;
  151. @ApiModelProperty(value = "附件")
  152. private String files;
  153. //size -1 不分页
  154. public PageBean getPage() {
  155. if (!this.exportPage) {
  156. this.page.setSize(-1L);
  157. }
  158. return page;
  159. }
  160. }
  161. @Data
  162. @Accessors(chain = true)
  163. public static class Vo {
  164. @ApiModelProperty(value = "id")
  165. private Long id;
  166. @ApiModelProperty(value = "订单id")
  167. private String orderId;
  168. @ApiModelProperty(value = "流量卡id")
  169. private String simId;
  170. @ApiModelProperty(value = "商户id")
  171. private Long mercId;
  172. @ApiModelProperty(value = "金额")
  173. private Integer money;
  174. @ApiModelProperty(value = "数量")
  175. private Integer size;
  176. @ApiModelProperty(value = "支付方式")
  177. private Integer payType;
  178. @ApiModelProperty(value = "状态")
  179. private Integer status;
  180. @ApiModelProperty(value = "备注")
  181. private String note;
  182. @ApiModelProperty(value = "创建时间")
  183. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  184. private LocalDateTime createTime;
  185. @ApiModelProperty(value = "更新时间")
  186. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  187. private LocalDateTime updateTime;
  188. @ApiModelProperty(value = "附件")
  189. private String files;
  190. @ApiModelProperty(value = "商户名称")
  191. private String mercName;
  192. }
  193. @Data
  194. @Accessors(chain = true)
  195. public static class MoonCount {
  196. @ApiModelProperty(value = "商户id")
  197. private List<Long> mercIds;
  198. @ApiModelProperty(value = "统计时间-起 yyyy-MM")
  199. private String beginDate;
  200. @ApiModelProperty(value = "统计时间-始 yyyy-MM")
  201. private String endDate;
  202. }
  203. @Data
  204. @Accessors(chain = true)
  205. public static class MoonCountVo {
  206. @ApiModelProperty(value = "统计时间 yyyy-MM")
  207. private String date;
  208. @ApiModelProperty(value = "商户id")
  209. private Long mercId;
  210. @ApiModelProperty(value = "商户名称")
  211. private String mercName;
  212. @ApiModelProperty(value = "卡数")
  213. private Integer simSize;
  214. @ApiModelProperty(value = "续费金额")
  215. private Integer money;
  216. }
  217. @Data
  218. @Accessors(chain = true)
  219. public static class MoonCountPage {
  220. @ApiModelProperty(value = "分页对象")
  221. private PageBean page;
  222. @ApiModelProperty(value = "商户id")
  223. private List<Long> mercIds;
  224. @ApiModelProperty(value = "统计时间-起 yyyy-MM-dd")
  225. private String beginDate;
  226. @ApiModelProperty(value = "统计时间-始 yyyy-MM-dd")
  227. private String endDate;
  228. }
  229. }