浏览代码

经销商分为三级

lyhzzz 8 月之前
父节点
当前提交
ea10996e27

+ 5 - 0
doc/update-1.3.0.sql

@@ -0,0 +1,5 @@
+ALTER TABLE `4dkankan_v4`.`t_agent_new`
+    ADD COLUMN `agent_level` int NULL DEFAULT 0 COMMENT '代理等级' AFTER `status`;
+
+UPDATE t_agent_new set `agent_level` = 1 WHERE parent_id is not null;
+

+ 1 - 0
src/main/java/com/fdkankan/agent/common/ResultCode.java

@@ -31,6 +31,7 @@ public enum ResultCode {
     TEMPLATE_TYPE_ERROR(4028, "模板格式错误"),
     UPLOAD_EXCEL_ERROR(4029, "批量导入失败"),
     AGENT_STOP_USE(4030, "当前账号已停用,请联系管理员"),
+    AGENT_NOT_SUB(4031, "当前经销商无法新增下级"),
 
     ;
 

+ 9 - 2
src/main/java/com/fdkankan/agent/controller/AgentNewController.java

@@ -10,6 +10,7 @@ import com.fdkankan.agent.exception.BusinessException;
 import com.fdkankan.agent.request.AgentAddIncrementParam;
 import com.fdkankan.agent.request.AgentParam;
 import com.fdkankan.agent.request.LogListParam;
+import com.fdkankan.agent.response.AgentNewVo;
 import com.fdkankan.agent.service.IAgentNewLogService;
 import com.fdkankan.agent.service.IAgentNewService;
 import com.fdkankan.agent.service.IUserService;
@@ -64,8 +65,14 @@ public class AgentNewController extends BaseController {
             throw new BusinessException(ResultCode.AGENT_NOT_EMPTY);
         }
         agentNewService.checkUserName(param.getUserName());
-        param.setParentId(getAgent().getId());
-        param.setSysUserId(getAgent().getId());
+        AgentNewVo agent = getAgent();
+        if(agent.getAgentLevel() >2){
+            throw new BusinessException(ResultCode.AGENT_NOT_SUB);
+        }
+
+        param.setParentId(agent.getId());
+        param.setSysUserId(agent.getId());
+        param.setAgentLevel(agent.getAgentLevel() + 1);
         agentNewService.save(param);
         return ResultData.ok();
     }

+ 3 - 0
src/main/java/com/fdkankan/agent/entity/AgentNew.java

@@ -113,6 +113,9 @@ public class AgentNew implements Serializable {
     @TableField("status")
     private Integer status;
 
+    @TableField("agent_level")
+    private Integer agentLevel;
+
     @TableField(exist = false)
     private String createName;
 }