From d378b55981bca01371325eeb4e9e60483ff7d609 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期六, 10 八月 2024 13:45:20 +0800 Subject: [PATCH] 评价标签数量 --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java | 106 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 106 insertions(+), 0 deletions(-) diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java index fc7bac6..873af59 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java @@ -1,8 +1,24 @@ package com.ruoyi.order.controller; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ruoyi.common.core.domain.R; +import com.ruoyi.order.api.model.TChargingOrder; +import com.ruoyi.order.api.model.TExchangeOrder; +import com.ruoyi.order.api.model.TShoppingOrder; +import com.ruoyi.order.service.TExchangeOrderService; +import com.ruoyi.order.service.TShoppingOrderService; +import io.swagger.annotations.Api; +import io.swagger.models.auth.In; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; /** * <p> @@ -12,9 +28,99 @@ * @author xiaochen * @since 2024-08-07 */ +@Api(tags = "积分兑换订单") @RestController @RequestMapping("/t-exchange-order") public class TExchangeOrderController { + @Autowired + private TShoppingOrderService tShoppingOrderService; + @Autowired + private TExchangeOrderService exchangeOrderService; + //订单详情 + @PostMapping(value = "/detail") + public R<TExchangeOrder> detail(@RequestParam Long orderId) { + return R.ok(exchangeOrderService.getById(orderId)); + } + + /** + * 管理后台 根据商品ids 查询对应的销量 + * @param goodsIds 订单号-商品类型 + * @return + */ + @PostMapping("/getSalesCountByGoodsIds") + public R<List<Integer>> getSalesCountByGoodsId(String goodsIds){ + String[] split = goodsIds.split("-"); + // 取出最后一位字符 类型1查询现金购买 类型2查询积分兑换 + String s = split[split.length - 1]; + List<Integer> res = new ArrayList<>(); + switch (Integer.parseInt(s)){ + case 1: + for (int i = 0; i < split.length-1; i++) { + Integer reduce = tShoppingOrderService.list(new QueryWrapper<TShoppingOrder>() + .eq("goods_id", split[i]) + .eq("payment_status", 2) + .ne("refund_status", 2)) + .stream().map(TShoppingOrder::getPurchaseQuantity).reduce(0, Integer::sum); + res.add(reduce); + } + break; + case 2: + for (int i = 0; i < split.length-1; i++) { + Integer reduce = exchangeOrderService.list(new QueryWrapper<TExchangeOrder>() + .eq("goods_id", split[i]) + ) + .stream().map(TExchangeOrder::getPurchaseQuantity).reduce(0, Integer::sum); + res.add(reduce); + } + break; + } + return R.ok(res); + } + /** + * 管理后台 根据t_app_coupon流水号查询现金优惠券的订单编号 + * @param goodsIds 订单号-商品类型 + * @return + */ + @PostMapping("/getCodeBySerialNumber") + public R<List<String>> getCodeBySerialNumber(String goodsIds){ + String[] split = goodsIds.split("-"); + List<String> strings = new ArrayList<>(); + for (String s : split) { + TShoppingOrder one = tShoppingOrderService.getOne(new QueryWrapper<TShoppingOrder>() + .eq("order_type", 2) + .eq("serial_number", s)); + if (one != null){ + strings.add(one.getCode()); + }else{ + strings.add(""); + } + } + + return R.ok(strings); + } + /** + * 管理后台 根据t_app_coupon流水号查询积分兑换优惠券的订单编号 + * @param goodsIds 订单号-商品类型 + * @return + */ + @PostMapping("/getCodeBySerialNumberIntegral") + public R<List<String>> getCodeBySerialNumberIntegral(String goodsIds){ + String[] split = goodsIds.split("-"); + List<String> strings = new ArrayList<>(); + for (String s : split) { + TExchangeOrder one = exchangeOrderService.getOne(new QueryWrapper<TExchangeOrder + >() + .eq("order_type", 2) + .eq("serial_number", s)); + if (one != null){ + strings.add(one.getCode()); + }else{ + strings.add(""); + } + } + + return R.ok(strings); + } } -- Gitblit v1.7.1