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
12ec33ee
Commit
12ec33ee
authored
Sep 02, 2021
by
xugaojun
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/developer' into developer
parents
bb45a494
ea8e2062
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
111 additions
and
10 deletions
+111
-10
TabHaobanExternalClerkRelatedMapper.java
...rvice/dao/mapper/TabHaobanExternalClerkRelatedMapper.java
+9
-0
ExternalClerkRelatedService.java
...n/manage/service/service/ExternalClerkRelatedService.java
+9
-0
ExternalClerkRelatedServiceImpl.java
...service/service/impl/ExternalClerkRelatedServiceImpl.java
+51
-0
ExternalClerkRelatedApiServiceImpl.java
.../service/out/impl/ExternalClerkRelatedApiServiceImpl.java
+15
-0
QywxTagApiServiceImpl.java
...anage/service/service/out/impl/QywxTagApiServiceImpl.java
+8
-4
TabHaobanExternalClerkRelatedMapper.xml
.../resources/mapper/TabHaobanExternalClerkRelatedMapper.xml
+12
-0
TestOperDatabase.java
haoban-manage3-service/src/test/java/TestOperDatabase.java
+7
-6
No files found.
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/dao/mapper/TabHaobanExternalClerkRelatedMapper.java
View file @
12ec33ee
...
...
@@ -193,4 +193,12 @@ public interface TabHaobanExternalClerkRelatedMapper {
* @return
*/
List
<
TabHaobanExternalClerkRelated
>
listByExternalUserId
(
@Param
(
"wxEnterpriseId"
)
String
wxEnterpriseId
,
@Param
(
"externalUserId"
)
String
externalUserId
);
/**
* 根据会员id更新新老会员id
*
* @param memberId
* @return
*/
int
updateMemberIdByMemberId
(
@Param
(
"memberId"
)
String
memberId
,
@Param
(
"oldMemberId"
)
String
oldMemberId
);
}
\ No newline at end of file
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/ExternalClerkRelatedService.java
View file @
12ec33ee
...
...
@@ -58,4 +58,13 @@ public interface ExternalClerkRelatedService {
*/
List
<
TabHaobanExternalClerkRelated
>
listExternalByExternalUserid
(
String
wxEnterpriseId
,
String
externalUserid
);
/**
* 校验会员id与unionid的对应 主要修复会员合并是没有更新会老的情况
*
* @param memberId
* @param unionId
* @return
*/
String
checkAndUpdateMemberByUnonId
(
String
enterpriseId
,
String
memberId
,
String
unionId
);
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/impl/ExternalClerkRelatedServiceImpl.java
View file @
12ec33ee
...
...
@@ -5,6 +5,14 @@ import java.util.Date;
import
java.util.List
;
import
java.util.Set
;
import
com.alibaba.fastjson.JSONObject
;
import
com.gic.member.api.dto.MemberDTO
;
import
com.gic.member.api.service.MemberService
;
import
com.gic.search.engine.api.dto.ESResponseQuerySingle
;
import
com.gic.search.engine.api.dto.dynamic.DynamicSearchDTO
;
import
com.gic.search.engine.api.service.dynamic.ESDataDynamicOperationApiService
;
import
org.apache.commons.lang3.StringUtils
;
import
org.slf4j.Logger
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
com.alibaba.dubbo.config.annotation.Service
;
...
...
@@ -16,12 +24,22 @@ import com.gic.haoban.manage.service.dao.mapper.TabHaobanExternalClerkRelatedMap
import
com.gic.haoban.manage.service.entity.TabHaobanExternalClerkRelated
;
import
com.gic.haoban.manage.service.service.ExternalClerkRelatedService
;
import
static
org
.
slf4j
.
LoggerFactory
.
getLogger
;
@Service
public
class
ExternalClerkRelatedServiceImpl
implements
ExternalClerkRelatedService
{
private
static
final
Logger
logger
=
getLogger
(
ExternalClerkRelatedServiceImpl
.
class
);
@Autowired
private
TabHaobanExternalClerkRelatedMapper
mapper
;
@Autowired
private
ESDataDynamicOperationApiService
esDataDynamicOperationApiService
;
@Autowired
private
MemberService
memberService
;
@Override
public
void
insert
(
TabHaobanExternalClerkRelated
related
)
{
String
clerkId
=
related
.
getClerkId
();
...
...
@@ -110,4 +128,37 @@ public class ExternalClerkRelatedServiceImpl implements ExternalClerkRelatedServ
public
List
<
TabHaobanExternalClerkRelated
>
listExternalByExternalUserid
(
String
wxEnterpriseId
,
String
externalUserid
)
{
return
mapper
.
listByExternalUserId
(
wxEnterpriseId
,
externalUserid
);
}
@Override
public
String
checkAndUpdateMemberByUnonId
(
String
enterpriseId
,
String
memberId
,
String
unionId
)
{
String
returnFields
=
"id"
;
try
{
JSONObject
searchJson
=
new
JSONObject
();
searchJson
.
put
(
"id"
,
memberId
);
DynamicSearchDTO
search
=
new
DynamicSearchDTO
();
search
.
setSearchJson
(
searchJson
);
search
.
setEnterpriseId
(
enterpriseId
);
search
.
setColumnCategoryCode
(
"member"
);
if
(
StringUtils
.
isNotBlank
(
returnFields
))
{
search
.
setReturnFileds
(
returnFields
);
}
ESResponseQuerySingle
single
=
esDataDynamicOperationApiService
.
queryDataSingle
(
search
);
JSONObject
res
=
single
.
getRes
();
logger
.
info
(
"返回数据:{}"
,
JSONObject
.
toJSONString
(
res
));
if
(
res
!=
null
&&
res
.
size
()
>
0
)
{
return
memberId
;
}
MemberDTO
memberDTO
=
memberService
.
getMemberByUnionid
(
unionId
,
enterpriseId
);
if
(
null
==
memberDTO
||
memberDTO
.
getMemberId
()
==
null
)
{
logger
.
info
(
"会员不存在:{}"
,
unionId
);
return
null
;
}
//更新会员id
mapper
.
updateMemberIdByMemberId
(
memberDTO
.
getMemberId
(),
memberId
);
return
memberDTO
.
getMemberId
();
}
catch
(
Exception
e
)
{
logger
.
info
(
"从搜索引擎中搜索会员数据异常, memberId : {}"
,
memberId
);
}
return
null
;
}
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/out/impl/ExternalClerkRelatedApiServiceImpl.java
View file @
12ec33ee
...
...
@@ -5,6 +5,8 @@ import com.alibaba.fastjson.JSONObject;
import
com.gic.api.base.commons.Page
;
import
com.gic.commons.util.EntityUtil
;
import
com.gic.commons.util.GICMQClientUtil
;
import
com.gic.haoban.app.customer.dto.SearchComputeDTO
;
import
com.gic.haoban.app.customer.dto.SearchDataDTO
;
import
com.gic.haoban.app.customer.enums.GicQywxSyncTypeEnum
;
import
com.gic.haoban.app.customer.enums.QywxSyncTaskTypeEnum
;
import
com.gic.haoban.base.api.common.BasePageInfo
;
...
...
@@ -18,14 +20,26 @@ import com.gic.haoban.manage.service.dao.mapper.TabHaobanExternalClerkRelatedMap
import
com.gic.haoban.manage.service.entity.MemberUnionidRelated
;
import
com.gic.haoban.manage.service.entity.TabHaobanExternalClerkRelated
;
import
com.gic.haoban.manage.service.pojo.QywxTagSyncInfoPojo
;
import
com.gic.member.api.dto.MemberDTO
;
import
com.gic.member.api.service.MemberApiService
;
import
com.gic.member.api.service.MemberService
;
import
com.gic.mq.sdk.GicMQClient
;
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.ESResponseQuerySingle
;
import
com.gic.search.engine.api.dto.dynamic.DynamicSearchDTO
;
import
com.gic.search.engine.api.service.dynamic.ESDataDynamicOperationApiService
;
import
com.github.pagehelper.PageHelper
;
import
com.github.pagehelper.PageInfo
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.logging.log4j.LogManager
;
import
org.apache.logging.log4j.Logger
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.ArrayList
;
import
java.util.Collections
;
import
java.util.Date
;
import
java.util.List
;
...
...
@@ -217,4 +231,5 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
List
<
TabHaobanExternalClerkRelated
>
list
=
tabHaobanExternalClerkRelatedMapper
.
listByMemberId
(
memberId
);
return
EntityUtil
.
changeEntityListNew
(
ExternalClerkRelatedShortInfoDTO
.
class
,
list
);
}
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/out/impl/QywxTagApiServiceImpl.java
View file @
12ec33ee
...
...
@@ -677,9 +677,13 @@ public class QywxTagApiServiceImpl implements QywxTagApiService {
logger
.
info
(
"该企业下没有配置需要同步的:{},{}"
,
externalUserId
,
clerkRelated
.
getEnterpriseId
());
continue
;
}
String
memberId
=
externalClerkRelatedService
.
checkAndUpdateMemberByUnonId
(
clerkRelated
.
getEnterpriseId
(),
clerkRelated
.
getMemberId
(),
clerkRelated
.
getUnionid
());
if
(
null
==
memberId
)
{
logger
.
info
(
"会员不存在:{}"
,
externalUserId
);
continue
;
}
//该会员打的标签
List
<
MemberTagDTO
>
gicItems
=
memberTagService
.
listMemberTag
(
clerkRelated
.
getEnterpriseId
(),
clerkRelated
.
getMemberId
()
);
List
<
MemberTagDTO
>
gicItems
=
memberTagService
.
listMemberTag
(
clerkRelated
.
getEnterpriseId
(),
memberId
);
Set
<
String
>
noSyncTagItemIds
=
new
HashSet
<>();
if
(!
CollectionUtils
.
isEmpty
(
gicItems
))
{
noSyncTagItemIds
=
gicItems
.
stream
().
filter
(
item
->
!
entQywxSyncTagItemIds
.
contains
(
item
.
getTagsId
())).
map
(
dto
->
dto
.
getTagsId
()).
collect
(
Collectors
.
toSet
());
...
...
@@ -692,9 +696,9 @@ public class QywxTagApiServiceImpl implements QywxTagApiService {
logger
.
info
(
"该企业会员需要打的标签:{}"
,
JSONObject
.
toJSONString
(
entMemberNeedSetQywxKeys
));
//更新标签 会自动同步
if
(
CollectionUtils
.
isEmpty
(
saveTagIds
))
{
saveMemberTags
(
new
HashSet
<>(),
clerkRelated
.
getEnterpriseId
(),
clerkRelated
.
getMemberId
()
,
clerkRelated
.
getClerkId
());
saveMemberTags
(
new
HashSet
<>(),
clerkRelated
.
getEnterpriseId
(),
memberId
,
clerkRelated
.
getClerkId
());
}
else
{
saveMemberTags
(
saveTagIds
,
clerkRelated
.
getEnterpriseId
(),
clerkRelated
.
getMemberId
()
,
clerkRelated
.
getClerkId
());
saveMemberTags
(
saveTagIds
,
clerkRelated
.
getEnterpriseId
(),
memberId
,
clerkRelated
.
getClerkId
());
}
// hasSaveMemberId.add(clerkRelated.getMemberId());
// //同步企业的标签到企业微信
...
...
haoban-manage3-service/src/main/resources/mapper/TabHaobanExternalClerkRelatedMapper.xml
View file @
12ec33ee
...
...
@@ -573,4 +573,15 @@
and status_flag = 1
and external_user_id = #{externalUserId}
</select>
<update
id=
"updateMemberIdByMemberId"
>
UPDATE
tab_haoban_external_clerk_related
SET
member_id=#{memberId},
update_time = now()
where
member_id = #{oldMemberId}
and status_flag = 1
</update>
</mapper>
\ No newline at end of file
haoban-manage3-service/src/test/java/TestOperDatabase.java
View file @
12ec33ee
import
com.gic.haoban.common.utils.UuidUtil
;
import
com.gic.haoban.manage.api.service.ExternalClerkRelatedApiService
;
import
com.gic.haoban.manage.service.dao.mapper.TabHaobanOperationSettingMapper
;
import
com.gic.haoban.manage.service.entity.TabHaobanOperationSetting
;
import
com.gic.haoban.manage.service.service.ExternalClerkRelatedService
;
import
org.junit.Test
;
import
org.junit.runner.RunWith
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -22,14 +24,13 @@ public class TestOperDatabase {
@Autowired
private
TabHaobanOperationSettingMapper
tabHaobanOperationSettingMapper
;
@Autowired
private
ExternalClerkRelatedService
externalClerkRelatedService
;
@Test
public
void
testOperSetting
()
{
TabHaobanOperationSetting
setting
=
new
TabHaobanOperationSetting
();
setting
.
setClerkPhoneFlag
(
1
);
setting
.
setCreateTime
(
new
Date
());
setting
.
setSettingId
(
UuidUtil
.
randomUUID
());
setting
.
setWxEnterpriseId
(
"123123"
);
tabHaobanOperationSettingMapper
.
insert
(
setting
);
String
s
=
externalClerkRelatedService
.
checkAndUpdateMemberByUnonId
(
"ff8080815dacd3a2015dacd3ef5c0000"
,
"ff8080817b95cd7e017b95f2c0ec009d"
,
"orXl9t9_320bmRutZoL8YEpPAc00"
);
System
.
out
.
println
(
s
);
}
}
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