刘韬 4 years ago
parent
commit
df803053a0

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

@@ -80,9 +80,9 @@ public class ZskkConfig extends JFinalConfig {
 		arpConnected.setDialect(new SqlServerDialect());
 		me.add(arpConnected);
 
-//		Cron4jPlugin cpData = new Cron4jPlugin();
-//		cpData.addTask("*/5 * * * *", new DataTask());
-//		me.add(cpData);
+		Cron4jPlugin cpData = new Cron4jPlugin();
+		cpData.addTask("*/5 * * * *", new DataTask());
+		me.add(cpData);
 
 //		Cron4jPlugin cp2 = new Cron4jPlugin();
 //		cp2.addTask("*/15 * * * *", new UpdateTask());

+ 47 - 39
DataFusion/src/com/zskk/task/DataTask.java

@@ -36,36 +36,36 @@ public class DataTask implements ITask {
 		// TODO Auto-generated method stub
 		try {
 			List<Exams> exams = Exams.dao.use("zskk").find(
-					"SELECT * FROM pacsonline.exams where exam_status=3 and institution_id='02400005' order by createdAt desc limit 30");
+					"SELECT * FROM pacsonline.exams where exam_status=3 and institution_id='02400006' order by createdAt desc limit 30");
 			for (Exams exams2 : exams) {
 				try {
-//					Studies studies = Studies.dao.use("zskk").findById(exams2.getStudyId());
-					Record record = Db.use("connected").findFirst("select * from v_reportinfo where ACCESSIONNUMBER=?",
-							exams2.getAccessionNum());
+					Studies studies = Studies.dao.use("zskk").findById(exams2.getStudyId());
+					Record record = Db.use("connected").findFirst("select * from his.reportinfo where studyuid=?",
+							studies.getStudyuid());
 					if (record == null) {
 						continue;
 					}
 					Report report = new Report().use("zskk");
 					report.setId(creatId());
-					report.setReportDatetime(parseStringToDate(record.getStr("REPORTDATE")));
-					if (record.getStr("description") == null || record.getStr("IMPRESSION") == null
+					report.setReportDatetime(parseStringToDate(record.getStr("reportdate")));
+					if (record.getStr("description") == null || record.getStr("impression") == null
 							|| record.getStr("description").isBlank()) {
 						continue;
 					}
 					report.setImpression(record.getStr("description"));
-					report.setDescription(record.getStr("IMPRESSION"));
+					report.setDescription(record.getStr("impression"));
 					report.setExamId(exams2.getId());
 					report.setCreatedAt(new Date());
-					report.setReportDoctorId(getDoctorIdByName(record.getStr("REPORTDOCTOR")));
-					report.setReviewDoctorId(getDoctorIdByName(record.getStr("REVIEWDOCTOR")));
-					report.setReviewDatetime(parseStringToDate(record.getStr("REPORTDATE")));
-					report.setConfirmDoctorId(getDoctorIdByName(record.getStr("REVIEWDOCTOR")));
-					report.setConfirmDatetime(parseStringToDate(record.getStr("REPORTDATE")));
+					report.setReportDoctorId(getDoctorIdByName(record.getStr("reportdoctor")==null?"":record.getStr("reportdoctor")));
+					report.setReviewDoctorId(getDoctorIdByName(record.getStr("reviewdoctor")));
+					report.setReviewDatetime(parseStringToDate(record.getStr("reportdate")));
+					report.setConfirmDoctorId(getDoctorIdByName(record.getStr("reviewdoctor")));
+					report.setConfirmDatetime(parseStringToDate(record.getStr("reportdate")));
 					report.save();
 					PatientInfos patientInfos = PatientInfos.dao.use("zskk").findById(exams2.getPatientId());
-					patientInfos.setName(record.getStr("PATIENTNAME"));
-					patientInfos.setPhone(record.getStr("PHONE"));
-					patientInfos.setCardNum(record.getStr("IDCARD"));
+					patientInfos.setName(record.getStr("patientname"));
+//					patientInfos.setPhone(record.getStr("PHONE"));
+//					patientInfos.setCardNum(record.getStr("IDCARD"));
 					patientInfos.update();
 					exams2.setExamStatus(9);
 //					String patString = record.getStr("住院号");
@@ -73,63 +73,64 @@ public class DataTask implements ITask {
 //					patString = String.format("%0"+length+"d",Long.valueOf(patString));
 //					exams2.setHopitalizedNo(patString);
 //					exams2.setClinDoctors(record.getStr("CLINICALDOCTOR"));
-					exams2.setApplicationDepartment(record.getStr("DEPARTMENT"));
-					exams2.setApplicationDoctor(record.getStr("CLINICALDOCTOR"));
+					exams2.setApplicationDepartment(record.getStr("department"));
+					exams2.setApplicationDoctor(record.getStr("clinicaldoctor"));
 //					exams2.setClinDiag(record.getStr("diagnosis"));
 					exams2.update();
 					// 传云医康 数据
 					Map<String, String> data = new HashMap<String, String>();
 					// 获取data数据
 					// 医院id
-					data.put("hospital_id", "02400005");
+					data.put("hospital_id", "02400006");
 					// 影像所见
 					data.put("description", record.getStr("description"));
 					// 意见建议
-					data.put("impression", record.getStr("IMPRESSION"));
+					data.put("impression", record.getStr("impression"));
 					// 检查id
 					data.put("exam_id", exams2.getId());
 					data.put("study_id", exams2.getStudyId());
 					// 患者id
 					data.put("patient_id", exams2.getPatientId());
 					// 患者姓名
-					data.put("patient_name", record.getStr("PATIENTNAME"));
+					data.put("patient_name", record.getStr("patientname"));
 					// 患者性别
 					data.put("patient_sex", patientInfos.getSex());
 					// 身份证号
-					data.put("card_num", record.getStr("IDCARD"));
+					data.put("card_num", "");
 					// 手机号
-					data.put("phone", patientInfos.getPhone());
+					data.put("phone", "");
 					// 患者生日
-					data.put("birthday", patientInfos.getBirthday());
+					data.put("birthday", patientInfos.getBirthday()==null?"":patientInfos.getBirthday());
 					// 患者检查时年龄
-					data.put("patient_age", patientInfos.getAge());
+					data.put("patient_age", patientInfos.getAge()==null?"":patientInfos.getAge());
 					// 阴阳性 1阴性 2阳性
-					data.put("report_result", "");
+					data.put("report_result", record.getStr("result").contains("阳")?"2":"1");
 					// 报告时间 10位时间戳
-					data.put("report_datetime", returnSecondTimestamp(record.getStr("REPORTDATE")));
+					data.put("report_datetime", returnSecondTimestamp(record.getStr("reportdate")));
 					// 报告医生id
-					data.put("report_doctor_id", record.getStr("REPORTDOCTOR"));
+					data.put("report_doctor_id", record.getStr("reportdoctor")==null?"":record.getStr("reportdoctor"));
 					// 报告医生姓名
-					data.put("report_doctor_name", record.getStr("REPORTDOCTOR"));
+					data.put("report_doctor_name", record.getStr("reportdoctor")==null?"":record.getStr("reportdoctor"));
 					// 审核时间
-					data.put("review_datetime", returnSecondTimestamp(record.getStr("REPORTDATE")));
+					data.put("review_datetime", returnSecondTimestamp(record.getStr("reportdate")));
 					// 审核医生id
-					data.put("review_doctor_id", record.getStr("REVIEWDOCTOR"));
+					data.put("review_doctor_id", record.getStr("reviewdoctor"));
 					// 审核姓名
-					data.put("review_doctor_name", record.getStr("REVIEWDOCTOR"));
+					data.put("review_doctor_name", record.getStr("reviewdoctor"));
 					// 确认时间
-					data.put("confirm_datetime", returnSecondTimestamp(record.getStr("REPORTDATE")));
+					data.put("confirm_datetime", returnSecondTimestamp(record.getStr("reportdate")));
 					// 确认医生id
-					data.put("confirm_doctor_id", record.getStr("REVIEWDOCTOR"));
+					data.put("confirm_doctor_id", record.getStr("reviewdoctor"));
 					// 确认医生姓名
-					data.put("confirm_doctor_name", record.getStr("REVIEWDOCTOR"));
+					data.put("confirm_doctor_name", record.getStr("reviewdoctor"));
 					data.put("patient_no", "");
 
 
 					ThreadPoolService tService = new com.zskk.service.ThreadPoolService();
 					tService.execute(() -> {
 						String dadaString = JSON.toJSONString(data);
-						dadaString = dadaString.replace("\\r\\n", "");
+						dadaString = dadaString.replace("\\r", "");
+						dadaString = dadaString.replace("\\n", "");
 						dadaString = dadaString.replace("*", "X");
 						dadaString = dadaString.replace("<p>", "");
 						dadaString = dadaString.replace("<br/>", "");
@@ -254,7 +255,14 @@ public class DataTask implements ITask {
 	 * @date: 2019/12/26 18:26
 	 */
 	public String returnSecondTimestamp(String data) throws ParseException {
-		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+		
+		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+		
+		if (data == null) {
+			Date date = new Date();
+			
+			return String.valueOf(date.getTime() / 1000);
+		}
 
 		return String.valueOf(sdf.parse(data).getTime() / 1000);
 	}
@@ -277,14 +285,14 @@ public class DataTask implements ITask {
 		}
 		name = name.replace(" ", "");
 		Doctors doctors = Doctors.dao.use("zskk").findFirst(
-				"SELECT * FROM doctors where instr(?,realname) and institution_id='02400005' and realname <>''", name);
+				"SELECT * FROM doctors where instr(?,realname) and institution_id='02400006' and realname <>''", name);
 		if (doctors == null) {
 			Doctors newDoctors = new Doctors().use("zskk");
 			newDoctors.setId(creatId());
 			newDoctors.setUsername("none");
 			newDoctors.setRealname(name);
 			newDoctors.setPassword("123456");
-			newDoctors.setInstitutionId("02400005");
+			newDoctors.setInstitutionId("02400006");
 			newDoctors.setCreatedAt(new Date());
 			newDoctors.setUpdatedAt(new Date());
 			newDoctors.save();
@@ -297,7 +305,7 @@ public class DataTask implements ITask {
 		if (dateStr == null) {
 			return new Date();
 		}
-		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 		Date date = null;
 		try {
 			date = sdf.parse(dateStr);