Commit bafd942c125f91005f952c55878c564358c9cdbe

Authored by wtt
1 parent dd94d6fbe3

儿童诊断管理

Showing 7 changed files with 500 additions and 5 deletions

platform-biz-service/src/main/java/com/lyms/platform/permission/model/BabyDiagnoseQuery.java View file @ bafd942
... ... @@ -9,6 +9,7 @@
9 9 private String endBirthDate;
10 10 private String hospitalizationNo;
11 11 private String babyName;
  12 + private String type;
12 13 private String finalDiagnosis;
13 14 //是否建档 1.未建档 2.已建档
14 15 private Integer isbuild;
... ... @@ -27,6 +28,14 @@
27 28  
28 29 public void setStartDischargeDate(String startDischargeDate) {
29 30 this.startDischargeDate = startDischargeDate;
  31 + }
  32 +
  33 + public String getType() {
  34 + return type;
  35 + }
  36 +
  37 + public void setType(String type) {
  38 + this.type = type;
30 39 }
31 40  
32 41 public String getEndDischargeDate() {
platform-biz-service/src/main/resources/mainOrm/master/BabyDiagnoseMapper.xml View file @ bafd942
... ... @@ -127,6 +127,9 @@
127 127 <if test="isbuild != null">
128 128 and isbuild = #{isbuild}
129 129 </if>
  130 + <if test="type != null">
  131 + and type = #{type}
  132 + </if>
130 133 </where>
131 134 </sql>
132 135  
... ... @@ -153,5 +156,6 @@
153 156 <include refid="babyDiagnosesCondition"/>
154 157  
155 158 </select>
  159 +
156 160 </mapper>
platform-dal/src/main/java/com/lyms/platform/pojo/BabyDiagnoseModel.java View file @ bafd942
... ... @@ -12,6 +12,8 @@
12 12 private String blh;
13 13  
14 14 private String syxh;
  15 + // 1新生儿科 2 产科住院数据
  16 + private String type;
15 17  
16 18  
17 19 //姓名
... ... @@ -66,6 +68,14 @@
66 68  
67 69 //是否建档 1未建档 2已建档
68 70 private Integer isbuild;
  71 +
  72 + public String getType() {
  73 + return type;
  74 + }
  75 +
  76 + public void setType(String type) {
  77 + this.type = type;
  78 + }
69 79  
70 80 public Integer getId() {
71 81 return id;
platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdfyHisService.java View file @ bafd942
... ... @@ -1008,6 +1008,76 @@
1008 1008  
1009 1009  
1010 1010 /**
  1011 + * 秦皇岛分别获取新生儿科、产科住院数据
  1012 + *
  1013 + * @param lrrqStart
  1014 + * @param lrrqEnd
  1015 + * @param type 1新生儿科 2 产科住院数据
  1016 + * @Author: 武涛涛
  1017 + * @Date: 2020/7/14 9:55
  1018 + */
  1019 + public List<BabyDischargeDiagnosisModel> queryNewBabyDiagnoseQhd(String lrrqStart, String lrrqEnd, String type) {
  1020 + //新生儿科和产科返回数据字段相同
  1021 + List<BabyDischargeDiagnosisModel> list = null;
  1022 +
  1023 + //新生儿科,
  1024 + if("1".equals(type)){
  1025 + // 1 获取基础数据
  1026 + Connection conn = null;
  1027 + String sql = "select blh,syxh,hzxm,birth,birthtime,sex,sfzh,lxdh,lxdz,lxr,lxrdh,curraddr,lrrq,ryrq,rqrq,cyrq,cqrq,cyzddm,cyzdmc,ksdm,bqdm,mblh,msyxh from VW_LYMS_XSE_BRSYK where cyrq is not null and mblh is null ";
  1028 + try {
  1029 +
  1030 + if (StringUtils.isNotEmpty(lrrqStart) && StringUtils.isNotEmpty(lrrqEnd)) {
  1031 + sql += " and lrrq >= CONVERT(varchar(100),'" + lrrqStart + "', 120) and lrrq <= CONVERT(varchar(100),'" + lrrqEnd + "', 120)";
  1032 + }
  1033 +
  1034 + conn = com.lyms.hospitalapi.qhdfy.ConnTools.makeHisConnection();
  1035 + QueryRunner queryRunner = new QueryRunner();
  1036 +
  1037 + list = queryRunner.query(conn, sql, new BeanListHandler<BabyDischargeDiagnosisModel>(BabyDischargeDiagnosisModel.class));
  1038 + } catch (Exception e) {
  1039 + ExceptionUtils.catchException(e, "queryNewBabyDiagnose error. sql:" + sql);
  1040 + } finally {
  1041 + DbUtils.closeQuietly(conn);
  1042 + }
  1043 + // 2 获取详情数据,查询80数据库获取详情,在将结果遍历填充到list详情字段
  1044 +
  1045 +
  1046 +
  1047 +
  1048 + }//产科住院数据
  1049 + else if ("2".equals(type)){
  1050 + //1 获取基础数据
  1051 + Connection conn = null;
  1052 + String sql = "select blh,syxh,hzxm,birth,birthtime,sex,sfzh,lxdh,lxdz,lxr,lxrdh,curraddr,lrrq,ryrq,rqrq,cyrq,cqrq,cyzddm,cyzdmc,ksdm,bqdm,mblh,msyxh from VW_LYMS_XSE_BRSYK where cyrq is not null and mblh is null ";
  1053 + try {
  1054 +
  1055 + if (StringUtils.isNotEmpty(lrrqStart) && StringUtils.isNotEmpty(lrrqEnd)) {
  1056 + sql += " and lrrq >= CONVERT(varchar(100),'" + lrrqStart + "', 120) and lrrq <= CONVERT(varchar(100),'" + lrrqEnd + "', 120)";
  1057 + }
  1058 +
  1059 + conn = com.lyms.hospitalapi.qhdfy.ConnTools.makeHisConnection();
  1060 + QueryRunner queryRunner = new QueryRunner();
  1061 +
  1062 + list = queryRunner.query(conn, sql, new BeanListHandler<BabyDischargeDiagnosisModel>(BabyDischargeDiagnosisModel.class));
  1063 + } catch (Exception e) {
  1064 + ExceptionUtils.catchException(e, "queryNewBabyDiagnose error. sql:" + sql);
  1065 + } finally {
  1066 + DbUtils.closeQuietly(conn);
  1067 + }
  1068 + // 2 获取详情数据,查询80数据库获取详情,在将结果遍历填充到list详情字段
  1069 +
  1070 +
  1071 +
  1072 + }
  1073 +
  1074 +
  1075 +
  1076 + return list;
  1077 + }
  1078 +
  1079 +
  1080 + /**
1011 1081 *
1012 1082 * 根据病历号(住院号)查询对应人的身份证号码
1013 1083 * @param blNo
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java View file @ bafd942
... ... @@ -571,8 +571,43 @@
571 571 return babyBookbuildingFacade.getBabyDiacrisisList(babyDiagnoseQuery, page, limit);
572 572 }
573 573  
  574 + /**
  575 + * 秦皇岛 (新生儿科诊断,产科病房诊断)list
  576 + * @param babyDiagnoseQuery
  577 + * @param page
  578 + * @param limit
  579 + * @Author: 武涛涛
  580 + * @Date: 2020/7/14 10:30
  581 + */
  582 + @ResponseBody
  583 + @RequestMapping(value = "/getBabyLeaveHospitaiacrisisQhd", method = RequestMethod.GET)
  584 + @TokenRequired
  585 + public BaseResponse getBabyLeaveHospitaiacrisisQhd(BabyDiagnoseQuery babyDiagnoseQuery,
  586 + @RequestParam("page") Integer page,
  587 + @RequestParam("type") String type,
  588 + @RequestParam("limit") Integer limit) {
  589 + return babyBookbuildingFacade.getBabyDiacrisisListQhd(babyDiagnoseQuery, page, limit,type);
  590 + }
574 591  
  592 +
575 593 /**
  594 + * 秦皇岛 产科门诊诊断 list
  595 + *
  596 +
  597 + * @Author: 武涛涛
  598 + * @Date: 2020/7/15 9:31
  599 + */
  600 + @ResponseBody
  601 + @RequestMapping(value = "/getObstetricDiagnosisQhd", method = RequestMethod.GET)
  602 + @TokenRequired
  603 + public BaseResponse getObstetricDiagnosisQhd(HttpServletRequest httpServletRequest,BabyManageRequest babyManageRequest) {
  604 + LoginContext loginState = (LoginContext) httpServletRequest.getAttribute("loginContext");
  605 +
  606 + return babyBookbuildingFacade.getObstetricDiagnosisQhd(babyManageRequest,loginState.getId());
  607 + }
  608 +
  609 +
  610 + /**
576 611 * 处理历史数据 按照时间返回获取保存,格式:lrrqStart=2019062414:41:00&lrrqEnd=2019062418:41:00
577 612 *
578 613 * @param lrrqStart
... ... @@ -588,6 +623,27 @@
588 623 return babyBookbuildingFacade.queryNewBabyDiagnose(lrrqStart, lrrqEnd);
589 624 }
590 625  
  626 + /**
  627 + * 秦皇岛 处理历史数据 按照时间返回获取保存,格式:lrrqStart=2019062414:41:00&lrrqEnd=2019062418:41:00
  628 + * 将视图数据存储到本地mysql数据库,提供列表查询使用。
  629 + *
  630 + * @param request
  631 + * @param response
  632 + * @param lrrqStart
  633 + * @param type 1 新生儿科、2 产科住院数据
  634 + * @param lrrqEnd
  635 + * @Author: 武涛涛
  636 + * @Date: 2020/7/14 10:14
  637 + */
  638 + @ResponseBody
  639 + @RequestMapping(value = "/queryNewBabyDiagnoseQhd", method = RequestMethod.GET)
  640 + public BaseResponse queryNewBabyDiagnoseQhd(HttpServletRequest request, HttpServletResponse response,
  641 + @RequestParam(value = "lrrqStart", required = true) String lrrqStart,
  642 + @RequestParam(value = "type", required = true) String type,
  643 + @RequestParam(value = "lrrqEnd", required = true) String lrrqEnd
  644 + ) {
  645 + return babyBookbuildingFacade.queryNewBabyDiagnoseQhd(lrrqStart, lrrqEnd, type);
  646 + }
591 647  
592 648 /**
593 649 * 获取可以导出的医院列表
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java View file @ bafd942
... ... @@ -21,10 +21,7 @@
21 21 import com.lyms.platform.operate.web.result.*;
22 22 import com.lyms.platform.operate.web.service.BabyAfterVisitService;
23 23 import com.lyms.platform.operate.web.service.ITrackDownService;
24   -import com.lyms.platform.operate.web.utils.BabyListTask;
25   -import com.lyms.platform.operate.web.utils.CommonsHelper;
26   -import com.lyms.platform.operate.web.utils.GrowthCountTask;
27   -import com.lyms.platform.operate.web.utils.MongoUtil;
  24 +import com.lyms.platform.operate.web.utils.*;
28 25 import com.lyms.platform.permission.model.*;
29 26 import com.lyms.platform.permission.service.*;
30 27 import com.lyms.platform.pojo.*;
31 28  
... ... @@ -136,8 +133,11 @@
136 133 @Autowired
137 134 private SyncDataService syncDataService;
138 135  
139   -
140 136 @Autowired
  137 + private AntExRecordService recordService;
  138 + @Autowired
  139 + private CommonService commonService;
  140 + @Autowired
141 141 private AreaCountFacade areaCountFacade;
142 142  
143 143 @Autowired
144 144  
145 145  
... ... @@ -2305,8 +2305,121 @@
2305 2305 objectResponse.setErrormsg("成功");
2306 2306 return objectResponse;
2307 2307 }
  2308 + public BaseListResponse queryObstetricDiagnosisQhdList(BabyManageRequest request, Integer userId) {
2308 2309  
  2310 + String hospitalName = "";
  2311 + String hospitalId = "";
  2312 + //得到当前登录的医院id
  2313 + List<String> hospitalIdList = new ArrayList<>();
  2314 + List<BabyManageListResult> list = null;
  2315 + BabyModelQuery babyQuery = null;
  2316 + List<BabyModel> models = null;
  2317 + try {
  2318 + if (userId != null) {
  2319 + Users dbuser = usersService.getUsers(userId);
  2320 + if (dbuser != null) {
  2321 + hospitalId = String.valueOf(dbuser.getOrgId());
  2322 + hospitalIdList.add(hospitalId);
  2323 + hospitalName = organizationService.getOrganization(Integer.valueOf(hospitalId)).getName();
  2324 + }
  2325 + }
  2326 + //获取全部儿童信息
  2327 + list = new ArrayList<>();
  2328 + babyQuery = new BabyModelQuery();
  2329 + babyQuery.setNeed("true");
  2330 + babyQuery.setPage(request.getPage());
  2331 + babyQuery.setLimit(request.getLimit());
  2332 + babyQuery.setQueryNo(request.getQueryNo());
  2333 + babyQuery.setHospitalIdList(hospitalIdList);
  2334 + List buildType = new ArrayList();
  2335 + buildType.add(1);//儿童直接建档
  2336 + buildType.add(2);//产妇分娩建档
  2337 + babyQuery.setBuildTypeList(buildType);
  2338 + babyQuery.setDataStatus(true);//排除自动建档数据
  2339 + babyQuery.setYn(YnEnums.YES.getId());
  2340 + babyQuery.setMphone(request.getMphone());//母亲联系方式
  2341 + if (StringUtils.isNotEmpty(request.getBirth())) {//生日
  2342 + String birthStr = request.getBirth();
  2343 + String[] dates = birthStr.split(" - ");
  2344 + babyQuery.setBirthStart(DateUtil.parseYMD(dates[0]));
  2345 + babyQuery.setBirthEnd(new Date(DateUtil.parseYMD(dates[1]).getTime() + 24 * 60 * 60 * 1000 - 1));
  2346 + }
  2347 + models = babyBookbuildingService.queryBabyBuildByCond(babyQuery, "created", Sort.Direction.DESC);
  2348 + //如果有高危儿多项就加一下
  2349 + if(CollectionUtils.isNotEmpty(request.getHighRiskInfos())){
  2350 + List<String> parentids = new ArrayList<>();
  2351 + for (BabyModel model: models) {
  2352 + if(StringUtils.isNotEmpty(model.getParentId())){
  2353 + parentids.add(model.getParentId());
  2354 + }
  2355 + }
  2356 + AntExRecordQuery antExRecordQuery = new AntExRecordQuery();
  2357 + antExRecordQuery.setNeed("true");
  2358 + antExRecordQuery.setParentIds(parentids);
  2359 + antExRecordQuery.setrFactorList(request.getHighRiskInfos());//高危儿多项
  2360 + List<AntExRecordModel> antExRecordModelList = recordService.queryAntExRecords(antExRecordQuery, Sort.Direction.DESC, "created");
  2361 + List<String> antExRecordModelparentids = new ArrayList<>();
  2362 + for (AntExRecordModel antExRecordModel: antExRecordModelList) {
  2363 + if(StringUtils.isNotEmpty(antExRecordModel.getParentId())){
  2364 + antExRecordModelparentids.add(antExRecordModel.getParentId());
  2365 + }
  2366 + }
  2367 + //如果有高危条件,没有查询到高危信息,那就返回null
  2368 + if(CollectionUtils.isEmpty(antExRecordModelparentids)){
  2369 + models = null;
  2370 + babyQuery.mysqlBuild(0);
  2371 + }else {
  2372 + babyQuery.setParentIds(antExRecordModelparentids);
  2373 + models = babyBookbuildingService.queryBabyBuildByCond(babyQuery, "created", Sort.Direction.DESC);
2309 2374  
  2375 + }
  2376 +
  2377 + }
  2378 + } catch (NumberFormatException e) {
  2379 + e.printStackTrace();
  2380 + }
  2381 +
  2382 + if (CollectionUtils.isNotEmpty(models)) {
  2383 + int batchSize = 50;
  2384 + int end = 0;
  2385 + List<Future> futures = new ArrayList<>();
  2386 + for (int i = 0; i < models.size(); i += batchSize) {
  2387 + end = (end + batchSize);
  2388 + if (end > models.size()) {
  2389 + end = models.size();
  2390 + }
  2391 + List<BabyModel> ms = models.subList(i, end);
  2392 + Callable c = new BabyListQhdTask(
  2393 + basicConfigFacade,
  2394 + recordService,
  2395 + commonService,
  2396 + basicConfigService,
  2397 + organizationService,
  2398 + babyCheckFacade,
  2399 + ms, hospitalName);
  2400 + Future f = commonThreadPool.submit(c);
  2401 + futures.add(f);
  2402 + }
  2403 + if (CollectionUtils.isNotEmpty(futures)) {
  2404 + for (Future f : futures) {
  2405 + try {
  2406 + list.addAll((List<BabyManageListResult>) f.get());
  2407 + } catch (Exception e) {
  2408 + ExceptionUtils.catchException(e, "baby list error.");
  2409 + }
  2410 + }
  2411 + }
  2412 + }
  2413 +
  2414 + BaseListResponse objectResponse = new BaseListResponse();
  2415 + objectResponse.setErrorcode(ErrorCodeConstants.SUCCESS);
  2416 + objectResponse.setData(list);
  2417 + objectResponse.setPageInfo(babyQuery.getPageInfo());
  2418 + objectResponse.setErrormsg("成功");
  2419 + return objectResponse;
  2420 + }
  2421 +
  2422 +
2310 2423 public BaseResponse updateEndCase(BabyCheckRequest request, Integer userId) {
2311 2424 BaseObjectResponse br = new BaseObjectResponse();
2312 2425 BabyModel bm = new BabyModel();
2313 2426  
2314 2427  
2315 2428  
... ... @@ -4190,9 +4303,79 @@
4190 4303 objectResponse.setErrormsg("成功");
4191 4304 return objectResponse;
4192 4305 }
  4306 + /**
  4307 + * 秦皇岛 诊断(新生儿,产科)管理查询 list
  4308 + *
  4309 + * @param babyDiagnoseQuery
  4310 + * @param page
  4311 + * @param limit
  4312 + * @param type
  4313 + * @Author: 武涛涛
  4314 + * @Date: 2020/7/14 11:31
  4315 + */
  4316 + public BaseListResponse getBabyDiacrisisListQhd(BabyDiagnoseQuery babyDiagnoseQuery, Integer page, Integer limit,String type) {
  4317 + List<Map<String, Object>> result = new ArrayList<>();
4193 4318  
  4319 + babyDiagnoseQuery.setLimit(limit);
  4320 + babyDiagnoseQuery.setPage(page);
  4321 + babyDiagnoseQuery.setNeed("true");
  4322 + babyDiagnoseQuery.setSort(" cyrq desc ");
  4323 + if(StringUtils.isNotEmpty(type)){
  4324 + babyDiagnoseQuery.setType(type);
  4325 + }
  4326 + if (StringUtils.isNotEmpty(babyDiagnoseQuery.getStartDischargeDate()) && StringUtils.isNotEmpty(babyDiagnoseQuery.getEndDischargeDate())) {
  4327 + babyDiagnoseQuery.setStartDischargeDate(babyDiagnoseQuery.getStartDischargeDate() + " 00:00:00");
  4328 + babyDiagnoseQuery.setEndDischargeDate(babyDiagnoseQuery.getEndDischargeDate() + " 23:59:59");
  4329 + }
  4330 + if (StringUtils.isNotEmpty(babyDiagnoseQuery.getStartBirthDate()) && StringUtils.isNotEmpty(babyDiagnoseQuery.getEndBirthDate())) {
  4331 + babyDiagnoseQuery.setStartBirthDate(babyDiagnoseQuery.getStartBirthDate() + " 00:00:00");
  4332 + babyDiagnoseQuery.setEndBirthDate(babyDiagnoseQuery.getEndBirthDate() + " 23:59:59");
  4333 + }
  4334 + List<BabyDiagnoseModel> babyDiagnoseModels = babyDiagnoseService.queryBabyDiagnosesList(babyDiagnoseQuery);
  4335 + if (babyDiagnoseModels.size() > 0) {
  4336 + for (BabyDiagnoseModel info : babyDiagnoseModels) {
  4337 + Map<String, Object> map = new HashMap<>();
  4338 + if (null != info.getCyrq()) {
  4339 + map.put("dischargeDate", DateUtil.getyyyy_MM_dd(info.getCyrq()));
  4340 + if (null != info.getBirth()) {
  4341 + map.put("birth", DateUtil.getyyyy_MM_dd(info.getBirth()));
  4342 + map.put("monthAge", DateUtil.getBabyMonthAge(info.getBirth(), new Date()));
  4343 + }
  4344 + map.put("babyName", info.getHzxm());
  4345 + map.put("sex", info.getSex());
  4346 + map.put("hospitalizationNo", info.getBlh());
  4347 + map.put("dischargeDiagnosis", info.getCyzdmc());
  4348 + map.put("contactsPhone", info.getLxrdh());
  4349 + map.put("contactPhone", info.getLxdh());
  4350 + map.put("contacts", info.getLxr());
  4351 + result.add(map);
  4352 + }
  4353 + }
  4354 + }
  4355 + BaseListResponse objectResponse = new BaseListResponse();
  4356 + objectResponse.setPageInfo(babyDiagnoseQuery.getPageInfo());
  4357 + objectResponse.setData(result);
  4358 + objectResponse.setErrorcode(ErrorCodeConstants.SUCCESS);
  4359 + objectResponse.setErrormsg("成功");
  4360 + return objectResponse;
  4361 + }
4194 4362  
  4363 +
4195 4364 /**
  4365 + * 秦皇岛 产科门诊诊断 list
  4366 + *
  4367 + * @param babyManageRequest
  4368 + * @param userId
  4369 + * @Author: 武涛涛
  4370 + * @Date: 2020/7/15 15:59
  4371 + */
  4372 + public BaseListResponse getObstetricDiagnosisQhd(BabyManageRequest babyManageRequest, Integer userId) {
  4373 +
  4374 + return queryObstetricDiagnosisQhdList(babyManageRequest, userId);
  4375 + }
  4376 +
  4377 +
  4378 + /**
4196 4379 * 查询一段时间新生儿诊断记录
4197 4380 *
4198 4381 * @param lrrqStart 录入日期开始
4199 4382  
... ... @@ -4205,7 +4388,13 @@
4205 4388 .setErrormsg("成功").setErrorcode(ErrorCodeConstants.SUCCESS).setData(size);
4206 4389 }
4207 4390  
  4391 + public BaseObjectResponse queryNewBabyDiagnoseQhd(String lrrqStart, String lrrqEnd, String type) {
4208 4392  
  4393 + int size = handleBabyDiagnoseQhd(lrrqStart, lrrqEnd,type);
  4394 + return new BaseObjectResponse()
  4395 + .setErrormsg("成功").setErrorcode(ErrorCodeConstants.SUCCESS).setData(size);
  4396 + }
  4397 +
4209 4398 /**
4210 4399 * 处理数据
4211 4400 *
4212 4401  
... ... @@ -4238,7 +4427,43 @@
4238 4427 return CollectionUtils.isNotEmpty(list) ? list.size() : 0;
4239 4428 }
4240 4429  
  4430 + /**
  4431 + * 秦皇岛处理儿童诊断数据
  4432 + *
  4433 + * @param lrrqStart
  4434 + * @param lrrqEnd
  4435 + * @param type 1 新生儿科、2 产科住院数据
  4436 + * @Author: 武涛涛
  4437 + * @Date: 2020/7/14 10:13
  4438 + */
  4439 + public int handleBabyDiagnoseQhd(String lrrqStart, String lrrqEnd, String type) {
4241 4440  
  4441 + List<BabyDischargeDiagnosisModel> list = qhdfyHisService.queryNewBabyDiagnoseQhd(lrrqStart, lrrqEnd,type);
  4442 +
  4443 + if (CollectionUtils.isNotEmpty(list)) {
  4444 + Map param = new HashMap();
  4445 + for (BabyDischargeDiagnosisModel model : list) {
  4446 + param.put("blh", model.getBlh());
  4447 +
  4448 + try {
  4449 + List<BabyDiagnoseModel> dbList = babyDiagnoseService.queryBabyDiagnoses(param);
  4450 + if (CollectionUtils.isEmpty(dbList)) {
  4451 + BabyDiagnoseModel babyDiagnoseModel = model.convertToDataModel();
  4452 + /* 注意:会有个问题,就是以前历史数据会不能区分是1 新生儿科或2 产科住院数据*/
  4453 + babyDiagnoseModel.setType(type);
  4454 + babyDiagnoseService.addBabyDiagnose(babyDiagnoseModel);
  4455 + System.out.println("handleBabyDiagnose success " + model.getBlh());
  4456 + }
  4457 + } catch (Exception e) {
  4458 + ExceptionUtils.catchException(e, "handleBabyDiagnose error.");
  4459 + continue;
  4460 + }
  4461 + }
  4462 + }
  4463 +
  4464 + return CollectionUtils.isNotEmpty(list) ? list.size() : 0;
  4465 + }
  4466 +
4242 4467 /**
4243 4468 * 获取当前时间前一个小时的数据
4244 4469 */
... ... @@ -4252,6 +4477,9 @@
4252 4477 System.out.println("lrrqStart =" + lrrqStart);
4253 4478 System.out.println("lrrqEnd =" + lrrqEnd);
4254 4479 int size = handleBabyDiagnose(lrrqStart, lrrqEnd);
  4480 + //秦皇岛诊断数据定时同步到mysql数据库中
  4481 +// int size1 = handleBabyDiagnoseQhd(lrrqStart, lrrqEnd,"1");
  4482 +// int size2 = handleBabyDiagnoseQhd(lrrqStart, lrrqEnd,"2");
4255 4483 System.out.println("autoGetBabyDiagnose size " + size);
4256 4484 }
4257 4485  
platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/BabyListQhdTask.java View file @ bafd942
  1 +package com.lyms.platform.operate.web.utils;
  2 +
  3 +import com.lyms.platform.biz.service.AntExRecordService;
  4 +import com.lyms.platform.biz.service.BasicConfigService;
  5 +import com.lyms.platform.biz.service.CommonService;
  6 +import com.lyms.platform.common.enums.ServiceStatusEnums;
  7 +import com.lyms.platform.common.enums.ServiceTypeEnums;
  8 +import com.lyms.platform.common.enums.SexEnum;
  9 +import com.lyms.platform.common.utils.DateUtil;
  10 +import com.lyms.platform.common.utils.StringUtils;
  11 +import com.lyms.platform.operate.web.facade.BabyCheckFacade;
  12 +import com.lyms.platform.operate.web.facade.BasicConfigFacade;
  13 +import com.lyms.platform.operate.web.result.BabyManageListResult;
  14 +import com.lyms.platform.permission.service.OrganizationService;
  15 +import com.lyms.platform.pojo.AntExRecordModel;
  16 +import com.lyms.platform.pojo.BabyModel;
  17 +import com.lyms.platform.pojo.BasicConfig;
  18 +import com.lyms.platform.query.AntExRecordQuery;
  19 +import org.apache.commons.collections.CollectionUtils;
  20 +import org.springframework.data.domain.Sort;
  21 +
  22 +import java.util.ArrayList;
  23 +import java.util.Date;
  24 +import java.util.List;
  25 +import java.util.concurrent.Callable;
  26 +
  27 +/**
  28 + * Created by lqy on 2016/11/30.
  29 + */
  30 +public class BabyListQhdTask implements Callable {
  31 +
  32 + private BasicConfigService basicConfigService;
  33 +
  34 + private OrganizationService organizationService;
  35 +
  36 + private BabyCheckFacade babyCheckFacade;
  37 +
  38 + private List<BabyModel> models;
  39 +
  40 + private String hospitalName;
  41 +
  42 + private BasicConfigFacade basicConfigFacade;
  43 +
  44 + private AntExRecordService recordService;
  45 + private CommonService commonService;
  46 +
  47 + public BabyListQhdTask(
  48 + BasicConfigFacade basicConfigFacade,
  49 + AntExRecordService recordService,
  50 + CommonService commonService,
  51 + BasicConfigService basicConfigService,
  52 + OrganizationService organizationService,
  53 + BabyCheckFacade babyCheckFacade,
  54 + List<BabyModel> models,
  55 + String hospitalName) {
  56 + this.basicConfigFacade = basicConfigFacade;
  57 + this.recordService = recordService;
  58 + this.commonService = commonService;
  59 + this.basicConfigService = basicConfigService;
  60 + this.organizationService = organizationService;
  61 + this.babyCheckFacade = babyCheckFacade;
  62 + this.models = models;
  63 + this.hospitalName = hospitalName;
  64 +
  65 + }
  66 +
  67 + @Override
  68 + public List<BabyManageListResult> call() throws Exception {
  69 + List<BabyManageListResult> list = new ArrayList<>();
  70 + if (CollectionUtils.isNotEmpty(models)) {
  71 + for (BabyModel model : models) {
  72 + BabyManageListResult result = new BabyManageListResult();
  73 + result.setId(model.getId());
  74 + if (model.getHighRisk() == null || model.getHighRisk() == 0) {
  75 + result.setHighRisk("健康");
  76 + } else if (model.getHighRisk() == 1) {
  77 + result.setHighRisk("高危");
  78 + }
  79 + if(StringUtils.isNotEmpty(model.getParentId())){
  80 + AntExRecordQuery antExRecordQuery = new AntExRecordQuery();
  81 + antExRecordQuery.setParentId(model.getParentId());//产检记录没有yn
  82 + List<AntExRecordModel> antExRecordModelList = recordService.queryAntExRecords(antExRecordQuery, Sort.Direction.DESC, "created");
  83 + if(CollectionUtils.isNotEmpty(antExRecordModelList)){
  84 + AntExRecordModel antExRecordModel = antExRecordModelList.get(0);
  85 + if(antExRecordModel!=null && CollectionUtils.isNotEmpty(antExRecordModel.gethRisk())){
  86 + List list1 = antExRecordModel.gethRisk();
  87 + if(CollectionUtils.isNotEmpty(list1)){
  88 + String ri = commonService.resloveFactor(list1);
  89 + result.setHighRiskInfo(ri);
  90 + }
  91 + }
  92 + }
  93 + }
  94 + result.setSex(model.getSex() == null ? "" : StringUtils.emptyDeal(SexEnum.getTextById(model.getSex())));
  95 + result.setBabyName(StringUtils.emptyDeal(model.getName()));
  96 + result.setBirthday(StringUtils.emptyDeal(DateUtil.getyyyy_MM_dd(model.getBirth())));
  97 + result.setMommyName(StringUtils.emptyDeal(model.getMname()));
  98 + result.setMommnyPhone(StringUtils.emptyDeal(model.getMphone()));
  99 + result.setMommnyEncryptPhone(StringUtils.encryPhone(model.getMphone()));
  100 + result.setMonthAge(StringUtils.emptyDeal(DateUtil.getBabyMonthAge(model.getBirth(), new Date())));
  101 + result.setPatientId(model.getParentId());
  102 + result.setBuildTime(DateUtil.getyyyy_MM_dd(model.getBuildDate()));
  103 + result.setHospitalName(hospitalName);
  104 + result.setMcertNo(model.getMcertNo());
  105 + result.setMcertTypeId(model.getMcertTypeId());
  106 + String diagnose = "";
  107 + result.setDiagnose(StringUtils.emptyDeal(diagnose));
  108 +
  109 + list.add(result);
  110 + }
  111 + }
  112 + return list;
  113 + }
  114 +
  115 +
  116 +}