fanzherong_v 1 ماه پیش
والد
کامیت
7e597f4bbb

+ 2 - 2
snowy-admin-web/src/views/biz/rechargeplanconfig/form.vue

@@ -55,14 +55,14 @@
 				<a-input-number v-model:value="formData.helpCount" style="width: 100%" :min="1" :max="99999999"
 								:precision="0" placeholder="请输入帮助激活糕点到账人数" allow-clear/>
 			</a-form-item>
-			<a-form-item label="店员返点比例:" name="rebateRatio">
+<!--			<a-form-item label="店员返点比例:" name="rebateRatio">
 				<a-input-number v-model:value="formData.rebateRatio" style="width: 100%" :min="1" :max="100"
 								:precision="2" placeholder="请输入店员返点比例(积分)" addon-after="%" allow-clear/>
 			</a-form-item>
 			<a-form-item label="用户返点比例:" name="rebateUserRatio">
 				<a-input-number v-model:value="formData.rebateUserRatio" style="width: 100%" :min="1" :max="100"
 								:precision="2" placeholder="请输入店员返点比例(积分)" addon-after="%" allow-clear/>
-			</a-form-item>
+			</a-form-item>-->
 		</a-form>
 		<template #footer>
 			<a-button style="margin-right: 8px" @click="onClose">关闭</a-button>

+ 2 - 2
snowy-admin-web/src/views/biz/rechargeplanconfig/index.vue

@@ -175,7 +175,7 @@
 			dataIndex: 'isAccount',
 			align: 'center',
 		},
-		{
+		/*{
 			title: '店员返点比例',
 			dataIndex: 'rebateRatio',
 			align: 'center',
@@ -184,7 +184,7 @@
 			title: '用户返点比例',
 			dataIndex: 'rebateUserRatio',
 			align: 'center',
-		},
+		},*/
 		{
 			title: '状态',
 			dataIndex: 'status',

+ 33 - 22
snowy-plugin/snowy-plugin-biz/src/main/java/vip/xiaonuo/biz/modular/rechargerecord/service/impl/BizRechargeRecordServiceImpl.java

@@ -56,6 +56,7 @@ import vip.xiaonuo.biz.modular.rechargerecord.service.BizRechargeRecordService;
 import vip.xiaonuo.common.util.CommonCryptogramUtil;
 import vip.xiaonuo.common.util.CommonWxUtil;
 import vip.xiaonuo.common.wx.WxPayConfig;
+import vip.xiaonuo.dev.api.DevConfigApi;
 
 import java.io.*;
 import java.math.BigDecimal;
@@ -91,6 +92,8 @@ public class BizRechargeRecordServiceImpl extends ServiceImpl<BizRechargeRecordM
     private BizRecommendRecordService bizRecommendRecordService;
     @Resource(name = "loginUserApi")
     private SaBaseLoginUserApi loginUserApi;
+    @Resource
+    private DevConfigApi devConfigApi;
 
 
 
@@ -185,28 +188,10 @@ public class BizRechargeRecordServiceImpl extends ServiceImpl<BizRechargeRecordM
             bizRechargeRecord.setCouponNum(bizRechargePlanConfig.getCouponNum());
 
             //计算返点金额
-            if (ObjectUtil.isNotEmpty(bizUser.getReferralUser())) {
-                //查询推荐人信息
-                List<cn.hutool.json.JSONObject> roleList = loginUserApi.getRoleListByUserId(bizUser.getReferralUser());
-                List<String> roleCodeList = roleList.stream().map(jsonObject -> jsonObject.getStr("code")).collect(Collectors.toList());
-                log.info("推荐人角色编码集合:"+roleCodeList);
-                if(ObjectUtil.isNotEmpty(roleCodeList)){
-                    if(StringUtils.equals(roleCodeList.get(0),"YK8PsRXAdf")){
-                        //店员角色
-                        //查询当日推荐人推荐人数
-                        BigDecimal rebate = bizRechargePlanConfig.getRebateRatio().divide(new BigDecimal("100"), 2, RoundingMode.HALF_UP);
-                        BigDecimal rebateAmount = bizRechargeRecordAddParam.getRechargeAmount().multiply(rebate);
-                        bizRechargeRecord.setRebateAmount(rebateAmount);
-                        bizRechargeRecord.setRebateRatio(bizRechargePlanConfig.getRebateRatio());
-                    }else if(StringUtils.equals(roleCodeList.get(0),"vVA3owyWwx")){
-                        //用户角色
-                        BigDecimal rebate = bizRechargePlanConfig.getRebateUserRatio().divide(new BigDecimal("100"), 2, RoundingMode.HALF_UP);
-                        BigDecimal rebateAmount = bizRechargeRecordAddParam.getRechargeAmount().multiply(rebate);
-                        bizRechargeRecord.setRebateAmount(rebateAmount);
-                        bizRechargeRecord.setRebateRatio(bizRechargePlanConfig.getRebateUserRatio());
-                    }
-                }
-            }
+            bizRechargeRecord = getBizRechargeRecord(bizUser,bizRechargeRecord,bizRechargeRecordAddParam);
+        }else{
+            //计算返点金额
+            bizRechargeRecord = getBizRechargeRecord(bizUser,bizRechargeRecord,bizRechargeRecordAddParam);
         }
         String openId = commonWxUtil.getOpenId(bizRechargeRecordAddParam.getCode(), wxPayConfig.getGetOpenIdUrl(), wxPayConfig.getAppId(), wxPayConfig.getAppSecret());
         if (ObjectUtil.isEmpty(openId)) {
@@ -270,6 +255,32 @@ public class BizRechargeRecordServiceImpl extends ServiceImpl<BizRechargeRecordM
         return resultMap;
     }
 
+    public BizRechargeRecord getBizRechargeRecord(BizUser bizUser,BizRechargeRecord bizRechargeRecord,BizRechargeRecordAddParam bizRechargeRecordAddParam){
+        if (ObjectUtil.isNotEmpty(bizUser.getReferralUser())) {
+            //查询推荐人信息
+            List<cn.hutool.json.JSONObject> roleList = loginUserApi.getRoleListByUserId(bizUser.getReferralUser());
+            List<String> roleCodeList = roleList.stream().map(jsonObject -> jsonObject.getStr("code")).collect(Collectors.toList());
+            log.info("推荐人角色编码集合:"+roleCodeList);
+            if(ObjectUtil.isNotEmpty(roleCodeList)){
+                if(StringUtils.equals(roleCodeList.get(0),"YK8PsRXAdf")){
+                    //店员角色
+                    //查询当日推荐人推荐人数
+                    BigDecimal rebate = new BigDecimal(devConfigApi.getValueByKey("SNOWY_REBATE_RATIO")).divide(new BigDecimal("100"), 2, RoundingMode.HALF_UP);
+                    BigDecimal rebateAmount = bizRechargeRecordAddParam.getRechargeAmount().multiply(rebate);
+                    bizRechargeRecord.setRebateAmount(rebateAmount);
+                    bizRechargeRecord.setRebateRatio(new BigDecimal(devConfigApi.getValueByKey("SNOWY_REBATE_RATIO")));
+                }else if(StringUtils.equals(roleCodeList.get(0),"vVA3owyWwx")){
+                    //用户角色
+                    BigDecimal rebate = new BigDecimal(devConfigApi.getValueByKey("SNOWY_USER_REBATE_RATIO")).divide(new BigDecimal("100"), 2, RoundingMode.HALF_UP);
+                    BigDecimal rebateAmount = bizRechargeRecordAddParam.getRechargeAmount().multiply(rebate);
+                    bizRechargeRecord.setRebateAmount(rebateAmount);
+                    bizRechargeRecord.setRebateRatio(new BigDecimal(devConfigApi.getValueByKey("SNOWY_USER_REBATE_RATIO")));
+                }
+            }
+        }
+        return bizRechargeRecord;
+    }
+
     @Override
     @Transactional(rollbackFor = Exception.class)
     public Map<String, Object> retryPayment(BizRechargePay bizRechargePay) {

+ 1 - 1
snowy-plugin/snowy-plugin-biz/src/main/java/vip/xiaonuo/biz/modular/wx/WxPayNotifyController.java

@@ -214,7 +214,7 @@ public class WxPayNotifyController {
                 }
             }
             // 生成推荐人返点
-            if (ObjectUtil.isNotEmpty(bizUser.getReferralUser()) && ObjectUtil.isNotEmpty(bizRechargeRecord.getRechargePlanId())) {
+            if (ObjectUtil.isNotEmpty(bizUser.getReferralUser())) {
                 log.info("=========== 生成推荐人返点记录 ========");
                 BizRebateRecord bizRebateRecord = new BizRebateRecord();
                 bizRebateRecord.setRechargeRecordId(bizRechargeRecord.getId());