kaick 1 éve
szülő
commit
95606ea557

+ 2 - 0
src/main/java/com/caimei365/tools/mapper/BaseMapper.java

@@ -116,6 +116,8 @@ public interface BaseMapper {
 
     List<Map<String,Object>> getBehaviorRecordMinute(@Param("accessTime") String accessTime);
 
+    List<Map<String,Object>> getBehaviorRecordClubMinute(@Param("accessTime") String accessTime);
+
     String getBehaviorRecordMinutePageLabel(@Param("spId") Integer spId,@Param("clubId") Integer clubId,@Param("accessTime")String accessTime);
     String getBehaviorRecordYesterdayPageLabel(@Param("spId") Integer spId,@Param("clubId") Integer clubId,@Param("accessTime")String accessTime);
 

+ 2 - 2
src/main/java/com/caimei365/tools/service/impl/CmBehaviorRecordServiceImpl.java

@@ -42,6 +42,8 @@ public class CmBehaviorRecordServiceImpl implements CmBehaviorRecordService {
         if ("/user/record/Statistics".equals(ipSavePo.getRequestUrl().trim()) && !ipSavePo.getIp().equals("106.55.202.118")) {
             log.info("用户行为记录=================》" + ipSavePo.getIp());
             CmBehaviorRecordPo cmBehaviorRecordPo = new CmBehaviorRecordPo();
+            // 赋默认值
+            cmBehaviorRecordPo.setPageType(0);
             String region = "";
             String[] splitArray = ipSavePo.getIp().split(",");
             for (String split : splitArray) {
@@ -93,8 +95,6 @@ public class CmBehaviorRecordServiceImpl implements CmBehaviorRecordService {
                     // 页面类型
                     if (str.startsWith("pageType") && str.contains("=")) {
                         String[] split1 = str.split("=");
-                        // 赋默认值
-                        cmBehaviorRecordPo.setPageType(0);
                         if (split1.length > 1) {
                             String value = split1[1];
                             String trim = value.trim();

+ 40 - 36
src/main/java/com/caimei365/tools/task/StatisticsTask.java

@@ -129,7 +129,7 @@ public class StatisticsTask {
                 messageSender.messageSend(insideMessageMessageModel);
                 //微信模板消息 【协销前一天机构访问记录】
                 ArrayList<String> keyWords = new ArrayList<>();
-                keyWords.add(name+"...等"+Integer.valueOf(String.valueOf(count))+"家机构客户");
+                keyWords.add(name+"...等"+count+"家机构客户");
                 keyWords.add(pageLabel);
                 keyWords.add(dateStr);
                 MessageModel<WechatTemplateMessage> wechatTemplateMessageMessageModel = new MessageModel<WechatTemplateMessage>()
@@ -180,47 +180,52 @@ public class StatisticsTask {
             String dateNewStr = new SimpleDateFormat("yyyy-MM-dd").format(calendar.getTime());
             calendar.add(Calendar.MINUTE, -5);
             String dateStr = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar.getTime());
+            List<Map<String, Object>> behaviorRecordClubMinute = baseMapper.getBehaviorRecordClubMinute(dateStr);
+            for (Map<String, Object> map : behaviorRecordClubMinute) {
+                log.info(behaviorRecordClubMinute.toString());
+                Integer spId = Integer.valueOf(map.get("spId").toString());
+                String name = (String) map.get("name");
+                // String openId = baseMapper.getWechatOpenId((String) map.get("unionId"));
+                Integer clubID = Integer.valueOf(map.get("clubID").toString());
+                //站内信
+                MessageModel<InsideMessage> insideMessageMessageModel = new MessageModel<>();
+                insideMessageMessageModel.code(MessageType.WEB_INSIDE_MESSAGE)
+                        .mqInfo(new MqInfo().topic("MessageLine").delay(3).async(1))
+                        .info(new InsideMessage()
+                                .userType(3)
+                                .messageType(3)
+                                .shopTieredType(9)
+                                .name(name)
+                                .clubId(clubID)
+                                .thisId(spId)
+                        );
+                messageSender.messageSend(insideMessageMessageModel);
+            }
             List<Map<String, Object>> behaviorRecordYesterday = baseMapper.getBehaviorRecordMinute(dateStr);
             for (Map<String, Object> map : behaviorRecordYesterday) {
-                Integer pageType = (Integer) map.get("pageType");
-                Integer spId = (Integer) map.get("spId");
-                String name = (String) map.get("name");
-                Integer count = (Integer)map.get("count") ;
+                log.info(behaviorRecordYesterday.toString());
+                Integer spId = Integer.valueOf(map.get("spId").toString());
+                String name =  map.get("name").toString();
+                Integer count = Integer.valueOf(map.get("count").toString());
                 String openId = baseMapper.getWechatOpenId((String) map.get("unionId"));
-                if(22==pageType){
-                    Integer clubID = (Integer)map.get("clubID") ;
-                    //站内信
-                    MessageModel<InsideMessage> insideMessageMessageModel = new MessageModel<>();
-                    insideMessageMessageModel.code(MessageType.WEB_INSIDE_MESSAGE)
-                            .mqInfo(new MqInfo().topic("MessageLine").delay(3).async(1))
-                            .info(new InsideMessage()
-                                    .userType(3)
-                                    .messageType(3)
-                                    .shopTieredType(9)
-                                    .name(name)
-                                    .clubId(clubID)
-                                    .thisId(spId)
-                            );
-                    messageSender.messageSend(insideMessageMessageModel);
-                }else {
-                    String pageLabel = baseMapper.getBehaviorRecordMinutePageLabel(spId, null, dateStr);
-                    //站内信
-                    MessageModel<InsideMessage> insideMessageMessageModel = new MessageModel<>();
-                    insideMessageMessageModel.code(MessageType.WEB_INSIDE_MESSAGE)
-                            .mqInfo(new MqInfo().topic("MessageLine").delay(3).async(1))
-                            .info(new InsideMessage()
-                                    .userType(3)
-                                    .messageType(3)
-                                    .shopTieredType(10)
-                                    .name(name)
-                                    .content(pageLabel)
-                                    .sum(count)
-                                    .thisId(spId)
+                String pageLabel = baseMapper.getBehaviorRecordMinutePageLabel(spId, null, dateStr);
+                //站内信
+                MessageModel<InsideMessage> insideMessageMessageModel = new MessageModel<>();
+                insideMessageMessageModel.code(MessageType.WEB_INSIDE_MESSAGE)
+                        .mqInfo(new MqInfo().topic("MessageLine").delay(3).async(1))
+                        .info(new InsideMessage()
+                                .userType(3)
+                                .messageType(3)
+                                .shopTieredType(10)
+                                .name(name)
+                                .content(pageLabel)
+                                .sum(count)
+                                .thisId(spId)
                             );
                     messageSender.messageSend(insideMessageMessageModel);
                     //微信模板消息
                     ArrayList<String> keyWords = new ArrayList<>();
-                    keyWords.add(name+"...等"+Integer.valueOf(String.valueOf(count))+"家机构客户访问了您的内容库资料分享");
+                    keyWords.add(name+"...等"+count+"家机构客户访问了您的内容库资料分享");
                     keyWords.add(pageLabel);
                     keyWords.add(dateNewStr);
                     MessageModel<WechatTemplateMessage> wechatTemplateMessageMessageModel = new MessageModel<WechatTemplateMessage>()
@@ -235,7 +240,6 @@ public class StatisticsTask {
                                     .remark("为了更好给您服务,请及时联系采美客服!")
                                     .pagePath("pages/seller/notice/service/Institutional_visits?type=1&spId="+spId+"&accDateTime="+dateStr));
                     messageSender.messageSend(wechatTemplateMessageMessageModel);
-                }
             }
             log.info(">>>>>>>>>>>【定时任务】统计内容库访问活跃行为,统计成功");
         } catch (Exception e) {

+ 17 - 5
src/main/resources/mapper/BaseMapper.xml

@@ -218,20 +218,32 @@
     </select>
     <select id="getBehaviorRecordMinute" resultType="java.util.HashMap">
         SELECT sp.serviceProviderID as spId,
-               b.pageType,
                b.accessTime,
-               ifnull(c.name,'游客'),
+               ifnull(c.name,'游客')as name,
                c.clubID,
                sp.unionId,
-               count(DISTINCT c.clubId) as count
+               count(DISTINCT recordID) as count
         FROM cm_behavior_record b
         LEFT JOIN club c ON b.userID = c.userID
         LEFT JOIN serviceprovider sp ON b.headUserId = sp.userID
         WHERE  sp.status=90 and sp.serviceProviderID!=1342
-        and b.pageType in (69,70,71,22)
+        and b.pageType in (69,70,71)
         and b.accessTime >= #{accessTime}
         GROUP BY sp.serviceProviderID
-        ORDER BY count(c.clubId) DESC
+        ORDER BY count(recordID) DESC
+    </select>
+    <select id="getBehaviorRecordClubMinute" resultType="java.util.HashMap">
+        SELECT sp.serviceProviderID as spId,
+               b.accessTime,
+               c.name,
+               c.clubID,
+               sp.unionId
+        FROM cm_behavior_record b
+        LEFT JOIN club c ON b.userID = c.userID
+        LEFT JOIN serviceprovider sp ON b.headUserId = sp.userID
+        WHERE  sp.status=90 and sp.serviceProviderID!=1342
+        and b.pageType =22
+        and b.accessTime >= #{accessTime}
     </select>
     <select id="getBehaviorRecordMinutePageLabel" resultType="string">
         SELECT GROUP_CONCAT(a.pageLabel)