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
65eb6e1e
Commit
65eb6e1e
authored
Sep 09, 2022
by
墨竹
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feat-0919' into developer
parents
225676fe
787d2c2e
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
477 additions
and
265 deletions
+477
-265
QwFrientNoticeDTO.java
...java/com/gic/haoban/manage/api/dto/QwFrientNoticeDTO.java
+52
-45
WxEnterpriseQwDTO.java
...java/com/gic/haoban/manage/api/dto/WxEnterpriseQwDTO.java
+3
-20
MemberUnionidRelatedApiService.java
...an/manage/api/service/MemberUnionidRelatedApiService.java
+4
-1
SecretSettingApiService.java
...aoban/manage/api/service/out/SecretSettingApiService.java
+4
-0
SecretSettingMapper.java
...haoban/manage/service/dao/mapper/SecretSettingMapper.java
+18
-14
SecretSettingService.java
...c/haoban/manage/service/service/SecretSettingService.java
+4
-0
ExternalClerkRelatedServiceImpl.java
...service/service/impl/ExternalClerkRelatedServiceImpl.java
+77
-3
SecretSettingServiceImpl.java
...manage/service/service/impl/SecretSettingServiceImpl.java
+6
-0
WxEnterpriseServiceImpl.java
.../manage/service/service/impl/WxEnterpriseServiceImpl.java
+0
-2
ExternalClerkRelatedApiServiceImpl.java
.../service/out/impl/ExternalClerkRelatedApiServiceImpl.java
+111
-50
MemberUnionidRelatedApiServiceImpl.java
.../service/out/impl/MemberUnionidRelatedApiServiceImpl.java
+144
-34
SecretSettingApiServiceImpl.java
...service/service/out/impl/SecretSettingApiServiceImpl.java
+10
-2
dubbo-haoban-manage-service.xml
...ervice/src/main/resources/dubbo-haoban-manage-service.xml
+2
-0
SecretSettingMapper.xml
...service/src/main/resources/mapper/SecretSettingMapper.xml
+9
-85
TabHaobanStaffClerkRelationMapper.xml
...in/resources/mapper/TabHaobanStaffClerkRelationMapper.xml
+3
-3
WxEnterpriseController.java
.../haoban/manage/web/controller/WxEnterpriseController.java
+23
-5
dubbo-haoban-manage-web.xml
...3-web/src/main/webapp/WEB-INF/dubbo-haoban-manage-web.xml
+2
-0
StoreController.java
...com/gic/haoban/manage/web/controller/StoreController.java
+5
-1
No files found.
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/dto/QwFrientNoticeDTO.java
View file @
65eb6e1e
...
...
@@ -3,14 +3,12 @@ package com.gic.haoban.manage.api.dto;
import
java.io.Serializable
;
/**
*
* @ClassName: QwFrientNoticeDTO
* @Description: 企微加好友通知
* @author xugh
* @date 2022年8月18日 上午10:31:14
*
* @author xugh
* @ClassName: QwFrientNoticeDTO
* @Description: 企微加好友通知
* @date 2022年8月18日 上午10:31:14
*/
public
class
QwFrientNoticeDTO
implements
Serializable
{
public
class
QwFrientNoticeDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
...
...
@@ -18,14 +16,14 @@ public class QwFrientNoticeDTO implements Serializable{
private
String
suiteid
;
private
String
memberUnionidRelatedId
;
private
String
memberUnionidRelatedId
;
private
String
memberId
;
private
String
unionid
;
private
String
wxEnterpriseId
;
private
String
enterpriseId
;
private
Integer
statusFlag
;
...
...
@@ -33,13 +31,13 @@ public class QwFrientNoticeDTO implements Serializable{
private
String
externalUserid
;
private
String
wxUserId
;
private
String
selfExternalUserid
;
private
String
externalName
;
private
String
addCreateTime
;
private
String
avatar
;
private
String
welcomeCode
;
...
...
@@ -47,8 +45,9 @@ public class QwFrientNoticeDTO implements Serializable{
* 自定义的state参数
*/
private
String
state
;
private
String
staffId
;
private
String
staffId
;
private
String
changeType
;
public
String
getStaffId
()
{
return
staffId
;
...
...
@@ -138,45 +137,45 @@ public class QwFrientNoticeDTO implements Serializable{
this
.
suiteid
=
suiteid
;
}
public
String
getSelfExternalUserid
()
{
return
selfExternalUserid
;
}
public
String
getSelfExternalUserid
()
{
return
selfExternalUserid
;
}
public
void
setSelfExternalUserid
(
String
selfExternalUserid
)
{
this
.
selfExternalUserid
=
selfExternalUserid
;
}
public
void
setSelfExternalUserid
(
String
selfExternalUserid
)
{
this
.
selfExternalUserid
=
selfExternalUserid
;
}
public
String
getExternalName
()
{
return
externalName
;
}
public
String
getExternalName
()
{
return
externalName
;
}
public
void
setExternalName
(
String
externalName
)
{
this
.
externalName
=
externalName
;
}
public
void
setExternalName
(
String
externalName
)
{
this
.
externalName
=
externalName
;
}
public
String
getAddCreateTime
()
{
return
addCreateTime
;
}
public
String
getAddCreateTime
()
{
return
addCreateTime
;
}
public
void
setAddCreateTime
(
String
addCreateTime
)
{
this
.
addCreateTime
=
addCreateTime
;
}
public
void
setAddCreateTime
(
String
addCreateTime
)
{
this
.
addCreateTime
=
addCreateTime
;
}
public
String
getEnterpriseId
()
{
return
enterpriseId
;
}
public
String
getEnterpriseId
()
{
return
enterpriseId
;
}
public
void
setEnterpriseId
(
String
enterpriseId
)
{
this
.
enterpriseId
=
enterpriseId
;
}
public
void
setEnterpriseId
(
String
enterpriseId
)
{
this
.
enterpriseId
=
enterpriseId
;
}
public
String
getAvatar
()
{
return
avatar
;
}
public
String
getAvatar
()
{
return
avatar
;
}
public
void
setAvatar
(
String
avatar
)
{
this
.
avatar
=
avatar
;
}
public
void
setAvatar
(
String
avatar
)
{
this
.
avatar
=
avatar
;
}
public
String
getState
()
{
return
state
;
...
...
@@ -185,4 +184,12 @@ public class QwFrientNoticeDTO implements Serializable{
public
void
setState
(
String
state
)
{
this
.
state
=
state
;
}
public
String
getChangeType
()
{
return
changeType
;
}
public
void
setChangeType
(
String
changeType
)
{
this
.
changeType
=
changeType
;
}
}
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/dto/WxEnterpriseQwDTO.java
View file @
65eb6e1e
...
...
@@ -10,35 +10,18 @@ public class WxEnterpriseQwDTO implements Serializable {
private
String
wxEnterpriseId
;
// 好办 助手
private
String
dkCorpid
;
private
String
dkSuiteId
;
// 会员小程序dk
private
String
memberCorpid
;
private
String
memberSuiteId
;
// 第三方
private
String
thirdCorpid
;
// 第三方使用的加密的userid
public
boolean
needOpenUserId3th
()
{
return
this
.
wxSecurityType
==
2
||
this
.
wxSecurityType
==
3
;
}
public
boolean
needOpenUserIdDk
()
{
return
this
.
wxSecurityType
==
2
||
this
.
wxSecurityType
==
4
;
}
public
String
getDkSuiteId
()
{
return
dkSuiteId
;
}
public
String
getMemberSuiteId
()
{
return
memberSuiteId
;
}
public
void
setDkSuiteId
(
String
dkSuiteId
)
{
this
.
dkSuiteId
=
dkSuiteId
;
}
public
void
setMemberSuiteId
(
String
memberSuiteId
)
{
this
.
memberSuiteId
=
memberSuiteId
;
public
boolean
needOpenUserIdDk
()
{
return
this
.
wxSecurityType
==
2
||
this
.
wxSecurityType
==
4
;
}
public
int
getWxSecurityType
()
{
...
...
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/service/MemberUnionidRelatedApiService.java
View file @
65eb6e1e
...
...
@@ -78,7 +78,7 @@ public interface MemberUnionidRelatedApiService {
* @date 2022-01-13 10:50:44
*/
String
sendMessage
(
String
wxEnterpriseId
,
String
staffId
,
List
<
String
>
extendUserList
,
String
materialId
);
/**
* 创建企业群发, 支出素材批量发送
*
...
...
@@ -89,6 +89,9 @@ public interface MemberUnionidRelatedApiService {
* @return : 返回群发执行结果
*/
JSONResponse
sendMessage
(
String
wxEnterpriseId
,
String
staffId
,
List
<
String
>
extendUserList
,
List
<
String
>
materialIdList
);
JSONResponse
sendMessage
(
String
wxEnterpriseId
,
String
staffId
,
List
<
String
>
extendUserList
,
List
<
String
>
materialIdList
,
String
ecmPlanId
);
/**
* 获取群发成员发送任务列表
...
...
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/service/out/SecretSettingApiService.java
View file @
65eb6e1e
package
com
.
gic
.
haoban
.
manage
.
api
.
service
.
out
;
import
java.util.List
;
import
com.gic.haoban.manage.api.dto.SecretSettingDTO
;
/**
...
...
@@ -14,4 +16,6 @@ public interface SecretSettingApiService {
* @return
*/
SecretSettingDTO
getSecretSetting
(
String
wxEnterpriseId
,
int
secretType
);
public
List
<
SecretSettingDTO
>
exsitGicEidMemberApp
(
String
wxEnterpriseId
);
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/dao/mapper/SecretSettingMapper.java
View file @
65eb6e1e
package
com
.
gic
.
haoban
.
manage
.
service
.
dao
.
mapper
;
import
com.gic.haoban.manage.service.entity.TabSecretSetting
;
import
java.util.List
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
import
com.gic.haoban.manage.api.dto.SecretSettingDTO
;
import
com.gic.haoban.manage.service.entity.TabSecretSetting
;
@Mapper
public
interface
SecretSettingMapper
{
/**
*/
int
deleteByPrimaryKey
(
String
secretId
);
/**
*/
int
insert
(
TabSecretSetting
record
);
/**
*/
int
insertSelective
(
TabSecretSetting
record
);
/**
*/
TabSecretSetting
selectByPrimaryKey
(
String
secretId
);
/**
*/
int
updateByPrimaryKeySelective
(
TabSecretSetting
record
);
/**
*/
int
updateByPrimaryKey
(
TabSecretSetting
record
);
/**
* 获取企业secret配置信息
* @param wxEnterpriseId
* @return
...
...
@@ -49,5 +40,17 @@ public interface SecretSettingMapper {
TabSecretSetting
getSecretSetting
(
@Param
(
"wxEnterpriseId"
)
String
wxEnterpriseId
,
@Param
(
"secretType"
)
int
secretType
,
@Param
(
"enterpriseId"
)
String
enterpriseId
);
/**
*
* @Title: isExsitGicMemberApp
* @Description: 是否已经存在配置的gic会员小程序
* @author xugh
* @param wxEnterpriseId
* @param enterpriseId
* @return
* @throws
*/
List
<
SecretSettingDTO
>
exsitGicEidMemberApp
(
@Param
(
"wxEnterpriseId"
)
String
wxEnterpriseId
);
}
\ No newline at end of file
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/SecretSettingService.java
View file @
65eb6e1e
...
...
@@ -4,6 +4,8 @@ import com.gic.haoban.manage.api.dto.SecretSettingDTO;
import
java.util.List
;
import
org.apache.ibatis.annotations.Param
;
/**
* Created 2020/6/3.
*
...
...
@@ -56,4 +58,6 @@ public interface SecretSettingService {
* @date 2022-06-27 13:39:58
*/
SecretSettingDTO
getSecretSettingById
(
String
secretId
);
List
<
SecretSettingDTO
>
exsitGicEidMemberApp
(
String
wxEnterpriseId
);
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/impl/ExternalClerkRelatedServiceImpl.java
View file @
65eb6e1e
...
...
@@ -3,6 +3,12 @@ package com.gic.haoban.manage.service.service.impl;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.gic.api.base.dto.SubscribeMessageDTO
;
import
com.gic.clerk.api.dto.ClerkDTO
;
import
com.gic.clerk.api.service.ClerkService
;
import
com.gic.commons.util.GICMQClientUtil
;
import
com.gic.enterprise.api.dto.StoreDTO
;
import
com.gic.enterprise.api.service.StoreService
;
import
com.gic.haoban.common.utils.EntityUtil
;
import
com.gic.haoban.common.utils.StringUtil
;
import
com.gic.haoban.manage.api.dto.ExternalClerkRelatedDTO
;
...
...
@@ -17,8 +23,12 @@ import com.gic.haoban.manage.service.entity.TabHaobanStaffClerkRelation;
import
com.gic.haoban.manage.service.service.ExternalClerkRelatedService
;
import
com.gic.haoban.manage.service.service.hm.WxUserAddLogService
;
import
com.gic.member.api.dto.MemberDTO
;
import
com.gic.member.api.dto.MemberSourceDetailDTO
;
import
com.gic.member.api.dto.MemberSourceShowDTO
;
import
com.gic.member.api.service.MemberApiService
;
import
com.gic.member.api.service.MemberEntranceApiService
;
import
com.gic.member.api.service.MemberService
;
import
com.gic.mq.sdk.GicMQClient
;
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
;
...
...
@@ -52,6 +62,12 @@ public class ExternalClerkRelatedServiceImpl implements ExternalClerkRelatedServ
private
TabHaobanStaffClerkRelationMapper
staffClerkRelationMapper
;
@Autowired
private
WxUserAddLogService
wxUserAddLogService
;
@Autowired
private
StoreService
storeService
;
@Autowired
private
ClerkService
clerkService
;
@Autowired
private
MemberEntranceApiService
memberEntranceApiService
;
@Override
public
void
insert
(
TabHaobanExternalClerkRelated
related
)
{
...
...
@@ -69,13 +85,13 @@ public class ExternalClerkRelatedServiceImpl implements ExternalClerkRelatedServ
}
@Override
public
void
delByUserIdAndExternalUserId
(
MemberUnionidRelatedDTO
dto
,
String
wxUserId
)
{
public
void
delByUserIdAndExternalUserId
(
MemberUnionidRelatedDTO
dto
,
String
wxUserId
)
{
int
count
=
mapper
.
delByUserIdAndExternalUserId
(
EntityUtil
.
changeEntityByJSON
(
TabHaobanExternalClerkRelated
.
class
,
dto
));
if
(
count
<=
0
)
{
logger
.
error
(
"无需删除的好友数据:{}"
,
JSON
.
toJSONString
(
dto
));
return
;
}
String
staffId
=
dto
.
getStaffId
()
;
String
staffId
=
dto
.
getStaffId
();
String
externalUserid
=
dto
.
getExternalUserid
();
List
<
TabHaobanExternalClerkRelated
>
tabHaobanExternalClerkRelatedList
=
mapper
.
listByExTernalUseridAndWxUserId
(
externalUserid
,
staffId
,
2
);
if
(
CollectionUtils
.
isEmpty
(
tabHaobanExternalClerkRelatedList
))
{
...
...
@@ -91,7 +107,7 @@ public class ExternalClerkRelatedServiceImpl implements ExternalClerkRelatedServ
}
staffId
=
tabHaobanStaff
.
getStaffId
();
List
<
TabHaobanStaffClerkRelation
>
tabHaobanStaffClerkRelations
=
staffClerkRelationMapper
.
lisByStaffId
(
wxEnterpriseId
,
staffId
,
null
);
List
<
TabHaobanStaffClerkRelation
>
tabHaobanStaffClerkRelations
=
staffClerkRelationMapper
.
lisByStaffId
(
wxEnterpriseId
,
staffId
,
null
);
if
(
CollectionUtils
.
isEmpty
(
tabHaobanStaffClerkRelations
))
{
logger
.
error
(
"找不到员工导购关联关系:staffId:{},wxEnterpriseId:{}"
,
staffId
,
wxEnterpriseId
);
return
;
...
...
@@ -129,6 +145,64 @@ public class ExternalClerkRelatedServiceImpl implements ExternalClerkRelatedServ
wxUserAddLogQDTO
.
setStaffId
(
related
.
getStaffId
());
wxUserAddLogQDTO
.
setClerkId
(
related
.
getClerkId
());
wxUserAddLogService
.
save
(
wxUserAddLogQDTO
);
//定制
addDelFriendEvent
(
related
.
getUnionid
(),
related
.
getClerkId
(),
enterpriseId
,
related
.
getMemberId
(),
related
.
getStoreId
());
}
/**
* 欧泊莱定制需求
*
* @param unionId
* @param clerkId
* @param enterpriseId
* @param memberId
* @param storeId
*/
private
void
addDelFriendEvent
(
String
unionId
,
String
clerkId
,
String
enterpriseId
,
String
memberId
,
String
storeId
)
{
//欧泊莱定制需求
ClerkDTO
clerkDTO
=
clerkService
.
getClerkByClerkId
(
clerkId
);
StoreDTO
storeDTO
=
storeService
.
getStore
(
storeId
);
MemberDTO
member
=
memberService
.
getMember
(
memberId
);
GicMQClient
clientInstance
=
GICMQClientUtil
.
getClientInstance
();
try
{
JSONObject
msgBody
=
new
JSONObject
();
msgBody
.
put
(
"cardNum"
,
member
.
getCardNum
());
msgBody
.
put
(
"enterpriseId"
,
enterpriseId
);
msgBody
.
put
(
"unionid"
,
unionId
);
if
(
storeDTO
!=
null
)
{
msgBody
.
put
(
"storeName"
,
storeDTO
.
getStoreName
());
msgBody
.
put
(
"storeCode"
,
storeDTO
.
getStoreCode
());
}
if
(
clerkDTO
!=
null
)
{
msgBody
.
put
(
"clerkName"
,
clerkDTO
.
getClerkName
());
msgBody
.
put
(
"clerkCode"
,
clerkDTO
.
getClerkCode
());
}
msgBody
.
put
(
"changeType"
,
0
);
msgBody
.
put
(
"addCreateTime"
,
""
);
msgBody
.
put
(
"delCreateTime"
,
new
Date
());
//获取渠道
List
<
String
>
list
=
new
ArrayList
<>();
MemberSourceShowDTO
memberSourceShowDTO
=
memberEntranceApiService
.
getMemberSourceByMemberId
(
enterpriseId
,
memberId
);
if
(
memberSourceShowDTO
!=
null
&&
CollectionUtils
.
isNotEmpty
(
memberSourceShowDTO
.
getMemberSourceList
()))
{
for
(
MemberSourceDetailDTO
memberSourceDetailDTO
:
memberSourceShowDTO
.
getMemberSourceList
())
{
if
(
null
!=
memberSourceDetailDTO
.
getHighlight
()
&&
memberSourceDetailDTO
.
getHighlight
()
==
1
)
{
list
.
add
(
memberSourceDetailDTO
.
getParentSourceCode
());
}
}
}
SubscribeMessageDTO
subscribeMessageDTO
=
new
SubscribeMessageDTO
();
subscribeMessageDTO
.
setEvent
(
"addDelFriendEvent"
);
subscribeMessageDTO
.
setTopic
(
"member"
);
subscribeMessageDTO
.
setEnterpriseId
(
enterpriseId
);
subscribeMessageDTO
.
setMemberId
(
memberId
);
subscribeMessageDTO
.
setMemberChannels
(
list
);
subscribeMessageDTO
.
setMsgBody
(
msgBody
.
toJSONString
());
clientInstance
.
sendMessage
(
"dealQywxExternalUserEvent"
,
JSONObject
.
toJSONString
(
subscribeMessageDTO
));
}
catch
(
Exception
e
)
{
logger
.
info
(
"加好友事件订阅通知:{}"
,
e
.
getMessage
(),
e
);
}
}
@Override
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/impl/SecretSettingServiceImpl.java
View file @
65eb6e1e
...
...
@@ -8,6 +8,7 @@ import com.gic.haoban.manage.service.dao.mapper.SecretSettingMapper;
import
com.gic.haoban.manage.service.entity.TabSecretSetting
;
import
com.gic.haoban.manage.service.service.SecretSettingService
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.ibatis.annotations.Param
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -86,4 +87,9 @@ public class SecretSettingServiceImpl implements SecretSettingService {
TabSecretSetting
secretSetting
=
secretSettingMapper
.
selectByPrimaryKey
(
secretId
);
return
EntityUtil
.
changeEntity
(
SecretSettingDTO
.
class
,
secretSetting
);
}
@Override
public
List
<
SecretSettingDTO
>
exsitGicEidMemberApp
(
String
wxEnterpriseId
)
{
return
this
.
secretSettingMapper
.
exsitGicEidMemberApp
(
wxEnterpriseId
);
}
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/impl/WxEnterpriseServiceImpl.java
View file @
65eb6e1e
...
...
@@ -70,10 +70,8 @@ public class WxEnterpriseServiceImpl implements WxEnterpriseService {
qw
.
setThirdCorpid
(
app
.
getCorpid
());
}
else
if
(
appType
.
equals
(
3
))
{
qw
.
setDkCorpid
(
app
.
getCorpid
());
qw
.
setDkSuiteId
(
app
.
getSiteId
());
}
else
if
(
appType
.
equals
(
4
))
{
qw
.
setMemberCorpid
(
app
.
getCorpid
());
qw
.
setMemberSuiteId
(
app
.
getSiteId
());
}
});
}
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/out/impl/ExternalClerkRelatedApiServiceImpl.java
View file @
65eb6e1e
package
com
.
gic
.
haoban
.
manage
.
service
.
service
.
out
.
impl
;
import
java.util.ArrayList
;
import
java.util.Collections
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
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.redisson.api.RRateLimiter
;
import
org.redisson.api.RateIntervalUnit
;
import
org.redisson.api.RateType
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.gic.api.base.commons.Page
;
import
com.gic.api.base.dto.SubscribeMessageDTO
;
import
com.gic.clerk.api.dto.ClerkDTO
;
import
com.gic.clerk.api.service.ClerkService
;
import
com.gic.commons.util.EntityUtil
;
import
com.gic.commons.util.GICMQClientUtil
;
import
com.gic.commons.util.UniqueIdUtils
;
import
com.gic.dubbo.entity.ProviderLocalTag
;
import
com.gic.enterprise.api.dto.StoreDTO
;
import
com.gic.enterprise.api.service.StoreService
;
import
com.gic.haoban.app.customer.enums.GicQywxSyncTypeEnum
;
import
com.gic.haoban.app.customer.enums.QywxSyncTaskTypeEnum
;
import
com.gic.haoban.base.api.common.BasePageInfo
;
import
com.gic.haoban.base.api.common.ServiceResponse
;
import
com.gic.haoban.base.api.common.errCode.HaoBanErrCodeCommon
;
import
com.gic.haoban.common.utils.PageUtil
;
import
com.gic.haoban.manage.api.dto.AlertMessageDTO
;
import
com.gic.haoban.manage.api.dto.ClerkStaffWxUserDTO
;
import
com.gic.haoban.manage.api.dto.ExternalClerkRelatedDTO
;
import
com.gic.haoban.manage.api.dto.ExternalClerkRelatedShortInfoDTO
;
import
com.gic.haoban.manage.api.dto.FriendMemberStatusDTO
;
import
com.gic.haoban.manage.api.dto.WxEnterpriseQwDTO
;
import
com.gic.haoban.manage.api.dto.*
;
import
com.gic.haoban.manage.api.enums.AlertTypeEnum
;
import
com.gic.haoban.manage.api.enums.SyncTaskTypeEnum
;
import
com.gic.haoban.manage.api.service.CheckQywxSettingApiService
;
...
...
@@ -45,27 +26,38 @@ import com.gic.haoban.manage.api.service.DealSyncOperationApiService;
import
com.gic.haoban.manage.api.service.ExternalClerkRelatedApiService
;
import
com.gic.haoban.manage.api.service.WxEnterpriseApiService
;
import
com.gic.haoban.manage.service.config.Config
;
import
com.gic.haoban.manage.service.dao.mapper.ExternalUseridLogMapper
;
import
com.gic.haoban.manage.service.dao.mapper.MemberUnionidRelatedMapper
;
import
com.gic.haoban.manage.service.dao.mapper.TabHaobanExternalClerkRelatedMapper
;
import
com.gic.haoban.manage.service.dao.mapper.TabHaobanStaffClerkRelationMapper
;
import
com.gic.haoban.manage.service.dao.mapper.WxEnterpriseMapper
;
import
com.gic.haoban.manage.service.entity.MemberUnionidRelated
;
import
com.gic.haoban.manage.service.entity.TabExternalUseridLog
;
import
com.gic.haoban.manage.service.entity.TabHaobanExternalClerkRelated
;
import
com.gic.haoban.manage.service.entity.TabHaobanStaffClerkRelation
;
import
com.gic.haoban.manage.service.entity.TabHaobanWxEnterprise
;
import
com.gic.haoban.manage.service.dao.mapper.*
;
import
com.gic.haoban.manage.service.entity.*
;
import
com.gic.haoban.manage.service.entity.ext.MemberStaffRelExtDO
;
import
com.gic.haoban.manage.service.pojo.QywxTagSyncInfoPojo
;
import
com.gic.haoban.manage.service.service.WxEnterpriseService
;
import
com.gic.haoban.manage.service.service.hm.WxUserAddLogService
;
import
com.gic.member.api.dto.MemberDTO
;
import
com.gic.member.api.dto.MemberSourceDetailDTO
;
import
com.gic.member.api.dto.MemberSourceShowDTO
;
import
com.gic.member.api.service.MemberApiService
;
import
com.gic.member.api.service.MemberEntranceApiService
;
import
com.gic.member.api.service.MemberService
;
import
com.gic.mq.sdk.GicMQClient
;
import
com.gic.redis.data.util.RedisUtil
;
import
com.gic.wechat.api.dto.qywx.QywxNewExternalUseridDTO
;
import
com.gic.wechat.api.service.qywx.QywxUserApiService
;
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.redisson.api.RRateLimiter
;
import
org.redisson.api.RateIntervalUnit
;
import
org.redisson.api.RateType
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.*
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
@Service
public
class
ExternalClerkRelatedApiServiceImpl
implements
ExternalClerkRelatedApiService
{
...
...
@@ -95,9 +87,17 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
@Autowired
private
WxUserAddLogService
wxUserAddLogService
;
@Autowired
private
WxEnterpriseService
wxEnterpriseService
;
private
WxEnterpriseService
wxEnterpriseService
;
@Autowired
private
DealSyncOperationApiService
dealSyncOperationApiService
;
@Autowired
private
DealSyncOperationApiService
dealSyncOperationApiService
;
private
MemberEntranceApiService
memberEntranceApiService
;
@Autowired
private
StoreService
storeService
;
@Autowired
private
ClerkService
clerkService
;
@Autowired
private
MemberService
memberService
;
/**
* 查询会员在企业下的好友关系
...
...
@@ -112,12 +112,12 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
List
<
TabHaobanExternalClerkRelated
>
list
=
tabHaobanExternalClerkRelatedMapper
.
listByMemberIdAndWxEnterpriseId
(
memberId
,
wxEnterpriseId
,
enterpriseId
);
return
EntityUtil
.
changeEntityListByJSON
(
ExternalClerkRelatedDTO
.
class
,
list
);
}
@Override
public
List
<
ExternalClerkRelatedDTO
>
listByMemberIdList
(
List
<
String
>
memberIdList
,
String
wxEnterpriseId
,
String
enterpriseId
)
{
String
enterpriseId
)
{
List
<
ExternalClerkRelatedDTO
>
list
=
tabHaobanExternalClerkRelatedMapper
.
listByMemberIdList
(
memberIdList
,
wxEnterpriseId
,
enterpriseId
);
return
list
;
return
list
;
}
@Override
...
...
@@ -151,7 +151,7 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
tabHaobanExternalClerkRelatedMapper
.
pushExternalByRelationKey
(
relationKey
);
return
true
;
}
@Override
public
List
<
ExternalClerkRelatedDTO
>
listByEnterpriseIdAndDate
(
String
enterpriseId
,
Date
date
)
{
...
...
@@ -229,10 +229,70 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
//回调给会员,更新是否为企微好友
log
.
info
(
"通知会员 合并会员后更新为企微好友,memberId:{}"
,
memberId
);
memberApiService
.
updateMemberQywxFlag
(
enterpriseId
,
memberId
,
1
);
//定制
addDelFriendEvent
(
unionid
,
externalClerkRelated
.
getClerkId
(),
enterpriseId
,
memberId
,
externalClerkRelated
.
getStoreId
());
//日志
wxUserAddLogService
.
updateMemberInfo
(
wxEnterpriseId
,
enterpriseId
,
externalClerkRelated
.
getStaffId
(),
externalClerkRelated
.
getExternalUserId
(),
memberId
);
}
/**
* 欧泊莱定制需求
*
* @param unionId
* @param clerkId
* @param enterpriseId
* @param memberId
* @param storeId
*/
private
void
addDelFriendEvent
(
String
unionId
,
String
clerkId
,
String
enterpriseId
,
String
memberId
,
String
storeId
)
{
//欧泊莱定制需求
ClerkDTO
clerkDTO
=
clerkService
.
getClerkByClerkId
(
clerkId
);
StoreDTO
storeDTO
=
storeService
.
getStore
(
storeId
);
MemberDTO
member
=
memberService
.
getMember
(
memberId
);
GicMQClient
clientInstance
=
GICMQClientUtil
.
getClientInstance
();
try
{
JSONObject
msgBody
=
new
JSONObject
();
msgBody
.
put
(
"cardNum"
,
member
.
getCardNum
());
msgBody
.
put
(
"enterpriseId"
,
enterpriseId
);
msgBody
.
put
(
"unionid"
,
unionId
);
if
(
storeDTO
!=
null
)
{
msgBody
.
put
(
"storeName"
,
storeDTO
.
getStoreName
());
msgBody
.
put
(
"storeCode"
,
storeDTO
.
getStoreCode
());
}
if
(
clerkDTO
!=
null
)
{
msgBody
.
put
(
"clerkName"
,
clerkDTO
.
getClerkName
());
msgBody
.
put
(
"clerkCode"
,
clerkDTO
.
getClerkCode
());
}
msgBody
.
put
(
"changeType"
,
1
);
msgBody
.
put
(
"addCreateTime"
,
new
Date
());
msgBody
.
put
(
"delCreateTime"
,
""
);
//获取渠道
List
<
String
>
list
=
new
ArrayList
<>();
MemberSourceShowDTO
memberSourceShowDTO
=
memberEntranceApiService
.
getMemberSourceByMemberId
(
enterpriseId
,
memberId
);
if
(
memberSourceShowDTO
!=
null
&&
CollectionUtils
.
isNotEmpty
(
memberSourceShowDTO
.
getMemberSourceList
()))
{
for
(
MemberSourceDetailDTO
memberSourceDetailDTO
:
memberSourceShowDTO
.
getMemberSourceList
())
{
if
(
null
!=
memberSourceDetailDTO
.
getHighlight
()
&&
memberSourceDetailDTO
.
getHighlight
()
==
1
)
{
list
.
add
(
memberSourceDetailDTO
.
getParentSourceCode
());
}
}
}
SubscribeMessageDTO
subscribeMessageDTO
=
new
SubscribeMessageDTO
();
subscribeMessageDTO
.
setEvent
(
"addDelFriendEvent"
);
subscribeMessageDTO
.
setTopic
(
"member"
);
subscribeMessageDTO
.
setEnterpriseId
(
enterpriseId
);
subscribeMessageDTO
.
setMemberId
(
memberId
);
subscribeMessageDTO
.
setMemberChannels
(
list
);
subscribeMessageDTO
.
setMsgBody
(
msgBody
.
toJSONString
());
clientInstance
.
sendMessage
(
"dealQywxExternalUserEvent"
,
JSONObject
.
toJSONString
(
subscribeMessageDTO
));
}
catch
(
Exception
e
)
{
log
.
info
(
"加好友事件订阅通知:{}"
,
e
.
getMessage
(),
e
);
}
}
/**
* 刷新标签信息
*
...
...
@@ -303,7 +363,7 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
List
<
TabHaobanExternalClerkRelated
>
list
=
tabHaobanExternalClerkRelatedMapper
.
listByMemberId
(
memberId
,
enterpriseId
);
return
EntityUtil
.
changeEntityListNew
(
ExternalClerkRelatedShortInfoDTO
.
class
,
list
);
}
@Override
public
List
<
ExternalClerkRelatedShortInfoDTO
>
listExternalClerkByMemberId
(
String
memberId
)
{
if
(
StringUtils
.
isBlank
(
memberId
))
{
...
...
@@ -325,12 +385,12 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
public
void
delByMemberIdAndEnterpriseId
(
String
memberId
,
String
enterpriseId
,
String
mergeMemberId
)
{
log
.
info
(
"删除会员或者合并会员,memberId:{},enterpriseId:{},mergeMemberId:{}"
,
memberId
,
enterpriseId
,
mergeMemberId
);
if
(
StringUtils
.
isBlank
(
mergeMemberId
))
{
log
.
info
(
"删除会员,memberId:{}"
,
memberId
);
log
.
info
(
"删除会员,memberId:{}"
,
memberId
);
//删除会员
tabHaobanExternalClerkRelatedMapper
.
updateStatusByMemberId
(
memberId
,
enterpriseId
);
}
else
{
//合并会员
log
.
info
(
"合并会员,memberId:{}"
,
memberId
);
log
.
info
(
"合并会员,memberId:{}"
,
memberId
);
tabHaobanExternalClerkRelatedMapper
.
updateMemberIdByMemberId
(
mergeMemberId
,
memberId
,
enterpriseId
);
int
i
=
tabHaobanExternalClerkRelatedMapper
.
countByMemberId
(
mergeMemberId
,
enterpriseId
);
if
(
i
>
0
)
{
...
...
@@ -341,6 +401,7 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
}
}
@Override
public
boolean
isFriends
(
String
memberId
,
String
clerkId
,
String
enterpriseId
)
{
TabHaobanStaffClerkRelation
staffClerkRelation
=
staffClerkRelationMapper
.
getByClerkId
(
clerkId
);
...
...
@@ -362,7 +423,7 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
// 2个列表都为空查不了关系
return
Collections
.
emptyMap
();
}
WxEnterpriseQwDTO
qwDTO
=
this
.
wxEnterpriseService
.
getQwInfo
(
wxEnterpriseId
)
;
WxEnterpriseQwDTO
qwDTO
=
this
.
wxEnterpriseService
.
getQwInfo
(
wxEnterpriseId
);
if
(
qwDTO
==
null
)
{
return
Collections
.
emptyMap
();
}
...
...
@@ -413,7 +474,7 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
}
RedisUtil
.
lock
(
lockKey
,
1L
,
TimeUnit
.
DAYS
,
0L
);
try
{
WxEnterpriseQwDTO
qwDTO
=
this
.
wxEnterpriseService
.
getQwInfo
(
wxEnterpriseId
)
;
WxEnterpriseQwDTO
qwDTO
=
this
.
wxEnterpriseService
.
getQwInfo
(
wxEnterpriseId
);
updateNewExUserId
(
tabHaobanWxEnterprise
.
getWxEnterpriseId
(),
qwDTO
.
getThirdCorpid
());
log
.
info
(
"企业外部联系人id end,wxEnterpriseId:{}"
,
wxEnterpriseId
);
RedisUtil
.
unlock
(
lockKey
);
...
...
@@ -634,8 +695,8 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
public
int
countFriendCountByClerkId
(
String
wxEnterpriseId
,
String
enterpriseId
,
String
staffId
,
String
clerkId
)
{
return
tabHaobanExternalClerkRelatedMapper
.
countByClerkId
(
wxEnterpriseId
,
enterpriseId
,
staffId
,
clerkId
);
}
@Override
public
void
initWxEnterpriseFriend
(
String
wxEnterpriseId
)
{
log
.
info
(
"刷新整个企业的好友开始={}"
,
wxEnterpriseId
);
...
...
@@ -647,8 +708,8 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
log
.
info
(
"没有要刷新的:{},{}"
,
wxEnterpriseId
,
staffList
);
return
;
}
staffList
=
staffList
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
log
.
info
(
"staffList={}"
,
JSON
.
toJSONString
(
staffList
));
staffList
=
staffList
.
stream
().
distinct
().
collect
(
Collectors
.
toList
());
log
.
info
(
"staffList={}"
,
JSON
.
toJSONString
(
staffList
));
for
(
String
staffId
:
staffList
)
{
this
.
dealSyncOperationApiService
.
dealWxFriendClerkSingle
(
taskId
,
staffId
,
staffId
,
wxEnterpriseId
);
}
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/out/impl/MemberUnionidRelatedApiServiceImpl.java
View file @
65eb6e1e
...
...
@@ -7,6 +7,7 @@ import com.alibaba.fastjson.JSON;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.gic.api.base.commons.JSONResponse
;
import
com.gic.api.base.dto.SubscribeMessageDTO
;
import
com.gic.clerk.api.dto.ClerkDTO
;
import
com.gic.clerk.api.service.ClerkService
;
import
com.gic.clerk.api.service.PowerService
;
...
...
@@ -61,10 +62,9 @@ import com.gic.haoban.manage.service.service.hm.WxUserAddLogService;
import
com.gic.haoban.manage.service.util.CommonUtil
;
import
com.gic.haoban.manage.service.util.EmojiFilterUtil
;
import
com.gic.member.api.dto.MemberDTO
;
import
com.gic.member.api.service.MemberApiService
;
import
com.gic.member.api.service.MemberOpenCardBusinessService
;
import
com.gic.member.api.service.MemberService
;
import
com.gic.member.api.service.MemberStoreService
;
import
com.gic.member.api.dto.MemberSourceDetailDTO
;
import
com.gic.member.api.dto.MemberSourceShowDTO
;
import
com.gic.member.api.service.*
;
import
com.gic.member.tag.api.dto.outapi.MemberTagSingleDTO
;
import
com.gic.member.tag.api.service.MemberTagOpenApiService
;
import
com.gic.mq.sdk.GicMQClient
;
...
...
@@ -169,21 +169,37 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
@Autowired
private
HmClerkRelationApiService
hmClerkRelationApiService
;
@Autowired
private
StaffMapper
staffMapper
;
private
StaffMapper
staffMapper
;
@Autowired
private
MemberEntranceApiService
memberEntranceApiService
;
@Override
public
void
dealQywxExternalUser
(
String
params
)
{
log
.
info
(
"处理外部联系人回调:{}"
,
params
);
DealQywxExternalUserPojo
externalUserPojo
=
JSONObject
.
parseObject
(
params
,
DealQywxExternalUserPojo
.
class
);
QwFrientNoticeDTO
dto
=
externalUserPojo
.
getData
()
;
MemberUnionidRelatedDTO
inDTO
=
EntityUtil
.
changeEntityByJSON
(
MemberUnionidRelatedDTO
.
class
,
dto
)
;
if
(
externalUserPojo
.
getType
()
==
DealQywxExternalUserPojo
.
DealType
.
del
.
getType
())
{
this
.
delMemberUnionidRelatedProcess
(
inDTO
,
dto
.
getWxUserId
());
}
else
if
(
externalUserPojo
.
getType
()
==
DealQywxExternalUserPojo
.
DealType
.
add
.
getType
())
{
this
.
addMemberUnionidRelatedNew
(
inDTO
,
dto
.
getWxUserId
());
}
else
if
(
externalUserPojo
.
getType
()
==
DealQywxExternalUserPojo
.
DealType
.
edit
.
getType
())
{
this
.
editMemberUnionidRelatedProcess
(
inDTO
,
dto
.
getWxUserId
());
QwFrientNoticeDTO
qwFrientNoticeDTO
=
externalUserPojo
.
getData
();
int
type
=
externalUserPojo
.
getType
();
MemberUnionidRelatedDTO
memberUnionidRelatedDTO
=
EntityUtil
.
changeEntityByJSON
(
MemberUnionidRelatedDTO
.
class
,
qwFrientNoticeDTO
);
if
(
type
==
DealQywxExternalUserPojo
.
DealType
.
add
.
getType
())
{
this
.
addMemberUnionidRelatedNew
(
memberUnionidRelatedDTO
,
qwFrientNoticeDTO
.
getWxUserId
());
}
else
if
(
type
==
DealQywxExternalUserPojo
.
DealType
.
edit
.
getType
())
{
this
.
editMemberUnionidRelatedProcess
(
memberUnionidRelatedDTO
,
qwFrientNoticeDTO
.
getWxUserId
());
}
else
if
(
type
==
DealQywxExternalUserPojo
.
DealType
.
del
.
getType
())
{
String
changeType
=
qwFrientNoticeDTO
.
getChangeType
();
//欧泊莱定制
if
(
"del_follow_user"
.
equals
(
changeType
))
{
log
.
info
(
"会员删除导购:{}"
,
JSON
.
toJSONString
(
memberUnionidRelatedDTO
));
List
<
TabHaobanExternalClerkRelated
>
tabHaobanExternalClerkRelatedList
=
externalClerkRelatedService
.
listByExTernalUseridAndWxUserId
(
memberUnionidRelatedDTO
.
getExternalUserid
(),
memberUnionidRelatedDTO
.
getStaffId
());
if
(
CollectionUtils
.
isEmpty
(
tabHaobanExternalClerkRelatedList
))
{
log
.
error
(
"无好友记录"
);
return
;
}
TabHaobanExternalClerkRelated
related
=
tabHaobanExternalClerkRelatedList
.
get
(
0
);
addDelFriendEvent
(
related
.
getUnionid
(),
related
.
getClerkId
(),
related
.
getEnterpriseId
(),
related
.
getMemberId
(),
related
.
getStoreId
(),
0
);
return
;
}
this
.
delMemberUnionidRelatedProcess
(
memberUnionidRelatedDTO
,
qwFrientNoticeDTO
.
getWxUserId
());
}
}
...
...
@@ -194,7 +210,7 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
if
(
CollectionUtil
.
isEmpty
(
list
))
{
return
null
;
}
TabHaobanStaff
haobanStaff
=
staffService
.
selectById
(
staffId
)
;
TabHaobanStaff
haobanStaff
=
staffService
.
selectById
(
staffId
);
if
(
null
==
haobanStaff
)
{
log
.
info
(
"staff不存在"
);
return
null
;
...
...
@@ -209,7 +225,7 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
log
.
info
(
"staff关联门店不存在2"
);
return
null
;
}
log
.
info
(
"门店信息storeIds={}"
,
JSON
.
toJSONString
(
storeIds
));
log
.
info
(
"门店信息storeIds={}"
,
JSON
.
toJSONString
(
storeIds
));
//2、获取member的storeId
for
(
TabHaobanExternalClerkRelated
tab
:
list
)
{
if
(
StringUtils
.
isNotBlank
(
storeId
)
&&
(!
storeId
.
equals
(
tab
.
getStoreId
())))
{
...
...
@@ -293,12 +309,12 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
@Override
public
String
addMemberUnionidRelatedNew
(
MemberUnionidRelatedDTO
dto
,
String
wxUserId
)
{
//解析组装信息
dto
=
getMemberUnionidRelatedDTONew
(
dto
,
wxUserId
);
dto
=
getMemberUnionidRelatedDTONew
(
dto
,
wxUserId
);
if
(
null
==
dto
)
{
log
.
info
(
"没处理完成-等下一次处理"
);
return
null
;
}
insertExternalClerkRelatedNew
(
dto
,
wxUserId
);
insertExternalClerkRelatedNew
(
dto
,
wxUserId
);
return
dto
.
getMemberUnionidRelatedId
();
}
...
...
@@ -335,7 +351,7 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
}
String
staffId
=
staff
.
getStaffId
();
String
staffName
=
staff
.
getStaffName
();
log
.
info
(
"新增外部联系人,staffId={}"
,
staffId
);
log
.
info
(
"新增外部联系人,staffId={}"
,
staffId
);
StaffClerkRelationDTO
staffClerkRelationDTO
=
null
;
//活码处理 "DT" "HM"
WxUserAddLogQDTO
wxUserAddLogQDTO
=
new
WxUserAddLogQDTO
();
...
...
@@ -435,7 +451,7 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
if
(
StringUtils
.
isNotBlank
(
unionid
))
{
log
.
info
(
"有unionid处理:wxEnterpriseId:{},unionid:{}"
,
wxEnterpriseId
,
unionid
);
dto
.
setUnionid
(
unionid
);
memberId
=
addExternalClerkRelated
(
dto
,
staffId
,
staffClerkRelationDTO
,
wxEnterpriseRelated
,
isHmUnionid
,
mobile
,
wxUserId
);
memberId
=
addExternalClerkRelated
(
dto
,
staffId
,
staffClerkRelationDTO
,
wxEnterpriseRelated
,
isHmUnionid
,
mobile
,
wxUserId
);
}
else
{
log
.
info
(
"发送欢迎语逻辑:wxEnterpriseId:{}"
,
wxEnterpriseId
);
addFriendByWelcome
(
dto
,
staffClerkRelationDTO
);
...
...
@@ -549,6 +565,7 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
}
String
memberId
=
member
.
getMemberId
();
String
storeId
=
staffClerkRelationDTO
.
getStoreId
();
List
<
TabHaobanExternalClerkRelated
>
externalClerkRelateds
=
externalClerkRelatedService
.
listByExTernalUseridAndWxUserIdAllStatus
(
wxEnterpriseId
,
externalUserid
,
staffId
);
String
relationKey
=
SecureUtil
.
md5
(
staffId
+
externalUserid
);
String
memberUnionidRelatedId
=
dto
.
getMemberUnionidRelatedId
();
...
...
@@ -563,7 +580,7 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
related
.
setStaffId
(
staffId
);
related
.
setHeadUrl
(
dto
.
getAvatar
());
related
.
setMemberUnionidRelatedId
(
memberUnionidRelatedId
);
related
.
setStoreId
(
st
affClerkRelationDTO
.
getStoreId
()
);
related
.
setStoreId
(
st
oreId
);
related
.
setRelationKey
(
relationKey
);
related
.
setUnionid
(
unionId
);
related
.
setWxEnterpriseId
(
wxEnterpriseId
);
...
...
@@ -578,7 +595,7 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
exsitDTO
.
setUnionid
(
unionId
);
exsitDTO
.
setRelationKey
(
relationKey
);
exsitDTO
.
setHeadUrl
(
dto
.
getAvatar
());
exsitDTO
.
setStoreId
(
st
affClerkRelationDTO
.
getStoreId
()
);
exsitDTO
.
setStoreId
(
st
oreId
);
exsitDTO
.
setEnterpriseId
(
enterpriseId
);
exsitDTO
.
setClerkId
(
clerkId
);
exsitDTO
.
setStatusFlag
(
1
);
...
...
@@ -598,9 +615,70 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
//回调给会员,更新是否为企微好友
log
.
info
(
"通知会员 合并会员后更新为企微好友,memberId:{}"
,
memberId
);
memberApiService
.
updateMemberQywxFlag
(
enterpriseId
,
memberId
,
1
);
//定制事件订阅
addDelFriendEvent
(
unionId
,
clerkId
,
enterpriseId
,
memberId
,
storeId
,
1
);
return
memberId
;
}
/**
* 欧泊莱定制需求
*
* @param unionId
* @param clerkId
* @param enterpriseId
* @param memberId
* @param storeId
*/
private
void
addDelFriendEvent
(
String
unionId
,
String
clerkId
,
String
enterpriseId
,
String
memberId
,
String
storeId
,
Integer
changeType
)
{
//欧泊莱定制需求
ClerkDTO
clerkDTO
=
clerkService
.
getClerkByClerkId
(
clerkId
);
StoreDTO
storeDTO
=
storeService
.
getStore
(
storeId
);
MemberDTO
member
=
memberService
.
getMember
(
memberId
);
GicMQClient
clientInstance
=
GICMQClientUtil
.
getClientInstance
();
try
{
JSONObject
msgBody
=
new
JSONObject
();
msgBody
.
put
(
"cardNum"
,
member
.
getCardNum
());
msgBody
.
put
(
"enterpriseId"
,
enterpriseId
);
msgBody
.
put
(
"unionid"
,
unionId
);
if
(
storeDTO
!=
null
)
{
msgBody
.
put
(
"storeName"
,
storeDTO
.
getStoreName
());
msgBody
.
put
(
"storeCode"
,
storeDTO
.
getStoreCode
());
}
if
(
clerkDTO
!=
null
)
{
msgBody
.
put
(
"clerkName"
,
clerkDTO
.
getClerkName
());
msgBody
.
put
(
"clerkCode"
,
clerkDTO
.
getClerkCode
());
}
// 1添加;0删除
msgBody
.
put
(
"changeType"
,
changeType
);
if
(
changeType
==
1
)
{
msgBody
.
put
(
"addCreateTime"
,
new
Date
());
}
else
{
msgBody
.
put
(
"delCreateTime"
,
new
Date
());
}
//获取渠道
List
<
String
>
list
=
new
ArrayList
<>();
MemberSourceShowDTO
memberSourceShowDTO
=
memberEntranceApiService
.
getMemberSourceByMemberId
(
enterpriseId
,
memberId
);
if
(
memberSourceShowDTO
!=
null
&&
CollectionUtils
.
isNotEmpty
(
memberSourceShowDTO
.
getMemberSourceList
()))
{
for
(
MemberSourceDetailDTO
memberSourceDetailDTO
:
memberSourceShowDTO
.
getMemberSourceList
())
{
if
(
null
!=
memberSourceDetailDTO
.
getHighlight
()
&&
memberSourceDetailDTO
.
getHighlight
()
==
1
)
{
list
.
add
(
memberSourceDetailDTO
.
getParentSourceCode
());
}
}
}
SubscribeMessageDTO
subscribeMessageDTO
=
new
SubscribeMessageDTO
();
subscribeMessageDTO
.
setEvent
(
"addDelFriendEvent"
);
subscribeMessageDTO
.
setTopic
(
"member"
);
subscribeMessageDTO
.
setEnterpriseId
(
enterpriseId
);
subscribeMessageDTO
.
setMemberId
(
memberId
);
subscribeMessageDTO
.
setMemberChannels
(
list
);
subscribeMessageDTO
.
setMsgBody
(
msgBody
.
toJSONString
());
clientInstance
.
sendMessage
(
"dealQywxExternalUserEvent"
,
JSONObject
.
toJSONString
(
subscribeMessageDTO
));
}
catch
(
Exception
e
)
{
log
.
info
(
"加好友事件订阅通知:{}"
,
e
.
getMessage
(),
e
);
}
}
/**
* 欢迎语新增好友
...
...
@@ -1062,20 +1140,20 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
*
* @param dto
*/
private
void
delMemberUnionidRelatedProcess
(
MemberUnionidRelatedDTO
dto
,
String
wxUserId
)
{
private
void
delMemberUnionidRelatedProcess
(
MemberUnionidRelatedDTO
dto
,
String
wxUserId
)
{
String
corpId
=
dto
.
getCorpid
();
TabHaobanWxApplication
tabHaobanWxApplication
=
wxApplicationMapper
.
selectByCorpId
(
corpId
,
null
);
if
(
tabHaobanWxApplication
==
null
)
{
log
.
info
(
"查询tab_haoban_wx_application为空:{}"
,
corpId
);
return
;
return
;
}
String
wxEnterpriseId
=
tabHaobanWxApplication
.
getWxEnterpriseId
();
dto
.
setWxEnterpriseId
(
wxEnterpriseId
);
TabHaobanStaff
staff
=
this
.
staffMapper
.
selectByUserIdAndEnterpriseId
(
wxUserId
,
wxEnterpriseId
)
;
String
staffId
=
staff
.
getStaffId
()
;
TabHaobanStaff
staff
=
this
.
staffMapper
.
selectByUserIdAndEnterpriseId
(
wxUserId
,
wxEnterpriseId
)
;
String
staffId
=
staff
.
getStaffId
();
dto
.
setStaffId
(
staffId
);
externalClerkRelatedService
.
delByUserIdAndExternalUserId
(
dto
,
wxUserId
);
memberUnionRelatedService
.
delMemberUnionidRelated
(
dto
,
staffId
);
externalClerkRelatedService
.
delByUserIdAndExternalUserId
(
dto
,
wxUserId
);
memberUnionRelatedService
.
delMemberUnionidRelated
(
dto
,
staffId
);
}
private
void
editMemberUnionidRelatedProcess
(
MemberUnionidRelatedDTO
dto
,
String
wxUserId
)
{
...
...
@@ -1128,6 +1206,29 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
return
returnMap
.
get
(
"msgid"
)
==
null
?
""
:
returnMap
.
get
(
"msgid"
).
toString
();
}
@Override
public
JSONResponse
sendMessage
(
String
wxEnterpriseId
,
String
staffId
,
List
<
String
>
extendUserList
,
List
<
String
>
materialIdList
,
String
ecmPlanId
)
{
if
(
StringUtils
.
isNotBlank
(
ecmPlanId
)
&&
"ff80808182ef67cd0182f3152b2900cf"
.
equals
(
ecmPlanId
))
{
List
<
String
>
list
=
Arrays
.
asList
(
"244fc3aa44dd492c90041d404f02b3a0"
,
"3c6d26dc791946a8aa8aaf06d9deb9a6"
,
"4dd7689a3a5e48439840fb187bfaf995"
,
"6a29b127c15648cc8da60fa4bf8b6b92"
,
"6ad57e1d64214bfbbb7662e748ed1b84"
,
"7e364ea272044763bdda5afef3961ae5"
,
"ce6ac0d3d8a54b74a4af59996597ed03"
,
"dded2a7d79ee4d759372741256f04cec"
,
"edc487470d0344198f7185d3e2e7362a"
);
if
(
list
.
contains
(
staffId
))
{
JSONResponse
jp
=
new
JSONResponse
();
jp
.
setErrorCode
(-
1
);
jp
.
setErrorMessage
(
"已触发过"
);
return
jp
;
}
}
return
this
.
sendMessage
(
wxEnterpriseId
,
staffId
,
extendUserList
,
materialIdList
);
}
/**
* 创建企业群发, 支出素材批量发送
*
...
...
@@ -1166,6 +1267,13 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
qywxExternalMessageDTO
.
setChatType
(
"single"
);
qywxExternalMessageDTO
.
setExternalUserid
(
extendUserList
);
TabHaobanStaff
tabHaobanStaff
=
staffService
.
selectById
(
staffId
);
if
(
null
==
tabHaobanStaff
)
{
log
.
info
(
"staff不存在,staffId={}"
,
staffId
);
JSONResponse
jp
=
new
JSONResponse
();
jp
.
setErrorCode
(-
1
);
jp
.
setErrorMessage
(
"群发失败,成员查不到,"
+
staffId
);
return
jp
;
}
if
(
qwDTO
.
needOpenUserId3th
())
{
qywxExternalMessageDTO
.
setSenderUserId
(
tabHaobanStaff
.
getWxOpenUseId
());
}
else
{
...
...
@@ -1367,10 +1475,10 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
ExternalUserPojo
pojo
=
getExternalUserPojo
(
unionIdJson
,
wxUserId
,
wxEnterpriseId
);
return
EntityUtil
.
changeEntityByJSON
(
ExternalUserDTO
.
class
,
pojo
);
}
@Override
public
ExternalUserDTO
getCorpSelfExternalUseridInfoForMember
(
String
wxEnterpriseId
,
String
wxUserId
,
String
externalUserId
,
String
enterpriseId
)
{
String
externalUserId
,
String
enterpriseId
)
{
WxEnterpriseQwDTO
qwDTO
=
this
.
wxEnterpriseService
.
getQwInfo
(
wxEnterpriseId
);
if
(
qwDTO
==
null
)
{
log
.
info
(
"企业不存在"
);
...
...
@@ -1553,6 +1661,8 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
//通知企微好友
log
.
info
(
"通知会员 更新为企微好友 memberId:{}"
,
memberId
);
memberApiService
.
updateMemberQywxFlag
(
enterpriseId
,
memberId
,
1
);
//定制需求
addDelFriendEvent
(
unionId
,
clerkId
,
enterpriseId
,
memberId
,
storeId
,
1
);
return
""
;
}
...
...
@@ -1682,8 +1792,8 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
return
;
}
//删除成员与union的关联关系
List
<
String
>
khList
=
new
ArrayList
<
String
>(
delExternalUserIds
)
;
log
.
info
(
"需要删除外部联系人staffId={} , khList={}"
,
staffId
,
JSON
.
toJSONString
(
khList
));
List
<
String
>
khList
=
new
ArrayList
<
String
>(
delExternalUserIds
);
log
.
info
(
"需要删除外部联系人staffId={} , khList={}"
,
staffId
,
JSON
.
toJSONString
(
khList
));
memberUnionRelatedService
.
delMemberUnionidRelatedBatch
(
wxEnterpriseId
,
staffId
,
khList
);
//删除导购和外部联系人关系
externalClerkRelatedService
.
delByUserIdAndExternalUserIdBatch
(
wxEnterpriseId
,
staffId
,
khList
);
...
...
@@ -1804,7 +1914,7 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
String
wxUserId
=
externalUserDTO
.
getWxUserId
();
TabHaobanStaff
tabHaobanStaff
=
staffService
.
selectByUserIdAndEnterpriseId
(
wxUserId
,
wxEnterpriseId
);
if
(
tabHaobanStaff
==
null
)
{
log
.
error
(
"员工不存在:{}"
,
wxUserId
);
log
.
error
(
"员工不存在:{}"
,
wxUserId
);
continue
;
}
TabHaobanExternalClerkRelated
externalClerkRelated
=
externalClerkRelatedMapper
.
getByEnterpriseIdAndExternalUserId
(
wxEnterpriseId
,
tabHaobanStaff
.
getStaffId
(),
enterpriseId
,
externalUserid
);
...
...
@@ -1875,7 +1985,7 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
MemberUnionidRelated
memberUnionidRelated
=
memberUnionidRelatedMapper
.
selectByPrimaryKey
(
memberUnionidRelatedId
);
return
EntityUtil
.
changeEntityNew
(
MemberUnionidRelatedDTO
.
class
,
memberUnionidRelated
);
}
/**
* 获取客户详情列表
*
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/out/impl/SecretSettingApiServiceImpl.java
View file @
65eb6e1e
package
com
.
gic
.
haoban
.
manage
.
service
.
service
.
out
.
impl
;
import
java.util.List
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
com.gic.haoban.manage.api.dto.SecretSettingDTO
;
import
com.gic.haoban.manage.api.service.out.SecretSettingApiService
;
import
com.gic.haoban.manage.service.service.SecretSettingService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
/**
* @author mozhu
...
...
@@ -19,4 +22,9 @@ public class SecretSettingApiServiceImpl implements SecretSettingApiService {
public
SecretSettingDTO
getSecretSetting
(
String
wxEnterpriseId
,
int
secretType
)
{
return
secretSettingService
.
getSecretSetting
(
wxEnterpriseId
,
secretType
);
}
@Override
public
List
<
SecretSettingDTO
>
exsitGicEidMemberApp
(
String
wxEnterpriseId
)
{
return
this
.
secretSettingService
.
exsitGicEidMemberApp
(
wxEnterpriseId
);
}
}
haoban-manage3-service/src/main/resources/dubbo-haoban-manage-service.xml
View file @
65eb6e1e
...
...
@@ -192,5 +192,6 @@
<dubbo:reference
interface=
"com.gic.marketing.api.service.AccountOverdueSmsSendService"
id=
"accountOverdueSmsSendService"
timeout=
"10000"
retries=
"0"
/>
<dubbo:reference
interface=
"com.gic.thirdparty.api.service.VoiceService"
id=
"voiceService"
timeout=
"10000"
retries=
"0"
/>
<dubbo:reference
interface=
"com.gic.thirdparty.api.service.CommunicationService"
id=
"communicationService"
timeout=
"10000"
retries=
"0"
/>
<dubbo:reference
interface=
"com.gic.member.api.service.MemberEntranceApiService"
id=
"memberEntranceApiService"
timeout=
"10000"
retries=
"0"
/>
</beans>
\ No newline at end of file
haoban-manage3-service/src/main/resources/mapper/SecretSettingMapper.xml
View file @
65eb6e1e
...
...
@@ -23,10 +23,7 @@
from tab_haoban_secret_setting
where secret_id = #{secretId,jdbcType=VARCHAR}
</select>
<delete
id=
"deleteByPrimaryKey"
parameterType=
"java.lang.String"
>
delete from tab_haoban_secret_setting
where secret_id = #{secretId,jdbcType=VARCHAR}
</delete>
<insert
id=
"insert"
parameterType=
"com.gic.haoban.manage.service.entity.TabSecretSetting"
>
insert into tab_haoban_secret_setting (secret_id, wx_enterprise_id, secret_name,
secret_val, enterprise_id, secret_type,
...
...
@@ -37,73 +34,7 @@
#{checkFlag,jdbcType=INTEGER}, #{statusFlag,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP},
#{updateTime,jdbcType=TIMESTAMP})
</insert>
<insert
id=
"insertSelective"
parameterType=
"com.gic.haoban.manage.service.entity.TabSecretSetting"
>
insert into tab_haoban_secret_setting
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"secretId != null"
>
secret_id,
</if>
<if
test=
"wxEnterpriseId != null"
>
wx_enterprise_id,
</if>
<if
test=
"secretName != null"
>
secret_name,
</if>
<if
test=
"secretVal != null"
>
secret_val,
</if>
<if
test=
"enterpriseId != null"
>
enterprise_id,
</if>
<if
test=
"secretType != null"
>
secret_type,
</if>
<if
test=
"checkFlag != null"
>
check_flag,
</if>
<if
test=
"statusFlag != null"
>
status_flag,
</if>
<if
test=
"createTime != null"
>
create_time,
</if>
<if
test=
"updateTime != null"
>
update_time,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"secretId != null"
>
#{secretId,jdbcType=VARCHAR},
</if>
<if
test=
"wxEnterpriseId != null"
>
#{wxEnterpriseId,jdbcType=VARCHAR},
</if>
<if
test=
"secretName != null"
>
#{secretName,jdbcType=VARCHAR},
</if>
<if
test=
"secretVal != null"
>
#{secretVal,jdbcType=VARCHAR},
</if>
<if
test=
"enterpriseId != null"
>
#{enterpriseId,jdbcType=VARCHAR},
</if>
<if
test=
"secretType != null"
>
#{secretType,jdbcType=INTEGER},
</if>
<if
test=
"checkFlag != null"
>
#{checkFlag,jdbcType=INTEGER},
</if>
<if
test=
"statusFlag != null"
>
#{statusFlag,jdbcType=INTEGER},
</if>
<if
test=
"createTime != null"
>
#{createTime,jdbcType=TIMESTAMP},
</if>
<if
test=
"updateTime != null"
>
#{updateTime,jdbcType=TIMESTAMP},
</if>
</trim>
</insert>
<update
id=
"updateByPrimaryKeySelective"
parameterType=
"com.gic.haoban.manage.service.entity.TabSecretSetting"
>
update tab_haoban_secret_setting
<set>
...
...
@@ -137,20 +68,6 @@
</set>
where secret_id = #{secretId,jdbcType=VARCHAR}
</update>
<update
id=
"updateByPrimaryKey"
parameterType=
"com.gic.haoban.manage.service.entity.TabSecretSetting"
>
update tab_haoban_secret_setting
set wx_enterprise_id = #{wxEnterpriseId,jdbcType=VARCHAR},
secret_name = #{secretName,jdbcType=VARCHAR},
secret_val = #{secretVal,jdbcType=VARCHAR},
enterprise_id = #{enterpriseId,jdbcType=VARCHAR},
secret_type = #{secretType,jdbcType=INTEGER},
check_flag = #{checkFlag,jdbcType=INTEGER},
status_flag = #{statusFlag,jdbcType=INTEGER},
create_time = #{createTime,jdbcType=TIMESTAMP},
update_time = #{updateTime,jdbcType=TIMESTAMP}
where secret_id = #{secretId,jdbcType=VARCHAR}
</update>
<select
id=
"listSecretSetting"
resultMap=
"BaseResultMap"
>
select
...
...
@@ -171,4 +88,10 @@
</if>
ORDER BY create_time desc LIMIT 1
</select>
<select
id=
"exsitGicEidMemberApp"
resultType=
"com.gic.haoban.manage.api.dto.SecretSettingDTO"
>
select enterprise_id enterpriseId , secret_id secretId from tab_haoban_secret_setting where wx_enterprise_id = #{wxEnterpriseId,jdbcType=VARCHAR}
and status_flag = 1 and secret_type = 4 and enterprise_id is not null
</select>
</mapper>
\ No newline at end of file
haoban-manage3-service/src/main/resources/mapper/TabHaobanStaffClerkRelationMapper.xml
View file @
65eb6e1e
...
...
@@ -376,15 +376,15 @@
scr.clerk_id as staffClerkId
from tab_haoban_external_clerk_related as ecr
left join
(select
a
.staff_id,
(select
b
.staff_id,
a.clerk_id
from tab_haoban_staff_clerk_relation a
left join tab_haoban_staff b on a.staff_id = b.staff_id
left join tab_haoban_staff b on a.staff_id = b.staff_id
and b.status_flag = 1
where a.clerk_id in
<foreach
collection=
"clerkIdList"
item=
"item"
separator=
","
open=
"("
close=
")"
>
#{item}
</foreach>
and a.status_flag = 1
and a.status_flag = 1
group by a.staff_id, a.clerk_id) as scr on scr.staff_id = ecr.staff_id
where ecr.status_flag = 1
and ecr.enterprise_id = #{enterpriseId,jdbcType=VARCHAR}
...
...
haoban-manage3-web/src/main/java/com/gic/haoban/manage/web/controller/WxEnterpriseController.java
View file @
65eb6e1e
...
...
@@ -60,6 +60,7 @@ import com.gic.haoban.manage.api.service.MaterialApiService;
import
com.gic.haoban.manage.api.service.WxEnterpriseApiService
;
import
com.gic.haoban.manage.api.service.WxEnterpriseRelatedApiService
;
import
com.gic.haoban.manage.api.service.fee.HaobanQywxFeeApiService
;
import
com.gic.haoban.manage.api.service.out.SecretSettingApiService
;
import
com.gic.haoban.manage.web.config.Config
;
import
com.gic.haoban.manage.web.errCode.HaoBanErrCode
;
import
com.gic.haoban.manage.web.qo.MiniprogramSettingQo
;
...
...
@@ -104,6 +105,8 @@ public class WxEnterpriseController extends WebBaseController {
private
HaobanUserApiService
haobanUserApiService
;
@Autowired
private
HaobanQywxFeeApiService
haobanQywxFeeApiService
;
@Autowired
private
SecretSettingApiService
secretSettingApiService
;
//授权企业列表
@RequestMapping
(
"wxa-enterprise-list"
)
...
...
@@ -375,17 +378,32 @@ public class WxEnterpriseController extends WebBaseController {
if
(
StringUtils
.
isAnyBlank
(
memberSecret
,
enterpriseId
))
{
return
resultResponse
(
HaoBanErrCode
.
ERR_2
);
}
String
wxEnterpriseId
=
""
;
WebLoginDTO
login
=
AuthWebRequestUtil
.
getLoginUser
();
wxEnterpriseId
=
login
.
getWxEnterpriseId
();
String
wxEnterpriseId
=
login
.
getWxEnterpriseId
();
WxEnterpriseDTO
wxEnterprise
=
wxEnterpriseApiService
.
getOne
(
wxEnterpriseId
);
if
(
wxEnterprise
==
null
)
{
return
resultResponse
(
HaoBanErrCode
.
ERR_10012
);
}
memberSecret
=
memberSecret
.
trim
();
SecretSettingDTO
secretSetting
=
wxEnterpriseApiService
.
getSecretSettingById
(
secretId
);
if
(
StringUtils
.
isBlank
(
secretId
))
{
secretSetting
=
new
SecretSettingDTO
();
SecretSettingDTO
secretSetting
=
null
;
if
(
StringUtils
.
isNotBlank
(
secretId
))
{
secretSetting
=
wxEnterpriseApiService
.
getSecretSettingById
(
secretId
);
}
if
(
null
==
secretSetting
)
{
secretSetting
=
new
SecretSettingDTO
();
}
List
<
SecretSettingDTO
>
enList
=
this
.
secretSettingApiService
.
exsitGicEidMemberApp
(
wxEnterpriseId
)
;
if
(
CollectionUtils
.
isNotEmpty
(
enList
))
{
Map
<
String
,
SecretSettingDTO
>
map
=
enList
.
stream
().
collect
(
Collectors
.
toMap
(
SecretSettingDTO:
:
getEnterpriseId
,
dto
->
dto
,(
k1
,
k2
)->
k1
));
if
(
StringUtils
.
isEmpty
(
secretId
))
{
if
(
null
!=
map
.
get
(
enterpriseId
))
{
return
this
.
fail
(
"此商户小程序已存在"
)
;
}
}
else
{
if
(
null
!=
map
.
get
(
enterpriseId
)
&&
!
secretId
.
equals
(
map
.
get
(
enterpriseId
).
getSecretId
()))
{
return
this
.
fail
(
"此商户小程序已存在"
)
;
}
}
}
WxEnterpriseQwDTO
qwDTO
=
this
.
wxEnterpriseApiService
.
getQwInfo
(
wxEnterpriseId
)
;
String
token
=
this
.
qywxCorpApiService
.
getToken
(
qwDTO
.
getMemberCorpid
(),
memberSecret
);
...
...
haoban-manage3-web/src/main/webapp/WEB-INF/dubbo-haoban-manage-web.xml
View file @
65eb6e1e
...
...
@@ -120,4 +120,6 @@
<dubbo:reference
id=
"logSearchApiService"
interface=
"com.gic.log.record.service.LogSearchApiService"
timeout=
"10000"
retries=
"0"
check=
"false"
/>
<dubbo:reference
interface=
"com.gic.haoban.manage.api.service.fee.HaobanQywxFeeApiService"
id=
"haobanQywxFeeApiService"
/>
<dubbo:reference
interface=
"com.gic.haoban.manage.api.service.ValidationCodeApiService"
id=
"validationCodeApiService"
/>
<dubbo:reference
interface=
"com.gic.haoban.manage.api.service.out.SecretSettingApiService"
id=
"secretSettingApiService"
/>
</beans>
haoban-manage3-wx/src/main/java/com/gic/haoban/manage/web/controller/StoreController.java
View file @
65eb6e1e
...
...
@@ -95,7 +95,7 @@ public class StoreController extends WebBaseController {
*/
@IgnoreLogin
@RequestMapping
(
"/store-list"
)
public
HaobanResponse
storeList
(
String
staffId
,
String
wxEnterpriseId
,
String
version
)
{
public
HaobanResponse
storeList
(
String
staffId
,
String
wxEnterpriseId
,
String
hbversion
,
String
gicEnterpriseId
)
{
if
(
StringUtils
.
isAnyBlank
(
staffId
,
wxEnterpriseId
))
{
return
resultResponse
(
HaoBanErrCode
.
ERR_2
);
}
...
...
@@ -121,6 +121,10 @@ public class StoreController extends WebBaseController {
continue
;
}
String
enterprsieId
=
store
.
getEnterpriseId
()
;
if
(
StringUtils
.
isNotBlank
(
gicEnterpriseId
)
&&
!
gicEnterpriseId
.
equals
(
enterprsieId
))
{
logger
.
info
(
"非当前商户,直接跳过={},{}"
,
gicEnterpriseId
,
enterprsieId
);
continue
;
}
if
(
null
!=
map
.
get
(
enterprsieId
))
{
if
(
Boolean
.
FALSE
.
equals
(
map
.
get
(
enterprsieId
)))
{
logger
.
info
(
"该企业过期,{}"
,
enterprsieId
);
...
...
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