告警待办、已办增加数据权限

This commit is contained in:
lxj
2025-09-11 17:16:28 +08:00
parent c941443bca
commit 89b82149bd
11 changed files with 83 additions and 15 deletions

View File

@@ -1,6 +1,5 @@
package org.dromara.sis.controller; package org.dromara.sis.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse; import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.NotNull;

View File

@@ -40,7 +40,6 @@ public class SisAlarmEventProcessController extends BaseController {
/** /**
* 查询告警信息处理流程记录列表 * 查询告警信息处理流程记录列表
*/ */
@SaCheckPermission("sis:alarmEventProcess:list")
@GetMapping("/list") @GetMapping("/list")
public TableDataInfo<SisAlarmEventProcessVo> list(SisAlarmEventProcessBo bo, PageQuery pageQuery) { public TableDataInfo<SisAlarmEventProcessVo> list(SisAlarmEventProcessBo bo, PageQuery pageQuery) {
return sisAlarmEventProcessService.queryPageList(bo, pageQuery); return sisAlarmEventProcessService.queryPageList(bo, pageQuery);
@@ -49,7 +48,6 @@ public class SisAlarmEventProcessController extends BaseController {
/** /**
* 导出告警信息处理流程记录列表 * 导出告警信息处理流程记录列表
*/ */
@SaCheckPermission("sis:alarmEventProcess:export")
@Log(title = "告警信息处理流程记录", businessType = BusinessType.EXPORT) @Log(title = "告警信息处理流程记录", businessType = BusinessType.EXPORT)
@PostMapping("/export") @PostMapping("/export")
public void export(SisAlarmEventProcessBo bo, HttpServletResponse response) { public void export(SisAlarmEventProcessBo bo, HttpServletResponse response) {
@@ -62,7 +60,6 @@ public class SisAlarmEventProcessController extends BaseController {
* *
* @param id 主键 * @param id 主键
*/ */
@SaCheckPermission("sis:alarmEventProcess:query")
@GetMapping("/{id}") @GetMapping("/{id}")
public R<SisAlarmEventProcessVo> getInfo(@NotNull(message = "主键不能为空") public R<SisAlarmEventProcessVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable("id") Long id) { @PathVariable("id") Long id) {
@@ -72,7 +69,6 @@ public class SisAlarmEventProcessController extends BaseController {
/** /**
* 新增告警信息处理流程记录 * 新增告警信息处理流程记录
*/ */
@SaCheckPermission("sis:alarmEventProcess:add")
@Log(title = "告警信息处理流程记录", businessType = BusinessType.INSERT) @Log(title = "告警信息处理流程记录", businessType = BusinessType.INSERT)
@RepeatSubmit() @RepeatSubmit()
@PostMapping() @PostMapping()
@@ -83,7 +79,6 @@ public class SisAlarmEventProcessController extends BaseController {
/** /**
* 修改告警信息处理流程记录 * 修改告警信息处理流程记录
*/ */
@SaCheckPermission("sis:alarmEventProcess:edit")
@Log(title = "告警信息处理流程记录", businessType = BusinessType.UPDATE) @Log(title = "告警信息处理流程记录", businessType = BusinessType.UPDATE)
@RepeatSubmit() @RepeatSubmit()
@PutMapping() @PutMapping()
@@ -96,7 +91,6 @@ public class SisAlarmEventProcessController extends BaseController {
* *
* @param ids 主键串 * @param ids 主键串
*/ */
@SaCheckPermission("sis:alarmEventProcess:remove")
@Log(title = "告警信息处理流程记录", businessType = BusinessType.DELETE) @Log(title = "告警信息处理流程记录", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空") public R<Void> remove(@NotEmpty(message = "主键不能为空")

View File

@@ -59,8 +59,6 @@ public class SisAlarmEventsController extends BaseController {
@SaCheckPermission("sis:alarmEvents:list") @SaCheckPermission("sis:alarmEvents:list")
@GetMapping("/list/curr") @GetMapping("/list/curr")
public TableDataInfo<SisAlarmEventsVo> listCurr(SisAlarmEventsBo bo, PageQuery pageQuery) { public TableDataInfo<SisAlarmEventsVo> listCurr(SisAlarmEventsBo bo, PageQuery pageQuery) {
LoginUser loginUser = LoginHelper.getLoginUser();
bo.setSolveId(loginUser.getUserId());
return sisAlarmEventsService.queryPageListCurr(bo, pageQuery); return sisAlarmEventsService.queryPageListCurr(bo, pageQuery);
} }

View File

@@ -109,6 +109,11 @@ public class SisAlarmEvents extends TenantEntity {
*/ */
private String solveEmail; private String solveEmail;
/**
* 指派人员信息所在部门id
*/
private Long solveDeptId;
/** /**
* 任务接受时间 * 任务接受时间
*/ */

View File

@@ -102,6 +102,7 @@ public class SisAlarmEventsBo extends BaseEntity {
* 当前处理人id * 当前处理人id
*/ */
private Long solveId; private Long solveId;
private Long solveDeptId;
/** /**
* 当前处理人名称 * 当前处理人名称

View File

@@ -38,6 +38,11 @@ public class AlarmAssignmentBo {
*/ */
private String solveEmail; private String solveEmail;
/**
* 指派人员信息所在部门id
*/
private Long solveDeptId;
/** /**
* 指派备注 * 指派备注
*/ */

View File

@@ -127,6 +127,11 @@ public class SisAlarmEventsVo implements Serializable {
*/ */
private String solveEmail; private String solveEmail;
/**
* 指派人员信息所在部门id
*/
private Long solveDeptId;
/** /**
* 任务接受时间 * 任务接受时间
*/ */

View File

@@ -1,10 +1,14 @@
package org.dromara.sis.mapper; package org.dromara.sis.mapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.dromara.common.mybatis.annotation.DataColumn;
import org.dromara.common.mybatis.annotation.DataPermission;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.sis.domain.SisAlarmEvents; import org.dromara.sis.domain.SisAlarmEvents;
import org.dromara.sis.domain.bo.SisAlarmEventsBo;
import org.dromara.sis.domain.vo.QueryStatisticsAlarmVo; import org.dromara.sis.domain.vo.QueryStatisticsAlarmVo;
import org.dromara.sis.domain.vo.SisAlarmEventsVo; import org.dromara.sis.domain.vo.SisAlarmEventsVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@@ -21,5 +25,16 @@ public interface SisAlarmEventsMapper extends BaseMapperPlus<SisAlarmEvents, Sis
List<QueryStatisticsAlarmVo> queryStatistics(); List<QueryStatisticsAlarmVo> queryStatistics();
/**
* 分页查询告警数据
*
* @param page 分页参数
* @param bo 查询参数
* @return 返回告警数据
*/
@DataPermission({
@DataColumn(key = "deptName", value = "solve_dept_id"),
@DataColumn(key = "userName", value = "solve_id")
})
Page<SisAlarmEventsVo> queryPageList(Page<SisAlarmEvents> page, SisAlarmEventsBo bo);
} }

View File

@@ -274,6 +274,7 @@ public class EventAlarmReportServiceImpl implements IEventAlarmReportService {
bo.setAlarmId(alarmId); bo.setAlarmId(alarmId);
bo.setSolveId(userInfo.getUserId()); bo.setSolveId(userInfo.getUserId());
bo.setSolveName(userInfo.getUserName()); bo.setSolveName(userInfo.getUserName());
bo.setSolveDeptId(userInfo.getDeptId());
bo.setSolvePhone(userInfo.getPhonenumber()); bo.setSolvePhone(userInfo.getPhonenumber());
bo.setSolveEmail(userInfo.getEmail()); bo.setSolveEmail(userInfo.getEmail());
bo.setRemark("系统自动指派"); bo.setRemark("系统自动指派");

View File

@@ -100,9 +100,7 @@ public class SisAlarmEventsServiceImpl implements ISisAlarmEventsService {
@Override @Override
public TableDataInfo<SisAlarmEventsVo> queryPageListCurr(SisAlarmEventsBo bo, PageQuery pageQuery) { public TableDataInfo<SisAlarmEventsVo> queryPageListCurr(SisAlarmEventsBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<SisAlarmEvents> lqw = buildQueryWrapper(bo); Page<SisAlarmEventsVo> result = baseMapper.queryPageList(pageQuery.build(), bo);
lqw.orderByDesc(SisAlarmEvents::getSolveTime);
Page<SisAlarmEventsVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result); return TableDataInfo.build(result);
} }
@@ -253,7 +251,7 @@ public class SisAlarmEventsServiceImpl implements ISisAlarmEventsService {
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean taskAssignment(AlarmAssignmentBo bo) { public Boolean taskAssignment(AlarmAssignmentBo bo) {
// 验证工单状态 // 验证状态
SisAlarmEventsVo sisAlarmEventsVo = this.baseMapper.selectVoById(bo.getAlarmId()); SisAlarmEventsVo sisAlarmEventsVo = this.baseMapper.selectVoById(bo.getAlarmId());
if (sisAlarmEventsVo == null) { if (sisAlarmEventsVo == null) {
throw new RuntimeException("工单信息不存在!"); throw new RuntimeException("工单信息不存在!");
@@ -286,6 +284,7 @@ public class SisAlarmEventsServiceImpl implements ISisAlarmEventsService {
events.setSolvePhone(bo.getSolvePhone()); events.setSolvePhone(bo.getSolvePhone());
events.setSolveEmail(bo.getSolveEmail()); events.setSolveEmail(bo.getSolveEmail());
events.setSolveName(bo.getSolveName()); events.setSolveName(bo.getSolveName());
events.setSolveDeptId(bo.getSolveDeptId());
events.setSolveTime(now); events.setSolveTime(now);
events.setState(AlarmStatus.CONFIRMED.getCode()); events.setState(AlarmStatus.CONFIRMED.getCode());
int i = this.baseMapper.updateById(events); int i = this.baseMapper.updateById(events);

View File

@@ -18,4 +18,50 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
FROM `sis_alarm_events` FROM `sis_alarm_events`
GROUP BY small_type GROUP BY small_type
</select> </select>
<select id="queryPageList" resultType="org.dromara.sis.domain.vo.SisAlarmEventsVo">
SELECT * FROM sis_alarm_events
<where>
<!-- level 字段条件 -->
<if test="bo.level != null">
AND level = #{bo.level}
</if>
<!-- state 字段条件(单个值) -->
<if test="bo.state != null">
AND state = #{bo.state}
</if>
<!-- state 字段条件(多个值) -->
<if test="bo.states != null and bo.states.size() > 0">
AND state IN
<foreach collection="bo.states" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
<!-- deviceIp 字段条件 -->
<if test="bo.deviceIp != null and bo.deviceIp != ''">
AND device_ip = #{bo.deviceIp}
</if>
<!-- deviceName 字段条件 -->
<if test="bo.deviceName != null and bo.deviceName != ''">
AND device_name LIKE CONCAT('%', #{bo.deviceName}, '%')
</if>
<!-- deviceGroupId 字段条件 -->
<if test="bo.deviceGroupId != null">
AND device_group_id = #{bo.deviceGroupId}
</if>
<!-- deviceGroupName 字段条件 -->
<if test="bo.deviceGroupName != null and bo.deviceGroupName != ''">
AND device_group_name LIKE CONCAT('%', #{bo.deviceGroupName}, '%')
</if>
<!-- reportTime 时间范围条件 -->
<if test="bo.reportTime != null">
AND report_time BETWEEN
DATE_FORMAT(#{bo.reportTime}, '%Y-%m-%d 00:00:00') AND
DATE_FORMAT(#{bo.reportTime}, '%Y-%m-%d 23:59:59')
</if>
</where>
ORDER BY id DESC
</select>
</mapper> </mapper>