|
@@ -2176,20 +2176,30 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
|
|
|
|
|
|
|
|
|
// 设置中止状态
|
|
|
- //统计发包方还未审核的
|
|
|
- long drugNeedToCheckCount = taskList.stream()
|
|
|
- .filter(t -> "3".equals(t.getTaskStatus()) && reportWaitingCheckStatus.contains(t.getReportDrugApprovalStatus()))
|
|
|
- .count();
|
|
|
+ if (relationScorePackage != null) {
|
|
|
+ // 关联了上级包的情况
|
|
|
+ // 统计发包方还未审核的
|
|
|
+ long drugNeedToCheckCount = taskList.stream()
|
|
|
+ .filter(t -> "3".equals(t.getTaskStatus()) && reportWaitingCheckStatus.contains(t.getReportDrugApprovalStatus()))
|
|
|
+ .count();
|
|
|
|
|
|
- // 统计cso未审核 和审核通过的还未提交到药企的任务数
|
|
|
- long csoNeedToCheckCount = taskList.stream()
|
|
|
- .filter(t -> "2".equals(t.getTaskStatus()) ||
|
|
|
- ("3".equals(t.getTaskStatus()) && (reportWaitingCheckStatus.contains(t.getReportOneApprovalStatus()))))
|
|
|
- .count();
|
|
|
+ // 统计cso未审核 和审核通过的还未提交到药企的任务数
|
|
|
+ long csoNeedToCheckCount = taskList.stream()
|
|
|
+ .filter(t -> "2".equals(t.getTaskStatus()) ||
|
|
|
+ ("3".equals(t.getTaskStatus()) && (reportWaitingCheckStatus.contains(t.getReportOneApprovalStatus()))))
|
|
|
+ .count();
|
|
|
|
|
|
- // 如果有发包方未审核的不能中止
|
|
|
- if (drugNeedToCheckCount != 0L || csoNeedToCheckCount != 0L) {
|
|
|
- scorePackage.setStopStatus(WmScorePackage.PackageStopStatus.NOTHING);
|
|
|
+ // 如果有发包方未审核的不能中止
|
|
|
+ if (drugNeedToCheckCount != 0L || csoNeedToCheckCount != 0L) {
|
|
|
+ scorePackage.setStopStatus(WmScorePackage.PackageStopStatus.NOTHING);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ // 没有关联上级包的情况
|
|
|
+ // 统计待审核任务数
|
|
|
+ long toApproveCount = taskList.stream().filter(t -> TaskStatusEnum.UNDER_REVIEW.val().equals(t.getTaskStatus())).count();
|
|
|
+ if (toApproveCount > 0) {
|
|
|
+ scorePackage.setStopStatus(WmScorePackage.PackageStopStatus.NOTHING);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -2400,20 +2410,30 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
|
|
|
|
|
|
|
|
|
// 设置中止状态
|
|
|
- //统计发包方还未审核的
|
|
|
- long drugNeedToCheckCount = taskList.stream()
|
|
|
- .filter(t -> "3".equals(t.getTaskStatus()) && reportWaitingCheckStatus.contains(t.getReportDrugApprovalStatus()))
|
|
|
- .count();
|
|
|
+ if (relationScorePackage != null) {
|
|
|
+ // 关联了上级包的情况
|
|
|
+ // 统计发包方还未审核的
|
|
|
+ long drugNeedToCheckCount = taskList.stream()
|
|
|
+ .filter(t -> "3".equals(t.getTaskStatus()) && reportWaitingCheckStatus.contains(t.getReportDrugApprovalStatus()))
|
|
|
+ .count();
|
|
|
|
|
|
- // 统计cso未审核 和审核通过的还未提交到药企的任务数
|
|
|
- long csoNeedToCheckCount = taskList.stream()
|
|
|
- .filter(t -> "2".equals(t.getTaskStatus()) ||
|
|
|
- ("3".equals(t.getTaskStatus()) && (reportWaitingCheckStatus.contains(t.getReportOneApprovalStatus()))))
|
|
|
- .count();
|
|
|
+ // 统计cso未审核 和审核通过的还未提交到药企的任务数
|
|
|
+ long csoNeedToCheckCount = taskList.stream()
|
|
|
+ .filter(t -> "2".equals(t.getTaskStatus()) ||
|
|
|
+ ("3".equals(t.getTaskStatus()) && (reportWaitingCheckStatus.contains(t.getReportOneApprovalStatus()))))
|
|
|
+ .count();
|
|
|
|
|
|
- // 如果有发包方未审核的不能中止
|
|
|
- if (drugNeedToCheckCount != 0L || csoNeedToCheckCount != 0L) {
|
|
|
- scorePackage.setStopStatus(WmScorePackage.PackageStopStatus.NOTHING);
|
|
|
+ // 如果有发包方未审核的不能中止
|
|
|
+ if (drugNeedToCheckCount != 0L || csoNeedToCheckCount != 0L) {
|
|
|
+ scorePackage.setStopStatus(WmScorePackage.PackageStopStatus.NOTHING);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ // 没有关联上级包的情况
|
|
|
+ // 统计待审核任务数
|
|
|
+ long toApproveCount = taskList.stream().filter(t -> TaskStatusEnum.UNDER_REVIEW.val().equals(t.getTaskStatus())).count();
|
|
|
+ if (toApproveCount > 0) {
|
|
|
+ scorePackage.setStopStatus(WmScorePackage.PackageStopStatus.NOTHING);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
// 封装报告记录
|