Commit e263984ff4f2b211d99a58ebfdb9447c2a8f67a8

Authored by liquanyu
1 parent 89c2fb49dc

产检节点统计

Showing 2 changed files with 101 additions and 74 deletions

platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java View file @ e263984
... ... @@ -358,16 +358,20 @@
358 358  
359 359 /**
360 360 * 计算产检是不是对应孕周断中的第一次
361   - * @param hospitalId
  361 + * @param pid
362 362 * @return
363 363 */
364 364 @RequestMapping(value = "/updateCheckRecord", method = RequestMethod.GET)
365 365 @ResponseBody
366   - public String updateCheckRecord(@RequestParam(required = false) String hospitalId)
  366 + public String updateCheckRecord(@RequestParam(required = false) String pid)
367 367 {
368 368  
369 369 PersonModelQuery personModelQuery = new PersonModelQuery();
370 370 personModelQuery.setYn(YnEnums.YES.getId());
  371 + if (StringUtils.isNotEmpty(pid))
  372 + {
  373 + personModelQuery.setId(pid);
  374 + }
371 375  
372 376 List<PersonModel> personModels = personService.queryPersons(personModelQuery);
373 377 if (CollectionUtils.isNotEmpty(personModels))
374 378  
375 379  
376 380  
377 381  
378 382  
379 383  
380 384  
381 385  
382 386  
383 387  
... ... @@ -377,92 +381,110 @@
377 381 {
378 382 end += batchSize;
379 383 end = end > personModels.size() ? personModels.size() : end;
380   - final List<PersonModel> models = personModels.subList(i,batchSize);
  384 + final List<PersonModel> models = personModels.subList(i,end);
381 385  
382 386 commonThreadPool.execute(new Runnable() {
383 387 @Override
384 388 public void run() {
385   - for(PersonModel model : models)
  389 + for(PersonModel person : models)
386 390 {
387   - PatientsQuery patientsQuery1 = new PatientsQuery();
388   - patientsQuery1.setYn(YnEnums.YES.getId());
389   - patientsQuery1.setPid(model.getId());
390   - List<Patients> pats = patientsService.queryPatient(patientsQuery1);
  391 + PatientsQuery patientsQuery = new PatientsQuery();
  392 + patientsQuery.setYn(YnEnums.YES.getId());
  393 + patientsQuery.setPid(person.getId());
  394 + List<Patients> pats = patientsService.queryPatient1(patientsQuery,"created");
391 395  
392   - int batchSize = 1000;
393   - int end = 0;
394   - for (int i = 0; i < pats.size(); i += batchSize) {
395   - end = (end + batchSize);
396   - if (end > pats.size()) {
397   - end = pats.size();
  396 + Map<String,List<Patients>> temps = new HashMap<String, List<Patients>>();
  397 +
  398 + if (CollectionUtils.isNotEmpty(pats))
  399 + {
  400 + for(Patients pat : pats)
  401 + {
  402 + if (pat.getLastMenses() != null)
  403 + {
  404 + Object obj = temps.get(DateUtil.getyyyy_MM_dd(pat.getLastMenses()));
  405 + if (obj != null)
  406 + {
  407 + List<Patients> cc = (List<Patients>)obj;
  408 + cc.add(pat);
  409 + temps.put(DateUtil.getyyyy_MM_dd(pat.getLastMenses()),cc);
  410 + }
  411 + else
  412 + {
  413 + List<Patients> cc = new ArrayList<Patients>();
  414 + cc.add(pat);
  415 + temps.put(DateUtil.getyyyy_MM_dd(pat.getLastMenses()),cc);
  416 + }
  417 + }
398 418 }
399   - System.out.println("start:" + i + ",end:" + end);
400   - final List<Patients> tempList = pats.subList(i, end);
  419 + }
401 420  
402   - commonThreadPool.execute(new Runnable() {
403   - @Override
404   - public void run() {
405   - if (CollectionUtils.isNotEmpty(tempList)) {
406   - AntExRecordQuery antExRecordQuery = new AntExRecordQuery();
407   - for (Patients pat : tempList) {
408   - antExRecordQuery.setParentId(pat.getId());
409   - if (StringUtils.isNotEmpty(pat.getId()))
410   - {
  421 + if (!temps.isEmpty())
  422 + {
  423 + for(String key : temps.keySet())
  424 + {
  425 + List<String> ids = new ArrayList<String>();
  426 + List<Patients> patientses = temps.get(key);
  427 + if (CollectionUtils.isNotEmpty(patientses))
  428 + {
  429 + for(Patients patients : patientses)
  430 + {
  431 + ids.add(patients.getId());
  432 + }
  433 + }
411 434  
412   - for (int i = 0 ; i < 5 ; i++)
413   - {
414   - if (i == 0)
415   - {
416   - antExRecordQuery.setcDueWeekStart(0);
417   - antExRecordQuery.setcDueWeekEnd((12 + 1) * 7 - 1);
418   - }
419   - else if (i == 1)
420   - {
421   - antExRecordQuery.setcDueWeekStart(16*7);
422   - antExRecordQuery.setcDueWeekEnd((20 + 1) * 7 - 1);
423   - }
424   - else if (i == 2)
425   - {
426   - antExRecordQuery.setcDueWeekStart(21*7);
427   - antExRecordQuery.setcDueWeekEnd((24 + 1) * 7 - 1);
428   - }
429   - else if (i == 3)
430   - {
431   - antExRecordQuery.setcDueWeekStart(28*7);
432   - antExRecordQuery.setcDueWeekEnd((36 + 1) * 7 - 1);
433   - }
434   - else if (i == 4)
435   - {
436   - antExRecordQuery.setcDueWeekStart(37*7);
437   - antExRecordQuery.setcDueWeekEnd((40 + 1) * 7 - 1);
438   - }
  435 + if (CollectionUtils.isNotEmpty(ids))
  436 + {
  437 + AntExRecordQuery antExRecordQuery = new AntExRecordQuery();
  438 + antExRecordQuery.setParentIds(ids);
  439 + for (int i = 0 ; i < 5 ; i++)
  440 + {
  441 + if (i == 0)
  442 + {
  443 + antExRecordQuery.setcDueWeekStart(0);
  444 + antExRecordQuery.setcDueWeekEnd((12 + 1) * 7 - 1);
  445 + }
  446 + else if (i == 1)
  447 + {
  448 + antExRecordQuery.setcDueWeekStart(16*7);
  449 + antExRecordQuery.setcDueWeekEnd((20 + 1) * 7 - 1);
  450 + }
  451 + else if (i == 2)
  452 + {
  453 + antExRecordQuery.setcDueWeekStart(21*7);
  454 + antExRecordQuery.setcDueWeekEnd((24 + 1) * 7 - 1);
  455 + }
  456 + else if (i == 3)
  457 + {
  458 + antExRecordQuery.setcDueWeekStart(28*7);
  459 + antExRecordQuery.setcDueWeekEnd((36 + 1) * 7 - 1);
  460 + }
  461 + else if (i == 4)
  462 + {
  463 + antExRecordQuery.setcDueWeekStart(37*7);
  464 + antExRecordQuery.setcDueWeekEnd((40 + 1) * 7 - 1);
  465 + }
439 466  
440   - List<AntExRecordModel> list = recordService.queryAntExRecords(antExRecordQuery);
441   - if (CollectionUtils.isNotEmpty(list))
442   - {
443   - for (int j = 0 ; j < list.size() ; j++)
444   - {
445   - AntExRecordModel m = list.get(j);
446   - if (j == (list.size() - 1))
447   - {
448   - m.setIsFirst(1);
449   - }
450   - else
451   - {
452   - m.setIsFirst(2);
453   - }
454   - recordService.updateOne(m,m.getId());
455   - }
456   -
457   - }
  467 + List<AntExRecordModel> list = recordService.queryAntExRecords(antExRecordQuery);
  468 + if (CollectionUtils.isNotEmpty(list))
  469 + {
  470 + for (int j = 0 ; j < list.size() ; j++)
  471 + {
  472 + AntExRecordModel m = list.get(j);
  473 + if (j == (list.size() - 1))
  474 + {
  475 + m.setIsFirst(1);
458 476 }
  477 + else
  478 + {
  479 + m.setIsFirst(2);
  480 + }
  481 + recordService.updateOne(m,m.getId());
459 482 }
460 483 }
461 484 }
462 485 }
463   - });
  486 + }
464 487 }
465   -
466 488 }
467 489 }
468 490 });
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AreaCountFacade.java View file @ e263984
... ... @@ -518,7 +518,7 @@
518 518 cnames.put("name", "姓名"); //姓名
519 519 cnames.put("buildWeek", "建档孕周"); //建档孕周
520 520 cnames.put("hospitalName", "建档机构"); //建档机构
521   - cnames.put("doctor","建档医生"); //建档医生
  521 + cnames.put("doctor", "建档医生"); //建档医生
522 522 cnames.put("homeAddr","居住地"); //居住地
523 523 cnames.put("hjAddr","户籍地"); //户籍地
524 524 cnames.put("telNo","联系电话"); //联系电话
... ... @@ -640,6 +640,8 @@
640 640  
641 641 AntExRecordQuery query = new AntExRecordQuery();
642 642 query.setPid(model.getPid());
  643 + query.setLastMensesStart(model.getLastMenses());
  644 + query.setLastMensesEnd(model.getLastMenses());
643 645  
644 646 String times = "";
645 647 List<AntExRecordModel> antExRecordModels = recordService.queryAntExRecords(query,Sort.Direction.ASC,"checkTime");
646 648  
... ... @@ -739,7 +741,10 @@
739 741  
740 742 return new BaseListResponse().setData(results).setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg(ErrorCodeConstants.SUCCESS_DESCRIPTION).setPageInfo(antExRecordQuery.getPageInfo());
741 743 }
  744 +
742 745 }
  746 +
  747 +
743 748  
744 749  
745 750