liuchaojie 4 rokov pred
rodič
commit
3880780204

+ 14 - 12
src/main/java/com/xc/dao/AgentUserMapper.java

@@ -8,30 +8,32 @@ import org.apache.ibatis.annotations.Param;
 
 public interface AgentUserMapper {
   int deleteByPrimaryKey(Integer paramInteger);
-  
+
   int insert(AgentUser paramAgentUser);
-  
+
   int insertSelective(AgentUser paramAgentUser);
-  
+
   AgentUser selectByPrimaryKey(Integer paramInteger);
-  
+
   int updateByPrimaryKeySelective(AgentUser paramAgentUser);
-  
+
   int updateByPrimaryKey(AgentUser paramAgentUser);
 
   AgentUser findByCode(String paramString);
-  
+
   AgentUser findByPhone(String paramString);
-  
+
   AgentUser findByName(String paramString);
-  
+
   AgentUser login(@Param("agentPhone") String paramString1, @Param("agentPwd") String paramString2);
-  
+
   List getSecondAgent(Integer paramInteger);
-  
+
   List listByAdmin(@Param("id")Integer id,@Param("realName") String paramString1, @Param("phone") String paramString2);
-  
+
   int CountAgentNum();
 
     List<AgentUser> selectAgentUserList();
-}
+
+  List<AgentUser> findChildren(@Param("id") Integer id);
+}

+ 15 - 14
src/main/java/com/xc/service/impl/UserServiceImpl.java

@@ -1197,9 +1197,9 @@ public class UserServiceImpl implements IUserService {
 
     @Override
     public ServerResponse getAgentList(String realName, String phone, Integer agentId, Integer accountType, int pageNum, int pageSize, HttpServletRequest request) {
-        SiteSetting siteSetting = this.iSiteSettingService.getSiteSetting();
-        SiteIndexSetting siteIndexSetting = this.iSiteIndexSettingService.getSiteIndexSetting();
-        SiteFuturesSetting siteFuturesSetting = this.iSiteFuturesSettingService.getSetting();
+//        SiteSetting siteSetting = this.iSiteSettingService.getSiteSetting();
+//        SiteIndexSetting siteIndexSetting = this.iSiteIndexSettingService.getSiteIndexSetting();
+//        SiteFuturesSetting siteFuturesSetting = this.iSiteFuturesSettingService.getSetting();
         AgentUser currentAgent = this.iAgentUserService.getCurrentAgent(request);
         AgentUser agentUser = null;
         if (agentId != null) {
@@ -1215,17 +1215,18 @@ public class UserServiceImpl implements IUserService {
             searchId = agentId;
         }
         PageHelper.startPage(pageNum, pageSize);
-        List<AgentUser> agentUserList = new ArrayList<>();
-//        agentUserList.add(currentAgent);
-        Set<Integer> pidSet = new HashSet<>();
-        pidSet.add(currentAgent.getId());
-        List<AgentUser> agentUserListTemp = this.agentUserMapper.selectAgentUserList();
-        for(AgentUser a : agentUserListTemp){
-            if(pidSet.contains(a.getParentId())){
-                agentUserList.add(a);
-                pidSet.add(a.getId());
-            }
-        }
+        List<AgentUser> agentUserList = this.agentUserMapper.findChildren(currentAgent.getId());
+//        List<AgentUser> agentUserList = new ArrayList<>();
+////        agentUserList.add(currentAgent);
+//        Set<Integer> pidSet = new HashSet<>();
+//        pidSet.add(currentAgent.getId());
+//        List<AgentUser> agentUserListTemp = this.agentUserMapper.selectAgentUserList();
+//        for(AgentUser a : agentUserListTemp){
+//            if(pidSet.contains(a.getParentId())){
+//                agentUserList.add(a);
+//                pidSet.add(a.getId());
+//            }
+//        }
         PageInfo pageInfo = new PageInfo(agentUserList);
         pageInfo.setList(agentUserList);
         return ServerResponse.createBySuccess(pageInfo);

+ 21 - 9
src/main/java/mappers/AgentUserMapper.xml

@@ -16,11 +16,11 @@
     </constructor>
   </resultMap>
   <sql id="Base_Column_List" >
-    id, agent_name, agent_pwd, agent_real_name, agent_phone, agent_code, add_time, is_lock, 
+    id, agent_name, agent_pwd, agent_real_name, agent_phone, agent_code, add_time, is_lock,
     parent_id, parent_name
   </sql>
   <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
-    select 
+    select
     <include refid="Base_Column_List" />
     from agent_user
     where id = #{id,jdbcType=INTEGER}
@@ -30,13 +30,13 @@
     where id = #{id,jdbcType=INTEGER}
   </delete>
   <insert id="insert" parameterType="com.xc.pojo.AgentUser" >
-    insert into agent_user (id, agent_name, agent_pwd, 
-      agent_real_name, agent_phone, agent_code, 
-      add_time, is_lock, parent_id, 
+    insert into agent_user (id, agent_name, agent_pwd,
+      agent_real_name, agent_phone, agent_code,
+      add_time, is_lock, parent_id,
       parent_name)
-    values (#{id,jdbcType=INTEGER}, #{agentName,jdbcType=VARCHAR}, #{agentPwd,jdbcType=VARCHAR}, 
-      #{agentRealName,jdbcType=VARCHAR}, #{agentPhone,jdbcType=VARCHAR}, #{agentCode,jdbcType=VARCHAR}, 
-      #{addTime,jdbcType=TIMESTAMP}, #{isLock,jdbcType=INTEGER}, #{parentId,jdbcType=INTEGER}, 
+    values (#{id,jdbcType=INTEGER}, #{agentName,jdbcType=VARCHAR}, #{agentPwd,jdbcType=VARCHAR},
+      #{agentRealName,jdbcType=VARCHAR}, #{agentPhone,jdbcType=VARCHAR}, #{agentCode,jdbcType=VARCHAR},
+      #{addTime,jdbcType=TIMESTAMP}, #{isLock,jdbcType=INTEGER}, #{parentId,jdbcType=INTEGER},
       #{parentName,jdbcType=VARCHAR})
 
   </insert>
@@ -223,4 +223,16 @@
     order by
         t2.parent_id asc
   </select>
-</mapper>
+
+  <select id="findChildren" parameterType="java.lang.Integer" resultMap="BaseResultMap">
+    select <include refid="Base_Column_List"/>
+    from (
+    select <include refid="Base_Column_List"/>,
+    if(find_in_set(parent_id, @pids) > 0, @pids := concat(@pids, ',', id), 0) as ischild
+    from (
+    select <include refid="Base_Column_List"/> from agent_user t  order by parent_id, id
+    ) t1,
+    (select @pids := #{id}) t2
+    ) t3 where ischild != 0
+  </select>
+</mapper>