From eb3ada58d3d66b1fc4c0e9a2333d89c72fe4a84d Mon Sep 17 00:00:00 2001 From: quyixiao <2621048238@qq.com> Date: Thu, 3 Dec 2020 11:11:40 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ResultRecordController.java | 13 +- .../app/controller/TestController.java | 7 + .../lz/modules/app/resp/ResetDataResp.java | 13 + .../sys/service/app/ResultRecordService.java | 2 + .../app/impl/ResultRecordServiceImpl.java | 426 +++++++++--------- 5 files changed, 257 insertions(+), 204 deletions(-) create mode 100644 src/main/java/com/lz/modules/app/resp/ResetDataResp.java diff --git a/src/main/java/com/lz/modules/app/controller/ResultRecordController.java b/src/main/java/com/lz/modules/app/controller/ResultRecordController.java index 1471fcc5..8dcd360b 100644 --- a/src/main/java/com/lz/modules/app/controller/ResultRecordController.java +++ b/src/main/java/com/lz/modules/app/controller/ResultRecordController.java @@ -1152,7 +1152,6 @@ public class ResultRecordController extends AbstractController { } /** - * * 删除 */ // http://localhost:8080/lz_management/user/lzresultrecord/new/resultRecordDetail?resultRecordId=593&loginUserId=322 @@ -1166,4 +1165,16 @@ public class ResultRecordController extends AbstractController { } + + + + // http://localhost:8080/lz_management/user/lzresultrecord/get/reset/data?resultRecordId=593&loginUserId=322 + @RequestMapping("/get/reset/data") + public R getResetData(RecordDetailDto recordDetailDto) { + if(recordDetailDto.getLoginUserId() ==null && getUser() !=null ){ + recordDetailDto.setLoginUserId(getUserId()); + } + return resultRecordService.getResetData(recordDetailDto); + } + } diff --git a/src/main/java/com/lz/modules/app/controller/TestController.java b/src/main/java/com/lz/modules/app/controller/TestController.java index 06241cca..e23f35ab 100644 --- a/src/main/java/com/lz/modules/app/controller/TestController.java +++ b/src/main/java/com/lz/modules/app/controller/TestController.java @@ -9,6 +9,7 @@ import com.lz.common.utils.R; import com.lz.common.utils.StringUtil; import com.lz.modules.app.dao.DepartmentsDao; import com.lz.modules.app.dto.ApprovalDto; +import com.lz.modules.app.dto.RecordDetailDto; import com.lz.modules.app.entity.DepartmentsEntity; import com.lz.modules.app.entity.DepartmentsStaffRelateEntity; import com.lz.modules.app.entity.StaffEntity; @@ -298,4 +299,10 @@ public class TestController { System.out.println(roleIds); } + //http://localhost:8080/lz_management/test/reset/data?resultRecordId=3714 + @RequestMapping("/test/reset/data") + public R getResetData(RecordDetailDto recordDetailDto) { + return resultRecordService.getResetData(recordDetailDto); + } + } diff --git a/src/main/java/com/lz/modules/app/resp/ResetDataResp.java b/src/main/java/com/lz/modules/app/resp/ResetDataResp.java new file mode 100644 index 00000000..6875995a --- /dev/null +++ b/src/main/java/com/lz/modules/app/resp/ResetDataResp.java @@ -0,0 +1,13 @@ +package com.lz.modules.app.resp; + +import lombok.Data; + +import java.util.List; + +@Data +public class ResetDataResp { + private String flowName; + private List staffNames; + private Long id ; + +} diff --git a/src/main/java/com/lz/modules/sys/service/app/ResultRecordService.java b/src/main/java/com/lz/modules/sys/service/app/ResultRecordService.java index 7e79b30e..7921b19a 100644 --- a/src/main/java/com/lz/modules/sys/service/app/ResultRecordService.java +++ b/src/main/java/com/lz/modules/sys/service/app/ResultRecordService.java @@ -125,4 +125,6 @@ public interface ResultRecordService extends IService { List selectResultRecordsByStartId(Long startId); List selectResultRecordIdsByStartId(Long startId); + + R getResetData(RecordDetailDto recordDetailDto); } \ No newline at end of file diff --git a/src/main/java/com/lz/modules/sys/service/app/impl/ResultRecordServiceImpl.java b/src/main/java/com/lz/modules/sys/service/app/impl/ResultRecordServiceImpl.java index a9f18179..48174ca1 100644 --- a/src/main/java/com/lz/modules/sys/service/app/impl/ResultRecordServiceImpl.java +++ b/src/main/java/com/lz/modules/sys/service/app/impl/ResultRecordServiceImpl.java @@ -20,10 +20,7 @@ import com.lz.modules.app.enums.FlowApprovalRoleTypeEnums; import com.lz.modules.app.enums.FlowRecordStatusEnums; import com.lz.modules.app.enums.RoleEnums; import com.lz.modules.app.req.ResultRecordReq; -import com.lz.modules.app.resp.FlowDetailResp; -import com.lz.modules.app.resp.FlowRecordResp; -import com.lz.modules.app.resp.OwnResultResp; -import com.lz.modules.app.resp.ResultRecordResp; +import com.lz.modules.app.resp.*; import com.lz.modules.app.service.DepartmentsService; import com.lz.modules.app.service.DepartmentsStaffRelateService; import com.lz.modules.app.service.StaffService; @@ -74,8 +71,6 @@ public class ResultRecordServiceImpl extends ServiceImpl tDepartments = departmentsDao.selectAll(); if (StringUtil.isNotBlank(params.getDepartment1()) || StringUtil.isNotBlank(params.getDepartment2()) || StringUtil.isNotBlank(params.getDepartment3())) { - Map> departmentMap = null; - if(employeesDto == null || employeesDto.getExpire() < new Date().getTime()){ + Map> departmentMap = null; + if (employeesDto == null || employeesDto.getExpire() < new Date().getTime()) { departmentMap = getStringListMap(tDepartments); - Date expire = DateUtils.addMinute(new Date(),30); - EmployeesDto newDto = new EmployeesDto(expire.getTime(),departmentMap); + Date expire = DateUtils.addMinute(new Date(), 30); + EmployeesDto newDto = new EmployeesDto(expire.getTime(), departmentMap); employeesDto = newDto; log.info("使用新数据"); - }else{ + } else { log.info("使用缓存"); departmentMap = employeesDto.getCacheMap(); } @@ -204,12 +199,12 @@ public class ResultRecordServiceImpl extends ServiceImpl listx = new ArrayList<>(); - if(status !=null){ - for(String l : status){ - listx.add(NumberUtil.objToLongDefault(l,-1)); + if (status != null) { + for (String l : status) { + listx.add(NumberUtil.objToLongDefault(l, -1)); } params.setStatusList(listx); } @@ -257,16 +252,16 @@ public class ResultRecordServiceImpl extends ServiceImpl> getStringListMap(List tDepartments) { - Map> departmentMap = new HashMap<>(); - for(DepartmentsEntity department : tDepartments) { + Map> departmentMap = new HashMap<>(); + for (DepartmentsEntity department : tDepartments) { List list = new ArrayList<>(); - for(DepartmentsEntity child : tDepartments) { - if(child.getDepartmentParentId().equals(department.getDepartmentId())){ + for (DepartmentsEntity child : tDepartments) { + if (child.getDepartmentParentId().equals(department.getDepartmentId())) { list.add(child); } } @@ -280,12 +275,12 @@ public class ResultRecordServiceImpl extends ServiceImpl childDepartIds ,String parentId,Map> departmentMap ){ + public void getChildIds(List childDepartIds, String parentId, Map> departmentMap) { childDepartIds.add(parentId); - List tDepartments = departmentMap.get(parentId); - if(CollectionUtils.isNotEmpty(tDepartments)){ - for(DepartmentsEntity tDepartment:tDepartments){ - getChildIds(childDepartIds,tDepartment.getDepartmentId(),departmentMap); + List tDepartments = departmentMap.get(parentId); + if (CollectionUtils.isNotEmpty(tDepartments)) { + for (DepartmentsEntity tDepartment : tDepartments) { + getChildIds(childDepartIds, tDepartment.getDepartmentId(), departmentMap); } } } @@ -303,8 +298,8 @@ public class ResultRecordServiceImpl extends ServiceImpl map = departmentsService.selectUserAllDepartmentInFo(departmentsStaffRelateEntity.getDepartmentId()); if (StringUtil.isNotBlank(map.get("dd2"))) { leader = departmentsStaffRelateService.selectLeaderByDepartmentId(map.get("dd2")); - if(leader ==null && StringUtil.isNotBlank(map.get("dd3"))){ + if (leader == null && StringUtil.isNotBlank(map.get("dd3"))) { leader = departmentsStaffRelateService.selectLeaderByDepartmentId(map.get("dd3")); return leader; @@ -349,12 +344,12 @@ public class ResultRecordServiceImpl extends ServiceImpl flowRecords = flowRecordService.selectFlowRecordByResultRecordIdFlowId(oldResultRecordId); - for(FlowRecord flowRecord : flowRecords){ + for (FlowRecord flowRecord : flowRecords) { flowRecord.setRecordId(resultRecordOld.getId()); flowRecord.setId(null); flowRecord.setType(Constant.ONE); @@ -428,12 +423,12 @@ public class ResultRecordServiceImpl extends ServiceImpl resultDetails = resultDetailService.selectByRecordId(recordId); if (CollectionUtils.isEmpty(resultDetails)) { @@ -445,12 +440,12 @@ public class ResultRecordServiceImpl extends ServiceImpl staffRoleMap = recordAuthService.selectRoleIdByStaffRoleInfo(resultRecord.getFlowStaffIdRole()); - List listAuth = recordAuthService.selectAuthInfo(staffRoleMap.get(userId)); + List listAuth = recordAuthService.selectAuthInfo(staffRoleMap.get(userId)); Auth auth = recordAuthService.getAuth(listAuth); // 如果是评分,查看是不是所有内容都己经评分 - if(auth.getEditScore() == 1 ){ - for(ResultDetail resultDetail : resultDetails ){ - if(resultDetail.getAcquireScore().compareTo(BigDecimal.ZERO) <= 0 ){ + if (auth.getEditScore() == 1) { + for (ResultDetail resultDetail : resultDetails) { + if (resultDetail.getAcquireScore().compareTo(BigDecimal.ZERO) <= 0) { return R.error("resultDetail[" + resultDetail.getId() + "] 评分必需 > 0 "); } } @@ -459,9 +454,9 @@ public class ResultRecordServiceImpl extends ServiceImpl flows = flowService.selectByFlowId(flowId,0l); + log.info("approvalList approval : " + Arrays.toString(approvalList.toArray())); + List flows = flowService.selectByFlowId(flowId, 0l); FlowRecord lastFlowRecord = flowRecordService.selectLastFlowRecordByRecordId(resultRecordId); FlowRecord notFlowRecord = flowRecordService.selectNotApprovalStaffIdFlowRecords(resultRecord.getId()); if (notFlowRecord != null) { @@ -572,7 +567,7 @@ public class ResultRecordServiceImpl extends ServiceImpl staffRoleDtos, Long roleId) { + public StaffEntity getApprovalStaff(ResultRecord resultRecord, String departmentLevel, List staffRoleDtos, Long roleId) { StaffEntity approvalStaff = null; List staffRoles = staffRoleService.selectByRole(departmentLevel); for (StaffRole staffRole : staffRoles) { @@ -602,10 +597,10 @@ public class ResultRecordServiceImpl extends ServiceImpl list, int flowIndex) { if (flowIndex > list.size()) { - return -1 ; + return -1; } List flows = new ArrayList<>(); - for(int i = 0 ;i < flowIndex ;i ++){ + for (int i = 0; i < flowIndex; i++) { flows.add(list.get(i)); } int index = 0; @@ -626,8 +621,8 @@ public class ResultRecordServiceImpl extends ServiceImpl flowRecords = flowRecordService.selectFlowRecordByResultRecordIdType(req.getRecordResultId(), resultRecord.getType()); if (flowRecords != null && flowRecords.size() == 2) { // 表示可以撤回 - r = reject(resultRecord,5); + r = reject(resultRecord, 5); } else if (flowRecords != null && flowRecords.size() > 2) { return R.error("你的领导己经审批,不能撤回了"); } @@ -659,17 +654,17 @@ public class ResultRecordServiceImpl extends ServiceImpl flowRecords = flowRecordService.selectFlowRecordByResultRecordIdFlowId(resultRecord.getId()); StaffEntity mySelf = staffService.selectStaffById(resultRecord.getStaffId()); StaffEntity approvalStaff = mySelf; @@ -713,10 +708,10 @@ public class ResultRecordServiceImpl extends ServiceImpl staffDistribution(String monthTime,List staffIds) { + public List staffDistribution(String monthTime, List staffIds) { - return resultRecordMapper.staffDistribution(monthTime,staffIds); + return resultRecordMapper.staffDistribution(monthTime, staffIds); } @Override - public List countNumByFlowProcess(Long startId,List evaluationIds,List departmentIds) { - return resultRecordMapper.countNumByFlowProcess(startId,evaluationIds,departmentIds); + public List countNumByFlowProcess(Long startId, List evaluationIds, List departmentIds) { + return resultRecordMapper.countNumByFlowProcess(startId, evaluationIds, departmentIds); } @Override - public List countNumByScoreLevel(Long startId,List evaluationIds,List departmentIds) { - return resultRecordMapper.countNumByScoreLevel(startId,evaluationIds,departmentIds); + public List countNumByScoreLevel(Long startId, List evaluationIds, List departmentIds) { + return resultRecordMapper.countNumByScoreLevel(startId, evaluationIds, departmentIds); } @Override @@ -772,12 +767,12 @@ public class ResultRecordServiceImpl extends ServiceImpl flows = flowService.selectByFlowId(resultRecord.getEvaluationId(),resultRecord.getStartId()); + List flows = flowService.selectByFlowId(resultRecord.getEvaluationId(), resultRecord.getStartId()); List flowIds = new ArrayList<>(); - for(Flow flow:flows){ + for (Flow flow : flows) { flowIds.add(flow.getId()); } - List flowApprovalRoles =flowApprovalRoleService.selectFlowApprovalRoleList(flowIds); + List flowApprovalRoles = flowApprovalRoleService.selectFlowApprovalRoleList(flowIds); return initFlowRecord(resultRecord, flows, flowApprovalRoles); } @@ -805,28 +800,28 @@ public class ResultRecordServiceImpl extends ServiceImpl staffRoles= staffRoleService.selectAllStaffRoleByDepartmentLevel(Arrays.asList(new String[]{RoleEnums.MASTER_PM.getName(),RoleEnums.CHILD_PM.getName()})); - for(StaffRole staffRole:staffRoles){ + if (approvalStaff != null && StringUtil.isNotBlank(approvalStaff.getName())) { + insertFlowRecord(flowRecord, approvalStaff, flows, flowApprovalRole, resultRecord, i, null); + } else { + List staffRoles = staffRoleService.selectAllStaffRoleByDepartmentLevel(Arrays.asList(new String[]{RoleEnums.MASTER_PM.getName(), RoleEnums.CHILD_PM.getName()})); + for (StaffRole staffRole : staffRoles) { approvalStaff = staffService.selectStaffById(staffRole.getStaffId()); - if(staffRole.getDepartmentId() ==0){ //如果是管理所有部门 - insertFlowRecord(flowRecord,approvalStaff,flows,flowApprovalRole,resultRecord,i,1); - }else{ + if (staffRole.getDepartmentId() == 0) { //如果是管理所有部门 + insertFlowRecord(flowRecord, approvalStaff, flows, flowApprovalRole, resultRecord, i, 1); + } else { DepartmentsStaffRelateEntity relateEntity = departmentsStaffRelateService.selectLastDepartmentByStaffId(resultRecord.getStaffId()); Map map = departmentsService.selectUserAllDepartmentIds(relateEntity.getDepartmentId()); List staffRoleDepartments = staffRoleDepartmentService.selectStaffRoleDepartmentByStaffRoleId(staffRole.getId()); boolean flag = false; - for(StaffRoleDepartment staffRoleDepartment: staffRoleDepartments){ + for (StaffRoleDepartment staffRoleDepartment : staffRoleDepartments) { String departmentName = map.get(staffRoleDepartment.getDepartmentId()); - if(StringUtil.isNotBlank(departmentName)){ + if (StringUtil.isNotBlank(departmentName)) { flag = true; break; } } - if(flag){ //如果管理员是管理特定部门 - insertFlowRecord(flowRecord,approvalStaff,flows,flowApprovalRole,resultRecord,i,1); + if (flag) { //如果管理员是管理特定部门 + insertFlowRecord(flowRecord, approvalStaff, flows, flowApprovalRole, resultRecord, i, 1); } } } @@ -838,7 +833,7 @@ public class ResultRecordServiceImpl extends ServiceImpl flows,FlowApprovalRole flowApprovalRole ,ResultRecord resultRecord,int i,Integer stepType ){ + public void insertFlowRecord(FlowRecord flowRecord, StaffEntity approvalStaff, List flows, FlowApprovalRole flowApprovalRole, ResultRecord resultRecord, int i, Integer stepType) { flowRecord.setApprovalStaffName(approvalStaff.getName()); flowRecord.setApprovalStaffId(approvalStaff.getId()); Flow flow = getFlow(flows, flowApprovalRole.getFlowId()); @@ -855,38 +850,38 @@ public class ResultRecordServiceImpl extends ServiceImpl flowRecords = flowRecordService.selectFlowRecordByRecordIdStatus(approvalDto.getResultRecordId(),2); - if(CollectionUtils.isNotEmpty(flowRecords)){ + List flowRecords = flowRecordService.selectFlowRecordByRecordIdStatus(approvalDto.getResultRecordId(), 2); + if (CollectionUtils.isNotEmpty(flowRecords)) { FlowRecord preFlowRecord = flowRecords.get(0); // 评论内容 FlowChart flowChart = flowService.selectFlowChartByChartId(preFlowRecord.getFlowId()); @@ -895,13 +890,13 @@ public class ResultRecordServiceImpl extends ServiceImpl flowRecords = flowRecordService.selectFlowRecordByRecordIdStatus(approvalDto.getResultRecordId(), 1); - if(flowRecords!=null && flowRecords.size()>0){ + if (flowRecords != null && flowRecords.size() > 0) { return R.error("领导己经审批,不能撤回"); } return newReject(approvalDto); @@ -975,17 +970,17 @@ public class ResultRecordServiceImpl extends ServiceImpl flowRecords = flowRecordService.selectFlowRecordByRecordIdStatus(approvalDto.getResultRecordId(),2); - if(CollectionUtils.isEmpty(flowRecords)){ + List flowRecords = flowRecordService.selectFlowRecordByRecordIdStatus(approvalDto.getResultRecordId(), 2); + if (CollectionUtils.isEmpty(flowRecords)) { log.info("流程己经结束"); return R.ok("流程己经结束"); } - if(finishedStatus == null){ + if (finishedStatus == null) { finishedStatus = FlowRecordStatusEnums.FINISHED_STATUS.getStatus(); } FlowRecord preFlowRecord = flowRecords.get(0); @@ -1022,8 +1017,8 @@ public class ResultRecordServiceImpl extends ServiceImpl currentflowRecords = flowRecordService.selectFlowRecordByRecordIdStatus(approvalDto.getResultRecordId(),FlowRecordStatusEnums.CURRENT_FLOW_STATUS.getStatus()); - if(currentflowRecords !=null && currentflowRecords.size() > 0 ){ + List currentflowRecords = flowRecordService.selectFlowRecordByRecordIdStatus(approvalDto.getResultRecordId(), FlowRecordStatusEnums.CURRENT_FLOW_STATUS.getStatus()); + if (currentflowRecords != null && currentflowRecords.size() > 0) { FlowRecord currentFlowRecord = currentflowRecords.get(0); // 更新当前数据 // 获取当前审批结点组 List currentFlowRecords = flowRecordService.selectFlowRecordByRecordIdFlowIndex(approvalDto.getResultRecordId(), currentFlowRecord.getFlowIndex()); - for(FlowRecord flowRecord : currentFlowRecords){ + for (FlowRecord flowRecord : currentFlowRecords) { flowRecord.setStatus(FlowRecordStatusEnums.UN_TO_STATUS.getStatus()); flowRecordService.updateFlowRecordById(flowRecord); } // 恢复之前数据 // 获取之前审批过的结点 FlowRecord preFlowRecord = flowRecordService.selectPreFlowRecordByRecordIdMaxIdStatus(approvalDto.getResultRecordId(), - currentFlowRecord.getId(),FlowRecordStatusEnums.FINISHED_STATUS.getStatus()); - if(preFlowRecord != null) { + currentFlowRecord.getId(), FlowRecordStatusEnums.FINISHED_STATUS.getStatus()); + if (preFlowRecord != null) { // 获取之前审批结点组 List flowRecords = flowRecordService.selectFlowRecordByRecordIdFlowIndex(approvalDto.getResultRecordId(), preFlowRecord.getFlowIndex()); for (FlowRecord flowRecord : flowRecords) { @@ -1073,9 +1068,9 @@ public class ResultRecordServiceImpl extends ServiceImpl flowRecords = flowRecordService.selectFlowRecordByResultRecordId(recordDetailDto.getResultRecordId()); List flowRecordList = new ArrayList<>(); int flowIndex = -1; - Long flowRecordId= 0l; + Long flowRecordId = 0l; ResultRecord resultRecord = resultRecordService.selectResultRecordById(recordDetailDto.getResultRecordId()); for (FlowRecord flowRecord : flowRecords) { if (flowRecord.getFlowIndex().equals(flowIndex)) { //表示有重复数据 @@ -1119,7 +1114,7 @@ public class ResultRecordServiceImpl extends ServiceImpl flowDetailRespList = lastResp.getFlowDetailRespList(); - mySetFlowDetailRespList(flowDetailRespList, flowRecord,recordDetailDto.getLoginUserId(),resultRecord.getStaffId()); + mySetFlowDetailRespList(flowDetailRespList, flowRecord, recordDetailDto.getLoginUserId(), resultRecord.getStaffId()); for (FlowRecord mul : mulFlowRecord) { if (mul.getStatus().equals(FlowRecordStatusEnums.UN_TO_STATUS.getStatus())) { flag0 = true; @@ -1130,28 +1125,28 @@ public class ResultRecordServiceImpl extends ServiceImpl flowDetailRespList = new ArrayList<>(); - mySetFlowDetailRespList(flowDetailRespList,flowRecord,recordDetailDto.getLoginUserId(),resultRecord.getStaffId()); + mySetFlowDetailRespList(flowDetailRespList, flowRecord, recordDetailDto.getLoginUserId(), resultRecord.getStaffId()); resp.setFlowDetailRespList(flowDetailRespList); flowRecordList.add(resp); flowIndex = flowRecord.getFlowIndex(); } + boolean flag = true; for (FlowRecord flowRecord : flowRecords) { if (flowRecord.getStatus() == 2) { @@ -1176,39 +1172,40 @@ public class ResultRecordServiceImpl extends ServiceImpl resultCommentList = resultCommentService.selectByRecordId(recordDetailDto.getResultRecordId()); - for(ResultComment resultComment:resultCommentList){ + for (ResultComment resultComment : resultCommentList) { StaffEntity staffEntity = staffService.selectStaffById(resultComment.getStaffId()); resultComment.setAvatar(staffEntity.getAvatar()); } - Map auth = new HashMap<>(); - auth.put("showResult",1); - auth.put("showScore",1); - List currentResultRecords = flowRecordService.selectFlowRecordByRecordIdStatus(recordDetailDto.getResultRecordId(),2); + Map auth = new HashMap<>(); + auth.put("showResult", 1); + auth.put("showScore", 1); + List currentResultRecords = flowRecordService.selectFlowRecordByRecordIdStatus(recordDetailDto.getResultRecordId(), 2); log.info("当前用户登陆用户 id :" + recordDetailDto.getLoginUserId()); - if(currentResultRecords !=null && currentResultRecords.size() > 0 ){ + if (currentResultRecords != null && currentResultRecords.size() > 0) { FlowRecord currentFlowRecord = currentResultRecords.get(0); int flowProcess = currentFlowRecord.getFlowProcess(); - if(flowProcess <= 3 ){ - auth.put("showResult",0); + if (flowProcess <= 3) { + auth.put("showResult", 0); } - if( flowProcess <= 4 ){ - auth.put("showScore",0); + if (flowProcess <= 4) { + auth.put("showScore", 0); } FlowRecord currentResultRecord = null; - for(FlowRecord flowRecord:currentResultRecords){ - if(flowRecord.getApprovalStaffId().equals(recordDetailDto.getLoginUserId())){ + for (FlowRecord flowRecord : currentResultRecords) { + if (flowRecord.getApprovalStaffId().equals(recordDetailDto.getLoginUserId())) { currentResultRecord = flowRecord; log.info("当前审批用户 id id :" + currentResultRecord.getApprovalStaffId()); break; } } - if(currentResultRecord !=null){ - if(StringUtil.isNotBlank(currentResultRecord.getFlowStaffIdRole())){ + if (currentResultRecord != null) { + if (StringUtil.isNotBlank(currentResultRecord.getFlowStaffIdRole())) { auth = getAuth(currentResultRecord.getFlowStaffIdRole()); flowRecordId = currentResultRecord.getId(); } @@ -1216,36 +1213,36 @@ public class ResultRecordServiceImpl extends ServiceImpl map = new HashMap<>(); map.put("flowRecordList", flowRecordList); map.put("resultCommentList", resultCommentList); - map.put("auth",auth); - map.put("flowRecordId",flowRecordId); + map.put("auth", auth); + map.put("flowRecordId", flowRecordId); return R.ok().put("data", map); } - public Map getAuth(String flowStaffIdRole){ - Map auth = Maps.newHashMap(); - Map map = JSONObject.parseObject(flowStaffIdRole,Map.class); + public Map getAuth(String flowStaffIdRole) { + Map auth = Maps.newHashMap(); + Map map = JSONObject.parseObject(flowStaffIdRole, Map.class); List roleIds = null; for (Map.Entry entry : map.entrySet()) { - if(entry.getValue() !=null ){ - roleIds = JSON.parseArray(entry.getValue().toString(),Long.class); + if (entry.getValue() != null) { + roleIds = JSON.parseArray(entry.getValue().toString(), Long.class); } } - if(roleIds !=null && roleIds.size() > 0){ - auth = recordAuthService.selectAuthByRoleIds(roleIds); + if (roleIds != null && roleIds.size() > 0) { + auth = recordAuthService.selectAuthByRoleIds(roleIds); } return auth; } - public void mySetFlowDetailRespList(List flowDetailRespList ,FlowRecord flowRecord,Long loginUserId,Long recordStaffId){ - FlowDetailResp flowDetailResp = new FlowDetailResp(); + public void mySetFlowDetailRespList(List flowDetailRespList, FlowRecord flowRecord, Long loginUserId, Long recordStaffId) { + FlowDetailResp flowDetailResp = new FlowDetailResp(); flowDetailResp.setCurrentStaffId(flowRecord.getApprovalStaffId()); flowDetailResp.setStaffName(flowRecord.getApprovalStaffName()); flowDetailResp.setFlowRecordId(flowRecord.getId()); @@ -1262,17 +1259,17 @@ public class ResultRecordServiceImpl extends ServiceImpl map = departmentsService.selectUserAllDepartmentIds(departmentsStaffRelateEntity.getDepartmentId()); List staffRoleDepartments = staffRoleDepartmentService.selectStaffRoleDepartmentByStaffRoleId(staffRole.getId()); for (StaffRoleDepartment staffRoleDepartment : staffRoleDepartments) { @@ -1299,7 +1296,7 @@ public class ResultRecordServiceImpl extends ServiceImpl staffEntities = departManagers.getManagers(); - if(CollectionUtils.isNotEmpty(staffEntities)){ + if (CollectionUtils.isNotEmpty(staffEntities)) { return staffEntities.get(0); } return new StaffEntity(); } - public Flow getFlow(List flows,Long flowId){ - for(Flow flow : flows){ - if(flow.getId().equals(flowId)){ - return flow; - } - } - return new Flow(); + public Flow getFlow(List flows, Long flowId) { + for (Flow flow : flows) { + if (flow.getId().equals(flowId)) { + return flow; + } + } + return new Flow(); } @Override - public ResultRecord selectLastResultRecordByUserId(Long userId){ + public ResultRecord selectLastResultRecordByUserId(Long userId) { return resultRecordMapper.selectLastResultRecordByUserId(userId); } @Override - public ResultRecord selectResultRecordByStaffIdAndStartId(Long userId, Long startId){ + public ResultRecord selectResultRecordByStaffIdAndStartId(Long userId, Long startId) { return resultRecordMapper.selectResultRecordByStaffIdAndStartId(userId, startId); } @Override - public List selectResultRecordsByStartId(Long startId){ + public List selectResultRecordsByStartId(Long startId) { return resultRecordMapper.selectResultRecordsByStartId(startId); } @Override - public List selectResultRecordIdsByStartId(Long startId){ + public List selectResultRecordIdsByStartId(Long startId) { return resultRecordMapper.selectIdsByStartId(startId); } + + @Override + public R getResetData(RecordDetailDto recordDetailDto) { + List flowRecords = flowRecordService.selectFlowRecordByResultRecordId(recordDetailDto.getResultRecordId()); + int flowIndex = 0; + List resetDataResps = new ArrayList<>(); + for (FlowRecord flowRecord : flowRecords) { + if (flowRecord.getFlowIndex().equals(flowIndex - 1)) { //表示有重复数据 + ResetDataResp resetDataResp = resetDataResps.get(flowIndex - 1); + resetDataResp.getStaffNames().add(flowRecord.getApprovalStaffName()); + continue; + } + ResetDataResp resetDataResp = new ResetDataResp(); + resetDataResp.setFlowName(flowRecord.getFlowName()); + resetDataResp.setId(flowRecord.getId()); + List staffNames = new ArrayList<>(); + staffNames.add(flowRecord.getApprovalStaffName()); + resetDataResp.setStaffNames(staffNames); + resetDataResps.add(resetDataResp); + flowIndex ++ ; + } + return R.ok().put("data",resetDataResps); + } }