|
|
@@ -1101,7 +1101,10 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
OrderItem orderItem = orderItemMapper.selectById(refundSkus.getOrderItemId());
|
|
|
Double actualTotal = orderItem.getActualTotal();//付的钱
|
|
|
Integer useScore = orderItem.getUseScore();//使用的总积分
|
|
|
- shoppingScore = useScore +freightAmountScore;//商品的总金额积分
|
|
|
+ if (ObjectUtil.isNotEmpty(order.getOffsetPoints())){
|
|
|
+ shoppingScore = order.getOffsetPoints().intValue()+freightAmountScore;//退款商品的总积分
|
|
|
+ }
|
|
|
+
|
|
|
if (useScore > 0) {
|
|
|
//退的积分不一定等于下单的数量
|
|
|
totalRefundScore = (int) (totalRefundScore + Arith.mul(productCount * orderItem.getPrice(), 100));
|
|
|
@@ -1110,7 +1113,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
totalRefundActual = Arith.add(totalRefundActual, productCount * orderItem.getPrice());
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+ log.info("退款积分:refundOffsetPoints:"+refundOffsetPoints +";shoppingScore:"+shoppingScore+";totalRefundScore:"+totalRefundScore);
|
|
|
//退积分
|
|
|
if (totalRefundScore > 0) {
|
|
|
refundScore = (long) totalRefundScore;
|
|
|
@@ -1144,6 +1147,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
refundExpiredScore += variablePoints;
|
|
|
}
|
|
|
totalRefundScore -= variablePoints;
|
|
|
+ pointsRecordMapper.insert(npr);
|
|
|
} else if(totalRefundScore>0){//574>188,应退188
|
|
|
npr.setPoints(BigDecimal.valueOf(totalRefundScore));
|
|
|
npr.setVariablePoints(BigDecimal.valueOf(0));
|
|
|
@@ -1158,8 +1162,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
refundExpiredScore += totalRefundScore;
|
|
|
}
|
|
|
totalRefundScore=0;
|
|
|
+ pointsRecordMapper.insert(npr);
|
|
|
}
|
|
|
- pointsRecordMapper.insert(npr);
|
|
|
+ log.info("退积分:当前退款金额为:totalRefundScore:"+totalRefundScore);
|
|
|
if (totalRefundScore==0 && shoppingScore>=refundOffsetPoints) {
|
|
|
orderRefund.setRefundAmount(refundActual.doubleValue());
|
|
|
orderRefund.setOffsetPoints(refundScore);
|
|
|
@@ -1170,7 +1175,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
return;
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
//退钱
|
|
|
if (totalRefundActual > 0) {
|