|
@@ -16,6 +16,7 @@ import cn.iselab.mooctest.site.service.fromDev.IndexService;
|
|
import cn.iselab.mooctest.site.service.fromKibug.ApplicationService;
|
|
import cn.iselab.mooctest.site.service.fromKibug.ApplicationService;
|
|
import cn.iselab.mooctest.site.service.fromKibug.ReportService;
|
|
import cn.iselab.mooctest.site.service.fromKibug.ReportService;
|
|
import cn.iselab.mooctest.site.service.instancePermission.CasePermissionService;
|
|
import cn.iselab.mooctest.site.service.instancePermission.CasePermissionService;
|
|
|
|
+import cn.iselab.mooctest.site.util.data.JSONUtil;
|
|
import cn.iselab.mooctest.site.web.data.CaseExtendsVO;
|
|
import cn.iselab.mooctest.site.web.data.CaseExtendsVO;
|
|
import cn.iselab.mooctest.site.web.data.CaseVO;
|
|
import cn.iselab.mooctest.site.web.data.CaseVO;
|
|
import cn.iselab.mooctest.site.web.data.KeyAnalysisVO;
|
|
import cn.iselab.mooctest.site.web.data.KeyAnalysisVO;
|
|
@@ -36,6 +37,7 @@ import com.aliyun.oss.OSSClient;
|
|
import com.aliyun.oss.model.GeneratePresignedUrlRequest;
|
|
import com.aliyun.oss.model.GeneratePresignedUrlRequest;
|
|
import com.aliyun.oss.model.OSSObjectSummary;
|
|
import com.aliyun.oss.model.OSSObjectSummary;
|
|
import com.google.common.collect.Lists;
|
|
import com.google.common.collect.Lists;
|
|
|
|
+import org.json.JSONObject;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
import org.springframework.data.domain.Page;
|
|
import org.springframework.data.domain.Page;
|
|
@@ -349,7 +351,7 @@ public class CaseLogicImpl implements CaseLogic {
|
|
if (isWorker == true && (caseExtendsVO.getAnswerWay() == AnswerWayConstants.DEV_ECLIPSE || caseExtendsVO.getAnswerWay() == AnswerWayConstants.APP_ECLIPSE
|
|
if (isWorker == true && (caseExtendsVO.getAnswerWay() == AnswerWayConstants.DEV_ECLIPSE || caseExtendsVO.getAnswerWay() == AnswerWayConstants.APP_ECLIPSE
|
|
|| caseExtendsVO.getAnswerWay() == AnswerWayConstants.WEB_ECLIPSE || caseExtendsVO.getAnswerWay() == AnswerWayConstants.JMETER)) {
|
|
|| caseExtendsVO.getAnswerWay() == AnswerWayConstants.WEB_ECLIPSE || caseExtendsVO.getAnswerWay() == AnswerWayConstants.JMETER)) {
|
|
caseExtendsVO.setSecret(indexService.getSecret(userId, examId));
|
|
caseExtendsVO.setSecret(indexService.getSecret(userId, examId));
|
|
- caseExtendsVO.setWebIDE("http://47.97.4.113:8081/?token="+indexService.getSecret(userId,examId)+"&extraCode="+indexService.getEntrance(caseid,caseExtends.getName(),"java"));
|
|
|
|
|
|
+ caseExtendsVO.setWebIDE(generateUrlForWebIDE(caseExtends,userId,examId,caseid));
|
|
caseExtendsVO.setSubmitted(assignedTaskService.isSubmitted(examId, userId, caseExtendsVO.getId(), caseExtendsVO.getCaseId()));
|
|
caseExtendsVO.setSubmitted(assignedTaskService.isSubmitted(examId, userId, caseExtendsVO.getId(), caseExtendsVO.getCaseId()));
|
|
}
|
|
}
|
|
if (caseExtendsVO.getAnswerWay() == AnswerWayConstants.REPORT) {
|
|
if (caseExtendsVO.getAnswerWay() == AnswerWayConstants.REPORT) {
|
|
@@ -507,4 +509,16 @@ public class CaseLogicImpl implements CaseLogic {
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ private String generateUrlForWebIDE(CaseExtends caseExtends,Long userId,Long examId,Long caseId){
|
|
|
|
+ if(!JSONUtil.isJson(caseExtends.getProperties())){
|
|
|
|
+ return null;
|
|
|
|
+ }
|
|
|
|
+ JSONObject object=new JSONObject(caseExtends.getProperties());
|
|
|
|
+ if(object.has("imgName")){
|
|
|
|
+ return "http://47.97.4.113:8081/?token="+indexService.getSecret(userId,examId)+"&extraCode="+indexService.getEntrance(caseId,caseExtends.getName(),object.getString("imgName"));
|
|
|
|
+ }else {
|
|
|
|
+ return null;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
}
|
|
}
|