lyhzzz hai 8 meses
pai
achega
50c1616d59

+ 1 - 0
src/main/java/com/fdkankan/agent/mapper/IAgentNewLogMapper.java

@@ -28,4 +28,5 @@ public interface IAgentNewLogMapper extends BaseMapper<AgentNewLog> {
 
     List<AgentNewLog> getLogDataM(@Param("agentIds") List<Integer> agentIds);
 
+    Page<LogListVo> pageUnList(Page<Object> objectPage, LogListParam param);
 }

+ 3 - 0
src/main/java/com/fdkankan/agent/request/LogListParam.java

@@ -3,11 +3,14 @@ package com.fdkankan.agent.request;
 import com.fdkankan.agent.entity.AgentNew;
 import lombok.Data;
 
+import java.util.List;
+
 @Data
 public class LogListParam extends TimeBase {
     private Integer type;      // 0 专业会员,1高级会员,2下载
     private Integer giveType;  //授权方式 0 经销商授权 ,1经销商续费 ,2 官网自购,3平台授权,4platform购买
     private Integer agentId;
+    private List<Integer> agentIds;
     private Integer subAgentId;
     private AgentNew agentNew;
 }

+ 17 - 0
src/main/java/com/fdkankan/agent/request/TimeBase.java

@@ -12,10 +12,14 @@ public class TimeBase {
     private Integer pageSize = 10;
 
     private List<String> timeList;
+    private List<String> timeListUser;
 
     private String startTime;
     private String endTime;
 
+    private String startTimeUser;
+    private String endTimeUser;
+
     public String getStartTime() {
         if(timeList != null && timeList.size() >1){
             return DateUtils.getStartTime(timeList.get(0));
@@ -29,4 +33,17 @@ public class TimeBase {
         }
         return DateUtils.getEndTime(endTime);
     }
+    public String getStartTimeUser() {
+        if(timeListUser != null && timeListUser.size() >1){
+            return DateUtils.getStartTime(timeListUser.get(0));
+        }
+        return DateUtils.getStartTime(startTimeUser);
+    }
+
+    public String getEndTimeUser() {
+        if(timeListUser != null && timeListUser.size() >1){
+            return DateUtils.getEndTime(timeListUser.get(1));
+        }
+        return DateUtils.getEndTime(endTimeUser);
+    }
 }

+ 3 - 38
src/main/java/com/fdkankan/agent/service/impl/AgentNewLogServiceImpl.java

@@ -141,45 +141,10 @@ public class AgentNewLogServiceImpl extends ServiceImpl<IAgentNewLogMapper, Agen
         if(param.getSubAgentId() != null){
             agentIds = Arrays.asList(param.getSubAgentId());
         }
+        param.setAgentIds(agentIds);
+        Page<LogListVo> pageVo = this.getBaseMapper().pageUnList(new Page<>(param.getPageNum(),param.getPageSize()),param);
 
-        LambdaQueryWrapper<AgentNewLog> wrapper = new LambdaQueryWrapper<>();
-        wrapper.in(AgentNewLog::getAgentId,agentIds);
-        if(param.getType()!=null){
-            wrapper.eq(AgentNewLog::getType,param.getType());
-        }
-        if(param.getGiveType() != null){
-            wrapper.eq(AgentNewLog::getGiveType,param.getGiveType());
-        }
-        if(StringUtils.isNotBlank(param.getStartTime())){
-            wrapper.between(AgentNewLog::getCreateTime,param.getStartTime(),param.getEndTime());
-        }
-        wrapper.orderByDesc(AgentNewLog::getCreateTime);
-        Page<AgentNewLog> page = this.page(new Page<>(param.getPageNum(), param.getPageSize()), wrapper);
-        List<Integer> voAgentIds = page.getRecords().stream().map(AgentNewLog::getAgentId).collect(Collectors.toList());
-        HashMap<Integer, AgentNew> mapByIds = agentNewService.getMapByIds(voAgentIds);
-        List<LogListVo> vos = new ArrayList<>();
-        for (AgentNewLog record : page.getRecords()) {
-            LogListVo vo = new LogListVo();
-            BeanUtils.copyProperties(record,vo);
-            vo.setTotalTime(vo.getCount() * vo.getTotalTime());
-            User user = userService.getById(record.getUserId());
-            if(user != null){
-                vo.setNickName(user.getNickName());
-                vo.setUserName(user.getUserName());
-                vo.setEmail(user.getEmail());
-                vo.setUserCreateTime(user.getCreateTime());
-            }
-            AgentNew agentNew = mapByIds.get(record.getAgentId());
-            if(agentNew != null){
-                vo.setAgentName(agentNew.getName());
-            }
-            vos.add(vo);
-        }
-
-        Page<LogListVo> voPage = new Page<>(param.getPageNum(), param.getPageSize());
-        voPage.setRecords(vos);
-        voPage.setTotal(page.getTotal());
-        return PageInfo.PageInfo(voPage);
+        return PageInfo.PageInfo(pageVo);
     }
 
 

+ 23 - 0
src/main/resources/mapper/agent/AgentNewLogMapper.xml

@@ -22,4 +22,27 @@
         and PERIOD_DIFF( date_format( now( ) , '%Y%m' ) , date_format( create_time, '%Y%m' ) ) =1
     </select>
 
+    <select id="pageUnList" resultType="com.fdkankan.agent.response.LogListVo">
+        select  l.*,u.nick_name,u.user_name,u.email,u.create_time as userCreateTime ,a.name as agentName from t_agent_new_log l
+            left join  t_agent a on l.agent_id = a.id
+            left join  t_user u on l.user_id = u.id
+        where l.agent_id in
+        <foreach collection="param.agentIds" item="agentId" open="(" separator="," close=")">
+            #{agentId}
+        </foreach>
+        <if test="param.type !=null">
+            and l.type = #{param.type}
+        </if>
+        <if test="param.giveType !=null">
+            and l.give_type = #{param.giveType}
+        </if>
+        <if test="param.startTime !=null and param.endTime !=null">
+            and l.create_time between #{param.startTime} and #{param.endTime}
+        </if>
+        <if test="param.startTimeUser !=null and param.endTimeUser !=null">
+            and u.create_time between #{param.startTimeUser} and #{param.endTimeUser}
+        </if>
+        order by id desc
+    </select>
+
 </mapper>