Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
H
haoban-manage3.0
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
haoban3.0
haoban-manage3.0
Commits
a3ec12f1
Commit
a3ec12f1
authored
Aug 09, 2021
by
fudahua
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
会员标签同步-好友打标签同步
parent
9fd82acb
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
15 additions
and
87 deletions
+15
-87
ExternalClerkRelatedApiService.java
...an/manage/api/service/ExternalClerkRelatedApiService.java
+8
-0
ExternalClerkRelatedApiServiceImpl.java
.../service/out/impl/ExternalClerkRelatedApiServiceImpl.java
+7
-0
QywxTagApiServiceImpl.java
...anage/service/service/out/impl/QywxTagApiServiceImpl.java
+0
-87
No files found.
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/service/ExternalClerkRelatedApiService.java
View file @
a3ec12f1
...
@@ -106,6 +106,14 @@ public interface ExternalClerkRelatedApiService {
...
@@ -106,6 +106,14 @@ public interface ExternalClerkRelatedApiService {
*/
*/
Page
<
String
>
pageExternalByEnterpriseId
(
String
wxEnterpriseId
,
String
enterpriseId
,
BasePageInfo
pageInfo
);
Page
<
String
>
pageExternalByEnterpriseId
(
String
wxEnterpriseId
,
String
enterpriseId
,
BasePageInfo
pageInfo
);
/**
* 查询导购好友关联
*
* @param wxEnterpriseId : 微信企业id
* @return : 返回好友关联
*/
Page
<
String
>
pageExternalByEnterpriseId
(
String
wxEnterpriseId
,
String
enterpriseId
,
int
pageNum
,
int
pageSize
);
/**
/**
* 获取企业下的关联关系列表
* 获取企业下的关联关系列表
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/out/impl/ExternalClerkRelatedApiServiceImpl.java
View file @
a3ec12f1
...
@@ -195,6 +195,13 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
...
@@ -195,6 +195,13 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
}
}
@Override
@Override
public
Page
<
String
>
pageExternalByEnterpriseId
(
String
wxEnterpriseId
,
String
enterpriseId
,
int
pageNum
,
int
pageSize
)
{
PageHelper
.
startPage
(
pageNum
,
pageSize
);
List
<
String
>
memberIDs
=
tabHaobanExternalClerkRelatedMapper
.
listMemberIdByEnterpriseId
(
wxEnterpriseId
,
enterpriseId
);
return
PageUtil
.
changePageHelperToCurrentPage
(
new
PageInfo
<>(
memberIDs
));
}
@Override
public
List
<
ExternalClerkRelatedShortInfoDTO
>
listExternalClerkByMemberIds
(
String
wxEnterpriseId
,
List
<
String
>
memberIds
)
{
public
List
<
ExternalClerkRelatedShortInfoDTO
>
listExternalClerkByMemberIds
(
String
wxEnterpriseId
,
List
<
String
>
memberIds
)
{
List
<
TabHaobanExternalClerkRelated
>
list
=
tabHaobanExternalClerkRelatedMapper
.
listByMemberIds
(
memberIds
,
wxEnterpriseId
);
List
<
TabHaobanExternalClerkRelated
>
list
=
tabHaobanExternalClerkRelatedMapper
.
listByMemberIds
(
memberIds
,
wxEnterpriseId
);
return
EntityUtil
.
changeEntityListNew
(
ExternalClerkRelatedShortInfoDTO
.
class
,
list
);
return
EntityUtil
.
changeEntityListNew
(
ExternalClerkRelatedShortInfoDTO
.
class
,
list
);
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/out/impl/QywxTagApiServiceImpl.java
View file @
a3ec12f1
...
@@ -3,8 +3,6 @@ package com.gic.haoban.manage.service.service.out.impl;
...
@@ -3,8 +3,6 @@ package com.gic.haoban.manage.service.service.out.impl;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.gic.commons.util.ToolUtil
;
import
com.gic.commons.util.ToolUtil
;
import
com.gic.haoban.app.customer.dto.SearchComputeDTO
;
import
com.gic.haoban.app.customer.dto.SearchDataDTO
;
import
com.gic.haoban.app.customer.enums.QywxTaskStatusEnum
;
import
com.gic.haoban.app.customer.enums.QywxTaskStatusEnum
;
import
com.gic.haoban.app.customer.service.api.service.QywxTagSyncApiService
;
import
com.gic.haoban.app.customer.service.api.service.QywxTagSyncApiService
;
import
com.gic.haoban.base.api.common.ServiceResponse
;
import
com.gic.haoban.base.api.common.ServiceResponse
;
...
@@ -22,10 +20,6 @@ import com.gic.haoban.manage.service.service.QywxTagService;
...
@@ -22,10 +20,6 @@ import com.gic.haoban.manage.service.service.QywxTagService;
import
com.gic.haoban.manage.service.service.WxEnterpriseService
;
import
com.gic.haoban.manage.service.service.WxEnterpriseService
;
import
com.gic.member.api.dto.MemberTagDTO
;
import
com.gic.member.api.dto.MemberTagDTO
;
import
com.gic.member.api.service.MemberTagService
;
import
com.gic.member.api.service.MemberTagService
;
import
com.gic.search.engine.api.constant.MemberDataEnum
;
import
com.gic.search.engine.api.constant.OperateEnum
;
import
com.gic.search.engine.api.dto.ESResponseQueryBatch
;
import
com.gic.search.engine.api.dto.dynamic.DynamicSearchDTO
;
import
com.gic.search.engine.api.service.dynamic.ESDataDynamicOperationApiService
;
import
com.gic.search.engine.api.service.dynamic.ESDataDynamicOperationApiService
;
import
com.gic.wechat.api.dto.qywx.QywxTagDTO
;
import
com.gic.wechat.api.dto.qywx.QywxTagDTO
;
import
com.gic.wechat.api.dto.qywx.QywxTagGroupDTO
;
import
com.gic.wechat.api.dto.qywx.QywxTagGroupDTO
;
...
@@ -563,45 +557,6 @@ public class QywxTagApiServiceImpl implements QywxTagApiService {
...
@@ -563,45 +557,6 @@ public class QywxTagApiServiceImpl implements QywxTagApiService {
}
}
/**
/**
* 同步标签到所有好友
*
* @param syncTagFormat
* @param enterpriseId
* @param coprId
* @param externalUserId
* @param externalTagMap
* @param memberAllSetTagKeys 该企业下该会员的所有打标签
*/
private
void
syncToQywxByWxUserId
(
QywxSyncTagFormatPojo
syncTagFormat
,
String
enterpriseId
,
String
coprId
,
String
externalUserId
,
Map
<
String
,
Set
<
String
>>
externalTagMap
,
Set
<
String
>
memberAllSetTagKeys
)
{
ServiceResponse
resp
=
new
ServiceResponse
();
//商户下设置同步的企业微信标签keys
Set
<
String
>
entQywxTagSyncKeys
=
syncTagFormat
.
getEntQywxTagKeysMap
().
get
(
enterpriseId
);
//同步好友
externalTagMap
.
forEach
((
wxUserId
,
haveTagKes
)
->
{
//该用户在该商户下打的标签
Sets
.
SetView
<
String
>
entHasSetQywxTagKeys
=
Sets
.
intersection
(
haveTagKes
,
entQywxTagSyncKeys
);
//获取需要打的标签
Sets
.
SetView
<
String
>
needSetTags
=
Sets
.
difference
(
memberAllSetTagKeys
,
entHasSetQywxTagKeys
);
//需要删除的标签
Sets
.
SetView
<
String
>
needDelTags
=
Sets
.
difference
(
entHasSetQywxTagKeys
,
memberAllSetTagKeys
);
if
(
CollectionUtils
.
isEmpty
(
needDelTags
)
&&
CollectionUtils
.
isEmpty
(
needSetTags
))
{
logger
.
info
(
"不需要操作:{},{}"
,
wxUserId
,
externalUserId
);
return
;
}
QywxResponseDTO
responseDTO
=
qywxUserApiService
.
markTag
(
coprId
,
config
.
getWxSuiteid
(),
wxUserId
,
externalUserId
,
needSetTags
,
needDelTags
);
logger
.
info
(
"操作返回:{}"
,
JSONObject
.
toJSONString
(
responseDTO
));
if
(
responseDTO
.
getErrcode
()
!=
0
)
{
//todo 告警
logger
.
info
(
"权限不对:{},{}"
,
wxUserId
,
externalUserId
);
resp
.
setMessage
(
responseDTO
.
getErrmsg
());
resp
.
setCode
(
responseDTO
.
getErrcode
());
return
;
}
});
}
/**
* 获取以及同步的标签序列表
* 获取以及同步的标签序列表
*/
*/
private
QywxSyncTagFormatPojo
listSyncTagItems
(
String
wxEnterpriseId
)
{
private
QywxSyncTagFormatPojo
listSyncTagItems
(
String
wxEnterpriseId
)
{
...
@@ -747,48 +702,6 @@ public class QywxTagApiServiceImpl implements QywxTagApiService {
...
@@ -747,48 +702,6 @@ public class QywxTagApiServiceImpl implements QywxTagApiService {
memberTagService
.
saveOrUpdateMemberTagHB
(
enterpriseId
,
list
,
memberId
);
memberTagService
.
saveOrUpdateMemberTagHB
(
enterpriseId
,
list
,
memberId
);
}
}
/**
* 获取会员列表标签
*
* @param wxEnterpriseId
* @param enterpriseId
* @return
*/
private
Set
<
String
>
listMemberTagItemIds
(
String
wxEnterpriseId
,
String
enterpriseId
,
String
memberId
)
{
List
<
SearchComputeDTO
>
andList
=
new
ArrayList
<>();
SearchDataDTO
memberIdDto
=
new
SearchDataDTO
(
MemberDataEnum
.
member_id
.
getCode
(),
OperateEnum
.
OPERATE_CONTAIN
.
getValue
(),
memberId
);
SearchComputeDTO
memberIdCompute
=
new
SearchComputeDTO
(
"data"
,
null
,
memberIdDto
);
andList
.
add
(
memberIdCompute
);
SearchComputeDTO
searchComputeDTO
=
new
SearchComputeDTO
(
OperateEnum
.
OPERATE_AND
.
getValue
(),
andList
,
null
);
DynamicSearchDTO
searchDTO
=
new
DynamicSearchDTO
();
searchDTO
.
setRecordNumber
(
1
);
searchDTO
.
setEnterpriseId
(
enterpriseId
);
searchDTO
.
setColumnCategoryCode
(
"member"
);
searchDTO
.
setReturnFileds
(
MemberDataEnum
.
member_tag
.
getCode
());
searchDTO
.
setSearchJson
(
searchComputeDTO
.
toJSONObject
());
logger
.
info
(
"searchJson:"
+
searchDTO
.
getSearchJson
());
ESResponseQueryBatch
queryDataBatch
=
esDataDynamicOperationApiService
.
queryDataBatch
(
searchDTO
,
false
,
null
);
List
<
JSONObject
>
res
=
queryDataBatch
.
getRes
();
if
(
org
.
apache
.
commons
.
collections
.
CollectionUtils
.
isEmpty
(
res
))
{
return
new
HashSet
<>();
}
JSONObject
jsonObject
=
res
.
get
(
0
);
String
memberTags
=
jsonObject
.
getString
(
MemberDataEnum
.
member_tag
.
getCode
());
if
(
StringUtils
.
isBlank
(
memberTags
))
{
return
null
;
}
return
Arrays
.
asList
(
memberTags
).
stream
().
collect
(
Collectors
.
toSet
());
}
/**
/**
* 获取企业微信的外部联系人的所有联系关系
* 获取企业微信的外部联系人的所有联系关系
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment