瀏覽代碼

Merge branch 'dev-wyp-20250310-getUser' of Server/growth-manager into master

wangyunpeng 3 月之前
父節點
當前提交
94c58f0bb5

+ 8 - 0
api-module/src/main/java/com/tzld/piaoquan/api/controller/WeComUserController.java

@@ -2,6 +2,7 @@ package com.tzld.piaoquan.api.controller;
 
 
 import com.tzld.piaoquan.api.model.vo.WeComUserNameAvatarParam;
 import com.tzld.piaoquan.api.model.vo.WeComUserNameAvatarParam;
 import com.tzld.piaoquan.growth.common.common.base.CommonResponse;
 import com.tzld.piaoquan.growth.common.common.base.CommonResponse;
+import com.tzld.piaoquan.growth.common.model.bo.GroupSendWeComUserParam;
 import com.tzld.piaoquan.growth.common.model.vo.WeComUserVo;
 import com.tzld.piaoquan.growth.common.model.vo.WeComUserVo;
 import com.tzld.piaoquan.growth.common.service.WeComUserService;
 import com.tzld.piaoquan.growth.common.service.WeComUserService;
 import lombok.extern.slf4j.Slf4j;
 import lombok.extern.slf4j.Slf4j;
@@ -28,4 +29,11 @@ public class WeComUserController {
         log.info("param={}", param);
         log.info("param={}", param);
         return CommonResponse.success(service.getWeComUserByNameAvatar(param.getName(), param.getAvatar()));
         return CommonResponse.success(service.getWeComUserByNameAvatar(param.getName(), param.getAvatar()));
     }
     }
+
+
+    @PostMapping("/getGroupSendUsers")
+    public CommonResponse<List<WeComUserVo>> getGroupSendUsers(@RequestBody GroupSendWeComUserParam param) {
+        log.info("param={}", param);
+        return CommonResponse.success(service.getGroupSendWeComUser(param));
+    }
 }
 }

+ 16 - 0
common-module/src/main/java/com/tzld/piaoquan/growth/common/dao/mapper/ext/WeComUserMapperExt.java

@@ -0,0 +1,16 @@
+package com.tzld.piaoquan.growth.common.dao.mapper.ext;
+
+import com.tzld.piaoquan.growth.common.model.po.WeComUser;
+import com.tzld.piaoquan.growth.common.model.po.WeComUserExample;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Repository;
+
+import java.util.Date;
+import java.util.List;
+
+@Mapper
+@Repository
+public interface WeComUserMapperExt {
+    List<WeComUser> getGroupSendUserByDate(@Param("start") Date start);
+}

+ 8 - 0
common-module/src/main/java/com/tzld/piaoquan/growth/common/model/bo/GroupSendWeComUserParam.java

@@ -0,0 +1,8 @@
+package com.tzld.piaoquan.growth.common.model.bo;
+
+import lombok.Data;
+
+@Data
+public class GroupSendWeComUserParam {
+    String dateStart;
+}

+ 17 - 0
common-module/src/main/java/com/tzld/piaoquan/growth/common/service/Impl/WeComUserServiceImpl.java

@@ -6,10 +6,13 @@ import com.tzld.piaoquan.growth.common.component.HttpPoolClient;
 import com.tzld.piaoquan.growth.common.dao.mapper.StaffMapper;
 import com.tzld.piaoquan.growth.common.dao.mapper.StaffMapper;
 import com.tzld.piaoquan.growth.common.dao.mapper.StaffWithUserMapper;
 import com.tzld.piaoquan.growth.common.dao.mapper.StaffWithUserMapper;
 import com.tzld.piaoquan.growth.common.dao.mapper.WeComUserMapper;
 import com.tzld.piaoquan.growth.common.dao.mapper.WeComUserMapper;
+import com.tzld.piaoquan.growth.common.dao.mapper.ext.WeComUserMapperExt;
+import com.tzld.piaoquan.growth.common.model.bo.GroupSendWeComUserParam;
 import com.tzld.piaoquan.growth.common.model.po.*;
 import com.tzld.piaoquan.growth.common.model.po.*;
 import com.tzld.piaoquan.growth.common.model.vo.WeComUserVo;
 import com.tzld.piaoquan.growth.common.model.vo.WeComUserVo;
 import com.tzld.piaoquan.growth.common.service.WeComAccessTokenService;
 import com.tzld.piaoquan.growth.common.service.WeComAccessTokenService;
 import com.tzld.piaoquan.growth.common.service.WeComUserService;
 import com.tzld.piaoquan.growth.common.service.WeComUserService;
+import com.tzld.piaoquan.growth.common.utils.DateUtil;
 import com.tzld.piaoquan.growth.common.utils.LarkRobotUtil;
 import com.tzld.piaoquan.growth.common.utils.LarkRobotUtil;
 import lombok.extern.slf4j.Slf4j;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -22,6 +25,7 @@ import java.io.IOException;
 import java.util.ArrayList;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.Date;
 import java.util.List;
 import java.util.List;
+import java.util.Objects;
 
 
 import static com.tzld.piaoquan.growth.common.common.constant.WeComConstant.GET_WE_COM_EXTERNAL_CONTACT_GET;
 import static com.tzld.piaoquan.growth.common.common.constant.WeComConstant.GET_WE_COM_EXTERNAL_CONTACT_GET;
 
 
@@ -37,6 +41,9 @@ public class WeComUserServiceImpl implements WeComUserService {
     @Autowired
     @Autowired
     private WeComUserMapper weComUserMapper;
     private WeComUserMapper weComUserMapper;
 
 
+    @Autowired
+    private WeComUserMapperExt weComUserMapperExt;
+
     @Autowired
     @Autowired
     private StaffWithUserMapper staffWithUserMapper;
     private StaffWithUserMapper staffWithUserMapper;
 
 
@@ -240,4 +247,14 @@ public class WeComUserServiceImpl implements WeComUserService {
         }
         }
         return voList;
         return voList;
     }
     }
+
+    @Override
+    public List<WeComUserVo> getGroupSendWeComUser(GroupSendWeComUserParam param) {
+        Date start = DateUtil.getDaysAgoDate(1);
+        if (Objects.nonNull(param) && StringUtils.isNotEmpty(param.getDateStart())) {
+            start = DateUtil.getDate(param.getDateStart());
+        }
+        List<WeComUser> list = weComUserMapperExt.getGroupSendUserByDate(start);
+        return buildWeComUserVo(list);
+    }
 }
 }

+ 3 - 0
common-module/src/main/java/com/tzld/piaoquan/growth/common/service/WeComUserService.java

@@ -1,5 +1,6 @@
 package com.tzld.piaoquan.growth.common.service;
 package com.tzld.piaoquan.growth.common.service;
 
 
+import com.tzld.piaoquan.growth.common.model.bo.GroupSendWeComUserParam;
 import com.tzld.piaoquan.growth.common.model.po.Staff;
 import com.tzld.piaoquan.growth.common.model.po.Staff;
 import com.tzld.piaoquan.growth.common.model.po.WeComUser;
 import com.tzld.piaoquan.growth.common.model.po.WeComUser;
 import com.tzld.piaoquan.growth.common.model.vo.WeComUserVo;
 import com.tzld.piaoquan.growth.common.model.vo.WeComUserVo;
@@ -19,4 +20,6 @@ public interface WeComUserService {
     void delStaffWithUser(Long userId, Long staffId, Long deleteTime);
     void delStaffWithUser(Long userId, Long staffId, Long deleteTime);
 
 
     List<WeComUserVo> getWeComUserByNameAvatar(String name, String avatar);
     List<WeComUserVo> getWeComUserByNameAvatar(String name, String avatar);
+
+    List<WeComUserVo> getGroupSendWeComUser(GroupSendWeComUserParam param);
 }
 }

+ 30 - 0
common-module/src/main/resources/mapper/ext/WeComUserMapperExt.xml

@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.tzld.piaoquan.growth.common.dao.mapper.ext.WeComUserMapperExt">
+    <resultMap id="BaseResultMap" type="com.tzld.piaoquan.growth.common.model.po.WeComUser">
+        <id column="id" jdbcType="BIGINT" property="id" />
+        <result column="corp_id" jdbcType="BIGINT" property="corpId" />
+        <result column="external_user_id" jdbcType="VARCHAR" property="externalUserId" />
+        <result column="union_id" jdbcType="VARCHAR" property="unionId" />
+        <result column="external_user_id_3rd_party" jdbcType="VARCHAR" property="externalUserId3rdParty" />
+        <result column="type" jdbcType="INTEGER" property="type" />
+        <result column="name" jdbcType="VARCHAR" property="name" />
+        <result column="avatar" jdbcType="VARCHAR" property="avatar" />
+        <result column="gender" jdbcType="INTEGER" property="gender" />
+        <result column="is_delete" jdbcType="INTEGER" property="isDelete" />
+        <result column="group_msg_disabled" jdbcType="TINYINT" property="groupMsgDisabled" />
+        <result column="created_at" jdbcType="BIGINT" property="createdAt" />
+        <result column="updated_at" jdbcType="BIGINT" property="updatedAt" />
+        <result column="deleted_at" jdbcType="BIGINT" property="deletedAt" />
+        <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+        <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
+    </resultMap>
+
+    <select id="getGroupSendUserByDate" resultMap="BaseResultMap">
+        select wcu.*
+        from we_com_user wcu
+        join we_com_send_message wcsm on wcsm.user_id = wcu.id
+        where wcu.group_msg_disabled > 0
+        and wcsm.create_time > #{start}
+    </select>
+</mapper>