From 0fe6e0afc66e1034b60a3eb7d2cf3a9e04851abe Mon Sep 17 00:00:00 2001
From: shankai <shankai1995@qq.com>
Date: Fri, 13 Dec 2024 11:38:22 +0800
Subject: [PATCH] by: 修改selectPage接口返回值
---
skjcmanager/skjcmanager-service/skjcmanager-by/src/main/java/cn/gistack/by/waterdata/service/impl/DistanceRecordServiceImpl.java | 34 ++++++++++++++++++++++++++++++++++
1 files changed, 34 insertions(+), 0 deletions(-)
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-by/src/main/java/cn/gistack/by/waterdata/service/impl/DistanceRecordServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-by/src/main/java/cn/gistack/by/waterdata/service/impl/DistanceRecordServiceImpl.java
index c99bb04..56298f6 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-by/src/main/java/cn/gistack/by/waterdata/service/impl/DistanceRecordServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-by/src/main/java/cn/gistack/by/waterdata/service/impl/DistanceRecordServiceImpl.java
@@ -18,11 +18,18 @@
import cn.gistack.by.waterdata.mapper.DistanceRecordMapper;
import cn.gistack.by.waterdata.pojo.entity.DistanceRecord;
+import cn.gistack.by.waterdata.pojo.entity.SelectPageParam;
import cn.gistack.by.waterdata.pojo.vo.DistanceRecordVO;
+import cn.gistack.by.waterdata.pojo.wrapper.DistanceRecordWrapper;
import cn.gistack.by.waterdata.service.api.IDistanceRecordService;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
+
+import java.text.DecimalFormat;
+import java.util.ArrayList;
+import java.util.List;
/**
* 新闻 服务实现类
@@ -33,6 +40,33 @@
@Service
public class DistanceRecordServiceImpl extends ServiceImpl<DistanceRecordMapper, DistanceRecord>
implements IDistanceRecordService {
+ /**
+ * 自定义分页逻辑
+ *
+ * @param param {@link SelectPageParam}
+ * @return
+ */
+ public IPage<DistanceRecordVO> selectPage(SelectPageParam param) {
+ List<DistanceRecord> distanceRecords = this.baseMapper.selectPage(param);
+ int subTableRecordsCount = this.baseMapper.getSubTableCount4Page(param);
+
+ List<DistanceRecordVO> recordVOList = new ArrayList<>(distanceRecords.size());
+ for (DistanceRecord distanceRecord : distanceRecords) {
+ DistanceRecordVO distanceRecordVO = DistanceRecordWrapper.build().entityVO(distanceRecord);
+ distanceRecordVO.setInitDistance(new DecimalFormat("#.##").format(param.getInitDistance()));
+ distanceRecordVO.setDistanceOffset(new DecimalFormat("#.##")
+ .format(distanceRecordVO.getDistance() - param.getInitDistance()));
+ recordVOList.add(distanceRecordVO);
+ }
+
+ Page page = new Page();
+ page.setCurrent(param.getCurrentPageIndex());
+ page.setSize(param.getPageSize());
+ page.setRecords(recordVOList);
+ page.setTotal(subTableRecordsCount);
+ return page;
+ }
+
@Override
public IPage<DistanceRecordVO> selectDistanceRecordPage(IPage<DistanceRecordVO> page, DistanceRecordVO distanceRecordVO) {
return page.setRecords(baseMapper.selectDistanceRecordPage(page, distanceRecordVO));
--
Gitblit v1.9.3