|
@@ -155,12 +155,12 @@ public class CrowdTaskServiceImpl implements CrowdTaskService {
|
|
|
CrowdTestProject project = projectRepo.getByProjectCode(projectCode);
|
|
|
String taskCode = GenerateFlowCodeUtil.generateFlowCode("TASK-" + ProjectType.getCode(command.getType()));
|
|
|
task.create(taskCode);
|
|
|
- // 生成任务导出链接
|
|
|
- String exportTaskUrl = this.exportTask(projectCode, task.getCode(), userId);
|
|
|
- task.setExportUrl(exportTaskUrl);
|
|
|
-
|
|
|
project.addTask(task);
|
|
|
projectRepo.saveCrowdTestProject(project);
|
|
|
+
|
|
|
+// // 生成任务导出链接
|
|
|
+// String exportTaskUrl = this.exportTask(projectCode, task.getCode(), userId);
|
|
|
+// task.setExportUrl(exportTaskUrl);
|
|
|
return getTaskDetails(projectCode, taskCode, userId);
|
|
|
}
|
|
|
|
|
@@ -186,9 +186,9 @@ public class CrowdTaskServiceImpl implements CrowdTaskService {
|
|
|
updateTask.update();
|
|
|
project.removeTask(task.get());
|
|
|
|
|
|
- // 重新生成任务导出链接
|
|
|
- String exportTaskUrl = this.exportTask(projectCode, updateTask.getCode(), userId);
|
|
|
- updateTask.setExportUrl(exportTaskUrl);
|
|
|
+// // 重新生成任务导出链接
|
|
|
+// String exportTaskUrl = this.exportTask(projectCode, updateTask.getCode(), userId);
|
|
|
+// updateTask.setExportUrl(exportTaskUrl);
|
|
|
|
|
|
project.addTask(updateTask);
|
|
|
projectRepo.saveCrowdTestProject(project);
|
|
@@ -382,17 +382,16 @@ public class CrowdTaskServiceImpl implements CrowdTaskService {
|
|
|
|
|
|
// 为项目信息赋予导入的默认值
|
|
|
setProjectDefaultValueToPrivateCloud(crowdTestProject, user);
|
|
|
-
|
|
|
- System.out.println(crowdTestProject.toString());
|
|
|
+ // 项目的剩余预算需要重新计算,根据任务报价
|
|
|
|
|
|
List<CrowdTestTask> crowdTestTaskList = projectDetailsDTO.getTaskList().stream().map(CrowdTaskVO::toCrowdTestTask).collect(Collectors.toList());
|
|
|
// 为任务信息赋予导入的默认值
|
|
|
- crowdTestTaskList.forEach(crowdTestTask -> {
|
|
|
- setTaskDefaultValueToPrivateCloud(crowdTestProject.getCode(), crowdTestTask, user);
|
|
|
- System.out.println(crowdTestTask.toString());
|
|
|
- });
|
|
|
- // 为测试项目赋予测试类型
|
|
|
+ crowdTestTaskList.forEach(crowdTestTask -> setTaskDefaultValueToPrivateCloud(crowdTestProject.getCode(), crowdTestTask));
|
|
|
+ // 所有任务花费的金额
|
|
|
+ double costPrice = crowdTestTaskList.stream().mapToDouble(CrowdTestTask::getQuotedPrice).sum();
|
|
|
+ // 为测试项目赋予测试类型、以及剩余预算
|
|
|
crowdTestProject.setType(crowdTestTaskList.get(0).getType());
|
|
|
+ crowdTestProject.setRestPrice(crowdTestProject.getQuotedPrice() - costPrice);
|
|
|
// 将任务添加到项目中
|
|
|
crowdTestProject.setCrowdTestTaskList(crowdTestTaskList);
|
|
|
|
|
@@ -440,18 +439,14 @@ public class CrowdTaskServiceImpl implements CrowdTaskService {
|
|
|
* 为任务信息赋予导入的默认值
|
|
|
* @param projectCode
|
|
|
* @param crowdTestTask
|
|
|
- * @param user
|
|
|
*/
|
|
|
- private void setTaskDefaultValueToPrivateCloud(String projectCode, CrowdTestTask crowdTestTask, User user) {
|
|
|
+ private void setTaskDefaultValueToPrivateCloud(String projectCode, CrowdTestTask crowdTestTask) {
|
|
|
crowdTestTask.setCode(masterName + "-" + System.currentTimeMillis() + "-" + crowdTestTask.getCode());
|
|
|
crowdTestTask.setCrowdTestProjectCode(projectCode);
|
|
|
crowdTestTask.setEvaluationAgencyId(null);
|
|
|
crowdTestTask.setDistributionType(DistributeType.SQUARE.getId());
|
|
|
-// crowdTestTask.setParticipantCount(20);
|
|
|
crowdTestTask.setAcceptedCount(0);
|
|
|
crowdTestTask.setParticipantHasCommittedCount(0);
|
|
|
-// crowdTestTask.setQuotedPrice(0d);
|
|
|
-// crowdTestTask.setFixedPrice(0d);
|
|
|
crowdTestTask.setFullStatus(0);
|
|
|
crowdTestTask.setStatus(CrowdTestTaskStatus.HAS_RELEASED);
|
|
|
// 判断默认的测试类型MCZC是否存在
|