|  | @@ -1,26 +1,11 @@
 | 
	
		
			
				|  |  |  package com.mooctest.crowd.domain.controller;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -import com.google.gson.Gson;
 | 
	
		
			
				|  |  | -import com.mooctest.crowd.domain.domainobject.CrowdTestProject;
 | 
	
		
			
				|  |  | -import com.mooctest.crowd.domain.domainobject.CrowdTestReport;
 | 
	
		
			
				|  |  | -import com.mooctest.crowd.domain.domainobject.CrowdTestTask;
 | 
	
		
			
				|  |  | -import com.mooctest.crowd.domain.domainobject.User;
 | 
	
		
			
				|  |  |  import com.mooctest.crowd.domain.repository.CrowdTestProjectRepo;
 | 
	
		
			
				|  |  |  import com.mooctest.crowd.domain.repository.UserRepo;
 | 
	
		
			
				|  |  |  import org.springframework.beans.factory.annotation.Autowired;
 | 
	
		
			
				|  |  | -import org.springframework.web.bind.annotation.PathVariable;
 | 
	
		
			
				|  |  |  import org.springframework.web.bind.annotation.RequestMapping;
 | 
	
		
			
				|  |  | -import org.springframework.web.bind.annotation.RequestMethod;
 | 
	
		
			
				|  |  |  import org.springframework.web.bind.annotation.RestController;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -import java.sql.Timestamp;
 | 
	
		
			
				|  |  | -import java.util.ArrayList;
 | 
	
		
			
				|  |  | -import java.util.Date;
 | 
	
		
			
				|  |  | -import java.util.List;
 | 
	
		
			
				|  |  | -import java.util.regex.Matcher;
 | 
	
		
			
				|  |  | -import java.util.regex.Pattern;
 | 
	
		
			
				|  |  | -import java.util.regex.PatternSyntaxException;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |  /**
 | 
	
		
			
				|  |  |   * @author guochao
 | 
	
		
			
				|  |  |   * @date 2019-07-27 15:46
 | 
	
	
		
			
				|  | @@ -36,554 +21,554 @@ public class CrowdTestProjectController {
 | 
	
		
			
				|  |  |      @Autowired
 | 
	
		
			
				|  |  |      private UserRepo userRepo;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "findById/{crowdTestProjectId}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String getCrowdTestProjectById(@PathVariable("crowdTestProjectId") Long crowdTestProjectId){
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByID(crowdTestProjectId);
 | 
	
		
			
				|  |  | -        return crowdTestProject.toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "findByProjectCode/{crowdTestProjectCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String getCrowdTestProjectByProjectCode(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode){
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -        return crowdTestProject.toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "findByUserId/{userId}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String getAllCrowdTestProjectByUserId(@PathVariable("userId") Long userId){
 | 
	
		
			
				|  |  | -        List<CrowdTestProject> allCrowdTestProject = crowdTestProjectRepo.getCrowdListByUserId(userId);
 | 
	
		
			
				|  |  | -        return allCrowdTestProject.toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "findByRMId/{regionalManagerId}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String getAllCrowdTestProjectByRMId(@PathVariable("regionalManagerId") Long regionalManagerId){
 | 
	
		
			
				|  |  | -        List<CrowdTestProject> allCrowdTestProject = crowdTestProjectRepo.getCrowdListByRegionalManagerId(regionalManagerId);
 | 
	
		
			
				|  |  | -        return allCrowdTestProject.toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "findAll", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String getAllCrowdTestProject(){
 | 
	
		
			
				|  |  | -        List<CrowdTestProject> allCrowdTestProject = crowdTestProjectRepo.getAllCrowdTestProject();
 | 
	
		
			
				|  |  | -        return allCrowdTestProject.toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 删除项目(普通用户)
 | 
	
		
			
				|  |  | -     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | -     * @return
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "deleteProject/{userId}/{crowdTestProjectCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String deleteCrowdTestProjectByProjectCode(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,@PathVariable("userId") Long userId) {
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        User user = userRepo.getByID(userId);
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProjectResult = crowdTestProject.removeCrowdTestProject(user);
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | -        return "success";
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 删除任务(区域管理员)
 | 
	
		
			
				|  |  | -     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | -     * @param crowdTestTaskCode
 | 
	
		
			
				|  |  | -     * @return
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "deleteTask/{userId}/{crowdTestProjectCode}/{crowdTestTaskCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String deleteCrowdTestTask(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,
 | 
	
		
			
				|  |  | -                                      @PathVariable("crowdTestTaskCode") String crowdTestTaskCode,
 | 
	
		
			
				|  |  | -                                      @PathVariable("userId") Long userId) {
 | 
	
		
			
				|  |  | -        User user = userRepo.getByID(userId);
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProjectResult = crowdTestProject.removeCrowdTestTask(crowdTestTaskCode,user);
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | -        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 删除任务报告(测评机构)
 | 
	
		
			
				|  |  | -     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | -     * @param crowdTestTaskCode
 | 
	
		
			
				|  |  | -     * @param crowdTestReportCode
 | 
	
		
			
				|  |  | -     * @return
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "deleteReport/{userId}/{crowdTestProjectCode}/{crowdTestTaskCode}/{crowdTestReportCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String deleteCrowdTestReport(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,
 | 
	
		
			
				|  |  | -                                        @PathVariable("crowdTestTaskCode") String crowdTestTaskCode,
 | 
	
		
			
				|  |  | -                                        @PathVariable("crowdTestReportCode") String crowdTestReportCode,
 | 
	
		
			
				|  |  | -                                        @PathVariable("userId") Long userId) {
 | 
	
		
			
				|  |  | -        User user = userRepo.getByID(userId);
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProjectResult = crowdTestProject.removeCrowdTestReport(crowdTestTaskCode,crowdTestReportCode,user);
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | -        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 删除项目报告(区域管理员)
 | 
	
		
			
				|  |  | -     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | -     * @return
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "deleteProjectReport/{userId}/{crowdTestProjectCode}/{crowdTestProjectReportCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String deleteCrowdTestReport(@PathVariable("userId") Long userId,
 | 
	
		
			
				|  |  | -                                        @PathVariable("crowdTestProjectCode") String crowdTestProjectCode,
 | 
	
		
			
				|  |  | -                                        @PathVariable("crowdTestProjectReportCode") String crowdTestProjectReportCode) {
 | 
	
		
			
				|  |  | -        User user = userRepo.getByID(userId);
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProjectResult = crowdTestProject.removeCrowdTestProjectReport(crowdTestProjectReportCode,user);
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | -        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "deleteListByProjectCode/{crowdTestProjectCode1}/{crowdTestProjectCode2}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public void deleteCrowdTestProjectByProjectCode(@PathVariable("crowdTestProjectCode1") String crowdTestProjectCode1,
 | 
	
		
			
				|  |  | -                                                    @PathVariable("crowdTestProjectCode2") String crowdTestProjectCode2) {
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject1 = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode1);
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject2 = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode2);
 | 
	
		
			
				|  |  | -        List<CrowdTestProject> crowdTestProjectList = new ArrayList<>();
 | 
	
		
			
				|  |  | -        crowdTestProjectList.add(crowdTestProject1);
 | 
	
		
			
				|  |  | -        crowdTestProjectList.add(crowdTestProject2);
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.removeCrowdTestProjectList(crowdTestProjectList);
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 对项目聚合根的操作
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "modifyProject/{crowdTestProjectCode}/{linkMan}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public void modifyCrowdTestProject(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,@PathVariable("linkMan") String linkMan){
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProjectModify;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -        Gson gson = new Gson();
 | 
	
		
			
				|  |  | -        crowdTestProjectModify = gson.fromJson(gson.toJson(crowdTestProject), CrowdTestProject.class);
 | 
	
		
			
				|  |  | -        crowdTestProjectModify.setLinkMan(linkMan);
 | 
	
		
			
				|  |  | -        CrowdTestProject updateCrowdTestProject = crowdTestProject.updateCrowdTestProject(crowdTestProjectModify);
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(updateCrowdTestProject);
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "modifyTask/{crowdTestProjectCode}/{crowdTestTaskCode}/{taskName}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public void modifyCrowdTestTask(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode, @PathVariable("crowdTestTaskCode") String crowdTestTaskCode,
 | 
	
		
			
				|  |  | -                                      @PathVariable("taskName") String taskName){
 | 
	
		
			
				|  |  | -        CrowdTestTask crowdTestTaskModify = new CrowdTestTask();
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -        List<CrowdTestTask> crowdTestTaskList = crowdTestProject.getCrowdTestTaskList();
 | 
	
		
			
				|  |  | -        for(CrowdTestTask crowdTestTaskSelect : crowdTestTaskList){
 | 
	
		
			
				|  |  | -            if(crowdTestTaskCode.equals(crowdTestTaskSelect.getCode())){
 | 
	
		
			
				|  |  | -                // 使用Gson序列化进行深拷贝
 | 
	
		
			
				|  |  | -                Gson gson = new Gson();
 | 
	
		
			
				|  |  | -                crowdTestTaskModify = gson.fromJson(gson.toJson(crowdTestTaskSelect), CrowdTestTask.class);
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -        crowdTestTaskModify.setName(taskName);
 | 
	
		
			
				|  |  | -        CrowdTestProject updateCrowdTestProject = crowdTestProject.updateCrowdTestTask(crowdTestTaskCode, crowdTestTaskModify);
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(updateCrowdTestProject);
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -//    @RequestMapping(value = "modifyReport/{crowdTestProjectCode}/{crowdTestTaskCode}/{crowdTestReportCode}/{reportName}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -//    public void modifyCrowdTestReport(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode, @PathVariable("crowdTestTaskCode") String crowdTestTaskCode,
 | 
	
		
			
				|  |  | -//                                      @PathVariable("crowdTestReportCode") String crowdTestReportCode, @PathVariable("reportName") String reportName){
 | 
	
		
			
				|  |  | -//        CrowdTestReport crowdTestReportModify = new CrowdTestReport();
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "findById/{crowdTestProjectId}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String getCrowdTestProjectById(@PathVariable("crowdTestProjectId") Long crowdTestProjectId){
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByID(crowdTestProjectId);
 | 
	
		
			
				|  |  | +//        return crowdTestProject.toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "findByProjectCode/{crowdTestProjectCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String getCrowdTestProjectByProjectCode(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode){
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//        return crowdTestProject.toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "findByUserId/{userId}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String getAllCrowdTestProjectByUserId(@PathVariable("userId") Long userId){
 | 
	
		
			
				|  |  | +//        List<CrowdTestProject> allCrowdTestProject = crowdTestProjectRepo.getCrowdListByUserId(userId);
 | 
	
		
			
				|  |  | +//        return allCrowdTestProject.toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "findByRMId/{regionalManagerId}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String getAllCrowdTestProjectByRMId(@PathVariable("regionalManagerId") Long regionalManagerId){
 | 
	
		
			
				|  |  | +//        List<CrowdTestProject> allCrowdTestProject = crowdTestProjectRepo.getCrowdListByRegionalManagerId(regionalManagerId);
 | 
	
		
			
				|  |  | +//        return allCrowdTestProject.toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "findAll", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String getAllCrowdTestProject(){
 | 
	
		
			
				|  |  | +//        List<CrowdTestProject> allCrowdTestProject = crowdTestProjectRepo.getAllCrowdTestProject();
 | 
	
		
			
				|  |  | +//        return allCrowdTestProject.toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 删除项目(普通用户)
 | 
	
		
			
				|  |  | +//     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | +//     * @return
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "deleteProject/{userId}/{crowdTestProjectCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String deleteCrowdTestProjectByProjectCode(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,@PathVariable("userId") Long userId) {
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        User user = userRepo.getByID(userId);
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProjectResult = crowdTestProject.removeCrowdTestProject(user);
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | +//        return "success";
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 删除任务(区域管理员)
 | 
	
		
			
				|  |  | +//     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | +//     * @param crowdTestTaskCode
 | 
	
		
			
				|  |  | +//     * @return
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "deleteTask/{userId}/{crowdTestProjectCode}/{crowdTestTaskCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String deleteCrowdTestTask(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,
 | 
	
		
			
				|  |  | +//                                      @PathVariable("crowdTestTaskCode") String crowdTestTaskCode,
 | 
	
		
			
				|  |  | +//                                      @PathVariable("userId") Long userId) {
 | 
	
		
			
				|  |  | +//        User user = userRepo.getByID(userId);
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProjectResult = crowdTestProject.removeCrowdTestTask(crowdTestTaskCode,user);
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | +//        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 删除任务报告(测评机构)
 | 
	
		
			
				|  |  | +//     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | +//     * @param crowdTestTaskCode
 | 
	
		
			
				|  |  | +//     * @param crowdTestReportCode
 | 
	
		
			
				|  |  | +//     * @return
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "deleteReport/{userId}/{crowdTestProjectCode}/{crowdTestTaskCode}/{crowdTestReportCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String deleteCrowdTestReport(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,
 | 
	
		
			
				|  |  | +//                                        @PathVariable("crowdTestTaskCode") String crowdTestTaskCode,
 | 
	
		
			
				|  |  | +//                                        @PathVariable("crowdTestReportCode") String crowdTestReportCode,
 | 
	
		
			
				|  |  | +//                                        @PathVariable("userId") Long userId) {
 | 
	
		
			
				|  |  | +//        User user = userRepo.getByID(userId);
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProjectResult = crowdTestProject.removeCrowdTestReport(crowdTestTaskCode,crowdTestReportCode,user);
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | +//        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 删除项目报告(区域管理员)
 | 
	
		
			
				|  |  | +//     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | +//     * @return
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "deleteProjectReport/{userId}/{crowdTestProjectCode}/{crowdTestProjectReportCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String deleteCrowdTestReport(@PathVariable("userId") Long userId,
 | 
	
		
			
				|  |  | +//                                        @PathVariable("crowdTestProjectCode") String crowdTestProjectCode,
 | 
	
		
			
				|  |  | +//                                        @PathVariable("crowdTestProjectReportCode") String crowdTestProjectReportCode) {
 | 
	
		
			
				|  |  | +//        User user = userRepo.getByID(userId);
 | 
	
		
			
				|  |  |  //        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -//        for(CrowdTestTask crowdTestTask : crowdTestProject.getCrowdTestTaskList()){
 | 
	
		
			
				|  |  | -//            if(crowdTestTaskCode.equals(crowdTestTask.getCode())){
 | 
	
		
			
				|  |  | -//                for(CrowdTestReport crowdTestReport : crowdTestTask.getCrowdTestReportList()){
 | 
	
		
			
				|  |  | -//                    if(crowdTestReportCode.equals(crowdTestReport.getCode())){
 | 
	
		
			
				|  |  | -//                        Gson gson = new Gson();
 | 
	
		
			
				|  |  | -//                        crowdTestReportModify = gson.fromJson(gson.toJson(crowdTestReport), CrowdTestReport.class);
 | 
	
		
			
				|  |  | -//                    }
 | 
	
		
			
				|  |  | -//                }
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProjectResult = crowdTestProject.removeCrowdTestProjectReport(crowdTestProjectReportCode,user);
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | +//        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "deleteListByProjectCode/{crowdTestProjectCode1}/{crowdTestProjectCode2}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public void deleteCrowdTestProjectByProjectCode(@PathVariable("crowdTestProjectCode1") String crowdTestProjectCode1,
 | 
	
		
			
				|  |  | +//                                                    @PathVariable("crowdTestProjectCode2") String crowdTestProjectCode2) {
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject1 = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode1);
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject2 = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode2);
 | 
	
		
			
				|  |  | +//        List<CrowdTestProject> crowdTestProjectList = new ArrayList<>();
 | 
	
		
			
				|  |  | +//        crowdTestProjectList.add(crowdTestProject1);
 | 
	
		
			
				|  |  | +//        crowdTestProjectList.add(crowdTestProject2);
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.removeCrowdTestProjectList(crowdTestProjectList);
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 对项目聚合根的操作
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "modifyProject/{crowdTestProjectCode}/{linkMan}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public void modifyCrowdTestProject(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,@PathVariable("linkMan") String linkMan){
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProjectModify;
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//        Gson gson = new Gson();
 | 
	
		
			
				|  |  | +//        crowdTestProjectModify = gson.fromJson(gson.toJson(crowdTestProject), CrowdTestProject.class);
 | 
	
		
			
				|  |  | +//        crowdTestProjectModify.setLinkMan(linkMan);
 | 
	
		
			
				|  |  | +//        CrowdTestProject updateCrowdTestProject = crowdTestProject.updateCrowdTestProject(crowdTestProjectModify);
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.saveCrowdTestProject(updateCrowdTestProject);
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "modifyTask/{crowdTestProjectCode}/{crowdTestTaskCode}/{taskName}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public void modifyCrowdTestTask(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode, @PathVariable("crowdTestTaskCode") String crowdTestTaskCode,
 | 
	
		
			
				|  |  | +//                                      @PathVariable("taskName") String taskName){
 | 
	
		
			
				|  |  | +//        CrowdTestTask crowdTestTaskModify = new CrowdTestTask();
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//        List<CrowdTestTask> crowdTestTaskList = crowdTestProject.getCrowdTestTaskList();
 | 
	
		
			
				|  |  | +//        for(CrowdTestTask crowdTestTaskSelect : crowdTestTaskList){
 | 
	
		
			
				|  |  | +//            if(crowdTestTaskCode.equals(crowdTestTaskSelect.getCode())){
 | 
	
		
			
				|  |  | +//                // 使用Gson序列化进行深拷贝
 | 
	
		
			
				|  |  | +//                Gson gson = new Gson();
 | 
	
		
			
				|  |  | +//                crowdTestTaskModify = gson.fromJson(gson.toJson(crowdTestTaskSelect), CrowdTestTask.class);
 | 
	
		
			
				|  |  |  //            }
 | 
	
		
			
				|  |  |  //        }
 | 
	
		
			
				|  |  | -//        crowdTestReportModify.setName(reportName);
 | 
	
		
			
				|  |  | -//        CrowdTestProject updateCrowdTestProject = crowdTestProject.updateCrowdTestReport(crowdTestTaskCode, crowdTestReportCode, crowdTestReportModify);
 | 
	
		
			
				|  |  | +//        crowdTestTaskModify.setName(taskName);
 | 
	
		
			
				|  |  | +//        CrowdTestProject updateCrowdTestProject = crowdTestProject.updateCrowdTestTask(crowdTestTaskCode, crowdTestTaskModify);
 | 
	
		
			
				|  |  |  //        crowdTestProjectRepo.saveCrowdTestProject(updateCrowdTestProject);
 | 
	
		
			
				|  |  |  //    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /*普通用户DO*/
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 新建项目(普通用户)
 | 
	
		
			
				|  |  | -     * @param userId
 | 
	
		
			
				|  |  | -     * @param projectName
 | 
	
		
			
				|  |  | -     * @return
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "createProject/{userId}/{projectName}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String createCrowdTestProject(@PathVariable("userId") Long userId,@PathVariable("projectName") String projectName){
 | 
	
		
			
				|  |  | -        //数据准备
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = new CrowdTestProject();
 | 
	
		
			
				|  |  | -        crowdTestProject.setCode("PRO"+System.currentTimeMillis());
 | 
	
		
			
				|  |  | -        crowdTestProject.setName(projectName);
 | 
	
		
			
				|  |  | -        crowdTestProject.setProjectDistributionTypeId(1L);
 | 
	
		
			
				|  |  | -        crowdTestProject.setLinkMan("郭超");
 | 
	
		
			
				|  |  | -        crowdTestProject.setPlatform("IOS");
 | 
	
		
			
				|  |  | -        crowdTestProject.setType("安卓测试");
 | 
	
		
			
				|  |  | -        crowdTestProject.setDescription("测试内容");
 | 
	
		
			
				|  |  | -        crowdTestProject.setLinkManMobile("13657094936");
 | 
	
		
			
				|  |  | -        crowdTestProject.setQuotedPrice(200.00);
 | 
	
		
			
				|  |  | -        crowdTestProject.setDeadTime(new Timestamp(getNextDay(new Date(System.currentTimeMillis()),1).getTime()));
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        User user = userRepo.getByID(userId);
 | 
	
		
			
				|  |  | -        crowdTestProject.setUserId(user.getId());
 | 
	
		
			
				|  |  | -        crowdTestProject.setDistributionProvince(user.getProvince());
 | 
	
		
			
				|  |  | -        crowdTestProject.setDistributionCity(user.getCity());
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProjectResult = crowdTestProject.createCrowdTestProject(user);
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | -        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 发布项目(普通用户)
 | 
	
		
			
				|  |  | -     * @param userId
 | 
	
		
			
				|  |  | -     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | -     * @return
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "releaseProject/{userId}/{crowdTestProjectCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String releaseCrowdTestProject(@PathVariable("userId") Long userId,@PathVariable("crowdTestProjectCode") String crowdTestProjectCode){
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -        User user = userRepo.getByID(userId);
 | 
	
		
			
				|  |  | -        CrowdTestProject  crowdTestProjectResult = crowdTestProject.releaseCrowdTestProject(user);
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | -        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 对区域管理员的操作
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 接收项目(区域管理员)
 | 
	
		
			
				|  |  | -     * @param userForRegionalManagerId
 | 
	
		
			
				|  |  | -     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | -     * @return
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "receiveProject/{userForRegionalManagerId}/{crowdTestProjectCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String receiveTaskByProjectCode(@PathVariable("userForRegionalManagerId") Long userForRegionalManagerId, @PathVariable("crowdTestProjectCode") String crowdTestProjectCode) {
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        User userForRegionalManager = userRepo.getByID(userForRegionalManagerId);
 | 
	
		
			
				|  |  | -//        RegionalManager regionalManager = userForRegionalManager.getRegionalManager();
 | 
	
		
			
				|  |  | -//        CrowdTestProject crowdTestProjectResult = regionalManager.receiveProject(crowdTestProject);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProjectResult = crowdTestProject.receiveProject(userForRegionalManager);
 | 
	
		
			
				|  |  | -        crowdTestProjectResult.setRegionalManagerId(userForRegionalManagerId);
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProject);
 | 
	
		
			
				|  |  | -        return crowdTestProjectResult.toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 项目中新建任务(区域管理员拆分项目)
 | 
	
		
			
				|  |  | -     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | -     * @param taskName
 | 
	
		
			
				|  |  | -     * @return
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "createTask/{regionalManagerId}/{crowdTestProjectCode}/{taskName}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String createCrowdTestTask(@PathVariable("regionalManagerId") Long regionalManagerId,@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,@PathVariable("taskName") String taskName){
 | 
	
		
			
				|  |  | -        //数据准备
 | 
	
		
			
				|  |  | -        CrowdTestTask crowdTestTask = new CrowdTestTask();
 | 
	
		
			
				|  |  | -        crowdTestTask.setCode(crowdTestProjectCode+"_TASK"+System.currentTimeMillis());
 | 
	
		
			
				|  |  | -        crowdTestTask.setName(taskName);
 | 
	
		
			
				|  |  | -        crowdTestTask.setCrowdTestProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -        crowdTestTask.setType("接口测试");
 | 
	
		
			
				|  |  | -        crowdTestTask.setDescription("测试任务");
 | 
	
		
			
				|  |  | -        crowdTestTask.setDistributionType(0L);
 | 
	
		
			
				|  |  | -        crowdTestTask.setQuotedPrice(200.00);
 | 
	
		
			
				|  |  | -        crowdTestTask.setDeadTime(new Timestamp(getNextDay(new Date(System.currentTimeMillis()),1).getTime()));
 | 
	
		
			
				|  |  | -        crowdTestTask.setCreateTime(new Timestamp(System.currentTimeMillis()));
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        //具体操作
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        User userForRegionalManager = userRepo.getByID(regionalManagerId);
 | 
	
		
			
				|  |  | -//        RegionalManager regionalManager = userForRegionalManager.getRegionalManager();
 | 
	
		
			
				|  |  | -//        CrowdTestProject crowdTestProjectResult = regionalManager.createCrowdTestTask(crowdTestProject, crowdTestTask);
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProjectResult = crowdTestProject.createCrowdTestTask(crowdTestTask, userForRegionalManager);
 | 
	
		
			
				|  |  | -        crowdTestTask.setDistributionProvince(crowdTestProject.getDistributionProvince());
 | 
	
		
			
				|  |  | -        crowdTestTask.setDistributionCity(crowdTestProject.getDistributionCity());
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | -        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 发布任务(区域管理员)
 | 
	
		
			
				|  |  | -     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | -     * @return
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "releaseTask/{regionalManagerId}/{crowdTestProjectCode}/{crowdTestTaskCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String releaseCrowdTestTask(@PathVariable("regionalManagerId") Long regionalManagerId,@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,
 | 
	
		
			
				|  |  | -                                       @PathVariable("crowdTestTaskCode") String crowdTestTaskCode){
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -        User user = userRepo.getByID(regionalManagerId);
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProjectResult = crowdTestProject.releaseCrowdTestTask(crowdTestTaskCode, user);
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | -        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 对测评机构的操作
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 接收任务(测评机构)
 | 
	
		
			
				|  |  | -     * @param userForEvaluationAgencyId
 | 
	
		
			
				|  |  | -     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | -     * @param crowdTestTaskCode
 | 
	
		
			
				|  |  | -     * @return
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "receiveTask/{userForEvaluationAgencyId}/{crowdTestProjectCode}/{crowdTestTaskCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String receiveTaskByProjectCode(@PathVariable("userForEvaluationAgencyId") Long userForEvaluationAgencyId, @PathVariable("crowdTestProjectCode") String crowdTestProjectCode,
 | 
	
		
			
				|  |  | -                                                    @PathVariable("crowdTestTaskCode") String crowdTestTaskCode) {
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        User userForEvaluationAgency = userRepo.getByID(userForEvaluationAgencyId);
 | 
	
		
			
				|  |  | -//        CrowdTestProject crowdTestProjectResult = userForEvaluationAgency.receiveTask(crowdTestProject, crowdTestTaskCode);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProjectResult = crowdTestProject.receiveTask(crowdTestTaskCode, userForEvaluationAgency);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | -        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 项目的任务中新建报告(测评机构)
 | 
	
		
			
				|  |  | -     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | -     * @param reportName
 | 
	
		
			
				|  |  | -     * @return
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "createReport/{userForEvaluationAgencyId}/{crowdTestProjectCode}/{crowdTestTaskCode}/{reportName}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String createCrowdTestReport(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,@PathVariable("userForEvaluationAgencyId") Long userForEvaluationAgencyId,
 | 
	
		
			
				|  |  | -                                        @PathVariable("reportName") String reportName, @PathVariable("crowdTestTaskCode") String crowdTestTaskCode){
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        //report数据准备
 | 
	
		
			
				|  |  | -        CrowdTestReport crowdTestReport = new CrowdTestReport();
 | 
	
		
			
				|  |  | -        crowdTestReport.setCode(crowdTestTaskCode+"_REP"+System.currentTimeMillis());
 | 
	
		
			
				|  |  | -        crowdTestReport.setName(reportName);
 | 
	
		
			
				|  |  | -        crowdTestReport.setCreateTime(new Timestamp(System.currentTimeMillis()));
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -        User userForEvaluationAgency = userRepo.getByID(userForEvaluationAgencyId);
 | 
	
		
			
				|  |  | -//        CrowdTestProject crowdTestProjectResult = userForEvaluationAgency.createCrowdTestReport(crowdTestProject, crowdTestTaskCode, crowdTestReport);
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProjectResult = crowdTestProject.createCrowdTestReport(crowdTestTaskCode, crowdTestReport, userForEvaluationAgency);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | -        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 提交任务(测评机构)
 | 
	
		
			
				|  |  | -     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | -     * @param userForEvaluationAgencyId
 | 
	
		
			
				|  |  | -     * @param crowdTestTaskCode
 | 
	
		
			
				|  |  | -     * @return
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "commitTask/{userForEvaluationAgencyId}/{crowdTestProjectCode}/{crowdTestTaskCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String commitCrowdTestReport(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,@PathVariable("userForEvaluationAgencyId") Long userForEvaluationAgencyId,
 | 
	
		
			
				|  |  | -                                        @PathVariable("crowdTestTaskCode") String crowdTestTaskCode){
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -        User userForEvaluationAgency = userRepo.getByID(userForEvaluationAgencyId);
 | 
	
		
			
				|  |  | -//        CrowdTestProject crowdTestProjectResult = userForEvaluationAgency.commitCrowdTestTask(crowdTestProject, crowdTestTaskCode);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProjectResult = crowdTestProject.commitCrowdTestTask(crowdTestTaskCode, userForEvaluationAgency);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | -        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 区域管理员的操作
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 确认结束任务(区域管理员)
 | 
	
		
			
				|  |  | -     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | -     * @return
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "finishTask/{regionalManagerId}/{crowdTestProjectCode}/{crowdTestTaskCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String commitCrowdTestTask(@PathVariable("regionalManagerId") Long regionalManagerId,@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,
 | 
	
		
			
				|  |  | -                                      @PathVariable("crowdTestTaskCode") String crowdTestTaskCode){
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -        User user = userRepo.getByID(regionalManagerId);
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProjectResult = crowdTestProject.finishCrowdTestTask(crowdTestTaskCode,user);
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | -        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 创建项目报告(区域管理员)
 | 
	
		
			
				|  |  | -     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | -     * @return
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "createProjectReport/{regionalManagerId}/{crowdTestProjectCode}/{projectReportName}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String createCrowdTestReport(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,
 | 
	
		
			
				|  |  | -                                        @PathVariable("regionalManagerId") Long regionalManagerId,
 | 
	
		
			
				|  |  | -                                        @PathVariable("projectReportName") String projectReportName){
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        //report数据准备
 | 
	
		
			
				|  |  | -        CrowdTestReport crowdTestReport = new CrowdTestReport();
 | 
	
		
			
				|  |  | -        crowdTestReport.setCode(crowdTestProjectCode+"_REP"+System.currentTimeMillis());
 | 
	
		
			
				|  |  | -        crowdTestReport.setName(projectReportName);
 | 
	
		
			
				|  |  | -        crowdTestReport.setDependencyCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -        crowdTestReport.setCreateTime(new Timestamp(System.currentTimeMillis()));
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        User userForRegionalManager = userRepo.getByID(regionalManagerId);
 | 
	
		
			
				|  |  | -//        RegionalManager regionalManager = userForRegionalManager.getRegionalManager();
 | 
	
		
			
				|  |  | -//        CrowdTestProject crowdTestProjectResult = regionalManager.createCrowdTestProjectReport(crowdTestProject, crowdTestReport);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProjectResult = crowdTestProject.createCrowdTestProjectReport(crowdTestReport, userForRegionalManager);
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | -        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 提交项目(区域管理员)
 | 
	
		
			
				|  |  | -     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | -     * @return
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "commitProject/{regionalManagerId}/{crowdTestProjectCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String commitProject(@PathVariable("regionalManagerId") Long regionalManagerId,@PathVariable("crowdTestProjectCode") String crowdTestProjectCode){
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -        User userForRegionalManager = userRepo.getByID(regionalManagerId);
 | 
	
		
			
				|  |  | -//        RegionalManager regionalManager = userForRegionalManager.getRegionalManager();
 | 
	
		
			
				|  |  | -//        CrowdTestProject crowdTestProjectResult = regionalManager.commitCrowdTestProject(crowdTestProject);
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProjectResult = crowdTestProject.commitCrowdTestProject(userForRegionalManager);
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | -        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 对普通用户的操作
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 结束项目(普通用户)
 | 
	
		
			
				|  |  | -     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | -     * @return
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "finishProject/{userId}/{crowdTestProjectCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String finishProject(@PathVariable("userId") Long userId,@PathVariable("crowdTestProjectCode") String crowdTestProjectCode){
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | -        User user = userRepo.getByID(userId);
 | 
	
		
			
				|  |  | -//        CrowdTestProject crowdTestProjectResult = user.finishCrowdTestProject(crowdTestProject);
 | 
	
		
			
				|  |  | -        CrowdTestProject crowdTestProjectResult = crowdTestProject.finishCrowdTestProject(user);
 | 
	
		
			
				|  |  | -        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | -        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "getNum", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String getNum(){
 | 
	
		
			
				|  |  | -        return "项目数:" + crowdTestProjectRepo.getAllProjectNum() + " 任务数:" + crowdTestProjectRepo.getAllTaskNum() + " 报告数:" + crowdTestProjectRepo.getAllReportNum() ;
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 计算指定时间的后几天
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    private Date getNextDay(Date date, int day){
 | 
	
		
			
				|  |  | -        //计算相关的时间间隔
 | 
	
		
			
				|  |  | -        long addTime = 24*3600*1000;
 | 
	
		
			
				|  |  | -        addTime *= day;
 | 
	
		
			
				|  |  | -        //把时间间隔转换为毫秒数
 | 
	
		
			
				|  |  | -        Date nextDate=new Date(date.getTime() + addTime);
 | 
	
		
			
				|  |  | -        return nextDate;
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 计算指定时间的前几天
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    private Date getBeforeDay(Date date, int day){
 | 
	
		
			
				|  |  | -        //计算相关的时间间隔
 | 
	
		
			
				|  |  | -        long subTime = 24*3600*1000;
 | 
	
		
			
				|  |  | -        subTime *= day;
 | 
	
		
			
				|  |  | -        //把时间间隔转换为毫秒数
 | 
	
		
			
				|  |  | -        Date beforeDate=new Date(date.getTime() - subTime);
 | 
	
		
			
				|  |  | -        return beforeDate;
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 大陆手机号码11位数,匹配格式:前三位固定格式+后8位任意数
 | 
	
		
			
				|  |  | -     * 此方法中前三位格式有:
 | 
	
		
			
				|  |  | -     * 13+任意数
 | 
	
		
			
				|  |  | -     * 15+除4的任意数
 | 
	
		
			
				|  |  | -     * 18+除1和4的任意数
 | 
	
		
			
				|  |  | -     * 17+除9的任意数
 | 
	
		
			
				|  |  | -     * 147
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    private boolean isChinaPhoneLegal(String str) throws PatternSyntaxException {
 | 
	
		
			
				|  |  | -        String regExp = "^((13[0-9])|(15[^4])|(18[0,2,3,5-9])|(17[0-8])|(147))\\d{8}$";
 | 
	
		
			
				|  |  | -        Pattern p = Pattern.compile(regExp);
 | 
	
		
			
				|  |  | -        Matcher m = p.matcher(str);
 | 
	
		
			
				|  |  | -        return m.matches();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 香港手机号码8位数,5|6|8|9开头+7位任意数
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    private boolean isHKPhoneLegal(String str)throws PatternSyntaxException {
 | 
	
		
			
				|  |  | -        String regExp = "^(5|6|8|9)\\d{7}$";
 | 
	
		
			
				|  |  | -        Pattern p = Pattern.compile(regExp);
 | 
	
		
			
				|  |  | -        Matcher m = p.matcher(str);
 | 
	
		
			
				|  |  | -        return m.matches();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 座机号
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    private boolean isTel(String str)throws PatternSyntaxException {
 | 
	
		
			
				|  |  | -        String regExp = "^0[1-9](\\d{1,2}\\-?)\\d{7,8}";
 | 
	
		
			
				|  |  | -        Pattern p = Pattern.compile(regExp);
 | 
	
		
			
				|  |  | -        Matcher m = p.matcher(str);
 | 
	
		
			
				|  |  | -        return m.matches();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 判断手机号或者座机是正确
 | 
	
		
			
				|  |  | -     * @param phone
 | 
	
		
			
				|  |  | -     * @return
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    private boolean isRightPhone(String phone){
 | 
	
		
			
				|  |  | -        if(phone.startsWith("0")){
 | 
	
		
			
				|  |  | -            if(!isTel(phone)){
 | 
	
		
			
				|  |  | -                return false;
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -        }else{
 | 
	
		
			
				|  |  | -            if(!(isChinaPhoneLegal(phone) || isHKPhoneLegal(phone))){
 | 
	
		
			
				|  |  | -                return false;
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -        return true;
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 匹配平台类型 0,1,2 任意  ^[0-2](([,][0-2])?([,][0-2])?)$
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    private boolean isPlatform(String str)throws PatternSyntaxException {
 | 
	
		
			
				|  |  | -        String regExp = "^[0-2](([,][0-2])?([,][0-2])?)$";
 | 
	
		
			
				|  |  | -        Pattern p = Pattern.compile(regExp);
 | 
	
		
			
				|  |  | -        Matcher m = p.matcher(str);
 | 
	
		
			
				|  |  | -        return m.matches();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    /**
 | 
	
		
			
				|  |  | -     * 匹配项目类型 0,1,2,3,4,5,6 任意  ^[0-6](([,][0-6])?([,][0-6])?([,][0-6])?([,][0-6])?([,][0-6])?([,][0-6])?)$
 | 
	
		
			
				|  |  | -     */
 | 
	
		
			
				|  |  | -    private boolean isType(String str)throws PatternSyntaxException {
 | 
	
		
			
				|  |  | -        String regExp = "^[0-6](([,][0-6])?([,][0-6])?([,][0-6])?([,][0-6])?([,][0-6])?([,][0-6])?)$";
 | 
	
		
			
				|  |  | -        Pattern p = Pattern.compile(regExp);
 | 
	
		
			
				|  |  | -        Matcher m = p.matcher(str);
 | 
	
		
			
				|  |  | -        return m.matches();
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    @RequestMapping(value = "getAllNum", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | -    public String getAllUserNum(){
 | 
	
		
			
				|  |  | -        return "用户数:" + userRepo.getAllUserNum() + " 测评机构数:" + userRepo.getAllAgencyNum() + " 测试资源数量:" + userRepo.getAllResourceNum() ;
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +////    @RequestMapping(value = "modifyReport/{crowdTestProjectCode}/{crowdTestTaskCode}/{crowdTestReportCode}/{reportName}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +////    public void modifyCrowdTestReport(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode, @PathVariable("crowdTestTaskCode") String crowdTestTaskCode,
 | 
	
		
			
				|  |  | +////                                      @PathVariable("crowdTestReportCode") String crowdTestReportCode, @PathVariable("reportName") String reportName){
 | 
	
		
			
				|  |  | +////        CrowdTestReport crowdTestReportModify = new CrowdTestReport();
 | 
	
		
			
				|  |  | +////        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +////        for(CrowdTestTask crowdTestTask : crowdTestProject.getCrowdTestTaskList()){
 | 
	
		
			
				|  |  | +////            if(crowdTestTaskCode.equals(crowdTestTask.getCode())){
 | 
	
		
			
				|  |  | +////                for(CrowdTestReport crowdTestReport : crowdTestTask.getCrowdTestReportList()){
 | 
	
		
			
				|  |  | +////                    if(crowdTestReportCode.equals(crowdTestReport.getCode())){
 | 
	
		
			
				|  |  | +////                        Gson gson = new Gson();
 | 
	
		
			
				|  |  | +////                        crowdTestReportModify = gson.fromJson(gson.toJson(crowdTestReport), CrowdTestReport.class);
 | 
	
		
			
				|  |  | +////                    }
 | 
	
		
			
				|  |  | +////                }
 | 
	
		
			
				|  |  | +////            }
 | 
	
		
			
				|  |  | +////        }
 | 
	
		
			
				|  |  | +////        crowdTestReportModify.setName(reportName);
 | 
	
		
			
				|  |  | +////        CrowdTestProject updateCrowdTestProject = crowdTestProject.updateCrowdTestReport(crowdTestTaskCode, crowdTestReportCode, crowdTestReportModify);
 | 
	
		
			
				|  |  | +////        crowdTestProjectRepo.saveCrowdTestProject(updateCrowdTestProject);
 | 
	
		
			
				|  |  | +////    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /*普通用户DO*/
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 新建项目(普通用户)
 | 
	
		
			
				|  |  | +//     * @param userId
 | 
	
		
			
				|  |  | +//     * @param projectName
 | 
	
		
			
				|  |  | +//     * @return
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "createProject/{userId}/{projectName}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String createCrowdTestProject(@PathVariable("userId") Long userId,@PathVariable("projectName") String projectName){
 | 
	
		
			
				|  |  | +//        //数据准备
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = new CrowdTestProject();
 | 
	
		
			
				|  |  | +//        crowdTestProject.setCode("PRO"+System.currentTimeMillis());
 | 
	
		
			
				|  |  | +//        crowdTestProject.setName(projectName);
 | 
	
		
			
				|  |  | +//        crowdTestProject.setProjectDistributionTypeId(1L);
 | 
	
		
			
				|  |  | +//        crowdTestProject.setLinkMan("郭超");
 | 
	
		
			
				|  |  | +//        crowdTestProject.setPlatform("IOS");
 | 
	
		
			
				|  |  | +//        crowdTestProject.setType("安卓测试");
 | 
	
		
			
				|  |  | +//        crowdTestProject.setDescription("测试内容");
 | 
	
		
			
				|  |  | +//        crowdTestProject.setLinkManMobile("13657094936");
 | 
	
		
			
				|  |  | +//        crowdTestProject.setQuotedPrice(200.00);
 | 
	
		
			
				|  |  | +//        crowdTestProject.setDeadTime(new Timestamp(getNextDay(new Date(System.currentTimeMillis()),1).getTime()));
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        User user = userRepo.getByID(userId);
 | 
	
		
			
				|  |  | +//        crowdTestProject.setUserId(user.getId());
 | 
	
		
			
				|  |  | +//        crowdTestProject.setDistributionProvince(user.getProvince());
 | 
	
		
			
				|  |  | +//        crowdTestProject.setDistributionCity(user.getCity());
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProjectResult = crowdTestProject.createCrowdTestProject(user);
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | +//        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 发布项目(普通用户)
 | 
	
		
			
				|  |  | +//     * @param userId
 | 
	
		
			
				|  |  | +//     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | +//     * @return
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "releaseProject/{userId}/{crowdTestProjectCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String releaseCrowdTestProject(@PathVariable("userId") Long userId,@PathVariable("crowdTestProjectCode") String crowdTestProjectCode){
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//        User user = userRepo.getByID(userId);
 | 
	
		
			
				|  |  | +//        CrowdTestProject  crowdTestProjectResult = crowdTestProject.releaseCrowdTestProject(user);
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | +//        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 对区域管理员的操作
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 接收项目(区域管理员)
 | 
	
		
			
				|  |  | +//     * @param userForRegionalManagerId
 | 
	
		
			
				|  |  | +//     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | +//     * @return
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "receiveProject/{userForRegionalManagerId}/{crowdTestProjectCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String receiveTaskByProjectCode(@PathVariable("userForRegionalManagerId") Long userForRegionalManagerId, @PathVariable("crowdTestProjectCode") String crowdTestProjectCode) {
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        User userForRegionalManager = userRepo.getByID(userForRegionalManagerId);
 | 
	
		
			
				|  |  | +////        RegionalManager regionalManager = userForRegionalManager.getRegionalManager();
 | 
	
		
			
				|  |  | +////        CrowdTestProject crowdTestProjectResult = regionalManager.receiveProject(crowdTestProject);
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProjectResult = crowdTestProject.receiveProject(userForRegionalManager);
 | 
	
		
			
				|  |  | +//        crowdTestProjectResult.setRegionalManagerId(userForRegionalManagerId);
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProject);
 | 
	
		
			
				|  |  | +//        return crowdTestProjectResult.toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 项目中新建任务(区域管理员拆分项目)
 | 
	
		
			
				|  |  | +//     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | +//     * @param taskName
 | 
	
		
			
				|  |  | +//     * @return
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "createTask/{regionalManagerId}/{crowdTestProjectCode}/{taskName}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String createCrowdTestTask(@PathVariable("regionalManagerId") Long regionalManagerId,@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,@PathVariable("taskName") String taskName){
 | 
	
		
			
				|  |  | +//        //数据准备
 | 
	
		
			
				|  |  | +//        CrowdTestTask crowdTestTask = new CrowdTestTask();
 | 
	
		
			
				|  |  | +//        crowdTestTask.setCode(crowdTestProjectCode+"_TASK"+System.currentTimeMillis());
 | 
	
		
			
				|  |  | +//        crowdTestTask.setName(taskName);
 | 
	
		
			
				|  |  | +//        crowdTestTask.setCrowdTestProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//        crowdTestTask.setType("接口测试");
 | 
	
		
			
				|  |  | +//        crowdTestTask.setDescription("测试任务");
 | 
	
		
			
				|  |  | +//        crowdTestTask.setDistributionType(0L);
 | 
	
		
			
				|  |  | +//        crowdTestTask.setQuotedPrice(200.00);
 | 
	
		
			
				|  |  | +//        crowdTestTask.setDeadTime(new Timestamp(getNextDay(new Date(System.currentTimeMillis()),1).getTime()));
 | 
	
		
			
				|  |  | +//        crowdTestTask.setCreateTime(new Timestamp(System.currentTimeMillis()));
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        //具体操作
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        User userForRegionalManager = userRepo.getByID(regionalManagerId);
 | 
	
		
			
				|  |  | +////        RegionalManager regionalManager = userForRegionalManager.getRegionalManager();
 | 
	
		
			
				|  |  | +////        CrowdTestProject crowdTestProjectResult = regionalManager.createCrowdTestTask(crowdTestProject, crowdTestTask);
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProjectResult = crowdTestProject.createCrowdTestTask(crowdTestTask, userForRegionalManager);
 | 
	
		
			
				|  |  | +//        crowdTestTask.setDistributionProvince(crowdTestProject.getDistributionProvince());
 | 
	
		
			
				|  |  | +//        crowdTestTask.setDistributionCity(crowdTestProject.getDistributionCity());
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | +//        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 发布任务(区域管理员)
 | 
	
		
			
				|  |  | +//     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | +//     * @return
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "releaseTask/{regionalManagerId}/{crowdTestProjectCode}/{crowdTestTaskCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String releaseCrowdTestTask(@PathVariable("regionalManagerId") Long regionalManagerId,@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,
 | 
	
		
			
				|  |  | +//                                       @PathVariable("crowdTestTaskCode") String crowdTestTaskCode){
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//        User user = userRepo.getByID(regionalManagerId);
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProjectResult = crowdTestProject.releaseCrowdTestTask(crowdTestTaskCode, user);
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | +//        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 对测评机构的操作
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 接收任务(测评机构)
 | 
	
		
			
				|  |  | +//     * @param userForEvaluationAgencyId
 | 
	
		
			
				|  |  | +//     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | +//     * @param crowdTestTaskCode
 | 
	
		
			
				|  |  | +//     * @return
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "receiveTask/{userForEvaluationAgencyId}/{crowdTestProjectCode}/{crowdTestTaskCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String receiveTaskByProjectCode(@PathVariable("userForEvaluationAgencyId") Long userForEvaluationAgencyId, @PathVariable("crowdTestProjectCode") String crowdTestProjectCode,
 | 
	
		
			
				|  |  | +//                                                    @PathVariable("crowdTestTaskCode") String crowdTestTaskCode) {
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        User userForEvaluationAgency = userRepo.getByID(userForEvaluationAgencyId);
 | 
	
		
			
				|  |  | +////        CrowdTestProject crowdTestProjectResult = userForEvaluationAgency.receiveTask(crowdTestProject, crowdTestTaskCode);
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProjectResult = crowdTestProject.receiveTask(crowdTestTaskCode, userForEvaluationAgency);
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | +//        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 项目的任务中新建报告(测评机构)
 | 
	
		
			
				|  |  | +//     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | +//     * @param reportName
 | 
	
		
			
				|  |  | +//     * @return
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "createReport/{userForEvaluationAgencyId}/{crowdTestProjectCode}/{crowdTestTaskCode}/{reportName}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String createCrowdTestReport(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,@PathVariable("userForEvaluationAgencyId") Long userForEvaluationAgencyId,
 | 
	
		
			
				|  |  | +//                                        @PathVariable("reportName") String reportName, @PathVariable("crowdTestTaskCode") String crowdTestTaskCode){
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        //report数据准备
 | 
	
		
			
				|  |  | +//        CrowdTestReport crowdTestReport = new CrowdTestReport();
 | 
	
		
			
				|  |  | +//        crowdTestReport.setCode(crowdTestTaskCode+"_REP"+System.currentTimeMillis());
 | 
	
		
			
				|  |  | +//        crowdTestReport.setName(reportName);
 | 
	
		
			
				|  |  | +//        crowdTestReport.setCreateTime(new Timestamp(System.currentTimeMillis()));
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//        User userForEvaluationAgency = userRepo.getByID(userForEvaluationAgencyId);
 | 
	
		
			
				|  |  | +////        CrowdTestProject crowdTestProjectResult = userForEvaluationAgency.createCrowdTestReport(crowdTestProject, crowdTestTaskCode, crowdTestReport);
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProjectResult = crowdTestProject.createCrowdTestReport(crowdTestTaskCode, crowdTestReport, userForEvaluationAgency);
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | +//        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 提交任务(测评机构)
 | 
	
		
			
				|  |  | +//     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | +//     * @param userForEvaluationAgencyId
 | 
	
		
			
				|  |  | +//     * @param crowdTestTaskCode
 | 
	
		
			
				|  |  | +//     * @return
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "commitTask/{userForEvaluationAgencyId}/{crowdTestProjectCode}/{crowdTestTaskCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String commitCrowdTestReport(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,@PathVariable("userForEvaluationAgencyId") Long userForEvaluationAgencyId,
 | 
	
		
			
				|  |  | +//                                        @PathVariable("crowdTestTaskCode") String crowdTestTaskCode){
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//        User userForEvaluationAgency = userRepo.getByID(userForEvaluationAgencyId);
 | 
	
		
			
				|  |  | +////        CrowdTestProject crowdTestProjectResult = userForEvaluationAgency.commitCrowdTestTask(crowdTestProject, crowdTestTaskCode);
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProjectResult = crowdTestProject.commitCrowdTestTask(crowdTestTaskCode, userForEvaluationAgency);
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | +//        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 区域管理员的操作
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 确认结束任务(区域管理员)
 | 
	
		
			
				|  |  | +//     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | +//     * @return
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "finishTask/{regionalManagerId}/{crowdTestProjectCode}/{crowdTestTaskCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String commitCrowdTestTask(@PathVariable("regionalManagerId") Long regionalManagerId,@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,
 | 
	
		
			
				|  |  | +//                                      @PathVariable("crowdTestTaskCode") String crowdTestTaskCode){
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//        User user = userRepo.getByID(regionalManagerId);
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProjectResult = crowdTestProject.finishCrowdTestTask(crowdTestTaskCode,user);
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | +//        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 创建项目报告(区域管理员)
 | 
	
		
			
				|  |  | +//     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | +//     * @return
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "createProjectReport/{regionalManagerId}/{crowdTestProjectCode}/{projectReportName}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String createCrowdTestReport(@PathVariable("crowdTestProjectCode") String crowdTestProjectCode,
 | 
	
		
			
				|  |  | +//                                        @PathVariable("regionalManagerId") Long regionalManagerId,
 | 
	
		
			
				|  |  | +//                                        @PathVariable("projectReportName") String projectReportName){
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        //report数据准备
 | 
	
		
			
				|  |  | +//        CrowdTestReport crowdTestReport = new CrowdTestReport();
 | 
	
		
			
				|  |  | +//        crowdTestReport.setCode(crowdTestProjectCode+"_REP"+System.currentTimeMillis());
 | 
	
		
			
				|  |  | +//        crowdTestReport.setName(projectReportName);
 | 
	
		
			
				|  |  | +//        crowdTestReport.setDependencyCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//        crowdTestReport.setCreateTime(new Timestamp(System.currentTimeMillis()));
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        User userForRegionalManager = userRepo.getByID(regionalManagerId);
 | 
	
		
			
				|  |  | +////        RegionalManager regionalManager = userForRegionalManager.getRegionalManager();
 | 
	
		
			
				|  |  | +////        CrowdTestProject crowdTestProjectResult = regionalManager.createCrowdTestProjectReport(crowdTestProject, crowdTestReport);
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProjectResult = crowdTestProject.createCrowdTestProjectReport(crowdTestReport, userForRegionalManager);
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | +//        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 提交项目(区域管理员)
 | 
	
		
			
				|  |  | +//     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | +//     * @return
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "commitProject/{regionalManagerId}/{crowdTestProjectCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String commitProject(@PathVariable("regionalManagerId") Long regionalManagerId,@PathVariable("crowdTestProjectCode") String crowdTestProjectCode){
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//        User userForRegionalManager = userRepo.getByID(regionalManagerId);
 | 
	
		
			
				|  |  | +////        RegionalManager regionalManager = userForRegionalManager.getRegionalManager();
 | 
	
		
			
				|  |  | +////        CrowdTestProject crowdTestProjectResult = regionalManager.commitCrowdTestProject(crowdTestProject);
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProjectResult = crowdTestProject.commitCrowdTestProject(userForRegionalManager);
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | +//        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 对普通用户的操作
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 结束项目(普通用户)
 | 
	
		
			
				|  |  | +//     * @param crowdTestProjectCode
 | 
	
		
			
				|  |  | +//     * @return
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "finishProject/{userId}/{crowdTestProjectCode}", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String finishProject(@PathVariable("userId") Long userId,@PathVariable("crowdTestProjectCode") String crowdTestProjectCode){
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProject = crowdTestProjectRepo.getByProjectCode(crowdTestProjectCode);
 | 
	
		
			
				|  |  | +//        User user = userRepo.getByID(userId);
 | 
	
		
			
				|  |  | +////        CrowdTestProject crowdTestProjectResult = user.finishCrowdTestProject(crowdTestProject);
 | 
	
		
			
				|  |  | +//        CrowdTestProject crowdTestProjectResult = crowdTestProject.finishCrowdTestProject(user);
 | 
	
		
			
				|  |  | +//        crowdTestProjectRepo.saveCrowdTestProject(crowdTestProjectResult);
 | 
	
		
			
				|  |  | +//        return crowdTestProjectRepo.getByProjectCode(crowdTestProjectResult.getCode()).toString();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "getNum", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String getNum(){
 | 
	
		
			
				|  |  | +//        return "项目数:" + crowdTestProjectRepo.getAllProjectNum() + " 任务数:" + crowdTestProjectRepo.getAllTaskNum() + " 报告数:" + crowdTestProjectRepo.getAllReportNum() ;
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 计算指定时间的后几天
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    private Date getNextDay(Date date, int day){
 | 
	
		
			
				|  |  | +//        //计算相关的时间间隔
 | 
	
		
			
				|  |  | +//        long addTime = 24*3600*1000;
 | 
	
		
			
				|  |  | +//        addTime *= day;
 | 
	
		
			
				|  |  | +//        //把时间间隔转换为毫秒数
 | 
	
		
			
				|  |  | +//        Date nextDate=new Date(date.getTime() + addTime);
 | 
	
		
			
				|  |  | +//        return nextDate;
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 计算指定时间的前几天
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    private Date getBeforeDay(Date date, int day){
 | 
	
		
			
				|  |  | +//        //计算相关的时间间隔
 | 
	
		
			
				|  |  | +//        long subTime = 24*3600*1000;
 | 
	
		
			
				|  |  | +//        subTime *= day;
 | 
	
		
			
				|  |  | +//        //把时间间隔转换为毫秒数
 | 
	
		
			
				|  |  | +//        Date beforeDate=new Date(date.getTime() - subTime);
 | 
	
		
			
				|  |  | +//        return beforeDate;
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 大陆手机号码11位数,匹配格式:前三位固定格式+后8位任意数
 | 
	
		
			
				|  |  | +//     * 此方法中前三位格式有:
 | 
	
		
			
				|  |  | +//     * 13+任意数
 | 
	
		
			
				|  |  | +//     * 15+除4的任意数
 | 
	
		
			
				|  |  | +//     * 18+除1和4的任意数
 | 
	
		
			
				|  |  | +//     * 17+除9的任意数
 | 
	
		
			
				|  |  | +//     * 147
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    private boolean isChinaPhoneLegal(String str) throws PatternSyntaxException {
 | 
	
		
			
				|  |  | +//        String regExp = "^((13[0-9])|(15[^4])|(18[0,2,3,5-9])|(17[0-8])|(147))\\d{8}$";
 | 
	
		
			
				|  |  | +//        Pattern p = Pattern.compile(regExp);
 | 
	
		
			
				|  |  | +//        Matcher m = p.matcher(str);
 | 
	
		
			
				|  |  | +//        return m.matches();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 香港手机号码8位数,5|6|8|9开头+7位任意数
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    private boolean isHKPhoneLegal(String str)throws PatternSyntaxException {
 | 
	
		
			
				|  |  | +//        String regExp = "^(5|6|8|9)\\d{7}$";
 | 
	
		
			
				|  |  | +//        Pattern p = Pattern.compile(regExp);
 | 
	
		
			
				|  |  | +//        Matcher m = p.matcher(str);
 | 
	
		
			
				|  |  | +//        return m.matches();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 座机号
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    private boolean isTel(String str)throws PatternSyntaxException {
 | 
	
		
			
				|  |  | +//        String regExp = "^0[1-9](\\d{1,2}\\-?)\\d{7,8}";
 | 
	
		
			
				|  |  | +//        Pattern p = Pattern.compile(regExp);
 | 
	
		
			
				|  |  | +//        Matcher m = p.matcher(str);
 | 
	
		
			
				|  |  | +//        return m.matches();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 判断手机号或者座机是正确
 | 
	
		
			
				|  |  | +//     * @param phone
 | 
	
		
			
				|  |  | +//     * @return
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    private boolean isRightPhone(String phone){
 | 
	
		
			
				|  |  | +//        if(phone.startsWith("0")){
 | 
	
		
			
				|  |  | +//            if(!isTel(phone)){
 | 
	
		
			
				|  |  | +//                return false;
 | 
	
		
			
				|  |  | +//            }
 | 
	
		
			
				|  |  | +//        }else{
 | 
	
		
			
				|  |  | +//            if(!(isChinaPhoneLegal(phone) || isHKPhoneLegal(phone))){
 | 
	
		
			
				|  |  | +//                return false;
 | 
	
		
			
				|  |  | +//            }
 | 
	
		
			
				|  |  | +//        }
 | 
	
		
			
				|  |  | +//        return true;
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 匹配平台类型 0,1,2 任意  ^[0-2](([,][0-2])?([,][0-2])?)$
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    private boolean isPlatform(String str)throws PatternSyntaxException {
 | 
	
		
			
				|  |  | +//        String regExp = "^[0-2](([,][0-2])?([,][0-2])?)$";
 | 
	
		
			
				|  |  | +//        Pattern p = Pattern.compile(regExp);
 | 
	
		
			
				|  |  | +//        Matcher m = p.matcher(str);
 | 
	
		
			
				|  |  | +//        return m.matches();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    /**
 | 
	
		
			
				|  |  | +//     * 匹配项目类型 0,1,2,3,4,5,6 任意  ^[0-6](([,][0-6])?([,][0-6])?([,][0-6])?([,][0-6])?([,][0-6])?([,][0-6])?)$
 | 
	
		
			
				|  |  | +//     */
 | 
	
		
			
				|  |  | +//    private boolean isType(String str)throws PatternSyntaxException {
 | 
	
		
			
				|  |  | +//        String regExp = "^[0-6](([,][0-6])?([,][0-6])?([,][0-6])?([,][0-6])?([,][0-6])?([,][0-6])?)$";
 | 
	
		
			
				|  |  | +//        Pattern p = Pattern.compile(regExp);
 | 
	
		
			
				|  |  | +//        Matcher m = p.matcher(str);
 | 
	
		
			
				|  |  | +//        return m.matches();
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//    @RequestMapping(value = "getAllNum", method = RequestMethod.GET)
 | 
	
		
			
				|  |  | +//    public String getAllUserNum(){
 | 
	
		
			
				|  |  | +//        return "用户数:" + userRepo.getAllUserNum() + " 测评机构数:" + userRepo.getAllAgencyNum() + " 测试资源数量:" + userRepo.getAllResourceNum() ;
 | 
	
		
			
				|  |  | +//    }
 | 
	
		
			
				|  |  |  }
 |