From ff5b56a9f0a40c563e1c705117f27245e910afe6 Mon Sep 17 00:00:00 2001 From: wangfukang <15630117759@163.com> Date: Mon, 21 Oct 2024 18:04:31 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=9F=E8=83=BD=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/application.yml | 3 + hiver-admin/test-output/test-report.html | 18 ++-- .../mall/controller/ReturnSaleController.java | 94 +++++++++++-------- .../cc/hiver/mall/entity/ReturnDetail.java | 7 ++ .../mybatis/PurchaseServiceImpl.java | 1 + 5 files changed, 75 insertions(+), 48 deletions(-) diff --git a/hiver-admin/src/main/resources/application.yml b/hiver-admin/src/main/resources/application.yml index 07a051f8..5663eb20 100644 --- a/hiver-admin/src/main/resources/application.yml +++ b/hiver-admin/src/main/resources/application.yml @@ -342,6 +342,9 @@ ignored: # 获取微信二维码 - /hiver/order/ow/getWechatQrcode - /hiver/app/shop/getShopInfoById + - /hiver/app/purchaseReturn/getPurchaseReturnById + - /hiver/app/purchase/getPurchaseAllData + - /hiver/app/dealingRecord/getDealingsRecordList # 临时增加 - /hiver/app/logisticsOrder/addLogisticsOrder diff --git a/hiver-admin/test-output/test-report.html b/hiver-admin/test-output/test-report.html index 9dc1f97c..f4d31fea 100644 --- a/hiver-admin/test-output/test-report.html +++ b/hiver-admin/test-output/test-report.html @@ -5,7 +5,7 @@ -Hiver测试报告 +HiverԱ @@ -35,7 +35,7 @@ Hiver
  • -十月 17, 2024 22:13:52 +ʮ 19, 2024 22:12:49
  • @@ -84,7 +84,7 @@

    passTest

    -

    22:13:53 下午 / 0.011 secs

    +

    22:12:51 / 0.028 secs

    @@ -92,9 +92,9 @@
    #test-id=1
    passTest
    -10.17.2024 22:13:53 -10.17.2024 22:13:53 -0.011 secs +10.19.2024 22:12:51 +10.19.2024 22:12:51 +0.028 secs
    @@ -104,7 +104,7 @@ Pass - 22:13:53 + 22:12:51 Test passed @@ -128,13 +128,13 @@

    Started

    -

    十月 17, 2024 22:13:52

    +

    ʮ 19, 2024 22:12:49

    Ended

    -

    十月 17, 2024 22:13:53

    +

    ʮ 19, 2024 22:12:51

    diff --git a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/ReturnSaleController.java b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/ReturnSaleController.java index 4d0c0d60..f3b08e5d 100644 --- a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/ReturnSaleController.java +++ b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/ReturnSaleController.java @@ -33,6 +33,7 @@ import org.springframework.util.ObjectUtils; import org.springframework.web.bind.annotation.*; import java.util.*; +import java.util.stream.Collectors; @Slf4j @RestController @@ -79,6 +80,9 @@ public class ReturnSaleController { @Autowired private CustomerService customerService; + @Autowired + private ProductService productService; + /*@RequestMapping(value = "/get/{id}", method = RequestMethod.GET) @@ -117,47 +121,59 @@ public class ReturnSaleController { .groupBy("product_id"); final List list = returnDetailService.selectByCondition1(queryWrapper); final List saleDetailDTOS = new ArrayList<>(); - for (String productId : list) { - final QueryWrapper queryPWrapper = new QueryWrapper<>(); - queryPWrapper.eq("return_sale_id", id).eq("product_id", productId); - final List saleDetailList = returnDetailService.list(queryPWrapper); - final List saleDetailQueryDTOS = new ArrayList<>(); - final SaleDetailDTO saleDetailDTO = new SaleDetailDTO(); - - // 查询商品所有的库存 - final List stockList = stockService.getProductStock(productId); - final Map stockMap = new HashMap<>(); - for (Stock stock : stockList) { - stockMap.put(stock.getAttributeList(), stock.getStockCount()); - } + Map productMap = new HashMap<>(); + // 获取商品 + if(list != null && !list.isEmpty()){ + final List productList = productService.getProductList(list); + // 将商品封装为map,key为商品id,value为商品信息 + productMap = productList.stream().collect(Collectors.toMap(Product::getId, product -> product)); + } + if (list != null) { + for (String productId : list) { + final QueryWrapper queryPWrapper = new QueryWrapper<>(); + queryPWrapper.eq("return_sale_id", id).eq("product_id", productId); + final List saleDetailList = returnDetailService.list(queryPWrapper); + final List saleDetailQueryDTOS = new ArrayList<>(); + final SaleDetailDTO saleDetailDTO = new SaleDetailDTO(); + + // 查询商品所有的库存 + final List stockList = stockService.getProductStock(productId); + final Map stockMap = new HashMap<>(); + for (Stock stock : stockList) { + stockMap.put(stock.getAttributeList(), stock.getStockCount()); + } - for (ReturnDetail returnDetail : saleDetailList) { - saleDetailDTO.setProductId(productId); - saleDetailDTO.setProductName(returnDetail.getProductName()); - saleDetailDTO.setUnit(returnDetail.getUnit()); - saleDetailDTO.setShopId(returnSale.getShopId()); - saleDetailDTO.setCategoryId(returnDetail.getCategoryId()); - saleDetailDTO.setSaleId(returnDetail.getSaleId()); - saleDetailDTO.setPrice(returnDetail.getPrice()); - saleDetailDTO.setWholesalePrice(returnDetail.getWholesalePrice()); - saleDetailDTO.setPurchasePrice(returnDetail.getPurchasePrice()); - saleDetailDTO.setDiscount(returnDetail.getDiscount()); - saleDetailDTO.setDiscountAmount(returnDetail.getDiscountAmount()); - saleDetailDTO.setRealPrice(returnDetail.getRealPrice()); - saleDetailDTO.setProductPicture(returnDetail.getProductPicture()); - saleDetailDTO.setProductSn(returnDetail.getProductSn()); - - final SaleDetailQueryDTO saleDetailQueryDTO = new SaleDetailQueryDTO(); - saleDetailQueryDTO.setAttributeList(returnDetail.getAttributeList()); - saleDetailQueryDTO.setProductCount(returnDetail.getProductCount()); - - saleDetailQueryDTO.setStockCount(stockMap.getOrDefault(saleDetailQueryDTO.getAttributeList(), null)); - - - saleDetailQueryDTOS.add(saleDetailQueryDTO); + for (ReturnDetail returnDetail : saleDetailList) { + saleDetailDTO.setProductId(productId); + saleDetailDTO.setProductName(returnDetail.getProductName()); + saleDetailDTO.setUnit(returnDetail.getUnit()); + saleDetailDTO.setShopId(returnSale.getShopId()); + saleDetailDTO.setCategoryId(returnDetail.getCategoryId()); + saleDetailDTO.setSaleId(returnDetail.getSaleId()); + saleDetailDTO.setPrice(returnDetail.getPrice()); + saleDetailDTO.setWholesalePrice(returnDetail.getWholesalePrice()); + saleDetailDTO.setPurchasePrice(returnDetail.getPurchasePrice()); + saleDetailDTO.setDiscount(returnDetail.getDiscount()); + saleDetailDTO.setDiscountAmount(returnDetail.getDiscountAmount()); + saleDetailDTO.setRealPrice(returnDetail.getRealPrice()); + saleDetailDTO.setProductPicture(returnDetail.getProductPicture()); + saleDetailDTO.setProductSn(returnDetail.getProductSn()); + + // 获取商品的专属分类值 + if(productMap.containsKey(productId)){ + saleDetailDTO.setAttrId(productMap.get(productId).getAttrId()); + } + final SaleDetailQueryDTO saleDetailQueryDTO = new SaleDetailQueryDTO(); + saleDetailQueryDTO.setAttributeList(returnDetail.getAttributeList()); + saleDetailQueryDTO.setProductCount(returnDetail.getProductCount()); + + saleDetailQueryDTO.setStockCount(stockMap.getOrDefault(saleDetailQueryDTO.getAttributeList(), null)); + + saleDetailQueryDTOS.add(saleDetailQueryDTO); + } + saleDetailDTO.setStockLogList1(saleDetailQueryDTOS); + saleDetailDTOS.add(saleDetailDTO); } - saleDetailDTO.setStockLogList1(saleDetailQueryDTOS); - saleDetailDTOS.add(saleDetailDTO); } saleReturnVO.setSaleDetailDTOList(saleDetailDTOS); //增加客户信息明细 diff --git a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/entity/ReturnDetail.java b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/entity/ReturnDetail.java index 732128f8..56571e61 100644 --- a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/entity/ReturnDetail.java +++ b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/entity/ReturnDetail.java @@ -1,10 +1,12 @@ package cc.hiver.mall.entity; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.persistence.Transient; import java.io.Serializable; import java.math.BigDecimal; import java.util.Date; @@ -78,5 +80,10 @@ public class ReturnDetail implements Serializable { @ApiModelProperty(value = "货号") private String productSn; + @Transient + @TableField(exist = false) + @ApiModelProperty(value = "商品专属分类id") + private String attrId; + private static final long serialVersionUID = 1L; } \ No newline at end of file diff --git a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/mybatis/PurchaseServiceImpl.java b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/mybatis/PurchaseServiceImpl.java index b43a6f9e..2b3e2332 100644 --- a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/mybatis/PurchaseServiceImpl.java +++ b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/mybatis/PurchaseServiceImpl.java @@ -177,6 +177,7 @@ public class PurchaseServiceImpl extends ServiceImpl i purchaseDetail.setWholesalePrice(product.getWholesalePrice()); purchaseDetail.setPurchasePrice(product.getPurchasePrice()); purchaseDetail.setCustomerCategoryRule(product.getCustomerCategoryRule()); + purchaseDetail.setAttrId(product.getAttrId()); } } purchaseVo.setPurchaseDetails(purchaseDetails);