提交 cc53fb09 authored 作者: hzh's avatar hzh

代码优化

上级 10a22d1a
...@@ -8,6 +8,8 @@ import org.apache.commons.collections4.CollectionUtils; ...@@ -8,6 +8,8 @@ import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.dromara.common.core.domain.R; import org.dromara.common.core.domain.R;
import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StreamUtils;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.redis.utils.RedisUtils; import org.dromara.common.redis.utils.RedisUtils;
import org.dromara.common.ys.common.PageInfo; import org.dromara.common.ys.common.PageInfo;
import org.dromara.common.ys.constant.Cplx; import org.dromara.common.ys.constant.Cplx;
...@@ -25,6 +27,8 @@ import org.dromara.common.ys.service.IAirportService; ...@@ -25,6 +27,8 @@ import org.dromara.common.ys.service.IAirportService;
import org.dromara.common.ys.service.ICommonResourceService; import org.dromara.common.ys.service.ICommonResourceService;
import org.dromara.common.ys.service.IInsuranceService; import org.dromara.common.ys.service.IInsuranceService;
import org.dromara.server.base.BaseController; import org.dromara.server.base.BaseController;
import org.dromara.server.domain.bo.OrderAirportBo;
import org.dromara.server.domain.vo.OrderAirportVo;
import org.dromara.server.service.IOrderAirportService; import org.dromara.server.service.IOrderAirportService;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
...@@ -144,6 +148,15 @@ public class AirportController extends BaseController { ...@@ -144,6 +148,15 @@ public class AirportController extends BaseController {
return R.ok(airPortService.orderList(getUserId(), model)); return R.ok(airPortService.orderList(getUserId(), model));
} }
/**
* 订单列表(本地)
*/
@GetMapping("/local/orderList")
public TableDataInfo<OrderAirportVo> list(OrderAirportBo bo, PageQuery pageQuery) {
bo.setPersonCode(getUserId());
return orderAirportService.queryPageList(bo, pageQuery);
}
/** /**
* 订单详情 * 订单详情
*/ */
......
...@@ -8,6 +8,7 @@ import org.dromara.server.domain.OrderAirport; ...@@ -8,6 +8,7 @@ import org.dromara.server.domain.OrderAirport;
import java.io.Serial; import java.io.Serial;
import java.io.Serializable; import java.io.Serializable;
import java.util.List;
/** /**
...@@ -222,5 +223,8 @@ public class OrderAirportVo implements Serializable { ...@@ -222,5 +223,8 @@ public class OrderAirportVo implements Serializable {
@ExcelProperty(value = "机建合计") @ExcelProperty(value = "机建合计")
private Long airportFee; private Long airportFee;
/**
* 航程集合
*/
private List<OrderAirportRangeVo> rangeList;
} }
package org.dromara.server.service.impl; package org.dromara.server.service.impl;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import com.alibaba.nacos.common.utils.CollectionUtils;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StreamUtils;
import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.ys.model.res.airport.QueryTkOrderModel; import org.dromara.common.ys.model.res.airport.QueryTkOrderModel;
import org.dromara.common.ys.model.res.airport.other.*; import org.dromara.common.ys.model.res.airport.other.*;
import org.dromara.common.ys.service.IAirportService; import org.dromara.common.ys.service.IAirportService;
import org.dromara.server.base.AbstractBaseService; import org.dromara.server.base.AbstractBaseService;
import org.dromara.server.domain.*; import org.dromara.server.domain.*;
import org.dromara.server.domain.bo.OrderAirportBo; import org.dromara.server.domain.bo.OrderAirportBo;
import org.dromara.server.domain.vo.OrderAirportRangeVo;
import org.dromara.server.domain.vo.OrderAirportVo; import org.dromara.server.domain.vo.OrderAirportVo;
import org.dromara.server.mapper.*; import org.dromara.server.mapper.*;
import org.dromara.server.service.IOrderAirportService; import org.dromara.server.service.IOrderAirportService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Objects; import java.util.Objects;
...@@ -49,6 +54,19 @@ public class OrderAirportServiceImpl extends AbstractBaseService<OrderAirportVo, ...@@ -49,6 +54,19 @@ public class OrderAirportServiceImpl extends AbstractBaseService<OrderAirportVo,
return baseMapper; return baseMapper;
} }
@Override
public TableDataInfo<OrderAirportVo> queryPageList(OrderAirportBo bo, PageQuery pageQuery) {
TableDataInfo<OrderAirportVo> page = super.queryPageList(bo, pageQuery);
List<OrderAirportVo> list = page.getRows();
List<Long> orderIds = StreamUtils.toList(list, OrderAirportVo::getId);
orderIds = CollectionUtils.isEmpty(orderIds) ? Arrays.asList(-1L) : orderIds;
List<OrderAirportRangeVo> rangeList = rangeMapper.selectVoList(new LambdaQueryWrapper<OrderAirportRange>().in(OrderAirportRange::getOrderId, orderIds));
list.forEach(item -> {
item.setRangeList(StreamUtils.filter(rangeList, r -> Objects.equals(r.getOrderId(), item.getId())));
});
return page;
}
@Override @Override
public LambdaQueryWrapper<OrderAirport> buildQueryWrapper(OrderAirportBo bo) { public LambdaQueryWrapper<OrderAirport> buildQueryWrapper(OrderAirportBo bo) {
Map<String, Object> params = bo.getParams(); Map<String, Object> params = bo.getParams();
...@@ -110,6 +128,7 @@ public class OrderAirportServiceImpl extends AbstractBaseService<OrderAirportVo, ...@@ -110,6 +128,7 @@ public class OrderAirportServiceImpl extends AbstractBaseService<OrderAirportVo,
@Override @Override
public void updateAirportInfo(List<String> orderNoList) { public void updateAirportInfo(List<String> orderNoList) {
orderNoList = CollectionUtils.isEmpty(orderNoList) ? List.of("-1") : orderNoList;
List<OrderAirport> orderList = baseMapper.selectList(new LambdaQueryWrapper<OrderAirport>().in(OrderAirport::getOrderNo, orderNoList)); List<OrderAirport> orderList = baseMapper.selectList(new LambdaQueryWrapper<OrderAirport>().in(OrderAirport::getOrderNo, orderNoList));
List<Long> orderIds = StreamUtils.toList(orderList, OrderAirport::getId); List<Long> orderIds = StreamUtils.toList(orderList, OrderAirport::getId);
List<OrderAirportPsg> orderPsgList = psgMapper.selectList(new LambdaQueryWrapper<OrderAirportPsg>().in(OrderAirportPsg::getOrderId, orderIds)); List<OrderAirportPsg> orderPsgList = psgMapper.selectList(new LambdaQueryWrapper<OrderAirportPsg>().in(OrderAirportPsg::getOrderId, orderIds));
...@@ -163,6 +182,7 @@ public class OrderAirportServiceImpl extends AbstractBaseService<OrderAirportVo, ...@@ -163,6 +182,7 @@ public class OrderAirportServiceImpl extends AbstractBaseService<OrderAirportVo,
} }
//跟新保险信息 //跟新保险信息
List<InsuranceInfoBean> insuranceList = orderModel.getInsuranceList(); List<InsuranceInfoBean> insuranceList = orderModel.getInsuranceList();
insuranceList = CollectionUtils.isEmpty(insuranceList) ? List.of() : insuranceList;
for (InsuranceInfoBean insurance : insuranceList) { for (InsuranceInfoBean insurance : insuranceList) {
OrderAirportInsurance orderInsurance = orderInsuranceList.stream().filter(item -> Objects.equals(item.getOrderId(), order.getId()) && org.apache.commons.lang3.StringUtils.equals(item.getBxOrderNo(), insurance.getBxOrderNo())).findFirst().orElseGet( OrderAirportInsurance orderInsurance = orderInsuranceList.stream().filter(item -> Objects.equals(item.getOrderId(), order.getId()) && org.apache.commons.lang3.StringUtils.equals(item.getBxOrderNo(), insurance.getBxOrderNo())).findFirst().orElseGet(
() -> { () -> {
...@@ -199,6 +219,7 @@ public class OrderAirportServiceImpl extends AbstractBaseService<OrderAirportVo, ...@@ -199,6 +219,7 @@ public class OrderAirportServiceImpl extends AbstractBaseService<OrderAirportVo,
} }
//跟新支付信息 //跟新支付信息
List<OrderPayInfoBean> payInfoList = orderModel.getPayInfoList(); List<OrderPayInfoBean> payInfoList = orderModel.getPayInfoList();
payInfoList = CollectionUtils.isEmpty(payInfoList) ? List.of() : payInfoList;
for (OrderPayInfoBean pay : payInfoList) { for (OrderPayInfoBean pay : payInfoList) {
OrderAirportPay orderPay = orderPayList.stream().filter(item -> Objects.equals(item.getOrderId(), order.getId()) && org.apache.commons.lang3.StringUtils.equals(item.getPayBillno(), pay.getPayBillno())).findFirst().orElseGet( OrderAirportPay orderPay = orderPayList.stream().filter(item -> Objects.equals(item.getOrderId(), order.getId()) && org.apache.commons.lang3.StringUtils.equals(item.getPayBillno(), pay.getPayBillno())).findFirst().orElseGet(
() -> { () -> {
...@@ -217,6 +238,7 @@ public class OrderAirportServiceImpl extends AbstractBaseService<OrderAirportVo, ...@@ -217,6 +238,7 @@ public class OrderAirportServiceImpl extends AbstractBaseService<OrderAirportVo,
} }
//跟新打印单信息 //跟新打印单信息
List<TicketPrintInfoBean> ticketList = orderModel.getPrintList(); List<TicketPrintInfoBean> ticketList = orderModel.getPrintList();
ticketList = CollectionUtils.isEmpty(ticketList) ? List.of() : ticketList;
for (TicketPrintInfoBean ticket : ticketList) { for (TicketPrintInfoBean ticket : ticketList) {
OrderAirportTicket orderTicket = orderTicketList.stream().filter(item -> Objects.equals(item.getOrderId(), order.getId()) && org.apache.commons.lang3.StringUtils.equals(item.getTkno(), ticket.getTkno())).findFirst().orElseGet( OrderAirportTicket orderTicket = orderTicketList.stream().filter(item -> Objects.equals(item.getOrderId(), order.getId()) && org.apache.commons.lang3.StringUtils.equals(item.getTkno(), ticket.getTkno())).findFirst().orElseGet(
() -> { () -> {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论