From d4f159d60acf6f263bfa4508a113c0feacd2f5b9 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期三, 19 六月 2024 18:30:02 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java | 125 ++++++++++++++++++++++------------------- 1 files changed, 66 insertions(+), 59 deletions(-) diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java index bd78592..5d0f6ee 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java @@ -349,6 +349,7 @@ order.setCoverPic(goodsSku.getCoverPic()); order.setSjPrice(goodsSku.getPrice()); } + order.setOrderRemark(memberOrderDTO.getOrderRemark()); order.setMemberId(memberOrderDTO.getMemberId()); order.setGoodsQuantity(memberOrderDTO.getGoodsQuantity()); order.setOrderTime(LocalDateTime.now()); @@ -406,6 +407,9 @@ @Override public MemberTiOrderVO updMemberOrder(MemberOrderDTO memberOrderDTO) { Order order = baseMapper.selectById(memberOrderDTO.getId()); + if(memberOrderDTO.getOrderRemark()!=null){ + order.setOrderRemark(memberOrderDTO.getOrderRemark()); + } MemberTiOrderVO memberOrderVO=new MemberTiOrderVO(); if (memberOrderDTO.getReceiverDetailAddress()!=null){ @@ -515,70 +519,73 @@ } } - BigDecimal pice=order.getPrice().multiply(new BigDecimal(memberOrderDTO.getGoodsQuantity())); - if (memberOrderDTO.getCouponId()!=null){ - CouponMemberDTO couponMemberDTO=new CouponMemberDTO(); - couponMemberDTO.setId(memberOrderDTO.getCouponId()); - CouponMember data = promotionClient.getCouponMember(couponMemberDTO, SecurityConstants.INNER).getData(); - if (order.getCouponId()!=0){ - CouponMemberDTO couponMemberDTO1=new CouponMemberDTO(); - couponMemberDTO1.setId(memberOrderDTO.getCouponId()); - couponMemberDTO1.setCouponStatus(0); - promotionClient.updCouponMember(couponMemberDTO1, SecurityConstants.INNER); - } - - order.setCouponId(data.getId()); - - if (data.getCouponType().getCode()==1){ - if (pice.doubleValue()>=data.getFullReductionAmount().doubleValue()){ - pice=pice.subtract(data.getReductionAmount()); - order.setDiscountMoney(data.getReductionAmount()); + if (memberOrderDTO.getGoodsQuantity()!=null){ + BigDecimal pice=order.getPrice().multiply(new BigDecimal(memberOrderDTO.getGoodsQuantity())); + if (memberOrderDTO.getCouponId()!=null){ + CouponMemberDTO couponMemberDTO=new CouponMemberDTO(); + couponMemberDTO.setId(memberOrderDTO.getCouponId()); + CouponMember data = promotionClient.getCouponMember(couponMemberDTO, SecurityConstants.INNER).getData(); + if (order.getCouponId()!=0){ + CouponMemberDTO couponMemberDTO1=new CouponMemberDTO(); + couponMemberDTO1.setId(memberOrderDTO.getCouponId()); + couponMemberDTO1.setCouponStatus(0); + promotionClient.updCouponMember(couponMemberDTO1, SecurityConstants.INNER); } - } - if (data.getCouponType().getCode()==2){ - pice= order.getTotalAmount(); - pice=pice.subtract(data.getVoucherAmount()); - order.setDiscountMoney(data.getVoucherAmount()); - } - if (data.getCouponType().getCode()==3){ - pice= order.getTotalAmount(); - BigDecimal pice1=new BigDecimal(data.getDiscountRate()); - BigDecimal pice2=new BigDecimal(0.1); - BigDecimal pice3=pice.multiply(pice1.multiply(pice2)); - BigDecimal pice4= pice.subtract(pice3); - if (pice4.doubleValue()>data.getMaxDiscount().doubleValue()){ - pice=pice.subtract(data.getMaxDiscount()); - order.setDiscountMoney(data.getMaxDiscount()); - }else{ - order.setDiscountMoney(pice4); - pice=pice3; - } + order.setCouponId(data.getId()); + + if (data.getCouponType().getCode()==1){ + if (pice.doubleValue()>=data.getFullReductionAmount().doubleValue()){ + pice=pice.subtract(data.getReductionAmount()); + order.setDiscountMoney(data.getReductionAmount()); + } + } + if (data.getCouponType().getCode()==2){ + pice= order.getTotalAmount(); + pice=pice.subtract(data.getVoucherAmount()); + order.setDiscountMoney(data.getVoucherAmount()); + } + if (data.getCouponType().getCode()==3){ + pice= order.getTotalAmount(); + BigDecimal pice1=new BigDecimal(data.getDiscountRate()); + BigDecimal pice2=new BigDecimal(0.1); + BigDecimal pice3=pice.multiply(pice1.multiply(pice2)); + BigDecimal pice4= pice.subtract(pice3); + if (pice4.doubleValue()>data.getMaxDiscount().doubleValue()){ + pice=pice.subtract(data.getMaxDiscount()); + order.setDiscountMoney(data.getMaxDiscount()); + }else{ + order.setDiscountMoney(pice4); + pice=pice3; + } + + } + order.setCouponId(memberOrderDTO.getCouponId()); + CouponMemberDTO couponMemberDTO2=new CouponMemberDTO(); + couponMemberDTO2.setId(memberOrderDTO.getCouponId()); + couponMemberDTO2.setCouponStatus(1); + promotionClient.updCouponMember(couponMemberDTO2, SecurityConstants.INNER); + }else{ + if (order.getCouponId()!=null&&order.getCouponId()!=0){ + CouponMemberDTO couponMemberDTO1=new CouponMemberDTO(); + couponMemberDTO1.setCouponStatus(0); + couponMemberDTO1.setId(order.getCouponId()); + promotionClient.updCouponMember(couponMemberDTO1, SecurityConstants.INNER); + } + order.setCouponId(0L); + order.setDiscountMoney(new BigDecimal(0)); } - order.setCouponId(memberOrderDTO.getCouponId()); - CouponMemberDTO couponMemberDTO2=new CouponMemberDTO(); - couponMemberDTO2.setId(memberOrderDTO.getCouponId()); - couponMemberDTO2.setCouponStatus(1); - promotionClient.updCouponMember(couponMemberDTO2, SecurityConstants.INNER); - }else{ - if (order.getCouponId()!=null&&order.getCouponId()!=0){ - CouponMemberDTO couponMemberDTO1=new CouponMemberDTO(); - couponMemberDTO1.setCouponStatus(0); - couponMemberDTO1.setId(order.getCouponId()); - promotionClient.updCouponMember(couponMemberDTO1, SecurityConstants.INNER); - } - order.setCouponId(0L); - order.setDiscountMoney(new BigDecimal(0)); + order.setTotalAmount(pice); + + CustomConfig memberPointsMoney = sysUserClient.getconfig("MEMBER_POINTS_MONEY").getData(); + CustomConfig memberPointsPoints = sysUserClient.getconfig("MEMBER_POINTS_POINTS").getData(); + + Double aDouble= Double.valueOf(memberPointsMoney.getConfigValue()) * Double.valueOf(memberPointsPoints.getConfigValue()); + BigDecimal pi=pice.multiply(new BigDecimal(aDouble)); + order.setPoints(pi.intValue()); + baseMapper.updateById(order); } - order.setTotalAmount(pice); - CustomConfig memberPointsMoney = sysUserClient.getconfig("MEMBER_POINTS_MONEY").getData(); - CustomConfig memberPointsPoints = sysUserClient.getconfig("MEMBER_POINTS_POINTS").getData(); - - Double aDouble= Double.valueOf(memberPointsMoney.getConfigValue()) * Double.valueOf(memberPointsPoints.getConfigValue()); - BigDecimal pi=pice.multiply(new BigDecimal(aDouble)); - order.setPoints(pi.intValue()); - baseMapper.updateById(order); memberOrderVO.setId(order.getId()); memberOrderVO.setOrderStatus(OrderStatusEnum.TO_PLAY); -- Gitblit v1.7.1