From 3d4eeb82dd61f8951616dece2425e870116bc23d Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期五, 04 四月 2025 15:56:37 +0800 Subject: [PATCH] 提交最终版本和配置线上环境 --- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OrderServiceImpl.java | 77 +++++++++++++++++++++++++++++++++++++- 1 files changed, 75 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OrderServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OrderServiceImpl.java index 29fcf2f..43f0f3b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OrderServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OrderServiceImpl.java @@ -1,12 +1,30 @@ package com.ruoyi.system.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.core.web.page.PageInfo; +import com.ruoyi.dataInterchange.api.feignClient.UPExgMsgTakeEwayBillAckClient; +import com.ruoyi.dataInterchange.api.vo.UPExgMsgTakeEwayBillAckVo; +import com.ruoyi.system.api.model.Car; +import com.ruoyi.system.api.model.Driver; +import com.ruoyi.system.api.model.Enterprise; import com.ruoyi.system.api.model.Order; import com.ruoyi.system.mapper.OrderMapper; import com.ruoyi.system.query.OrderListReq; +import com.ruoyi.system.service.ICarService; +import com.ruoyi.system.service.IDriverService; +import com.ruoyi.system.service.IEnterpriseService; import com.ruoyi.system.service.IOrderService; import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.time.Instant; +import java.time.LocalDateTime; +import java.time.ZoneOffset; +import java.time.format.DateTimeFormatter; +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; /** @@ -16,9 +34,64 @@ @Service public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements IOrderService { + @Resource + private UPExgMsgTakeEwayBillAckClient upExgMsgTakeEwayBillAckClient; + + @Resource + private IEnterpriseService enterpriseService; + + @Resource + private IDriverService driverService; + + @Resource + private ICarService carService; + + + /** + * 存储新订单数据 + */ + @Override + public void taskSaveNewOrder() { + Order order = this.getOne(new LambdaQueryWrapper<Order>().orderByDesc(Order::getCreateTime).last(" limit 1")); + Long createTime = -1L; + if (null != order) { + createTime = order.getCreateTime().toEpochSecond(ZoneOffset.ofHours(8)); + } + List<UPExgMsgTakeEwayBillAckVo> list = upExgMsgTakeEwayBillAckClient.findByCreateTimeAfter(createTime).getData(); + if (null == list || list.isEmpty()) { + return; + } + List<Enterprise> list1 = enterpriseService.list(); + List<Driver> driverList = driverService.list(new LambdaQueryWrapper<Driver>().eq(Driver::getStatus, 1)); + List<Car> carList = carService.list(); + List<Order> orders = new ArrayList<>(); + for (UPExgMsgTakeEwayBillAckVo vo : list) { + order = new Order(); + Optional<Car> carOptional = carList.stream().filter(s -> s.getVehicleNumber().equals(vo.getVehicleNo())).findFirst(); + if (carOptional.isPresent()) { + order.setCarId(carOptional.get().getId()); + } + Optional<Driver> optional = driverList.stream().filter(s -> s.getVehicleNumber().equals(vo.getVehicleNo())).findFirst(); + if (optional.isPresent()) { + order.setDriverId(optional.get().getId()); + } + Enterprise enterprise = list1.stream().filter(s -> s.getCode().equals(vo.getInferiorPlatformId().toString())).findFirst().get(); + order.setEnterpriseId(enterprise.getId()); + order.setOrderTime(LocalDateTime.ofInstant(Instant.ofEpochMilli(vo.getCreateTime() * 1000), ZoneOffset.ofHours(8)).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + + + order.setCreateTime(LocalDateTime.now()); + orders.add(order); + } + if (orders.size() > 0) { + this.saveBatch(orders); + } + + } /** * 获取订单列表 + * * @param req * @return */ @@ -28,6 +101,6 @@ PageInfo<Order> pageInfo = new PageInfo<>(req.getPageCurr(), req.getPageSize()); return this.baseMapper.getOrderList(pageInfo, req); } - - + + } -- Gitblit v1.7.1