Commit 3e8fc040ff5c7869e38af869a72ab78d956f0679

Authored by baohanddd
1 parent f42a047ee9

update assconfig table name

Showing 12 changed files with 384 additions and 39 deletions

platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/LisCrisisItemDao.java View file @ 3e8fc04
  1 +package com.lyms.platform.biz.dal;
  2 +
  3 +import com.lyms.platform.common.dao.operator.MongoQuery;
  4 +import com.lyms.platform.pojo.LisCrisisItem;
  5 +
  6 +import java.util.List;
  7 +
  8 +/**
  9 + * Created by Administrator on 2016/10/19 0019.
  10 + */
  11 +public interface LisCrisisItemDao {
  12 +
  13 + public LisCrisisItem addLisCrisisItem(LisCrisisItem obj);
  14 +
  15 + public LisCrisisItem getLisCrisisItem(String id);
  16 +
  17 + public int queryLisCrisisItemCount(MongoQuery query);
  18 +
  19 + public List<LisCrisisItem> queryLisCrisisItem(MongoQuery query);
  20 +
  21 +}
platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/LisReportDao.java View file @ 3e8fc04
  1 +package com.lyms.platform.biz.dal;
  2 +
  3 +import com.lyms.platform.common.dao.operator.MongoQuery;
  4 +import com.lyms.platform.pojo.LisReport;
  5 +
  6 +import java.util.List;
  7 +
  8 +/**
  9 + * Created by Administrator on 2016/10/19 0019.
  10 + */
  11 +public interface LisReportDao {
  12 +
  13 + public LisReport addLisReport(LisReport obj);
  14 +
  15 + public LisReport getLisReport(String id);
  16 +
  17 + public int queryLisReportCount(MongoQuery query);
  18 +
  19 + public List<LisReport> queryLisReport(MongoQuery query);
  20 +
  21 +}
platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/LisCrisisItemDaoImpl.java View file @ 3e8fc04
  1 +package com.lyms.platform.biz.dal.impl;
  2 +
  3 +import com.lyms.platform.biz.dal.LisCrisisItemDao;
  4 +import com.lyms.platform.biz.dal.LisReportDao;
  5 +import com.lyms.platform.common.dao.BaseMongoDAOImpl;
  6 +import com.lyms.platform.common.dao.operator.MongoQuery;
  7 +import com.lyms.platform.pojo.LisCrisisItem;
  8 +import com.lyms.platform.pojo.LisReport;
  9 +import org.springframework.stereotype.Repository;
  10 +
  11 +import java.util.List;
  12 +
  13 +/**
  14 + * Created by Administrator on 2016/10/19 0019.
  15 + */
  16 +@Repository("lisCrisisItemDao")
  17 +public class LisCrisisItemDaoImpl extends BaseMongoDAOImpl<LisCrisisItem> implements LisCrisisItemDao {
  18 +
  19 + @Override
  20 + public LisCrisisItem addLisCrisisItem(LisCrisisItem obj) {
  21 + return save(obj);
  22 + }
  23 +
  24 + @Override
  25 + public LisCrisisItem getLisCrisisItem(String id) {
  26 + return findById(id);
  27 + }
  28 +
  29 + @Override
  30 + public int queryLisCrisisItemCount(MongoQuery query) {
  31 + return (int) count(query.convertToMongoQuery());
  32 + }
  33 +
  34 + @Override
  35 + public List<LisCrisisItem> queryLisCrisisItem(MongoQuery query) {
  36 + return find(query.convertToMongoQuery());
  37 + }
  38 +}
platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/LisReportDaoImpl.java View file @ 3e8fc04
  1 +package com.lyms.platform.biz.dal.impl;
  2 +
  3 +import com.lyms.platform.biz.dal.IHighRiskDao;
  4 +import com.lyms.platform.biz.dal.LisReportDao;
  5 +import com.lyms.platform.common.dao.BaseMongoDAOImpl;
  6 +import com.lyms.platform.common.dao.operator.MongoQuery;
  7 +import com.lyms.platform.pojo.HighRiskSmsModel;
  8 +import com.lyms.platform.pojo.LisReport;
  9 +import com.lyms.platform.pojo.LisReportItem;
  10 +import org.springframework.stereotype.Repository;
  11 +
  12 +import java.util.List;
  13 +
  14 +/**
  15 + * Created by Administrator on 2016/10/19 0019.
  16 + */
  17 +@Repository("lisReportDao")
  18 +public class LisReportDaoImpl extends BaseMongoDAOImpl<LisReport> implements LisReportDao {
  19 +
  20 + @Override
  21 + public LisReport addLisReport(LisReport obj) {
  22 + return save(obj);
  23 + }
  24 +
  25 + @Override
  26 + public LisReport getLisReport(String id) {
  27 + return findById(id);
  28 + }
  29 +
  30 + @Override
  31 + public int queryLisReportCount(MongoQuery query) {
  32 + return (int)count(query.convertToMongoQuery());
  33 + }
  34 +
  35 + @Override
  36 + public List<LisReport> queryLisReport(MongoQuery query) {
  37 + return find(query.convertToMongoQuery());
  38 + }
  39 +}
platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/LisCrisisItemService.java View file @ 3e8fc04
  1 +package com.lyms.platform.biz.service;
  2 +
  3 +import org.springframework.stereotype.Service;
  4 +
  5 +/**
  6 + * Created by Administrator on 2016/10/19 0019.
  7 + */
  8 +@Service("lisCrisisItemService")
  9 +public class LisCrisisItemService {
  10 +}
platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/LisReportService.java View file @ 3e8fc04
  1 +package com.lyms.platform.biz.service;
  2 +
  3 +import com.lyms.platform.biz.dal.LisReportDao;
  4 +import com.lyms.platform.pojo.LisReport;
  5 +import com.lyms.platform.query.LisReportQuery;
  6 +import org.springframework.beans.factory.annotation.Autowired;
  7 +import org.springframework.stereotype.Service;
  8 +
  9 +/**
  10 + * Created by Administrator on 2016/10/19 0019.
  11 + */
  12 +@Service("lisReportService")
  13 +public class LisReportService {
  14 +
  15 + @Autowired
  16 + private LisReportDao lisReportDao;
  17 +
  18 + public int queryLisReportCount(LisReportQuery query) {
  19 + return lisReportDao.queryLisReportCount(query.convertToQuery());
  20 + }
  21 +
  22 + public void addLisReport(LisReport report) {
  23 + lisReportDao.addLisReport(report);
  24 + }
  25 +
  26 +}
platform-dal/src/main/java/com/lyms/platform/pojo/LisCrisisItem.java View file @ 3e8fc04
... ... @@ -11,6 +11,7 @@
11 11 public class LisCrisisItem {
12 12  
13 13 private String id;
  14 + private String hospitalId;
14 15 private String name;
15 16 private Integer age;
16 17 private String weeks;
... ... @@ -27,6 +28,14 @@
27 28 private Date publishTime;
28 29 private Integer status;
29 30 private String statusName;
  31 +
  32 + public String getHospitalId() {
  33 + return hospitalId;
  34 + }
  35 +
  36 + public void setHospitalId(String hospitalId) {
  37 + this.hospitalId = hospitalId;
  38 + }
30 39  
31 40 public String getId() {
32 41 return id;
platform-dal/src/main/java/com/lyms/platform/pojo/LisReport.java View file @ 3e8fc04
... ... @@ -12,6 +12,7 @@
12 12 public class LisReport {
13 13  
14 14 private String id;
  15 + private String hospitalId;
15 16 private String patientFid;
16 17 private String patientHid;
17 18 private String vcCardNo;
... ... @@ -25,6 +26,23 @@
25 26 private String checkDoctorCode;
26 27 private String checkDoctorName;
27 28 private Date publishTime;
  29 + private Integer status;// 1:未计算危机;2:已计算危机
  30 +
  31 + public Integer getStatus() {
  32 + return status;
  33 + }
  34 +
  35 + public void setStatus(Integer status) {
  36 + this.status = status;
  37 + }
  38 +
  39 + public String getHospitalId() {
  40 + return hospitalId;
  41 + }
  42 +
  43 + public void setHospitalId(String hospitalId) {
  44 + this.hospitalId = hospitalId;
  45 + }
28 46  
29 47 private List<LisReportItem> itemList;
30 48  
platform-dal/src/main/java/com/lyms/platform/query/LisCrisisItemQuery.java View file @ 3e8fc04
... ... @@ -26,6 +26,94 @@
26 26 private String applyDoctorName;
27 27 private Integer status;
28 28  
  29 + public String getId() {
  30 + return id;
  31 + }
  32 +
  33 + public void setId(String id) {
  34 + this.id = id;
  35 + }
  36 +
  37 + public String getName() {
  38 + return name;
  39 + }
  40 +
  41 + public void setName(String name) {
  42 + this.name = name;
  43 + }
  44 +
  45 + public String getHospitalId() {
  46 + return hospitalId;
  47 + }
  48 +
  49 + public void setHospitalId(String hospitalId) {
  50 + this.hospitalId = hospitalId;
  51 + }
  52 +
  53 + public String getItemCode() {
  54 + return itemCode;
  55 + }
  56 +
  57 + public void setItemCode(String itemCode) {
  58 + this.itemCode = itemCode;
  59 + }
  60 +
  61 + public String getItemName() {
  62 + return itemName;
  63 + }
  64 +
  65 + public void setItemName(String itemName) {
  66 + this.itemName = itemName;
  67 + }
  68 +
  69 + public String getClassify() {
  70 + return classify;
  71 + }
  72 +
  73 + public void setClassify(String classify) {
  74 + this.classify = classify;
  75 + }
  76 +
  77 + public String getClassifyName() {
  78 + return classifyName;
  79 + }
  80 +
  81 + public void setClassifyName(String classifyName) {
  82 + this.classifyName = classifyName;
  83 + }
  84 +
  85 + public String getFlag() {
  86 + return flag;
  87 + }
  88 +
  89 + public void setFlag(String flag) {
  90 + this.flag = flag;
  91 + }
  92 +
  93 + public String getApplyDoctorCode() {
  94 + return applyDoctorCode;
  95 + }
  96 +
  97 + public void setApplyDoctorCode(String applyDoctorCode) {
  98 + this.applyDoctorCode = applyDoctorCode;
  99 + }
  100 +
  101 + public String getApplyDoctorName() {
  102 + return applyDoctorName;
  103 + }
  104 +
  105 + public void setApplyDoctorName(String applyDoctorName) {
  106 + this.applyDoctorName = applyDoctorName;
  107 + }
  108 +
  109 + public Integer getStatus() {
  110 + return status;
  111 + }
  112 +
  113 + public void setStatus(Integer status) {
  114 + this.status = status;
  115 + }
  116 +
29 117 @Override
30 118 public MongoQuery convertToQuery() {
31 119 MongoCondition condition = MongoCondition.newInstance();
platform-dal/src/main/java/com/lyms/platform/query/LisReportQuery.java View file @ 3e8fc04
... ... @@ -2,15 +2,85 @@
2 2  
3 3 import com.lyms.platform.common.base.IConvertToNativeQuery;
4 4 import com.lyms.platform.common.dao.BaseQuery;
  5 +import com.lyms.platform.common.dao.operator.MongoCondition;
  6 +import com.lyms.platform.common.dao.operator.MongoOper;
5 7 import com.lyms.platform.common.dao.operator.MongoQuery;
  8 +import org.bson.types.ObjectId;
6 9  
7 10 /**
8 11 * Created by Administrator on 2016/10/19 0019.
9 12 */
10 13 public class LisReportQuery extends BaseQuery implements IConvertToNativeQuery {
  14 +
  15 + private String id;
  16 + private String hospitalId;
  17 + private String vcCardNo;
  18 + private String name;
  19 + private Integer status;// 1:未计算危机;2:已计算危机
  20 +
  21 + public Integer getStatus() {
  22 + return status;
  23 + }
  24 +
  25 + public void setStatus(Integer status) {
  26 + this.status = status;
  27 + }
  28 +
  29 + public String getId() {
  30 + return id;
  31 + }
  32 +
  33 + public void setId(String id) {
  34 + this.id = id;
  35 + }
  36 +
  37 + public String getHospitalId() {
  38 + return hospitalId;
  39 + }
  40 +
  41 + public void setHospitalId(String hospitalId) {
  42 + this.hospitalId = hospitalId;
  43 + }
  44 +
  45 + public String getVcCardNo() {
  46 + return vcCardNo;
  47 + }
  48 +
  49 + public void setVcCardNo(String vcCardNo) {
  50 + this.vcCardNo = vcCardNo;
  51 + }
  52 +
  53 + public String getName() {
  54 + return name;
  55 + }
  56 +
  57 + public void setName(String name) {
  58 + this.name = name;
  59 + }
  60 +
11 61 @Override
12 62 public MongoQuery convertToQuery() {
13   - return null;
  63 + MongoCondition condition = MongoCondition.newInstance();
  64 + if (null != id) {
  65 + condition = condition.and("id", new ObjectId(id), MongoOper.IS);
  66 + }
  67 + if (null != status) {
  68 + condition = condition.and("status", status, MongoOper.IS);
  69 + }
  70 + if (null != hospitalId) {
  71 + condition = condition.and("hospitalId", hospitalId, MongoOper.IS);
  72 + }
  73 + if(null!=vcCardNo){
  74 + condition=condition.and("vcCardNo",vcCardNo,MongoOper.IS);
  75 + }
  76 + if(null!=hospitalId){
  77 + condition=condition.and("hospitalId",hospitalId,MongoOper.IS);
  78 + }
  79 + if(null!=name){
  80 + condition=condition.and("name",name,MongoOper.IS);
  81 + }
  82 +
  83 + return condition.toMongoQuery();
14 84 }
15 85 }
platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdfyHisService.java View file @ 3e8fc04
... ... @@ -3,15 +3,18 @@
3 3 import com.lyms.hospitalapi.pojo.CheckResponse;
4 4 import com.lyms.hospitalapi.pojo.RisCheckInfo;
5 5 import com.lyms.hospitalapi.v1.*;
  6 +import com.lyms.platform.biz.service.LisReportService;
6 7 import com.lyms.platform.biz.service.PatientsService;
7 8 import com.lyms.platform.common.utils.DateUtil;
8 9 import com.lyms.platform.pojo.LisReport;
9 10 import com.lyms.platform.pojo.LisReportItem;
  11 +import com.lyms.platform.query.LisReportQuery;
10 12 import com.lyms.platform.query.PatientsQuery;
11 13 import org.apache.commons.dbutils.DbUtils;
12 14 import org.apache.commons.dbutils.QueryRunner;
13 15 import org.apache.commons.dbutils.handlers.BeanListHandler;
14 16 import org.apache.commons.lang.StringUtils;
  17 +import org.joda.time.DateTime;
15 18 import org.springframework.beans.factory.annotation.Autowired;
16 19 import org.springframework.stereotype.Service;
17 20  
18 21  
19 22  
20 23  
21 24  
22 25  
23 26  
24 27  
... ... @@ -30,54 +33,45 @@
30 33 @Autowired
31 34 private PatientsService patientsService;
32 35  
  36 + @Autowired
  37 + private LisReportService lisReportService;
  38 +
  39 + public void syncLisReportTask() {
  40 + DateTime dt = new DateTime();
  41 + dt = dt.minusDays(1);
  42 + queryLisReport(dt.toDate());
  43 + }
  44 +
33 45 public List<QhdfyLisReport> queryLisReport(Date startDate) {
  46 + //TODO
  47 + Integer hospitalId = 216;
34 48 List<QhdfyLisReport> result = new ArrayList<>();
35 49 if (null != startDate) {
36   - Connection conn = ConnTools.makePacsConnection();
  50 + Connection conn = ConnTools.makeLisConnection();
37 51 QueryRunner queryRunner = new QueryRunner();
38 52 try {
39 53 PatientsQuery patientsQuery = new PatientsQuery();
40   - String sql = "select top 10000 申请号,病人ID,住院号,卡号,患者姓名,性别,年龄,申请科室代码,申请科室名称,申请医生代码,申请医生名称,检查医生代码,检查医生名称,报告发布时间 from valllist_ex where 卡号 is not null and 报告发布时间>=? order by 申请号 desc";
41   - String subSql = "select top 1000 申请单号,项目代码,项目名称,项目结果,字符结果,数字结果,高低标志,参考值,单位,结果类型 from valresult_ex where 申请单号='";
  54 + String sql = "select top 10000 申请号 as hospitalId,病人ID as patientFid,住院号 as patientHid,卡号 as vcCardNo,患者姓名 as name,性别 as sex,年龄 as age,申请科室代码 as deptCode,申请科室名称as deptName,申请医生代码 as applyDoctorCode,申请医生名称 as applyDoctorName,检查医生代码 as checkDoctorCode,检查医生名称 as checkDoctorName,报告发布时间 as publishTime from valllist_ex where 卡号 is not null and 报告发布时间>=? order by 申请号 desc";
  55 + String subSql = "select top 1000 申请单号 as id,项目代码 as code,项目名称 as name,项目结果 as result,字符结果 as charResult,数字结果 as numberResult,高低标志 as flag,参考值 as ref,单位 as unit,结果类型 as result from valresult_ex where 申请单号='";
42 56 Object[] params = {startDate};
43   - List<QhdfyLisReport> list = queryRunner.query(conn, sql, new BeanListHandler<QhdfyLisReport>(QhdfyLisReport.class), params);
  57 + List<LisReport> list = queryRunner.query(conn, sql, new BeanListHandler<LisReport>(LisReport.class), params);
44 58 if (list.size() > 0) {
45   - for (QhdfyLisReport report:list) {
46   - patientsQuery.setVcCardNo(report.get卡号());
  59 + for (LisReport report:list) {
  60 + patientsQuery.setVcCardNo(report.getVcCardNo());
47 61 int count = patientsService.queryPatientCount(patientsQuery);
48   - if (count > 0) {
49   - List<QhdfyLisReportItem> itemList = queryRunner.query(conn, subSql+report.get申请号()+"'", new BeanListHandler<QhdfyLisReportItem>(QhdfyLisReportItem.class));
50   - List<LisReportItem> lisReportItemList = new ArrayList<>();
51   - for (QhdfyLisReportItem item:itemList) {
52   - LisReportItem lisReportItem = new LisReportItem();
53   - lisReportItem.setId(item.get申请单号());
54   - lisReportItem.setCharResult(item.get字符结果());
55   - lisReportItem.setCode(item.get项目代码());
56   - lisReportItem.setFlag(item.get高低标志());
57   - lisReportItem.setName(item.get项目名称());
58   - lisReportItem.setNumberResult(item.get数字结果());
59   - lisReportItem.setRef(item.get参考值());
60   - lisReportItem.setResult(item.get项目结果());
61   - lisReportItem.setResultType(item.get结果类型());
62   - lisReportItem.setUnit(item.get单位());
63   - lisReportItemList.add(lisReportItem);
  62 +
  63 + LisReportQuery lisReportQuery = new LisReportQuery();
  64 + lisReportQuery.setVcCardNo(report.getVcCardNo());
  65 + lisReportQuery.setHospitalId(""+hospitalId);
  66 + int reportCount = lisReportService.queryLisReportCount(lisReportQuery);
  67 + if (count > 0 && reportCount == 0) {
  68 + List<LisReportItem> itemList = queryRunner.query(conn, subSql+report.getHospitalId()+"'", new BeanListHandler<LisReportItem>(LisReportItem.class));
  69 + if (itemList.size() > 0) {
  70 + report.setId(hospitalId + ":" + report.getHospitalId());
  71 + report.setItemList(itemList);
  72 + report.setHospitalId(hospitalId + "");
  73 + lisReportService.addLisReport(report);
64 74 }
65   - LisReport lisReport = new LisReport();
66   - lisReport.setName(report.get患者姓名());
67   - lisReport.setAge(report.get年龄());
68   - lisReport.setApplyDoctorCode(report.get申请医生代码());
69   - lisReport.setApplyDoctorName(report.get检查医生名称());
70   - lisReport.setCheckDoctorCode(report.get检查医生代码());
71   - lisReport.setCheckDoctorName(report.get检查医生名称());
72   - lisReport.setDeptCode(report.get申请科室代码());
73   - lisReport.setDeptName(report.get申请科室名称());
74   - lisReport.setPatientFid(report.get病人ID());
75   - lisReport.setPatientHid(report.get住院号());
76   - lisReport.setId(report.get申请号());
77   - lisReport.setPublishTime(report.get报告发布时间());
78   - lisReport.setSex(report.get性别());
79   - lisReport.setVcCardNo(report.get卡号());
80   - lisReport.setItemList(lisReportItemList);
81 75 }
82 76 }
83 77 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java View file @ 3e8fc04
1 1 package com.lyms.platform.operate.web.controller;
2 2  
  3 +import com.lyms.hospitalapi.qhdfy.QhdfyHisService;
3 4 import com.lyms.platform.biz.JdbcUtil;
4 5 import com.lyms.platform.biz.service.PatientsService;
5 6 import org.springframework.beans.factory.annotation.Autowired;
... ... @@ -29,6 +30,9 @@
29 30 @Autowired
30 31 private PatientsService patientsService;
31 32  
  33 + @Autowired
  34 + private QhdfyHisService qhdfyHisService;
  35 +
32 36 /**
33 37 * 获取科室
34 38 */
... ... @@ -143,6 +147,13 @@
143 147 @ResponseBody
144 148 public String delSieve() {
145 149 patientsService.delSieve();;
  150 + return "finish";
  151 + }
  152 +
  153 + @RequestMapping(value = "/syncLisReportTask", method = RequestMethod.GET)
  154 + @ResponseBody
  155 + public String syncLisReportTask() {
  156 + qhdfyHisService.syncLisReportTask();
146 157 return "finish";
147 158 }
148 159