From 96e0aa3946df2fc01413cc5044bc7e6afda87dc2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?LI-CCONG=5C=E6=9D=8E=E8=81=AA=E8=81=AA?= <1441652193@qq.com> Date: Sun, 17 Mar 2024 16:34:02 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=B2=E6=8E=A5=E5=8D=95=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E8=AF=A6=E6=83=85=E6=B7=BB=E5=8A=A0=E5=9B=9E=E6=94=B6=E5=91=98?= =?UTF-8?q?=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/RecycleOrderController.java | 22 ++++++++++++------- .../vo/recycleorder/RecycleOrderRespVO.java | 7 ++++++ 2 files changed, 21 insertions(+), 8 deletions(-) diff --git a/nxhs-service/src/main/java/cc/yunxi/controller/RecycleOrderController.java b/nxhs-service/src/main/java/cc/yunxi/controller/RecycleOrderController.java index 92acc4d..20fa39f 100644 --- a/nxhs-service/src/main/java/cc/yunxi/controller/RecycleOrderController.java +++ b/nxhs-service/src/main/java/cc/yunxi/controller/RecycleOrderController.java @@ -9,22 +9,18 @@ import cc.yunxi.common.utils.CollUtils; import cc.yunxi.common.utils.CommonUtil; import cc.yunxi.domain.dto.LocationDTO; import cc.yunxi.domain.dto.UserDTO; -import cc.yunxi.domain.po.ClientAddress; -import cc.yunxi.domain.po.Product; -import cc.yunxi.domain.po.RecycleOrderProduct; +import cc.yunxi.domain.po.*; import cc.yunxi.domain.vo.clientaddress.ClientAddressSimpleVO; import cc.yunxi.domain.vo.priceproduct.ProductSimpleVO; import cc.yunxi.domain.vo.recycleorder.*; -import cc.yunxi.domain.po.RecycleOrder; import cc.yunxi.domain.query.RecycleOrderQuery; import cc.yunxi.domain.vo.recycleorderdetail.RecycleOrderDetailResponseVO; +import cc.yunxi.domain.vo.recycler.RecyclerSimpleVO; import cc.yunxi.enums.UserTypeEnum; -import cc.yunxi.service.IClientAddressService; -import cc.yunxi.service.IPriceProductService; -import cc.yunxi.service.IRecycleOrderProductService; -import cc.yunxi.service.IRecycleOrderService; +import cc.yunxi.service.*; import cc.yunxi.utils.UserContext; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -53,6 +49,8 @@ public class RecycleOrderController { private final IRecycleOrderService recycleOrderService; + private final IRecyclerService recyclerService; + private final IRecycleOrderProductService recycleOrderProductService; private final IPriceProductService priceProductService; @@ -95,6 +93,14 @@ public class RecycleOrderController { t.setLocation(new LocationDTO(s.getLongitude(), s.getLatitude())); }); this.assembleOrderDetailsInfo(Collections.singletonList(recycleOrderRespVO), location); + // 接单后展示回收员信息 + if (StrUtil.isNotEmpty(recycleOrder.getStaffsId())) { + Recycler recycler = recyclerService.getRecyclerById(recycleOrder.getStaffsId()); + RecyclerSimpleVO recyclerSimpleVO = BeanUtils.copyBean(recycler, RecyclerSimpleVO.class); + recycleOrderRespVO.setRecyclerInfo(recyclerSimpleVO); + // 计算预计上门时间 + recycleOrderRespVO.setEstimateArrivalTime(recycleOrderRespVO.getAppointmentTimeStart().plusHours(1)); + } return CommonResult.success(recycleOrderRespVO); } diff --git a/nxhs-service/src/main/java/cc/yunxi/domain/vo/recycleorder/RecycleOrderRespVO.java b/nxhs-service/src/main/java/cc/yunxi/domain/vo/recycleorder/RecycleOrderRespVO.java index 5d5551a..4657295 100644 --- a/nxhs-service/src/main/java/cc/yunxi/domain/vo/recycleorder/RecycleOrderRespVO.java +++ b/nxhs-service/src/main/java/cc/yunxi/domain/vo/recycleorder/RecycleOrderRespVO.java @@ -3,6 +3,7 @@ package cc.yunxi.domain.vo.recycleorder; import cc.yunxi.domain.dto.LocationDTO; import cc.yunxi.domain.vo.clientaddress.ClientAddressSimpleVO; import cc.yunxi.domain.vo.recycleorderdetail.RecycleOrderDetailResponseVO; +import cc.yunxi.domain.vo.recycler.RecyclerSimpleVO; import cc.yunxi.enums.OrderStatusEnum; import cc.yunxi.enums.OrderTypeEnum; import cc.yunxi.enums.ProductWeightEnum; @@ -129,9 +130,15 @@ public class RecycleOrderRespVO { @ApiModelProperty("订单->回收员距离(km)") private Double distance2; + @ApiModelProperty("预计到达时间") + private LocalDateTime estimateArrivalTime; + @ApiModelProperty("散户地址信息") private ClientAddressSimpleVO addressInfo; + @ApiModelProperty("回收员信息") + private RecyclerSimpleVO recyclerInfo; + @ApiModelProperty("订单明细详情") private List orderDetails;