|
|
@@ -5,8 +5,10 @@ import cn.hutool.core.collection.CollectionUtil;
|
|
|
import cn.hutool.core.date.DateTime;
|
|
|
import cn.hutool.core.date.DateUtil;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
+import cn.hutool.core.util.StrUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.ylx.common.core.domain.model.WxLoginUser;
|
|
|
import com.ylx.common.exception.ServiceException;
|
|
|
@@ -26,7 +28,6 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import java.time.*;
|
|
|
-import java.time.format.DateTimeFormatter;
|
|
|
import java.time.temporal.ChronoUnit;
|
|
|
import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
@@ -77,8 +78,37 @@ public class PointActivityServiceImpl extends ServiceImpl<PointActivityMapper, P
|
|
|
|
|
|
|
|
|
@Override
|
|
|
- public List<PointActivityPageVo> list(PointActivityPageDTO dto) {
|
|
|
- return pointActivityMapper.list(dto);
|
|
|
+ public Page<PointActivityPageVo> list(Page<PointActivity> page, PointActivityPageDTO dto) {
|
|
|
+ LambdaQueryWrapper<PointActivity> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ if (ObjectUtil.isNotNull(dto.getActivityType())) {
|
|
|
+ queryWrapper.eq(PointActivity::getActivityType, dto.getActivityType());
|
|
|
+ }
|
|
|
+ if (StrUtil.isNotEmpty(dto.getCityCode())) {
|
|
|
+ queryWrapper.eq(PointActivity::getCityCode, dto.getCityCode());
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isNotNull(dto.getStatus())) {
|
|
|
+ queryWrapper.eq(PointActivity::getStatus, dto.getStatus());
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isNotNull(dto.getStartTime()) && ObjectUtil.isNotNull(dto.getEndTime())) {
|
|
|
+ queryWrapper.le(PointActivity::getStartTime, dto.getEndTime());
|
|
|
+ queryWrapper.ge(PointActivity::getEndTime, dto.getStartTime());
|
|
|
+ }
|
|
|
+ queryWrapper.orderByDesc(PointActivity::getCreateTime)
|
|
|
+ .orderByDesc(PointActivity::getSortOrder);
|
|
|
+ Page<PointActivityPageVo> pageData = new Page<>();
|
|
|
+ pageData.setSize(page.getSize());
|
|
|
+ pageData.setCurrent(page.getCurrent());
|
|
|
+
|
|
|
+ Page<PointActivity> pointActivityPage = pointActivityMapper.selectPage(page, queryWrapper);
|
|
|
+ if (ObjectUtil.isNotNull(pointActivityPage) && CollectionUtil.isNotEmpty(pointActivityPage.getRecords())) {
|
|
|
+ List<PointActivityPageVo> voList = pointActivityPage.getRecords().stream()
|
|
|
+ .map(this::convertToVo) // 抽取转换方法
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ pageData.setRecords(voList);
|
|
|
+ pageData.setTotal(pointActivityPage.getTotal());
|
|
|
+ pageData.setPages(pointActivityPage.getPages());
|
|
|
+ }
|
|
|
+ return pageData;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@@ -231,7 +261,7 @@ public class PointActivityServiceImpl extends ServiceImpl<PointActivityMapper, P
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public List<UserPointActivityVo> getUserPointActivityList(UserPointActivityPageDTO dto) {
|
|
|
+ public Page<UserPointActivityVo> getUserPointActivityList(Page<PointActivity> page, UserPointActivityPageDTO dto) {
|
|
|
|
|
|
// 当前登录用户信息
|
|
|
WxLoginUser wxLoginUser = SecurityUtils.getWxLoginUser();
|
|
|
@@ -240,7 +270,7 @@ public class PointActivityServiceImpl extends ServiceImpl<PointActivityMapper, P
|
|
|
}
|
|
|
String openId = wxLoginUser.getCOpenid();
|
|
|
dto.setOpenId(openId);
|
|
|
- return pointActivityMapper.selectTaskWithProgress(dto);
|
|
|
+ return pointActivityMapper.selectTaskWithProgress(page, dto);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@@ -975,4 +1005,11 @@ public class PointActivityServiceImpl extends ServiceImpl<PointActivityMapper, P
|
|
|
return task;
|
|
|
}
|
|
|
|
|
|
+ private PointActivityPageVo convertToVo(PointActivity activity) {
|
|
|
+ PointActivityPageVo vo = new PointActivityPageVo();
|
|
|
+ // 属性拷贝(推荐)
|
|
|
+ BeanUtil.copyProperties(activity, vo);
|
|
|
+ return vo;
|
|
|
+ }
|
|
|
+
|
|
|
}
|