From b92f672511421c4f1b673242ef6ac5b186d10d1a Mon Sep 17 00:00:00 2001 From: zhaoxiaohao <279049017@qq.com> Date: Wed, 09 Dec 2020 09:31:18 +0800 Subject: [PATCH] Merge branch 'dev' of ssh://192.168.2.240:29418/kidgrow-microservices-platform into dev --- kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderDetailServiceImpl.java | 63 +++++++++++++++++++++++++++---- 1 files changed, 55 insertions(+), 8 deletions(-) diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderDetailServiceImpl.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderDetailServiceImpl.java index be42aac..82410ab 100644 --- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderDetailServiceImpl.java +++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderDetailServiceImpl.java @@ -13,8 +13,10 @@ import com.kidgrow.oprationcenter.model.ConsumptionRecord; import com.kidgrow.oprationcenter.model.ProductOrder; import com.kidgrow.oprationcenter.model.ProductOrderDetail; +import com.kidgrow.oprationcenter.model.SysProduct; import com.kidgrow.oprationcenter.service.IProductOrderDetailService; import com.kidgrow.oprationcenter.service.IProductOrderService; +import com.kidgrow.oprationcenter.service.ISysProductService; import com.kidgrow.oprationcenter.vo.*; import com.kidgrow.redis.util.RedisUtils; import com.kidgrow.usercenter.feign.SysDoctorService; @@ -52,6 +54,8 @@ @Autowired private IProductOrderService iProductOrderService; @Autowired + private ISysProductService productService; + @Autowired private RedisUtils redisUtils; /** * 列表 @@ -62,6 +66,15 @@ public PageResult<ProductOrderDetail> findList(Map<String, Object> params){ Page<ProductOrderDetail> page = new Page<>(MapUtils.getInteger(params, "page"), MapUtils.getInteger(params, "limit")); List<ProductOrderDetail> list = baseMapper.findList(page, params); + for (ProductOrderDetail productOrderDetail : list) { + if(productOrderDetail.getOrderAilightCount()==null){ + SysProduct byId = productService.getById(productOrderDetail.getProId()); + if(byId!=null){ + productOrderDetail.setOrderAilightCount(byId.getAilightCount()); + productOrderDetail.setOrderRecordCount(byId.getRecordCount()); + } + } + } return PageResult.<ProductOrderDetail>builder().data(list).code(0).count(page.getTotal()).build(); } /** @@ -81,10 +94,11 @@ * @param diagnosticId * @return */ - public ResultBody<UserProductData> UserProductDetailData(Long hospitalId,Long departmentId,String diagnosticId) + @Override + public ResultBody<UserProductData> userProductDetailData(Long hospitalId,Long departmentId,String diagnosticId) { UserProductData userProductData=new UserProductData(); - userProductData.setEnd(true); + userProductData.setIsEnd(true); userProductData.setRecordCount(0); userProductData.setAilightCount(0); userProductData.setLimitDays(0); @@ -94,7 +108,7 @@ userProductDetail.getProductOrderJoinDetailListShare().addAll(userProductDetail.getProductOrderJoinDetailsListDep()); List<ProductOrderJoinDetail> productOrderJoinDetailList = userProductDetail.getProductOrderJoinDetailListShare(); if (productOrderJoinDetailList.size() > 0) { - userProductData.setEnd(false); + userProductData.setIsEnd(false); //合并后按id排序并筛除已用完的套餐 List<ProductOrderJoinDetail> productOrderJoinDetailsNewList = productOrderJoinDetailList.stream().filter(f -> f.getAilightCount() >= 0).sorted(Comparator.comparing(ProductOrderJoinDetail::getProEndtime)).collect(Collectors.toList()); for (int i = 0; i <productOrderJoinDetailsNewList.size(); i++) { @@ -117,7 +131,7 @@ } } //是否已经结束 - if (userProductData.isEnd()&& StringUtils.isNotBlank(diagnosticId)) { + if (userProductData.getIsEnd()&& StringUtils.isNotBlank(diagnosticId)) { //写入redis中,防止扣非后不能生成报告 redisUtils.lSet(CommonConstant.SAAS_LAST_SERVER+diagnosticId,diagnosticId); } @@ -200,17 +214,51 @@ public List<OrderChartVo> proCountChart() { return baseMapper.proCountChart(); } + @Override + public int getUserdProduct(Long hospitalId, Long departmentId) { + return baseMapper.getUserdProduct(hospitalId,departmentId); + } /** *获取该科室下的所有的套餐信息 * @param params * @return */ @Override - public PageResult<ProductOrderDetail> departmentProductDetail(Map<String, Object> params) { + public PageResult<ProductOrderDetailVo> departmentProductDetail(Map<String, Object> params) { Page<ProductOrderDetail> page = new Page<>(MapUtils.getInteger(params, "page"), MapUtils.getInteger(params, "limit")); + Boolean enabled = MapUtils.getBoolean(params, "enabled"); List<ProductOrderDetail> list = - baseMapper.departmentProductDetail(page, Long.parseLong(params.get("hospitalId").toString()),Long.parseLong(params.get("departmentId").toString())); - return PageResult.<ProductOrderDetail>builder().data(list).code(0).count(page.getTotal()).build(); + baseMapper.departmentProductDetail(page, Long.parseLong(params.get("hospitalId").toString()),Long.parseLong(params.get("departmentId").toString()),enabled); + List<ProductOrderDetailVo> listvo = new ArrayList<>(); + for (ProductOrderDetail productOrderDetail : list) { + ProductOrderDetailVo productOrderDetailVo=new ProductOrderDetailVo(); + BeanCopier beanCopier = BeanCopier.create(ProductOrderDetail.class, ProductOrderDetailVo.class, false); + beanCopier.copy(productOrderDetail,productOrderDetailVo,null); + Date proBegintime = productOrderDetailVo.getProBegintime(); + Date proEndtime = productOrderDetailVo.getProEndtime(); + Date nowDate = new Date(); + if(productOrderDetailVo.getEnabled()){ + if(nowDate.getTime()<proBegintime.getTime()){ + productOrderDetailVo.setUseType("未使用"); + }else if (proBegintime.getTime()<=nowDate.getTime()&&nowDate.getTime()<proEndtime.getTime()){ + productOrderDetailVo.setUseType("使用中"); + }else if(nowDate.getTime()>=proEndtime.getTime()){ + productOrderDetailVo.setUseType("已结束"); + } + }else { + productOrderDetailVo.setUseType("禁用"); + } + listvo.add(productOrderDetailVo); + } + return PageResult.<ProductOrderDetailVo>builder().data(listvo).code(0).count(page.getTotal()).build(); + } + + @Override + public PageResult<ProductEndVo> productEndList(Map<String, Object> params) { + Page<ProductEndVo> page = new Page<>(MapUtils.getInteger(params, "page"), MapUtils.getInteger(params, "limit")); + List<ProductEndVo> list = + baseMapper.productEndList(page,MapUtils.getIntValue(params,"monthPar"),MapUtils.getIntValue(params,"aiCountPar")); + return PageResult.<ProductEndVo>builder().data(list).code(0).count(page.getTotal()).build(); } /** @@ -235,7 +283,6 @@ List<GroupProductDetail> list = baseMapper.groupProductDetail(page,params); return PageResult.<GroupProductDetail>builder().data(list).code(0).count(page.getTotal()).build(); } - /** * 根据ProductOrderDetail对象当做查询条件进行查询 * @param productOrderDetail -- Gitblit v1.8.0