From f980ce555c48b7e0c1868a87a81715e787e78ceb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A7=9C=E7=8E=89=E7=90=A6?= <7507756+jiang_yuqi@user.noreply.gitee.com> Date: Wed, 28 Feb 2024 01:25:13 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sql/vw_sql.sql | 2 +- .../controller/system/SysUserController.java | 6 +- .../controller/FlowBusinessKeyController.java | 9 +- .../service/impl/FlowTaskServiceImpl.java | 2 + .../framework/aspectj/DataScopeAspect.java | 2 +- .../controller/ProProjectApplyController.java | 2 +- .../mapper/flowable/FlowBusinessKeyMapper.xml | 4 +- yanzhu-ui/src/api/flowable/todo.js | 13 ++- .../views/flowable/task/finished/index.vue | 32 ++--- .../task/myProcess/editTaskDrawer.vue | 3 +- .../views/flowable/task/myProcess/index.vue | 4 +- .../task/todo/detail/approveDrawer.vue | 109 ++++++++++++++++-- .../src/views/flowable/task/todo/index.vue | 2 +- 13 files changed, 144 insertions(+), 46 deletions(-) diff --git a/sql/vw_sql.sql b/sql/vw_sql.sql index a817154..877e2bd 100644 --- a/sql/vw_sql.sql +++ b/sql/vw_sql.sql @@ -186,7 +186,7 @@ END AS commentResult, FROM act_hi_taskinst ht LEFT JOIN act_hi_comment hc ON hc.TASK_ID_ = ht.ID_ or (hc.TASK_ID_ is null and hc.PROC_INST_ID_ = ht.PROC_INST_ID_) -LEFT JOIN act_hi_identitylink hi on hi.TYPE_ = 'candidate' and hi.TASK_ID_ = ht.ID_ and hi.USER_ID_ IS NULL +LEFT JOIN act_hi_identitylink hi on hi.TASK_ID_ = ht.ID_ and hi.group_Id_ IS NOT NULL left JOIN sys_role r on r.role_id = hi.group_Id_ LEFT JOIN sys_user ru ON ru.user_id = ht.ASSIGNEE_ LEFT JOIN sys_dept rd ON rd.dept_id = ru.dept_id diff --git a/yanzhu-admin/src/main/java/com/yanzhu/web/controller/system/SysUserController.java b/yanzhu-admin/src/main/java/com/yanzhu/web/controller/system/SysUserController.java index 0350a4f..ee6f2a4 100644 --- a/yanzhu-admin/src/main/java/com/yanzhu/web/controller/system/SysUserController.java +++ b/yanzhu-admin/src/main/java/com/yanzhu/web/controller/system/SysUserController.java @@ -55,8 +55,8 @@ public class SysUserController extends BaseController /** * 获取用户列表 + * @PreAuthorize("@ss.hasPermi('system:user:list')") */ - @PreAuthorize("@ss.hasPermi('system:user:list')") @GetMapping("/list") public TableDataInfo list(SysUser user) { @@ -96,8 +96,8 @@ public class SysUserController extends BaseController /** * 根据用户编号获取详细信息 + * @PreAuthorize("@ss.hasPermi('system:user:query')") */ - @PreAuthorize("@ss.hasPermi('system:user:query')") @GetMapping(value = { "/", "/{userId}" }) public AjaxResult getInfo(@PathVariable(value = "userId", required = false) Long userId) { @@ -241,8 +241,8 @@ public class SysUserController extends BaseController /** * 获取部门树列表 + * @PreAuthorize("@ss.hasPermi('system:user:list')") */ - @PreAuthorize("@ss.hasPermi('system:user:list')") @GetMapping("/deptTree") public AjaxResult deptTree(SysDept dept) { diff --git a/yanzhu-flowable/src/main/java/com/yanzhu/flowable/controller/FlowBusinessKeyController.java b/yanzhu-flowable/src/main/java/com/yanzhu/flowable/controller/FlowBusinessKeyController.java index 2af8e91..2412b93 100644 --- a/yanzhu-flowable/src/main/java/com/yanzhu/flowable/controller/FlowBusinessKeyController.java +++ b/yanzhu-flowable/src/main/java/com/yanzhu/flowable/controller/FlowBusinessKeyController.java @@ -100,7 +100,8 @@ public class FlowBusinessKeyController extends BaseController { //超管查询所有数据 if(!SysUser.isAdmin(super.getUserId())){ SysUser sysUser = super.getLoginUser().getUser(); - flowTaskEntity.setDeptAncestors(sysUser.getDept().getAncestors()); + flowTaskEntity.setAssigneeId(sysUser.getUserId()); + flowTaskEntity.setDeptAncestors(sysUser.getDept().getAncestors()+","+sysUser.getDeptId()); flowTaskEntity.setRoleIds(sysUser.getRoles().stream().map(role -> role.getRoleId()).collect(Collectors.toList())); } return getDataTable(flowBusinessKeyService.selectMyAwaitFlowTask(flowTaskEntity)); @@ -128,11 +129,11 @@ public class FlowBusinessKeyController extends BaseController { //超管查询所有数据 if(!SysUser.isAdmin(super.getUserId())){ SysUser sysUser = super.getLoginUser().getUser(); - flowTaskEntity.setDeptAncestors(sysUser.getDept().getAncestors()); + flowTaskEntity.setAssigneeId(sysUser.getUserId()); + flowTaskEntity.setDeptAncestors(sysUser.getDept().getAncestors()+","+sysUser.getDeptId()); flowTaskEntity.setRoleIds(sysUser.getRoles().stream().map(role -> role.getRoleId()).collect(Collectors.toList())); } - flowTaskEntity.setActiveName("await"); - List> list = flowBusinessKeyService.selectMyFinishedFlowTask(flowTaskEntity); + List> list = flowBusinessKeyService.selectMyAwaitFlowTask(flowTaskEntity); Map data = new HashMap<>(); if(CollectionUtils.isNotEmpty(list)){ data.put("todo",list.size()); diff --git a/yanzhu-flowable/src/main/java/com/yanzhu/flowable/service/impl/FlowTaskServiceImpl.java b/yanzhu-flowable/src/main/java/com/yanzhu/flowable/service/impl/FlowTaskServiceImpl.java index 397d2ab..e14fda3 100644 --- a/yanzhu-flowable/src/main/java/com/yanzhu/flowable/service/impl/FlowTaskServiceImpl.java +++ b/yanzhu-flowable/src/main/java/com/yanzhu/flowable/service/impl/FlowTaskServiceImpl.java @@ -454,6 +454,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask @Override @Transactional(rollbackFor = Exception.class) public void delegateTask(FlowTaskVo flowTaskVo) { + taskService.addComment(flowTaskVo.getTaskId(), flowTaskVo.getInstanceId(), FlowComment.DELEGATE.getType(), flowTaskVo.getComment()); taskService.delegateTask(flowTaskVo.getTaskId(), flowTaskVo.getAssignee()); } @@ -479,6 +480,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask @Override @Transactional(rollbackFor = Exception.class) public void assignTask(FlowTaskVo flowTaskVo) { + taskService.addComment(flowTaskVo.getTaskId(), flowTaskVo.getInstanceId(), FlowComment.ASSIGN.getType(), flowTaskVo.getComment()); // 直接转派就可以覆盖掉之前的 taskService.setAssignee(flowTaskVo.getTaskId(), flowTaskVo.getAssignee()); // // 删除指派人重新指派 diff --git a/yanzhu-framework/src/main/java/com/yanzhu/framework/aspectj/DataScopeAspect.java b/yanzhu-framework/src/main/java/com/yanzhu/framework/aspectj/DataScopeAspect.java index 877f81d..4c4435c 100644 --- a/yanzhu-framework/src/main/java/com/yanzhu/framework/aspectj/DataScopeAspect.java +++ b/yanzhu-framework/src/main/java/com/yanzhu/framework/aspectj/DataScopeAspect.java @@ -125,7 +125,7 @@ public class DataScopeAspect { sqlString.append(StringUtils.format( " OR {}.dept_id IN ( SELECT dept_id FROM sys_dept WHERE dept_id = {} or find_in_set( {} , ancestors ) )", - deptAlias, user.getDeptId(), user.getDeptId())); + deptAlias, user.getParDeptId(), user.getParDeptId())); } else if (DATA_SCOPE_SELF.equals(dataScope)) { diff --git a/yanzhu-manage/src/main/java/com/yanzhu/project/controller/ProProjectApplyController.java b/yanzhu-manage/src/main/java/com/yanzhu/project/controller/ProProjectApplyController.java index 76e1a9a..2ac0758 100644 --- a/yanzhu-manage/src/main/java/com/yanzhu/project/controller/ProProjectApplyController.java +++ b/yanzhu-manage/src/main/java/com/yanzhu/project/controller/ProProjectApplyController.java @@ -65,8 +65,8 @@ public class ProProjectApplyController extends BaseController /** * 获取项目申请详细信息 + * @PreAuthorize("@ss.hasPermi('project:projectApply:query')") */ - @PreAuthorize("@ss.hasPermi('project:projectApply:query')") @GetMapping(value = "/{id}") public AjaxResult getInfo(@PathVariable("id") Long id) { diff --git a/yanzhu-system/src/main/resources/mapper/flowable/FlowBusinessKeyMapper.xml b/yanzhu-system/src/main/resources/mapper/flowable/FlowBusinessKeyMapper.xml index fcaea21..beef53d 100644 --- a/yanzhu-system/src/main/resources/mapper/flowable/FlowBusinessKeyMapper.xml +++ b/yanzhu-system/src/main/resources/mapper/flowable/FlowBusinessKeyMapper.xml @@ -51,11 +51,11 @@ and find_in_set(fa.businessDeptId, #{deptAncestors}) - AND (fa.ASSIGNEE_ = #{nowUser} + AND (fa.ASSIGNEE_ = #{assigneeId} OR ( fa.ASSIGNEE_ IS NULL AND ( - fa.USER_ID_ = #{nowUser} + fa.USER_ID_ = #{assigneeId} OR ( fa.GROUP_ID_ IN diff --git a/yanzhu-ui/src/api/flowable/todo.js b/yanzhu-ui/src/api/flowable/todo.js index 335262e..1713a7b 100644 --- a/yanzhu-ui/src/api/flowable/todo.js +++ b/yanzhu-ui/src/api/flowable/todo.js @@ -20,9 +20,18 @@ export function complete(data) { } // 委派任务 -export function delegate(data) { +export function delegateTask(data) { return request({ - url: '/flowable/task/delegate', + url: '/flowable/task/delegateTask', + method: 'post', + data: data + }) +} + +//转办任务 +export function assignTask(data) { + return request({ + url: '/flowable/task/assignTask', method: 'post', data: data }) diff --git a/yanzhu-ui/src/views/flowable/task/finished/index.vue b/yanzhu-ui/src/views/flowable/task/finished/index.vue index 25a6f97..df8a492 100644 --- a/yanzhu-ui/src/views/flowable/task/finished/index.vue +++ b/yanzhu-ui/src/views/flowable/task/finished/index.vue @@ -7,7 +7,7 @@ v-show="showSearch" label-width="68px" > - + - + - + diff --git a/yanzhu-ui/src/views/flowable/task/todo/index.vue b/yanzhu-ui/src/views/flowable/task/todo/index.vue index 6403256..d10d76c 100644 --- a/yanzhu-ui/src/views/flowable/task/todo/index.vue +++ b/yanzhu-ui/src/views/flowable/task/todo/index.vue @@ -7,7 +7,7 @@ v-show="showSearch" label-width="68px" > - +