|
@@ -7,6 +7,7 @@ import cn.iselab.mooctest.site.models.fromKibug.Bug;
|
|
|
import cn.iselab.mooctest.site.models.fromKibug.CaseTake;
|
|
import cn.iselab.mooctest.site.models.fromKibug.CaseTake;
|
|
|
import cn.iselab.mooctest.site.models.fromKibug.Report;
|
|
import cn.iselab.mooctest.site.models.fromKibug.Report;
|
|
|
import cn.iselab.mooctest.site.models.instancePermission.ReportPermission;
|
|
import cn.iselab.mooctest.site.models.instancePermission.ReportPermission;
|
|
|
|
|
+import cn.iselab.mooctest.site.models.instancePermission.TaskPermission;
|
|
|
import cn.iselab.mooctest.site.service.CaseService;
|
|
import cn.iselab.mooctest.site.service.CaseService;
|
|
|
import cn.iselab.mooctest.site.service.TaskService;
|
|
import cn.iselab.mooctest.site.service.TaskService;
|
|
|
import cn.iselab.mooctest.site.service.fromKibug.BugService;
|
|
import cn.iselab.mooctest.site.service.fromKibug.BugService;
|
|
@@ -15,6 +16,7 @@ import cn.iselab.mooctest.site.service.fromKibug.KibugTaskService;
|
|
|
import cn.iselab.mooctest.site.service.fromKibug.ReportService;
|
|
import cn.iselab.mooctest.site.service.fromKibug.ReportService;
|
|
|
import cn.iselab.mooctest.site.web.data.fromKibug.BugVO;
|
|
import cn.iselab.mooctest.site.web.data.fromKibug.BugVO;
|
|
|
import cn.iselab.mooctest.site.web.data.wrapper.BugVOWrapper;
|
|
import cn.iselab.mooctest.site.web.data.wrapper.BugVOWrapper;
|
|
|
|
|
+import cn.iselab.mooctest.site.web.exception.HttpBadRequestException;
|
|
|
import cn.iselab.mooctest.site.web.exception.IllegalOperationException;
|
|
import cn.iselab.mooctest.site.web.exception.IllegalOperationException;
|
|
|
import cn.iselab.mooctest.site.web.logic.BugLogic;
|
|
import cn.iselab.mooctest.site.web.logic.BugLogic;
|
|
|
import cn.iselab.mooctest.site.web.logic.ReportLogic;
|
|
import cn.iselab.mooctest.site.web.logic.ReportLogic;
|
|
@@ -49,6 +51,19 @@ public class BugLogicImpl implements BugLogic{
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
public List<BugVO> getBugListByReportId(long reportId) throws Exception{
|
|
public List<BugVO> getBugListByReportId(long reportId) throws Exception{
|
|
|
|
|
+ Report report=reportService.getReport(reportId);
|
|
|
|
|
+ if(report==null)
|
|
|
|
|
+ throw new HttpBadRequestException("report id not exist");
|
|
|
|
|
+ CaseTake caseTake=caseService.getCaseTakeById(report.getCaseTakeId());
|
|
|
|
|
+ User user=(User) SecurityUtils.getSubject().getSession().getAttribute("User");
|
|
|
|
|
+ String permissionStr=user.getId().toString()+ ":report:view:" +String.valueOf(reportId);
|
|
|
|
|
+ if(!SecurityUtils.getSubject().isPermitted(new ReportPermission(permissionStr))){
|
|
|
|
|
+ String permissionStr2=user.getId().toString()+":task:score:"+String.valueOf(caseTake.getTaskId());
|
|
|
|
|
+ if(!SecurityUtils.getSubject().isPermitted(new TaskPermission(permissionStr2))) {
|
|
|
|
|
+ throw new UnauthorizedException("unauthorized");
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
List<Bug> bugList = bugService.getBugsByReportId(reportId);
|
|
List<Bug> bugList = bugService.getBugsByReportId(reportId);
|
|
|
|
|
|
|
|
List<BugVO> bugVoList = new ArrayList<>();
|
|
List<BugVO> bugVoList = new ArrayList<>();
|