package com.admin.common.dto; import com.admin.entity.StatisticsFlow; import lombok.Data; import java.util.List; /** * 用户套餐信息DTO */ @Data public class UserPackageDto { /** * 用户基本信息 */ private UserInfoDto userInfo; /** * 用户隧道权限列表 */ private List tunnelPermissions; /** * 用户转发列表 */ private List forwards; /** * 用户转发列表 */ private List statisticsFlows; /** * 用户基本信息 */ @Data public static class UserInfoDto { private Long id; private String name; private String user; private Integer status; private Long flow; // 总流量配额(GB) private Long inFlow; // 已用入站流量(字节) private Long outFlow; // 已用出站流量(字节) private Integer num; // 转发数量配额 private Long expTime; // 过期时间 private Long flowResetTime; // 流量重置时间 private Long createdTime; private Long updatedTime; } /** * 用户隧道权限详情 */ @Data public static class UserTunnelDetailDto { private Integer id; private Integer userId; private Integer tunnelId; private String tunnelName; private Integer tunnelFlow; // 隧道流量计算类型(1-单向,2-双向) private Long flow; // 隧道流量配额(GB) private Long inFlow; // 隧道已用入站流量(字节) private Long outFlow; // 隧道已用出站流量(字节) private Integer num; // 隧道转发数量配额 private Long flowResetTime; // 流量重置时间 private Long expTime; // 隧道权限过期时间 private Integer speedId; private String speedLimitName; private Integer speed; } /** * 用户转发详情 */ @Data public static class UserForwardDetailDto { private Long id; private String name; private Integer tunnelId; private String tunnelName; private String inIp; private Integer inPort; private String remoteAddr; private Long inFlow; // 转发入站流量(字节) private Long outFlow; // 转发出站流量(字节) private Integer status; private Long createdTime; } }