|
@@ -3,6 +3,7 @@ package com.fs.qw.service.impl;
|
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSONException;
|
|
import com.alibaba.fastjson.JSONException;
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.fs.ad.enums.AdUploadType;
|
|
import com.fs.ad.enums.AdUploadType;
|
|
@@ -11,6 +12,8 @@ import com.fs.common.core.domain.R;
|
|
import com.fs.common.core.redis.RedisCache;
|
|
import com.fs.common.core.redis.RedisCache;
|
|
import com.fs.common.utils.PubFun;
|
|
import com.fs.common.utils.PubFun;
|
|
import com.fs.common.utils.StringUtils;
|
|
import com.fs.common.utils.StringUtils;
|
|
|
|
+import com.fs.company.cache.ICompanyCacheService;
|
|
|
|
+import com.fs.company.cache.ICompanyUserCacheService;
|
|
import com.fs.company.service.ICompanyConfigService;
|
|
import com.fs.company.service.ICompanyConfigService;
|
|
import com.fs.course.config.CourseConfig;
|
|
import com.fs.course.config.CourseConfig;
|
|
import com.fs.course.domain.FsCourseSop;
|
|
import com.fs.course.domain.FsCourseSop;
|
|
@@ -25,6 +28,7 @@ import com.fs.course.service.IFsCourseLinkService;
|
|
import com.fs.crm.domain.CrmCustomer;
|
|
import com.fs.crm.domain.CrmCustomer;
|
|
import com.fs.crm.mapper.CrmCustomerMapper;
|
|
import com.fs.crm.mapper.CrmCustomerMapper;
|
|
import com.fs.qw.domain.*;
|
|
import com.fs.qw.domain.*;
|
|
|
|
+import com.fs.qw.dto.GetQwRepeatDataDTO;
|
|
import com.fs.qw.mapper.*;
|
|
import com.fs.qw.mapper.*;
|
|
import com.fs.qw.param.*;
|
|
import com.fs.qw.param.*;
|
|
import com.fs.qw.param.newparam.ExternalContactPageListParam;
|
|
import com.fs.qw.param.newparam.ExternalContactPageListParam;
|
|
@@ -57,6 +61,7 @@ import com.fs.system.domain.SysConfig;
|
|
import com.fs.system.service.ISysConfigService;
|
|
import com.fs.system.service.ISysConfigService;
|
|
import com.fs.voice.utils.StringUtil;
|
|
import com.fs.voice.utils.StringUtil;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
+import org.apache.http.client.utils.DateUtils;
|
|
import org.apache.rocketmq.spring.core.RocketMQTemplate;
|
|
import org.apache.rocketmq.spring.core.RocketMQTemplate;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
import org.slf4j.LoggerFactory;
|
|
@@ -4499,6 +4504,63 @@ public class QwExternalContactServiceImpl extends ServiceImpl<QwExternalContactM
|
|
return qwExternalContactMapper.selectQwExternalContactListVOByUserIds(ids);
|
|
return qwExternalContactMapper.selectQwExternalContactListVOByUserIds(ids);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+
|
|
|
|
+ @Autowired
|
|
|
|
+ private ICompanyCacheService companyCacheService;
|
|
|
|
+ @Autowired
|
|
|
|
+ private ICompanyUserCacheService companyUserCacheService;
|
|
|
|
+ @Override
|
|
|
|
+ public List<GetQwRepeatDataVO> getQwRepeatData(GetQwRepeatDataDTO dto) {
|
|
|
|
+
|
|
|
|
+ List<QwExternalContact> externalContactList = qwExternalContactMapper
|
|
|
|
+ .selectList(buildQuery(dto));
|
|
|
|
+ List<GetQwRepeatDataVO> result = new ArrayList<>();
|
|
|
|
+ for (QwExternalContact qwExternalContact : externalContactList) {
|
|
|
|
+ GetQwRepeatDataVO getQwRepeatDataVO = new GetQwRepeatDataVO();
|
|
|
|
+ getQwRepeatDataVO.setCompanyId(qwExternalContact.getCompanyId());
|
|
|
|
+ if(qwExternalContact.getCompanyId() != null) {
|
|
|
|
+ String companyName = companyCacheService.selectCompanyNameById(qwExternalContact.getCompanyId());
|
|
|
|
+ getQwRepeatDataVO.setCompanyName(companyName);
|
|
|
|
+ }
|
|
|
|
+ getQwRepeatDataVO.setCompanyUserId(qwExternalContact.getCompanyUserId());
|
|
|
|
+ if(qwExternalContact.getCompanyUserId() != null) {
|
|
|
|
+ String companyUserName = companyUserCacheService.selectCompanyUserNameUserById(qwExternalContact.getCompanyUserId());
|
|
|
|
+ getQwRepeatDataVO.setCompanyUserName(companyUserName);
|
|
|
|
+ }
|
|
|
|
+ getQwRepeatDataVO.setSaleerWx(qwExternalContact.getQwUserId());
|
|
|
|
+ Date createTime = qwExternalContact.getCreateTime();
|
|
|
|
+ if(createTime != null) {
|
|
|
|
+ getQwRepeatDataVO.setCreateDate(DateUtils.formatDate(createTime, "yyyy-MM-dd HH:mm:ss"));
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ result.add(getQwRepeatDataVO);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return result;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public LambdaQueryWrapper<QwExternalContact> buildQuery(GetQwRepeatDataDTO dto){
|
|
|
|
+ String corpId = dto.getCorpId();
|
|
|
|
+ String externalUserID = dto.getExternalUserID();
|
|
|
|
+ LambdaQueryWrapper<QwExternalContact> eq = new LambdaQueryWrapper<QwExternalContact>()
|
|
|
|
+ .select(QwExternalContact::getFsUserId,
|
|
|
|
+ QwExternalContact::getCompanyId,
|
|
|
|
+ QwExternalContact::getCompanyUserId,
|
|
|
|
+ QwExternalContact::getName,
|
|
|
|
+ QwExternalContact::getQwUserId,
|
|
|
|
+ QwExternalContact::getCreateTime
|
|
|
|
+ )
|
|
|
|
+ .eq(QwExternalContact::getExternalUserId, externalUserID)
|
|
|
|
+ .eq(QwExternalContact::getCorpId, corpId);
|
|
|
|
+
|
|
|
|
+ return eq;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public Integer selectQwIsRepeat(Long id) {
|
|
|
|
+ return qwExternalContactMapper.selectQwIsRepeat(id);
|
|
|
|
+ }
|
|
|
|
+
|
|
//发送好友欢迎语
|
|
//发送好友欢迎语
|
|
void SyncAddSendWelcome(QwExternalContact qwExternalContact, QwUser qwUser, String corpId) {
|
|
void SyncAddSendWelcome(QwExternalContact qwExternalContact, QwUser qwUser, String corpId) {
|
|
QwFriendWelcomeVO qwFriendWelcomeVO = qwFriendWelcomeMapper.selectQwFriendWelcomeByUserIdVO(qwUser.getId(), corpId);
|
|
QwFriendWelcomeVO qwFriendWelcomeVO = qwFriendWelcomeMapper.selectQwFriendWelcomeByUserIdVO(qwUser.getId(), corpId);
|