From 923c8e406c7ab57a728911683f0196a6bb732084 Mon Sep 17 00:00:00 2001 From: peng <peng.com> Date: 星期三, 09 七月 2025 17:58:21 +0800 Subject: [PATCH] 完成小程序商户端查看订单发货查看物流 --- buyer-api/src/main/java/cn/lili/controller/lmk/SupplierController.java | 80 ++++++++++++++++++++++++++++++++++++++- 1 files changed, 77 insertions(+), 3 deletions(-) diff --git a/buyer-api/src/main/java/cn/lili/controller/lmk/SupplierController.java b/buyer-api/src/main/java/cn/lili/controller/lmk/SupplierController.java index 51248eb..637d39a 100644 --- a/buyer-api/src/main/java/cn/lili/controller/lmk/SupplierController.java +++ b/buyer-api/src/main/java/cn/lili/controller/lmk/SupplierController.java @@ -1,6 +1,7 @@ package cn.lili.controller.lmk; import cn.lili.common.enums.ResultUtil; +import cn.lili.common.security.OperationalJudgment; import cn.lili.common.security.context.UserContext; import cn.lili.common.utils.StringUtils; import cn.lili.common.vo.ResultMessage; @@ -8,16 +9,26 @@ import cn.lili.modules.goods.service.CategoryService; import cn.lili.modules.member.entity.dos.Clerk; import cn.lili.modules.member.service.ClerkService; +import cn.lili.modules.member.service.StoreLogisticsService; +import cn.lili.modules.order.order.entity.dto.PartDeliveryParamsDTO; +import cn.lili.modules.order.order.entity.dto.SupplierOrderSearchParams; +import cn.lili.modules.order.order.entity.vo.OrderDetailVO; +import cn.lili.modules.order.order.entity.vo.OrderSimpleXcxVO; +import cn.lili.modules.order.order.service.OrderService; import cn.lili.modules.store.service.StoreDetailService; +import cn.lili.modules.system.entity.vo.StoreLogisticsVO; +import cn.lili.utils.COSUtil; +import com.baomidou.mybatisplus.core.metadata.IPage; import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; +import javax.validation.constraints.NotNull; import java.util.List; import java.util.Objects; @@ -37,8 +48,22 @@ */ @Autowired private StoreDetailService storeDetailService; + /** + * 鐗╂祦鍏徃 + */ + @Autowired + private StoreLogisticsService storeLogisticsService; + /** + * 璁㈠崟 + */ + @Autowired + private OrderService orderService; + + @Autowired + private COSUtil cosUtil; @Autowired private ClerkService clerkService; + @ApiOperation(value = "鑾峰彇搴楅摵缁忚惀鐨勫垎绫�") @GetMapping(value = "/allCategery") public ResultMessage<List<CategoryVO>> getListAll() { @@ -53,4 +78,53 @@ String goodsManagementCategory = storeDetailService.getStoreDetail(storeId).getGoodsManagementCategory(); return ResultUtil.data(this.categoryService.getStoreCategory(goodsManagementCategory.split(","))); } + + @ApiOperation(value = "鏌ヨ浼氬憳璁㈠崟鍒楄〃") + @GetMapping("/orderList") + public ResultMessage<IPage<OrderSimpleXcxVO>> orderList(SupplierOrderSearchParams orderSearchParams) { + String storeId = Objects.requireNonNull(UserContext.getCurrentUser()).getStoreId(); + if (StringUtils.isEmpty(storeId)) { + Clerk clerk = clerkService.getClerkByMemberId(UserContext.getCurrentUserId()); + orderSearchParams.setStoreId(clerk.getStoreId()); + } else { + orderSearchParams.setStoreId(storeId); + } + return ResultUtil.data(orderService.querySupplierOrderParams(orderSearchParams)); + } + + @ApiOperation(value = "璁㈠崟鏄庣粏") + @ApiImplicitParams({ + @ApiImplicitParam(name = "orderSn", value = "璁㈠崟缂栧彿", required = true, dataType = "String", paramType = "path") + }) + @GetMapping(value = "/orderDetail/{orderSn}") + public ResultMessage<OrderDetailVO> detail(@NotNull @PathVariable String orderSn) { + OperationalJudgment.judgment(orderService.getBySn(orderSn)); + OrderDetailVO orderDetailVO = orderService.queryDetail(orderSn); + orderDetailVO.getOrderItems().forEach(orderItem -> { + String image = orderItem.getImage(); + if (StringUtils.isNotBlank(image) && !image.contains("http")) { + orderItem.setImage(cosUtil.getPreviewUrl(image)); + } + }); + return ResultUtil.data(orderDetailVO); + } + + @ApiOperation(value = "鑾峰彇鍟嗗宸查�夋嫨鐗╂祦鍏徃鍒楄〃") + @GetMapping("/getChecked") + public ResultMessage<List<StoreLogisticsVO>> getChecked() { + String storeId = Objects.requireNonNull(UserContext.getCurrentUser()).getStoreId(); + return ResultUtil.data(storeLogisticsService.getStoreSelectedLogistics(storeId)); + } + + @ApiOperation(value = "璁㈠崟鍖呰9鍙戣揣") + @ApiImplicitParams({ + @ApiImplicitParam(name = "orderSn", value = "璁㈠崟sn", required = true, dataType = "String", paramType = "path"), + @ApiImplicitParam(name = "logisticsNo", value = "鍙戣揣鍗曞彿", required = true, dataType = "String", paramType = "query"), + @ApiImplicitParam(name = "logisticsId", value = "鐗╂祦鍏徃", required = true, dataType = "String", paramType = "query") + }) + @PostMapping(value = "/{orderSn}/partDelivery") + public ResultMessage<Object> delivery(@RequestBody PartDeliveryParamsDTO partDeliveryParamsDTO) { + return ResultUtil.data(orderService.partDelivery(partDeliveryParamsDTO)); + } + } -- Gitblit v1.8.0