diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 00000000..88d539d3 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,5 @@ +root=true + +[*.{groovy,java,kt,xml}] +indent_style = space +indent_size = 4 \ No newline at end of file diff --git a/neutrino-proxy-server/pom.xml b/neutrino-proxy-server/pom.xml index 4af63504..fc37a896 100644 --- a/neutrino-proxy-server/pom.xml +++ b/neutrino-proxy-server/pom.xml @@ -24,7 +24,7 @@ org.noear - mybatis-pagehelper-solon-plugin + mybatis-plus-extension-solon-plugin org.noear diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/base/db/DbConfiguration.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/base/db/DbConfiguration.java index d30ece9b..a55e3129 100644 --- a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/base/db/DbConfiguration.java +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/base/db/DbConfiguration.java @@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.core.MybatisConfiguration; import com.baomidou.mybatisplus.core.MybatisSqlSessionFactoryBuilder; import com.baomidou.mybatisplus.core.config.GlobalConfig; import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; +import com.baomidou.mybatisplus.solon.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.solon.plugins.inner.PaginationInnerInterceptor; import com.zaxxer.hikari.HikariDataSource; import org.apache.ibatis.solon.annotation.Db; import org.dromara.neutrinoproxy.server.constant.DbTypeEnum; @@ -68,6 +70,10 @@ public class DbConfiguration { public void db1_ext2(@Db("db") MybatisConfiguration config) { config.getTypeHandlerRegistry().register("fun.asgc.neutrino.proxy.server.dal"); config.setDefaultEnumTypeHandler(null); + + MybatisPlusInterceptor plusInterceptor = new MybatisPlusInterceptor(); + plusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor()); + config.addInterceptor(plusInterceptor); } @Bean diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/base/page/PageInfo.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/base/page/PageInfo.java index 02caeb76..88305dbc 100644 --- a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/base/page/PageInfo.java +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/base/page/PageInfo.java @@ -1,5 +1,6 @@ package org.dromara.neutrinoproxy.server.base.page; +import com.baomidou.mybatisplus.solon.plugins.pagination.Page; import lombok.Data; import java.io.Serializable; @@ -101,11 +102,20 @@ public class PageInfo implements Serializable { } public static PageInfo of(List records, Long total, Integer current, Integer size) { - PageInfo pageInfo = new PageInfo(); + PageInfo pageInfo = new PageInfo<>(); pageInfo.setRecords(records); pageInfo.setTotal(total); pageInfo.setCurrent(current); pageInfo.setSize(size); return pageInfo; } + + public static PageInfo of(List records, Page page) { + PageInfo pageInfo = new PageInfo<>(); + pageInfo.setRecords(records); + pageInfo.setTotal(page.getTotal()); + pageInfo.setCurrent((int) page.getCurrent()); + pageInfo.setSize((int) page.getSize()); + return pageInfo; + } } diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/PortGroupMapper.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/PortGroupMapper.java index e5faf189..0b63984c 100644 --- a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/PortGroupMapper.java +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/PortGroupMapper.java @@ -1,6 +1,7 @@ package org.dromara.neutrinoproxy.server.dal; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import org.dromara.neutrinoproxy.server.controller.req.system.PortGroupListReq; import org.dromara.neutrinoproxy.server.controller.res.system.PortGroupListRes; @@ -14,7 +15,7 @@ import java.util.List; @Mapper public interface PortGroupMapper extends BaseMapper { - List selectPortGroupListResList(PortGroupListReq res); + List selectPortGroupListResList(IPage page, PortGroupListReq res); default void updateEnableStatus(Integer id, Integer enable, Date now){ diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/PortMappingMapper.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/PortMappingMapper.java index f8b7a054..71364325 100644 --- a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/PortMappingMapper.java +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/PortMappingMapper.java @@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import org.dromara.neutrinoproxy.server.constant.EnableStatusEnum; import org.dromara.neutrinoproxy.server.controller.req.proxy.PortMappingListReq; @@ -106,5 +107,5 @@ public interface PortMappingMapper extends BaseMapper { ); } - List selectPortMappingByCondition(@Param("req") PortMappingListReq req); + List selectPortMappingByCondition(IPage page, @Param("req") PortMappingListReq req); } diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/PortPoolMapper.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/PortPoolMapper.java index 29776db2..389af833 100644 --- a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/PortPoolMapper.java +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/PortPoolMapper.java @@ -24,6 +24,7 @@ package org.dromara.neutrinoproxy.server.dal; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import org.dromara.neutrinoproxy.server.controller.req.system.PortPoolListReq; import org.dromara.neutrinoproxy.server.controller.res.system.PortPoolListRes; import org.dromara.neutrinoproxy.server.dal.entity.PortPoolDO; @@ -65,7 +66,7 @@ public interface PortPoolMapper extends BaseMapper { ); } - List selectResList(@Param("req") PortPoolListReq req); + List selectResList(IPage page, @Param("req") PortPoolListReq req); - List getAvailablePortList(@Param("licenseId") Integer licenseId,@Param("userId") Integer userId, @Param("keyword") String keyword); + List getAvailablePortList(IPage page, @Param("licenseId") Integer licenseId,@Param("userId") Integer userId, @Param("keyword") String keyword); } diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/ReportMapper.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/ReportMapper.java index 00ce80b4..a9e2ba9c 100644 --- a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/ReportMapper.java +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/ReportMapper.java @@ -1,5 +1,6 @@ package org.dromara.neutrinoproxy.server.dal; +import com.baomidou.mybatisplus.solon.plugins.pagination.Page; import org.dromara.neutrinoproxy.server.controller.res.report.*; import org.dromara.neutrinoproxy.server.controller.res.report.LicenseFlowMonthReportRes; import org.dromara.neutrinoproxy.server.controller.res.report.LicenseFlowReportRes; @@ -24,26 +25,26 @@ public interface ReportMapper { * @param userId * @return */ - List userFlowReportList(@Param("userId") Integer userId, @Param("curMonthBeginDate") Date curMonthBeginDate, @Param("curDayBeginDate") Date curDayBeginDate, @Param("curDate") Date curDate); + List userFlowReportList(Page page, @Param("userId") Integer userId, @Param("curMonthBeginDate") Date curMonthBeginDate, @Param("curDayBeginDate") Date curDayBeginDate, @Param("curDate") Date curDate); /** * 基于License维度的流量报表 * @param userId * @return */ - List licenseFLowReportList(@Param("userId") Integer userId, @Param("curMonthBeginDate") Date curMonthBeginDate, @Param("curDayBeginDate") Date curDayBeginDate, @Param("curDate") Date curDate); + List licenseFLowReportList(Page page, @Param("userId") Integer userId, @Param("curMonthBeginDate") Date curMonthBeginDate, @Param("curDayBeginDate") Date curDayBeginDate, @Param("curDate") Date curDate); /** * 用户流量月度明细 * @param userId * @return */ - List userFlowMonthReportList(@Param("userId") Integer userId, @Param("curMonthBeginDate") Date curMonthBeginDate, @Param("curDayBeginDate") Date curDayBeginDate, @Param("curDate") Date curDate); + List userFlowMonthReportList(Page page, @Param("userId") Integer userId, @Param("curMonthBeginDate") Date curMonthBeginDate, @Param("curDayBeginDate") Date curDayBeginDate, @Param("curDate") Date curDate); /** * License流量月度明细 * @param userId * @return */ - List licenseFLowMonthReportList(@Param("userId") Integer userId, @Param("licenseId") Integer licenseId, @Param("curMonthBeginDate") Date curMonthBeginDate, @Param("curDayBeginDate") Date curDayBeginDate, @Param("curDate") Date curDate); + List licenseFLowMonthReportList(Page page, @Param("userId") Integer userId, @Param("licenseId") Integer licenseId, @Param("curMonthBeginDate") Date curMonthBeginDate, @Param("curDayBeginDate") Date curDayBeginDate, @Param("curDate") Date curDate); /** * 首页 - 今日流量 diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/ClientConnectRecordService.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/ClientConnectRecordService.java index da0a2ceb..e11f77d8 100644 --- a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/ClientConnectRecordService.java +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/ClientConnectRecordService.java @@ -3,8 +3,10 @@ package org.dromara.neutrinoproxy.server.service; import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; -import com.github.pagehelper.Page; -import com.github.pagehelper.PageHelper; +import com.baomidou.mybatisplus.solon.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; +import ma.glasnost.orika.MapperFacade; +import org.apache.ibatis.solon.annotation.Db; import org.dromara.neutrinoproxy.server.base.page.PageInfo; import org.dromara.neutrinoproxy.server.base.page.PageQuery; import org.dromara.neutrinoproxy.server.base.rest.SystemContextHolder; @@ -16,9 +18,6 @@ import org.dromara.neutrinoproxy.server.dal.UserMapper; import org.dromara.neutrinoproxy.server.dal.entity.ClientConnectRecordDO; import org.dromara.neutrinoproxy.server.dal.entity.LicenseDO; import org.dromara.neutrinoproxy.server.dal.entity.UserDO; -import lombok.extern.slf4j.Slf4j; -import ma.glasnost.orika.MapperFacade; -import org.apache.ibatis.solon.annotation.Db; import org.noear.solon.annotation.Component; import org.noear.solon.annotation.Inject; @@ -49,19 +48,18 @@ public class ClientConnectRecordService { } public PageInfo page(PageQuery pageQuery, ClientConnectRecordListReq req) { - Page result = PageHelper.startPage(pageQuery.getCurrent(), pageQuery.getSize()); - List list = clientConnectRecordMapper.selectList(new LambdaQueryWrapper() - .eq(null != req.getLicenseId(), ClientConnectRecordDO::getLicenseId, req.getLicenseId()) - .orderByDesc(ClientConnectRecordDO::getId) + Page pageResult = clientConnectRecordMapper.selectPage(new Page<>(pageQuery.getCurrent(), pageQuery.getSize()), new LambdaQueryWrapper() + .eq(null != req.getLicenseId(), ClientConnectRecordDO::getLicenseId, req.getLicenseId()) + .orderByDesc(ClientConnectRecordDO::getId) ); - List respList = mapperFacade.mapAsList(list, ClientConnectRecordListRes.class); - if (CollectionUtils.isEmpty(list)) { - return PageInfo.of(respList, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + List respList = mapperFacade.mapAsList(pageResult.getRecords(), ClientConnectRecordListRes.class); + if (CollectionUtils.isEmpty(pageResult.getRecords())) { + return PageInfo.of(respList, pageResult.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); } Set licenseIds = respList.stream().map(ClientConnectRecordListRes::getLicenseId).collect(Collectors.toSet()); List licenseList = licenseMapper.findByIds(licenseIds); if (CollectionUtil.isEmpty(licenseList)) { - return PageInfo.of(respList, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + return PageInfo.of(respList, pageResult.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); } Set userIds = licenseList.stream().map(LicenseDO::getUserId).collect(Collectors.toSet()); List userList = userMapper.findByIds(userIds); @@ -85,6 +83,6 @@ public class ClientConnectRecordService { item.setMsg("******"); } }); - return PageInfo.of(respList, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + return PageInfo.of(respList, pageResult); } } diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/JobInfoService.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/JobInfoService.java index bd9c5798..cf2c1bac 100644 --- a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/JobInfoService.java +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/JobInfoService.java @@ -2,9 +2,11 @@ package org.dromara.neutrinoproxy.server.service; import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.github.pagehelper.Page; -import com.github.pagehelper.PageHelper; +import com.baomidou.mybatisplus.solon.plugins.pagination.Page; import com.google.common.collect.Lists; +import lombok.extern.slf4j.Slf4j; +import ma.glasnost.orika.MapperFacade; +import org.apache.ibatis.solon.annotation.Db; import org.dromara.neutrinoproxy.server.base.page.PageInfo; import org.dromara.neutrinoproxy.server.base.page.PageQuery; import org.dromara.neutrinoproxy.server.constant.EnableStatusEnum; @@ -19,11 +21,13 @@ import org.dromara.neutrinoproxy.server.controller.res.system.JobInfoUpdateEnabl import org.dromara.neutrinoproxy.server.controller.res.system.JobInfoUpdateRes; import org.dromara.neutrinoproxy.server.dal.JobInfoMapper; import org.dromara.neutrinoproxy.server.dal.entity.JobInfoDO; -import org.dromara.neutrinoproxy.server.job.*; +import org.dromara.neutrinoproxy.server.job.DataCleanJob; +import org.dromara.neutrinoproxy.server.job.DemoJob; +import org.dromara.neutrinoproxy.server.job.FlowReportForDayJob; +import org.dromara.neutrinoproxy.server.job.FlowReportForHourJob; +import org.dromara.neutrinoproxy.server.job.FlowReportForMinuteJob; +import org.dromara.neutrinoproxy.server.job.FlowReportForMonthJob; import org.dromara.neutrinoproxy.server.util.ParamCheckUtil; -import lombok.extern.slf4j.Slf4j; -import ma.glasnost.orika.MapperFacade; -import org.apache.ibatis.solon.annotation.Db; import org.dromara.solonplugins.job.IJobHandler; import org.dromara.solonplugins.job.IJobSource; import org.dromara.solonplugins.job.JobInfo; @@ -39,7 +43,6 @@ import java.util.List; import java.util.Map; /** - * * @author: aoshiguchen * @date: 2022/9/5 */ @@ -66,21 +69,20 @@ public class JobInfoService implements IJobSource { @Init public void init() { - jobHandlerMap.put("DataCleanJob", dataCleanJob); - jobHandlerMap.put("DemoJob", demoJob); - jobHandlerMap.put("FlowReportForDayJob", flowReportForDayJob); - jobHandlerMap.put("FlowReportForHourJob", flowReportForHourJob); - jobHandlerMap.put("FlowReportForMinuteJob", flowReportForMinuteJob); - jobHandlerMap.put("FlowReportForMonthJob", flowReportForMonthJob); + jobHandlerMap.put("DataCleanJob", dataCleanJob); + jobHandlerMap.put("DemoJob", demoJob); + jobHandlerMap.put("FlowReportForDayJob", flowReportForDayJob); + jobHandlerMap.put("FlowReportForHourJob", flowReportForHourJob); + jobHandlerMap.put("FlowReportForMinuteJob", flowReportForMinuteJob); + jobHandlerMap.put("FlowReportForMonthJob", flowReportForMonthJob); } public PageInfo page(PageQuery pageQuery, JobInfoListReq req) { - Page result = PageHelper.startPage(pageQuery.getCurrent(), pageQuery.getSize()); - List list = jobInfoMapper.selectList(new LambdaQueryWrapper() - .orderByAsc(JobInfoDO::getId) + Page page = jobInfoMapper.selectPage(new Page<>(pageQuery.getCurrent(), pageQuery.getSize()), new LambdaQueryWrapper() + .orderByAsc(JobInfoDO::getId) ); - List respList = mapperFacade.mapAsList(list, JobInfoListRes.class); - return PageInfo.of(respList, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + List respList = mapperFacade.mapAsList(page.getRecords(), JobInfoListRes.class); + return PageInfo.of(respList, page); } public List findList() { @@ -114,13 +116,13 @@ public class JobInfoService implements IJobSource { } for (JobInfoDO item : jobInfoDOList) { jobInfoList.add(new JobInfo() - .setId(String.valueOf(item.getId())) - .setName(item.getHandler()) - .setDesc(item.getDesc()) - .setCron(item.getCron()) - .setParam(item.getParam()) - .setEnable(EnableStatusEnum.ENABLE.getStatus().equals(item.getEnable())) - .setJobHandler(jobHandlerMap.get(item.getHandler())) + .setId(String.valueOf(item.getId())) + .setName(item.getHandler()) + .setDesc(item.getDesc()) + .setCron(item.getCron()) + .setParam(item.getParam()) + .setEnable(EnableStatusEnum.ENABLE.getStatus().equals(item.getEnable())) + .setJobHandler(jobHandlerMap.get(item.getHandler())) ); } @@ -128,8 +130,8 @@ public class JobInfoService implements IJobSource { } public JobInfoUpdateRes update(JobInfoUpdateReq req) { - JobInfoDO jobInfoDO = jobInfoMapper.findById(req.getId()); - ParamCheckUtil.checkNotNull( jobInfoDO, ExceptionConstant.PORT_MAPPING_NOT_EXIST); + JobInfoDO jobInfoDO = jobInfoMapper.findById(req.getId()); + ParamCheckUtil.checkNotNull(jobInfoDO, ExceptionConstant.PORT_MAPPING_NOT_EXIST); JobInfoDO jobInfo = new JobInfoDO(); jobInfo.setId(req.getId()); jobInfo.setCron(req.getCron()); diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/JobLogService.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/JobLogService.java index 546f4d6f..40997d68 100644 --- a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/JobLogService.java +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/JobLogService.java @@ -22,8 +22,7 @@ package org.dromara.neutrinoproxy.server.service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.github.pagehelper.Page; -import com.github.pagehelper.PageHelper; +import com.baomidou.mybatisplus.solon.plugins.pagination.Page; import org.dromara.neutrinoproxy.server.base.page.PageInfo; import org.dromara.neutrinoproxy.server.base.page.PageQuery; import org.dromara.neutrinoproxy.server.controller.req.log.JobLogListReq; @@ -79,13 +78,12 @@ public class JobLogService implements IJobCallback { } public PageInfo page(PageQuery pageQuery, JobLogListReq req) { - Page result = PageHelper.startPage(pageQuery.getCurrent(), pageQuery.getSize()); - List list = jobLogMapper.selectList(new LambdaQueryWrapper() - .eq(null != req.getJobId(), JobLogDO::getJobId, req.getJobId()) - .orderByDesc(JobLogDO::getId) - ); - List respList = mapperFacade.mapAsList(list, JobLogListRes.class); - return PageInfo.of(respList, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + Page page = jobLogMapper.selectPage(new Page<>(pageQuery.getCurrent(), pageQuery.getSize()), new LambdaQueryWrapper() + .eq(null != req.getJobId(), JobLogDO::getJobId, req.getJobId()) + .orderByDesc(JobLogDO::getId) + ); + List respList = mapperFacade.mapAsList(page.getRecords(), JobLogListRes.class); + return PageInfo.of(respList, page); } } diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/LicenseService.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/LicenseService.java index 62affcde..3d9c8f68 100644 --- a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/LicenseService.java +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/LicenseService.java @@ -3,8 +3,7 @@ package org.dromara.neutrinoproxy.server.service; import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; -import com.github.pagehelper.Page; -import com.github.pagehelper.PageHelper; +import com.baomidou.mybatisplus.solon.plugins.pagination.Page; import com.google.common.collect.Sets; import ma.glasnost.orika.MapperFacade; import org.apache.ibatis.solon.annotation.Db; @@ -59,16 +58,15 @@ public class LicenseService implements LifecycleBean { private DBInitialize dbInitialize; public PageInfo page(PageQuery pageQuery, LicenseListReq req) { - Page result = PageHelper.startPage(pageQuery.getCurrent(), pageQuery.getSize()); - List list = licenseMapper.selectList(new LambdaQueryWrapper() - .eq(req.getUserId() != null, LicenseDO::getUserId, req.getUserId()) - .eq(req.getIsOnline() != null, LicenseDO::getIsOnline, req.getIsOnline()) - .eq(req.getEnable() != null, LicenseDO::getEnable, req.getEnable()) - .orderByAsc(Arrays.asList(LicenseDO::getUserId, LicenseDO::getId)) + Page page = licenseMapper.selectPage(new Page<>(pageQuery.getCurrent(), pageQuery.getSize()), new LambdaQueryWrapper() + .eq(req.getUserId() != null, LicenseDO::getUserId, req.getUserId()) + .eq(req.getIsOnline() != null, LicenseDO::getIsOnline, req.getIsOnline()) + .eq(req.getEnable() != null, LicenseDO::getEnable, req.getEnable()) + .orderByAsc(Arrays.asList(LicenseDO::getUserId, LicenseDO::getId)) ); - List respList = mapperFacade.mapAsList(list, LicenseListRes.class); - if (CollectionUtils.isEmpty(list)) { - return PageInfo.of(respList, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + List respList = mapperFacade.mapAsList(page.getRecords(), LicenseListRes.class); + if (CollectionUtils.isEmpty(page.getRecords())) { + return PageInfo.of(respList, page); } if (!CollectionUtil.isEmpty(respList)) { Set userIds = respList.stream().map(LicenseListRes::getUserId).collect(Collectors.toSet()); @@ -82,7 +80,7 @@ public class LicenseService implements LifecycleBean { item.setKey(desensitization(item.getUserId(), item.getKey())); } } - return PageInfo.of(respList, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + return PageInfo.of(respList, page); } public List list(LicenseListReq req) { diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/PortGroupService.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/PortGroupService.java index 85a2ba44..58baec8d 100644 --- a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/PortGroupService.java +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/PortGroupService.java @@ -1,8 +1,7 @@ package org.dromara.neutrinoproxy.server.service; import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import com.github.pagehelper.Page; -import com.github.pagehelper.PageHelper; +import com.baomidou.mybatisplus.solon.plugins.pagination.Page; import org.dromara.neutrinoproxy.server.base.page.PageInfo; import org.dromara.neutrinoproxy.server.base.page.PageQuery; import org.dromara.neutrinoproxy.server.base.rest.ServiceException; @@ -64,14 +63,14 @@ public class PortGroupService { } public PageInfo page(PageQuery pageQuery, PortGroupListReq req) { - Page result = PageHelper.startPage(pageQuery.getCurrent(), pageQuery.getSize()); - List list = portGroupMapper.selectPortGroupListResList(req); + Page page = new Page<>(pageQuery.getCurrent(), pageQuery.getSize()); + List list = portGroupMapper.selectPortGroupListResList(page, req); - return PageInfo.of(list, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + return PageInfo.of(list, page.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); } public List list(PortGroupListReq req) { - List list = portGroupMapper.selectPortGroupListResList(req); + List list = portGroupMapper.selectPortGroupListResList(null, req); return list; } diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/PortMappingService.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/PortMappingService.java index 7ed13c5d..dca22a10 100644 --- a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/PortMappingService.java +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/PortMappingService.java @@ -5,8 +5,7 @@ import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.core.toolkit.StringUtils; -import com.github.pagehelper.Page; -import com.github.pagehelper.PageHelper; +import com.baomidou.mybatisplus.solon.plugins.pagination.Page; import com.google.common.collect.Sets; import ma.glasnost.orika.MapperFacade; import org.apache.ibatis.solon.annotation.Db; @@ -70,7 +69,6 @@ public class PortMappingService implements LifecycleBean { private DBInitialize dbInitialize; public PageInfo page(PageQuery pageQuery, PortMappingListReq req) { - Page result = PageHelper.startPage(pageQuery.getCurrent(), pageQuery.getSize()); if (StringUtils.isNotEmpty(req.getDescription())) { //描述字段为模糊查询,在应用层处理,否则sqlite不支持 req.setDescription("%" + req.getDescription() + "%"); @@ -82,16 +80,17 @@ public class PortMappingService implements LifecycleBean { req.setProtocal(networkProtocolEnum.getDesc()); } - List list = portMappingMapper.selectPortMappingByCondition(req); + Page page = new Page<>(pageQuery.getCurrent(), pageQuery.getSize()); + List list = portMappingMapper.selectPortMappingByCondition(page, req); List respList = mapperFacade.mapAsList(list, PortMappingListRes.class); if (CollectionUtils.isEmpty(list)) { - return PageInfo.of(respList, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + return PageInfo.of(respList, page.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); } Set licenseIds = respList.stream().map(PortMappingListRes::getLicenseId).collect(Collectors.toSet()); List licenseList = licenseMapper.findByIds(licenseIds); if (CollectionUtil.isEmpty(licenseList)) { - return PageInfo.of(respList, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + return PageInfo.of(respList, page.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); } Set userIds = licenseList.stream().map(LicenseDO::getUserId).collect(Collectors.toSet()); List userList = userMapper.findByIds(userIds); @@ -119,7 +118,7 @@ public class PortMappingService implements LifecycleBean { }); //sorted [userId asc] [licenseId asc] [createTime asc] respList = respList.stream().sorted(Comparator.comparing(PortMappingListRes::getUserId).thenComparing(PortMappingListRes::getLicenseId).thenComparing(PortMappingListRes::getCreateTime)).collect(Collectors.toList()); - return PageInfo.of(respList, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + return PageInfo.of(respList, page.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); } public PortMappingCreateRes create(PortMappingCreateReq req) { diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/PortPoolService.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/PortPoolService.java index e6e49534..8ff5de76 100644 --- a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/PortPoolService.java +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/PortPoolService.java @@ -3,8 +3,7 @@ package org.dromara.neutrinoproxy.server.service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import com.github.pagehelper.Page; -import com.github.pagehelper.PageHelper; +import com.baomidou.mybatisplus.solon.plugins.pagination.Page; import org.dromara.neutrinoproxy.server.base.page.PageInfo; import org.dromara.neutrinoproxy.server.base.page.PageQuery; import org.dromara.neutrinoproxy.server.base.rest.ServiceException; @@ -16,7 +15,6 @@ import org.dromara.neutrinoproxy.server.dal.LicenseMapper; import org.dromara.neutrinoproxy.server.dal.PortGroupMapper; import org.dromara.neutrinoproxy.server.dal.PortMappingMapper; import org.dromara.neutrinoproxy.server.dal.PortPoolMapper; -import org.dromara.neutrinoproxy.server.dal.entity.*; import org.dromara.neutrinoproxy.server.dal.entity.LicenseDO; import org.dromara.neutrinoproxy.server.dal.entity.PortMappingDO; import org.dromara.neutrinoproxy.server.dal.entity.PortPoolDO; @@ -25,8 +23,6 @@ import lombok.extern.slf4j.Slf4j; import ma.glasnost.orika.MapperFacade; import org.apache.commons.lang3.StringUtils; import org.apache.ibatis.solon.annotation.Db; -import org.dromara.neutrinoproxy.server.controller.req.system.*; -import org.dromara.neutrinoproxy.server.controller.res.system.*; import org.dromara.neutrinoproxy.server.dal.entity.PortGroupDO; import org.dromara.neutrinoproxy.server.util.PortAvailableUtil; import org.noear.solon.annotation.Component; @@ -63,10 +59,9 @@ public class PortPoolService { private LicenseMapper licenseMapper; public PageInfo page(PageQuery pageQuery, PortPoolListReq req) { - Page result = PageHelper.startPage(pageQuery.getCurrent(), pageQuery.getSize()); - - List list = portPoolMapper.selectResList(req); - return PageInfo.of(list, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + Page page = new Page<>(pageQuery.getCurrent(), pageQuery.getSize()); + List list = portPoolMapper.selectResList(page, req); + return PageInfo.of(list, page.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); } public List list(PortPoolListReq req) { @@ -183,10 +178,10 @@ public class PortPoolService { req.setKeyword(req.getKeyword()+"%"); } - Page result = PageHelper.startPage(req.getPage(), req.getSize()); - List portList = portPoolMapper.getAvailablePortList(req.getLicenseId(), licenseDO.getUserId(), req.getKeyword()); + Page page = new Page<>(req.getPage(), req.getSize()); + List portList = portPoolMapper.getAvailablePortList(page, req.getLicenseId(), licenseDO.getUserId(), req.getKeyword()); - return PageInfo.of(portList, result.getTotal(), req.getPage(), req.getSize()); + return PageInfo.of(portList, page.getTotal(), req.getPage(), req.getSize()); } public void deleteBatch(List ids) { diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/ReportService.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/ReportService.java index 324d3633..09a55203 100644 --- a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/ReportService.java +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/ReportService.java @@ -2,8 +2,7 @@ package org.dromara.neutrinoproxy.server.service; import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.github.pagehelper.Page; -import com.github.pagehelper.PageHelper; +import com.baomidou.mybatisplus.solon.plugins.pagination.Page; import com.google.common.collect.Lists; import org.dromara.neutrinoproxy.core.util.DateUtil; import org.dromara.neutrinoproxy.server.base.db.DbConfig; @@ -101,11 +100,11 @@ public class ReportService { * @return */ public PageInfo userFlowReportPage(PageQuery pageQuery, UserFlowReportReq req) { - Page result = PageHelper.startPage(pageQuery.getCurrent(), pageQuery.getSize()); + Page page = new Page<>(pageQuery.getCurrent(), pageQuery.getSize()); Date now = new Date(); - List list = reportMapper.userFlowReportList(req.getUserId(), DateUtil.getMonthBegin(now), DateUtil.getDayBegin(now), now); + List list = reportMapper.userFlowReportList(page, req.getUserId(), DateUtil.getMonthBegin(now), DateUtil.getDayBegin(now), now); fillUserFlowReport(list); - return PageInfo.of(list, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + return PageInfo.of(list, page); } /** @@ -115,11 +114,11 @@ public class ReportService { * @return */ public PageInfo licenseFlowReportPage(PageQuery pageQuery, LicenseFlowReportReq req) { - Page result = PageHelper.startPage(pageQuery.getCurrent(), pageQuery.getSize()); + Page page = new Page<>(pageQuery.getCurrent(), pageQuery.getSize()); Date now = new Date(); - List list = reportMapper.licenseFLowReportList(req.getUserId(), DateUtil.getMonthBegin(now), DateUtil.getDayBegin(now), now); + List list = reportMapper.licenseFLowReportList(page, req.getUserId(), DateUtil.getMonthBegin(now), DateUtil.getDayBegin(now), now); fillLicenseFlowReport(list); - return PageInfo.of(list, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + return PageInfo.of(list, page); } /** @@ -129,11 +128,11 @@ public class ReportService { * @return */ public PageInfo userFlowMonthReportPage(PageQuery pageQuery, UserFlowMonthReportReq req) { - Page result = PageHelper.startPage(pageQuery.getCurrent(), pageQuery.getSize()); + Page page = new Page<>(pageQuery.getCurrent(), pageQuery.getSize()); Date now = new Date(); - List list = reportMapper.userFlowMonthReportList(req.getUserId(), DateUtil.getMonthBegin(now), DateUtil.getDayBegin(now), now); + List list = reportMapper.userFlowMonthReportList(page, req.getUserId(), DateUtil.getMonthBegin(now), DateUtil.getDayBegin(now), now); fillUserFlowMonthReport(list); - return PageInfo.of(list, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + return PageInfo.of(list, page); } /** @@ -143,11 +142,11 @@ public class ReportService { * @return */ public PageInfo licenseFlowMonthReportPage(PageQuery pageQuery, LicenseFlowMonthReportReq req) { - Page result = PageHelper.startPage(pageQuery.getCurrent(), pageQuery.getSize()); + Page page = new Page<>(pageQuery.getCurrent(), pageQuery.getSize()); Date now = new Date(); - List list = reportMapper.licenseFLowMonthReportList(req.getUserId(), req.getLicenseId(), DateUtil.getMonthBegin(now), DateUtil.getDayBegin(now), now); + List list = reportMapper.licenseFLowMonthReportList(page, req.getUserId(), req.getLicenseId(), DateUtil.getMonthBegin(now), DateUtil.getDayBegin(now), now); fillLicenseFlowMonthReport(list); - return PageInfo.of(list, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + return PageInfo.of(list, page); } private void fillUserFlowReport(List list) { diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/UserLoginRecordService.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/UserLoginRecordService.java index dd0f040d..5bb997a8 100644 --- a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/UserLoginRecordService.java +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/UserLoginRecordService.java @@ -3,8 +3,7 @@ package org.dromara.neutrinoproxy.server.service; import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; -import com.github.pagehelper.Page; -import com.github.pagehelper.PageHelper; +import com.baomidou.mybatisplus.solon.plugins.pagination.Page; import org.dromara.neutrinoproxy.server.base.page.PageInfo; import org.dromara.neutrinoproxy.server.base.page.PageQuery; import org.dromara.neutrinoproxy.server.controller.req.log.UserLoginRecordListReq; @@ -39,14 +38,13 @@ public class UserLoginRecordService { private UserMapper userMapper; public PageInfo page(PageQuery pageQuery, UserLoginRecordListReq req) { - Page result = PageHelper.startPage(pageQuery.getCurrent(), pageQuery.getSize()); - List list = userLoginRecordMapper.selectList(new LambdaQueryWrapper() - .eq(null != req.getUserId(), UserLoginRecordDO::getUserId, req.getUserId()) - .orderByDesc(UserLoginRecordDO::getCreateTime) + Page page = userLoginRecordMapper.selectPage(new Page<>(pageQuery.getCurrent(), pageQuery.getSize()), new LambdaQueryWrapper() + .eq(null != req.getUserId(), UserLoginRecordDO::getUserId, req.getUserId()) + .orderByDesc(UserLoginRecordDO::getCreateTime) ); - List respList = mapperFacade.mapAsList(list, UserLoginRecordListRes.class); - if (CollectionUtils.isEmpty(list)) { - return PageInfo.of(respList, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + List respList = mapperFacade.mapAsList(page.getRecords(), UserLoginRecordListRes.class); + if (CollectionUtils.isEmpty(page.getRecords())) { + return PageInfo.of(respList, page); } if (!CollectionUtil.isEmpty(respList)) { @@ -60,6 +58,6 @@ public class UserLoginRecordService { } } } - return PageInfo.of(respList, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + return PageInfo.of(respList, page); } } diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/UserService.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/UserService.java index fa89d4ac..1c9d5cc7 100644 --- a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/UserService.java +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/UserService.java @@ -2,8 +2,7 @@ package org.dromara.neutrinoproxy.server.service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.github.pagehelper.Page; -import com.github.pagehelper.PageHelper; +import com.baomidou.mybatisplus.solon.plugins.pagination.Page; import org.dromara.neutrinoproxy.core.util.DateUtil; import org.dromara.neutrinoproxy.server.base.page.PageInfo; import org.dromara.neutrinoproxy.server.base.page.PageQuery; @@ -120,12 +119,11 @@ public class UserService { } public PageInfo page(PageQuery pageQuery, UserListReq req) { - Page result = PageHelper.startPage(pageQuery.getCurrent(), pageQuery.getSize()); - List list = userMapper.selectList(new LambdaQueryWrapper() - .orderByAsc(UserDO::getId) - ); - List respList = mapperFacade.mapAsList(list, UserListRes.class); - return PageInfo.of(respList, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize()); + Page page = userMapper.selectPage(new Page<>(pageQuery.getCurrent(), pageQuery.getSize()), new LambdaQueryWrapper() + .orderByAsc(UserDO::getId) + ); + List respList = mapperFacade.mapAsList(page.getRecords(), UserListRes.class); + return PageInfo.of(respList, page); } public List list(UserListReq req) {