Commit f046bb7a by fudahua

会员标签同步-好友打标签同步

parent 6c0b619c
......@@ -90,7 +90,7 @@ public interface QywxTagApiService {
* @param externalUserId
* @return
*/
public boolean syncQywxTagToGicByExternalUserId(String wxEnterpriseId, String externalUserId, String wxUserId);
public ServiceResponse syncQywxTagToGicByExternalUserId(String wxEnterpriseId, String externalUserId, String wxUserId);
/**
* 更改状态
......
......@@ -642,14 +642,16 @@ public class QywxTagApiServiceImpl implements QywxTagApiService {
@Override
public boolean syncQywxTagToGicByExternalUserId(String wxEnterpriseId, String externalUserId, String wxUserId) {
public ServiceResponse syncQywxTagToGicByExternalUserId(String wxEnterpriseId, String externalUserId, String wxUserId) {
//todo 刷新标签的时候不允许同步
ServiceResponse resp = new ServiceResponse();
//所有以及关联同步的标签
QywxSyncTagFormatPojo syncTagFormatPojo = listSyncTagItems(wxEnterpriseId);
if (syncTagFormatPojo == null) {
logger.info("没有需要同步的标签,wxUserId:{},externalUserId:{},wxId:{}", wxUserId, externalUserId, wxEnterpriseId);
return true;
resp.setCode(2);
resp.setMessage("没有需要同步的标签");
return resp;
}
//企业微信同步的标签key
Set<String> qywxTagKeys = syncTagFormatPojo.getQywxToGicTagItemIdMap().keySet();
......@@ -659,12 +661,14 @@ public class QywxTagApiServiceImpl implements QywxTagApiService {
String externalUseridInfo = qywxUserApiService.getExternalUseridInfo(enterpriseDTO.getCorpid(), config.getWxSuiteid(), externalUserId);
if (StringUtils.isBlank(externalUseridInfo)) {
logger.info("好友不存在");
//todo 告警
return false;
resp.setCode(2);
resp.setMessage("好友不存在");
return resp;
} else if (externalUseridInfo.equals("1")) {
logger.info("限制次数");
//todo 告警
return false;
resp.setCode(45033);
resp.setMessage("限制次数");
return resp;
}
Map<String, Set<String>> externalTagMap = getExternalTagMap(externalUseridInfo);
......@@ -672,15 +676,15 @@ public class QywxTagApiServiceImpl implements QywxTagApiService {
Set<String> staffChangeTagKeys = externalTagMap.get(wxUserId);
if (CollectionUtils.isEmpty(staffChangeTagKeys)) {
logger.info("该用户没有不存在好友关系,获取不到关联导购打的标签");
return false;
return resp;
}
Sets.SetView<String> staffHasSetTagKeys = Sets.intersection(staffChangeTagKeys, qywxTagKeys);
//获取该外部联系人的所有会员
List<TabHaobanExternalClerkRelated> clerkRelateds = externalClerkRelatedService.listExternalByExternalUserid(wxEnterpriseId, externalUserId);
if (CollectionUtils.isEmpty(clerkRelateds)) {
logger.info("该用户没关联对应的好友");
return false;
logger.info("该用户没关联对应的好友:{}");
return resp;
}
//企业下的企业微信标签对应关系
Map<String, Set<String>> entQywxTagKeysMap = syncTagFormatPojo.getEntQywxTagKeysMap();
......@@ -724,7 +728,7 @@ public class QywxTagApiServiceImpl implements QywxTagApiService {
// //同步企业的标签到企业微信
// syncToQywxByWxUserId(syncTagFormatPojo, clerkRelated.getEnterpriseId(), enterpriseDTO.getCorpid(), externalUserId, externalTagMap, entMemberNeedSetQywxKeys);
}
return true;
return resp;
}
private void saveMemberTags(Set<String> tagItemIds, String enterpriseId, String memberId, String clerkId) {
......
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