Commit c6391f39 authored by libin's avatar libin

summit activity

parent 01dc4858
package com.xxfc.platform.uccn.dto;
import lombok.Data;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/8/26 15:51
*/
@Data
public class SummitActivityDTO {
}
......@@ -3,6 +3,8 @@ package com.xxfc.platform.uccn.biz;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
import com.github.wxiaoqi.security.admin.feign.dto.UserDTO;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.util.RandomUtil;
import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.xxfc.platform.uccn.dto.SummitActivityFindDTO;
import com.xxfc.platform.uccn.dto.SummitActivitySaveDTO;
......@@ -33,7 +35,7 @@ import java.util.*;
public class SummitActivityBiz extends BaseBiz<SummitActivityMapper, SummitActivity> {
public List<SummitActivityVo> findSummitActivityForHomePage(Integer limit,Integer location) {
public List<SummitActivityVo> findSummitActivityForHomePage(Integer limit, Integer location) {
Example example = new Example(SummitActivity.class);
example.setOrderByClause("rank");
Example.Criteria criteria = example.createCriteria();
......@@ -46,7 +48,7 @@ public class SummitActivityBiz extends BaseBiz<SummitActivityMapper, SummitActiv
//活动未下架
criteria.andEqualTo("isShow", 1);
//位置
criteria.andIn("location", Arrays.asList(location,0));
criteria.andIn("location", Arrays.asList(location, 0));
PageDataVO<SummitActivity> dataVO = PageDataVO.pageInfo(1, limit, () -> mapper.selectByExample(example));
List<SummitActivity> summitActivities = dataVO.getData();
......@@ -166,4 +168,46 @@ public class SummitActivityBiz extends BaseBiz<SummitActivityMapper, SummitActiv
summitActivity.setRank(rank);
mapper.updateByPrimaryKeySelective(summitActivity);
}
public List<SummitActivityVo> getHostWithSummitActivity(Integer num, Integer location) {
List<SummitActivityVo> summitActivityVos = new ArrayList<>();
Example example = new Example(SummitActivity.class);
Example.Criteria criteria = example.createCriteria();
//未删除
criteria.andEqualTo("isDel", 0);
//已发布
criteria.andEqualTo("isPublish", 1);
//活动未下架
criteria.andEqualTo("isShow", 1);
//位置
criteria.andIn("location", Arrays.asList(location, 0));
criteria.andGreaterThan("endTime", Instant.now().toEpochMilli());
List<SummitActivity> summitActivities = mapper.selectByExample(example);
if (CollectionUtils.isNotEmpty(summitActivities)) {
SummitActivityVo summitActivityVo;
if (summitActivities.size() <= num) {
for (SummitActivity summitActivity : summitActivities) {
summitActivityVo = new SummitActivityVo();
summitActivityVo.setId(summitActivity.getId());
summitActivityVo.setBanner(summitActivity.getBanner());
summitActivityVo.setTitle(summitActivity.getTitle());
summitActivityVos.add(summitActivityVo);
}
} else {
Set<Integer> resultSet = new HashSet<>();
RandomUtil.randomSet(summitActivities.size(), num, resultSet);
for (Integer i : resultSet) {
summitActivityVo = new SummitActivityVo();
SummitActivity summitActivity = summitActivities.get(i);
summitActivityVo.setId(summitActivity.getId());
summitActivityVo.setBanner(summitActivity.getBanner());
summitActivityVo.setTitle(summitActivity.getTitle());
summitActivityVos.add(summitActivityVo);
}
}
}
return summitActivityVos;
}
}
\ No newline at end of file
......@@ -43,9 +43,9 @@ public class SummitActivityController{
@ApiOperation("热门推荐获取")
@GetMapping("/hot")
public ObjectRestResponse<Void> findHotWithSummitActivity(@RequestParam(value = "num",required = false,defaultValue = "3") Integer num){
// List<> summitActivityBiz.getHostWithSummitActivity(num);
return ObjectRestResponse.succ();
public ObjectRestResponse<List<SummitActivityVo>> findHotWithSummitActivity(@RequestParam(value = "num",required = false,defaultValue = "2") Integer num,@RequestParam(value = "location",defaultValue = "1",required = false) Integer location){
List<SummitActivityVo> summitActivityVos = summitActivityBiz.getHostWithSummitActivity(num,location);
return ObjectRestResponse.succ(summitActivityVos);
}
}
\ No newline at end of file
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