Переглянути джерело

Merge branch 'feature_new' into 'PrivateReleaseWithRelease'

Feature new



See merge request !1234

xuexiaobo 5 роки тому
батько
коміт
007ae7d899

+ 2 - 1
mooctest-site-server/.dockerignore

@@ -1,3 +1,4 @@
 **
 !target/mooctest-site-server.jar
-!PrivateCloudDockerfile
+!PrivateCloudDockerfile
+!temp/

+ 1 - 0
mooctest-site-server/PrivateCloudDockerfile

@@ -1,3 +1,4 @@
 FROM java:8
 
+COPY ./temp/ /root
 COPY ./target/mooctest-site-server.jar /

+ 2 - 0
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/configure/MongoDBConfiguration.java

@@ -13,6 +13,8 @@ import org.springframework.stereotype.Component;
 public class MongoDBConfiguration {
     private String host;
     private String port;
+    private String trueHost;
+    private String truePort;
     private String db;
     private String reportCollection;
     private String mutationCollection;

+ 2 - 0
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/configure/RedisSessionConfiguration.java

@@ -1,6 +1,7 @@
 package cn.iselab.mooctest.site.configure;
 
 import cn.iselab.mooctest.site.web.SessionCounter;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;
@@ -19,6 +20,7 @@ public class RedisSessionConfiguration {
     }
 
      @Bean
+     @ConditionalOnProperty(prefix = "featureSwitch", name = "client.domainShare", matchIfMissing = false)
      public CookieSerializer cookieSerializer() {
          DefaultCookieSerializer serializer = new DefaultCookieSerializer();
  //        serializer.setCookieName("SESSION");

+ 9 - 1
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/service/updownload/impl/DownloadServicePCImpl.java

@@ -1,6 +1,9 @@
 package cn.iselab.mooctest.site.service.updownload.impl;
 
 import cn.iselab.mooctest.site.service.updownload.DownloadService;
+import cn.iselab.mooctest.site.web.logic.OSSLogic;
+import org.apache.commons.io.FileUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression;
 import org.springframework.stereotype.Service;
@@ -20,6 +23,9 @@ public class DownloadServicePCImpl implements DownloadService{
     @Value("${host}")
     private String host;
 
+    @Autowired
+    private OSSLogic ossLogic;
+
     private String LOCAL_PATH = "/var/www/download/";
 
     private String DOWNLOAD_PATH = "/download/";
@@ -42,7 +48,9 @@ public class DownloadServicePCImpl implements DownloadService{
 
     @Override
     public String download(String url)throws Exception{
-        return null;
+        String name = url.split("/")[url.split("/").length - 1];
+        ossLogic.downloadByUrl(url, FileUtils.getUserDirectory()+"", name);
+        return FileUtils.getUserDirectory() + "/"+name;
     }
 
     private long checkoutTimestamp(String zipFullName,String caseName,long latestTimestamp){

+ 3 - 0
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/web/ctrl/BaseSearchController.java

@@ -4,6 +4,7 @@ import cn.iselab.mooctest.site.common.constant.Constants;
 import cn.iselab.mooctest.site.common.enums.ColumnFilterType;
 import cn.iselab.mooctest.site.web.data.ColumnFilter;
 import cn.iselab.mooctest.site.web.data.SearchConditionVO;
+import lombok.extern.slf4j.Slf4j;
 import org.json.JSONObject;
 import org.springframework.data.domain.Page;
 import org.springframework.data.domain.PageRequest;
@@ -16,11 +17,13 @@ import java.util.Map;
 /**
  * @author henrylee
  */
+@Slf4j
 public abstract class BaseSearchController extends BaseController{
     public abstract  Page<?> search(String searchCondition);
     Pageable getPageable(SearchConditionVO searchConditionVO){
         int activePage = searchConditionVO.getActivePage() == 0?1:searchConditionVO.getActivePage();
         Sort sort = new Sort(Sort.Direction.DESC,"id");
+        log.info("\n\nsearchConditionVO:"+searchConditionVO.toString());
         for (ColumnFilter columnFilter:searchConditionVO.getColumnFilters()) {
             if (ColumnFilterType.SORT.getName().equals(columnFilter.getType()) && columnFilter.getValue() != null) {
                 sort = new Sort(Sort.Direction.fromString(columnFilter.getValue()),columnFilter.getField());

+ 5 - 2
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/web/ctrl/CaseImportAndExportController.java

@@ -88,14 +88,17 @@ public class CaseImportAndExportController {
                 }
             }
             //获取本地ip地址
-            String ip = InetAddress.getLocalHost().getHostAddress();
+            String host = request.getHeader("Host");
+
+            System.out.println("\n\nhost: "+host+"\n\n");
+
             //获取默认ownerId
             String ownerId = request.getParameter("ownerId");
             //System.out.println("ownerId:"+ownerId);
             if (ownerId == null || ownerId.equals("")) {
                 ownerId = SecurityUtils.getSubject().getSession().getAttribute("userId").toString();
             }
-            Map<String, Object> tempMap = caseImportLogic.importCases(filePath, ip, ownerId, fileName);
+            Map<String, Object> tempMap = caseImportLogic.importCases(filePath, host, ownerId, fileName);
             if (!tempMap.get("code").equals(0)) {
                 res.put("code", 4);
                 res.put("message", tempMap.get("message"));

+ 7 - 1
mooctest-site-server/src/main/resources/application.yaml

@@ -147,12 +147,14 @@ featureSwitch:
         webide: false
         wechat: false
         medal: false
+        loginByUserCenter: false
     server:
         rpcDevService: false
         mongoServer: true
         UserService: false
         enableRabbitListener: true
         initExamScheduler: true
+        domainShare: false
     default:
         role: worker
 thirdPartTool:
@@ -197,6 +199,8 @@ mongodb:
     difficultAnalysisCollection: difficultAnalysisResult
     host: restheart
     port: 8080
+    trueHost: mongodb
+    truePort: 27017
     reportCollection: report
     sumCatchCollection: sumCatch
     targetGraphCollection: targetGraph
@@ -210,4 +214,6 @@ celeryServer:
 
 cache:
     expire:
-        duration: 60
+        duration: 60
+swagger:
+    enable: false

BIN
mooctest-site-server/temp/学生测试报告文档3.pdf


BIN
mooctest-site-server/temp/班级测试报告文档修改.pdf