diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/lhxfy/LhxfyService.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/lhxfy/LhxfyService.java index bb8e77e..e4234dc 100644 --- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/lhxfy/LhxfyService.java +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/lhxfy/LhxfyService.java @@ -4,8 +4,8 @@ import com.lyms.platform.biz.service.BasicConfigService; import com.lyms.platform.biz.service.ResidentsArchiveService; import com.lyms.platform.common.enums.YnEnums; import com.lyms.platform.common.utils.*; -import com.lyms.platform.operate.web.utils.CommonsHelper; -import com.lyms.platform.operate.web.utils.FunvCommonUtil; +import com.lyms.platform.common.utils.HttpClientUtil; +import com.lyms.platform.operate.web.utils.*; import com.lyms.platform.permission.model.LisReportItemModel; import com.lyms.platform.permission.model.LisReportModel; import com.lyms.platform.pojo.PreEugenicsBaseModel; @@ -31,52 +31,64 @@ import java.util.*; */ @Service("lhxfyService") public class LhxfyService { - + public static final String LHFY_LIS_URL = PropertiesUtils.getPropertyValue("lhfy_lis_url"); @Autowired private MongoTemplate mongoTemplate; - public List getLhxfyLis(String cardNo) - { - Connection conn = com.lyms.hospitalapi.lhxfy.ConnTools.makeLisConnection(); - QueryRunner queryRunner = new QueryRunner(true); - try { - String sql = " SELECT LIS_ID as lisId, TITLE as title, TYPE as type, CARDNO as vcCardNo, NAME as name, BHNUM as bhnum, AGE as age, SEX as sex, APPLY_TIME as applyTime, CHECK_TIME as checkTime, PUBLISH_TIME as publishTime, APPLY_DOCTOR as applyDoctor, " + - "APPLY_DEPT as applyDept, CHECKER as checker, MODIFIED as modified, CREATED as created FROM LIS_REPORT_INFO WHERE CARDNO = '"+cardNo+"' AND PUBLISH_TIME >= trunc(sysdate) - 3"; - List lisReportList = queryRunner.query(conn, sql, new BeanListHandler(LisReportModel.class)); - if (CollectionUtils.isNotEmpty(lisReportList)) - { - for(LisReportModel model : lisReportList) - { - model.setItems(getLhxfyLisItem(model.getLisId())); - } - } - return lisReportList; - } - catch (Exception e) - { - ExceptionUtils.catchException(e,"getLhxfyLis error"); - } - return null; - } +// public List getLhxfyLis(String cardNo) +// { +// Connection conn = com.lyms.hospitalapi.lhxfy.ConnTools.makeLisConnection(); +// QueryRunner queryRunner = new QueryRunner(true); +// try { +// String sql = " SELECT LIS_ID as lisId, TITLE as title, TYPE as type, CARDNO as vcCardNo, NAME as name, BHNUM as bhnum, AGE as age, SEX as sex, APPLY_TIME as applyTime, CHECK_TIME as checkTime, PUBLISH_TIME as publishTime, APPLY_DOCTOR as applyDoctor, " + +// "APPLY_DEPT as applyDept, CHECKER as checker, MODIFIED as modified, CREATED as created FROM LIS_REPORT_INFO WHERE CARDNO = '"+cardNo+"' AND PUBLISH_TIME >= trunc(sysdate) - 3"; +// List lisReportList = queryRunner.query(conn, sql, new BeanListHandler(LisReportModel.class)); +// if (CollectionUtils.isNotEmpty(lisReportList)) +// { +// for(LisReportModel model : lisReportList) +// { +// model.setItems(getLhxfyLisItem(model.getLisId())); +// } +// } +// return lisReportList; +// } +// catch (Exception e) +// { +// ExceptionUtils.catchException(e,"getLhxfyLis error"); +// } +// return null; +// } +// +// public List getLhxfyLisItem(String lisId) +// { +// Connection conn = com.lyms.hospitalapi.lhxfy.ConnTools.makeLisConnection(); +// QueryRunner queryRunner = new QueryRunner(true); +// try { +// String sql = "SELECT LIS_ID as lisId, CODE as code, NAME as name, RESULT as result, RESULT_FLAG as resultFlag, REF as ref, RESULT_TYPE as resultType, UNIT as unit FROM LIS_REPORT_ITEM WHERE LIS_ID = '"+lisId+"'"; +// List items = queryRunner.query(conn, sql, new BeanListHandler(LisReportItemModel.class)); +// return items; +// } +// catch (Exception e) +// { +// ExceptionUtils.catchException(e,"getLhxfyLis error"); +// } +// finally { +// } +// return null; +// } + - public List getLhxfyLisItem(String lisId) + public List getLhxfyLis(String cardNo) { - Connection conn = com.lyms.hospitalapi.lhxfy.ConnTools.makeLisConnection(); - QueryRunner queryRunner = new QueryRunner(true); - try { - String sql = "SELECT LIS_ID as lisId, CODE as code, NAME as name, RESULT as result, RESULT_FLAG as resultFlag, REF as ref, RESULT_TYPE as resultType, UNIT as unit FROM LIS_REPORT_ITEM WHERE LIS_ID = '"+lisId+"'"; - List items = queryRunner.query(conn, sql, new BeanListHandler(LisReportItemModel.class)); - return items; - } - catch (Exception e) + Map itemParam = new HashMap<>(1); + itemParam.put("cardNo", cardNo); + String json = HttpClientUtil.doPost(LHFY_LIS_URL, itemParam,"utf-8"); + if (StringUtils.isNotEmpty(json)) { - ExceptionUtils.catchException(e,"getLhxfyLis error"); - } - finally { + return JsonUtil.toList(json,LisReportModel.class); } return null; } - public void autoInLis() { Query query = new Query(); @@ -84,10 +96,12 @@ public class LhxfyService { query.addCriteria(Criteria.where("fillDate").gte(start)); List preEugenicsBaseModels = mongoTemplate.find(query, PreEugenicsBaseModel.class); + System.out.println("autoInLis="+preEugenicsBaseModels.size()); if (CollectionUtils.isNotEmpty(preEugenicsBaseModels)) { for (PreEugenicsBaseModel preEugenicsBaseModel : preEugenicsBaseModels) { + System.out.println("autoInLis WifeCardNo="+preEugenicsBaseModel.getWifeCardNo()); //查询妻子的lis //白带检查 List bdjc = new LinkedList<>(); @@ -131,8 +145,10 @@ public class LhxfyService { } List lisReportModels = getLhxfyLis(preEugenicsBaseModel.getWifeCardNo()); + System.out.println("lisReportModels="+lisReportModels.size()); if (CollectionUtils.isNotEmpty(lisReportModels)) { for (LisReportModel model : lisReportModels) { + System.out.println("LisReportModel="+model.getLisId()); List itemModels = model.getItems(); if (CollectionUtils.isNotEmpty(itemModels)) { for (LisReportItemModel itemModel : itemModels) { diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java index ecc950d..eccb1da 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java @@ -3,6 +3,7 @@ package com.lyms.platform.operate.web.controller; import com.lyms.hospitalapi.cdfy.CdGwInterface; import com.lyms.hospitalapi.cdfy.CdfyHisService; import com.lyms.hospitalapi.dzfy.DzfyFmService; +import com.lyms.hospitalapi.lhxfy.LhxfyService; import com.lyms.hospitalapi.qhdfy.QhdfyFmService; import com.lyms.hospitalapi.qhdfy.QhdfyHisService; import com.lyms.hospitalapi.qhdfy.SyncQhdBaseInfoService; @@ -4620,4 +4621,28 @@ public class TestController extends BaseController { private PremaritalCheckupFacade premaritalCheckupFacade; @Autowired private ResidentsArchiveFacade residentsArchiveFacade; + @Autowired + private LhxfyService lhxfyService; + + /** + * 孕前优生结果出来后 同步lis到孕前优生 + * @return + */ + @RequestMapping(value = "/autoInLis", method = RequestMethod.GET) + @ResponseBody + public String autoInLis() { + lhxfyService.autoInLis(); + return "success"; + } + + /** + * 同步孕前优生档案到隆化his + * @return + */ + @RequestMapping(value = "/syncResidents", method = RequestMethod.GET) + @ResponseBody + public String syncResidents() { + lhxfyService.syncResidents(); + return "success"; + } } diff --git a/platform-operate-api/src/main/resources/config.properties b/platform-operate-api/src/main/resources/config.properties index e1602a4..9c965ac 100644 --- a/platform-operate-api/src/main/resources/config.properties +++ b/platform-operate-api/src/main/resources/config.properties @@ -52,4 +52,6 @@ lp_risk_url=http://lp-chengde-api.healthbaby.com.cn:8082 area_url=http://localhost:8082 #隆化妇幼同步his的地址 -lhfy_his_url= \ No newline at end of file +lhfy_his_url= +#隆化妇幼获取lis的url +lhfy_lis_url= \ No newline at end of file