From e14a6debcb17348164f703fcb2a7b9b1c3608352 Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期五, 02 二月 2024 10:19:32 +0800 Subject: [PATCH] 提交版本 --- meiya-rest/src/main/java/com/sinata/rest/modular/mall/controller/MallOrderController.java | 86 +++++++++++++++++++++++++------------------ 1 files changed, 50 insertions(+), 36 deletions(-) diff --git a/meiya-rest/src/main/java/com/sinata/rest/modular/mall/controller/MallOrderController.java b/meiya-rest/src/main/java/com/sinata/rest/modular/mall/controller/MallOrderController.java index 0f24d38..17f1624 100644 --- a/meiya-rest/src/main/java/com/sinata/rest/modular/mall/controller/MallOrderController.java +++ b/meiya-rest/src/main/java/com/sinata/rest/modular/mall/controller/MallOrderController.java @@ -1,10 +1,8 @@ package com.sinata.rest.modular.mall.controller; import cn.hutool.core.date.DateUtil; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.sinata.common.enums.EnumIsDelete; import com.sinata.common.enums.mall.EnumMallOrderState; @@ -17,7 +15,10 @@ import com.sinata.rest.modular.mall.controller.vo.VoGoodsSku; import com.sinata.rest.modular.mall.controller.vo.VoMallOrder; import com.sinata.rest.modular.mall.controller.vo.VoMallOrderDetail; -import com.sinata.rest.modular.mall.model.*; +import com.sinata.rest.modular.mall.controller.vo.VoMallOrderDetailGroupSpecGoods; +import com.sinata.rest.modular.mall.model.MallOrder; +import com.sinata.rest.modular.mall.model.MallOrderDetail; +import com.sinata.rest.modular.mall.model.MallOrderMain; import com.sinata.rest.modular.mall.service.*; import com.sinata.rest.modular.member.model.MemUser; import com.sinata.rest.modular.member.model.MyCoupon; @@ -36,7 +37,6 @@ import javax.annotation.Resource; import java.math.BigDecimal; import java.util.*; -import java.util.stream.Collectors; /** * 订单接口 @@ -76,6 +76,9 @@ @Autowired private IMallGroupSpecService mallGroupSpecService; + @Autowired + private IMallOrderDetailGroupSpecService mallOrderDetailGroupSpecService; + @GetMapping(value = "/list") @ApiOperation(value = "获取订单列表", notes = "获取订单列表") @ApiImplicitParams({ @@ -114,52 +117,63 @@ @ApiImplicitParam(name = "orderNo", value = "订单编号", defaultValue = "1", dataType = "String", paramType = "query", required = true), }) public ApiUtils<VoMallOrder> detail(String orderNo) { - VoMallOrder order = orderService.getOrderByOrderNo(orderNo); - if (order == null) { + VoMallOrder o = orderService.getOrderByOrderNo(orderNo); + if (o == null) { return ApiUtils.returnNG(null, "订单信息不存在"); } + wrapperVoMallOrder(orderNo, o); + return ApiUtils.returnOK(o); + } + + public VoMallOrder wrapperVoMallOrder(String orderNo, VoMallOrder voMallOrder) { try { - order.setOrderCode(QRCodeUtils.crateQRCode(orderNo, 200, 200)); + voMallOrder.setOrderCode(QRCodeUtils.crateQRCode(orderNo, 200, 200)); } catch (Exception e) { e.printStackTrace(); } List<VoMallOrderDetail> detailList = orderService.getOrderDetailByOrderNoList(orderNo); for (VoMallOrderDetail od : detailList) { - List<Integer> groupSpecGoodsIdList = new ArrayList<>(); - MallGoodsSku goodsSku = mallGoodsSkuService.getOne( - Wrappers.<MallGoodsSku>query().lambda() - .eq(MallGoodsSku::getGoodsId, od.getGoodsId()) - .eq(MallGoodsSku::getMerchantId, 0) - .last("LIMIT 1") - ); - if (goodsSku != null && StrUtil.isNotBlank(goodsSku.getSpecIds())) { - String[] specIdArray = goodsSku.getSpecIds().split(","); - List<MallGroupSpec> groupSpecList = mallGroupSpecService.list( - Wrappers.<MallGroupSpec>query().lambda() - .in(MallGroupSpec::getId, specIdArray) - ); - for (MallGroupSpec mallGroupSpec : groupSpecList) { - groupSpecGoodsIdList.addAll( - Arrays.stream(mallGroupSpec.getGoodsIds().split(",")).map(Integer::parseInt).collect(Collectors.toList()) - ); - } - } - if (groupSpecGoodsIdList != null && groupSpecGoodsIdList.size() > 0) { - List<MallGoods> groupSpecGoodsList = mallGoodsService.list( - Wrappers.<MallGoods>query().lambda() - .in(MallGoods::getId, groupSpecGoodsIdList) - ); - od.setGroupSpecGoodsList(groupSpecGoodsList); - } + List<VoMallOrderDetailGroupSpecGoods> voMallOrderDetailGroupSpecGoodsList = mallOrderDetailGroupSpecService.getListByOrderNo(null, od.getOrderDetailNo()); + od.setGroupSpecGoodsList(voMallOrderDetailGroupSpecGoodsList); +// List<Integer> groupSpecGoodsIdList = new ArrayList<>(); +// MallGoodsSku goodsSku = mallGoodsSkuService.getById(od.getSkuId()); +// if (goodsSku != null && StrUtil.isNotBlank(goodsSku.getSpecIds())) { +// String[] specIdArray = goodsSku.getSpecIds().split(","); +// List<MallGroupSpec> groupSpecList = mallGroupSpecService.list( +// Wrappers.<MallGroupSpec>query().lambda() +// .in(MallGroupSpec::getId, specIdArray) +// ); +// for (MallGroupSpec mallGroupSpec : groupSpecList) { +// groupSpecGoodsIdList.addAll( +// Arrays.stream(mallGroupSpec.getGoodsIds().split(",")).map(Integer::parseInt).collect(Collectors.toList()) +// ); +// } +// } +// if (groupSpecGoodsIdList != null && groupSpecGoodsIdList.size() > 0) { +// List<MallGoods> groupSpecGoodsList = mallGoodsService.list( +// Wrappers.<MallGoods>query().lambda() +// .in(MallGoods::getId, groupSpecGoodsIdList) +// ); +// od.setGroupSpecGoodsList(groupSpecGoodsList); +// } } - order.setDetailList(detailList); - return ApiUtils.returnOK(order); + voMallOrder.setDetailList(detailList); + return voMallOrder; + } + + @GetMapping(value = "/getOrderDetailGroupSpecGoods") + @ApiOperation(value = "获取订单套餐规格组商品列表", notes = "获取订单套餐规格组商品列表") + @ApiImplicitParams({ + @ApiImplicitParam(name = "orderNo", value = "订单编号", dataType = "String", paramType = "query", required = true), + }) + public ApiUtils<List<VoMallOrderDetailGroupSpecGoods>> getOrderDetailGroupSpecGoods(String orderNo) { + return ApiUtils.returnOK(mallOrderDetailGroupSpecService.getListByOrderNo(orderNo, null)); } @GetMapping(value = "/getSkuByMerchant") @ApiOperation(value = "获取门店sku信息", notes = "获取门店sku信息") @ApiImplicitParams({ - @ApiImplicitParam(name = "skuIds", value = "商品Sku串(逗号分隔)", defaultValue = "1", dataType = "String", paramType = "query", required = true), + @ApiImplicitParam(name = "skuIds", value = "商品Sku串(逗号分隔)", dataType = "String", paramType = "query", required = true), @ApiImplicitParam(name = "merchantId", value = "门店ID", defaultValue = "1", dataType = "String", paramType = "query", required = true), }) public List<VoGoodsSku> getSkuByMerchant(String skuIds, Integer merchantId) { -- Gitblit v1.7.1