|
@@ -1,5 +1,6 @@
|
|
|
package cn.iselab.mooctest.site.service.common.impl;
|
|
|
|
|
|
+import cn.iselab.mooctest.site.configure.MongoDBConfiguration;
|
|
|
import cn.iselab.mooctest.site.rpc.dev.data.MutationDTO;
|
|
|
import cn.iselab.mooctest.site.service.common.MongoAPIService;
|
|
|
import cn.iselab.mooctest.site.web.data.forMongo.MutationForMongoDTO;
|
|
@@ -9,6 +10,7 @@ import com.google.gson.Gson;
|
|
|
import net.sf.json.JSONArray;
|
|
|
import net.sf.json.JSONObject;
|
|
|
import org.apache.commons.collections.map.HashedMap;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.http.*;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.web.client.RestTemplate;
|
|
@@ -23,6 +25,8 @@ import java.util.*;
|
|
|
@Service
|
|
|
public class MongoAPIServiceImpl implements MongoAPIService {
|
|
|
|
|
|
+ @Autowired
|
|
|
+ MongoDBConfiguration mongoDBConfig;
|
|
|
@Override
|
|
|
public List<MutationForMongoDTO> getMutationFromMongo(Long stuId, Long examId, Long caseId) throws IOException {
|
|
|
HttpHeaders headers = MongoAPIUtils.createAuthHeaderForMongo();
|
|
@@ -40,8 +44,8 @@ public class MongoAPIServiceImpl implements MongoAPIService {
|
|
|
queryParams.put("caseId", caseId);
|
|
|
}
|
|
|
String filter = MongoAPIUtils.generateFilterStr(queryParams);
|
|
|
- String url = MongoAPIUtils.generateFilterUrl(MongoAPIUtils.MONGODB_DB,
|
|
|
- MongoAPIUtils.MONGODB_COLLECTION_MUTATION);
|
|
|
+ String url = MongoAPIUtils.generateFilterUrl(mongoDBConfig.getDb(),
|
|
|
+ mongoDBConfig.getMutationCollection());
|
|
|
ResponseEntity<JSONObject> dto = rt.exchange(url, HttpMethod.GET, entity, JSONObject.class, filter);
|
|
|
|
|
|
List<MutationForMongoDTO> mutationDTOS = extractMutationData(dto);
|
|
@@ -56,8 +60,8 @@ public class MongoAPIServiceImpl implements MongoAPIService {
|
|
|
headers.setContentType(MediaType.APPLICATION_JSON);
|
|
|
MutationForMongoDTO mutationForMongoDTO = new MutationForMongoDTO(null, null, stuId, examId, caseId, mutationDTO);
|
|
|
HttpEntity<MutationForMongoDTO> httpEntity = new HttpEntity<>(mutationForMongoDTO, headers);
|
|
|
- String url = MongoAPIUtils.generateCommonUrl(MongoAPIUtils.MONGODB_DB,
|
|
|
- MongoAPIUtils.MONGODB_COLLECTION_MUTATION);
|
|
|
+ String url = MongoAPIUtils.generateCommonUrl(mongoDBConfig.getDb(),
|
|
|
+ mongoDBConfig.getMutationCollection());
|
|
|
rt.exchange(url, HttpMethod.POST, httpEntity, String.class);
|
|
|
}
|
|
|
|
|
@@ -67,8 +71,8 @@ public class MongoAPIServiceImpl implements MongoAPIService {
|
|
|
HttpHeaders headers = MongoAPIUtils.createAuthHeaderForMongo();
|
|
|
headers.setContentType(MediaType.APPLICATION_JSON);
|
|
|
HttpEntity<MutationForMongoDTO> httpEntity = new HttpEntity<>(mutationDTO, headers);
|
|
|
- String url = MongoAPIUtils.generateUrlWithResourceId(MongoAPIUtils.MONGODB_DB,
|
|
|
- MongoAPIUtils.MONGODB_COLLECTION_MUTATION, mutationDTO.getId());
|
|
|
+ String url = MongoAPIUtils.generateUrlWithResourceId(mongoDBConfig.getDb(),
|
|
|
+ mongoDBConfig.getMutationCollection(), mutationDTO.getId());
|
|
|
rt.exchange(url, HttpMethod.PUT, httpEntity, String.class);
|
|
|
}
|
|
|
|
|
@@ -101,7 +105,7 @@ public class MongoAPIServiceImpl implements MongoAPIService {
|
|
|
queryParams.put("caseTakeId",caseTakeId);
|
|
|
|
|
|
String filter= MongoAPIUtils.generateFilterStr(queryParams);
|
|
|
- String url=MongoAPIUtils.generateFilterUrl(MongoAPIUtils.MONGODB_DB,MongoAPIUtils.MONGODB_COLLECTION_REPORT);
|
|
|
+ String url=MongoAPIUtils.generateFilterUrl(mongoDBConfig.getDb(),mongoDBConfig.getReportCollection());
|
|
|
ResponseEntity<JSONObject> responseEntity=rt.exchange(url,HttpMethod.GET,entity,JSONObject.class,filter);
|
|
|
|
|
|
List<ReportForMongoDTO> reportVOS=extractReportData(responseEntity);
|
|
@@ -114,8 +118,8 @@ public class MongoAPIServiceImpl implements MongoAPIService {
|
|
|
HttpHeaders headers = MongoAPIUtils.createAuthHeaderForMongo();
|
|
|
headers.setContentType(MediaType.APPLICATION_JSON);
|
|
|
HttpEntity<ReportForMongoDTO> httpEntity = new HttpEntity<>(reportForMongoDTO, headers);
|
|
|
- String url = MongoAPIUtils.generateCommonUrl(MongoAPIUtils.MONGODB_DB,
|
|
|
- MongoAPIUtils.MONGODB_COLLECTION_REPORT);
|
|
|
+ String url = MongoAPIUtils.generateCommonUrl(mongoDBConfig.getDb(),
|
|
|
+ mongoDBConfig.getReportCollection());
|
|
|
rt.exchange(url, HttpMethod.POST, httpEntity, String.class);
|
|
|
}
|
|
|
|
|
@@ -125,8 +129,8 @@ public class MongoAPIServiceImpl implements MongoAPIService {
|
|
|
HttpHeaders headers = MongoAPIUtils.createAuthHeaderForMongo();
|
|
|
headers.setContentType(MediaType.APPLICATION_JSON);
|
|
|
HttpEntity<ReportForMongoDTO> httpEntity = new HttpEntity<>(reportForMongoDTO, headers);
|
|
|
- String url = MongoAPIUtils.generateUrlWithResourceId(MongoAPIUtils.MONGODB_DB,
|
|
|
- MongoAPIUtils.MONGODB_COLLECTION_REPORT, reportForMongoDTO.getId());
|
|
|
+ String url = MongoAPIUtils.generateUrlWithResourceId(mongoDBConfig.getDb(),
|
|
|
+ mongoDBConfig.getReportCollection(), reportForMongoDTO.getId());
|
|
|
rt.exchange(url, HttpMethod.PUT, httpEntity, String.class);
|
|
|
}
|
|
|
|