提交 89359ca0 authored 作者: 宋文杰's avatar 宋文杰

feat(emergency event): add permission control when event paged query

上级 300a2856
...@@ -32,7 +32,7 @@ public class EmergencyEventController extends BaseController { ...@@ -32,7 +32,7 @@ public class EmergencyEventController extends BaseController {
*/ */
@GetMapping("/page") @GetMapping("/page")
public R getEmergencyEventPage(Page page, EmergencyEvent emergencyEvent) { public R getEmergencyEventPage(Page page, EmergencyEvent emergencyEvent) {
return new R<>(emergencyEventService.page(page,Wrappers.query(emergencyEvent))); return new R<>(emergencyEventService.getEventPage(page,emergencyEvent));
} }
......
package com.elephant.framework.galaxy.aroad.module.emergencyevent.mapper; package com.elephant.framework.galaxy.aroad.module.emergencyevent.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.elephant.framework.galaxy.aroad.module.emergencyevent.entity.EmergencyEvent; import com.elephant.framework.galaxy.aroad.module.emergencyevent.entity.EmergencyEvent;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -12,8 +13,32 @@ import org.apache.ibatis.annotations.Param; ...@@ -12,8 +13,32 @@ import org.apache.ibatis.annotations.Param;
*/ */
public interface EmergencyEventMapper extends BaseMapper<EmergencyEvent> { public interface EmergencyEventMapper extends BaseMapper<EmergencyEvent> {
/**
* @Description: 新增应急事件
* @param: [event]
* @return: boolean
* @Author: songwenjie
* @Date: 2019/5/15
*/
boolean saveEvent(EmergencyEvent event); boolean saveEvent(EmergencyEvent event);
/**
* @Description: 更新应急事件状态
* @param: [enevtId, status]
* @return: boolean
* @Author: songwenjie
* @Date: 2019/5/15
*/
boolean updateStatus(@Param("eventId")Integer enevtId,@Param("status")String status); boolean updateStatus(@Param("eventId")Integer enevtId,@Param("status")String status);
/**
* @Description: 分页获取应急事件
* @param: [page, repotingDept]
* @return: com.baomidou.mybatisplus.extension.plugins.pagination.Page<com.elephant.framework.galaxy.aroad.module.emergencyevent.entity.EmergencyEvent>
* @Author: songwenjie
* @Date: 2019/5/15
*/
Page<EmergencyEvent> getEventPage (Page page,String reportingDept);
} }
package com.elephant.framework.galaxy.aroad.module.emergencyevent.service; package com.elephant.framework.galaxy.aroad.module.emergencyevent.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.elephant.framework.galaxy.aroad.module.emergencyevent.entity.EmergencyEvent; import com.elephant.framework.galaxy.aroad.module.emergencyevent.entity.EmergencyEvent;
...@@ -11,6 +12,15 @@ import com.elephant.framework.galaxy.aroad.module.emergencyevent.entity.Emergenc ...@@ -11,6 +12,15 @@ import com.elephant.framework.galaxy.aroad.module.emergencyevent.entity.Emergenc
*/ */
public interface EmergencyEventService extends IService<EmergencyEvent> { public interface EmergencyEventService extends IService<EmergencyEvent> {
/**
* @Description: 分页获取应急事件
* @param: [page, event]
* @return: com.baomidou.mybatisplus.extension.plugins.pagination.Page<com.elephant.framework.galaxy.aroad.module.emergencyevent.entity.EmergencyEvent>
* @Author: songwenjie
* @Date: 2019/5/15
*/
Page<EmergencyEvent> getEventPage (Page page, EmergencyEvent event);
/** /**
* @Description: 新增(上报)应急事件 * @Description: 新增(上报)应急事件
* @Param: [event] * @Param: [event]
......
package com.elephant.framework.galaxy.aroad.module.emergencyevent.service.impl; package com.elephant.framework.galaxy.aroad.module.emergencyevent.service.impl;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.elephant.framework.galaxy.aroad.module.emergencyevent.entity.EmergencyEvent; import com.elephant.framework.galaxy.aroad.module.emergencyevent.entity.EmergencyEvent;
import com.elephant.framework.galaxy.aroad.module.emergencyevent.entity.Evendeal; import com.elephant.framework.galaxy.aroad.module.emergencyevent.entity.Evendeal;
...@@ -26,6 +27,23 @@ public class EmergencyEventServiceImpl extends ServiceImpl<EmergencyEventMapper, ...@@ -26,6 +27,23 @@ public class EmergencyEventServiceImpl extends ServiceImpl<EmergencyEventMapper,
@Autowired @Autowired
private EvendealService evendealService; private EvendealService evendealService;
/**
* @Description: 分页获取应急事件
* @param: [page, event]
* @return: com.baomidou.mybatisplus.extension.plugins.pagination.Page<com.elephant.framework.galaxy.aroad.module.emergencyevent.entity.EmergencyEvent>
* @Author: songwenjie
* @Date: 2019/5/15
*/
public Page<EmergencyEvent> getEventPage (Page page, EmergencyEvent event){
int reportingDeptId = event.getReportingDeptId();
boolean isProvince = deptService.isProvince(reportingDeptId);
if(isProvince){
return baseMapper.getEventPage(page,null);
}
String deptName = deptService.getDeptName(reportingDeptId);
return baseMapper.getEventPage(page,deptName);
}
/** /**
* @Description: 新增(上报)应急事件 * @Description: 新增(上报)应急事件
* @Param: [event] * @Param: [event]
......
...@@ -25,7 +25,7 @@ public class EvendealServiceImpl extends ServiceImpl<EvendealMapper, Evendeal> i ...@@ -25,7 +25,7 @@ public class EvendealServiceImpl extends ServiceImpl<EvendealMapper, Evendeal> i
private EmergencyEventService emergencyEventService; private EmergencyEventService emergencyEventService;
/** /**
* @Description: 新增事件处理信息 * @Description: 新增事件处理信息
* @param: [eventdeal] * @param: [eventdeal]
* @return: boolean * @return: boolean
* @Author: songwenjie * @Author: songwenjie
......
...@@ -3,8 +3,10 @@ package com.elephant.framework.galaxy.aroad.module.system.service; ...@@ -3,8 +3,10 @@ package com.elephant.framework.galaxy.aroad.module.system.service;
import com.elephant.framework.galaxy.aroad.module.system.dto.DeptTree; import com.elephant.framework.galaxy.aroad.module.system.dto.DeptTree;
import com.elephant.framework.galaxy.aroad.module.system.entity.Dept; import com.elephant.framework.galaxy.aroad.module.system.entity.Dept;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import org.springframework.cache.annotation.Cacheable;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* <p> * <p>
...@@ -54,6 +56,7 @@ public interface DeptService extends IService<Dept> { ...@@ -54,6 +56,7 @@ public interface DeptService extends IService<Dept> {
*/ */
Boolean updateDeptById(Dept sysDept); Boolean updateDeptById(Dept sysDept);
/** /**
* @Description: 根据部门id获取二级单位名称 * @Description: 根据部门id获取二级单位名称
* @Param: [deptId] * @Param: [deptId]
......
...@@ -13,6 +13,8 @@ import com.elephant.framework.galaxy.aroad.util.TreeUtil; ...@@ -13,6 +13,8 @@ import com.elephant.framework.galaxy.aroad.util.TreeUtil;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
...@@ -35,9 +37,6 @@ public class DeptServiceImpl extends ServiceImpl<DeptMapper, Dept> implements De ...@@ -35,9 +37,6 @@ public class DeptServiceImpl extends ServiceImpl<DeptMapper, Dept> implements De
private final DeptRelationService deptRelationService; private final DeptRelationService deptRelationService;
//部门映射 key:三级节点部门id value:二级单位
private final Map<Integer,Dept> deptMap;
/** /**
* 添加信息部门 * 添加信息部门
* *
...@@ -155,7 +154,7 @@ public class DeptServiceImpl extends ServiceImpl<DeptMapper, Dept> implements De ...@@ -155,7 +154,7 @@ public class DeptServiceImpl extends ServiceImpl<DeptMapper, Dept> implements De
* @return: java.util.Map<java.lang.Integer,com.elephant.framework.galaxy.aroad.module.system.entity.Dept> * @return: java.util.Map<java.lang.Integer,com.elephant.framework.galaxy.aroad.module.system.entity.Dept>
* @Author: songwenjie * @Author: songwenjie
* @Date: 2019/5/8 * @Date: 2019/5/8
*/ */
private Map<Integer,Dept> getDeptMap(){ private Map<Integer,Dept> getDeptMap(){
//二级节点单位 //二级节点单位
List<Dept> secondaryDepts = baseMapper.getDeptByParentId(1); List<Dept> secondaryDepts = baseMapper.getDeptByParentId(1);
...@@ -186,7 +185,8 @@ public class DeptServiceImpl extends ServiceImpl<DeptMapper, Dept> implements De ...@@ -186,7 +185,8 @@ public class DeptServiceImpl extends ServiceImpl<DeptMapper, Dept> implements De
* @return: java.lang.String * @return: java.lang.String
* @Author: songwenjie * @Author: songwenjie
* @Date: 2019/5/8 * @Date: 2019/5/8
*/ */
@Cacheable(value = "deptName")
public String getDeptName(int deptId){ public String getDeptName(int deptId){
Dept dept = baseMapper.getDeptById(deptId) Dept dept = baseMapper.getDeptById(deptId)
.stream() .stream()
......
...@@ -31,4 +31,12 @@ ...@@ -31,4 +31,12 @@
<update id="updateStatus"> <update id="updateStatus">
update emergency_event set status=#{status} where event_id=#{eventId} update emergency_event set status=#{status} where event_id=#{eventId}
</update> </update>
<select id="getEventPage" resultMap="emergencyEventMap">
select * from emergency_event
<if test="reportingDept != null">
where reporting_dept = #{reportingDept}
</if>
order by reporting_time desc
</select>
</mapper> </mapper>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论