xiatian 2 năm trước cách đây
mục cha
commit
e9607a280b

+ 0 - 54
src/main/java/cn/com/qmth/dp/examcloud/oe/modules/findreduplicatequestion/ExportQuesReduplicateProducer.java

@@ -1,7 +1,5 @@
 package cn.com.qmth.dp.examcloud.oe.modules.findreduplicatequestion;
 package cn.com.qmth.dp.examcloud.oe.modules.findreduplicatequestion;
 
 
-import java.io.File;
-import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.List;
@@ -11,16 +9,9 @@ import org.apache.commons.collections4.CollectionUtils;
 import org.apache.poi.xssf.usermodel.XSSFRow;
 import org.apache.poi.xssf.usermodel.XSSFRow;
 import org.apache.poi.xssf.usermodel.XSSFSheet;
 import org.apache.poi.xssf.usermodel.XSSFSheet;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.mongodb.core.MongoTemplate;
-import org.springframework.data.mongodb.core.query.Criteria;
-import org.springframework.data.mongodb.core.query.Query;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
 import cn.com.qmth.dp.examcloud.oe.entity.question.Course;
 import cn.com.qmth.dp.examcloud.oe.entity.question.Course;
-import cn.com.qmth.dp.examcloud.oe.entity.question.Question;
-import cn.com.qmth.dp.examcloud.oe.excel.ExportUtils;
-import cn.com.qmth.dp.examcloud.oe.multithread.Consumer;
 import cn.com.qmth.dp.examcloud.oe.multithread.Producer;
 import cn.com.qmth.dp.examcloud.oe.multithread.Producer;
 import cn.com.qmth.dp.examcloud.oe.util.ResouceUtil;
 import cn.com.qmth.dp.examcloud.oe.util.ResouceUtil;
 
 
@@ -28,9 +19,6 @@ import cn.com.qmth.dp.examcloud.oe.util.ResouceUtil;
 public class ExportQuesReduplicateProducer extends Producer {
 public class ExportQuesReduplicateProducer extends Producer {
 
 
 	
 	
-	@Autowired
-	private MongoTemplate mongoTemplate;
-	
 	@Override
 	@Override
 	protected void produce(Map<String, Object> param) throws Exception {
 	protected void produce(Map<String, Object> param) throws Exception {
 		List<Course> cs = getCourse();
 		List<Course> cs = getCourse();
@@ -39,43 +27,7 @@ public class ExportQuesReduplicateProducer extends Producer {
 				offer(c);
 				offer(c);
 			}
 			}
 		}
 		}
-		List<RetDto> ret = new ArrayList<>();
-		int index=0;
-		for(Consumer c:getConsumers()) {
-			ret.addAll(c.getRet());
-			index++;
-		}
-//		Collections.sort(ret, new Comparator<CourseQuestionsCountRetDto>() {
-//			@Override
-//			public int compare(CourseQuestionsCountRetDto o1, CourseQuestionsCountRetDto o2) {
-//				String c1 = o1.getCourseCode();
-//				String c2 = o2.getCourseCode();
-//				return c1.compareTo(c2);
-//			}
-//
-//		});
-		FileOutputStream fos = null;
-		try {
-			File file = new File("d:/ret.xlsx");
-			if (file.exists()) {
-				file.delete();
-			}
-			file.createNewFile();
-			fos = new FileOutputStream(file);
-			ExportUtils.makeExcel(RetDto.class, ret, fos);
-		} catch (Exception e) {
-			e.printStackTrace();
-		} finally {
-			if (fos != null) {
-				try {
-					fos.close();
-				} catch (IOException e) {
-					e.printStackTrace();
-				}
-			}
-		}
 		System.out.println("courseCount:" + cs.size());
 		System.out.println("courseCount:" + cs.size());
-		System.out.println("finish! TotalQuestionCount:" + getTotalQuestionCount((String)param.get("rootOrgId")));
 	}
 	}
 	
 	
 	
 	
@@ -109,11 +61,5 @@ public class ExportQuesReduplicateProducer extends Producer {
 		return list;
 		return list;
 	}
 	}
 	
 	
-	private long getTotalQuestionCount(String rootOrgId) {
-		Query query = new Query();
-		query.addCriteria(Criteria.where("orgId").is(rootOrgId));
-		long count = mongoTemplate.count(query, Question.class, "question");
-		return count;
-	}
 
 
 }
 }

+ 34 - 1
src/main/java/cn/com/qmth/dp/examcloud/oe/modules/findreduplicatequestion/ExportReduplicateQuestionService.java

@@ -1,18 +1,25 @@
 package cn.com.qmth.dp.examcloud.oe.modules.findreduplicatequestion;
 package cn.com.qmth.dp.examcloud.oe.modules.findreduplicatequestion;
 
 
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.util.ArrayList;
 import java.util.Date;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 import java.util.Map;
 
 
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
+import cn.com.qmth.dp.examcloud.oe.excel.ExportUtils;
+import cn.com.qmth.dp.examcloud.oe.multithread.Consumer;
 import cn.com.qmth.examcloud.web.support.SpringContextHolder;
 import cn.com.qmth.examcloud.web.support.SpringContextHolder;
 
 
 @Service
 @Service
 public class ExportReduplicateQuestionService {
 public class ExportReduplicateQuestionService {
 	private String rootOrgId = "17351";
 	private String rootOrgId = "17351";
 	private String paperName = "230517";
 	private String paperName = "230517";
-	private int threadCount=4;
+	private int threadCount=8;
 
 
 	public void start() {
 	public void start() {
 		Date s=new Date();
 		Date s=new Date();
@@ -22,6 +29,32 @@ public class ExportReduplicateQuestionService {
 			param.put("rootOrgId", rootOrgId);
 			param.put("rootOrgId", rootOrgId);
 			param.put("paperName", paperName);
 			param.put("paperName", paperName);
 			pr.startDispose(ExportQuesReduplicateConsumer.class, threadCount, param);
 			pr.startDispose(ExportQuesReduplicateConsumer.class, threadCount, param);
+			List<RetDto> ret = new ArrayList<>();
+			int index=0;
+			for(Consumer c:pr.getConsumers()) {
+				ret.addAll(c.getRet());
+				index++;
+			}
+			FileOutputStream fos = null;
+			try {
+				File file = new File("d:/ret.xlsx");
+				if (file.exists()) {
+					file.delete();
+				}
+				file.createNewFile();
+				fos = new FileOutputStream(file);
+				ExportUtils.makeExcel(RetDto.class, ret, fos);
+			} catch (Exception e) {
+				throw new RuntimeException(e);
+			} finally {
+				if (fos != null) {
+					try {
+						fos.close();
+					} catch (IOException e) {
+						e.printStackTrace();
+					}
+				}
+			}
 		} catch (Exception e) {
 		} catch (Exception e) {
 			throw new RuntimeException(e);
 			throw new RuntimeException(e);