diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/plan/invoicing/service/impl/InvoicingDirectivePlanServiceImpl.java b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/plan/invoicing/service/impl/InvoicingDirectivePlanServiceImpl.java index 65c9e4b6..a3436807 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/plan/invoicing/service/impl/InvoicingDirectivePlanServiceImpl.java +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/plan/invoicing/service/impl/InvoicingDirectivePlanServiceImpl.java @@ -3,15 +3,15 @@ package com.nu.modules.biz.plan.invoicing.service.impl; import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.nu.entity.CareDirectiveEntity; -import com.nu.entity.DirectiveOrderEntity; -import com.nu.entity.InvoicingDirectiveEntity; +import com.nu.entity.*; import com.nu.modules.biz.datapool.service.IInvoicingDataPoolService; import com.nu.modules.biz.plan.care.entity.CareDirectivePlan; import com.nu.modules.biz.plan.invoicing.entity.InvoicingDirectivePlan; import com.nu.modules.biz.plan.invoicing.mapper.InvoicingDirectivePlanMapper; import com.nu.modules.biz.plan.invoicing.service.IInvoicingDirectivePlanService; +import com.nu.modules.config.directivepackage.service.impl.DirectivePackageServiceImpl; import com.nu.modules.invoicing.api.IInvoicingDirectivePlanApi; +import org.apache.commons.compress.utils.Lists; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -20,6 +20,7 @@ import org.springframework.util.CollectionUtils; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; /** * @Description: 护理单元客户仓库类服务指令计划 @@ -32,6 +33,8 @@ public class InvoicingDirectivePlanServiceImpl extends ServiceImpl getPlanList(InvoicingDirectiveEntity invoicingDirectiveEntity) { @@ -39,6 +42,33 @@ public class InvoicingDirectivePlanServiceImpl extends ServiceImpl groupList = baseMapper.list(invoicingDirectiveEntity); + if (!CollectionUtils.isEmpty(groupList)) { + //将包的指令塞进去(写一个sql效率低) + CareDirectivePackageEntity queryParams = new CareDirectivePackageEntity(); + List ids = Lists.newArrayList(); + groupList.stream().forEach(item -> { + CareDirectivePackageEntity d_ = new CareDirectivePackageEntity(); + if ("Y".equals(item.getIzPackage())) { + d_.setId(item.getDirectiveId()); + ids.add(d_); + } + }); + List packagelist = directivePackageService.getNcPackagelist(queryParams, ids); + if (!CollectionUtils.isEmpty(groupList)) { + Map packageMap = packagelist.stream() + .collect(Collectors.toMap( + CareDirectivePackageEntity::getId, + entity -> entity, + (existing, replacement) -> existing + )); + groupList.stream().forEach(item -> { + if ("Y".equals(item.getIzPackage())) { + List directives = packageMap.get(item.getDirectiveId()).getDirectives(); + item.setDirectivesList(BeanUtil.copyToList(directives, InvoicingDirectivePlan.class)); + } + }); + } + } resMap.put("serviceList", groupList);//服务指令计划 //即时指令 diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/plan/logistics/service/impl/LogisticsDirectivePlanServiceImpl.java b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/plan/logistics/service/impl/LogisticsDirectivePlanServiceImpl.java index 8dbb4558..26994d05 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/plan/logistics/service/impl/LogisticsDirectivePlanServiceImpl.java +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/plan/logistics/service/impl/LogisticsDirectivePlanServiceImpl.java @@ -3,16 +3,15 @@ package com.nu.modules.biz.plan.logistics.service.impl; import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.nu.entity.CareDirectiveEntity; -import com.nu.entity.DirectiveOrderEntity; -import com.nu.entity.InvoicingDirectiveEntity; -import com.nu.entity.LogisticsDirectiveEntity; +import com.nu.entity.*; import com.nu.modules.biz.datapool.service.ILogisticsDataPoolService; import com.nu.modules.biz.plan.invoicing.entity.InvoicingDirectivePlan; import com.nu.modules.biz.plan.logistics.entity.LogisticsDirectivePlan; import com.nu.modules.biz.plan.logistics.mapper.LogisticsDirectivePlanMapper; import com.nu.modules.biz.plan.logistics.service.LogisticsDirectivePlanService; +import com.nu.modules.config.directivepackage.service.impl.DirectivePackageServiceImpl; import com.nu.modules.logistics.api.ILogisticsDirectivePlanApi; +import org.apache.commons.compress.utils.Lists; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -21,6 +20,7 @@ import org.springframework.util.CollectionUtils; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; /** * @Description: 后勤服务指令计划 @@ -33,6 +33,8 @@ public class LogisticsDirectivePlanServiceImpl extends ServiceImpl getPlanList(LogisticsDirectiveEntity logisticsDirectiveEntity) { @@ -40,6 +42,33 @@ public class LogisticsDirectivePlanServiceImpl extends ServiceImpl groupList = baseMapper.list(logisticsDirectiveEntity); + if (!CollectionUtils.isEmpty(groupList)) { + //将包的指令塞进去(写一个sql效率低) + CareDirectivePackageEntity queryParams = new CareDirectivePackageEntity(); + List ids = Lists.newArrayList(); + groupList.stream().forEach(item -> { + CareDirectivePackageEntity d_ = new CareDirectivePackageEntity(); + if ("Y".equals(item.getIzPackage())) { + d_.setId(item.getDirectiveId()); + ids.add(d_); + } + }); + List packagelist = directivePackageService.getNcPackagelist(queryParams, ids); + if (!CollectionUtils.isEmpty(groupList)) { + Map packageMap = packagelist.stream() + .collect(Collectors.toMap( + CareDirectivePackageEntity::getId, + entity -> entity, + (existing, replacement) -> existing + )); + groupList.stream().forEach(item -> { + if ("Y".equals(item.getIzPackage())) { + List directives = packageMap.get(item.getDirectiveId()).getDirectives(); + item.setDirectivesList(BeanUtil.copyToList(directives, LogisticsDirectivePlan.class)); + } + }); + } + } resMap.put("serviceList", groupList);//服务指令计划 //即时指令