|
|
@@ -365,9 +365,9 @@ public class WebMediatorImpl implements ViewMediator {
|
|
|
}
|
|
|
// 测评机构视图
|
|
|
else if(userRepo.getByID(userId).getRoleList().stream().anyMatch(role -> role.getName().equals(RoleType.AGENCY.getName()))){
|
|
|
- Optional<TaskToUser> taskToUserOptional = task.get().getAcceptedUserList().stream().filter(taskToUser -> taskToUser.getUserId().equals(userId)).findFirst();
|
|
|
- if(!taskToUserOptional.isPresent())
|
|
|
- throw new HttpBadRequestException("当前用户没有接收此任务!");
|
|
|
+// Optional<TaskToUser> taskToUserOptional = task.get().getAcceptedUserList().stream().filter(taskToUser -> taskToUser.getUserId().equals(userId)).findFirst();
|
|
|
+// if(!taskToUserOptional.isPresent())
|
|
|
+// throw new HttpBadRequestException("当前用户没有接收此任务!");
|
|
|
|
|
|
taskToUserVOS = task.get().getAcceptedUserList().stream()
|
|
|
.filter(taskToUser -> taskToUser.getUserId().equals(userId)).map(taskToUser -> {
|
|
|
@@ -547,10 +547,16 @@ public class WebMediatorImpl implements ViewMediator {
|
|
|
//区域管理员或系统管理员视角
|
|
|
if (user.getRoleList().stream().anyMatch(role -> role.getName().equals("SystemAdministrator"))
|
|
|
||(user.getRegionalManager()!=null&&user.getId().equals(project.getRegionalManagerId()))){
|
|
|
+ if (task.getParticipantHasCommittedCount() == task.getParticipantCount() && task.getStatus() == CrowdTestTaskStatus.HAS_RECEIVED){
|
|
|
+ task.setStatus(CrowdTestTaskStatus.HAS_COMMITED);
|
|
|
+ taskOperationControl.setConfirmFinish(true);
|
|
|
+ }
|
|
|
if (task.getStatus()<CrowdTestTaskStatus.HAS_RECEIVED){
|
|
|
taskOperationControl.setUpdate(true);
|
|
|
- }else if (task.getStatus()==CrowdTestTaskStatus.HAS_COMMITED){
|
|
|
- taskOperationControl.setConfirmFinish(true);
|
|
|
+ }
|
|
|
+ taskOperationControl.setFinish(false);
|
|
|
+ if (task.getStatus() == CrowdTestTaskStatus.HAS_FINISHED){
|
|
|
+ taskOperationControl.setConfirmFinish(false);
|
|
|
}
|
|
|
}
|
|
|
//评测机构视角
|
|
|
@@ -568,10 +574,10 @@ public class WebMediatorImpl implements ViewMediator {
|
|
|
taskOperationControl.setReject(true);
|
|
|
} else if (task.getStatus() == CrowdTestTaskStatus.HAS_RECEIVED){
|
|
|
taskOperationControl.setUploadReport(true);
|
|
|
- if (task.getParticipantHasCommittedCount() == task.getAcceptedCount()){
|
|
|
+ if (taskToUserOptional.get().getHasReport() == 1 && taskToUserOptional.get().getIsCommitted() == 0){
|
|
|
taskOperationControl.setFinish(true);
|
|
|
- }
|
|
|
- if (taskToUserOptional.get().getIsCommitted() == 1){
|
|
|
+ }else if (taskToUserOptional.get().getHasReport() == 1 && taskToUserOptional.get().getIsCommitted() == 1){
|
|
|
+ taskOperationControl.setFinish(false);
|
|
|
taskOperationControl.setUploadReport(false);
|
|
|
}
|
|
|
} else if (task.getStatus() == CrowdTestTaskStatus.HAS_COMMITED){
|
|
|
@@ -582,8 +588,9 @@ public class WebMediatorImpl implements ViewMediator {
|
|
|
taskOperationControl.setReceive(true);
|
|
|
if (task.getStatus()==CrowdTestTaskStatus.HAS_RELEASED){
|
|
|
// 定向的
|
|
|
- if (task.getDistributionType()==0)
|
|
|
+ if (task.getDistributionType()==0) {
|
|
|
taskOperationControl.setReject(true);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|