From 2bdbc6648cb4e340d057063324f46c2fce013544 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期一, 23 十二月 2024 10:36:10 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java | 56 ++++++++++++++++++++++++++++++++------------------------
1 files changed, 32 insertions(+), 24 deletions(-)
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
index ac220ed..6e85163 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
@@ -12,6 +12,7 @@
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.exception.ServiceException;
import com.ruoyi.common.core.utils.StringUtils;
+import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.order.enums.OrderStatus;
import com.ruoyi.order.mapper.OrderGoodMapper;
@@ -129,9 +130,6 @@
orderGoodsVO.setOriginalPrice(goods.getOriginalPrice());
goodsList.add(orderGoodsVO);
}
-
-
-
// 收货地址
String addressJson = order.getAddressJson();
UserAddress userAddress = new UserAddress();
@@ -139,7 +137,6 @@
userAddress = JSONObject.parseObject(addressJson, UserAddress.class);
}
-
// 优惠券
String couponJson = order.getCouponJson();
CouponInfo couponInfo = new CouponInfo();
@@ -153,7 +150,6 @@
if (StringUtils.isNotEmpty(activityJson)){
orderActivityInfo = JSONObject.parseObject(activityJson, OrderActivityInfo.class);
}
-
OrderDetailVO orderDetailVO = new OrderDetailVO();
if (CollectionUtil.isNotEmpty(orderGoods)){
@@ -250,7 +246,9 @@
String content = baseSetting.getContent();
JSONObject jsonObject = JSONObject.parseObject(content);
Long days = jsonObject.getLong("days");
- commissionService.addToCommissionDelayQueue(order.getId(), LocalDateTime.now().plusDays(days));
+ if (days != null && days > 0){
+ commissionService.addToCommissionDelayQueue(order.getId(), LocalDateTime.now().plusDays(days));
+ }
}
@@ -260,7 +258,7 @@
* @return
*/
@Override
- public List<OrderPageListVo> getOrderPageList(OrderPageList orderPageList) {
+ public PageInfo<OrderPageListVo> getOrderPageList(OrderPageList orderPageList) {
Long userid = tokenService.getLoginUser().getUserid();
SysUser sysUser = sysUserClient.getSysUser(userid).getData();
if(2 == sysUser.getRoleType()){
@@ -291,14 +289,16 @@
}
}
- List<OrderPageListVo> list = this.baseMapper.getOrderPageList(orderPageList);
+ PageInfo<OrderPageListVo> pageInfo = new PageInfo(orderPageList.getPageCurr(), orderPageList.getPageSize());
+
+ List<OrderPageListVo> list = this.baseMapper.getOrderPageList(pageInfo, orderPageList);
for (OrderPageListVo orderPageListVo : list) {
Long appUserId = orderPageListVo.getAppUserId();
AppUser appUser = appUserClient.getAppUserById(appUserId);
orderPageListVo.setUserName(appUser.getName());
orderPageListVo.setPhone(appUser.getPhone());
}
- return list;
+ return pageInfo.setRecords(list);
}
@@ -309,7 +309,7 @@
* @return
*/
@Override
- public R confirmDelivery(String orderId, String code) {
+ public R confirmDelivery(Long orderId, String code) {
Order order = this.getById(orderId);
if(1 == order.getPayStatus()){
return R.fail("订单还未完成支付");
@@ -341,6 +341,16 @@
}
order.setOrderStatus(5);
this.updateById(order);
+ refundPayMoney(order);
+ return R.ok();
+ }
+
+
+ /**
+ * 返回订单支付金额和回退积分和会员等级
+ * @param order
+ */
+ public void refundPayMoney(Order order){
//开始退款
Integer payMethod = order.getPayMethod();
BigDecimal paymentAmount = order.getPaymentAmount();
@@ -350,16 +360,18 @@
}
if(2 == payMethod){
//余额退款
- OrderBalancePayment orderBalancePayment = orderBalancePaymentService.getOne(new LambdaQueryWrapper<OrderBalancePayment>().eq(OrderBalancePayment::getOrderId, orderId));
+ OrderBalancePayment orderBalancePayment = orderBalancePaymentService.getOne(new LambdaQueryWrapper<OrderBalancePayment>().eq(OrderBalancePayment::getOrderId, order.getId()));
BigDecimal balance = appUser.getBalance();
- appUser.setTotalRedPacketAmount(appUser.getTotalRedPacketAmount().add(orderBalancePayment.getRedPacketAmount()).setScale(2, RoundingMode.HALF_EVEN));
- appUser.setTotalDistributionAmount(appUser.getTotalDistributionAmount().add(orderBalancePayment.getDistributionAmount()).setScale(2, RoundingMode.HALF_EVEN));
+ if(null != orderBalancePayment){
+ appUser.setTotalRedPacketAmount(appUser.getTotalRedPacketAmount().add(orderBalancePayment.getRedPacketAmount()).setScale(2, RoundingMode.HALF_EVEN));
+ appUser.setTotalDistributionAmount(appUser.getTotalDistributionAmount().add(orderBalancePayment.getDistributionAmount()).setScale(2, RoundingMode.HALF_EVEN));
+ }
appUser.setBalance(balance.add(paymentAmount).setScale(2, RoundingMode.HALF_EVEN));
appUser.setShopAmount(appUser.getShopAmount().subtract(paymentAmount).setScale(2, RoundingMode.HALF_EVEN));
-
+
//构建账户余额流水明细
BalanceChangeRecord balanceChangeRecord = new BalanceChangeRecord();
- balanceChangeRecord.setOrderId(orderId);
+ balanceChangeRecord.setOrderId(order.getId());
balanceChangeRecord.setAppUserId(order.getAppUserId());
balanceChangeRecord.setChangeType(6);
balanceChangeRecord.setBeforeAmount(balance);
@@ -373,7 +385,7 @@
if(3 == payMethod){
//积分退款
appUser.setLavePoint(appUser.getLavePoint() + order.getPoint());
-
+
//开始运费退款,积分支付,运费是单独进行支付的,所以需要单独退款
if(null != order.getExpressAmount() && BigDecimal.ZERO.compareTo(order.getExpressAmount()) < 0){
BigDecimal expressAmount = order.getExpressAmount();
@@ -382,14 +394,14 @@
}
if(2 == order.getExpressPayMethod()){
//余额退款
- OrderBalancePayment orderBalancePayment = orderBalancePaymentService.getOne(new LambdaQueryWrapper<OrderBalancePayment>().eq(OrderBalancePayment::getOrderId, orderId));
+ OrderBalancePayment orderBalancePayment = orderBalancePaymentService.getOne(new LambdaQueryWrapper<OrderBalancePayment>().eq(OrderBalancePayment::getOrderId, order.getId()));
BigDecimal balance = appUser.getBalance();
appUser.setTotalRedPacketAmount(appUser.getTotalRedPacketAmount().add(orderBalancePayment.getRedPacketAmount()).setScale(2, RoundingMode.HALF_EVEN));
appUser.setTotalDistributionAmount(appUser.getTotalDistributionAmount().add(orderBalancePayment.getDistributionAmount()).setScale(2, RoundingMode.HALF_EVEN));
appUser.setBalance(balance.add(expressAmount).setScale(2, RoundingMode.HALF_EVEN));
//构建账户余额流水明细
BalanceChangeRecord balanceChangeRecord = new BalanceChangeRecord();
- balanceChangeRecord.setOrderId(orderId);
+ balanceChangeRecord.setOrderId(order.getId());
balanceChangeRecord.setAppUserId(order.getAppUserId());
balanceChangeRecord.setChangeType(6);
balanceChangeRecord.setBeforeAmount(balance);
@@ -425,10 +437,9 @@
userPoint.setBalance(appUser.getLavePoint());
userPoint.setCreateTime(LocalDateTime.now());
userPoint.setAppUserId(order.getAppUserId());
- userPoint.setObjectId(orderId);
+ userPoint.setObjectId(order.getId());
userPointClient.saveUserPoint(userPoint);
appUserClient.editAppUserById(appUser);
- return R.ok();
}
@@ -443,10 +454,7 @@
VipSetting vipSetting = vipSettingClient.getVipSetting(vipId).getData();
Integer vipLevelUpShopRole = vipSetting.getVipLevelUpShopRole();
Integer vipLevelUpShop = vipSetting.getVipLevelUpShop();
- if(1 == vipLevelUpShopRole && shopPoint < vipLevelUpShop){
- return true;
- }
- return false;
+ return 1 == vipLevelUpShopRole && shopPoint < vipLevelUpShop;
}
--
Gitblit v1.7.1