From af1c79db6cdb672517b06966b66bd4ba2945debb Mon Sep 17 00:00:00 2001 From: shiyang <316555390@qq.com> Date: Tue, 5 Jul 2022 22:03:54 +0800 Subject: [PATCH] =?UTF-8?q?=E9=9A=86=E5=8C=96=EF=BC=9A0-6=E5=B2=81?= =?UTF-8?q?=E5=84=BF=E7=AB=A5=E5=81=A5=E5=BA=B7=E4=BD=93=E6=A3=80-?= =?UTF-8?q?=E6=94=B6=E8=B4=B9=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/controller/BabyBuildController.java | 26 +++++- .../operate/web/facade/BabyBookbuildingFacade.java | 101 ++++++++++++++++++++- .../lyms/platform/operate/web/utils/MathUtil.java | 10 ++ 3 files changed, 135 insertions(+), 2 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java index 7638803..67c2c45 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java @@ -1041,7 +1041,7 @@ public class BabyBuildController extends BaseController { } /** - * 0-6岁儿童健康体检统计表 + * 0-6岁儿童健康体检-统计表 * @param httpServletRequest * @param checkDateStart * @param checkDateEnd @@ -1064,4 +1064,28 @@ public class BabyBuildController extends BaseController { LoginContext loginState = (LoginContext) httpServletRequest.getAttribute("loginContext"); return babyBookbuildingFacade.queryBabyCheck0_6Statistical(checkDateStart,checkDateEnd,babyProvinceId,babyCityId,babyAreaId,babyStreetId ,loginState.getId()); } + /** + * 0-6岁儿童健康体检-收费表 + * @param httpServletRequest + * @param checkDateStart + * @param checkDateEnd + * @param babyProvinceId 隆化定制省市县乡镇 + * @param babyCityId + * @param babyAreaId + * @param babyStreetId + * @return + */ + @RequestMapping(method = RequestMethod.GET, value = "/queryBabyCheck0_6Toll") + @ResponseBody + @TokenRequired + public BaseResponse queryBabyCheck0_6Toll(HttpServletRequest httpServletRequest, + @RequestParam(value = "checkDateStart", required = false) Date checkDateStart, + @RequestParam(value = "checkDateEnd", required = false) Date checkDateEnd, + @RequestParam(value = "babyProvinceId", required = false) String babyProvinceId, + @RequestParam(value = "babyCityId", required = false) String babyCityId, + @RequestParam(value = "babyAreaId", required = false) String babyAreaId, + @RequestParam(value = "babyStreetId", required = false) String babyStreetId) { + LoginContext loginState = (LoginContext) httpServletRequest.getAttribute("loginContext"); + return babyBookbuildingFacade.queryBabyCheck0_6Toll(checkDateStart,checkDateEnd,babyProvinceId,babyCityId,babyAreaId,babyStreetId ,loginState.getId()); + } } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java index 3b6142d..02f6392 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java @@ -6263,7 +6263,6 @@ public class BabyBookbuildingFacade { resultMap.put("birth",DateUtil.getYyyyMmDd(babyModel.getBirth())); resultMap.put("mPhone",babyModel.getMphone()); //每个人的儿保检查信息 - babyCheckModelQuery=new BabyCheckModelQuery(); babyCheckModelQuery.setBuildId(babyModel.getId()); List babyCheckModels = babyCheckService.queryBabyCheckRecord(babyCheckModelQuery); List tcTypeList=new ArrayList<>(); @@ -6282,4 +6281,104 @@ public class BabyBookbuildingFacade { return new BaseObjectResponse().setData(result); } + + public BaseResponse queryBabyCheck0_6Toll(Date checkDateStart, Date checkDateEnd, String babyProvinceId, + String babyCityId, String babyAreaId, String babyStreetId, Integer userId) { + //儿保检查分组 + String hospitalId = autoMatchFacade.getHospitalId(userId); + BabyCheckModelQuery babyCheckModelQuery=new BabyCheckModelQuery(); + babyCheckModelQuery.setHospitalId(hospitalId); + babyCheckModelQuery.setYn(YnEnums.YES.getId()); + Date currentDate = DateUtil.formatDate(new Date()); + Date end_6 = DateUtil.addDay(DateUtil.addMonth(currentDate, -72 - 1), 1); + babyCheckModelQuery.setBirthStart(end_6); + babyCheckModelQuery.setBirthEnd(currentDate); + babyCheckModelQuery.setCheckDateStart(checkDateStart); + babyCheckModelQuery.setCheckDateEnd(DateUtil.getDayLastSecond(checkDateEnd)); + List babyCheckModels = babyCheckService.queryBabyCheckRecord(babyCheckModelQuery); + Map result=new HashMap(); + int number1=0,number3=0,number6=0,number8=0,number12=0,number18=0,number24=0,number30=0,number36=0,number48=0,number60=0,number72=0; + for (BabyCheckModel babyCheckModel : babyCheckModels) { + //儿童档案 + BabyModelQuery babyModelQuery=new BabyModelQuery(); + babyModelQuery.setYn(YnEnums.YES.getId()); + babyModelQuery.setId(babyCheckModel.getBuildId()); + if(StringUtils.isNotEmpty(babyProvinceId) && StringUtils.isNotEmpty(babyCityId) && + StringUtils.isNotEmpty(babyAreaId) && StringUtils.isNotEmpty(babyStreetId)){ + babyModelQuery.setBabyProvinceId(babyProvinceId); + babyModelQuery.setBabyCityId(babyCityId); + babyModelQuery.setBabyAreaId(babyAreaId); + babyModelQuery.setBabyStreetId(babyStreetId); + } + List babyModels = babyBookbuildingService.queryBabyBuildByCond(babyModelQuery); + for (BabyModel babyModel : babyModels) { + if (null!=babyCheckModel.getTcType()) { + Map info=new HashMap(); + switch (babyCheckModel.getTcType()){ + case 1: + info.put("number", ++number1); + info.put("money", MathUtil.multiply((double) number1, 19d, 2)); + result.put("month_1",info); + break; + case 3: + info.put("number", ++number3); + info.put("money", MathUtil.multiply((double) number3, 22d, 2)); + result.put("month_3",info); + break; + case 6: + info.put("number", ++number6); + info.put("money", MathUtil.multiply((double) number6, 22d, 2)); + result.put("month_6",info); + break; + case 8: + info.put("number", ++number8); + info.put("money", MathUtil.multiply((double) number8, 22d, 2)); + result.put("month_8",info); + break; + case 12: + info.put("number", ++number12); + info.put("money", MathUtil.multiply((double) number12, 22d, 2)); + result.put("month_12",info); + break; + case 18: + info.put("number", ++number18); + info.put("money", MathUtil.multiply((double) number18, 34.5, 2)); + result.put("month_18",info); + break; + case 24: + info.put("number", ++number24); + info.put("money", MathUtil.multiply((double) number24, 43.5, 2)); + result.put("month_24",info); + break; + case 30: + info.put("number", ++number30); + info.put("money", MathUtil.multiply((double) number30, 26d, 2)); + result.put("month_30",info); + break; + case 36: + info.put("number", ++number36); + info.put("money", MathUtil.multiply((double) number36, 26d, 2)); + result.put("month_36",info); + break; + case 48: + info.put("number", ++number48); + info.put("money", MathUtil.multiply((double) number48, 38d, 2)); + result.put("month_48",info); + break; + case 60: + info.put("number", ++number60); + info.put("money", MathUtil.multiply((double) number60, 38d, 2)); + result.put("month_60",info); + break; + case 72: + info.put("number", ++number72); + info.put("money", MathUtil.multiply((double) number72, 38d, 2)); + result.put("month_72",info); + break; + } + } + } + } + return new BaseObjectResponse().setData(result); + } } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/MathUtil.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/MathUtil.java index fdc6ce2..ed209e9 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/MathUtil.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/MathUtil.java @@ -111,6 +111,16 @@ public class MathUtil { public static Double division(Double a, Double b, Integer digit) { return new BigDecimal(a / b).setScale(digit, BigDecimal.ROUND_HALF_UP).doubleValue(); } + /** + * 计算相乘的值 保留digit位小数 + * @param a + * @param b + * @param digit + * @return + */ + public static Double multiply(Double a, Double b, Integer digit) { + return new BigDecimal(a * b).setScale(digit, BigDecimal.ROUND_HALF_UP).doubleValue(); + } public static void main(String[] args) { System.out.println(getProportion(30, 100)); -- 1.8.3.1