|
|
@@ -89,10 +89,11 @@ public class WithDrawHandle { |
|
|
|
|
|
|
|
Boolean isAndOr = Boolean.FALSE; |
|
|
|
|
|
|
|
//如果上个会签没取到 还有种情况是 会签 或签 并且在上个节点 |
|
|
|
if(CollUtil.isNotEmpty(beforeAndOr)) { |
|
|
|
for (ProgressNode n : beforeAndOr) { |
|
|
|
if (n.getUserId().equals(user.getEmployeeCode())) { |
|
|
|
//还有种情况是 会签 或签 并且在当前节点 并且已经通过 |
|
|
|
if(CollUtil.isNotEmpty(thisAndOr)){ |
|
|
|
for(ProgressNode n : thisAndOr){ |
|
|
|
if(n.getUserId().equals(user.getEmployeeCode()) && |
|
|
|
Objects.nonNull(n.getFinishTime())){ |
|
|
|
beforeProgressNode = n; |
|
|
|
//说明当前操作人 在上个会签或者或签节点 |
|
|
|
isAndOr = Boolean.TRUE; |
|
|
@@ -101,11 +102,10 @@ public class WithDrawHandle { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
//还有种情况是 会签 或签 并且在当前节点 并且已经通过 |
|
|
|
if(!isAndOr && CollUtil.isNotEmpty(thisAndOr)){ |
|
|
|
for(ProgressNode n : thisAndOr){ |
|
|
|
if(n.getUserId().equals(user.getEmployeeCode()) && |
|
|
|
Objects.nonNull(n.getFinishTime())){ |
|
|
|
//如果上个会签没取到 还有种情况是 会签 或签 并且在上个节点 |
|
|
|
if(!isAndOr && CollUtil.isNotEmpty(beforeAndOr)) { |
|
|
|
for (ProgressNode n : beforeAndOr) { |
|
|
|
if (n.getUserId().equals(user.getEmployeeCode())) { |
|
|
|
beforeProgressNode = n; |
|
|
|
//说明当前操作人 在上个会签或者或签节点 |
|
|
|
isAndOr = Boolean.TRUE; |
|
|
@@ -114,6 +114,8 @@ public class WithDrawHandle { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if(!isAndOr && (Objects.isNull(beforeProgressNode) |
|
|
|
|| !user.getEmployeeCode().equals(beforeProgressNode.getUserId()))){ |
|
|
|
return Boolean.FALSE; |
|
|
|