From 9af4540d820de8a846a231515443107bc7e2e61e Mon Sep 17 00:00:00 2001
From: peternameyakj <908253177@qq.com>
Date: Mon, 15 Jul 2024 18:39:39 +0800
Subject: [PATCH] 最大代理等级的配置

---
 src/main/java/com/nq/service/impl/AgentUserServiceImpl.java |   15 ++++++++++-----
 1 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/nq/service/impl/AgentUserServiceImpl.java b/src/main/java/com/nq/service/impl/AgentUserServiceImpl.java
index 0c1eab6..b7a481a 100644
--- a/src/main/java/com/nq/service/impl/AgentUserServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/AgentUserServiceImpl.java
@@ -198,12 +198,16 @@
         AgentUser parentAgent = this.agentUserMapper.selectByPrimaryKey(parentId);
         if (parentId != null && parentId>0) {
             if (parentAgent != null) {
-                if(parentAgent.getAgentLevel()>=6){
-                    return ServerResponse.createByErrorMsg("六级代理不能添加下级");
-                }
                 agentUser.setParentId(parentAgent.getId());
                 agentUser.setParentName(parentAgent.getAgentName());
                 agentUser.setAgentLevel(parentAgent.getAgentLevel()+1);
+                //判断代理等级
+                StockConfig stockConfig = iStockConfigServices.queryByKey(EConfigKey.AGENT_MAX_GRADE.getCode());
+                Integer configLevel = Integer.parseInt(stockConfig.getCValue());
+                if(agentUser.getAgentLevel() > configLevel){
+                    return ServerResponse.createByErrorMsg("代理最大等级为"+stockConfig.getCValue());
+                }
+
             } else {
                 //总代理默认0级
                 agentUser.setAgentLevel(Integer.valueOf(0));
@@ -331,12 +335,13 @@
             if (parentAgent != null) {
                 dbAgent.setParentId(parentAgent.getId());
                 dbAgent.setParentName(parentAgent.getAgentName());
+                dbAgent.setAgentLevel(parentAgent.getAgentLevel()+1);
                 //判断代理等级
                 StockConfig stockConfig = iStockConfigServices.queryByKey(EConfigKey.AGENT_MAX_GRADE.getCode());
-                if(parentAgent.getAgentLevel()+1 > Integer.parseInt(stockConfig.getCValue())){
+                if(dbAgent.getAgentLevel() > Integer.parseInt(stockConfig.getCValue())){
                     return ServerResponse.createByErrorMsg("代理最大等级为"+stockConfig.getCValue());
                 }
-                dbAgent.setAgentLevel(parentAgent.getAgentLevel()+1);
+
             } else {
                 //总代理默认0级
                 dbAgent.setAgentLevel(Integer.valueOf(0));

--
Gitblit v1.9.3