From b36a96a2241968732e33b2287a6bbe2f82d889ad Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期五, 29 十一月 2024 16:42:24 +0800 Subject: [PATCH] 开发确认购物车订单逻辑 --- ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/vo/CouponInfoVo.java | 32 ---------------- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java | 3 + ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserCouponServiceImpl.java | 7 ++- ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/UserCouponClient.java | 3 + ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/vo/PaymentUserCouponVo.java | 36 ++++++++++++++++++ ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/ConfirmOrderVo.java | 3 + ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/UserCouponClientFallbackFactory.java | 3 + ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserAddressController.java | 4 +- ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/UserCouponService.java | 3 + ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserCouponController.java | 5 +- 10 files changed, 55 insertions(+), 44 deletions(-) diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/UserCouponClientFallbackFactory.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/UserCouponClientFallbackFactory.java index 2e8b2dc..18a31cc 100644 --- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/UserCouponClientFallbackFactory.java +++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/UserCouponClientFallbackFactory.java @@ -3,6 +3,7 @@ import com.ruoyi.account.api.feignClient.UserCouponClient; import com.ruoyi.account.api.vo.CouponInfoVo; import com.ruoyi.account.api.vo.PaymentUserCoupon; +import com.ruoyi.account.api.vo.PaymentUserCouponVo; import com.ruoyi.common.core.domain.R; import org.springframework.cloud.openfeign.FallbackFactory; @@ -18,7 +19,7 @@ return new UserCouponClient() { @Override - public R<List<CouponInfoVo>> getPaymentUserCoupon(PaymentUserCoupon paymentUserCoupon) { + public R<List<PaymentUserCouponVo>> getPaymentUserCoupon(PaymentUserCoupon paymentUserCoupon) { return R.fail("根据id获取优惠券数据失败:" + cause.getMessage()); } }; diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/UserCouponClient.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/UserCouponClient.java index 8264f94..a5ffd14 100644 --- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/UserCouponClient.java +++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/UserCouponClient.java @@ -3,6 +3,7 @@ import com.ruoyi.account.api.factory.UserCouponClientFallbackFactory; import com.ruoyi.account.api.vo.CouponInfoVo; import com.ruoyi.account.api.vo.PaymentUserCoupon; +import com.ruoyi.account.api.vo.PaymentUserCouponVo; import com.ruoyi.common.core.constant.ServiceNameConstants; import com.ruoyi.common.core.domain.R; import org.springframework.cloud.openfeign.FeignClient; @@ -24,5 +25,5 @@ * @return */ @PostMapping("/user-coupon/getPaymentUserCoupon") - R<List<CouponInfoVo>> getPaymentUserCoupon(@RequestBody PaymentUserCoupon paymentUserCoupon); + R<List<PaymentUserCouponVo>> getPaymentUserCoupon(@RequestBody PaymentUserCoupon paymentUserCoupon); } diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/vo/CouponInfoVo.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/vo/CouponInfoVo.java index 7c0f020..3b0ec23 100644 --- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/vo/CouponInfoVo.java +++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/vo/CouponInfoVo.java @@ -1,38 +1,6 @@ package com.ruoyi.account.api.vo; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import java.math.BigDecimal; - -/** - * @author zhibing.pu - * @Date 2024/11/25 17:59 - */ -@Data -@ApiModel -public class CouponInfoVo { - @ApiModelProperty("优惠券id") - private Long id; - @ApiModelProperty("优惠券名称") - private String name; - @ApiModelProperty("优惠券类型 1=满减券,2=代金券,3=折扣券,4=商品券") - private Integer couponType; - @ApiModelProperty("满x元") - private BigDecimal conditionAmount; - @ApiModelProperty("减x元") - private BigDecimal discountAmount; - @ApiModelProperty("代金x元") - private BigDecimal moneyAmount; - @ApiModelProperty("折扣") - private BigDecimal discount; - @ApiModelProperty("有效期开始时间") - private String periodStartTime; - @ApiModelProperty("有效期结束时间") - private String periodEndTime; - @ApiModelProperty("是否可用") - private Boolean available; import com.baomidou.mybatisplus.annotation.*; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/vo/PaymentUserCouponVo.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/vo/PaymentUserCouponVo.java new file mode 100644 index 0000000..f91a159 --- /dev/null +++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/vo/PaymentUserCouponVo.java @@ -0,0 +1,36 @@ +package com.ruoyi.account.api.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * @author zhibing.pu + * @Date 2024/11/29 16:39 + */ +@Data +@ApiModel +public class PaymentUserCouponVo { + @ApiModelProperty("优惠券id") + private Long id; + @ApiModelProperty("优惠券名称") + private String name; + @ApiModelProperty("优惠券类型 1=满减券,2=代金券,3=折扣券,4=商品券") + private Integer couponType; + @ApiModelProperty("满x元") + private BigDecimal conditionAmount; + @ApiModelProperty("减x元") + private BigDecimal discountAmount; + @ApiModelProperty("代金x元") + private BigDecimal moneyAmount; + @ApiModelProperty("折扣") + private BigDecimal discount; + @ApiModelProperty("有效期开始时间") + private String periodStartTime; + @ApiModelProperty("有效期结束时间") + private String periodEndTime; + @ApiModelProperty("是否可用") + private Boolean available; +} diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserAddressController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserAddressController.java index 8abf416..bb6226e 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserAddressController.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserAddressController.java @@ -63,7 +63,7 @@ @PostMapping("/add") @ApiOperation(value = "添加", tags = {"小程序-个人中心首页-我的地址"}) public R add(@RequestBody UserAddress userAddress){ - Long userId = tokenService.getLoginUserApplet().getUserId(); + Long userId = tokenService.getLoginUserApplet().getUserid(); userAddress.setAppUserId(userId); userAddressService.save(userAddress); return R.ok(); @@ -87,7 +87,7 @@ @PostMapping("/set") @ApiOperation(value = "设为默认", tags = {"小程序-个人中心首页-我的地址"}) public R set(@RequestParam Integer id){ - Long userId = tokenService.getLoginUserApplet().getUserId(); + Long userId = tokenService.getLoginUserApplet().getUserid(); List<UserAddress> list = userAddressService.lambdaQuery().eq(UserAddress::getAppUserId, userId).list(); for (UserAddress userAddress : list) { userAddress.setIsDefault(0); diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserCouponController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserCouponController.java index 003c5b0..dd9e7ff 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserCouponController.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserCouponController.java @@ -7,6 +7,7 @@ import com.ruoyi.account.api.model.UserCoupon; import com.ruoyi.account.api.model.UserPoint; import com.ruoyi.account.api.vo.CouponInfoVo; +import com.ruoyi.account.api.vo.PaymentUserCouponVo; import com.ruoyi.account.service.AppUserService; import com.ruoyi.account.service.UserCouponService; import com.ruoyi.account.service.UserPointService; @@ -145,8 +146,8 @@ */ @ResponseBody @PostMapping("/getPaymentUserCoupon") - public R<List<CouponInfoVo>> getPaymentUserCoupon(@RequestBody PaymentUserCoupon paymentUserCoupon){ - List<CouponInfoVo> userCoupon = userCouponService.getUserCoupon(paymentUserCoupon.getUserId(), paymentUserCoupon.getOrderMoney(), paymentUserCoupon.getType()); + public R<List<PaymentUserCouponVo>> getPaymentUserCoupon(@RequestBody PaymentUserCoupon paymentUserCoupon){ + List<PaymentUserCouponVo> userCoupon = userCouponService.getUserCoupon(paymentUserCoupon.getUserId(), paymentUserCoupon.getOrderMoney(), paymentUserCoupon.getType()); return R.ok(userCoupon); } diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/UserCouponService.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/UserCouponService.java index 5787042..0c98266 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/UserCouponService.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/UserCouponService.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.account.api.model.UserCoupon; import com.ruoyi.account.api.vo.CouponInfoVo; +import com.ruoyi.account.api.vo.PaymentUserCouponVo; import org.springframework.web.bind.annotation.RequestParam; import java.math.BigDecimal; @@ -23,5 +24,5 @@ * @param userId * @return */ - List<CouponInfoVo> getUserCoupon(Long userId, BigDecimal orderMoney, Integer type); + List<PaymentUserCouponVo> getUserCoupon(Long userId, BigDecimal orderMoney, Integer type); } diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserCouponServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserCouponServiceImpl.java index 97fa4c6..eac7acd 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserCouponServiceImpl.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserCouponServiceImpl.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.account.api.vo.CouponInfoVo; +import com.ruoyi.account.api.vo.PaymentUserCouponVo; import com.ruoyi.account.mapper.UserCouponMapper; import com.ruoyi.account.api.model.UserCoupon; import com.ruoyi.account.service.UserCouponService; @@ -40,7 +41,7 @@ * @return */ @Override - public List<CouponInfoVo> getUserCoupon(Long userId, BigDecimal orderMoney, Integer type) { + public List<PaymentUserCouponVo> getUserCoupon(Long userId, BigDecimal orderMoney, Integer type) { List<UserCoupon> list = this.list(new LambdaQueryWrapper<UserCoupon>().eq(UserCoupon::getAppUserId, userId).eq(UserCoupon::getDelFlag, 0) .last(" and now() between start_time and end_time")); List<Integer> couponIds = list.stream().map(UserCoupon::getCouponId).collect(Collectors.toList()); @@ -50,10 +51,10 @@ List<CouponInfo> couponInfoList = couponInfoClient.getCouponInfoList(couponIds).getData(); //构建返回数据 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); - List<CouponInfoVo> infoVoList = new ArrayList<>(); + List<PaymentUserCouponVo> infoVoList = new ArrayList<>(); for (UserCoupon userCoupon : list) { CouponInfo couponInfo = couponInfoList.stream().filter(s -> s.getId().equals(userCoupon.getCouponId())).findFirst().get(); - CouponInfoVo couponInfoVo = new CouponInfoVo(); + PaymentUserCouponVo couponInfoVo = new PaymentUserCouponVo(); couponInfoVo.setId(userCoupon.getId()); couponInfoVo.setName(couponInfo.getCouponName()); couponInfoVo.setCouponType(couponInfo.getCouponType()); diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java index a3e1a00..c9fc889 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java @@ -12,6 +12,7 @@ import com.ruoyi.account.api.model.UserAddress; import com.ruoyi.account.api.vo.CouponInfoVo; import com.ruoyi.account.api.vo.PaymentUserCoupon; +import com.ruoyi.account.api.vo.PaymentUserCouponVo; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.security.service.TokenService; @@ -325,7 +326,7 @@ paymentUserCoupon.setUserId(userid); paymentUserCoupon.setOrderMoney(orderMoney); paymentUserCoupon.setType(confirmOrder.getType()); - List<CouponInfoVo> data = userCouponClient.getPaymentUserCoupon(paymentUserCoupon).getData(); + List<PaymentUserCouponVo> data = userCouponClient.getPaymentUserCoupon(paymentUserCoupon).getData(); confirmOrderVo.setCoupon(data); //获取快递策略 SystemConfig systemConfig = systemConfigClient.getSystemConfig(3).getData(); diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/ConfirmOrderVo.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/ConfirmOrderVo.java index c3c17a6..dabda03 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/ConfirmOrderVo.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/ConfirmOrderVo.java @@ -2,6 +2,7 @@ import com.ruoyi.account.api.model.UserAddress; import com.ruoyi.account.api.vo.CouponInfoVo; +import com.ruoyi.account.api.vo.PaymentUserCouponVo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -45,5 +46,5 @@ @ApiModelProperty("活动是否可以和优惠券同时使用") private Boolean useSimultaneously; @ApiModelProperty("优惠券列表") - private List<CouponInfoVo> coupon; + private List<PaymentUserCouponVo> coupon; } -- Gitblit v1.7.1