Commit b6700978 by 阳浪

查询活动时间

parent a0489c97
......@@ -16,7 +16,7 @@ import java.util.Date;
public class TrainingProjectParamVo {
@ApiModelProperty(value = "当前时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date now;
@ApiModelProperty(value = "关键字,搜索用,非必传")
......
......@@ -67,7 +67,7 @@ public interface TrainingProjectMapper extends BaseMapper<TrainingProject> {
@Param("bizType") Integer bizType,
@Param("activityType") Long activityType, Page<TrainingProjectListVo> page);
TrainingProjectVo apiPageListCount(@Param("visiableTpIds") List<Long> visiableTpIds,
List<TrainingProjectVo> apiPageListCount(@Param("visiableTpIds") List<Long> visiableTpIds,
@Param("passEnrollTpIds") List<Long> passEnrollTpIds, @Param("siteId") Long siteId, @Param("keyword") String keyword,
@Param("bizType") Integer bizType);
......
......@@ -269,7 +269,7 @@
</select>
<select id="apiPageListCount" resultType="com.yizhi.training.application.vo.domain.TrainingProjectVo">
select min(tb.start_time) as startTime,max(tb.end_time) as endTime
select tb.start_time as startTime,tb.end_time as endTime
from training_project tb
where
-- 首先用站点 id 和上架状态缩小范围
......
......@@ -5,6 +5,7 @@ import java.text.ParseException;
import java.util.*;
import java.util.stream.Collectors;
import com.yizhi.training.application.util.LegacyDateUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.time.DateUtils;
import org.apache.ibatis.session.RowBounds;
......@@ -542,11 +543,7 @@ public class TrainingProjectServiceImpl extends ServiceImpl<TrainingProjectMappe
Page<TrainingProjectListVo> page = new Page<>(paramVo.getPageNo(), paramVo.getPageSize());
List<TrainingProjectListVo> pageList = new ArrayList<>();
if(paramVo.getNow()!=null) {
try {
paramVo.setNow( DateUtil.valueOfStandard(DateUtil.format(paramVo.getNow(),"yyyy-MM-dd")));
} catch (Exception e) {
e.printStackTrace();
}
LOGGER.info("查询活动时间{}",DateUtil.toDay(paramVo.getNow()));
}
List<com.yizhi.training.application.vo.domain.TrainingProjectVo> list = trainingProjectMapper.apiPageList(visiableTpIds, passEnrollTpIds, paramVo.getNow(), context.getSiteId(), paramVo.getKeyword(),enablePay,
paramVo.getBizType(),paramVo.getActivityType(),page);
......@@ -1505,11 +1502,17 @@ public class TrainingProjectServiceImpl extends ServiceImpl<TrainingProjectMappe
TrainingActivityVO item = new TrainingActivityVO();
//目前只需要统计一天,调用以前的方法就行
TrainingProjectVo trainingProjectVo = trainingProjectMapper.apiPageListCount(null, null, context.getSiteId(), null, bizType);
if(trainingProjectVo!=null){
List<TrainingProjectVo> trainingProjectVos = trainingProjectMapper.apiPageListCount(null, null, context.getSiteId(), null, bizType);
if(!CollectionUtils.isEmpty(trainingProjectVos)){
List<String> list = new ArrayList<String>(1);
list.add(DateUtil.toDay(trainingProjectVo.getStartTime()));
list.add(DateUtil.toDay(trainingProjectVo.getEndTime()));
trainingProjectVos.stream().forEach(trainingProjectVo -> {
List<String> dateList = LegacyDateUtils.getDatesBetween(trainingProjectVo.getStartTime(),trainingProjectVo.getEndTime());
dateList.stream().forEach(date->{
if(!list.contains(date)){
list.add(date);
}
});
});
item.setTheDay(list);
}
......
package com.yizhi.training.application.util;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
public class LegacyDateUtils {
/**
* 获取两个日期间的所有日期(包含起止日期)
* @param start 起始日期(格式:yyyy-MM-dd)
* @param end 结束日期(格式:yyyy-MM-dd)
* @return 日期字符串列表,格式:yyyy-MM-dd
*/
public static List<String> getDatesBetween(Date start, Date end) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
List<String> dates = new ArrayList<>();
try {
Calendar calendar = Calendar.getInstance();
calendar.setTime(start);
while (!calendar.getTime().after(end)) {
dates.add(format.format(calendar.getTime()));
calendar.add(Calendar.DATE, 1);
}
} catch (Exception e) {
e.printStackTrace();
}
return dates;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment