Przeglądaj źródła

流程数据修改

wangliang 3 lat temu
rodzic
commit
2359afc760

+ 1 - 1
distributed-print-business/src/main/java/com/qmth/distributed/print/business/activiti/DirectorApproveListener.java

@@ -39,7 +39,7 @@ public class DirectorApproveListener implements TaskListener {
         examTaskQueryWrapper.lambda().eq(ExamTask::getFlowId, Long.parseLong(flowId));
         ExamTask examTask = examTaskService.getOne(examTaskQueryWrapper);
 
-        List<ApproveUserResult> sysUserList = sysUserService.findByDirectorApprove(examTask.getCourseCode());
+        List<ApproveUserResult> sysUserList = sysUserService.findByDirectorApprove(examTask.getCourseCode(), null);
         List<String> ids = sysUserList.stream().map(s -> String.valueOf(s.getId())).collect(Collectors.toList());
         //添加或签的人员,一人通过即可进入下一环节
         delegateTask.addCandidateUsers(ids);

+ 1 - 1
distributed-print-business/src/main/java/com/qmth/distributed/print/business/activiti/PresidentApproveListener.java

@@ -38,7 +38,7 @@ public class PresidentApproveListener implements TaskListener {
         if (Objects.isNull(sysUser.getOrgId())) {
             throw ExceptionResultEnum.ERROR.exception("审批人机构为空");
         }
-        List<ApproveUserResult> sysUserList = sysUserService.findByPresidentApprove(Arrays.asList(sysUser.getOrgId()));
+        List<ApproveUserResult> sysUserList = sysUserService.findByPresidentApprove(Arrays.asList(sysUser.getOrgId()), null);
         List<String> ids = sysUserList.stream().map(s -> String.valueOf(s.getId())).collect(Collectors.toList());
         //添加或签的人员,一人通过即可进入下一环节
         delegateTask.addCandidateUsers(ids);

+ 2 - 1
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/ActivitiService.java

@@ -89,7 +89,8 @@ public interface ActivitiService {
      * 获取转他人审批人
      *
      * @param taskId
+     * @param realName
      * @return
      */
-    public FlowTaskApprovePeopleAllResult taskApproverExchangePeople(String taskId);
+    public FlowTaskApprovePeopleAllResult taskApproverExchangePeople(String taskId, String realName);
 }

+ 8 - 7
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ActivitiServiceImpl.java

@@ -537,7 +537,7 @@ public class ActivitiServiceImpl implements ActivitiService {
                     SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
                     if (Objects.nonNull(sysUser.getOrgId())) {
                         //获取院长审批人
-                        List<ApproveUserResult> sysUserPresidentList = sysUserService.findByPresidentApprove(Arrays.asList(sysUser.getOrgId()));
+                        List<ApproveUserResult> sysUserPresidentList = sysUserService.findByPresidentApprove(Arrays.asList(sysUser.getOrgId()), null);
                         flowTaskApprovePeopleResultList.add(new FlowTaskApprovePeopleResult(FlowGdykdxApproveSetupEnum.SECOND_APPROVE.getSetup(), false, sysUserPresidentList));
                     }
                     break;
@@ -617,10 +617,11 @@ public class ActivitiServiceImpl implements ActivitiService {
      * 获取转他人审批人
      *
      * @param taskId
+     * @param realName
      * @return
      */
     @Override
-    public FlowTaskApprovePeopleAllResult taskApproverExchangePeople(String taskId) {
+    public FlowTaskApprovePeopleAllResult taskApproverExchangePeople(String taskId, String realName) {
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         Task task = taskService.createTaskQuery().taskId(taskId).singleResult();
         if (Objects.isNull(task)) {
@@ -644,19 +645,19 @@ public class ActivitiServiceImpl implements ActivitiService {
             case 1:
                 //获取命题审批人
                 examTask = examTaskService.getOne(examTaskQueryWrapper);
-                List<ApproveUserResult> approveUserResultList = sysUserService.findByAssignApprove(examTask.getCourseCode());
+                List<ApproveUserResult> approveUserResultList = sysUserService.findByAssignApprove(examTask.getCourseCode(), realName);
                 flowTaskApprovePeopleResultList.add(new FlowTaskApprovePeopleResult(approveUserResultList));
                 break;
             case 2:
                 //获取教研室主任审批人
                 examTask = examTaskService.getOne(examTaskQueryWrapper);
-                List<ApproveUserResult> sysUserDirectorList = sysUserService.findByDirectorApprove(examTask.getCourseCode());
+                List<ApproveUserResult> sysUserDirectorList = sysUserService.findByDirectorApprove(examTask.getCourseCode(), realName);
                 flowTaskApprovePeopleResultList.add(new FlowTaskApprovePeopleResult(sysUserDirectorList));
                 break;
             case 3:
                 //获取院长审批人
                 if (Objects.nonNull(sysUser.getOrgId())) {
-                    List<ApproveUserResult> sysUserPresidentList = sysUserService.findByPresidentApprove(Arrays.asList(sysUser.getOrgId()));
+                    List<ApproveUserResult> sysUserPresidentList = sysUserService.findByPresidentApprove(Arrays.asList(sysUser.getOrgId()), realName);
                     flowTaskApprovePeopleResultList.add(new FlowTaskApprovePeopleResult(sysUserPresidentList));
                 }
                 break;
@@ -718,11 +719,11 @@ public class ActivitiServiceImpl implements ActivitiService {
     private List<FlowTaskApprovePeopleResult> getApproveUserAll(String courseCode, List<FlowTaskApprovePeopleResult> flowTaskApprovePeopleResultList) {
         flowTaskApprovePeopleResultList = Objects.isNull(flowTaskApprovePeopleResultList) ? new LinkedList() : flowTaskApprovePeopleResultList;
         //获取教研室主任审批人
-        List<ApproveUserResult> sysUserDirectorList = sysUserService.findByDirectorApprove(courseCode);
+        List<ApproveUserResult> sysUserDirectorList = sysUserService.findByDirectorApprove(courseCode, null);
         flowTaskApprovePeopleResultList.add(new FlowTaskApprovePeopleResult(FlowGdykdxApproveSetupEnum.PRIMARY_APPROVE.getSetup(), false, sysUserDirectorList));
         Set<Long> orgIds = sysUserDirectorList.stream().map(s -> s.getOrgId()).collect(Collectors.toSet());
         //获取院长审批人
-        List<ApproveUserResult> sysUserPresidentList = sysUserService.findByPresidentApprove(new ArrayList<>(orgIds));
+        List<ApproveUserResult> sysUserPresidentList = sysUserService.findByPresidentApprove(new ArrayList<>(orgIds), null);
         flowTaskApprovePeopleResultList.add(new FlowTaskApprovePeopleResult(FlowGdykdxApproveSetupEnum.SECOND_APPROVE.getSetup(), false, sysUserPresidentList));
         return flowTaskApprovePeopleResultList;
     }

+ 5 - 4
distributed-print/src/main/java/com/qmth/distributed/print/api/TFFlowController.java

@@ -159,10 +159,10 @@ public class TFFlowController {
         map.computeIfAbsent(SystemConstant.APPROVE_REMARK, v -> remark);
         map.computeIfAbsent(SystemConstant.APPROVE_SETUP, v -> setup);
         Map<String, Object> objectMap = activitiService.taskApprove(map);
-        if(Objects.nonNull(objectMap)) {
+        if (Objects.nonNull(objectMap)) {
             TFFlowApprove tfFlowApprove = (TFFlowApprove) objectMap.get("tfFlowApprove");
             //审核通过,生成pdf
-            if(Objects.nonNull(tfFlowApprove) && FlowGdykdxApproveSetupEnum.FINISH.getSetup() == tfFlowApprove.getSetup()) {
+            if (Objects.nonNull(tfFlowApprove) && FlowGdykdxApproveSetupEnum.FINISH.getSetup() == tfFlowApprove.getSetup()) {
                 ExamTask examTask = (ExamTask) objectMap.get("examTask");
                 SysUser sysUser = (SysUser) objectMap.get("sysUser");
                 try {
@@ -232,7 +232,8 @@ public class TFFlowController {
     @ApiOperation(value = "获取转他人审批人")
     @ApiResponses({@ApiResponse(code = 200, message = "流程节点审批人", response = FlowTaskApprovePeopleAllResult.class)})
     @RequestMapping(value = "/task/approver/exchange/people", method = RequestMethod.POST)
-    public Result taskApproverExchangePeople(@ApiParam(value = "流程节点id", required = true) @RequestParam String taskId) {
-        return ResultUtil.ok(activitiService.taskApproverExchangePeople(taskId));
+    public Result taskApproverExchangePeople(@ApiParam(value = "流程节点id", required = true) @RequestParam String taskId,
+                                             @ApiParam(value = "用户姓名", required = false) @RequestParam(required = false) String realName) {
+        return ResultUtil.ok(activitiService.taskApproverExchangePeople(taskId, realName));
     }
 }

+ 2 - 1
teachcloud-common/src/main/java/com/qmth/teachcloud/common/mapper/SysUserMapper.java

@@ -35,9 +35,10 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
      * @param orgIds
      * @param filter
      * @param approveName
+     * @param realName
      * @return
      */
-    List<ApproveUserResult> filterFlowPrivilege(@Param("schoolId") Long schoolId, @Param("orgIds") Set<Long> orgIds, @Param("filter") Boolean filter,@Param("approveName") String approveName);
+    List<ApproveUserResult> filterFlowPrivilege(@Param("schoolId") Long schoolId, @Param("orgIds") Set<Long> orgIds, @Param("filter") Boolean filter, @Param("approveName") String approveName, @Param("realName") String realName);
 
     /**
      * 根据id获取

+ 8 - 4
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/SysUserService.java

@@ -72,9 +72,10 @@ public interface SysUserService extends IService<SysUser> {
      * @param orgIds
      * @param filter
      * @param approveName
+     * @param realName
      * @return
      */
-    List<ApproveUserResult> filterFlowPrivilege(Long schoolId, Set<Long> orgIds, Boolean filter, FlowApproveNameEnum approveName);
+    List<ApproveUserResult> filterFlowPrivilege(Long schoolId, Set<Long> orgIds, Boolean filter, FlowApproveNameEnum approveName, String realName);
 
     /**
      * 执行批量导入用户逻辑
@@ -89,25 +90,28 @@ public interface SysUserService extends IService<SysUser> {
      * 获取命题审批人
      *
      * @param courseCode
+     * @param realName
      * @return
      */
-    public List<ApproveUserResult> findByAssignApprove(String courseCode);
+    public List<ApproveUserResult> findByAssignApprove(String courseCode, String realName);
 
     /**
      * 获取教研室主任审批人
      *
      * @param courseCode
+     * @param realName
      * @return
      */
-    public List<ApproveUserResult> findByDirectorApprove(String courseCode);
+    public List<ApproveUserResult> findByDirectorApprove(String courseCode, String realName);
 
     /**
      * 获取院长审批人
      *
      * @param orgIds
+     * @param realName
      * @return
      */
-    public List<ApproveUserResult> findByPresidentApprove(List<Long> orgIds);
+    public List<ApproveUserResult> findByPresidentApprove(List<Long> orgIds, String realName);
 
     /**
      * 根据id获取

+ 14 - 10
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/SysUserServiceImpl.java

@@ -229,7 +229,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 
         List<SysOrg> sysOrgList = sysOrgService.findByConnectByRootOrgId(basicCourse.getTeachingRoomId());
         Set<Long> orgIds = sysOrgList.stream().map(s -> s.getId()).collect(Collectors.toSet());
-        List<ApproveUserResult> sysUserList = sysUserService.filterFlowPrivilege(schoolId, orgIds, false, null);
+        List<ApproveUserResult> sysUserList = sysUserService.filterFlowPrivilege(schoolId, orgIds, false, null, null);
         List<BlurryUserDto> blurryUserDtoList = new ArrayList<>();
         for (ApproveUserResult sysUser : sysUserList) {
             blurryUserDtoList.add(new BlurryUserDto(sysUser.getId(), sysUser.getLoginName(), sysUser.getRealName()));
@@ -489,11 +489,12 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
      * @param orgIds
      * @param filter
      * @param approveName
+     * @param realName
      * @return
      */
     @Override
-    public List<ApproveUserResult> filterFlowPrivilege(Long schoolId, Set<Long> orgIds, Boolean filter, FlowApproveNameEnum approveName) {
-        return sysUserMapper.filterFlowPrivilege(schoolId, orgIds, filter, Objects.nonNull(approveName) ? approveName.getId() : null);
+    public List<ApproveUserResult> filterFlowPrivilege(Long schoolId, Set<Long> orgIds, Boolean filter, FlowApproveNameEnum approveName, String realName) {
+        return sysUserMapper.filterFlowPrivilege(schoolId, orgIds, filter, Objects.nonNull(approveName) ? approveName.getId() : null, realName);
     }
 
     @Override
@@ -505,7 +506,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
             LinkedMultiValueMap<Integer, Object> excelMap = finalList.get(i);
             List<Object> sysUserImportDtoList = excelMap.get(i);
             assert sysUserImportDtoList != null;
-            if (sysUserImportDtoList.get(0) instanceof DescribeImportDto){
+            if (sysUserImportDtoList.get(0) instanceof DescribeImportDto) {
                 continue;
             }
             map.put("dataCount", sysUserImportDtoList.size());
@@ -550,10 +551,11 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
      * 获取命题审批人
      *
      * @param courseCode
+     * @param realName
      * @return
      */
     @Override
-    public List<ApproveUserResult> findByAssignApprove(String courseCode) {
+    public List<ApproveUserResult> findByAssignApprove(String courseCode, String realName) {
         Long schoolId = SystemConstant.getHeadOrUserSchoolId();
         QueryWrapper<BasicCourse> basicCourseQueryWrapper = new QueryWrapper<>();
         basicCourseQueryWrapper.lambda().eq(BasicCourse::getSchoolId, schoolId)
@@ -565,17 +567,18 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
         }
         List<SysOrg> sysOrgList = sysOrgService.findByConnectByRootOrgId(basicCourse.getTeachingRoomId());
         Set<Long> orgIds = sysOrgList.stream().map(s -> s.getId()).collect(Collectors.toSet());
-        return sysUserService.filterFlowPrivilege(schoolId, orgIds, false, null);
+        return sysUserService.filterFlowPrivilege(schoolId, orgIds, false, null, realName);
     }
 
     /**
      * 获取教研室主任审批人
      *
      * @param courseCode
+     * @param realName
      * @return
      */
     @Override
-    public List<ApproveUserResult> findByDirectorApprove(String courseCode) {
+    public List<ApproveUserResult> findByDirectorApprove(String courseCode, String realName) {
         Long schoolId = SystemConstant.getHeadOrUserSchoolId();
         QueryWrapper<BasicCourse> basicCourseQueryWrapper = new QueryWrapper<>();
         basicCourseQueryWrapper.lambda().eq(BasicCourse::getSchoolId, schoolId)
@@ -590,7 +593,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
         }
         List<SysOrg> sysOrgList = sysOrgService.findByConnectByRootOrgId(basicCourse.getTeachingRoomId());
         Set<Long> orgIds = sysOrgList.stream().map(s -> s.getId()).collect(Collectors.toSet());
-        List<ApproveUserResult> approveUserResultList = sysUserService.filterFlowPrivilege(schoolId, orgIds, true, FlowApproveNameEnum.DIRECTOR);
+        List<ApproveUserResult> approveUserResultList = sysUserService.filterFlowPrivilege(schoolId, orgIds, true, FlowApproveNameEnum.DIRECTOR, realName);
         if (Objects.isNull(approveUserResultList) || approveUserResultList.size() == 0) {
             throw ExceptionResultEnum.ERROR.exception("该课程未配置主任审批人");
         }
@@ -601,17 +604,18 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
      * 获取院长审批人
      *
      * @param orgIds
+     * @param realName
      * @return
      */
     @Override
-    public List<ApproveUserResult> findByPresidentApprove(List<Long> orgIds) {
+    public List<ApproveUserResult> findByPresidentApprove(List<Long> orgIds, String realName) {
         Long schoolId = SystemConstant.getHeadOrUserSchoolId();
         Set<SysOrg> sysOrgSet = new HashSet<>();
         for (Long l : orgIds) {
             sysOrgSet.addAll(sysOrgService.findByConnectByParentId(l, true));
         }
         Set<Long> orgIdsSet = sysOrgSet.stream().map(s -> s.getId()).collect(Collectors.toSet());
-        List<ApproveUserResult> approveUserResultList = sysUserService.filterFlowPrivilege(schoolId, orgIdsSet, true, FlowApproveNameEnum.PRESIDENT);
+        List<ApproveUserResult> approveUserResultList = sysUserService.filterFlowPrivilege(schoolId, orgIdsSet, true, FlowApproveNameEnum.PRESIDENT, realName);
         if (Objects.isNull(approveUserResultList) || approveUserResultList.size() == 0) {
             throw ExceptionResultEnum.ERROR.exception("未配置院长审批人");
         }

+ 3 - 0
teachcloud-common/src/main/resources/mapper/SysUserMapper.xml

@@ -155,6 +155,9 @@
                <if test="schoolId != null and schoolId != ''">
                    and su.school_id = #{schoolId}
                </if>
+               <if test="realName != null and realName != ''">
+                   and su.real_name like concat('%', #{realName} , '%')
+               </if>
            </where>
     </select>