|
@@ -4,6 +4,7 @@ import com.mooctest.crowd.domain.exception.BaseException;
|
|
import com.mooctest.crowd.site.command.CrowdTestReportCommand;
|
|
import com.mooctest.crowd.site.command.CrowdTestReportCommand;
|
|
import com.mooctest.crowd.site.data.dto.ReportDetailsDTO;
|
|
import com.mooctest.crowd.site.data.dto.ReportDetailsDTO;
|
|
import com.mooctest.crowd.site.service.CrowdReportService;
|
|
import com.mooctest.crowd.site.service.CrowdReportService;
|
|
|
|
+import io.swagger.annotations.Api;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.validation.BindingResult;
|
|
import org.springframework.validation.BindingResult;
|
|
@@ -20,6 +21,7 @@ import javax.servlet.http.HttpSession;
|
|
@Slf4j
|
|
@Slf4j
|
|
@RestController
|
|
@RestController
|
|
@RequestMapping("/api")
|
|
@RequestMapping("/api")
|
|
|
|
+@Api(tags = "报告相关接口", description = "提供报告相关的 Rest API")
|
|
public class CrowdReportController {
|
|
public class CrowdReportController {
|
|
|
|
|
|
@Autowired
|
|
@Autowired
|
|
@@ -30,7 +32,7 @@ public class CrowdReportController {
|
|
@PathVariable("taskCode") String taskCode,
|
|
@PathVariable("taskCode") String taskCode,
|
|
@PathVariable("reportCode") String reportCode,
|
|
@PathVariable("reportCode") String reportCode,
|
|
HttpSession session){
|
|
HttpSession session){
|
|
- long userId = Long.parseLong((String) session.getAttribute("userId"));
|
|
|
|
|
|
+ long userId = getUserFromSession(session);
|
|
return reportService.getTaskReport(projectCode, taskCode, reportCode, userId);
|
|
return reportService.getTaskReport(projectCode, taskCode, reportCode, userId);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -42,7 +44,8 @@ public class CrowdReportController {
|
|
log.info("projectCode: " + projectCode + ", taskCode: "+taskCode);
|
|
log.info("projectCode: " + projectCode + ", taskCode: "+taskCode);
|
|
if (result.hasErrors())
|
|
if (result.hasErrors())
|
|
throw new BaseException(result.getFieldError().getDefaultMessage());
|
|
throw new BaseException(result.getFieldError().getDefaultMessage());
|
|
- return reportService.createTaskReport(projectCode, taskCode, command, Long.parseLong((String) session.getAttribute("userId")));
|
|
|
|
|
|
+ long userId = getUserFromSession(session);
|
|
|
|
+ return reportService.createTaskReport(projectCode, taskCode, command, userId);
|
|
}
|
|
}
|
|
|
|
|
|
@RequestMapping(value = "/project/{projectCode}/task/{taskCode}/report/{reportCode}", method = RequestMethod.PUT)
|
|
@RequestMapping(value = "/project/{projectCode}/task/{taskCode}/report/{reportCode}", method = RequestMethod.PUT)
|
|
@@ -54,7 +57,8 @@ public class CrowdReportController {
|
|
log.info("projectCode: " + projectCode + ", taskCode: "+taskCode);
|
|
log.info("projectCode: " + projectCode + ", taskCode: "+taskCode);
|
|
if (result.hasErrors())
|
|
if (result.hasErrors())
|
|
throw new BaseException(result.getFieldError().getDefaultMessage());
|
|
throw new BaseException(result.getFieldError().getDefaultMessage());
|
|
- return reportService.updateTaskReport(projectCode, taskCode, reportCode, command, Long.parseLong((String) session.getAttribute("userId")));
|
|
|
|
|
|
+ long userId = getUserFromSession(session);
|
|
|
|
+ return reportService.updateTaskReport(projectCode, taskCode, reportCode, command, userId);
|
|
}
|
|
}
|
|
|
|
|
|
@RequestMapping(value = "/project/{projectCode}/task/{taskCode}/report/{reportCode}", method = RequestMethod.DELETE)
|
|
@RequestMapping(value = "/project/{projectCode}/task/{taskCode}/report/{reportCode}", method = RequestMethod.DELETE)
|
|
@@ -98,5 +102,13 @@ public class CrowdReportController {
|
|
return reportService.updatePorjctReport(projectCode, reportCode, command);
|
|
return reportService.updatePorjctReport(projectCode, reportCode, command);
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
|
|
+ public long getUserFromSession(HttpSession session) {
|
|
|
|
+ long userId;
|
|
|
|
+ try {
|
|
|
|
+ userId = Long.parseLong((String) session.getAttribute("userId"));
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
+ throw new BaseException("未登录,请先登录");
|
|
|
|
+ }
|
|
|
|
+ return userId;
|
|
|
|
+ }
|
|
}
|
|
}
|