记得上下班打卡 | git大法好,push需谨慎
Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
liquidnet-bus-v1
Project
Project
Details
Activity
Releases
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
董敬伟
liquidnet-bus-v1
Commits
d243efbf
Commit
d243efbf
authored
Dec 07, 2021
by
sunyuntian
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改bug
parent
d7a061e5
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
123 additions
and
74 deletions
+123
-74
SweetConstant.java
...a/com/liquidnet/service/sweet/constant/SweetConstant.java
+2
-0
db_maodeng.sql
...t-bus-service/liquidnet-service-sweet/docu/db_maodeng.sql
+3
-15
SweetWechatMaoDengController.java
...ervice/sweet/controller/SweetWechatMaoDengController.java
+8
-24
MaoDengImageHandler.java
.../liquidnet/service/sweet/handler/MaoDengImageHandler.java
+25
-4
TextMsgHandler.java
...a/com/liquidnet/service/sweet/handler/TextMsgHandler.java
+18
-9
SweetWechatMaoDengServiceImpl.java
...ice/sweet/service/impl/SweetWechatMaoDengServiceImpl.java
+50
-0
WechatUsersRedisUtils.java
.../liquidnet/service/sweet/utils/WechatUsersRedisUtils.java
+17
-22
No files found.
liquidnet-bus-api/liquidnet-service-sweet-api/src/main/java/com/liquidnet/service/sweet/constant/SweetConstant.java
View file @
d243efbf
...
@@ -67,5 +67,7 @@ public class SweetConstant {
...
@@ -67,5 +67,7 @@ public class SweetConstant {
public
final
static
String
REDIS_KEY_SWEET_WECHAT_MAODENG_OPEN_POSTER
=
"sweet:maoDeng:open:userId"
;
public
final
static
String
REDIS_KEY_SWEET_WECHAT_MAODENG_OPEN_POSTER
=
"sweet:maoDeng:open:userId"
;
//猫登活动整体
//猫登活动整体
public
final
static
String
REDIS_KEY_SWEET_WECHAT_MAODENG_POSTER
=
"sweet:maoDeng:naneAndImg:userId"
;
public
final
static
String
REDIS_KEY_SWEET_WECHAT_MAODENG_POSTER
=
"sweet:maoDeng:naneAndImg:userId"
;
//猫登活动整体
public
final
static
String
REDIS_KEY_SWEET_WECHAT_MAODENG_POSTER_TRANSFER
=
"sweet:maoDeng:naneAndImg:userId:transfer"
;
}
}
liquidnet-bus-service/liquidnet-service-sweet/docu/db_maodeng.sql
View file @
d243efbf
-- 猫登天空活动
用户传值
表
-- 猫登天空活动表
DROP
TABLE
IF
EXISTS
`sweet_wechat_maodeng`
;
DROP
TABLE
IF
EXISTS
`sweet_wechat_maodeng`
;
CREATE
TABLE
`sweet_wechat_maodeng`
(
CREATE
TABLE
`sweet_wechat_maodeng`
(
`mid`
int
UNSIGNED
NOT
NULL
AUTO_INCREMENT
,
`mid`
int
UNSIGNED
NOT
NULL
AUTO_INCREMENT
,
...
@@ -6,20 +6,8 @@ CREATE TABLE `sweet_wechat_maodeng` (
...
@@ -6,20 +6,8 @@ CREATE TABLE `sweet_wechat_maodeng` (
`user_id`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
NULL
DEFAULT
NULL
,
`user_id`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
NULL
DEFAULT
NULL
,
`text_msg`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
NULL
DEFAULT
NULL
COMMENT
'猫名字'
,
`text_msg`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
NULL
DEFAULT
NULL
COMMENT
'猫名字'
,
`pic_url`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
NULL
DEFAULT
NULL
COMMENT
'图片url'
,
`pic_url`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
NULL
DEFAULT
NULL
COMMENT
'图片url'
,
`
builder_pic`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
NULL
DEFAULT
NULL
COMMENT
'生成图片
'
,
`
img_url`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
NULL
DEFAULT
NULL
COMMENT
'生成的图
'
,
PRIMARY
KEY
(
`mid`
)
USING
BTREE
PRIMARY
KEY
(
`mid`
)
USING
BTREE
)
ENGINE
=
InnoDB
CHARACTER
SET
=
utf8mb4
COLLATE
=
utf8mb4_unicode_ci
ROW_FORMAT
=
DYNAMIC
;
)
ENGINE
=
InnoDB
AUTO_INCREMENT
=
38
CHARACTER
SET
=
utf8mb4
COLLATE
=
utf8mb4_unicode_ci
ROW_FORMAT
=
DYNAMIC
;
SET
FOREIGN_KEY_CHECKS
=
1
;
-- 猫登天空活动生成图片表
DROP
TABLE
IF
EXISTS
`sweet_wechat_maodeng_img`
;
CREATE
TABLE
`sweet_wechat_maodeng_img`
(
`mid`
int
NOT
NULL
AUTO_INCREMENT
,
`mao_id`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
NOT
NULL
,
`user_id`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
NOT
NULL
,
`img_url`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
NOT
NULL
COMMENT
'图url'
,
PRIMARY
KEY
(
`mid`
)
USING
BTREE
)
ENGINE
=
InnoDB
CHARACTER
SET
=
utf8mb4
COLLATE
=
utf8mb4_unicode_ci
ROW_FORMAT
=
Dynamic
;
SET
FOREIGN_KEY_CHECKS
=
1
;
SET
FOREIGN_KEY_CHECKS
=
1
;
\ No newline at end of file
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/controller/SweetWechatMaoDengController.java
View file @
d243efbf
package
com
.
liquidnet
.
service
.
sweet
.
controller
;
package
com
.
liquidnet
.
service
.
sweet
.
controller
;
import
com.liquidnet.commons.lang.util.CollectionUtil
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.commons.lang.util.StringUtil
;
import
com.liquidnet.commons.lang.util.StringUtil
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.base.SqlMapping
;
import
com.liquidnet.service.base.constant.MQConst
;
import
com.liquidnet.service.sweet.service.impl.SweetTestImpl
;
import
com.liquidnet.service.sweet.service.impl.SweetTestImpl
;
import
com.liquidnet.service.sweet.service.impl.SweetWechatMaoDengServiceImpl
;
import
com.liquidnet.service.sweet.utils.QueueUtils
;
import
com.liquidnet.service.sweet.utils.QueueUtils
;
import
com.liquidnet.service.sweet.utils.WechatUsersRedisUtils
;
import
com.liquidnet.service.sweet.utils.WechatUsersRedisUtils
;
import
com.liquidnet.service.sweet.vo.SweetMaoDengVo
;
import
com.liquidnet.service.sweet.vo.SweetMaoDengVo
;
...
@@ -15,10 +12,10 @@ import io.swagger.annotations.ApiImplicitParam;
...
@@ -15,10 +12,10 @@ import io.swagger.annotations.ApiImplicitParam;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.LinkedList
;
@Api
(
tags
=
"活动-猫登活动"
)
@Api
(
tags
=
"活动-猫登活动"
)
@RestController
@RestController
...
@@ -30,13 +27,17 @@ public class SweetWechatMaoDengController {
...
@@ -30,13 +27,17 @@ public class SweetWechatMaoDengController {
private
WechatUsersRedisUtils
redisUtils
;
private
WechatUsersRedisUtils
redisUtils
;
@Autowired
@Autowired
QueueUtils
queueUtils
;
QueueUtils
queueUtils
;
@Autowired
private
SweetWechatMaoDengServiceImpl
sweetWechatMaoDengService
;
@Autowired
private
SweetTestImpl
sweetTestImpl
;
@GetMapping
(
"/backData"
)
@GetMapping
(
"/backData"
)
@ApiOperation
(
"返回文字图片"
)
@ApiOperation
(
"返回文字图片"
)
public
ResponseDto
<
SweetMaoDengVo
>
backDatas
(
String
userId
){
public
ResponseDto
<
SweetMaoDengVo
>
backDatas
(
String
userId
){
SweetMaoDengVo
sweetMaoDeng
=
redisUtils
.
getSweetMaoDeng
Text
(
userId
);
SweetMaoDengVo
sweetMaoDeng
=
redisUtils
.
getSweetMaoDeng
(
userId
);
String
textMsg
=
sweetMaoDeng
.
getTextMsg
();
String
textMsg
=
sweetMaoDeng
.
getTextMsg
();
String
image
=
sweetMaoDeng
.
getPicUrl
();
String
image
=
sweetMaoDeng
.
getPicUrl
();
if
(
StringUtil
.
isEmpty
(
textMsg
)
&&
StringUtil
.
isEmpty
(
image
))
{
if
(
StringUtil
.
isEmpty
(
textMsg
)
&&
StringUtil
.
isEmpty
(
image
))
{
...
@@ -54,24 +55,7 @@ public class SweetWechatMaoDengController {
...
@@ -54,24 +55,7 @@ public class SweetWechatMaoDengController {
})
})
public
ResponseDto
addBuilderImg
(
@RequestParam
(
value
=
"userId"
,
required
=
false
)
String
userId
,
public
ResponseDto
addBuilderImg
(
@RequestParam
(
value
=
"userId"
,
required
=
false
)
String
userId
,
@RequestParam
(
value
=
"imgUrl"
,
required
=
false
)
String
imgUrl
){
@RequestParam
(
value
=
"imgUrl"
,
required
=
false
)
String
imgUrl
){
return
sweetWechatMaoDengService
.
addBuilderImg
(
userId
,
imgUrl
);
SweetMaoDengVo
sweetMaoDeng
=
redisUtils
.
getSweetMaoDeng
(
userId
);
String
textMsg
=
sweetMaoDeng
.
getTextMsg
();
String
picUrl
=
sweetMaoDeng
.
getPicUrl
();
sweetMaoDeng
.
setImgUrl
(
imgUrl
);
redisUtils
.
setSweetMaoDeng
(
sweetMaoDeng
);
if
(
StringUtil
.
isNotEmpty
(
textMsg
)
&&
StringUtil
.
isNotEmpty
(
picUrl
)){
String
maoId
=
IDGenerator
.
nextSnowId
();
//redis队列入库
LinkedList
<
String
>
sqls
=
CollectionUtil
.
linkedListString
();
LinkedList
<
Object
[]>
sqlsDataA
=
CollectionUtil
.
linkedListObjectArr
();
sqls
.
add
(
SqlMapping
.
get
(
"sweet_wechat_maodeng.insert"
));
sqlsDataA
.
add
(
new
Object
[]{
maoId
,
userId
,
textMsg
,
picUrl
,
imgUrl
});
queueUtils
.
sendMsgByRedis
(
MQConst
.
SweetQueue
.
SWEET_WECHAT_MAODENG_TEXT_INSERT
.
getKey
(),
SqlMapping
.
gets
(
sqls
,
sqlsDataA
));
}
return
ResponseDto
.
success
();
}
}
...
...
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/handler/MaoDengImageHandler.java
View file @
d243efbf
package
com
.
liquidnet
.
service
.
sweet
.
handler
;
package
com
.
liquidnet
.
service
.
sweet
.
handler
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.common.third.shumei.util.ShumeiUtil
;
import
com.liquidnet.common.third.shumei.util.ShumeiUtil
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.commons.lang.util.StringUtil
;
import
com.liquidnet.commons.lang.util.StringUtil
;
import
com.liquidnet.service.sweet.config.WechatMaConfigure
;
import
com.liquidnet.service.sweet.utils.QueueUtils
;
import
com.liquidnet.service.sweet.utils.QueueUtils
;
import
com.liquidnet.service.sweet.utils.WechatUsersRedisUtils
;
import
com.liquidnet.service.sweet.utils.WechatUsersRedisUtils
;
import
com.liquidnet.service.sweet.vo.SweetMaoDengVo
;
import
com.liquidnet.service.sweet.vo.SweetMaoDengVo
;
...
@@ -12,6 +14,7 @@ import me.chanjar.weixin.common.error.WxErrorException;
...
@@ -12,6 +14,7 @@ import me.chanjar.weixin.common.error.WxErrorException;
import
me.chanjar.weixin.common.session.WxSessionManager
;
import
me.chanjar.weixin.common.session.WxSessionManager
;
import
me.chanjar.weixin.mp.api.WxMpMessageHandler
;
import
me.chanjar.weixin.mp.api.WxMpMessageHandler
;
import
me.chanjar.weixin.mp.api.WxMpService
;
import
me.chanjar.weixin.mp.api.WxMpService
;
import
me.chanjar.weixin.mp.bean.kefu.WxMpKefuMessage
;
import
me.chanjar.weixin.mp.bean.message.WxMpXmlMessage
;
import
me.chanjar.weixin.mp.bean.message.WxMpXmlMessage
;
import
me.chanjar.weixin.mp.bean.message.WxMpXmlOutMessage
;
import
me.chanjar.weixin.mp.bean.message.WxMpXmlOutMessage
;
import
me.chanjar.weixin.mp.bean.message.WxMpXmlOutTextMessage
;
import
me.chanjar.weixin.mp.bean.message.WxMpXmlOutTextMessage
;
...
@@ -20,6 +23,8 @@ import org.springframework.stereotype.Component;
...
@@ -20,6 +23,8 @@ import org.springframework.stereotype.Component;
import
java.util.Map
;
import
java.util.Map
;
import
static
com
.
liquidnet
.
service
.
sweet
.
constant
.
SweetConstant
.
REDIS_KEY_SWEET_WECHAT_MAODENG_OPEN_POSTER
;
@Component
@Component
@Slf4j
@Slf4j
public
class
MaoDengImageHandler
implements
WxMpMessageHandler
{
public
class
MaoDengImageHandler
implements
WxMpMessageHandler
{
...
@@ -30,6 +35,10 @@ public class MaoDengImageHandler implements WxMpMessageHandler {
...
@@ -30,6 +35,10 @@ public class MaoDengImageHandler implements WxMpMessageHandler {
private
ShumeiUtil
shumeiUtil
;
private
ShumeiUtil
shumeiUtil
;
@Autowired
@Autowired
QueueUtils
queueUtils
;
QueueUtils
queueUtils
;
@Autowired
private
RedisUtil
redisUtil
;
@Autowired
WechatMaConfigure
maConfigure
;
@Override
@Override
public
WxMpXmlOutMessage
handle
(
WxMpXmlMessage
wxMessage
,
Map
<
String
,
Object
>
map
,
WxMpService
wxMpService
,
WxSessionManager
wxSessionManager
)
throws
WxErrorException
{
public
WxMpXmlOutMessage
handle
(
WxMpXmlMessage
wxMessage
,
Map
<
String
,
Object
>
map
,
WxMpService
wxMpService
,
WxSessionManager
wxSessionManager
)
throws
WxErrorException
{
...
@@ -42,10 +51,10 @@ public class MaoDengImageHandler implements WxMpMessageHandler {
...
@@ -42,10 +51,10 @@ public class MaoDengImageHandler implements WxMpMessageHandler {
String
currentUid
=
DateUtil
.
now
().
getTime
()+
""
;
String
currentUid
=
DateUtil
.
now
().
getTime
()+
""
;
if
(!
shumeiUtil
.
checkImage
(
currentUid
,
picUrl
))
{
if
(!
shumeiUtil
.
checkImage
(
currentUid
,
picUrl
))
{
//图片非法 提示,发送文本消息
//图片非法 提示,发送文本消息
WxMpXmlOutTextMessage
build
=
WxMpXmlOutMessage
.
TEXT
().
content
(
"无法识别,
TA是不是还有别的照片呀!
"
)
WxMpXmlOutTextMessage
build
=
WxMpXmlOutMessage
.
TEXT
().
content
(
"无法识别,
你家猫猫还有别的图吗?
"
)
.
fromUser
(
wxMessage
.
getToUser
()).
toUser
(
wxMessage
.
getFromUser
())
.
fromUser
(
wxMessage
.
getToUser
()).
toUser
(
wxMessage
.
getFromUser
())
.
build
();
.
build
();
return
null
;
return
build
;
}
}
SweetMaoDengVo
sweetMaoDengVo
=
SweetMaoDengVo
.
getNew
();
SweetMaoDengVo
sweetMaoDengVo
=
SweetMaoDengVo
.
getNew
();
sweetMaoDengVo
.
setUserId
(
fromUser
);
sweetMaoDengVo
.
setUserId
(
fromUser
);
...
@@ -53,13 +62,25 @@ public class MaoDengImageHandler implements WxMpMessageHandler {
...
@@ -53,13 +62,25 @@ public class MaoDengImageHandler implements WxMpMessageHandler {
String
i
=
redisUtils
.
getSweetMaoDengOpen
(
fromUser
);
String
i
=
redisUtils
.
getSweetMaoDengOpen
(
fromUser
);
if
(
StringUtil
.
isNotEmpty
(
i
)){
if
(
StringUtil
.
isNotEmpty
(
i
)){
//活动已开启 持久化 redis
//活动已开启 持久化 redis
SweetMaoDengVo
sweetMaoDeng
=
redisUtils
.
getSweetMaoDeng
(
fromUser
);
SweetMaoDengVo
sweetMaoDeng
=
redisUtils
.
getSweetMaoDeng
Transfer
(
fromUser
);
if
(
sweetMaoDeng
!=
null
){
if
(
sweetMaoDeng
!=
null
){
String
textMsg
=
sweetMaoDeng
.
getTextMsg
();
String
textMsg
=
sweetMaoDeng
.
getTextMsg
();
sweetMaoDengVo
.
setTextMsg
(
textMsg
);
sweetMaoDengVo
.
setTextMsg
(
textMsg
);
// 发送活动小程序卡片
WxMpKefuMessage
message
=
WxMpKefuMessage
.
MINIPROGRAMPAGE
()
.
appId
(
maConfigure
.
getWxMaAppid
(
4
))
.
pagePath
(
"/pages/index?nickname="
.
concat
(
textMsg
))
.
thumbMediaId
(
"ov08q51In7bXX6tXv7FewxFNN0G78n-pPRsbi3LZbPE"
)
.
title
(
"查看你的猫咪隐藏音乐技能。"
)
.
toUser
(
wxMessage
.
getFromUser
())
.
build
();
wxMpService
.
getKefuService
().
sendKefuMessage
(
message
);
}
}
redisUtils
.
setSweetMaoDeng
(
sweetMaoDengVo
);
//获取过期时间
long
expire
=
redisUtil
.
getExpire
(
REDIS_KEY_SWEET_WECHAT_MAODENG_OPEN_POSTER
+
fromUser
);
redisUtils
.
setSweetMaoDengTransfer
(
sweetMaoDengVo
,
expire
);
return
null
;
return
null
;
}
}
return
null
;
return
null
;
...
...
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/handler/TextMsgHandler.java
View file @
d243efbf
package
com
.
liquidnet
.
service
.
sweet
.
handler
;
package
com
.
liquidnet
.
service
.
sweet
.
handler
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.common.third.shumei.util.ShumeiUtil
;
import
com.liquidnet.common.third.shumei.util.ShumeiUtil
;
import
com.liquidnet.commons.lang.util.CollectionUtil
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.commons.lang.util.StringUtil
;
import
com.liquidnet.commons.lang.util.StringUtil
;
import
com.liquidnet.service.base.SqlMapping
;
import
com.liquidnet.service.base.constant.MQConst
;
import
com.liquidnet.service.sweet.config.WechatMaConfigure
;
import
com.liquidnet.service.sweet.config.WechatMaConfigure
;
import
com.liquidnet.service.sweet.utils.QueueUtils
;
import
com.liquidnet.service.sweet.utils.QueueUtils
;
import
com.liquidnet.service.sweet.utils.WechatUsersRedisUtils
;
import
com.liquidnet.service.sweet.utils.WechatUsersRedisUtils
;
...
@@ -23,9 +23,11 @@ import me.chanjar.weixin.mp.bean.message.WxMpXmlOutTextMessage;
...
@@ -23,9 +23,11 @@ import me.chanjar.weixin.mp.bean.message.WxMpXmlOutTextMessage;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
java.util.LinkedList
;
import
java.util.Map
;
import
java.util.Map
;
import
static
com
.
liquidnet
.
service
.
sweet
.
constant
.
SweetConstant
.
REDIS_KEY_SWEET_WECHAT_MAODENG_OPEN_POSTER
;
/**
/**
* <p>
* <p>
* 文本消息
* 文本消息
...
@@ -46,6 +48,8 @@ public class TextMsgHandler implements WxMpMessageHandler {
...
@@ -46,6 +48,8 @@ public class TextMsgHandler implements WxMpMessageHandler {
private
ShumeiUtil
shumeiUtil
;
private
ShumeiUtil
shumeiUtil
;
@Autowired
@Autowired
QueueUtils
queueUtils
;
QueueUtils
queueUtils
;
@Autowired
private
RedisUtil
redisUtil
;
@Override
@Override
public
WxMpXmlOutMessage
handle
(
WxMpXmlMessage
wxMessage
,
Map
<
String
,
Object
>
context
,
WxMpService
wxMpService
,
public
WxMpXmlOutMessage
handle
(
WxMpXmlMessage
wxMessage
,
Map
<
String
,
Object
>
context
,
WxMpService
wxMpService
,
...
@@ -64,26 +68,31 @@ public class TextMsgHandler implements WxMpMessageHandler {
...
@@ -64,26 +68,31 @@ public class TextMsgHandler implements WxMpMessageHandler {
WxMpXmlOutTextMessage
build
=
WxMpXmlOutMessage
.
TEXT
().
content
(
"无法识别,TA是不是还有别的名字呢!(请勿使用表情等特殊字符)"
)
WxMpXmlOutTextMessage
build
=
WxMpXmlOutMessage
.
TEXT
().
content
(
"无法识别,TA是不是还有别的名字呢!(请勿使用表情等特殊字符)"
)
.
fromUser
(
wxMessage
.
getToUser
()).
toUser
(
wxMessage
.
getFromUser
())
.
fromUser
(
wxMessage
.
getToUser
()).
toUser
(
wxMessage
.
getFromUser
())
.
build
();
.
build
();
return
null
;
return
build
;
}
}
if
(
maoContent
.
equals
(
"猫登天空"
))
{
if
(
maoContent
.
equals
(
"猫登天空"
))
{
redisUtils
.
setSweetMaoDengOpen
(
fromUser
,
10
*
60
);
redisUtils
.
setSweetMaoDengOpen
(
fromUser
,
10
*
60
);
WxMpXmlOutTextMessage
build
=
WxMpXmlOutMessage
.
TEXT
().
content
(
"欢迎关注猫登天空!请输入你的猫猫的名字,并发送一张你的猫猫的照片给服务号。"
)
WxMpXmlOutTextMessage
build
=
WxMpXmlOutMessage
.
TEXT
().
content
(
"没想到吧,你的喵星人主子在玩耍逗喵棒之外,也有一个隐秘的音乐人分身呢!\n"
+
"看看TA到底是怎样一只音乐喵!\n"
+
"参与活动之前,请告诉我们两件事:\n"
+
"猫咪的名字+猫咪的图片!(文字:9个汉字或18个英文字符以内;图片:用横图效果更佳)\n"
)
.
fromUser
(
wxMessage
.
getToUser
()).
toUser
(
wxMessage
.
getFromUser
())
.
fromUser
(
wxMessage
.
getToUser
()).
toUser
(
wxMessage
.
getFromUser
())
.
build
();
.
build
();
return
null
;
return
build
;
}
}
String
i
=
redisUtils
.
getSweetMaoDengOpen
(
fromUser
);
String
i
=
redisUtils
.
getSweetMaoDengOpen
(
fromUser
);
//是否参加了活动
//是否参加了活动
if
(
StringUtil
.
isNotEmpty
(
i
))
{
if
(
StringUtil
.
isNotEmpty
(
i
))
{
SweetMaoDengVo
sweetMaoDeng
=
redisUtils
.
getSweetMaoDeng
(
fromUser
);
SweetMaoDengVo
sweetMaoDeng
=
redisUtils
.
getSweetMaoDeng
Transfer
(
fromUser
);
if
(
sweetMaoDeng
!=
null
)
{
if
(
sweetMaoDeng
!=
null
)
{
String
picUrl
=
sweetMaoDeng
.
getPicUrl
();
String
picUrl
=
sweetMaoDeng
.
getPicUrl
();
sweetMaoDengVo
.
setPicUrl
(
picUrl
);
sweetMaoDengVo
.
setPicUrl
(
picUrl
);
}
}
redisUtils
.
setSweetMaoDeng
(
sweetMaoDengVo
);
//获取过期时间
long
expire
=
redisUtil
.
getExpire
(
REDIS_KEY_SWEET_WECHAT_MAODENG_OPEN_POSTER
+
fromUser
);
redisUtils
.
setSweetMaoDengTransfer
(
sweetMaoDengVo
,
expire
);
return
null
;
return
null
;
}
}
...
...
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/service/impl/SweetWechatMaoDengServiceImpl.java
0 → 100644
View file @
d243efbf
package
com
.
liquidnet
.
service
.
sweet
.
service
.
impl
;
import
com.liquidnet.commons.lang.util.CollectionUtil
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.commons.lang.util.StringUtil
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.base.SqlMapping
;
import
com.liquidnet.service.base.constant.MQConst
;
import
com.liquidnet.service.sweet.config.WechatMaConfigure
;
import
com.liquidnet.service.sweet.utils.QueueUtils
;
import
com.liquidnet.service.sweet.utils.WechatUsersRedisUtils
;
import
com.liquidnet.service.sweet.vo.SweetMaoDengVo
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.LinkedList
;
@Service
public
class
SweetWechatMaoDengServiceImpl
{
@Autowired
private
WechatUsersRedisUtils
redisUtils
;
@Autowired
QueueUtils
queueUtils
;
@Autowired
WechatMaConfigure
maConfigure
;
public
ResponseDto
addBuilderImg
(
String
userId
,
String
imgUrl
){
String
maoId
=
IDGenerator
.
nextSnowId
();
SweetMaoDengVo
sweetMaoDeng
=
redisUtils
.
getSweetMaoDengTransfer
(
userId
);
if
(
sweetMaoDeng
!=
null
){
sweetMaoDeng
.
setImgUrl
(
imgUrl
);
}
String
textMsg
=
sweetMaoDeng
.
getTextMsg
();
String
picUrl
=
sweetMaoDeng
.
getPicUrl
();
sweetMaoDeng
.
setImgUrl
(
imgUrl
);
sweetMaoDeng
.
setMaoId
(
maoId
);
redisUtils
.
setSweetMaoDeng
(
sweetMaoDeng
);
if
(
StringUtil
.
isNotEmpty
(
textMsg
)
&&
StringUtil
.
isNotEmpty
(
picUrl
)){
//redis队列入库
LinkedList
<
String
>
sqls
=
CollectionUtil
.
linkedListString
();
LinkedList
<
Object
[]>
sqlsDataA
=
CollectionUtil
.
linkedListObjectArr
();
sqls
.
add
(
SqlMapping
.
get
(
"sweet_wechat_maodeng.insert"
));
sqlsDataA
.
add
(
new
Object
[]{
maoId
,
userId
,
textMsg
,
picUrl
,
imgUrl
});
queueUtils
.
sendMsgByRedis
(
MQConst
.
SweetQueue
.
SWEET_WECHAT_MAODENG_TEXT_INSERT
.
getKey
(),
SqlMapping
.
gets
(
sqls
,
sqlsDataA
));
}
return
ResponseDto
.
success
();
}
}
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/utils/WechatUsersRedisUtils.java
View file @
d243efbf
...
@@ -99,7 +99,7 @@ public class WechatUsersRedisUtils {
...
@@ -99,7 +99,7 @@ public class WechatUsersRedisUtils {
}
}
}
}
public
SweetMaoDengVo
getSweetMaoDengText
(
String
userId
)
{
/*
public SweetMaoDengVo getSweetMaoDengText(String userId) {
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_MAODENG_POSTER.concat(userId);
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_MAODENG_POSTER.concat(userId);
Object obj = redisUtil.get(redisKey);
Object obj = redisUtil.get(redisKey);
if (null == obj) {
if (null == obj) {
...
@@ -109,18 +109,6 @@ public class WechatUsersRedisUtils {
...
@@ -109,18 +109,6 @@ public class WechatUsersRedisUtils {
return sweetMaoDengVo;
return sweetMaoDengVo;
}
}
}
/*public String getSweetMaoDengImage(String userId) {
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_MAODENG_IMAGE_POSTER.concat(userId);
Object obj = redisUtil.get(redisKey);
if (null == obj) {
return null;
} else {
SweetMaoDengVo sweetMaoDengVo = (SweetMaoDengVo) obj;
String picUrl = sweetMaoDengVo.getPicUrl();
return picUrl;
}
}*/
}*/
public
String
getSweetMaoDengOpen
(
String
fromUser
)
{
public
String
getSweetMaoDengOpen
(
String
fromUser
)
{
...
@@ -149,17 +137,24 @@ public class WechatUsersRedisUtils {
...
@@ -149,17 +137,24 @@ public class WechatUsersRedisUtils {
redisUtil
.
set
(
redisKey
,
sweetMaoDengVo
);
redisUtil
.
set
(
redisKey
,
sweetMaoDengVo
);
}
}
/*public void setSweetMaoDengText(SweetMaoDengVo sweetMaoDengVo) {
//开启猫登天空活动
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_MAODENG_TEXT_POSTER.concat(sweetMaoDengVo.getUserId());
redisUtil.set(redisKey,sweetMaoDengVo);
}
public void setSweetMaoDengImage(SweetMaoDengVo sweetMaoDengVo) {
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_MAODENG_IMAGE_POSTER.concat(sweetMaoDengVo.getUserId());
redisUtil.set(redisKey,sweetMaoDengVo);
}*/
public
void
setSweetMaoDengOpen
(
String
fromUser
,
long
time
)
{
public
void
setSweetMaoDengOpen
(
String
fromUser
,
long
time
)
{
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_WECHAT_MAODENG_OPEN_POSTER
.
concat
(
fromUser
);
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_WECHAT_MAODENG_OPEN_POSTER
.
concat
(
fromUser
);
redisUtil
.
set
(
redisKey
,
"1"
,
time
);
redisUtil
.
set
(
redisKey
,
"1"
,
time
);
}
}
//临时数据中转
public
void
setSweetMaoDengTransfer
(
SweetMaoDengVo
sweetMaoDengVo
,
long
expire
)
{
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_WECHAT_MAODENG_POSTER_TRANSFER
.
concat
(
sweetMaoDengVo
.
getUserId
());
redisUtil
.
set
(
redisKey
,
sweetMaoDengVo
,
expire
);
}
//临时数据中转
public
SweetMaoDengVo
getSweetMaoDengTransfer
(
String
fromUser
)
{
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_WECHAT_MAODENG_POSTER_TRANSFER
.
concat
(
fromUser
);
SweetMaoDengVo
obj
=
(
SweetMaoDengVo
)
redisUtil
.
get
(
redisKey
);
if
(
null
==
obj
)
{
return
null
;
}
else
{
return
obj
;
}
}
}
}
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