Commit 602b7ea81ca180077bf5e09c7ac6ffd2bcb1c730

Authored by liquanyu
1 parent 581277093f

统计

Showing 9 changed files with 638 additions and 8 deletions

platform-operate-api/src/main/java/com/lyms/hospitalapi/lhxfy/LhxfyUploadingProvince.java View file @ 602b7ea
... ... @@ -1450,8 +1450,46 @@
1450 1450 {
1451 1451 resultAdvice.setResult1("3");
1452 1452 }
1453   - resultAdvice.setResultTypen("01");
1454   - resultAdvice.setResultTypev("01");
  1453 + String husbandType = map.get("husbandType") == null ? null : map.get("husbandType").toString();
  1454 + if (StringUtils.isNotEmpty(husbandType))
  1455 + {
  1456 + if (husbandType.equals("1"))
  1457 + {
  1458 + resultAdvice.setResultTypen("01");
  1459 + } else if (husbandType.equals("2"))
  1460 + {
  1461 + resultAdvice.setResultTypen("02");
  1462 + }
  1463 + else if (husbandType.equals("3"))
  1464 + {
  1465 + resultAdvice.setResultTypen("03");
  1466 + }
  1467 +
  1468 + }
  1469 + else
  1470 + {
  1471 + resultAdvice.setResultTypen("01");
  1472 + }
  1473 + String wifeType = map.get("wifeType") == null ? null : map.get("wifeType").toString();
  1474 + if (StringUtils.isNotEmpty(wifeType))
  1475 + {
  1476 + if (wifeType.equals("1"))
  1477 + {
  1478 + resultAdvice.setResultTypev("01");
  1479 + } else if (wifeType.equals("2"))
  1480 + {
  1481 + resultAdvice.setResultTypev("02");
  1482 + }
  1483 + else if (wifeType.equals("3"))
  1484 + {
  1485 + resultAdvice.setResultTypev("03");
  1486 + }
  1487 +
  1488 + }
  1489 + else
  1490 + {
  1491 + resultAdvice.setResultTypev("01");
  1492 + }
1455 1493 return JsonUtil.obj2Str(resultAdvice);
1456 1494 }
1457 1495 return "";
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/AreaCountController.java View file @ 602b7ea
... ... @@ -491,7 +491,7 @@
491 491 * @param dateTime 年月日()
492 492 * @return
493 493 */
494   - @RequestMapping(method = RequestMethod.GET, value = "/getPublicHygieneServiceCount")
  494 + @RequestMapping(method = RequestMethod.GET, value = "/getPublicHygieneServiceCount1")
495 495 @ResponseBody
496 496 @TokenRequired
497 497 public BaseResponse getPublicHygieneServiceCount(HttpServletRequest request,
... ... @@ -504,6 +504,22 @@
504 504 LoginContext loginState = (LoginContext) request.getAttribute("loginContext");
505 505 return patientSyncMysqlFacade.getPublicHygieneServiceCount(provinceId,cityId,areaId,streetId,dateTime,type);
506 506 }
  507 +
  508 +
  509 + @RequestMapping(method = RequestMethod.GET, value = "/getPublicHygieneServiceCount")
  510 + @ResponseBody
  511 + @TokenRequired
  512 + public BaseResponse getPublicHygieneServiceCount1(HttpServletRequest request,
  513 + @RequestParam String provinceId,
  514 + @RequestParam String cityId,
  515 + @RequestParam String areaId,
  516 + @RequestParam( required = false) String streetId,
  517 + @RequestParam Date dateTime,
  518 + @RequestParam ( required = false) Integer type) {
  519 + LoginContext loginState = (LoginContext) request.getAttribute("loginContext");
  520 + return patientSyncMysqlFacade.getPublicHygieneServiceCount1(provinceId,cityId,areaId,streetId,dateTime,type);
  521 + }
  522 +
507 523 /**
508 524 *河北省基本公共卫生服务项目(妇幼卫生部分)工作进度表-导出
509 525 * @param request
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java View file @ 602b7ea
... ... @@ -5358,7 +5358,7 @@
5358 5358 and("fillDate").gte(DateUtil.parseYMD(startDate)).lte(DateUtil.parseYMD(endDate)));
5359 5359 List<PreEugenicsBaseModel> modelList = mongoTemplate.find(query, PreEugenicsBaseModel.class);
5360 5360 if (CollectionUtils.isNotEmpty(modelList)) {
5361   - System.out.println("孕前优生数据"+modelList);
  5361 + System.out.println("孕前优生数据"+modelList.size());
5362 5362 for(PreEugenicsBaseModel model : modelList)
5363 5363 {
5364 5364 int zc = 0;
... ... @@ -5967,6 +5967,7 @@
5967 5967 {
5968 5968 patients = patientsService.findOnePatientById(patients.getSource());
5969 5969 }
  5970 + data.put("coupon",patients.isSendCoupon());
5970 5971 data.put("name",patients.getUsername());
5971 5972 data.put("cardNo",patients.getCardNo());
5972 5973 data.put("fmDate",maternalDeliverModel.getDueDate());
... ... @@ -5980,6 +5981,7 @@
5980 5981 try {
5981 5982 out = response.getOutputStream();
5982 5983 Map <String, String> cnames = new LinkedHashMap <>();
  5984 + cnames.put("coupon","是否方法优惠券");
5983 5985 cnames.put("name", "姓名");
5984 5986 cnames.put("cardNo", "身份证号");
5985 5987 cnames.put("fmDate", "分娩时间");
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java View file @ 602b7ea
... ... @@ -3581,7 +3581,7 @@
3581 3581 patientsQuery.setType(type);
3582 3582 patientsQuery.setHospitalList(hospitalId);
3583 3583 patientsQuery.setYn(YnEnums.YES.getId());
3584   - patientsQuery.setBuildType(0);
  3584 + patientsQuery.setBuildType(1);
3585 3585 if (isEnable) {
3586 3586 patientsQuery.setEnable("2");
3587 3587 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientSyncMysqlFacade.java View file @ 602b7ea
... ... @@ -3285,6 +3285,220 @@
3285 3285 return new BaseObjectResponse().setErrormsg("成功").setErrorcode(ErrorCodeConstants.SUCCESS).setData(data);
3286 3286 }
3287 3287  
  3288 + public List<Map<String,String>> getHospitalIds(String provinceId, String cityId,String areaId,
  3289 + String streetId)
  3290 + {
  3291 + OrganizationQuery organizationQuery = new OrganizationQuery();
  3292 + organizationQuery.setProvinceId(provinceId);
  3293 + organizationQuery.setCityId(cityId);
  3294 + organizationQuery.setAreaId(areaId);
  3295 + organizationQuery.setStreetId(streetId);
  3296 + List<Organization> organizations = organizationService.queryHospitals(organizationQuery);
  3297 + List<Map<String,String>> list = new ArrayList<>();
  3298 + if (CollectionUtils.isNotEmpty(organizations))
  3299 + {
  3300 + for (Organization organization : organizations)
  3301 + {
  3302 + Map<String,String> map = new HashMap<>();
  3303 + map.put("id",organization.getId()+"");
  3304 + map.put("name",organization.getName());
  3305 + list.add(map);
  3306 + }
  3307 + }
  3308 + return list;
  3309 + }
  3310 +
  3311 + public BaseResponse getPublicHygieneServiceCount1(String provinceId, String cityId,String areaId,
  3312 + String streetId, Date dateTime,Integer type) {
  3313 + Date startDate=DateUtil.getDateMonthFirst(dateTime);
  3314 + Date endDate=DateUtil.getDayLastSecond(DateUtil.getDateMonthLast(dateTime));
  3315 + List<Map> data=new ArrayList<>();
  3316 + Map<String,Object> mapTotal=new HashMap<>();
  3317 +
  3318 +
  3319 + List<Map<String,String>> hospitalIds = getHospitalIds( provinceId, cityId, areaId,
  3320 + streetId);
  3321 + for (Map<String,String> map : hospitalIds) {
  3322 + Map<String,Object> streetMap=new HashMap<>();
  3323 + //医院数据
  3324 + getDateCount1(map,startDate,endDate,streetMap,type);
  3325 + //合计
  3326 + mapTotal.put("hospitalName","合计");
  3327 + int lastDate1= null==mapTotal.get("data1")?0:Integer.parseInt(mapTotal.get("data1").toString());
  3328 + mapTotal.put("data1",null==streetMap.get("data1")?lastDate1:Integer.parseInt(streetMap.get("data1").toString())+lastDate1);
  3329 + int lastDate2= null==mapTotal.get("data2")?0:Integer.parseInt(mapTotal.get("data2").toString());
  3330 + mapTotal.put("data2",null==streetMap.get("data2")?lastDate2:Integer.parseInt(streetMap.get("data2").toString())+lastDate2);
  3331 + int lastDate3= null==mapTotal.get("data3")?0:Integer.parseInt(mapTotal.get("data3").toString());
  3332 + mapTotal.put("data3",null==streetMap.get("data3")?lastDate3:Integer.parseInt(streetMap.get("data3").toString())+lastDate3);
  3333 + int lastDate5= null==mapTotal.get("data5")?0:Integer.parseInt(mapTotal.get("data5").toString());
  3334 + mapTotal.put("data5",null==streetMap.get("data5")?lastDate5:Integer.parseInt(streetMap.get("data5").toString())+lastDate5);
  3335 + int lastDate6= null==mapTotal.get("data6")?0:Integer.parseInt(mapTotal.get("data6").toString());
  3336 + mapTotal.put("data6",null==streetMap.get("data6")?lastDate6:Integer.parseInt(streetMap.get("data6").toString())+lastDate6);
  3337 + int lastDate8= null==mapTotal.get("data8")?0:Integer.parseInt(mapTotal.get("data8").toString());
  3338 + mapTotal.put("data8",null==streetMap.get("data8")?lastDate8:Integer.parseInt(streetMap.get("data8").toString())+lastDate8);
  3339 + int lastDate9= null==mapTotal.get("data9")?0:Integer.parseInt(mapTotal.get("data9").toString());
  3340 + mapTotal.put("data9",null==streetMap.get("data9")?lastDate9:Integer.parseInt(streetMap.get("data9").toString())+lastDate9);
  3341 + int lastDate11= null==mapTotal.get("data11")?0:Integer.parseInt(mapTotal.get("data11").toString());
  3342 + mapTotal.put("data11",null==streetMap.get("data11")?lastDate11:Integer.parseInt(streetMap.get("data11").toString())+lastDate11);
  3343 + int lastDate13= null==mapTotal.get("data13")?0:Integer.parseInt(mapTotal.get("data13").toString());
  3344 + mapTotal.put("data13",null==streetMap.get("data13")?lastDate13:Integer.parseInt(streetMap.get("data13").toString())+lastDate13);
  3345 + int lastDate15= null==mapTotal.get("data15")?0:Integer.parseInt(mapTotal.get("data15").toString());
  3346 + mapTotal.put("data15",null==streetMap.get("data15")?lastDate15:Integer.parseInt(streetMap.get("data15").toString())+lastDate15);
  3347 +
  3348 + int bulilCount = null==mapTotal.get("allBuildCount")?0:Integer.parseInt(mapTotal.get("allBuildCount").toString());
  3349 + mapTotal.put("allBuildCount",null==streetMap.get("allBuildCount")?bulilCount:Integer.parseInt(streetMap.get("allBuildCount").toString())+bulilCount);
  3350 +
  3351 + int lastDate17= null==mapTotal.get("data17")?0:Integer.parseInt(mapTotal.get("data17").toString());
  3352 + mapTotal.put("data17",null==streetMap.get("data17")?lastDate17:Integer.parseInt(streetMap.get("data17").toString())+lastDate17);
  3353 + int lastDate19= null==mapTotal.get("data19")?0:Integer.parseInt(mapTotal.get("data19").toString());
  3354 + mapTotal.put("data19",null==streetMap.get("data19")?lastDate19:Integer.parseInt(streetMap.get("data19").toString())+lastDate19);
  3355 + int lastDate21= null==mapTotal.get("data21")?0:Integer.parseInt(mapTotal.get("data21").toString());
  3356 + mapTotal.put("data21",null==streetMap.get("data21")?lastDate21:Integer.parseInt(streetMap.get("data21").toString())+lastDate21);
  3357 +
  3358 + int lastDate23= null==mapTotal.get("data23")?0:Integer.parseInt(mapTotal.get("data23").toString());
  3359 + mapTotal.put("data23",null==streetMap.get("data23")?lastDate23:Integer.parseInt(streetMap.get("data23").toString())+lastDate23);
  3360 +
  3361 + int lastDate24= null==mapTotal.get("data24")?0:Integer.parseInt(mapTotal.get("data24").toString());
  3362 + mapTotal.put("data24",null==streetMap.get("data24")?lastDate24:Integer.parseInt(streetMap.get("data24").toString())+lastDate24);
  3363 +
  3364 + int lastDate26= null==mapTotal.get("data26")?0:Integer.parseInt(mapTotal.get("data26").toString());
  3365 + mapTotal.put("data26",null==streetMap.get("data26")?lastDate26:Integer.parseInt(streetMap.get("data26").toString())+lastDate26);
  3366 +
  3367 + int lastDate27= null==mapTotal.get("data27")?0:Integer.parseInt(mapTotal.get("data27").toString());
  3368 + mapTotal.put("data27",null==streetMap.get("data27")?lastDate27:Integer.parseInt(streetMap.get("data27").toString())+lastDate27);
  3369 +
  3370 + int lastDate28= null==mapTotal.get("data28")?0:Integer.parseInt(mapTotal.get("data28").toString());
  3371 + mapTotal.put("data28",null==streetMap.get("data28")?lastDate28:Integer.parseInt(streetMap.get("data28").toString())+lastDate28);
  3372 + data.add(streetMap);
  3373 + }
  3374 + if (type == null) {
  3375 + DecimalFormat df = new DecimalFormat("0.00");//格式化小数,不足的补0
  3376 + String data3_data2 = "0.00";
  3377 + if (Integer.parseInt(mapTotal.get("data2").toString()) != 0) {
  3378 + float v = (float) Integer.parseInt(mapTotal.get("data3").toString()) / Integer.parseInt(mapTotal.get("data2").toString());
  3379 + if (v >= 1) {
  3380 + data3_data2 = "100.00";
  3381 + } else {
  3382 + data3_data2 = df.format(v * 100);
  3383 + }
  3384 + }
  3385 + mapTotal.put("data4", data3_data2 + "%");
  3386 +
  3387 + String data6_data5 = "0.00";
  3388 + if (Integer.parseInt(mapTotal.get("data5").toString()) != 0) {
  3389 + float v = (float) Integer.parseInt(mapTotal.get("data6").toString()) / Integer.parseInt(mapTotal.get("data5").toString());
  3390 + if (v >= 1) {
  3391 + data6_data5 = "100.00";
  3392 + } else {
  3393 + data6_data5 = df.format(v * 100);
  3394 + }
  3395 + }
  3396 + mapTotal.put("data7", data6_data5 + "%");
  3397 +
  3398 + String data9_data8 = "0.00";
  3399 + if (Integer.parseInt(mapTotal.get("data8").toString()) != 0) {
  3400 + float v = (float) Integer.parseInt(mapTotal.get("data9").toString()) / Integer.parseInt(mapTotal.get("data8").toString());
  3401 + if (v >= 1) {
  3402 + data9_data8 = "100.00";
  3403 + } else {
  3404 + data9_data8 = df.format(v * 100);
  3405 + }
  3406 + }
  3407 + mapTotal.put("data10", data9_data8 + "%");
  3408 +
  3409 +
  3410 + String data11_data8 = "0.00";
  3411 + if (Integer.parseInt(mapTotal.get("data8").toString()) != 0) {
  3412 + float v = (float) Integer.parseInt(mapTotal.get("data11").toString()) / Integer.parseInt(mapTotal.get("data8").toString());
  3413 + if (v >= 1) {
  3414 + data11_data8 = "100.00";
  3415 + } else {
  3416 + data11_data8 = df.format(v * 100);
  3417 + }
  3418 + }
  3419 + mapTotal.put("data12", data11_data8 + "%");
  3420 +
  3421 + String data13_data8 = "0.00";
  3422 + if (Integer.parseInt(mapTotal.get("data8").toString()) != 0) {
  3423 + float v = (float) Integer.parseInt(mapTotal.get("data13").toString()) / Integer.parseInt(mapTotal.get("data8").toString());
  3424 + if (v >= 1) {
  3425 + data13_data8 = "100.00";
  3426 + } else {
  3427 + data13_data8 = df.format(v * 100);
  3428 + }
  3429 + }
  3430 + mapTotal.put("data14", data13_data8 + "%");
  3431 +
  3432 + String data15_data2 = "0.00";
  3433 + if (Integer.parseInt(mapTotal.get("allBuildCount").toString()) != 0) {
  3434 + float v = (float) Integer.parseInt(mapTotal.get("data15").toString()) / Integer.parseInt(mapTotal.get("allBuildCount").toString());
  3435 + if (v >= 1) {
  3436 + data15_data2 = "100.00";
  3437 + } else {
  3438 + data15_data2 = df.format(v * 100);
  3439 + }
  3440 + }
  3441 + mapTotal.put("data16", data15_data2 + "%");
  3442 +
  3443 + String data17_data2 = "0.00";
  3444 + if (Integer.parseInt(mapTotal.get("data2").toString()) != 0) {
  3445 + float v = (float) Integer.parseInt(mapTotal.get("data17").toString()) / Integer.parseInt(mapTotal.get("data2").toString());
  3446 + if (v >= 1) {
  3447 + data17_data2 = "100.00";
  3448 + } else {
  3449 + data17_data2 = df.format(v * 100);
  3450 + }
  3451 + }
  3452 + mapTotal.put("data18", data17_data2 + "%");
  3453 +
  3454 + String data19_data2 = "0.00";
  3455 + if (Integer.parseInt(mapTotal.get("data2").toString()) != 0) {
  3456 + float v = (float) Integer.parseInt(mapTotal.get("data19").toString()) / Integer.parseInt(mapTotal.get("data2").toString());
  3457 + if (v >= 1) {
  3458 + data19_data2 = "100.00";
  3459 + } else {
  3460 + data19_data2 = df.format(v * 100);
  3461 + }
  3462 + }
  3463 + mapTotal.put("data20", data19_data2 + "%");
  3464 +
  3465 + String data21_data2 = "0.00";
  3466 + if (Integer.parseInt(mapTotal.get("data2").toString()) != 0) {
  3467 + float v = (float) Integer.parseInt(mapTotal.get("data21").toString()) / Integer.parseInt(mapTotal.get("data2").toString());
  3468 + if (v >= 1) {
  3469 + data21_data2 = "100.00";
  3470 + } else {
  3471 + data21_data2 = df.format(v * 100);
  3472 + }
  3473 + }
  3474 + mapTotal.put("data22", data21_data2 + "%");
  3475 +
  3476 + String data23_data24 = "0.00";
  3477 + if (Integer.parseInt(mapTotal.get("data24").toString()) != 0) {
  3478 + float v = (float) Integer.parseInt(mapTotal.get("data23").toString()) / Integer.parseInt(mapTotal.get("data24").toString());
  3479 + if (v >= 1) {
  3480 + data23_data24 = "100.00";
  3481 + } else {
  3482 + data23_data24 = df.format(v * 100);
  3483 + }
  3484 + }
  3485 + mapTotal.put("data25", data23_data24 + "%");
  3486 +
  3487 + String data27_data28 = "0.00";
  3488 + if (Integer.parseInt(mapTotal.get("data28").toString()) != 0) {
  3489 + float v = (float) Integer.parseInt(mapTotal.get("data27").toString()) / Integer.parseInt(mapTotal.get("data28").toString());
  3490 + if (v >= 1) {
  3491 + data27_data28 = "100.00";
  3492 + } else {
  3493 + data27_data28 = df.format(v * 100);
  3494 + }
  3495 + }
  3496 + mapTotal.put("data29", data27_data28 + "%");
  3497 + }
  3498 + data.add(mapTotal);
  3499 + return new BaseObjectResponse().setErrormsg("成功").setErrorcode(ErrorCodeConstants.SUCCESS).setData(data);
  3500 + }
  3501 +
3288 3502 /**
3289 3503 * 获得区县下的街道
3290 3504 * @param parentId 区县id
... ... @@ -3743,6 +3957,350 @@
3743 3957 }
3744 3958 hospitalDate.put("data29",data27_data28+"%");
3745 3959 }
  3960 + }
  3961 +
  3962 +
  3963 + private void getDateCount1(Map<String,String> map,Date startDate, Date endDate,Map hospitalDate,Integer type){
  3964 + String hospitalName = map.get("name");
  3965 + String hid = map.get("id");
  3966 + hospitalDate.put("hospitalName",hospitalName);
  3967 + hospitalDate.put("hospitalId",hid);
  3968 +
  3969 + //传入的时间获取年的第一天
  3970 + Date startDateFirst = DateUtil.getYearFirst(DateUtil.getYear(startDate));
  3971 + DecimalFormat df = new DecimalFormat("0.00");//格式化小数,不足的补0
  3972 + BabyModelQuery babyModelQuery = new BabyModelQuery();
  3973 + babyModelQuery.setExistSource(false);
  3974 + babyModelQuery.setDataStatus(false);
  3975 + babyModelQuery.setBuildType(2);
  3976 + babyModelQuery.setPregnancyOut("0");
  3977 + babyModelQuery.setHospitalId(hid);
  3978 + babyModelQuery.setBirthStart(startDate);
  3979 + babyModelQuery.setBirthEnd(endDate);
  3980 +
  3981 + //本月活产数
  3982 + int data1= (int)mongoTemplate.count(babyModelQuery.convertToQuery().convertToMongoQuery(),BabyModel.class);
  3983 +
  3984 + int lastDate1= null==hospitalDate.get("data1")?0:Integer.parseInt(hospitalDate.get("data1").toString());
  3985 + hospitalDate.put("data1",data1+lastDate1);
  3986 + //累计活产数
  3987 + babyModelQuery.setBirthStart(startDateFirst);
  3988 + int data2 = (int)mongoTemplate.count(babyModelQuery.convertToQuery().convertToMongoQuery(),BabyModel.class);
  3989 +
  3990 + int lastDate2= null==hospitalDate.get("data2")?0:Integer.parseInt(hospitalDate.get("data2").toString());
  3991 +
  3992 + hospitalDate.put("data2",data2+lastDate2);
  3993 +
  3994 +
  3995 + //本月新生儿访视人数
  3996 + int data26 = (int)mongoTemplate.count(new Query(Criteria.
  3997 + where("yn").is("1")
  3998 + .and("hospitalId").is(hid)
  3999 + .and("checkTime").gte(startDate).lte(endDate)),NewbornVisit.class);
  4000 +
  4001 + int lastDate26= null==hospitalDate.get("data26")?0:Integer.parseInt(hospitalDate.get("data26").toString());
  4002 + hospitalDate.put("data26",data26+lastDate26);
  4003 +
  4004 + //累计新生儿访视人数
  4005 + int data3 = (int)mongoTemplate.count(new Query(Criteria.
  4006 + where("yn").is("1")
  4007 + .and("hospitalId").is(hid)
  4008 + .and("checkTime").lte(endDate).gte(startDateFirst)),NewbornVisit.class);
  4009 + int lastDate3= null==hospitalDate.get("data3")?0:Integer.parseInt(hospitalDate.get("data3").toString());
  4010 + hospitalDate.put("data3",data3+lastDate3);
  4011 +
  4012 + //新生儿访视率%
  4013 + String data3_data2="0.00";
  4014 + if(Integer.parseInt(hospitalDate.get("data2").toString())!=0){
  4015 + float v = (float) Integer.parseInt(hospitalDate.get("data3").toString()) / Integer.parseInt(hospitalDate.get("data2").toString());
  4016 + if(v>=1){
  4017 + data3_data2="100.00";
  4018 + }else {
  4019 + data3_data2 = df.format(v * 100);
  4020 + }
  4021 + }
  4022 + hospitalDate.put("data4",data3_data2+"%");
  4023 +
  4024 + //0-3岁儿童总数
  4025 + BabyModelQuery babyQuery = new BabyModelQuery();
  4026 + babyQuery.setExistSource(false);
  4027 + babyQuery.setYn(YnEnums.YES.getId());
  4028 + babyQuery.setHospitalId(hid);
  4029 + Date currentDate1 = DateUtil.formatDate(new Date());
  4030 + Date start1 = DateUtil.addMonth(currentDate1, 0);
  4031 + babyQuery.setBirthEnd(start1);
  4032 + Date end1 = DateUtil.addDay(DateUtil.addMonth(currentDate1, -36 - 1), 1);
  4033 + babyQuery.setBirthStart(end1);
  4034 + babyQuery.setBuildDateEnd(endDate);
  4035 + babyQuery.setBuildDateStart(startDateFirst);
  4036 + System.out.println("===4"+babyQuery.convertToQuery().convertToMongoQuery().toString());
  4037 + int data5 = babyBookbuildingService.queryBabyCount(babyQuery);
  4038 + int lastDate5= null==hospitalDate.get("data5")?0:Integer.parseInt(hospitalDate.get("data5").toString());
  4039 + hospitalDate.put("data5",data5+lastDate5);
  4040 +
  4041 + //0-3岁儿童系统管理人数
  4042 + int data6=0;
  4043 + babyQuery.setCompleteCheck(2);
  4044 + data6 = babyBookbuildingService.queryBabyCount(babyQuery);
  4045 + System.out.println("===5"+babyQuery.convertToQuery().convertToMongoQuery().toString());
  4046 + int lastDate6= null==hospitalDate.get("data6")?0:Integer.parseInt(hospitalDate.get("data6").toString());
  4047 + hospitalDate.put("data6",data6+lastDate6);
  4048 + //0-3岁儿童系统管理率%
  4049 + String data6_data5="0.00";
  4050 + if(Integer.parseInt(hospitalDate.get("data5").toString())!=0){
  4051 + float v = (float) Integer.parseInt(hospitalDate.get("data6").toString()) / Integer.parseInt(hospitalDate.get("data5").toString());
  4052 + if(v>=1){
  4053 + data6_data5="100.00";
  4054 + }else {
  4055 + data6_data5 = df.format(v * 100);
  4056 + }
  4057 + }
  4058 + hospitalDate.put("data7",data6_data5+"%");
  4059 + //0-6岁儿童总数
  4060 + babyQuery.setCompleteCheck(null);
  4061 + end1 = DateUtil.addDay(DateUtil.addMonth(currentDate1, -72 - 1), 1);
  4062 + babyQuery.setBirthStart(end1);
  4063 + System.out.println("===6"+babyQuery.convertToQuery().convertToMongoQuery().toString());
  4064 + int data8 = babyBookbuildingService.queryBabyCount(babyQuery);
  4065 + int lastDate8= null==hospitalDate.get("data8")?0:Integer.parseInt(hospitalDate.get("data8").toString());
  4066 + hospitalDate.put("data8",data8+lastDate8);
  4067 +
  4068 + //0-6岁儿童系统管理人数
  4069 + babyQuery.setCompleteCheck(2);
  4070 + int data9 = babyBookbuildingService.queryBabyCount(babyQuery);
  4071 + System.out.println("===7"+babyQuery.convertToQuery().convertToMongoQuery().toString());
  4072 + int lastDate9= null==hospitalDate.get("data9")?0:Integer.parseInt(hospitalDate.get("data9").toString());
  4073 + hospitalDate.put("data9",data9+lastDate9);
  4074 + //0-6岁儿童系统管理率%
  4075 + String data9_data8="0.00";
  4076 + if(Integer.parseInt(hospitalDate.get("data8").toString())!=0){
  4077 + float v = (float) Integer.parseInt(hospitalDate.get("data9").toString()) / Integer.parseInt(hospitalDate.get("data8").toString());
  4078 + if(v>=1){
  4079 + data9_data8="100.00";
  4080 + }else {
  4081 + data9_data8 = df.format(v * 100);
  4082 + }
  4083 + }
  4084 + hospitalDate.put("data10",data9_data8+"%");
  4085 +
  4086 +
  4087 + //0-6岁儿童健康管理人数
  4088 + babyQuery.setCompleteCheck(null);
  4089 + babyQuery.setLastCheckDoctor2(true);
  4090 + int data11 = babyBookbuildingService.queryBabyCount(babyQuery);
  4091 + System.out.println("===8"+babyQuery.convertToQuery().convertToMongoQuery().toString());
  4092 + int lastDate11= null==hospitalDate.get("data11")?0:Integer.parseInt(hospitalDate.get("data11").toString());
  4093 + hospitalDate.put("data11",data11+lastDate11);
  4094 + //0-6岁儿童健康管理率%
  4095 + String data11_data12="0.00";
  4096 + if(Integer.parseInt(hospitalDate.get("data8").toString())!=0){
  4097 + float v = (float) Integer.parseInt(hospitalDate.get("data11").toString()) / Integer.parseInt(hospitalDate.get("data8").toString());
  4098 + if(v>=1){
  4099 + data11_data12="100.00";
  4100 + }else {
  4101 + data11_data12 = df.format(v * 100);
  4102 + }
  4103 + }
  4104 + hospitalDate.put("data12",data11_data12+"%");
  4105 +
  4106 + BabyModelQuery babyQuery3 = new BabyModelQuery();
  4107 + babyQuery3.setExistSource(false);
  4108 + babyQuery3.setYn(YnEnums.YES.getId());
  4109 + babyQuery3.setHospitalId(hid);
  4110 + Date start3 = DateUtil.addMonth(currentDate1, 0);
  4111 + babyQuery3.setBirthEnd(start3);
  4112 + Date end3 = DateUtil.addDay(DateUtil.addMonth(currentDate1, -72 - 1), 1);
  4113 + babyQuery3.setBirthStart(end3);
  4114 + babyQuery3.setBuildDateEnd(endDate);
  4115 + babyQuery3.setBuildDateStart(startDateFirst);
  4116 + babyQuery3.setBabyCheckEyeLastDateStart(startDateFirst);
  4117 + babyQuery3.setBabyCheckEyeLastDateEnd(endDate);
  4118 +
  4119 + System.out.println("===9"+babyQuery3.convertToQuery().convertToMongoQuery().toString());
  4120 + int data13 = babyBookbuildingService.queryBabyCount(babyQuery3);
  4121 +
  4122 + int lastDate13= null==hospitalDate.get("data13")?0:Integer.parseInt(hospitalDate.get("data13").toString());
  4123 + hospitalDate.put("data13",data13+lastDate13);
  4124 + //0-6岁儿童眼保健及视力检查覆盖率%
  4125 + String data13_data8="0.00";
  4126 + if(Integer.parseInt(hospitalDate.get("data8").toString())!=0){
  4127 + float v = (float) Integer.parseInt(hospitalDate.get("data13").toString()) / Integer.parseInt(hospitalDate.get("data8").toString());
  4128 + if(v>=1){
  4129 + data13_data8="100.00";
  4130 + }else {
  4131 + data13_data8 = df.format(v * 100);
  4132 + }
  4133 + }
  4134 + hospitalDate.put("data14",data13_data8+"%");
  4135 +
  4136 + //孕13周之前建册的人数
  4137 +
  4138 + PatientsQuery patientsQuery=new PatientsQuery();
  4139 + patientsQuery.setYn(YnEnums.YES.getId());
  4140 + patientsQuery.setHospitalId(hid);
  4141 + patientsQuery.setBuildDaysStart(0);
  4142 + patientsQuery.setBuildDaysEnd(13*7-1);
  4143 + patientsQuery.setIsAutoFm(YnEnums.NO.getId());
  4144 + patientsQuery.setExtEnable(false);
  4145 + patientsQuery.setBuildTypeNot(1);
  4146 + //patientsQuery.setBookbuildingDateStart(DateUtil.addYear(new Date(),-20));
  4147 + patientsQuery.setBookbuildingDateStart(startDateFirst);
  4148 + patientsQuery.setBookbuildingDateEnd(endDate);
  4149 + patientsQuery.setType(3); //产妇
  4150 + System.out.println("===10"+patientsQuery.convertToQuery().convertToMongoQuery().toString());
  4151 + int data15 = patientsService.queryPatientCount(patientsQuery);
  4152 + int lastDate15= null==hospitalDate.get("data15")?0:Integer.parseInt(hospitalDate.get("data15").toString());
  4153 + hospitalDate.put("data15",data15+lastDate15);
  4154 +
  4155 +
  4156 + int buildCount = data2;
  4157 + int allBuildCount = null==hospitalDate.get("allBuildCount")?0:Integer.parseInt(hospitalDate.get("allBuildCount").toString());
  4158 + hospitalDate.put("allBuildCount",buildCount+allBuildCount);
  4159 + String data15_data2="0.00";
  4160 + if(Integer.parseInt(hospitalDate.get("allBuildCount").toString())!=0){
  4161 + float v = (float) Integer.parseInt(hospitalDate.get("data15").toString()) /
  4162 + Integer.parseInt(hospitalDate.get("allBuildCount").toString());
  4163 + if(v>=1){
  4164 + data15_data2="100.00";
  4165 + }else {
  4166 + data15_data2 = df.format(v * 100);
  4167 + }
  4168 + }
  4169 + hospitalDate.put("data16",data15_data2+"%");
  4170 + //孕产妇健康管理人数
  4171 + PatientsQuery patientsQuery2=new PatientsQuery();
  4172 + patientsQuery2.setHospitalId(hid);
  4173 + patientsQuery2.setBuildDaysStart(0);
  4174 + patientsQuery2.setBuildDaysEnd(1000);
  4175 + patientsQuery2.setDueStatus(0);
  4176 + patientsQuery2.setExtEnable(false);
  4177 + patientsQuery2.setBuildTypeNot(1);
  4178 + patientsQuery2.setIsAutoFm(YnEnums.NO.getId());
  4179 + //patientsQuery2.setBookbuildingDateStart(DateUtil.addYear(new Date(),-20));
  4180 + patientsQuery2.setBookbuildingDateStart(startDateFirst);
  4181 + patientsQuery2.setBookbuildingDateEnd(endDate);
  4182 + patientsQuery2.setYn(YnEnums.YES.getId());
  4183 + patientsQuery2.setExistLastCheckEmployeeId(true);
  4184 + patientsQuery2.setType(3);
  4185 + System.out.println("===11"+patientsQuery2.convertToQuery().convertToMongoQuery().toString());
  4186 + int data17 = patientsService.queryPatientCount(patientsQuery2);
  4187 + int lastDate17= null==hospitalDate.get("data17")?0:Integer.parseInt(hospitalDate.get("data17").toString());
  4188 + hospitalDate.put("data17",data17+lastDate17);
  4189 + //孕产妇健康管理率%
  4190 + String data17_data2="0.00";
  4191 + if(Integer.parseInt(hospitalDate.get("data2").toString())!=0){
  4192 + float v = (float) Integer.parseInt(hospitalDate.get("data17").toString()) / Integer.parseInt(hospitalDate.get("data2").toString());
  4193 + if(v>=1){
  4194 + data17_data2="100.00";
  4195 + }else {
  4196 + data17_data2 = df.format(v * 100);
  4197 + }
  4198 + }
  4199 + hospitalDate.put("data18",data17_data2+"%");
  4200 +
  4201 +
  4202 + //产后访视人数
  4203 + int data19= (int)mongoTemplate.count(new Query(Criteria.
  4204 + where("hospitalId").is(hid).and("checkTime").lte(endDate).gte(startDateFirst).and("yn").is(1)),PostReviewModel.class);
  4205 + System.out.println("===12"+new Query(Criteria.
  4206 + where("hospitalId").is(hid).and("checkTime").lte(endDate).gt(startDateFirst).and("yn").is(1)).toString());
  4207 + int lastDate19= null==hospitalDate.get("data19")?0:Integer.parseInt(hospitalDate.get("data19").toString());
  4208 + hospitalDate.put("data19",data19+lastDate19);
  4209 + //产后访视率%
  4210 + String data19_data2="0.00";
  4211 + if(Integer.parseInt(hospitalDate.get("data2").toString())!=0){
  4212 + float v = (float) Integer.parseInt(hospitalDate.get("data19").toString()) / Integer.parseInt(hospitalDate.get("data2").toString());
  4213 + if(v>=1){
  4214 + data19_data2="100.00";
  4215 + }else {
  4216 + data19_data2 = df.format(v * 100);
  4217 + }
  4218 + }
  4219 + hospitalDate.put("data20",data19_data2+"%");
  4220 +
  4221 + PatientsQuery patientsQuery1 = new PatientsQuery();
  4222 + patientsQuery1.setHospitalId(hid);
  4223 + patientsQuery1.setIsComplete(2);
  4224 + patientsQuery1.setBookbuildingDateStart(startDateFirst);
  4225 + patientsQuery1.setBookbuildingDateEnd(endDate);
  4226 + System.out.println("===13"+patientsQuery1.convertToQuery().convertToMongoQuery().toString());
  4227 + int data21 = patientsService.queryPatientCount(patientsQuery1);
  4228 + int lastDate21= null==hospitalDate.get("data21")?0:Integer.parseInt(hospitalDate.get("data21").toString());
  4229 + //孕产妇系统管理人数
  4230 + hospitalDate.put("data21",data21+lastDate21);
  4231 + //孕产妇系统管理率%
  4232 + String data21_data2="0.00";
  4233 + if(Integer.parseInt(hospitalDate.get("data2").toString())!=0){
  4234 + float v = (float) Integer.parseInt(hospitalDate.get("data21").toString()) / Integer.parseInt(hospitalDate.get("data2").toString());
  4235 + if(v>=1){
  4236 + data21_data2="100.00";
  4237 + }else {
  4238 + data21_data2 = df.format(v * 100);
  4239 + }
  4240 + }
  4241 + hospitalDate.put("data22",data21_data2+"%");
  4242 +
  4243 + //中医指导的人次
  4244 + end1 = DateUtil.addDay(DateUtil.addMonth(currentDate1, -36 - 1), 1);
  4245 + BabyCheckModelQuery checkModelQuery1 = new BabyCheckModelQuery();
  4246 + checkModelQuery1.setHospitalId(hid);
  4247 + checkModelQuery1.setYn(YnEnums.YES.getId());
  4248 + checkModelQuery1.setBirthStart(end1);
  4249 + checkModelQuery1.setBirthEnd(start1);
  4250 + checkModelQuery1.setArticleTypes(Arrays.asList(1,2,3,4,5));
  4251 + checkModelQuery1.setCheckDateStart(startDateFirst);
  4252 + //checkModelQuery1.setCheckDateStart(DateUtil.addYear(new Date(),-20));
  4253 + checkModelQuery1.setCheckDateEnd(endDate);
  4254 + System.out.println("===14"+checkModelQuery1.convertToQuery().convertToMongoQuery().toString());
  4255 + int data23 =babyCheckService.queryBabyCheckCount(checkModelQuery1);
  4256 + int lastDate23= null==hospitalDate.get("data23")?0:Integer.parseInt(hospitalDate.get("data23").toString());
  4257 + hospitalDate.put("data23",data23+lastDate23);
  4258 +
  4259 +
  4260 + //0-3岁儿童人数
  4261 + int data24=data5;
  4262 +
  4263 + int lastDate24= null==hospitalDate.get("data24")?0:Integer.parseInt(hospitalDate.get("data24").toString());
  4264 + hospitalDate.put("data24",data24+lastDate24);
  4265 +
  4266 +
  4267 + //儿童中医指导率%
  4268 + String data23_data24="0.00";
  4269 + if(Integer.parseInt(hospitalDate.get("data24").toString())!=0){
  4270 + float v = (float) Integer.parseInt(hospitalDate.get("data23").toString()) / Integer.parseInt(hospitalDate.get("data24").toString());
  4271 + if(v>=1){
  4272 + data23_data24="100.00";
  4273 + }else {
  4274 + data23_data24 = df.format(v * 100);
  4275 + }
  4276 + }
  4277 + hospitalDate.put("data25",data23_data24+"%");
  4278 +
  4279 +
  4280 +
  4281 + checkModelQuery1.setCheckDateStart(startDate);
  4282 + checkModelQuery1.setCheckDateEnd(endDate);
  4283 + System.out.println("===15"+checkModelQuery1.convertToQuery().convertToMongoQuery().toString());
  4284 + int data27 =babyCheckService.queryBabyCheckCount(checkModelQuery1);
  4285 + int lastDate27= null==hospitalDate.get("data27")?0:Integer.parseInt(hospitalDate.get("data27").toString());
  4286 + hospitalDate.put("data27",data27+lastDate27);
  4287 +
  4288 + checkModelQuery1.setArticleTypes(null);
  4289 + System.out.println("===16"+checkModelQuery1.convertToQuery().convertToMongoQuery().toString());
  4290 + int data28 =babyCheckService.queryBabyCheckCount(checkModelQuery1);
  4291 + int lastDate28= null==hospitalDate.get("data28")?0:Integer.parseInt(hospitalDate.get("data28").toString());
  4292 + hospitalDate.put("data28",data28+lastDate28);
  4293 +
  4294 + String data27_data28="0.00";
  4295 + if(Integer.parseInt(hospitalDate.get("data28").toString())!=0){
  4296 + float v = (float) Integer.parseInt(hospitalDate.get("data27").toString()) / Integer.parseInt(hospitalDate.get("data28").toString());
  4297 + if(v>=1){
  4298 + data27_data28="100.00";
  4299 + }else {
  4300 + data27_data28 = df.format(v * 100);
  4301 + }
  4302 + }
  4303 + hospitalDate.put("data29",data27_data28+"%");
3746 4304 }
3747 4305  
3748 4306 public void getPublicHygieneServiceCountExport(String provinceId, String cityId, String areaId,
platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/ChildbirthManagerRequest.java View file @ 602b7ea
... ... @@ -640,6 +640,7 @@
640 640 initQueryMap.put("syjg", "梅毒检测结果");
641 641 initQueryMap.put("ygbmky", "乙肝检测结果");
642 642 initQueryMap.put("qqybuild", "建档孕周");
  643 + initQueryMap.put("coupon", "优惠券发放");
643 644  
644 645  
645 646  
... ... @@ -793,7 +794,7 @@
793 794 areaQueryMap.put("syjg", "梅毒检测结果");
794 795 areaQueryMap.put("ygbmky", "乙肝检测结果");
795 796 areaQueryMap.put("qqybuild", "建档孕周");
796   -
  797 + areaQueryMap.put("coupon", "优惠券发放");
797 798  
798 799 Map<String, String> initQueryMapqhdky = new LinkedHashMap<>();
799 800  
platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/ChildbirthManagerQueryModel.java View file @ 602b7ea
... ... @@ -480,6 +480,17 @@
480 480 //手动分娩孕周
481 481 private String handDueWeek;
482 482  
  483 + // 是否发放过优惠券
  484 + private String coupon;
  485 +
  486 + public String getCoupon() {
  487 + return coupon;
  488 + }
  489 +
  490 + public void setCoupon(String coupon) {
  491 + this.coupon = coupon;
  492 + }
  493 +
483 494 public String getHusbandName() {
484 495 return husbandName;
485 496 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PreEugebicsServiceImpl.java View file @ 602b7ea
... ... @@ -2097,10 +2097,11 @@
2097 2097 .and("husbandClinicalCheck.jigan").gte("57").lte("97")
2098 2098 ), PreEugenicsBaseModel.class);
2099 2099 //肝功
2100   - datas.add(womanGbzamCount+manGbzamCount);//正常人数//27
2101 2100 datas.add(womanCount+manCount-womanGbzamCount-manGbzamCount);//异常人数//28
  2101 + datas.add(womanGbzamCount+manGbzamCount);//正常人数//27
2102 2102  
2103 2103  
  2104 +
2104 2105 //乙肝异常
2105 2106 int womanYgCount = (int)mongoTemplate.count(new Query(Criteria.where("hospitalId").is(hospitalId)
2106 2107 .and("fillDate").gte(start).lte(end)
2107 2108  
... ... @@ -2116,8 +2117,9 @@
2116 2117 datas.add(womanYgCount+manYgCount);//异常人数//30
2117 2118  
2118 2119 //肾功
2119   - datas.add(womanGbzamCount+manGbzamCount);//正常人数//31
2120 2120 datas.add(womanCount+manCount-womanGbzamCount-manGbzamCount);//异常人数//32
  2121 + datas.add(womanGbzamCount+manGbzamCount);//正常人数//31
  2122 +
2121 2123  
2122 2124  
2123 2125 int womanCjzxjsCount = (int)mongoTemplate.count(new Query(Criteria.where("hospitalId").is(hospitalId)
platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/MaterDeliverWorker.java View file @ 602b7ea
... ... @@ -87,6 +87,8 @@
87 87 BeanUtils.copy(maternalDeliverModel, childbirthManagerQueryModel);
88 88 }
89 89 BeanUtils.copy(patients, childbirthManagerQueryModel);
  90 + childbirthManagerQueryModel.setCoupon(patients.isSendCoupon() == null
  91 + ? null : String.valueOf(patients.isSendCoupon()));
90 92 // 承德定制使用
91 93 if(antExService != null && initQuery.contains("fmHospital") && initQuery.contains("buildWeek")
92 94 && initQuery.contains("czWeek") && initQuery.contains("hivkt")