feat: add package list
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
package org.wfc.user.controller;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.wfc.common.core.web.controller.BaseController;
|
||||
import org.wfc.common.core.web.domain.AjaxResult;
|
||||
import org.wfc.common.core.web.page.TableDataInfo;
|
||||
import org.wfc.user.domain.UPackage;
|
||||
import org.wfc.user.domain.URateLimit;
|
||||
import org.wfc.user.service.IUPackageService;
|
||||
import org.wfc.user.service.IURateLimitService;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用户平台-套餐表 前端控制器
|
||||
* </p>
|
||||
*
|
||||
* @author sys
|
||||
* @since 2024-12-20
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/package")
|
||||
public class UPackageController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
public IUPackageService uPackageService;
|
||||
|
||||
@Autowired
|
||||
private IURateLimitService uRateLimitService;
|
||||
|
||||
@GetMapping("/page")
|
||||
public TableDataInfo page(UPackage uPackage) {
|
||||
startPage();
|
||||
List<UPackage> list = getPackages();
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
||||
@GetMapping("/list")
|
||||
public AjaxResult list(UPackage uPackage) {
|
||||
List<UPackage> list = getPackages();
|
||||
return success(list);
|
||||
}
|
||||
|
||||
private List<UPackage> getPackages() {
|
||||
List<UPackage> list = uPackageService.list(Wrappers.<UPackage>lambdaQuery()
|
||||
.eq(UPackage::getPackageEnable, true));
|
||||
for (UPackage pack : list) {
|
||||
if (ObjectUtil.isNull(pack.getRateLimitId())) {
|
||||
continue;
|
||||
}
|
||||
URateLimit uRateLimit = uRateLimitService.getById(pack.getRateLimitId());
|
||||
pack.setRateLimits(uRateLimit);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
package org.wfc.user.controller;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.wfc.common.core.web.controller.BaseController;
|
||||
import org.wfc.common.core.web.domain.AjaxResult;
|
||||
import org.wfc.common.core.web.page.TableDataInfo;
|
||||
import org.wfc.user.domain.URateLimit;
|
||||
import org.wfc.user.service.IURateLimitService;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用户平台-带宽限速表 前端控制器
|
||||
* </p>
|
||||
*
|
||||
* @author sys
|
||||
* @since 2024-12-20
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/rateLimit")
|
||||
public class URateLimitController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
public IURateLimitService uRateLimitService;
|
||||
|
||||
@GetMapping("/page")
|
||||
public TableDataInfo page(URateLimit uRateLimit) {
|
||||
startPage();
|
||||
List<URateLimit> list = uRateLimitService.list();
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
||||
@GetMapping("/list")
|
||||
public AjaxResult list(URateLimit uRateLimit) {
|
||||
List<URateLimit> list = uRateLimitService.list();
|
||||
return success(list);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
package org.wfc.user.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import org.wfc.common.mybatis.domain.BaseData;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用户平台-套餐表
|
||||
* </p>
|
||||
*
|
||||
* @author sys
|
||||
* @since 2024-12-20
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@TableName("u_package")
|
||||
@Schema(name = "UPackage", description = "用户平台-套餐表")
|
||||
public class UPackage extends BaseData {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Schema(description = "带宽限速ID")
|
||||
private Long rateLimitId;
|
||||
|
||||
@Schema(description = "套餐名称")
|
||||
private String packageName;
|
||||
|
||||
@Schema(description = "有效期数")
|
||||
private Integer periodNum;
|
||||
|
||||
@Schema(description = "有效期类型")
|
||||
private String periodType;
|
||||
|
||||
@Schema(description = "价格")
|
||||
private BigDecimal price;
|
||||
|
||||
@Schema(description = "流量")
|
||||
private Long traffic;
|
||||
|
||||
@Schema(description = "时长")
|
||||
private Long duration;
|
||||
|
||||
@Schema(description = "在线设备数")
|
||||
private Integer clientNum;
|
||||
|
||||
@Schema(description = "备注")
|
||||
private String remark;
|
||||
|
||||
@Schema(description = "带宽是否限制")
|
||||
private Boolean rateLimitEnable;
|
||||
|
||||
@Schema(description = "流量是否限制")
|
||||
private Boolean trafficEnable;
|
||||
|
||||
@Schema(description = "时长是否限制")
|
||||
private Boolean durationEnable;
|
||||
|
||||
@Schema(description = "在线设备数是否限制")
|
||||
private Boolean clientNumEnable;
|
||||
|
||||
@Schema(description = "套餐是否启用")
|
||||
private Boolean packageEnable;
|
||||
|
||||
@Schema(description = "带宽限速组")
|
||||
@TableField(exist = false)
|
||||
private URateLimit rateLimits;
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
package org.wfc.user.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.io.Serializable;
|
||||
import org.wfc.common.mybatis.domain.BaseData;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用户平台-带宽限速表
|
||||
* </p>
|
||||
*
|
||||
* @author sys
|
||||
* @since 2024-12-20
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@TableName("u_rate_limit")
|
||||
@Schema(name = "URateLimit", description = "用户平台-带宽限速表")
|
||||
public class URateLimit extends BaseData {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Schema(description = "限速名称")
|
||||
private String rateLimitName;
|
||||
|
||||
@Schema(description = "下行限速")
|
||||
private Long downLimit;
|
||||
|
||||
@Schema(description = "下行限速启用")
|
||||
private Boolean downLimitEnable;
|
||||
|
||||
@Schema(description = "上行限速")
|
||||
private Long upLimit;
|
||||
|
||||
@Schema(description = "上行限速启用")
|
||||
private Boolean upLimitEnable;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package org.wfc.user.mapper;
|
||||
|
||||
import org.wfc.user.domain.UPackage;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用户平台-套餐表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author sys
|
||||
* @since 2024-12-20
|
||||
*/
|
||||
public interface UPackageMapper extends BaseMapper<UPackage> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package org.wfc.user.mapper;
|
||||
|
||||
import org.wfc.user.domain.URateLimit;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用户平台-带宽限速表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author sys
|
||||
* @since 2024-12-20
|
||||
*/
|
||||
public interface URateLimitMapper extends BaseMapper<URateLimit> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package org.wfc.user.service;
|
||||
|
||||
import org.wfc.user.domain.UPackage;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用户平台-套餐表 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author sys
|
||||
* @since 2024-12-20
|
||||
*/
|
||||
public interface IUPackageService extends IService<UPackage> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package org.wfc.user.service;
|
||||
|
||||
import org.wfc.user.domain.URateLimit;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用户平台-带宽限速表 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author sys
|
||||
* @since 2024-12-20
|
||||
*/
|
||||
public interface IURateLimitService extends IService<URateLimit> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package org.wfc.user.service.impl;
|
||||
|
||||
import org.wfc.user.domain.UPackage;
|
||||
import org.wfc.user.mapper.UPackageMapper;
|
||||
import org.wfc.user.service.IUPackageService;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用户平台-套餐表 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author sys
|
||||
* @since 2024-12-20
|
||||
*/
|
||||
@Service
|
||||
public class UPackageServiceImpl extends ServiceImpl<UPackageMapper, UPackage> implements IUPackageService {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package org.wfc.user.service.impl;
|
||||
|
||||
import org.wfc.user.domain.URateLimit;
|
||||
import org.wfc.user.mapper.URateLimitMapper;
|
||||
import org.wfc.user.service.IURateLimitService;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用户平台-带宽限速表 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author sys
|
||||
* @since 2024-12-20
|
||||
*/
|
||||
@Service
|
||||
public class URateLimitServiceImpl extends ServiceImpl<URateLimitMapper, URateLimit> implements IURateLimitService {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="org.wfc.user.mapper.UPackageMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="org.wfc.user.mapper.URateLimitMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -1,6 +1,7 @@
|
||||
package org.wfc.system.controller;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
@@ -14,7 +15,9 @@ import org.wfc.common.core.web.controller.BaseController;
|
||||
import org.wfc.common.core.web.domain.AjaxResult;
|
||||
import org.wfc.common.core.web.page.TableDataInfo;
|
||||
import org.wfc.system.domain.UPackage;
|
||||
import org.wfc.system.domain.URateLimit;
|
||||
import org.wfc.system.service.IUPackageService;
|
||||
import org.wfc.system.service.IURateLimitService;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -31,18 +34,21 @@ import java.util.List;
|
||||
public class UPackageController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
public IUPackageService uPackageService;
|
||||
private IUPackageService uPackageService;
|
||||
|
||||
@Autowired
|
||||
private IURateLimitService uRateLimitService;
|
||||
|
||||
@GetMapping("/page")
|
||||
public TableDataInfo page(UPackage uPackage) {
|
||||
startPage();
|
||||
List<UPackage> list = uPackageService.list();
|
||||
List<UPackage> list = getPackages();
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
||||
@GetMapping("/list")
|
||||
public AjaxResult list(UPackage uPackage) {
|
||||
List<UPackage> list = uPackageService.list();
|
||||
List<UPackage> list = getPackages();
|
||||
return success(list);
|
||||
}
|
||||
|
||||
@@ -66,4 +72,15 @@ public class UPackageController extends BaseController {
|
||||
return toAjax(uPackageService.removeByIds(CollUtil.newArrayList(ids)));
|
||||
}
|
||||
|
||||
private List<UPackage> getPackages() {
|
||||
List<UPackage> list = uPackageService.list();
|
||||
for (UPackage pack : list) {
|
||||
if (ObjectUtil.isNull(pack.getRateLimitId())) {
|
||||
continue;
|
||||
}
|
||||
URateLimit uRateLimit = uRateLimitService.getById(pack.getRateLimitId());
|
||||
pack.setRateLimits(uRateLimit);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@ import java.util.List;
|
||||
public class URateLimitController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
public IURateLimitService uRateLimitService;
|
||||
private IURateLimitService uRateLimitService;
|
||||
|
||||
@GetMapping("/page")
|
||||
public TableDataInfo page(URateLimit uRateLimit) {
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
package org.wfc.system.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import org.wfc.common.mybatis.domain.BaseData;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import org.wfc.common.mybatis.domain.BaseData;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
@@ -65,4 +66,8 @@ public class UPackage extends BaseData {
|
||||
|
||||
@Schema(description = "套餐是否启用")
|
||||
private Boolean packageEnable;
|
||||
|
||||
@Schema(description = "带宽限速组")
|
||||
@TableField(exist = false)
|
||||
private URateLimit rateLimits;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user