Commit 23c4135b by “Kongxiangkun”

增加面板排行榜接口

parent f6bf207b
package com.yizhi.site.application.feign.api;
import com.yizhi.site.application.vo.domain.EventTrackVo;
import com.yizhi.site.application.vo.site.DayNumVo;
import com.yizhi.site.application.vo.site.EventTrackDayNumVo;
import com.yizhi.site.application.vo.site.EventTrackDeptNumVo;
import com.yizhi.site.application.vo.site.EventTrackTypeNumVo;
import com.yizhi.site.application.vo.site.*;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
......@@ -46,4 +43,7 @@ public interface EventTrackApiClients {
@GetMapping("/api/eventTrack/queryExamNum")
List<EventTrackDeptNumVo> queryExamNum();
@GetMapping("/api/eventTrack/queryRankList")
List<EventTrackRankListVo> queryRankList(@RequestParam("date") String date, @RequestParam("type") String type);
}
package com.yizhi.site.application.vo.site;
import lombok.Data;
import java.util.List;
@Data
public class EventTrackRankListVo {
private String name;
private Integer num;
}
......@@ -2,10 +2,7 @@ package com.yizhi.site.application.controller.api;
import com.yizhi.site.application.service.EventTrackService;
import com.yizhi.site.application.vo.domain.EventTrackVo;
import com.yizhi.site.application.vo.site.DayNumVo;
import com.yizhi.site.application.vo.site.EventTrackDayNumVo;
import com.yizhi.site.application.vo.site.EventTrackDeptNumVo;
import com.yizhi.site.application.vo.site.EventTrackTypeNumVo;
import com.yizhi.site.application.vo.site.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
......@@ -73,4 +70,9 @@ public class EventTrackController {
public List<EventTrackDeptNumVo> queryExamNum(){
return eventTrackService.queryExamNum();
}
@GetMapping("/api/eventTrack/queryRankList")
public List<EventTrackRankListVo> queryRankList(@RequestParam("date") String date,@RequestParam("type") String type){
return eventTrackService.queryRankList(date, type);
}
}
......@@ -2,10 +2,7 @@ package com.yizhi.site.application.mapper;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.yizhi.site.application.domain.EventTrack;
import com.yizhi.site.application.vo.site.DayNumVo;
import com.yizhi.site.application.vo.site.EventTrackDayNumVo;
import com.yizhi.site.application.vo.site.EventTrackDeptNumVo;
import com.yizhi.site.application.vo.site.EventTrackTypeNumVo;
import com.yizhi.site.application.vo.site.*;
import org.apache.ibatis.annotations.MapKey;
import org.apache.ibatis.annotations.Param;
......@@ -61,4 +58,8 @@ public interface EventTrackMapper extends BaseMapper<EventTrack> {
@MapKey("subType")
Map<String, EventTrackTypeNumVo> queryExamNumBydeptId();
List<EventTrackRankListVo> queryRankListByUser(@Param("date") String date,@Param("dateString") String dateString);
List<EventTrackRankListVo> queryRankListByDept(@Param("date") String date,@Param("dateString") String dateString);
}
......@@ -3,10 +3,7 @@ package com.yizhi.site.application.service;
import com.baomidou.mybatisplus.service.IService;
import com.yizhi.site.application.domain.EventTrack;
import com.yizhi.site.application.vo.domain.EventTrackVo;
import com.yizhi.site.application.vo.site.DayNumVo;
import com.yizhi.site.application.vo.site.EventTrackDayNumVo;
import com.yizhi.site.application.vo.site.EventTrackDeptNumVo;
import com.yizhi.site.application.vo.site.EventTrackTypeNumVo;
import com.yizhi.site.application.vo.site.*;
import java.util.List;
......@@ -37,4 +34,6 @@ public interface EventTrackService extends IService<EventTrack> {
Integer getExamTotal(String subType,String year);
List<EventTrackDeptNumVo> queryExamNum();
List<EventTrackRankListVo> queryRankList(String date, String type);
}
......@@ -19,10 +19,7 @@ import com.yizhi.site.application.service.DataClassificationService;
import com.yizhi.site.application.service.EventTrackService;
import com.yizhi.site.application.service.PublicationService;
import com.yizhi.site.application.vo.domain.EventTrackVo;
import com.yizhi.site.application.vo.site.DayNumVo;
import com.yizhi.site.application.vo.site.EventTrackDayNumVo;
import com.yizhi.site.application.vo.site.EventTrackDeptNumVo;
import com.yizhi.site.application.vo.site.EventTrackTypeNumVo;
import com.yizhi.site.application.vo.site.*;
import com.yizhi.system.application.feign.DictionaryFeignClients;
import com.yizhi.system.application.vo.domain.Dictionary;
import com.yizhi.training.application.feign.LeaveWordClient;
......@@ -405,7 +402,7 @@ public class EventTrackServiceImpl extends ServiceImpl<EventTrackMapper, EventTr
if(ObjectUtils.isEmpty(date)){
date = "3";
}
String dateString =getDateString(date);
String dateString = getDateString(date);
RequestContext context = ContextHolder.get();
// if(!ObjectUtils.isEmpty(subName)) {
// String key = "event_track_type";
......@@ -709,4 +706,16 @@ public class EventTrackServiceImpl extends ServiceImpl<EventTrackMapper, EventTr
return eventTrackDeptNumVoList;
}
@Override
public List<EventTrackRankListVo> queryRankList(String date, String type) {
String dateString = getDateString(date);
if(type.equals("1")) {
//支部
return this.baseMapper.queryRankListByDept(date, dateString);
} else {
//用户
return this.baseMapper.queryRankListByUser(date, dateString);
}
}
}
......@@ -376,4 +376,35 @@
WHERE e.state=2
GROUP BY agm.group_id
</select>
<select id="queryRankListByUser" resultType="com.yizhi.site.application.vo.site.EventTrackRankListVo">
select a.full_name as name, cnt from (
select dept_name as name, count(*) as cnt from event_track e where
type in ('9', '13') and dept_name is not null
<if test="date==3">
and DATE_FORMAT(e.create_time, '%Y-%m-%d') = DATE_SUB(DATE_FORMAT(#{dateString}, '%Y-%m-%d'), INTERVAL 1 DAY)
</if>
<if test="date==2">
and DATE_FORMAT(e.create_time, '%Y-%m') = #{dateString}
</if>
<if test="date==1">
and DATE_FORMAT(e.create_time, '%Y') = #{dateString}
</if>
group by dept_name order by cnt desc limit 5) e left join cloud_system.account a on e.create_by_id = a.id
</select>
<select id="queryRankListByDept" resultType="com.yizhi.site.application.vo.site.EventTrackRankListVo">
select create_by_id as name, count(*) as cnt from event_track e where
type in ('9', '13')
<if test="date==3">
and DATE_FORMAT(e.create_time, '%Y-%m-%d') = DATE_SUB(DATE_FORMAT(#{dateString}, '%Y-%m-%d'), INTERVAL 1 DAY)
</if>
<if test="date==2">
and DATE_FORMAT(e.create_time, '%Y-%m') = #{dateString}
</if>
<if test="date==1">
and DATE_FORMAT(e.create_time, '%Y') = #{dateString}
</if>
group by create_by_id order by cnt desc limit 5
</select>
</mapper>
\ 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