刘韬 3 年之前
父節點
當前提交
c9191ba8b7
共有 2 個文件被更改,包括 29 次插入60 次删除
  1. 4 4
      DataFusion/src/com/zskk/config/ZskkConfig.java
  2. 25 56
      DataFusion/src/com/zskk/task/UpdateTask.java

+ 4 - 4
DataFusion/src/com/zskk/config/ZskkConfig.java

@@ -104,10 +104,10 @@ public class ZskkConfig extends JFinalConfig {
 //		cpData.addTask("*/4 * * * *", new DataTask());
 //		me.add(cpData);
 //		
-//		//将cfind请求检查录入待检查库
-//		Cron4jPlugin inData = new Cron4jPlugin();
-//		inData.addTask("*/4 * * * *", new UpdateTask());
-//		me.add(inData);
+		//将cfind请求检查录入待检查库
+		Cron4jPlugin inData = new Cron4jPlugin();
+		inData.addTask("*/2 * * * *", new UpdateTask());
+		me.add(inData);
 //		
 //		//执行cfind请求
 //		Cron4jPlugin cgData = new Cron4jPlugin();

+ 25 - 56
DataFusion/src/com/zskk/task/UpdateTask.java

@@ -7,11 +7,17 @@ import java.io.IOException;
 import java.io.InputStreamReader;
 import java.text.SimpleDateFormat;
 import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
 import org.w3c.dom.NamedNodeMap;
 import org.w3c.dom.NodeList;
 import com.jfinal.plugin.activerecord.Db;
 import com.jfinal.plugin.activerecord.Record;
 import com.jfinal.plugin.cron4j.ITask;
+import com.zskk.service.ServiceFactory;
+import com.zskk.service.ThreadPoolService;
 import com.zskk.tools.XmlHelper;
 
 public class UpdateTask implements ITask {
@@ -19,61 +25,23 @@ public class UpdateTask implements ITask {
 	@Override
 	public void run() {
 		// TODO Auto-generated method stub
-		String dateString = parseStringToDate();
-		String fileString = dateString.replace("0", "o");
-		File fin_floder = new File("/home/lenovo/CFIND_XML/STUDYUID_" + fileString + "1.xml");
-		// 创建从文件读取数据的FileInputStream流
-		FileInputStream fin;
-		try {
-			fin = new FileInputStream(fin_floder);
-			InputStreamReader isr = null;
-			isr = new InputStreamReader(fin);
-			BufferedReader raf = null;
-			raf = new BufferedReader(isr);
-			String xmlContent = null;
-			xmlContent = raf.readLine();
-			xmlContent = xmlContent.replace("<?xml version=\"1.0\" encoding=\"UTF-8\"?>", "");
-			xmlContent = "<zskk>" + xmlContent + "</zskk>";
-			XmlHelper xmlHelper = XmlHelper.of(xmlContent);
-			// NativeDicomModel节点列表
-			NodeList nativeDicomModelList = xmlHelper.getNodeList("/zskk/NativeDicomModel");
-			for (int i = 0; i < nativeDicomModelList.getLength(); i++) {
-				String qString = "";
-				String studyuidString = "";
-				String modalitiesString = "";
-				// DicomAttribute节点列表
-				NodeList dicomAttributeList = xmlHelper.getNodeList(nativeDicomModelList.item(i), "DicomAttribute");
-				for (int j = 0; j < dicomAttributeList.getLength(); j++) {
-					// DicomAttribute节点属性列表
-					NamedNodeMap attributeMap = dicomAttributeList.item(j).getAttributes();
-					if (attributeMap != null && attributeMap.getLength() > 0) {
-						for (int k = 0; k < attributeMap.getLength(); k++) {
-							if (attributeMap.item(k).getNodeName().equals("tag")) {
-								// 获取studyuid
-								if (attributeMap.item(k).getNodeValue().equals("0020000D")) {
-									studyuidString = xmlHelper.getString(dicomAttributeList.item(j), "Value");
-									continue;
-								}
-								// 获取检查类型
-								if (attributeMap.item(k).getNodeValue().equals("00080061")) {
-									modalitiesString = xmlHelper.getString(dicomAttributeList.item(j), "Value");
-								}
-							}
-						}
-					}
-				}
-				Record studyidfind = Db.use("local").findFirst("select * from study where studyuid = ?",
-						studyuidString);
-				if (studyidfind == null) {
-					Record studyinfo = new Record().set("studyuid", studyuidString).set("modalities", modalitiesString)
-							.set("status", 1).set("createAt", parseStringToDateTime()).set("updateAt", parseStringToDateTime());
-					Db.use("local").save("study", studyinfo);
-				}
+		List<Record> records = Db.use("connected").find("select * from examinfo where checkDate>'?' order by checkDate desc",parseStringToDateTime());
+		for (Record record : records) {
+			if (record == null) {
+				continue;
+			}
+			if (record.getStr("studyuid").isBlank()) {
+				continue;
 			}
-		} catch (IOException e) {
-			// TODO Auto-generated catch block
-			e.printStackTrace();
-		}
+			String studyuidString = record.getStr("studyuid");
+			String modalitiesString = record.getStr("modality");
+			Record studyidfind = Db.use("local").findFirst("select * from study where studyuid = ?", studyuidString);
+			if (studyidfind == null) {
+				Record studyinfo = new Record().set("studyuid", studyuidString).set("modalities", modalitiesString)
+						.set("status", 1).set("createAt", parseStringToDate()).set("updateAt", parseStringToDate());
+				Db.use("local").save("study", studyinfo);
+			}
+		}	
 	}
 
 	@Override
@@ -89,7 +57,7 @@ public class UpdateTask implements ITask {
 	 * @return
 	 */
 	private String parseStringToDate() {
-		SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
+		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 		Date date = new Date();
 		long dInteger = date.getTime();
 		String daString = sdf.format(new Date(dInteger));
@@ -106,7 +74,8 @@ public class UpdateTask implements ITask {
 	private String parseStringToDateTime() {
 		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 		Date date = new Date();
-		String daString = sdf.format(date);
+		Date dateBefore = new Date(date.getTime()-600000);
+		String daString = sdf.format(dateBefore);
 		return daString;
 
 	}