提交修改

This commit is contained in:
quyixiao 2021-01-13 11:10:43 +08:00
parent 31ea785f0e
commit c4a2a84151

View File

@ -953,7 +953,7 @@ public class ResultRecordServiceImpl extends ServiceImpl<ResultRecordMapper, Res
private R rejectN(ApprovalDto approvalDto) {
log.info("驳回到前n个节点 " + JSON.toJSONString(approvalDto) );
log.info("驳回到前n个节点 " + JSON.toJSONString(approvalDto));
FlowRecord f = flowRecordService.selectFlowRecordById(approvalDto.getFlowRecordId());
ResultRecord resultRecord = resultRecordService.selectResultRecordById(f.getRecordId());
@ -1131,21 +1131,33 @@ public class ResultRecordServiceImpl extends ServiceImpl<ResultRecordMapper, Res
return R.ok("转交成功");
}
private R reSubmit(ApprovalDto approvalDto) {
List<FlowRecord> currflowRecords = flowRecordService.selectFlowRecordByRecordIdStatus(approvalDto.getResultRecordId(), 2);
if (CollectionUtils.isNotEmpty(currflowRecords)) {
FlowRecord preFlowRecord = currflowRecords.get(0);
if (approvalDto.getLoginUserId() != null && approvalDto.getLoginUserId() > 0) {
if (!preFlowRecord.getApprovalStaffId().equals(approvalDto.getLoginUserId())) {
log.info("审批人不是自己 ApprovalStaffId :" + preFlowRecord.getApprovalStaffId() + ",登陆用户 id:" + approvalDto.getLoginUserId());
return R.error("审批人不是自己,不能撤回");
}
}
if(!hasRecall(approvalDto.getResultRecordId(),approvalDto.getLoginUserId())){
return R.error("没有撤回权限");
}
return newReject(approvalDto);
}
//当前是否有撤回权限
public boolean hasRecall(Long resultRecordId, Long loginUserId) {
ResultRecord resultRecord = resultRecordService.selectResultRecordById(resultRecordId);
List<FlowRecord> currflowRecords = flowRecordService.selectFlowRecordByRecordIdStatus(resultRecordId, 2);
if (CollectionUtils.isNotEmpty(currflowRecords)) {
FlowRecord currentFlowRecord = currflowRecords.get(0);
List<FlowRecord> preFlowRecords = flowRecordService.selectFlowRecordByRecordIdFlowIndex(currentFlowRecord.getRecordId(), currentFlowRecord.getFlowIndex() - 1);
for (FlowRecord flowRecord : preFlowRecords) {
if (flowRecord.getApprovalStaffId().equals(loginUserId)
&& loginUserId.equals(resultRecord.getStaffId())
//在目标制定的时候和结果录入的时候允许撤回
&& (flowRecord.getFlowProcess().equals(new Integer(0)) || flowRecord.getFlowProcess().equals(new Integer(3)))) {
return true;
}
log.info("没有撤回权限approvalStaffId :" + flowRecord.getApprovalStaffId() + ",loginUserId :" + loginUserId + ",staffId:" + resultRecord.getStaffId() + ",flowProcess:"+flowRecord.getFlowProcess());
}
}
return false;
}
public Long comment(ApprovalDto approvalDto, FlowChart flowChart) {
StaffEntity staffEntity = staffService.selectStaffById(approvalDto.getLoginUserId());
if (staffEntity != null) {
@ -1415,17 +1427,8 @@ public class ResultRecordServiceImpl extends ServiceImpl<ResultRecordMapper, Res
}
}
List<FlowRecord> preFlowRecords = flowRecordService.selectFlowRecordByRecordIdFlowIndex(currentFlowRecord.getRecordId(), currentFlowRecord.getFlowIndex() - 1);
if (CollectionUtils.isNotEmpty(preFlowRecords)) {
for (FlowRecord flowRecord : preFlowRecords) {
if (flowRecord.getApprovalStaffId().equals(recordDetailDto.getLoginUserId())
&& recordDetailDto.getLoginUserId().equals(resultRecord.getStaffId())
//在目标制定的时候和结果录入的时候允许撤回
&& (flowRecord.getFlowProcess().equals(new Integer(0)) || flowRecord.getFlowProcess().equals(new Integer(3)))
) {
auth.put("recall", 1);
}
}
if(hasRecall(currentFlowRecord.getRecordId(),recordDetailDto.getLoginUserId())){
auth.put("recall", 1);
}