Commit bbcb7249 authored by 李健华's avatar 李健华

批量通过用户ID和app名称获取关联的微信信息接口,kdsp发送微信消息使用

parent 7a0da98f
...@@ -13,6 +13,9 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -13,6 +13,9 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/** /**
* 微信 * 微信
...@@ -136,4 +139,27 @@ public class WxController { ...@@ -136,4 +139,27 @@ public class WxController {
log.info("取消微信关联 userId:{},reason:{},结果:{}", userId, reason, res); log.info("取消微信关联 userId:{},reason:{},结果:{}", userId, reason, res);
return JsonResult.buildSuccessResultGeneric(res); return JsonResult.buildSuccessResultGeneric(res);
} }
/**
*/
@PostMapping("/v1/getByOpenIdToUserIds")
public JsonResult getByOpenIdToUserIds(@RequestBody Map<String, Object> params, @RequestParam(required = false, defaultValue = "wuxi") String appName) {
log.info("根据userIds获取用户的openId {}, appName:{}", params, appName);
List<Integer> userIds = (List<Integer>) params.get("userIds");
if (userIds.isEmpty()) {
return JsonResult.buildErrorStateResult("用户Id不能为空", null);
}
if (userIds.size() > 500) {
userIds = userIds.subList(0,500);
}
List<Long> userIdList = userIds.stream().map(userId -> Long.parseLong(userId.toString())).collect(Collectors.toList());
List<WechatUserInfo> wechatUserInfoList = wechatService.queryByUserIdsAndAppName(userIdList, appName);
if (wechatUserInfoList.isEmpty()) {
return JsonResult.buildSuccessResult();
}
return JsonResult.buildSuccessResultGeneric(wechatUserInfoList);
}
} }
...@@ -104,4 +104,6 @@ public interface IWeChatUserRepository extends JpaRepository<WechatUserInfo, Lon ...@@ -104,4 +104,6 @@ public interface IWeChatUserRepository extends JpaRepository<WechatUserInfo, Lon
List<WechatUserInfo> findByUnionId(String unionId); List<WechatUserInfo> findByUnionId(String unionId);
List<WechatUserInfo> findByUnionIdIn(List<String> unionIds); List<WechatUserInfo> findByUnionIdIn(List<String> unionIds);
List<WechatUserInfo> findByUserIdInAndAppName(List<Long> userIds, String appName);
} }
...@@ -55,4 +55,6 @@ public interface IWechatService { ...@@ -55,4 +55,6 @@ public interface IWechatService {
List<WechatUserInfo> queryListByUnionId(String unionId); List<WechatUserInfo> queryListByUnionId(String unionId);
List<WechatUserInfo> queryListByUnionIds(List<String> unionIds); List<WechatUserInfo> queryListByUnionIds(List<String> unionIds);
List<WechatUserInfo> queryByUserIdsAndAppName(List<Long> userIds, String appName);
} }
...@@ -271,4 +271,9 @@ public class WechatServiceImpl implements IWechatService { ...@@ -271,4 +271,9 @@ public class WechatServiceImpl implements IWechatService {
public List<WechatUserInfo> queryListByUnionIds(List<String> unionIds) { public List<WechatUserInfo> queryListByUnionIds(List<String> unionIds) {
return weChatUserRepository.findByUnionIdIn(unionIds); return weChatUserRepository.findByUnionIdIn(unionIds);
} }
@Override
public List<WechatUserInfo> queryByUserIdsAndAppName(List<Long> userIds, String appName) {
return weChatUserRepository.findByUserIdInAndAppName(userIds, appName);
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment