This commit is contained in:
wangjinlei
2023-12-07 15:23:31 +08:00
parent a45f43862c
commit b321ad333a
4 changed files with 26 additions and 3 deletions

View File

@@ -262,15 +262,21 @@ public class BuyOrderController {
List<BuyOrderProduct> buyOrderProductList = buyOrder.getProductList(); List<BuyOrderProduct> buyOrderProductList = buyOrder.getProductList();
// 订单总金额 // 订单总金额
BigDecimal totalPrice = new BigDecimal(0); BigDecimal totalPrice = new BigDecimal(0);
//是否存在手摸或脚模 //是否存在手摸或脚模,修改用户的脉穴权限
List<Integer> sjc =Arrays.asList(128,129,130,131); List<Integer> sjc =Arrays.asList(128,129,130,131);
boolean sj_check = false; boolean sj_check = false;
//是否存在时辰取穴的权限触发商品
List<Integer> scqq = Arrays.asList(133,134,135);
boolean scqq_check = false;
// 遍历商品总价计算 // 遍历商品总价计算
for (BuyOrderProduct buyOrderProduct : buyOrderProductList) { for (BuyOrderProduct buyOrderProduct : buyOrderProductList) {
if(sjc.contains(buyOrderProduct.getProductId())){ if(sjc.contains(buyOrderProduct.getProductId())){
sj_check = true; sj_check = true;
} }
if(scqq.contains(buyOrderProduct.getProductId())){
scqq_check = true;
}
Integer productId = buyOrderProduct.getProductId(); Integer productId = buyOrderProduct.getProductId();
int quantity = buyOrderProduct.getQuantity(); int quantity = buyOrderProduct.getQuantity();
@@ -309,7 +315,7 @@ public class BuyOrderController {
if (Constants.PAYMENT_METHOD_VIRTUAL.equals(buyOrder.getPaymentMethod())) { if (Constants.PAYMENT_METHOD_VIRTUAL.equals(buyOrder.getPaymentMethod())) {
buyOrder.setOrderStatus(Constants.ORDER_STATUS_TO_BE_SHIPPED); buyOrder.setOrderStatus(Constants.ORDER_STATUS_TO_BE_SHIPPED);
MyUserEntity user = this.myUserService.getById(buyOrder.getUserId()); MyUserEntity user = this.myUserService.getById(buyOrder.getUserId());
if (usePeanutCoin(user, totalPrice,sj_check)) { if (usePeanutCoin(user, totalPrice,sj_check,scqq_check)) {
// 更新订单状态 // 更新订单状态
buyOrderService.updateOrderStatus(user.getId(), buyOrder.getOrderSn(), "0"); buyOrderService.updateOrderStatus(user.getId(), buyOrder.getOrderSn(), "0");
recordTransaction(buyOrder, user, totalPrice); recordTransaction(buyOrder, user, totalPrice);
@@ -861,12 +867,15 @@ public class BuyOrderController {
* @param totalPrice * @param totalPrice
* @return * @return
*/ */
private boolean usePeanutCoin(MyUserEntity user, BigDecimal totalPrice,boolean sj_check) { private boolean usePeanutCoin(MyUserEntity user, BigDecimal totalPrice,boolean sj_check,boolean scqq_check) {
if (user.getPeanutCoin().compareTo(totalPrice) >= 0) { if (user.getPeanutCoin().compareTo(totalPrice) >= 0) {
user.setPeanutCoin(user.getPeanutCoin().subtract(totalPrice)); user.setPeanutCoin(user.getPeanutCoin().subtract(totalPrice));
if (sj_check){ if (sj_check){
user.setPointPower(1); user.setPointPower(1);
} }
if(scqq_check){
user.setTgdzPower(1);
}
this.myUserService.updateById(user); this.myUserService.updateById(user);
return true; return true;
} }

View File

@@ -87,6 +87,10 @@ public class MyUserEntity implements Serializable {
*/ */
private Integer pointPower; private Integer pointPower;
/**
* 是否有时辰取穴的权限
*/
private Integer tgdzPower;
/** /**
* 创建时间 * 创建时间

View File

@@ -221,6 +221,11 @@ public class AliPayServiceImpl implements AliPayService {
userInfo.setPointPower(1); userInfo.setPointPower(1);
userService.updateById(userInfo); userService.updateById(userInfo);
} }
if(collect.contains(133)||collect.contains(134)||collect.contains(135)){
MyUserEntity userInfo = userService.getById(orderEntity.getUserId());
userInfo.setTgdzPower(1);
userService.updateById(userInfo);
}
} }

View File

@@ -157,6 +157,11 @@ public class WeChatPayController {
userInfo.setPointPower(1); userInfo.setPointPower(1);
userService.updateById(userInfo); userService.updateById(userInfo);
} }
if(collect.contains(133)||collect.contains(134)||collect.contains(135)){
MyUserEntity userInfo = userService.getById(order.getUserId());
userInfo.setTgdzPower(1);
userService.updateById(userInfo);
}
buyOrderService.updateOrderStatus(order.getUserId(), order.getOrderSn(), "0"); buyOrderService.updateOrderStatus(order.getUserId(), order.getOrderSn(), "0");