From 987006d305dd63661591a8ed0d298c56ef991715 Mon Sep 17 00:00:00 2001 From: yangwei <867012372@qq.com> Date: Tue, 29 Apr 2025 15:26:42 +0800 Subject: [PATCH] =?UTF-8?q?[feat]=201=E3=80=81=E5=A2=9E=E5=8A=A0=E9=A2=84?= =?UTF-8?q?=E8=AD=A6=E5=B7=B2=E5=AE=8C=E7=BB=93=E6=8E=A5=E5=8F=A3=E3=80=81?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=9F=A5=E8=AF=A2=E9=83=A8=E9=97=A8=E5=A4=84?= =?UTF-8?q?=E7=BD=AE=E4=BA=BA=E5=91=98=E6=8E=A5=E5=8F=A3=E2=91=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../business/mapper/BusinessAlertMapper.java | 10 ++++- .../service/IBusinessAlertService.java | 4 +- .../impl/BusinessAlertServiceImpl.java | 37 +++++++++++++++++-- .../mapper/business/BusinessAlertMapper.xml | 9 ++++- .../controller/system/SysRoleController.java | 16 ++++++++ .../dromara/system/mapper/SysRoleMapper.java | 5 +++ .../system/service/ISysRoleService.java | 4 ++ .../service/impl/SysRoleServiceImpl.java | 10 +++-- .../resources/mapper/system/SysRoleMapper.xml | 21 +++++++++++ 9 files changed, 106 insertions(+), 10 deletions(-) diff --git a/dk-modules/business/src/main/java/org/dromara/business/mapper/BusinessAlertMapper.java b/dk-modules/business/src/main/java/org/dromara/business/mapper/BusinessAlertMapper.java index 255c006..53d0a00 100644 --- a/dk-modules/business/src/main/java/org/dromara/business/mapper/BusinessAlertMapper.java +++ b/dk-modules/business/src/main/java/org/dromara/business/mapper/BusinessAlertMapper.java @@ -29,7 +29,7 @@ public interface BusinessAlertMapper extends BaseMapperPlus pageAlertFinish(@Param("page") Page page,@Param("ew") QueryWrapper ew); + Page pageBusinessAlertHandle(@Param("page") Page page,@Param("ew") QueryWrapper ew); /** * 处理中 @@ -47,6 +47,13 @@ public interface BusinessAlertMapper extends BaseMapperPlus pageBusinessAlertCancel(@Param("page") Page page,@Param("ew") QueryWrapper ew); + + @DataPermission( + @DataColumn(key = "deptName", value = "t.dept_id") + ) + Page pageBusinessAlertFinish(Page build, QueryWrapper wrapper); + + @DataPermission( @DataColumn(key = "deptName", value = "t.dept_id") ) @@ -107,4 +114,5 @@ public interface BusinessAlertMapper extends BaseMapperPlus> listOneDepartAlert(@Param("param") BusinessAlertBo businessAlertBo); List> listOneDepartAlertStatus(@Param("param") BusinessAlertBo businessAlertBo); + } diff --git a/dk-modules/business/src/main/java/org/dromara/business/service/IBusinessAlertService.java b/dk-modules/business/src/main/java/org/dromara/business/service/IBusinessAlertService.java index c3d8589..becd098 100644 --- a/dk-modules/business/src/main/java/org/dromara/business/service/IBusinessAlertService.java +++ b/dk-modules/business/src/main/java/org/dromara/business/service/IBusinessAlertService.java @@ -22,11 +22,13 @@ public interface IBusinessAlertService { TableDataInfo pageBusinessAlertTodo(BusinessAlertBo bo, PageQuery pageQuery); - TableDataInfo pageBusinessAlertFinish(BusinessAlertBo bo, PageQuery pageQuery); + TableDataInfo pageBusinessAlertHandle(BusinessAlertBo bo, PageQuery pageQuery); TableDataInfo pageBusinessAlertAll(BusinessAlertBo bo, PageQuery pageQuery); TableDataInfo pageBusinessAlertCancel(BusinessAlertBo bo, PageQuery pageQuery); + + TableDataInfo pageBusinessAlertFinish(BusinessAlertBo bo, PageQuery pageQuery); /** * 新增预警任务 * diff --git a/dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessAlertServiceImpl.java b/dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessAlertServiceImpl.java index 8b228df..0e316c6 100644 --- a/dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessAlertServiceImpl.java +++ b/dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessAlertServiceImpl.java @@ -284,11 +284,10 @@ public class BusinessAlertServiceImpl implements IBusinessAlertService { return new TableDataInfo<>(); } - wrapper.notIn("t.flowStatus", BusinessStatusEnum.CANCEL.getStatus()); + wrapper.eq("t.handle_type",BusinessStatusEnum.FINISH.getStatus()); - wrapper.apply(" EXISTS(select * from dk_workflow.flow_his_task ht where ht.approver ='" + LoginHelper.getUserId() + "' and ht.instance_id = t.instanceId)"); - Page page = this.baseMapper.pageAlertFinish(pageQuery.build(), wrapper); + Page page = this.baseMapper.pageBusinessAlertFinish(pageQuery.build(), wrapper); try { page.getRecords().forEach(businessAlertVo->{ @@ -360,6 +359,38 @@ public class BusinessAlertServiceImpl implements IBusinessAlertService { return TableDataInfo.build(page); } + @Override + public TableDataInfo pageBusinessAlertHandle(BusinessAlertBo bo, PageQuery pageQuery) { + QueryWrapper wrapper = buildQueryWrapper(bo); + + if (ObjectUtil.isEmpty(wrapper)){ + return new TableDataInfo<>(); + } + + wrapper.notIn("t.flowStatus", BusinessStatusEnum.CANCEL.getStatus()); + + wrapper.apply(" EXISTS(select * from dk_workflow.flow_his_task ht where ht.approver ='" + LoginHelper.getUserId() + "' and ht.instance_id = t.instanceId)"); + + Page page = this.baseMapper.pageBusinessAlertHandle(pageQuery.build(), wrapper); + + try { + page.getRecords().forEach(businessAlertVo->{ + if (businessAlertVo.getBusinessType() == 2){ + businessAlertVo.setImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_DKCY, businessAlertVo.getImages(), 3600).toString()); + }else { + businessAlertVo.setImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getImages(), 3600).toString()); + businessAlertVo.setMaxImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxImages(), 3600).toString()); + businessAlertVo.setMaxMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxMateSourceImgUrl(), 3600).toString()); + businessAlertVo.setMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMateSourceImgUrl(), 3600).toString()); + } + }); + } catch (Exception e) { + log.error(e.getMessage(),e); + } + + return TableDataInfo.build(page); + } + /** * 构建wrapper diff --git a/dk-modules/business/src/main/resources/mapper/business/BusinessAlertMapper.xml b/dk-modules/business/src/main/resources/mapper/business/BusinessAlertMapper.xml index c3bb93a..e28d333 100644 --- a/dk-modules/business/src/main/resources/mapper/business/BusinessAlertMapper.xml +++ b/dk-modules/business/src/main/resources/mapper/business/BusinessAlertMapper.xml @@ -31,6 +31,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ${ew.getCustomSqlSegment} + + - select t.* from ( select ba.*, diff --git a/dk-modules/system/src/main/java/org/dromara/system/controller/system/SysRoleController.java b/dk-modules/system/src/main/java/org/dromara/system/controller/system/SysRoleController.java index f3db430..dedb36f 100644 --- a/dk-modules/system/src/main/java/org/dromara/system/controller/system/SysRoleController.java +++ b/dk-modules/system/src/main/java/org/dromara/system/controller/system/SysRoleController.java @@ -1,6 +1,7 @@ package org.dromara.system.controller.system; import cn.dev33.satoken.annotation.SaCheckPermission; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; import org.dromara.common.web.core.BaseController; @@ -9,6 +10,8 @@ import org.dromara.common.log.annotation.Log; import org.dromara.common.log.enums.BusinessType; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.system.domain.SysRole; +import org.dromara.system.domain.SysUser; import org.dromara.system.domain.SysUserRole; import org.dromara.system.domain.bo.SysDeptBo; import org.dromara.system.domain.bo.SysRoleBo; @@ -226,5 +229,18 @@ public class SysRoleController extends BaseController { selectVo.setDepts(deptService.selectDeptTreeList(new SysDeptBo())); return R.ok(selectVo); } + + /** + * 获取对应角色部门树列表 + * + */ + @GetMapping(value = "/user/list") + public R> listRoleUser() { + String roleName = "dispose"; + + List userList = roleService.getUserIno(roleName); + + return R.ok(userList); + } } diff --git a/dk-modules/system/src/main/java/org/dromara/system/mapper/SysRoleMapper.java b/dk-modules/system/src/main/java/org/dromara/system/mapper/SysRoleMapper.java index ac5a47e..76dc28b 100644 --- a/dk-modules/system/src/main/java/org/dromara/system/mapper/SysRoleMapper.java +++ b/dk-modules/system/src/main/java/org/dromara/system/mapper/SysRoleMapper.java @@ -8,6 +8,7 @@ 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.system.domain.SysRole; +import org.dromara.system.domain.SysUser; import org.dromara.system.domain.vo.SysRoleVo; import java.util.List; @@ -59,4 +60,8 @@ public interface SysRoleMapper extends BaseMapperPlus { */ List selectRolesByUserId(Long userId); + @DataPermission({ + @DataColumn(key = "deptName", value = "su.dept_id"), + }) + List getUserIno(@Param("roleName") String roleName); } diff --git a/dk-modules/system/src/main/java/org/dromara/system/service/ISysRoleService.java b/dk-modules/system/src/main/java/org/dromara/system/service/ISysRoleService.java index 64740ae..bef91ab 100644 --- a/dk-modules/system/src/main/java/org/dromara/system/service/ISysRoleService.java +++ b/dk-modules/system/src/main/java/org/dromara/system/service/ISysRoleService.java @@ -2,6 +2,8 @@ package org.dromara.system.service; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.system.domain.SysRole; +import org.dromara.system.domain.SysUser; import org.dromara.system.domain.SysUserRole; import org.dromara.system.domain.bo.SysRoleBo; import org.dromara.system.domain.vo.SysRoleVo; @@ -197,4 +199,6 @@ public interface ISysRoleService { void cleanOnlineUserByRole(Long roleId); + List getUserIno(String roleName); + } diff --git a/dk-modules/system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java b/dk-modules/system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java index 2751c9b..09db755 100644 --- a/dk-modules/system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java +++ b/dk-modules/system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java @@ -22,10 +22,7 @@ import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.system.api.model.LoginUser; -import org.dromara.system.domain.SysRole; -import org.dromara.system.domain.SysRoleDept; -import org.dromara.system.domain.SysRoleMenu; -import org.dromara.system.domain.SysUserRole; +import org.dromara.system.domain.*; import org.dromara.system.domain.bo.SysRoleBo; import org.dromara.system.domain.vo.SysRoleVo; import org.dromara.system.mapper.SysRoleDeptMapper; @@ -511,4 +508,9 @@ public class SysRoleServiceImpl implements ISysRoleService { } }); } + + @Override + public List getUserIno(String roleName) { + return this.baseMapper.getUserIno(roleName); + } } diff --git a/dk-modules/system/src/main/resources/mapper/system/SysRoleMapper.xml b/dk-modules/system/src/main/resources/mapper/system/SysRoleMapper.xml index 4ef7b1e..d2d37d1 100644 --- a/dk-modules/system/src/main/resources/mapper/system/SysRoleMapper.xml +++ b/dk-modules/system/src/main/resources/mapper/system/SysRoleMapper.xml @@ -56,4 +56,25 @@ WHERE r.del_flag = '0' and r.role_id = #{roleId} + +