刘韬 2 rokov pred
rodič
commit
510cf903ff

+ 1 - 1
DataFusion/src/com/zskk/task/DataTask.java

@@ -23,7 +23,7 @@ public class DataTask implements ITask {
 	public void run() {
 		// TODO Auto-generated method stub
 		DataService dService = ServiceFactory.getService(DataService.class);
-        JSONArray jsonArray = dService.getExamList(80);	
+        JSONArray jsonArray = dService.getExamList(50);	
         for (Object object : jsonArray) {
 			JSONObject jsonObject = JSON.parseObject(object.toString());
 			Record record = Db.use("local").findFirst("select * from report_xml where number=?", jsonObject.getString("patient_num"));

+ 68 - 57
DataFusion/src/com/zskk/task/ExamTask.java

@@ -4,78 +4,89 @@ import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import com.jfinal.kit.PropKit;
 import com.jfinal.plugin.activerecord.Db;
 import com.jfinal.plugin.activerecord.Record;
 import com.jfinal.plugin.cron4j.ITask;
 import com.zskk.service.DataService;
 import com.zskk.service.ServiceFactory;
 import com.zskk.service.ThreadPoolService;
+import com.zskk.tools.XmlHelper;
 
 public class ExamTask implements ITask {
 
 	@Override
 	public void run() {
 		// TODO Auto-generated method stub
-		DataService dService = ServiceFactory.getService(DataService.class);
-        JSONArray jsonArray = dService.getExamList(30);	
-        for (Object object : jsonArray) {
-			JSONObject jsonObject = JSON.parseObject(object.toString());
-			Record record = Db.use("connected").findFirst("select * from examinfo where accessionNumber=?", jsonObject.getString("accession_num"));
-			if (record == null) {
-				continue;
-			}
-			Map<String, String> params = new HashMap<>();
-			params.put("exam_id", jsonObject.getString("id"));
-			//报告医生姓名
-			params.put("report_doctor_name", "");
-			//报告时间
-			params.put("report_datetime", "");
-			//审核医生姓名
-			params.put("review_doctor_name", "");
-			//审核时间
-			params.put("review_datetime", "");
-			//确认医生姓名
-			params.put("confirm_doctor_name", "");
-			//确认时间
-			params.put("confirm_datetime", "");
-			//意见建议
-			params.put("impression", "");
-			//影像所见
-			params.put("description", "");
-			//exams表
-			//申请科室
-			params.put("application_department", record.getStr("department"));
-			//申请医生
-			params.put("application_doctor", record.getStr("clinicaldoctor"));
-			//临床诊断
-			params.put("clin_diag", record.getStr("diagnosis"));
-			//症状
-			params.put("clin_symp", record.getStr("symptom"));
-			//patient_infos表
-			//患者姓名
-			params.put("name", record.getStr("patientname"));
-			//患者手机号
-			params.put("phone", record.getStr("phone"));
-			//患者身份证号
-			params.put("card_num", record.getStr("idcard")==null?"":record.getStr("idcard"));
-			//检查结果1阴2阳
-			params.put("report_result", "0");
-			//门诊号住院号
-			params.put("hopitalized_no", record.getStr("inPatientNum")==null?"":record.getStr("inPatientNum"));
-			params.put("out_patient", record.getStr("outPatientNum")==null?"":record.getStr("outPatientNum"));
-			//病人ID
-			params.put("his_patient_id", record.getStr("patientNum"));
-			//检查方法
-			params.put("exam_project", record.getStr("project"));
-			ThreadPoolService tService = ServiceFactory.getService(ThreadPoolService.class);
-			tService.execute(() -> {
-				dService.updatePatientInfo(params);
-			});	
-        }
+				DataService dService = ServiceFactory.getService(DataService.class);
+//		        JSONArray jsonArray = dService.getExamList(80);	
+//		        for (Object object : jsonArray) {
+//					JSONObject jsonObject = JSON.parseObject(object.toString());
+					List<Record> records = Db.use("local").find("select * from report_xml order by createdAt desc limit 80");
+					for (Record record : records) {
+						String contString = record.getStr("report_xml");
+						XmlHelper xmlHelper = XmlHelper.of(contString);
+//						if (record.getStr("impression") == null && record.getStr("description") == null) {
+//							continue;
+//						}
+						Map<String, String> params = new HashMap<>();
+			            params.put("type", "1");
+						
+						params.put("institution_id", PropKit.get("institution_id"));
+
+						params.put("code", record.getStr("number"));
+						//报告医生姓名
+						params.put("report_doctor_name", xmlHelper.getString("/Request/Body/CheckReportDoctor"));
+						//报告时间
+						params.put("report_datetime", parseStringToDate(xmlHelper.getString("/Request/Body/CheckReportDate")));
+						//审核医生姓名
+						params.put("review_doctor_name", xmlHelper.getString("/Request/Body/ReviewDoctorSign"));
+						//审核时间
+						params.put("review_datetime", parseStringToDate(xmlHelper.getString("/Request/Body/CheckReportDate")));
+						//确认医生姓名
+						params.put("confirm_doctor_name", xmlHelper.getString("/Request/Body/ReviewDoctorSign"));
+						//确认时间
+						params.put("confirm_datetime", parseStringToDate(xmlHelper.getString("/Request/Body/CheckReportDate")));
+						//意见建议
+						params.put("impression", xmlHelper.getString("/Request/Body/CheckResultSub"));
+						//影像所见
+						params.put("description", xmlHelper.getString("/Request/Body/CheckReportObj"));
+						//exams表
+						//申请科室
+						params.put("application_department", xmlHelper.getString("/Request/Body/CheckApplyDept"));
+						//申请医生
+						params.put("application_doctor", "");
+						//临床诊断
+						params.put("clin_diag", "");
+						//症状
+						params.put("clin_symp", "");
+						//patient_infos表
+						//患者姓名
+						params.put("name", xmlHelper.getString("/Request/Body/PatientName"));
+						//患者手机号
+						params.put("phone", xmlHelper.getString("/Request/Body/Phone"));
+						//患者身份证号
+						params.put("card_num", xmlHelper.getString("/Request/Body/PatientIDCard"));
+						//检查结果1阴2阳
+						params.put("report_result", "0");
+						//门诊号住院号
+						params.put("hopitalized_no", xmlHelper.getString("/Request/Body/InPatientNO"));
+						params.put("out_patient", xmlHelper.getString("/Request/Body/OutPatientNO"));
+						//病人ID
+						params.put("his_patient_id", xmlHelper.getString("/Request/Body/PatientID"));
+						//检查方法
+//						params.put("exam_project", xmlHelper.getString("/Request/Body/CheckReportObj"));
+						ThreadPoolService tService = ServiceFactory.getService(ThreadPoolService.class);
+						tService.execute(() -> {
+							dService.saveReport(params);
+						});	
+			        }
+						
 	}
 
 	@Override
@@ -93,7 +104,7 @@ public class ExamTask implements ITask {
 		if (dateStr == null) {
 			return "";
 		}
-		SimpleDateFormat sdf= new SimpleDateFormat("yyyy.MM.dd HH:mm:ss");
+		SimpleDateFormat sdf= new SimpleDateFormat("yyyyMMddHHmmss");
 	    Date date = null;
 	    String timeString = null;
 		try {