From c4664502dfdaffff555b532e65b51a57ac8b29c2 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期三, 16 十月 2024 17:51:32 +0800 Subject: [PATCH] 合并代码 --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderInvoiceServiceImpl.java | 40 +++++++++++++++++++++++----------------- 1 files changed, 23 insertions(+), 17 deletions(-) diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderInvoiceServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderInvoiceServiceImpl.java index 4073c96..38cd013 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderInvoiceServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderInvoiceServiceImpl.java @@ -267,31 +267,37 @@ List<TOrderInvoiceVO> list = this.baseMapper.pageList(query,pageInfo); for (TOrderInvoiceVO tOrderInvoiceVO : list) { tOrderInvoiceVO.setUid(tOrderInvoiceVO.getId().toString()); - List<Long> collect = orderInvoiceDetailService.lambdaQuery().eq(TOrderInvoiceDetail::getOrderInvoiceId, tOrderInvoiceVO.getId()) - .eq(TOrderInvoiceDetail::getOrderType, 1).list().stream() + List<Long> collect = orderInvoiceDetailService.lambdaQuery().eq(TOrderInvoiceDetail::getOrderInvoiceId, tOrderInvoiceVO.getId()).list().stream() .map(TOrderInvoiceDetail::getOrderId).collect(Collectors.toList()); // 将其全部转化为String tOrderInvoiceVO.setIds(collect.stream().map(String::valueOf).collect(Collectors.toList())); } // 查询这个开票的订单ids - List<Long> ids = list.stream().map(TOrderInvoiceVO::getId).collect(Collectors.toList()); + if (!list.isEmpty()){ + List<Long> ids = list.stream().map(TOrderInvoiceVO::getId).collect(Collectors.toList()); - List<TOrderInvoiceDetail> orderInvoiceDetailList = orderInvoiceDetailService.list(new LambdaQueryWrapper<TOrderInvoiceDetail>() - .in(TOrderInvoiceDetail::getOrderInvoiceId, ids)); + List<TOrderInvoiceDetail> orderInvoiceDetailList = orderInvoiceDetailService.list(new LambdaQueryWrapper<TOrderInvoiceDetail>() + .in(TOrderInvoiceDetail::getOrderInvoiceId, ids)); - List<TAppUser> finalTAppUsers = tAppUsers; - list.forEach(e->{ - e.setServiceTariff(orderInvoiceDetailList.get(0).getServiceTariff()); - e.setElectricityTariff(orderInvoiceDetailList.get(0).getElectricityTariff()); - e.setAddedServiceTariff(orderInvoiceDetailList.get(0).getAddedServiceTariff()); - e.setAddedService(orderInvoiceDetailList.stream().filter(t->t.getAddedService()!=null).map(TOrderInvoiceDetail::getAddedService).reduce(BigDecimal::add).get()); - e.setElectrovalence(orderInvoiceDetailList.stream().filter(t->t.getElectrovalence()!=null).map(TOrderInvoiceDetail::getElectrovalence).reduce(BigDecimal::add).get()); - e.setServiceCharge(orderInvoiceDetailList.stream().filter(t->t.getServiceCharge()!=null).map(TOrderInvoiceDetail::getServiceCharge).reduce(BigDecimal::add).get()); - if (e.getBillingUserId()!=null){ - e.setUserPhone(finalTAppUsers.stream().filter(t->t.getId()!=null).filter(m->m.getId().equals(Long.parseLong(e.getBillingUserId().toString()))).findFirst().get().getPhone()); - } - }); + List<TAppUser> finalTAppUsers = tAppUsers; + list.forEach(e->{ + if (e.getOrderType()!=null&&e.getOrderType()==1){ + e.setServiceTariff(orderInvoiceDetailList.get(0).getServiceTariff()); + }else{ + e.setServiceTariff(new BigDecimal("0")); + } + e.setElectricityTariff(orderInvoiceDetailList.get(0).getElectricityTariff()); + e.setAddedServiceTariff(orderInvoiceDetailList.get(0).getAddedServiceTariff()); + e.setAddedService(orderInvoiceDetailList.stream().filter(t->t.getAddedService()!=null).map(TOrderInvoiceDetail::getAddedService).reduce(BigDecimal::add).get()); + e.setElectrovalence(orderInvoiceDetailList.stream().filter(t->t.getElectrovalence()!=null).map(TOrderInvoiceDetail::getElectrovalence).reduce(BigDecimal::add).get()); + e.setServiceCharge(orderInvoiceDetailList.stream().filter(t->t.getServiceCharge()!=null).map(TOrderInvoiceDetail::getServiceCharge).reduce(BigDecimal::add).get()); + if (e.getBillingUserId()!=null){ + e.setUserPhone(finalTAppUsers.stream().filter(t->t.getId()!=null).filter(m->m.getId().equals(Long.parseLong(e.getBillingUserId().toString()))).findFirst().get().getPhone()); + } + }); + } + pageInfo.setRecords(list); return pageInfo; -- Gitblit v1.7.1