123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 |
- package com.zskk.task;
- import java.io.IOException;
- import java.text.ParseException;
- import java.text.SimpleDateFormat;
- import java.util.Date;
- import com.jfinal.plugin.cron4j.ITask;
- import com.zskk.tools.XmlHelper;
- import okhttp3.MediaType;
- import okhttp3.OkHttpClient;
- import okhttp3.Request;
- import okhttp3.RequestBody;
- import okhttp3.Response;
- import java.util.HashMap;
- import java.util.Map;
- import com.alibaba.fastjson.JSON;
- import com.alibaba.fastjson.JSONArray;
- import com.alibaba.fastjson.JSONObject;
- import com.zskk.service.DataService;
- import com.zskk.service.ServiceFactory;
- import com.zskk.service.ThreadPoolService;
- public class DataTask 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());
- String url = "http://192.168.2.41/WebQuery.asmx/Query";
- OkHttpClient okHttpClient = new OkHttpClient();
- StringBuilder sb = new StringBuilder();
- sb.append("input=");
- sb.append(jsonObject.getString("studyuid"));
- RequestBody body = RequestBody.create(sb.toString(), MediaType.get("application/x-www-form-urlencoded"));
- Request request = new Request.Builder().url(url).post(body).build();
- try (Response response = okHttpClient.newCall(request).execute()) {
- String contentString = response.body().string();
- XmlHelper xmlHelperStr = XmlHelper.of(contentString);
- String content = xmlHelperStr.getString("//string");
- XmlHelper xmlHelper = XmlHelper.of(content);
- String patientname = xmlHelper.getString("//patientname");
- if (patientname == null && patientname == null) {
- continue;
- }
- String department = xmlHelper.getString("//department");
- String clinicaldoctor = xmlHelper.getString("//clinicaldoctor");
- String reportdate = xmlHelper.getString("//reportdate");
- String description = xmlHelper.getString("//description");
- String impression = xmlHelper.getString("//impression");
- String reportdoctor = xmlHelper.getString("//reportdoctor");
- String reviewdoctor = xmlHelper.getString("//reviewdoctor");
- String phone = xmlHelper.getString("//phone ");
- String idcard = xmlHelper.getString("//idcard ");
- Map<String, String> params = new HashMap<>();
- params.put("exam_id", jsonObject.getString("id"));
- // 报告医生姓名
- params.put("report_doctor_name", reportdoctor);
- // 报告时间
- params.put("report_datetime", parseStringToDate(reportdate).toString());
- // 审核医生姓名
- params.put("review_doctor_name", reviewdoctor);
- // 审核时间
- params.put("review_datetime", parseStringToDate(reportdate).toString());
- // 确认医生姓名
- params.put("confirm_doctor_name", reviewdoctor);
- // 确认时间
- params.put("confirm_datetime", parseStringToDate(reportdate).toString());
- // 意见建议
- params.put("impression", impression);
- // 影像所见
- params.put("description", description);
- // exams表
- // 申请科室
- params.put("application_department", department);
- // 申请医生
- params.put("application_doctor", clinicaldoctor);
- // 临床诊断
- params.put("clin_diag", "");
- // 症状
- params.put("clin_symp", "");
- // patient_infos表
- // 患者姓名
- params.put("name", patientname);
- // 患者手机号
- params.put("phone", phone);
- // 患者身份证号
- params.put("card_num", idcard);
- params.put("report_result", "0");
- ThreadPoolService tService = ServiceFactory.getService(ThreadPoolService.class);
- tService.execute(() -> {
- dService.saveReport(params);
- });
- } catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- }
- @Override
- public void stop() {
- // TODO Auto-generated method stub
- }
- private Date parseStringToDate(String dateStr) {
- if (dateStr == null) {
- return new Date();
- }
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
- Date date = null;
- try {
- date = sdf.parse(dateStr);
- } catch (ParseException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return date;
- }
- }
|