Forráskód Böngészése

Merge branch 'fix-target-edit' into 'DEV'

增加获取测试目标node下载链接的接口



See merge request !510

huangyong 7 éve
szülő
commit
ba9c603b23

+ 16 - 0
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/service/common/NodeUrlService.java

@@ -0,0 +1,16 @@
+package cn.iselab.mooctest.site.service.common;
+
+/**
+ * @Author ROKG
+ * @Description
+ * @Date: Created in 下午11:57 2018/1/15
+ * @Modified By:
+ */
+public interface NodeUrlService {
+
+    String getScNode(Long targetId);
+
+    String getObjectNode(Long targetId);
+
+    String getMutationNode(Long targetId);
+}

+ 49 - 0
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/service/common/impl/NodeUrlServiceImpl.java

@@ -0,0 +1,49 @@
+package cn.iselab.mooctest.site.service.common.impl;
+
+import cn.iselab.mooctest.site.service.common.NodeUrlService;
+import org.springframework.stereotype.Service;
+
+import java.io.File;
+
+/**
+ * @Author ROKG
+ * @Description
+ * @Date: Created in 下午11:58 2018/1/15
+ * @Modified By:
+ */
+@Service
+public class NodeUrlServiceImpl implements NodeUrlService{
+
+    private String NODE_PATH="/var/www/download/node/";
+    private String DOWNLOAD_PATH="/download/";
+
+    @Override
+    public String getScNode(Long targetId){
+        File file=new File(NODE_PATH+targetId+"_sc.json");
+        if(file.exists()){
+            return DOWNLOAD_PATH+file.getName();
+        }else {
+            return null;
+        }
+    }
+
+    @Override
+    public String getObjectNode(Long targetId){
+        File file=new File(NODE_PATH+targetId+"_object.json");
+        if(file.exists()){
+            return DOWNLOAD_PATH+file.getName();
+        }else {
+            return null;
+        }
+    }
+
+    @Override
+    public String getMutationNode(Long targetId){
+        File file=new File(NODE_PATH+targetId+"_mutation.json");
+        if(file.exists()){
+            return DOWNLOAD_PATH+file.getName();
+        }else {
+            return null;
+        }
+    }
+}

+ 6 - 0
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/web/ctrl/TargetController.java

@@ -120,4 +120,10 @@ public class TargetController extends BaseController {
     public TargetVO viewApp(@PathVariable("id") long id) {
         return targetLogic.viewTarget(id);
     }
+
+    @RequiresRoles("manager")
+    @RequestMapping(value = UrlConstants.API_TARGET + "node", method = RequestMethod.GET)
+    public Map<String,Object> getTargetNode(@RequestParam(value = "targetId")Long targetId){
+        return SuccessResult.ok(ResponseMessage.ITEM_RESULT,targetLogic.getTargetNode(targetId));
+    }
 }

+ 19 - 0
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/web/data/NodeUrlVO.java

@@ -0,0 +1,19 @@
+package cn.iselab.mooctest.site.web.data;
+
+import lombok.Data;
+
+/**
+ * @Author ROKG
+ * @Description
+ * @Date: Created in 下午11:54 2018/1/15
+ * @Modified By:
+ */
+@Data
+public class NodeUrlVO {
+
+    private String scNode;
+
+    private String objectNode;
+
+    private String mutationNode;
+}

+ 2 - 0
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/web/logic/TargetLogic.java

@@ -35,4 +35,6 @@ public interface TargetLogic {
     TargetVO viewTarget(long id);
 
     TargetVO getTargetById(Long targetId);
+
+    NodeUrlVO getTargetNode(Long targetId);
 }

+ 19 - 4
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/web/logic/impl/TargetLogicImpl.java

@@ -9,12 +9,10 @@ import cn.iselab.mooctest.site.models.*;
 import cn.iselab.mooctest.site.models.fromKibug.Application;
 import cn.iselab.mooctest.site.service.AppService;
 import cn.iselab.mooctest.site.service.TargetService;
+import cn.iselab.mooctest.site.service.common.NodeUrlService;
 import cn.iselab.mooctest.site.service.fromKibug.ApplicationService;
 import cn.iselab.mooctest.site.service.instancePermission.AppPermissionService;
-import cn.iselab.mooctest.site.web.data.TargetDevVO;
-import cn.iselab.mooctest.site.web.data.TargetKibugVO;
-import cn.iselab.mooctest.site.web.data.TargetVO;
-import cn.iselab.mooctest.site.web.data.TargetWebVO;
+import cn.iselab.mooctest.site.web.data.*;
 import cn.iselab.mooctest.site.web.data.wrapper.TargetDevVOWrapper;
 import cn.iselab.mooctest.site.web.data.wrapper.TargetKibugVOWrapper;
 import cn.iselab.mooctest.site.web.data.wrapper.TargetVOWrapper;
@@ -63,6 +61,9 @@ public class TargetLogicImpl implements TargetLogic {
     @Autowired
     private TargetWebVOWrapper targetWebVOWrapper;
 
+    @Autowired
+    private NodeUrlService nodeUrlService;
+
     @Override
     public List<TargetVO> getManagerTargets(long managerId) throws Exception {
 
@@ -214,4 +215,18 @@ public class TargetLogicImpl implements TargetLogic {
         return targetVOWrapper.wrap(targetService.findById(targetId));
     }
 
+    @Override
+    public NodeUrlVO getTargetNode(Long targetId){
+        App app=appService.getAppById(targetId);
+        NodeUrlVO vo=new NodeUrlVO();
+        if(app.getTargetType()==TargetTypeConstants.DEV){
+            vo.setScNode(nodeUrlService.getScNode(targetId));
+            vo.setMutationNode(nodeUrlService.getMutationNode(targetId));
+        }else {
+            vo.setObjectNode(nodeUrlService.getObjectNode(targetId));
+            vo.setMutationNode(nodeUrlService.getMutationNode(targetId));
+        }
+        return vo;
+    }
+
 }