DataTask.java 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. package com.zskk.task;
  2. import java.util.HashMap;
  3. import java.util.Map;
  4. import com.alibaba.fastjson.JSON;
  5. import com.alibaba.fastjson.JSONArray;
  6. import com.alibaba.fastjson.JSONObject;
  7. import com.jfinal.plugin.activerecord.Db;
  8. import com.jfinal.plugin.activerecord.Record;
  9. import com.jfinal.plugin.cron4j.ITask;
  10. import com.zskk.service.DataService;
  11. import com.zskk.service.ServiceFactory;
  12. import com.zskk.service.ThreadPoolService;
  13. public class DataTask implements ITask {
  14. @Override
  15. public void run() {
  16. // TODO Auto-generated method stub
  17. DataService dService = ServiceFactory.getService(DataService.class);
  18. JSONArray jsonArray = dService.getExamList(30);
  19. for (Object object : jsonArray) {
  20. JSONObject jsonObject = JSON.parseObject(object.toString());
  21. Record record = Db.use("connected").findFirst("select * from reportinfo where PatientID=?", jsonObject.getString("accession_num"));
  22. if (record == null) {
  23. continue;
  24. }
  25. if (record.getStr("impression") == null && record.getStr("description") == null) {
  26. continue;
  27. }
  28. Map<String, String> params = new HashMap<>();
  29. params.put("exam_id", jsonObject.getString("id"));
  30. //报告医生姓名
  31. params.put("report_doctor_name", record.getStr("reportdoctor"));
  32. //报告时间
  33. params.put("report_datetime", record.getStr("reportdate"));
  34. //审核医生姓名
  35. params.put("review_doctor_name", record.getStr("reviewdoctor"));
  36. //审核时间
  37. params.put("review_datetime", record.getStr("reportdate"));
  38. //确认医生姓名
  39. params.put("confirm_doctor_name", record.getStr("reviewdoctor"));
  40. //确认时间
  41. params.put("confirm_datetime", record.getStr("reportdate"));
  42. //意见建议
  43. params.put("impression", record.getStr("impression"));
  44. //影像所见
  45. params.put("description", record.getStr("description"));
  46. //exams表
  47. //申请科室
  48. params.put("application_department", record.getStr("department"));
  49. //申请医生
  50. params.put("application_doctor", record.getStr("clinicaldoctor"));
  51. //临床诊断
  52. params.put("clin_diag", "");
  53. //症状
  54. params.put("clin_symp", "");
  55. //patient_infos表
  56. //患者姓名
  57. params.put("name", record.getStr("patientname"));
  58. //患者手机号
  59. params.put("phone", "");
  60. //患者身份证号
  61. params.put("card_num", "");
  62. params.put("report_result", record.getStr("result").equals("1")?"2":"1");
  63. ThreadPoolService tService = ServiceFactory.getService(ThreadPoolService.class);
  64. tService.execute(() -> {
  65. dService.saveReport(params);
  66. });
  67. }
  68. }
  69. @Override
  70. public void stop() {
  71. // TODO Auto-generated method stub
  72. }
  73. }