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
a02fedf4
Commit
a02fedf4
authored
Dec 17, 2021
by
墨竹
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat:欢迎语修改
parent
6cd82673
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
44 additions
and
12 deletions
+44
-12
MemberUnionidRelatedApiServiceImpl.java
.../service/out/impl/MemberUnionidRelatedApiServiceImpl.java
+44
-12
No files found.
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/out/impl/MemberUnionidRelatedApiServiceImpl.java
View file @
a02fedf4
...
...
@@ -46,17 +46,21 @@ import com.gic.member.api.service.MemberOpenCardBusinessService;
import
com.gic.mq.sdk.GicMQClient
;
import
com.gic.redis.data.util.RedisUtil
;
import
com.gic.wechat.api.dto.qywx.*
;
import
com.gic.wechat.api.enums.QywxMediaTypeEnum
;
import
com.gic.wechat.api.service.qywx.QywxSuiteApiService
;
import
com.gic.wechat.api.service.qywx.QywxUserApiService
;
import
com.github.pagehelper.PageHelper
;
import
com.google.common.collect.Sets
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.io.IOUtils
;
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.io.InputStream
;
import
java.net.URL
;
import
java.util.*
;
import
java.util.stream.Collectors
;
...
...
@@ -483,6 +487,17 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
}
}
private
static
byte
[]
getFileByte
(
String
url
)
{
try
{
InputStream
in
=
new
URL
(
url
).
openStream
();
byte
[]
data
=
IOUtils
.
toByteArray
(
in
);
return
data
;
}
catch
(
Exception
e
)
{
log
.
info
(
"【异常】"
+
e
.
getMessage
(),
e
);
}
return
null
;
}
/**
* 发送欢迎语
*
...
...
@@ -493,35 +508,52 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
private
void
sendWelcome
(
MemberUnionidRelatedDTO
dto
,
StaffClerkRelationDTO
staffClerkRelationDTO
,
boolean
sendApp
)
{
log
.
info
(
"发送欢迎语:{}"
,
JSONObject
.
toJSONString
(
staffClerkRelationDTO
));
String
relationKey
=
SecureUtil
.
md5
(
staffClerkRelationDTO
.
getClerkId
()
+
dto
.
getExternalUserid
());
TabWelcome
tabWelcome
=
welcomeMapper
.
selectByWxEnterpriseId
(
staffClerkRelationDTO
.
getWxEnterpriseId
());
String
wxEnterpriseId
=
staffClerkRelationDTO
.
getWxEnterpriseId
();
TabWelcome
tabWelcome
=
welcomeMapper
.
selectByWxEnterpriseId
(
wxEnterpriseId
);
if
(
null
==
tabWelcome
||
tabWelcome
.
getOpenFlag
()
==
0
)
{
log
.
info
(
"不用发送欢迎语:{},{}"
,
dto
.
getWxEnterpriseId
(),
JSONObject
.
toJSONString
(
tabWelcome
));
log
.
info
(
"欢迎语未配置:wxEnterpriseId:{}"
,
wxEnterpriseId
);
return
;
}
WxEnterpriseDTO
wxEnterpriseDTO
=
wxEnterpriseService
.
selectById
(
wxEnterpriseId
);
if
(
wxEnterpriseDTO
==
null
)
{
log
.
info
(
"微信企业不存在:wxEnterpriseId:{}"
,
wxEnterpriseId
);
return
;
}
String
externalName
=
dto
.
getExternalName
();
String
content
=
tabWelcome
.
getWelcomeContent
().
replaceAll
(
"<微信昵称>"
,
externalName
);
QywxWelcomeMsgDTO
qywxWelcomeMsgDTO
=
new
QywxWelcomeMsgDTO
();
qywxWelcomeMsgDTO
.
setText
(
tabWelcome
==
null
?
"欢迎您!"
:
content
);
//发送小
吃店哪个系
qywxWelcomeMsgDTO
.
setText
(
content
);
//发送小
程序
if
(
sendApp
)
{
QywxMiniprogramExternalBaseDTO
messageBaseDTO
=
new
QywxMiniprogramExternalBaseDTO
(
);
TabMiniprogramSetting
miniprogramSetting
=
miniprogramSettingService
.
getMiniprogramSetting
(
staffClerkRelationDTO
.
getWxEnterpriseId
()
,
staffClerkRelationDTO
.
getEnterpriseId
());
log
.
info
(
"发送小程序:{}"
,
wxEnterpriseId
);
TabMiniprogramSetting
miniprogramSetting
=
miniprogramSettingService
.
getMiniprogramSetting
(
wxEnterpriseId
,
staffClerkRelationDTO
.
getEnterpriseId
());
if
(
null
==
miniprogramSetting
)
{
log
.
info
(
"需要配置小程序配置:
{}"
,
staffClerkRelationDTO
.
getWxEnterpriseId
()
,
staffClerkRelationDTO
.
getEnterpriseId
());
log
.
info
(
"需要配置小程序配置:
wxEnterpriseId:{},enterpriseId:{}"
,
wxEnterpriseId
,
staffClerkRelationDTO
.
getEnterpriseId
());
return
;
}
List
<
QywxExternalMessageBaseDTO
>
attachments
=
new
ArrayList
<>();
QywxMiniprogramExternalBaseDTO
messageBaseDTO
=
new
QywxMiniprogramExternalBaseDTO
();
messageBaseDTO
.
setAppid
(
miniprogramSetting
.
getAppId
());
messageBaseDTO
.
setPicMediaId
(
miniprogramSetting
.
getMediaId
());
messageBaseDTO
.
setTitle
(
miniprogramSetting
.
getTitle
());
messageBaseDTO
.
setPage
(
config
.
getMemberOpenPage
()
+
relationKey
);
qywxWelcomeMsgDTO
.
setAttachments
(
new
ArrayList
<>());
qywxWelcomeMsgDTO
.
getAttachments
().
add
(
messageBaseDTO
);
attachments
.
add
(
messageBaseDTO
);
String
welcomeImg
=
tabWelcome
.
getWelcomeImg
();
if
(
StringUtils
.
isNotBlank
(
welcomeImg
))
{
String
[]
arr
=
welcomeImg
.
split
(
"/"
);
int
count
=
arr
.
length
;
JSONResponse
jp
=
qywxSuiteApiService
.
uploadMedia
(
wxEnterpriseDTO
.
getCorpid
(),
config
.
getWxSuiteid
(),
getFileByte
(
welcomeImg
),
arr
[
count
-
1
],
QywxMediaTypeEnum
.
IMAGE
.
getCode
());
log
.
info
(
"欢迎语发送图片返回:{}"
,
JSON
.
toJSONString
(
jp
));
if
(
jp
.
getErrorCode
()
==
0
)
{
QywxImageExternalBaseDTO
qywxImageExternalBaseDTO
=
new
QywxImageExternalBaseDTO
();
qywxImageExternalBaseDTO
.
setMediaId
(
jp
.
getResult
().
toString
());
attachments
.
add
(
qywxImageExternalBaseDTO
);
}
}
}
qywxWelcomeMsgDTO
.
setWelcomeCode
(
dto
.
getWelcomeCode
());
if
(
dto
.
getSuiteid
().
equals
(
SELF_APP
))
{
//好办助手和代开发
SecretSettingDTO
secretSetting
=
secretSettingService
.
getSecretSetting
(
dto
.
getWxEnterpriseId
(),
SecretTypeEnum
.
HAOBAN_HELP
.
getVal
());
qywxUserApiService
.
sendSelfWelcomeMsgByExternal
(
dto
.
getCorpid
(),
secretSetting
.
getSecretVal
(),
qywxWelcomeMsgDTO
);
}
else
{
...
...
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