From 0f4459e4201fdc19185b7dd03215871f036acd70 Mon Sep 17 00:00:00 2001 From: liujie <1793218484@qq.com> Date: 星期三, 28 五月 2025 16:45:01 +0800 Subject: [PATCH] Merge branch 'dev' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile into dev --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java | 111 ++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 104 insertions(+), 7 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 f686282..10b7aab 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 @@ -3,7 +3,9 @@ import java.time.LocalDateTime; +import com.alibaba.fastjson2.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ruoyi.account.api.feignClient.AppUserAddressClient; import com.ruoyi.account.api.feignClient.AppUserClient; import com.ruoyi.account.api.model.TAppUserAddress; import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient; @@ -12,6 +14,11 @@ import com.ruoyi.common.core.dto.ExchangeBackDto; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.core.web.page.PageInfo; +import com.ruoyi.common.log.annotation.Log; +import com.ruoyi.common.log.enums.BusinessType; +import com.ruoyi.common.log.enums.OperatorType; +import com.ruoyi.common.security.annotation.Logical; +import com.ruoyi.common.security.annotation.RequiresPermissions; import com.ruoyi.common.security.service.TokenService; import com.ruoyi.order.api.model.TExchangeOrder; import com.ruoyi.order.api.model.TShoppingOrder; @@ -26,6 +33,8 @@ import com.ruoyi.order.service.TShoppingOrderService; import com.ruoyi.common.core.dto.ExchangeDto; import com.ruoyi.common.core.utils.OrderCodeUtil; +import com.ruoyi.other.api.domain.TCoupon; +import com.ruoyi.other.api.domain.TGoods; import com.ruoyi.other.api.feignClient.CouponClient; import com.ruoyi.other.api.feignClient.GoodsClient; import com.ruoyi.payment.api.feignClient.AliPaymentClient; @@ -67,8 +76,16 @@ private GoodsClient goodsClient; @Resource private CouponClient couponClient; - - + + @Resource + private SysUserClient sysUserClient; + + @Resource + private TokenService tokenService; + + + + @RequiresPermissions(value = {"/exchangeOrder"}, logical = Logical.OR) @PostMapping("/getExchangeOrderList") @ApiOperation(value = "列表查询", tags = {"管理后台-兑换订单"}) public AjaxResult<PageInfo<TExchangeOrder>> getExchangeOrderList(@RequestBody ShoppingOrderQuery query) { @@ -92,8 +109,10 @@ PageInfo<TExchangeOrder> res = exchangeOrderService.pageList(query); return AjaxResult.success(res); } - @Resource - private SysUserClient sysUserClient; + + + + @RequiresPermissions(value = {"/exchangeOrder/deliver_goods"}, logical = Logical.OR) @GetMapping("/getShoppingOrderInfoById") @ApiOperation(value = "根据订单id查看订单详情", tags = {"管理后台-兑换订单"}) public AjaxResult<TExchangeOrder> getShoppingOrderList(String id) { @@ -117,16 +136,35 @@ byId.setReceivingAddress(data.getAddress()); } } + switch (byId.getOrderType()){ + case 1: + TGoods data = goodsClient.getGoodsById(byId.getGoodsId()).getData(); + if (data!=null){ + byId.setName(data.getName()); + } + break; + case 2: + TCoupon data1 = couponClient.getCouponById1(byId.getCouponId()).getData(); + if (data1!=null){ + byId.setName(data1.getName()); + } + break; + } return AjaxResult.success(byId); } - @Resource - private TokenService tokenService; + + + + @RequiresPermissions(value = {"/exchangeOrder/del"}, logical = Logical.OR) @GetMapping("/deleteShoppingOrder") @ApiOperation(value = "批量删除订单", tags = {"管理后台-兑换订单"}) public AjaxResult<TExchangeOrder> deleteShoppingOrder(String ids) { exchangeOrderService.removeBatchByIds(Arrays.asList(ids.split(","))); return AjaxResult.success(); } + + + @RequiresPermissions(value = {"/exchangeOrder/cancel"}, logical = Logical.OR) @GetMapping("/cancelShoppingOrder") @ApiOperation(value = "取消订单", tags = {"管理后台-兑换订单"}) public AjaxResult cancelShoppingOrder(String id) { @@ -141,6 +179,10 @@ appUserClient.refundPoints(byId.getAppUserId()+"-"+points); return AjaxResult.success(); } + + + + @RequiresPermissions(value = {"/exchangeOrder/deliver_goods"}, logical = Logical.OR) @GetMapping("/consignerShoppingOrder") @ApiOperation(value = "发货", tags = {"管理后台-兑换订单"}) public AjaxResult consignerShoppingOrder(String id,String companyName,String code) { @@ -219,6 +261,46 @@ } return R.ok(res); } + + @GetMapping("/getCount") + public R<Integer> getCount(@RequestParam("goodId") Integer goodId,@RequestParam("goodeType")Integer goodeType,@RequestParam("buyType")Integer buyType){ + if (buyType==1){ + //现金 + if (goodeType==1){ + //商品 + Integer reduce = tShoppingOrderService.list(new QueryWrapper<TShoppingOrder>() + .eq("order_type",1) + .eq("goods_id", goodId) + .isNull("refund_status")) + .stream().map(TShoppingOrder::getPurchaseQuantity).reduce(0, Integer::sum); + return R.ok(reduce); + }else { + //优惠券 + Integer reduce = tShoppingOrderService.list(new QueryWrapper<TShoppingOrder>() + .eq("order_type",2) + .eq("coupon_id", goodId) + .isNull("refund_status")) + .stream().map(TShoppingOrder::getPurchaseQuantity).reduce(0, Integer::sum); + return R.ok(reduce); + } + + }else { + //兑换 + if (goodeType==1){ + Integer reduce = exchangeOrderService.list(new QueryWrapper<TExchangeOrder>().eq("order_type",1) + .ne("status",4).eq("goods_id", goodId)) + .stream().map(TExchangeOrder::getPurchaseQuantity).reduce(0, Integer::sum); + return R.ok(reduce); + }else { + Integer reduce = exchangeOrderService.list(new QueryWrapper<TExchangeOrder>().eq("order_type",2) + .ne("status",4).eq("coupon_id", goodId)) + .stream().map(TExchangeOrder::getPurchaseQuantity).reduce(0, Integer::sum); + return R.ok(reduce); + } + } + + + } /** * 管理后台 根据t_app_coupon订单ids查询优惠券的订单编号 * @param goodsIds 订单号-商品类型 @@ -266,6 +348,8 @@ return R.ok(exchangeOrderService.lambdaQuery().eq(TExchangeOrder::getCouponId,goodId).eq(TExchangeOrder::getAppUserId,userId).ne(TExchangeOrder::getStatus,4).count()); } } + @Resource + private AppUserAddressClient appUserAddressClient; @PostMapping("/create") public R<ExchangeBackDto> exchangeCreate(@RequestBody ExchangeDto exchangeDto){ @@ -289,10 +373,15 @@ } tExchangeOrder.setCreateTime(LocalDateTime.now()); tExchangeOrder.setDelFlag(false); + + TAppUserAddress data = appUserAddressClient.getAppUserAddressById(exchangeDto.getAddressId()).getData(); + tExchangeOrder.setAddressJson(JSON.toJSONString(data)); + exchangeOrderService.save(tExchangeOrder); ExchangeBackDto exchangeBackDto = new ExchangeBackDto(); exchangeBackDto.setId(tExchangeOrder.getId()); exchangeBackDto.setCode(tExchangeOrder.getCode()); + return R.ok(exchangeBackDto); } @@ -312,7 +401,11 @@ @ApiOperation(value = "获取兑换订单详情", tags = {"小程序-兑换记录"}) public AjaxResult<ExchangeOrderGoodsInfo> getGoodsExchangeOrder(@PathVariable String id){ ExchangeOrderGoodsInfo goodsExchangeOrder = exchangeOrderService.getGoodsExchangeOrder(id); - + TExchangeOrder exchangeOrder = exchangeOrderService.getById(id); + Long userId = tokenService.getLoginUserApplet().getUserId(); + if(!exchangeOrder.getAppUserId().equals(userId)){ + return AjaxResult.error("权限不足"); + } return AjaxResult.success(goodsExchangeOrder); } @@ -321,6 +414,10 @@ @ApiOperation(value = "确认收货操作", tags = {"小程序-兑换记录"}) public AjaxResult confirmReceipt(@PathVariable String id){ TExchangeOrder tExchangeOrder = exchangeOrderService.getById(id); + Long userId = tokenService.getLoginUserApplet().getUserId(); + if(!tExchangeOrder.getAppUserId().equals(userId)){ + return AjaxResult.error("权限不足"); + } if(tExchangeOrder.getStatus() == 3){ return AjaxResult.error("不能重复确认收货"); } -- Gitblit v1.7.1