记得上下班打卡 | 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
fa7e2b86
Commit
fa7e2b86
authored
Aug 13, 2021
by
周焕
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'pre' into 'master'
Pre See merge request
!12
parents
0f16eee2
768c7610
Changes
47
Show whitespace changes
Inline
Side-by-side
Showing
47 changed files
with
1335 additions
and
169 deletions
+1335
-169
AdamThirdPartInfoVo.java
...om/liquidnet/service/adam/dto/vo/AdamThirdPartInfoVo.java
+14
-0
AdamUserInfoVo.java
...ava/com/liquidnet/service/adam/dto/vo/AdamUserInfoVo.java
+29
-0
MQConst.java
...ain/java/com/liquidnet/service/base/constant/MQConst.java
+4
-1
Swagger2Config.java
...a/com/liquidnet/common/swagger/config/Swagger2Config.java
+26
-2
liquidnet-service-sweet-dev.yml
...s-config/liquidnet-config/liquidnet-service-sweet-dev.yml
+2
-2
AdamUserInfoDto.java
.../java/com/liquidnet/service/adam/dto/AdamUserInfoDto.java
+28
-0
AdamUserMapper.java
...ava/com/liquidnet/service/adam/mapper/AdamUserMapper.java
+29
-0
AdamMemberOrderServiceImpl.java
...service/adam/service/impl/AdamMemberOrderServiceImpl.java
+8
-5
AdamUserInfoServiceImpl.java
...et/service/adam/service/impl/AdamUserInfoServiceImpl.java
+0
-4
sqlmap.properties
...et-service-adam-impl/src/main/resources/sqlmap.properties
+1
-1
ConsumerSweetAnswerRedisStreamConfig.java
...er/kylin/config/ConsumerSweetAnswerRedisStreamConfig.java
+78
-0
ConsumerSweetRemindRedisStreamConfig.java
...er/kylin/config/ConsumerSweetRemindRedisStreamConfig.java
+77
-0
ConsumerSweetUserRedisStreamConfig.java
...umer/kylin/config/ConsumerSweetUserRedisStreamConfig.java
+77
-0
ConsumerSweetAnswerRdsReceiver.java
...nsumer/kylin/receiver/ConsumerSweetAnswerRdsReceiver.java
+17
-0
ConsumerSweetRemindRdsReceiver.java
...nsumer/kylin/receiver/ConsumerSweetRemindRdsReceiver.java
+17
-0
ConsumerSweetUserRdsReceiver.java
...consumer/kylin/receiver/ConsumerSweetUserRdsReceiver.java
+17
-0
DMRdmService.java
...t/service/platform/service/impl/adam/dm/DMRdmService.java
+43
-25
db_sweetsugar_structure.sql
.../liquidnet-service-sweet/docu/db_sweetsugar_structure.sql
+66
-28
redis_queue_create.txt
...rvice/liquidnet-service-sweet/docu/redis_queue_create.txt
+13
-1
SweetConstant.java
...a/com/liquidnet/service/sweet/constant/SweetConstant.java
+2
-3
SweetAnswerController.java
...idnet/service/sweet/controller/SweetAnswerController.java
+52
-0
SweetAppletController.java
...idnet/service/sweet/controller/SweetAppletController.java
+7
-6
SweetAppletMdskController.java
...t/service/sweet/controller/SweetAppletMdskController.java
+12
-11
SweetWechatLoginController.java
.../service/sweet/controller/SweetWechatLoginController.java
+1
-1
SweetWechatTemplateController.java
...rvice/sweet/controller/SweetWechatTemplateController.java
+17
-1
SweetAnswer.java
.../java/com/liquidnet/service/sweet/entity/SweetAnswer.java
+67
-0
SweetRemind.java
.../java/com/liquidnet/service/sweet/entity/SweetRemind.java
+81
-0
SweetWechatUser.java
...a/com/liquidnet/service/sweet/entity/SweetWechatUser.java
+5
-0
SubscribeHandler.java
...com/liquidnet/service/sweet/handler/SubscribeHandler.java
+28
-14
UnsubscribeHandler.java
...m/liquidnet/service/sweet/handler/UnsubscribeHandler.java
+44
-1
SweetAnswerMapper.java
...com/liquidnet/service/sweet/mapper/SweetAnswerMapper.java
+16
-0
SweetRemindMapper.java
...com/liquidnet/service/sweet/mapper/SweetRemindMapper.java
+16
-0
ISweetAnswerService.java
.../liquidnet/service/sweet/service/ISweetAnswerService.java
+21
-0
ISweetRemindService.java
.../liquidnet/service/sweet/service/ISweetRemindService.java
+17
-0
SweetAnswerServiceImpl.java
...et/service/sweet/service/impl/SweetAnswerServiceImpl.java
+70
-0
SweetRemindServiceImpl.java
...et/service/sweet/service/impl/SweetRemindServiceImpl.java
+20
-0
SweetWechatCallbackServiceImpl.java
...ce/sweet/service/impl/SweetWechatCallbackServiceImpl.java
+2
-2
SweetWechatLoginServiceImpl.java
...rvice/sweet/service/impl/SweetWechatLoginServiceImpl.java
+11
-1
SweetWechatTemplateServiceImpl.java
...ce/sweet/service/impl/SweetWechatTemplateServiceImpl.java
+134
-40
ObjectUtil.java
...in/java/com/liquidnet/service/sweet/utils/ObjectUtil.java
+46
-0
RedisDataUtils.java
...ava/com/liquidnet/service/sweet/utils/RedisDataUtils.java
+43
-17
RedisMDSKDataUtils.java
...com/liquidnet/service/sweet/utils/RedisMDSKDataUtils.java
+3
-3
SweetAnswerVo.java
...in/java/com/liquidnet/service/sweet/vo/SweetAnswerVo.java
+55
-0
SweetRemindVo.java
...in/java/com/liquidnet/service/sweet/vo/SweetRemindVo.java
+1
-0
SweetAnswerMapper.xml
.../com/liquidnet/service/sweet/mapper/SweetAnswerMapper.xml
+5
-0
SweetRemindMapper.xml
.../com/liquidnet/service/sweet/mapper/SweetRemindMapper.xml
+5
-0
sqlmap.properties
...uidnet-service-sweet/src/main/resources/sqlmap.properties
+8
-0
No files found.
liquidnet-bus-api/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/dto/vo/AdamThirdPartInfoVo.java
View file @
fa7e2b86
...
@@ -2,6 +2,7 @@ package com.liquidnet.service.adam.dto.vo;
...
@@ -2,6 +2,7 @@ package com.liquidnet.service.adam.dto.vo;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.service.adam.entity.AdamThirdParty
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.Data
;
...
@@ -39,4 +40,17 @@ public class AdamThirdPartInfoVo implements java.io.Serializable, Cloneable {
...
@@ -39,4 +40,17 @@ public class AdamThirdPartInfoVo implements java.io.Serializable, Cloneable {
}
}
return
new
AdamThirdPartInfoVo
();
return
new
AdamThirdPartInfoVo
();
}
}
public
AdamThirdPartInfoVo
copy
(
AdamThirdParty
source
)
{
if
(
null
==
source
)
return
this
;
this
.
setUid
(
source
.
getUid
());
this
.
setOpenId
(
source
.
getOpenId
());
this
.
setNickname
(
source
.
getNickname
());
this
.
setAvatar
(
source
.
getAvatar
());
this
.
setPlatform
(
source
.
getPlatform
());
this
.
setState
(
source
.
getState
());
this
.
setCreatedAt
(
source
.
getCreatedAt
());
this
.
setUpdatedAt
(
source
.
getUpdatedAt
());
return
this
;
}
}
}
liquidnet-bus-api/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/dto/vo/AdamUserInfoVo.java
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
adam
.
dto
.
vo
;
package
com
.
liquidnet
.
service
.
adam
.
dto
.
vo
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.core.type.TypeReference
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.commons.lang.util.SensitizeUtil
;
import
com.liquidnet.commons.lang.util.SensitizeUtil
;
import
com.liquidnet.service.adam.dto.AdamUserInfoDto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.Data
;
...
@@ -67,6 +70,32 @@ public class AdamUserInfoVo implements java.io.Serializable, Cloneable {
...
@@ -67,6 +70,32 @@ public class AdamUserInfoVo implements java.io.Serializable, Cloneable {
return
new
AdamUserInfoVo
();
return
new
AdamUserInfoVo
();
}
}
public
AdamUserInfoVo
copy
(
AdamUserInfoDto
source
)
{
if
(
null
==
source
)
return
this
;
this
.
setUid
(
source
.
getUid
());
this
.
setMobile
(
source
.
getMobile
());
this
.
setPasswd
(
source
.
getPasswd
());
this
.
setNickname
(
source
.
getNickname
());
this
.
setState
(
source
.
getState
());
this
.
setSex
(
JsonUtils
.
fromJson
(
source
.
getSex
(),
AdamTagVo
.
class
));
this
.
setBirthday
(
source
.
getBirthday
());
this
.
setArea
(
source
.
getArea
());
this
.
setSignature
(
source
.
getSignature
());
this
.
setAvatar
(
source
.
getAvatar
());
this
.
setBackground
(
source
.
getBackground
());
this
.
setTagMe
(
JsonUtils
.
fromJson
(
source
.
getTagMe
(),
new
TypeReference
<
List
<
AdamTagParentVo
>>()
{}));
this
.
setCreateAt
(
source
.
getCreateAt
());
this
.
setUpdatedAt
(
source
.
getUpdatedAt
());
this
.
setClosedAt
(
source
.
getClosedAt
());
this
.
setIsComplete
(
source
.
getIsComplete
());
this
.
setRongCloudToken
(
source
.
getRongCloudToken
());
this
.
setQrCode
(
source
.
getQrCode
());
return
this
;
}
public
AdamUserInfoVo
desensitize
()
{
public
AdamUserInfoVo
desensitize
()
{
this
.
setPasswd
(
null
);
this
.
setPasswd
(
null
);
// this.userInfo.setPayCode(null);
// this.userInfo.setPayCode(null);
...
...
liquidnet-bus-common/liquidnet-common-service-base/src/main/java/com/liquidnet/service/base/constant/MQConst.java
View file @
fa7e2b86
...
@@ -74,6 +74,9 @@ public class MQConst {
...
@@ -74,6 +74,9 @@ public class MQConst {
ARTISTS_RELATION
(
"sweet:stream:rk.artists.relation"
,
"group.artists.relation"
,
"用户-关系"
),
ARTISTS_RELATION
(
"sweet:stream:rk.artists.relation"
,
"group.artists.relation"
,
"用户-关系"
),
ARTISTS_RELATION_MDSK
(
"sweet:stream:rk.artists.mdsk.relation"
,
"group.artists.mdsk.relation"
,
"用户-关系"
),
ARTISTS_RELATION_MDSK
(
"sweet:stream:rk.artists.mdsk.relation"
,
"group.artists.mdsk.relation"
,
"用户-关系"
),
LUCK_DRAW
(
"sweet:stream:rk.luckDraw"
,
"group.luckDraw"
,
"用户-抽奖"
),
LUCK_DRAW
(
"sweet:stream:rk.luckDraw"
,
"group.luckDraw"
,
"用户-抽奖"
),
ANSWERINSERT_DRAW
(
"sweet:stream:rk.answerInsert"
,
"group.answerInsert"
,
"答案"
),
SWEET_USER_INSERT_DRAW
(
"sweet:stream:rk.sweetUserInsert"
,
"group.sweetUserInsert"
,
"关注服务号的用户信息"
),
SWEET_REMIND_INSERT_DRAW
(
"sweet:stream:rk.remindInsert"
,
"group.remindInsert"
,
"提醒记录"
),
;
;
private
final
String
key
;
private
final
String
key
;
...
...
liquidnet-bus-common/liquidnet-common-swagger/src/main/java/com/liquidnet/common/swagger/config/Swagger2Config.java
View file @
fa7e2b86
...
@@ -6,24 +6,48 @@ import org.springframework.context.annotation.Bean;
...
@@ -6,24 +6,48 @@ import org.springframework.context.annotation.Bean;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.core.env.Environment
;
import
org.springframework.core.env.Environment
;
import
org.springframework.util.StringUtils
;
import
org.springframework.util.StringUtils
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
springfox.documentation.builders.ApiInfoBuilder
;
import
springfox.documentation.builders.ApiInfoBuilder
;
import
springfox.documentation.builders.PathSelectors
;
import
springfox.documentation.builders.PathSelectors
;
import
springfox.documentation.builders.RequestHandlerSelectors
;
import
springfox.documentation.builders.RequestHandlerSelectors
;
import
springfox.documentation.service.ApiInfo
;
import
springfox.documentation.service.ApiInfo
;
import
springfox.documentation.service.Contact
;
import
springfox.documentation.service.Contact
;
import
springfox.documentation.service.ResponseMessage
;
import
springfox.documentation.spi.DocumentationType
;
import
springfox.documentation.spi.DocumentationType
;
import
springfox.documentation.spring.web.plugins.Docket
;
import
springfox.documentation.spring.web.plugins.Docket
;
import
springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc
;
import
springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc
;
import
java.util.ArrayList
;
import
java.util.List
;
@Configuration
@Configuration
@EnableSwagger2WebMvc
@EnableSwagger2WebMvc
public
class
Swagger2Config
{
public
class
Swagger2Config
{
@Autowired
@Autowired
private
Environment
environment
;
private
Environment
environment
;
List
<
ResponseMessage
>
responseMessageList
=
new
ArrayList
<
ResponseMessage
>()
{
private
static
final
long
serialVersionUID
=
-
5089595359417116101L
;
{
// add(
// new ResponseMessageBuilder().code(HttpStatus.INTERNAL_SERVER_ERROR.value()).message(HttpStatus.INTERNAL_SERVER_ERROR.getReasonPhrase())
// .responseModel(new ModelRef(HttpStatus.INTERNAL_SERVER_ERROR.getReasonPhrase()))
// .build()
// );
}
};
@Bean
@Bean
public
Docket
createRestApi
()
{
public
Docket
createRestApi
()
{
return
new
Docket
(
DocumentationType
.
SWAGGER_2
)
return
new
Docket
(
DocumentationType
.
SWAGGER_2
)
.
globalResponseMessage
(
RequestMethod
.
GET
,
responseMessageList
)
.
globalResponseMessage
(
RequestMethod
.
HEAD
,
responseMessageList
)
.
globalResponseMessage
(
RequestMethod
.
POST
,
responseMessageList
)
.
globalResponseMessage
(
RequestMethod
.
PUT
,
responseMessageList
)
.
globalResponseMessage
(
RequestMethod
.
PATCH
,
responseMessageList
)
.
globalResponseMessage
(
RequestMethod
.
DELETE
,
responseMessageList
)
.
globalResponseMessage
(
RequestMethod
.
OPTIONS
,
responseMessageList
)
.
globalResponseMessage
(
RequestMethod
.
TRACE
,
responseMessageList
)
.
apiInfo
(
apiInfo
())
.
apiInfo
(
apiInfo
())
.
select
()
.
select
()
.
apis
(
RequestHandlerSelectors
.
withMethodAnnotation
(
ApiOperation
.
class
))
.
apis
(
RequestHandlerSelectors
.
withMethodAnnotation
(
ApiOperation
.
class
))
...
@@ -36,9 +60,9 @@ public class Swagger2Config {
...
@@ -36,9 +60,9 @@ public class Swagger2Config {
return
new
ApiInfoBuilder
()
return
new
ApiInfoBuilder
()
.
title
((
StringUtils
.
isEmpty
(
appName
)
?
"service-xxx"
:
appName
.
substring
(
10
))
+
" APIs"
)
.
title
((
StringUtils
.
isEmpty
(
appName
)
?
"service-xxx"
:
appName
.
substring
(
10
))
+
" APIs"
)
.
description
(
appName
)
.
description
(
appName
)
.
contact
(
new
Contact
(
"lightnet"
,
""
,
"**@
lightnet.io
"
))
.
contact
(
new
Contact
(
"lightnet"
,
""
,
"**@
zhengzai.tv
"
))
.
version
(
"all"
)
.
version
(
"all"
)
.
termsOfServiceUrl
(
"xxx.
xxx.
xxx"
)
.
termsOfServiceUrl
(
"xxx.
zhengzai.tv/
xxx"
)
.
build
();
.
build
();
}
}
...
...
liquidnet-bus-config/liquidnet-config/liquidnet-service-sweet-dev.yml
View file @
fa7e2b86
...
@@ -13,9 +13,9 @@ liquidnet:
...
@@ -13,9 +13,9 @@ liquidnet:
file-max-size
:
200MB
file-max-size
:
200MB
level
:
debug
level
:
debug
mysql
:
mysql
:
database-name
:
test
_ln_scene
database-name
:
dev
_ln_scene
mongodb
:
mongodb
:
sslEnabled
:
false
sslEnabled
:
false
database
:
test
_ln_scene
database
:
dev
_ln_scene
#以下为spring各环境个性配置
#以下为spring各环境个性配置
liquidnet-bus-do/liquidnet-service-adam-do/src/main/java/com/liquidnet/service/adam/dto/AdamUserInfoDto.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
adam
.
dto
;
import
lombok.Data
;
import
java.time.LocalDateTime
;
@Data
public
class
AdamUserInfoDto
{
private
String
uid
;
private
String
mobile
;
private
String
passwd
;
// private String payCode;
private
String
nickname
;
private
Integer
state
;
private
String
sex
;
private
String
birthday
;
private
String
area
;
private
String
signature
;
private
String
avatar
;
private
String
background
;
private
String
tagMe
;
private
LocalDateTime
createAt
;
private
LocalDateTime
updatedAt
;
private
LocalDateTime
closedAt
;
private
Integer
isComplete
;
private
String
rongCloudToken
;
private
String
qrCode
;
}
liquidnet-bus-do/liquidnet-service-adam-do/src/main/java/com/liquidnet/service/adam/mapper/AdamUserMapper.java
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
adam
.
mapper
;
package
com
.
liquidnet
.
service
.
adam
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.liquidnet.service.adam.dto.AdamUserInfoDto
;
import
com.liquidnet.service.adam.entity.AdamUser
;
import
com.liquidnet.service.adam.entity.AdamUser
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Select
;
import
java.util.List
;
/**
/**
* <p>
* <p>
...
@@ -15,4 +19,29 @@ import org.apache.ibatis.annotations.Param;
...
@@ -15,4 +19,29 @@ import org.apache.ibatis.annotations.Param;
public
interface
AdamUserMapper
extends
BaseMapper
<
AdamUser
>
{
public
interface
AdamUserMapper
extends
BaseMapper
<
AdamUser
>
{
int
executeForDM
(
@Param
(
"tn"
)
String
tn
);
int
executeForDM
(
@Param
(
"tn"
)
String
tn
);
@Select
({
"select u.mid,"
+
"u.uid,"
+
"u.mobile,"
+
"u.passwd,"
+
"u.state,"
+
"u.is_complete as isComplete,"
+
"u.created_at as createAt,"
+
"u.updated_at as updatedAt,"
+
"u.closed_at as closedAt,"
+
"ui.nickname,"
+
"ui.sex,"
+
"ui.birthday,"
+
"ui.area,"
+
"ui.signature,"
+
"ui.avatar,"
+
"ui.background,"
+
"ui.qr_code as qrCode,"
+
"ui.tag_me as tagMe,"
+
"ui.rong_cloud_token as rongCloudToken "
+
"from adam_user u,adam_user_info ui where u.uid = ui.uid "
+
"order by u.uid "
+
"limit #{rows},#{offset}"
})
List
<
AdamUserInfoDto
>
selectMultiForUserInfoDto
(
@Param
(
"rows"
)
int
rows
,
@Param
(
"offset"
)
int
offset
);
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamMemberOrderServiceImpl.java
View file @
fa7e2b86
...
@@ -229,7 +229,7 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService {
...
@@ -229,7 +229,7 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService {
initUserMemberVo
.
setMemberId
(
handleMemberOrderVo
.
getMemberId
());
initUserMemberVo
.
setMemberId
(
handleMemberOrderVo
.
getMemberId
());
initUserMemberVo
.
setMemberNo
(
memberNo
);
initUserMemberVo
.
setMemberNo
(
memberNo
);
initUserMemberVo
.
setState
(
1
);
// 1-正常,2-失效
initUserMemberVo
.
setState
(
1
);
// 1-正常,2-失效
initUserMemberVo
.
setExpiryAt
(
now
.
plusDays
(
memberPriceVo
.
getDays
()).
with
(
LocalTime
.
MAX
));
initUserMemberVo
.
setExpiryAt
(
now
.
plusDays
(
memberPriceVo
.
getDays
()).
with
Hour
(
23
).
withMinute
(
59
).
withSecond
(
59
));
initUserMemberVo
.
setCreatedAt
(
now
);
initUserMemberVo
.
setCreatedAt
(
now
);
long
s
=
System
.
currentTimeMillis
();
long
s
=
System
.
currentTimeMillis
();
...
@@ -247,7 +247,8 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService {
...
@@ -247,7 +247,8 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService {
AdamUserMemberVo
updateExistUserMemberVo
=
AdamUserMemberVo
.
getNew
();
AdamUserMemberVo
updateExistUserMemberVo
=
AdamUserMemberVo
.
getNew
();
BeanUtils
.
copyProperties
(
existUserMemberVo
,
updateExistUserMemberVo
);
BeanUtils
.
copyProperties
(
existUserMemberVo
,
updateExistUserMemberVo
);
LocalDateTime
currentExpiryAt
=
existUserMemberVo
.
getExpiryAt
();
LocalDateTime
currentExpiryAt
=
existUserMemberVo
.
getExpiryAt
();
LocalDateTime
expiryAt
=
(
currentExpiryAt
.
isBefore
(
now
)
?
now
:
currentExpiryAt
).
plusDays
(
memberPriceVo
.
getDays
()).
with
(
LocalTime
.
MAX
);
LocalDateTime
expiryAt
=
(
currentExpiryAt
.
isBefore
(
now
)
?
now
:
currentExpiryAt
)
.
plusDays
(
memberPriceVo
.
getDays
()).
withHour
(
23
).
withMinute
(
59
).
withSecond
(
59
);
updateExistUserMemberVo
.
setState
(
1
);
updateExistUserMemberVo
.
setState
(
1
);
updateExistUserMemberVo
.
setExpiryAt
(
expiryAt
);
updateExistUserMemberVo
.
setExpiryAt
(
expiryAt
);
...
@@ -307,7 +308,8 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService {
...
@@ -307,7 +308,8 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService {
handleMemberOrderVo
.
getPricePaid
(),
handleMemberOrderVo
.
getMemberName
(),
handleMemberOrderVo
.
getMemberId
(),
handleMemberOrderVo
.
getMemberPriceId
(),
handleMemberOrderVo
.
getPricePaid
(),
handleMemberOrderVo
.
getMemberName
(),
handleMemberOrderVo
.
getMemberId
(),
handleMemberOrderVo
.
getMemberPriceId
(),
handleMemberOrderVo
.
getDays
(),
handleMemberOrderVo
.
getState
(),
handleMemberOrderVo
.
getMemberNo
(),
handleMemberOrderVo
.
getBirthday
(),
handleMemberOrderVo
.
getDays
(),
handleMemberOrderVo
.
getState
(),
handleMemberOrderVo
.
getMemberNo
(),
handleMemberOrderVo
.
getBirthday
(),
handleMemberOrderVo
.
getDeviceFrom
(),
handleMemberOrderVo
.
getPayType
(),
handleMemberOrderVo
.
getPayNo
(),
handleMemberOrderVo
.
getPaymentAt
(),
handleMemberOrderVo
.
getDeviceFrom
(),
handleMemberOrderVo
.
getPayType
(),
handleMemberOrderVo
.
getPayNo
(),
handleMemberOrderVo
.
getPaymentAt
(),
handleMemberOrderVo
.
getCreatedAt
(),
handleMemberOrderVo
.
getClientIp
(),
handleMemberOrderVo
.
getSource
(),
handleMemberOrderVo
.
getVersion
()
handleMemberOrderVo
.
getCreatedAt
(),
handleMemberOrderVo
.
getUpdatedAt
(),
handleMemberOrderVo
.
getClientIp
(),
handleMemberOrderVo
.
getSource
(),
handleMemberOrderVo
.
getVersion
()
});
});
AdamMemberOrderExtVo
memberOrderExtVo
=
handleMemberOrderVo
.
getExtendVo
();
AdamMemberOrderExtVo
memberOrderExtVo
=
handleMemberOrderVo
.
getExtendVo
();
...
@@ -418,7 +420,8 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService {
...
@@ -418,7 +420,8 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService {
updateExistUserMemberVo
.
setState
(
1
);
updateExistUserMemberVo
.
setState
(
1
);
LocalDateTime
expiryAt
=
existUserMemberVo
.
getExpiryAt
();
LocalDateTime
expiryAt
=
existUserMemberVo
.
getExpiryAt
();
updateExistUserMemberVo
.
setExpiryAt
(
updateExistUserMemberVo
.
setExpiryAt
(
(
expiryAt
.
isBefore
(
now
)
?
now
:
expiryAt
).
plusDays
(
initMemberOrderVo
.
getDays
()).
with
(
LocalTime
.
MAX
)
(
expiryAt
.
isBefore
(
now
)
?
now
:
expiryAt
).
plusDays
(
initMemberOrderVo
.
getDays
())
.
withHour
(
23
).
withMinute
(
59
).
withSecond
(
59
)
);
);
toMqSqls
.
add
(
SqlMapping
.
get
(
"adam_user_member.update"
));
toMqSqls
.
add
(
SqlMapping
.
get
(
"adam_user_member.update"
));
upsertUserMemberObjs
.
add
(
new
Object
[]{
upsertUserMemberObjs
.
add
(
new
Object
[]{
...
@@ -431,7 +434,7 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService {
...
@@ -431,7 +434,7 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService {
initUserMemberVo
.
setMemberId
(
memberCodeVo
.
getMemberId
());
initUserMemberVo
.
setMemberId
(
memberCodeVo
.
getMemberId
());
initUserMemberVo
.
setMemberNo
(
memberCodeVo
.
getMemberNo
());
initUserMemberVo
.
setMemberNo
(
memberCodeVo
.
getMemberNo
());
initUserMemberVo
.
setState
(
1
);
initUserMemberVo
.
setState
(
1
);
initUserMemberVo
.
setExpiryAt
(
now
.
plusDays
(
initMemberOrderVo
.
getDays
()).
with
(
LocalTime
.
MAX
));
initUserMemberVo
.
setExpiryAt
(
now
.
plusDays
(
initMemberOrderVo
.
getDays
()).
with
Hour
(
23
).
withMinute
(
59
).
withSecond
(
59
));
initUserMemberVo
.
setCreatedAt
(
now
);
initUserMemberVo
.
setCreatedAt
(
now
);
toMqSqls
.
add
(
SqlMapping
.
get
(
"adam_user_member.add"
));
toMqSqls
.
add
(
SqlMapping
.
get
(
"adam_user_member.add"
));
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamUserInfoServiceImpl.java
View file @
fa7e2b86
...
@@ -44,10 +44,6 @@ public class AdamUserInfoServiceImpl implements IAdamUserInfoService {
...
@@ -44,10 +44,6 @@ public class AdamUserInfoServiceImpl implements IAdamUserInfoService {
@Override
@Override
// @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
// @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public
void
edit
(
AdamUserInfoVo
userInfoVo
)
{
public
void
edit
(
AdamUserInfoVo
userInfoVo
)
{
userInfoVo
.
setCreateAt
(
null
);
Document
updateDoc
=
Document
.
parse
(
JsonUtils
.
toJson
(
userInfoVo
));
updateDoc
.
replace
(
"updatedAt"
,
userInfoVo
.
getUpdatedAt
());
long
s
=
System
.
currentTimeMillis
();
long
s
=
System
.
currentTimeMillis
();
adamRdmService
.
setUserInfoVoByUid
(
userInfoVo
.
getUid
(),
userInfoVo
);
adamRdmService
.
setUserInfoVoByUid
(
userInfoVo
.
getUid
(),
userInfoVo
);
log
.
debug
(
"#RDS耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
log
.
debug
(
"#RDS耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/resources/sqlmap.properties
View file @
fa7e2b86
...
@@ -45,7 +45,7 @@ adam_member_code.add=INSERT INTO adam_member_code (code, `type`, member_id, memb
...
@@ -45,7 +45,7 @@ adam_member_code.add=INSERT INTO adam_member_code (code, `type`, member_id, memb
adam_member_code.exchange
=
UPDATE adam_member_code SET `state`=?, updated_at=?, use_order_no=?, use_uid=?, use_at=? WHERE code=?
adam_member_code.exchange
=
UPDATE adam_member_code SET `state`=?, updated_at=?, use_order_no=?, use_uid=?, use_at=? WHERE code=?
# ----------------------------------------------------
# ----------------------------------------------------
adam_member_order.add
=
INSERT INTO adam_member_order (order_no, `uid`, `mode`, price, price_paid, member_name, member_id, member_price_id, `days`, `state`, member_no, birthday, device_from, pay_type, pay_no, payment_at, created_at,
client_ip, `source`, version) VALUES (
?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
adam_member_order.add
=
INSERT INTO adam_member_order (order_no, `uid`, `mode`, price, price_paid, member_name, member_id, member_price_id, `days`, `state`, member_no, birthday, device_from, pay_type, pay_no, payment_at, created_at,
updated_at, client_ip, `source`, version) VALUES (?,
?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
adam_member_order.update
=
UPDATE adam_member_order SET `state`=?, member_no=?, payment_at=?, updated_at=? WHERE order_no=?
adam_member_order.update
=
UPDATE adam_member_order SET `state`=?, member_no=?, payment_at=?, updated_at=? WHERE order_no=?
# ----------------------------------------------------
# ----------------------------------------------------
...
...
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/config/ConsumerSweetAnswerRedisStreamConfig.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
consumer
.
kylin
.
config
;
import
com.liquidnet.service.consumer.kylin.receiver.ConsumerSweetAnswerRdsReceiver
;
import
com.liquidnet.service.consumer.kylin.receiver.ConsumerSweetSqlUserRelationRdsReceiver
;
import
lombok.var
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.data.redis.connection.RedisConnectionFactory
;
import
org.springframework.data.redis.connection.stream.Consumer
;
import
org.springframework.data.redis.connection.stream.MapRecord
;
import
org.springframework.data.redis.connection.stream.ReadOffset
;
import
org.springframework.data.redis.connection.stream.StreamOffset
;
import
org.springframework.data.redis.stream.StreamMessageListenerContainer
;
import
org.springframework.data.redis.stream.Subscription
;
import
java.time.Duration
;
import
static
com
.
liquidnet
.
service
.
base
.
constant
.
MQConst
.
SweetQueue
.
ANSWERINSERT_DRAW
;
@Configuration
public
class
ConsumerSweetAnswerRedisStreamConfig
{
@Autowired
ConsumerSweetAnswerRdsReceiver
consumerSweetAnswerRdsReceiver
;
private
StreamMessageListenerContainer
<
String
,
MapRecord
<
String
,
String
,
String
>>
buildStreamMessageListenerContainer
(
RedisConnectionFactory
factory
)
{
var
options
=
StreamMessageListenerContainer
.
StreamMessageListenerContainerOptions
.
builder
()
.
pollTimeout
(
Duration
.
ofMillis
(
1
))
.
build
();
return
StreamMessageListenerContainer
.
create
(
factory
,
options
);
}
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private
Subscription
receiveSqlAnswer
(
StreamMessageListenerContainer
<
String
,
MapRecord
<
String
,
String
,
String
>>
listenerContainer
,
int
t
)
{
return
listenerContainer
.
receiveAutoAck
(
Consumer
.
from
(
ANSWERINSERT_DRAW
.
getGroup
(),
ANSWERINSERT_DRAW
.
name
()
+
t
),
StreamOffset
.
create
(
ANSWERINSERT_DRAW
.
getKey
(),
ReadOffset
.
lastConsumed
()),
consumerSweetAnswerRdsReceiver
);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Bean
public
Subscription
subscriptionSqlAnswer
(
RedisConnectionFactory
factory
)
{
var
listenerContainer
=
this
.
buildStreamMessageListenerContainer
(
factory
);
var
subscription
=
receiveSqlAnswer
(
listenerContainer
,
1
);
listenerContainer
.
start
();
return
subscription
;
}
@Bean
public
Subscription
subscriptionSqlAnswer2
(
RedisConnectionFactory
factory
)
{
var
listenerContainer
=
this
.
buildStreamMessageListenerContainer
(
factory
);
var
subscription
=
receiveSqlAnswer
(
listenerContainer
,
1
);
listenerContainer
.
start
();
return
subscription
;
}
@Bean
public
Subscription
subscriptionSqlAnswer3
(
RedisConnectionFactory
factory
)
{
var
listenerContainer
=
this
.
buildStreamMessageListenerContainer
(
factory
);
var
subscription
=
receiveSqlAnswer
(
listenerContainer
,
1
);
listenerContainer
.
start
();
return
subscription
;
}
/* -------------------------------------------------------- | */
}
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/config/ConsumerSweetRemindRedisStreamConfig.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
consumer
.
kylin
.
config
;
import
com.liquidnet.service.consumer.kylin.receiver.ConsumerSweetRemindRdsReceiver
;
import
lombok.var
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.data.redis.connection.RedisConnectionFactory
;
import
org.springframework.data.redis.connection.stream.Consumer
;
import
org.springframework.data.redis.connection.stream.MapRecord
;
import
org.springframework.data.redis.connection.stream.ReadOffset
;
import
org.springframework.data.redis.connection.stream.StreamOffset
;
import
org.springframework.data.redis.stream.StreamMessageListenerContainer
;
import
org.springframework.data.redis.stream.Subscription
;
import
java.time.Duration
;
import
static
com
.
liquidnet
.
service
.
base
.
constant
.
MQConst
.
SweetQueue
.
SWEET_REMIND_INSERT_DRAW
;
@Configuration
public
class
ConsumerSweetRemindRedisStreamConfig
{
@Autowired
ConsumerSweetRemindRdsReceiver
consumerSweetRemindRdsReceiver
;
private
StreamMessageListenerContainer
<
String
,
MapRecord
<
String
,
String
,
String
>>
buildStreamMessageListenerContainer
(
RedisConnectionFactory
factory
)
{
var
options
=
StreamMessageListenerContainer
.
StreamMessageListenerContainerOptions
.
builder
()
.
pollTimeout
(
Duration
.
ofMillis
(
1
))
.
build
();
return
StreamMessageListenerContainer
.
create
(
factory
,
options
);
}
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private
Subscription
receiveSqlRemind
(
StreamMessageListenerContainer
<
String
,
MapRecord
<
String
,
String
,
String
>>
listenerContainer
,
int
t
)
{
return
listenerContainer
.
receiveAutoAck
(
Consumer
.
from
(
SWEET_REMIND_INSERT_DRAW
.
getGroup
(),
SWEET_REMIND_INSERT_DRAW
.
name
()
+
t
),
StreamOffset
.
create
(
SWEET_REMIND_INSERT_DRAW
.
getKey
(),
ReadOffset
.
lastConsumed
()),
consumerSweetRemindRdsReceiver
);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Bean
public
Subscription
subscriptionSqlRemind
(
RedisConnectionFactory
factory
)
{
var
listenerContainer
=
this
.
buildStreamMessageListenerContainer
(
factory
);
var
subscription
=
receiveSqlRemind
(
listenerContainer
,
1
);
listenerContainer
.
start
();
return
subscription
;
}
@Bean
public
Subscription
subscriptionSqlRemind2
(
RedisConnectionFactory
factory
)
{
var
listenerContainer
=
this
.
buildStreamMessageListenerContainer
(
factory
);
var
subscription
=
receiveSqlRemind
(
listenerContainer
,
1
);
listenerContainer
.
start
();
return
subscription
;
}
@Bean
public
Subscription
subscriptionSqlRemind3
(
RedisConnectionFactory
factory
)
{
var
listenerContainer
=
this
.
buildStreamMessageListenerContainer
(
factory
);
var
subscription
=
receiveSqlRemind
(
listenerContainer
,
1
);
listenerContainer
.
start
();
return
subscription
;
}
/* -------------------------------------------------------- | */
}
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/config/ConsumerSweetUserRedisStreamConfig.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
consumer
.
kylin
.
config
;
import
com.liquidnet.service.consumer.kylin.receiver.ConsumerSweetUserRdsReceiver
;
import
lombok.var
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.data.redis.connection.RedisConnectionFactory
;
import
org.springframework.data.redis.connection.stream.Consumer
;
import
org.springframework.data.redis.connection.stream.MapRecord
;
import
org.springframework.data.redis.connection.stream.ReadOffset
;
import
org.springframework.data.redis.connection.stream.StreamOffset
;
import
org.springframework.data.redis.stream.StreamMessageListenerContainer
;
import
org.springframework.data.redis.stream.Subscription
;
import
java.time.Duration
;
import
static
com
.
liquidnet
.
service
.
base
.
constant
.
MQConst
.
SweetQueue
.
SWEET_USER_INSERT_DRAW
;
@Configuration
public
class
ConsumerSweetUserRedisStreamConfig
{
@Autowired
ConsumerSweetUserRdsReceiver
consumerSweetUserRdsReceiver
;
private
StreamMessageListenerContainer
<
String
,
MapRecord
<
String
,
String
,
String
>>
buildStreamMessageListenerContainer
(
RedisConnectionFactory
factory
)
{
var
options
=
StreamMessageListenerContainer
.
StreamMessageListenerContainerOptions
.
builder
()
.
pollTimeout
(
Duration
.
ofMillis
(
1
))
.
build
();
return
StreamMessageListenerContainer
.
create
(
factory
,
options
);
}
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private
Subscription
receiveSqlSweetUser
(
StreamMessageListenerContainer
<
String
,
MapRecord
<
String
,
String
,
String
>>
listenerContainer
,
int
t
)
{
return
listenerContainer
.
receiveAutoAck
(
Consumer
.
from
(
SWEET_USER_INSERT_DRAW
.
getGroup
(),
SWEET_USER_INSERT_DRAW
.
name
()
+
t
),
StreamOffset
.
create
(
SWEET_USER_INSERT_DRAW
.
getKey
(),
ReadOffset
.
lastConsumed
()),
consumerSweetUserRdsReceiver
);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Bean
public
Subscription
subscriptionSqlSweetUser
(
RedisConnectionFactory
factory
)
{
var
listenerContainer
=
this
.
buildStreamMessageListenerContainer
(
factory
);
var
subscription
=
receiveSqlSweetUser
(
listenerContainer
,
1
);
listenerContainer
.
start
();
return
subscription
;
}
@Bean
public
Subscription
subscriptionSqlSweetUser2
(
RedisConnectionFactory
factory
)
{
var
listenerContainer
=
this
.
buildStreamMessageListenerContainer
(
factory
);
var
subscription
=
receiveSqlSweetUser
(
listenerContainer
,
1
);
listenerContainer
.
start
();
return
subscription
;
}
@Bean
public
Subscription
subscriptionSqlSweetUser3
(
RedisConnectionFactory
factory
)
{
var
listenerContainer
=
this
.
buildStreamMessageListenerContainer
(
factory
);
var
subscription
=
receiveSqlSweetUser
(
listenerContainer
,
1
);
listenerContainer
.
start
();
return
subscription
;
}
/* -------------------------------------------------------- | */
}
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/ConsumerSweetAnswerRdsReceiver.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
consumer
.
kylin
.
receiver
;
import
com.liquidnet.service.base.constant.MQConst
;
import
org.springframework.stereotype.Component
;
@Component
public
class
ConsumerSweetAnswerRdsReceiver
extends
AbstractSqlRedisReceiver
{
@Override
protected
String
getRedisStreamKey
()
{
return
MQConst
.
SweetQueue
.
ANSWERINSERT_DRAW
.
getKey
();
}
@Override
protected
String
getRedisStreamGroup
()
{
return
MQConst
.
SweetQueue
.
ANSWERINSERT_DRAW
.
getGroup
();
}
}
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/ConsumerSweetRemindRdsReceiver.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
consumer
.
kylin
.
receiver
;
import
com.liquidnet.service.base.constant.MQConst
;
import
org.springframework.stereotype.Component
;
@Component
public
class
ConsumerSweetRemindRdsReceiver
extends
AbstractSqlRedisReceiver
{
@Override
protected
String
getRedisStreamKey
()
{
return
MQConst
.
SweetQueue
.
SWEET_REMIND_INSERT_DRAW
.
getKey
();
}
@Override
protected
String
getRedisStreamGroup
()
{
return
MQConst
.
SweetQueue
.
SWEET_REMIND_INSERT_DRAW
.
getGroup
();
}
}
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/ConsumerSweetUserRdsReceiver.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
consumer
.
kylin
.
receiver
;
import
com.liquidnet.service.base.constant.MQConst
;
import
org.springframework.stereotype.Component
;
@Component
public
class
ConsumerSweetUserRdsReceiver
extends
AbstractSqlRedisReceiver
{
@Override
protected
String
getRedisStreamKey
()
{
return
MQConst
.
SweetQueue
.
SWEET_USER_INSERT_DRAW
.
getKey
();
}
@Override
protected
String
getRedisStreamGroup
()
{
return
MQConst
.
SweetQueue
.
SWEET_USER_INSERT_DRAW
.
getGroup
();
}
}
liquidnet-bus-service/liquidnet-service-platform/liquidnet-service-platform-impl/src/main/java/com/liquidnet/service/platform/service/impl/adam/dm/DMRdmService.java
View file @
fa7e2b86
...
@@ -55,6 +55,7 @@ public class DMRdmService {
...
@@ -55,6 +55,7 @@ public class DMRdmService {
public
String
getUidByMobile
(
String
mobile
)
{
public
String
getUidByMobile
(
String
mobile
)
{
String
key
=
AdamRedisConst
.
IDENTITY_MOBILE
.
concat
(
mobile
);
String
key
=
AdamRedisConst
.
IDENTITY_MOBILE
.
concat
(
mobile
);
long
s
=
System
.
currentTimeMillis
();
String
val
=
(
String
)
redisUtil
.
get
(
key
);
String
val
=
(
String
)
redisUtil
.
get
(
key
);
// if (StringUtils.isEmpty(val)) {
// if (StringUtils.isEmpty(val)) {
// Query query = Query.query(Criteria.where("mobile").is(mobile).and("state").is(1));
// Query query = Query.query(Criteria.where("mobile").is(mobile).and("state").is(1));
...
@@ -67,6 +68,7 @@ public class DMRdmService {
...
@@ -67,6 +68,7 @@ public class DMRdmService {
// redisUtil.set(key, vo.getUid());
// redisUtil.set(key, vo.getUid());
// }
// }
// }
// }
log
.
debug
(
"#RDM耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
return
val
;
return
val
;
}
}
...
@@ -80,6 +82,7 @@ public class DMRdmService {
...
@@ -80,6 +82,7 @@ public class DMRdmService {
public
String
getUidByPlatformOpenId
(
String
platform
,
String
openId
)
{
public
String
getUidByPlatformOpenId
(
String
platform
,
String
openId
)
{
String
key
=
AdamRedisConst
.
IDENTITY_THIRD_PARTY
+
platform
+
":"
+
openId
;
String
key
=
AdamRedisConst
.
IDENTITY_THIRD_PARTY
+
platform
+
":"
+
openId
;
long
s
=
System
.
currentTimeMillis
();
String
val
=
(
String
)
redisUtil
.
get
(
key
);
String
val
=
(
String
)
redisUtil
.
get
(
key
);
// if (StringUtils.isEmpty(val)) {
// if (StringUtils.isEmpty(val)) {
// Query query = Query.query(Criteria.where("openId").is(openId).and("platform").is(platform).and("state").is(1));
// Query query = Query.query(Criteria.where("openId").is(openId).and("platform").is(platform).and("state").is(1));
...
@@ -92,6 +95,7 @@ public class DMRdmService {
...
@@ -92,6 +95,7 @@ public class DMRdmService {
// redisUtil.set(key, vo.getUid());
// redisUtil.set(key, vo.getUid());
// }
// }
// }
// }
log
.
debug
(
"#RDM耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
return
val
;
return
val
;
}
}
...
@@ -107,6 +111,7 @@ public class DMRdmService {
...
@@ -107,6 +111,7 @@ public class DMRdmService {
public
AdamUserInfoVo
getUserInfoVoByUid
(
String
uid
)
{
public
AdamUserInfoVo
getUserInfoVoByUid
(
String
uid
)
{
String
rk
=
AdamRedisConst
.
INFO_USER
.
concat
(
uid
);
String
rk
=
AdamRedisConst
.
INFO_USER
.
concat
(
uid
);
long
s
=
System
.
currentTimeMillis
();
AdamUserInfoVo
vo
=
(
AdamUserInfoVo
)
redisUtil
.
get
(
rk
);
AdamUserInfoVo
vo
=
(
AdamUserInfoVo
)
redisUtil
.
get
(
rk
);
// if (null == vo) {
// if (null == vo) {
// s = System.currentTimeMillis();
// s = System.currentTimeMillis();
...
@@ -116,6 +121,7 @@ public class DMRdmService {
...
@@ -116,6 +121,7 @@ public class DMRdmService {
//
//
// if (null != vo) redisUtil.set(rk, vo);
// if (null != vo) redisUtil.set(rk, vo);
// }
// }
log
.
debug
(
"#RDM耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
return
vo
;
return
vo
;
}
}
...
@@ -131,6 +137,7 @@ public class DMRdmService {
...
@@ -131,6 +137,7 @@ public class DMRdmService {
public
AdamRealInfoVo
getRealInfoVoByUid
(
String
uid
)
{
public
AdamRealInfoVo
getRealInfoVoByUid
(
String
uid
)
{
String
rk
=
AdamRedisConst
.
INFO_REAL_NAME
.
concat
(
uid
);
String
rk
=
AdamRedisConst
.
INFO_REAL_NAME
.
concat
(
uid
);
long
s
=
System
.
currentTimeMillis
();
AdamRealInfoVo
vo
=
(
AdamRealInfoVo
)
redisUtil
.
get
(
rk
);
AdamRealInfoVo
vo
=
(
AdamRealInfoVo
)
redisUtil
.
get
(
rk
);
// if (null == vo) {
// if (null == vo) {
// s = System.currentTimeMillis();
// s = System.currentTimeMillis();
...
@@ -144,6 +151,7 @@ public class DMRdmService {
...
@@ -144,6 +151,7 @@ public class DMRdmService {
vo
.
setName
(
SensitizeUtil
.
chineseName
(
vo
.
getName
()));
vo
.
setName
(
SensitizeUtil
.
chineseName
(
vo
.
getName
()));
vo
.
setIdCard
(
SensitizeUtil
.
custom
(
vo
.
getIdCard
(),
3
,
2
));
vo
.
setIdCard
(
SensitizeUtil
.
custom
(
vo
.
getIdCard
(),
3
,
2
));
}
}
log
.
debug
(
"#RDM耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
return
vo
;
return
vo
;
}
}
...
@@ -166,6 +174,7 @@ public class DMRdmService {
...
@@ -166,6 +174,7 @@ public class DMRdmService {
public
List
<
AdamThirdPartInfoVo
>
getThirdPartVoListByUid
(
String
uid
)
{
public
List
<
AdamThirdPartInfoVo
>
getThirdPartVoListByUid
(
String
uid
)
{
String
rk
=
AdamRedisConst
.
INFO_THIRD_PARTY
.
concat
(
uid
);
String
rk
=
AdamRedisConst
.
INFO_THIRD_PARTY
.
concat
(
uid
);
long
s
=
System
.
currentTimeMillis
();
List
<
AdamThirdPartInfoVo
>
thirdPartInfoVos
=
(
List
<
AdamThirdPartInfoVo
>)
redisUtil
.
get
(
rk
);
List
<
AdamThirdPartInfoVo
>
thirdPartInfoVos
=
(
List
<
AdamThirdPartInfoVo
>)
redisUtil
.
get
(
rk
);
// if (CollectionUtils.isEmpty(thirdPartInfoVos)) {
// if (CollectionUtils.isEmpty(thirdPartInfoVos)) {
// s = System.currentTimeMillis();
// s = System.currentTimeMillis();
...
@@ -175,6 +184,7 @@ public class DMRdmService {
...
@@ -175,6 +184,7 @@ public class DMRdmService {
//
//
// if (!CollectionUtils.isEmpty(thirdPartInfoVos)) redisUtil.set(rk, thirdPartInfoVos);
// if (!CollectionUtils.isEmpty(thirdPartInfoVos)) redisUtil.set(rk, thirdPartInfoVos);
// }
// }
log
.
debug
(
"#RDM耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
return
thirdPartInfoVos
;
return
thirdPartInfoVos
;
}
}
...
@@ -196,10 +206,7 @@ public class DMRdmService {
...
@@ -196,10 +206,7 @@ public class DMRdmService {
public
AdamThirdPartInfoVo
getThirdPartVoByUidPlatform
(
List
<
AdamThirdPartInfoVo
>
vos
,
String
platform
)
{
public
AdamThirdPartInfoVo
getThirdPartVoByUidPlatform
(
List
<
AdamThirdPartInfoVo
>
vos
,
String
platform
)
{
if
(!
CollectionUtils
.
isEmpty
(
vos
))
{
if
(!
CollectionUtils
.
isEmpty
(
vos
))
{
Optional
<
AdamThirdPartInfoVo
>
any
=
vos
.
stream
().
filter
(
r
->
r
.
getPlatform
().
equals
(
platform
)).
findAny
();
return
vos
.
stream
().
filter
(
r
->
r
.
getPlatform
().
equals
(
platform
)).
findAny
().
orElse
(
null
);
if
(
any
.
isPresent
())
{
return
any
.
get
();
}
}
}
return
null
;
return
null
;
}
}
...
@@ -209,10 +216,7 @@ public class DMRdmService {
...
@@ -209,10 +216,7 @@ public class DMRdmService {
if
(!
CollectionUtils
.
isEmpty
(
vos
))
{
if
(!
CollectionUtils
.
isEmpty
(
vos
))
{
// for (AdamThirdPartInfoVo r : vos)
// for (AdamThirdPartInfoVo r : vos)
// if (platform.equals(r.getPlatform())) return r;
// if (platform.equals(r.getPlatform())) return r;
Optional
<
AdamThirdPartInfoVo
>
any
=
vos
.
stream
().
filter
(
r
->
r
.
getPlatform
().
equals
(
platform
)).
findAny
();
return
vos
.
stream
().
filter
(
r
->
r
.
getPlatform
().
equals
(
platform
)).
findAny
().
orElse
(
null
);
if
(
any
.
isPresent
())
{
return
any
.
get
();
}
}
}
return
null
;
return
null
;
}
}
...
@@ -229,6 +233,7 @@ public class DMRdmService {
...
@@ -229,6 +233,7 @@ public class DMRdmService {
public
List
<
AdamEntersVo
>
getEntersVoByUid
(
String
uid
)
{
public
List
<
AdamEntersVo
>
getEntersVoByUid
(
String
uid
)
{
String
rk
=
AdamRedisConst
.
INFO_ENTERS
.
concat
(
uid
);
String
rk
=
AdamRedisConst
.
INFO_ENTERS
.
concat
(
uid
);
long
s
=
System
.
currentTimeMillis
();
ArrayList
<
AdamEntersVo
>
vos
=
(
ArrayList
<
AdamEntersVo
>)
redisUtil
.
get
(
rk
);
ArrayList
<
AdamEntersVo
>
vos
=
(
ArrayList
<
AdamEntersVo
>)
redisUtil
.
get
(
rk
);
// if (CollectionUtils.isEmpty(vos)) {
// if (CollectionUtils.isEmpty(vos)) {
// s = System.currentTimeMillis();
// s = System.currentTimeMillis();
...
@@ -240,6 +245,7 @@ public class DMRdmService {
...
@@ -240,6 +245,7 @@ public class DMRdmService {
//
//
// if (!CollectionUtils.isEmpty(vos)) redisUtil.set(rk, vos);
// if (!CollectionUtils.isEmpty(vos)) redisUtil.set(rk, vos);
// }
// }
log
.
debug
(
"#RDM耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
return
vos
;
return
vos
;
}
}
...
@@ -260,16 +266,18 @@ public class DMRdmService {
...
@@ -260,16 +266,18 @@ public class DMRdmService {
}
}
public
AdamEntersVo
getEntersVoByUidEntersId
(
List
<
AdamEntersVo
>
vos
,
String
entersId
)
{
public
AdamEntersVo
getEntersVoByUidEntersId
(
List
<
AdamEntersVo
>
vos
,
String
entersId
)
{
return
vos
.
stream
().
filter
(
r
->
r
.
getEntersId
().
equals
(
entersId
)).
findAny
().
orElse
(
null
);
return
CollectionUtils
.
isEmpty
(
vos
)
?
null
:
vos
.
stream
().
filter
(
r
->
r
.
getEntersId
().
equals
(
entersId
)).
findAny
().
orElse
(
null
);
}
}
public
AdamEntersVo
getEntersVoByUidEntersId
(
String
uid
,
String
entersId
)
{
public
AdamEntersVo
getEntersVoByUidEntersId
(
String
uid
,
String
entersId
)
{
return
this
.
getEntersVoByUid
(
uid
).
stream
().
filter
(
r
->
r
.
getEntersId
().
equals
(
entersId
)).
findAny
().
orElse
(
null
);
List
<
AdamEntersVo
>
vos
=
this
.
getEntersVoByUid
(
uid
);
return
CollectionUtils
.
isEmpty
(
vos
)
?
null
:
vos
.
stream
().
filter
(
r
->
r
.
getEntersId
().
equals
(
entersId
)).
findAny
().
orElse
(
null
);
}
}
public
List
<
AdamEntersVo
>
getEntersVoByUidEntersIds
(
String
uid
,
String
...
entersIds
)
{
public
List
<
AdamEntersVo
>
getEntersVoByUidEntersIds
(
String
uid
,
String
...
entersIds
)
{
List
<
String
>
entersIdList
=
Arrays
.
asList
(
entersIds
);
List
<
String
>
entersIdList
=
Arrays
.
asList
(
entersIds
);
return
this
.
getEntersVoByUid
(
uid
).
stream
().
filter
(
r
->
entersIdList
.
contains
(
r
.
getEntersId
())).
collect
(
Collectors
.
toList
());
List
<
AdamEntersVo
>
vos
=
this
.
getEntersVoByUid
(
uid
);
return
CollectionUtils
.
isEmpty
(
vos
)
?
null
:
vos
.
stream
().
filter
(
r
->
entersIdList
.
contains
(
r
.
getEntersId
())).
collect
(
Collectors
.
toList
());
}
}
public
void
delEntersVoByUid
(
String
uid
)
{
public
void
delEntersVoByUid
(
String
uid
)
{
...
@@ -284,6 +292,7 @@ public class DMRdmService {
...
@@ -284,6 +292,7 @@ public class DMRdmService {
public
List
<
AdamAddressesVo
>
getAddressesVoByUid
(
String
uid
)
{
public
List
<
AdamAddressesVo
>
getAddressesVoByUid
(
String
uid
)
{
String
rk
=
AdamRedisConst
.
INFO_ADDRESSES
.
concat
(
uid
);
String
rk
=
AdamRedisConst
.
INFO_ADDRESSES
.
concat
(
uid
);
long
s
=
System
.
currentTimeMillis
();
List
<
AdamAddressesVo
>
vos
=
(
List
<
AdamAddressesVo
>)
redisUtil
.
get
(
rk
);
List
<
AdamAddressesVo
>
vos
=
(
List
<
AdamAddressesVo
>)
redisUtil
.
get
(
rk
);
// if (CollectionUtils.isEmpty(vos)) {
// if (CollectionUtils.isEmpty(vos)) {
// s = System.currentTimeMillis();
// s = System.currentTimeMillis();
...
@@ -295,6 +304,7 @@ public class DMRdmService {
...
@@ -295,6 +304,7 @@ public class DMRdmService {
//
//
// if (!CollectionUtils.isEmpty(vos)) redisUtil.set(rk, vos);
// if (!CollectionUtils.isEmpty(vos)) redisUtil.set(rk, vos);
// }
// }
log
.
debug
(
"#RDM耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
return
vos
;
return
vos
;
}
}
...
@@ -315,11 +325,12 @@ public class DMRdmService {
...
@@ -315,11 +325,12 @@ public class DMRdmService {
}
}
public
AdamAddressesVo
getAddressesVoByUidAddressesId
(
List
<
AdamAddressesVo
>
vos
,
String
addressesId
)
{
public
AdamAddressesVo
getAddressesVoByUidAddressesId
(
List
<
AdamAddressesVo
>
vos
,
String
addressesId
)
{
return
vos
.
stream
().
filter
(
r
->
r
.
getAddressesId
().
equals
(
addressesId
)).
findAny
().
orElse
(
null
);
return
CollectionUtils
.
isEmpty
(
vos
)
?
null
:
vos
.
stream
().
filter
(
r
->
r
.
getAddressesId
().
equals
(
addressesId
)).
findAny
().
orElse
(
null
);
}
}
public
AdamAddressesVo
getAddressesVoByUidAddressesId
(
String
uid
,
String
addressesId
)
{
public
AdamAddressesVo
getAddressesVoByUidAddressesId
(
String
uid
,
String
addressesId
)
{
return
this
.
getAddressesVoByUid
(
uid
).
stream
().
filter
(
r
->
r
.
getAddressesId
().
equals
(
addressesId
)).
findAny
().
orElse
(
null
);
List
<
AdamAddressesVo
>
vos
=
this
.
getAddressesVoByUid
(
uid
);
return
CollectionUtils
.
isEmpty
(
vos
)
?
null
:
vos
.
stream
().
filter
(
r
->
r
.
getAddressesId
().
equals
(
addressesId
)).
findAny
().
orElse
(
null
);
}
}
public
void
delAddressesVoByUid
(
String
uid
)
{
public
void
delAddressesVoByUid
(
String
uid
)
{
...
@@ -344,6 +355,7 @@ public class DMRdmService {
...
@@ -344,6 +355,7 @@ public class DMRdmService {
public
AdamUserMemberVo
getUserMemberVoByUid
(
String
uid
)
{
public
AdamUserMemberVo
getUserMemberVoByUid
(
String
uid
)
{
String
rk
=
AdamRedisConst
.
INFO_USER_MEMBER
.
concat
(
uid
);
String
rk
=
AdamRedisConst
.
INFO_USER_MEMBER
.
concat
(
uid
);
long
s
=
System
.
currentTimeMillis
();
AdamUserMemberVo
vo
=
(
AdamUserMemberVo
)
redisUtil
.
get
(
rk
);
AdamUserMemberVo
vo
=
(
AdamUserMemberVo
)
redisUtil
.
get
(
rk
);
// if (null == vo) {
// if (null == vo) {
// s = System.currentTimeMillis();
// s = System.currentTimeMillis();
...
@@ -355,6 +367,7 @@ public class DMRdmService {
...
@@ -355,6 +367,7 @@ public class DMRdmService {
if
(
null
!=
vo
)
{
if
(
null
!=
vo
)
{
vo
.
setState
(
vo
.
getState
()
==
1
?
(
vo
.
getExpiryAt
().
isAfter
(
LocalDateTime
.
now
())
?
1
:
2
)
:
vo
.
getState
());
vo
.
setState
(
vo
.
getState
()
==
1
?
(
vo
.
getExpiryAt
().
isAfter
(
LocalDateTime
.
now
())
?
1
:
2
)
:
vo
.
getState
());
}
}
log
.
debug
(
"#RDM耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
return
vo
;
return
vo
;
}
}
...
@@ -369,6 +382,7 @@ public class DMRdmService {
...
@@ -369,6 +382,7 @@ public class DMRdmService {
}
}
public
AdamMemberSimpleVo
getMemberSimpleVo
()
{
public
AdamMemberSimpleVo
getMemberSimpleVo
()
{
long
s
=
System
.
currentTimeMillis
();
AdamMemberSimpleVo
vo
=
(
AdamMemberSimpleVo
)
redisUtil
.
get
(
AdamRedisConst
.
INFO_MEMBER_SIMPLE
);
AdamMemberSimpleVo
vo
=
(
AdamMemberSimpleVo
)
redisUtil
.
get
(
AdamRedisConst
.
INFO_MEMBER_SIMPLE
);
// if (null == vo) {
// if (null == vo) {
// long s = System.currentTimeMillis();
// long s = System.currentTimeMillis();
...
@@ -382,6 +396,7 @@ public class DMRdmService {
...
@@ -382,6 +396,7 @@ public class DMRdmService {
//
//
// if (null != vo) redisUtil.set(AdamRedisConst.INFO_MEMBER_SIMPLE, vo);
// if (null != vo) redisUtil.set(AdamRedisConst.INFO_MEMBER_SIMPLE, vo);
// }
// }
log
.
debug
(
"#RDM耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
return
vo
;
return
vo
;
}
}
...
@@ -393,6 +408,7 @@ public class DMRdmService {
...
@@ -393,6 +408,7 @@ public class DMRdmService {
public
AdamMemberVo
getMemberVoByMemberId
(
String
memberId
)
{
public
AdamMemberVo
getMemberVoByMemberId
(
String
memberId
)
{
String
key
=
AdamRedisConst
.
INFO_MEMBER_CATEGORY
.
concat
(
memberId
);
String
key
=
AdamRedisConst
.
INFO_MEMBER_CATEGORY
.
concat
(
memberId
);
long
s
=
System
.
currentTimeMillis
();
AdamMemberVo
vo
=
(
AdamMemberVo
)
redisUtil
.
get
(
key
);
AdamMemberVo
vo
=
(
AdamMemberVo
)
redisUtil
.
get
(
key
);
// if (null == vo) {
// if (null == vo) {
// s = System.currentTimeMillis();
// s = System.currentTimeMillis();
...
@@ -403,6 +419,7 @@ public class DMRdmService {
...
@@ -403,6 +419,7 @@ public class DMRdmService {
// log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
// log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
// if (null != vo) redisUtil.set(key, vo);
// if (null != vo) redisUtil.set(key, vo);
// }
// }
log
.
debug
(
"#RDM耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
return
vo
;
return
vo
;
}
}
...
@@ -418,6 +435,7 @@ public class DMRdmService {
...
@@ -418,6 +435,7 @@ public class DMRdmService {
public
List
<
AdamMemberPriceVo
>
getMemberPriceVoByMemberId
(
String
memberId
)
{
public
List
<
AdamMemberPriceVo
>
getMemberPriceVoByMemberId
(
String
memberId
)
{
String
key
=
AdamRedisConst
.
INFO_MEMBER_PRICE
.
concat
(
memberId
);
String
key
=
AdamRedisConst
.
INFO_MEMBER_PRICE
.
concat
(
memberId
);
long
s
=
System
.
currentTimeMillis
();
List
<
AdamMemberPriceVo
>
vos
=
(
List
<
AdamMemberPriceVo
>)
redisUtil
.
get
(
key
);
List
<
AdamMemberPriceVo
>
vos
=
(
List
<
AdamMemberPriceVo
>)
redisUtil
.
get
(
key
);
// if (CollectionUtils.isEmpty(vos)) {
// if (CollectionUtils.isEmpty(vos)) {
// s = System.currentTimeMillis();
// s = System.currentTimeMillis();
...
@@ -429,23 +447,13 @@ public class DMRdmService {
...
@@ -429,23 +447,13 @@ public class DMRdmService {
//
//
// if (!CollectionUtils.isEmpty(vos)) redisUtil.set(key, vos);
// if (!CollectionUtils.isEmpty(vos)) redisUtil.set(key, vos);
// }
// }
log
.
debug
(
"#RDM耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
return
vos
;
return
vos
;
}
}
public
AdamMemberPriceVo
getMemberPriceVoByPriceId
(
String
memberId
,
String
memberPriceId
)
{
public
AdamMemberPriceVo
getMemberPriceVoByPriceId
(
String
memberId
,
String
memberPriceId
)
{
List
<
AdamMemberPriceVo
>
vos
=
this
.
getMemberPriceVoByMemberId
(
memberId
);
List
<
AdamMemberPriceVo
>
vos
=
this
.
getMemberPriceVoByMemberId
(
memberId
);
if
(!
CollectionUtils
.
isEmpty
(
vos
))
{
return
CollectionUtils
.
isEmpty
(
vos
)
?
null
:
vos
.
stream
().
filter
(
r
->
r
.
getMemberPriceId
().
equals
(
memberPriceId
)).
findAny
().
orElse
(
null
);
// for (AdamMemberPriceVo r : vos) {
// if (memberPriceId.equals(r.getMemberPriceId())) {
// return r;
// }
// }
Optional
<
AdamMemberPriceVo
>
any
=
vos
.
stream
().
filter
(
r
->
r
.
getMemberPriceId
().
equals
(
memberPriceId
)).
findAny
();
if
(
any
.
isPresent
())
{
return
any
.
get
();
}
}
return
null
;
}
}
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | <MEMBER_ID, List<AdamMemberRightsVo>> */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | <MEMBER_ID, List<AdamMemberRightsVo>> */
...
@@ -491,7 +499,9 @@ public class DMRdmService {
...
@@ -491,7 +499,9 @@ public class DMRdmService {
}
}
public
ArrayList
<
AdamMemberOrderVo
>
getMemberOrderVosByUid
(
String
uid
)
{
public
ArrayList
<
AdamMemberOrderVo
>
getMemberOrderVosByUid
(
String
uid
)
{
long
s
=
System
.
currentTimeMillis
();
ArrayList
<
AdamMemberOrderVo
>
vos
=
(
ArrayList
<
AdamMemberOrderVo
>)
redisUtil
.
get
(
AdamRedisConst
.
INFO_MEMBER_ORDER
+
uid
);
ArrayList
<
AdamMemberOrderVo
>
vos
=
(
ArrayList
<
AdamMemberOrderVo
>)
redisUtil
.
get
(
AdamRedisConst
.
INFO_MEMBER_ORDER
+
uid
);
log
.
debug
(
"#RDM耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
return
vos
;
return
vos
;
}
}
...
@@ -511,6 +521,10 @@ public class DMRdmService {
...
@@ -511,6 +521,10 @@ public class DMRdmService {
return
redisUtil
.
set
(
AdamRedisConst
.
INFO_MEMBER_ORDER
+
uid
,
vos
);
return
redisUtil
.
set
(
AdamRedisConst
.
INFO_MEMBER_ORDER
+
uid
,
vos
);
}
}
public
AdamMemberOrderVo
getMemberOrderVoByOrderNo
(
List
<
AdamMemberOrderVo
>
vos
,
String
orderNo
)
{
return
CollectionUtils
.
isEmpty
(
vos
)
?
null
:
vos
.
stream
().
filter
(
r
->
r
.
getOrderNo
().
equals
(
orderNo
)).
findAny
().
orElse
(
null
);
}
public
void
delMemberOrderVoByUid
(
String
uid
)
{
public
void
delMemberOrderVoByUid
(
String
uid
)
{
redisUtil
.
del
(
AdamRedisConst
.
INFO_MEMBER_ORDER
+
uid
);
redisUtil
.
del
(
AdamRedisConst
.
INFO_MEMBER_ORDER
+
uid
);
}
}
...
@@ -523,6 +537,7 @@ public class DMRdmService {
...
@@ -523,6 +537,7 @@ public class DMRdmService {
public
AdamMemberOrderVo
getShotMemberOrderVoByOrderNo
(
String
orderNo
)
{
public
AdamMemberOrderVo
getShotMemberOrderVoByOrderNo
(
String
orderNo
)
{
String
key
=
AdamRedisConst
.
SHOT_MEMBER_ORDER
+
orderNo
;
String
key
=
AdamRedisConst
.
SHOT_MEMBER_ORDER
+
orderNo
;
long
s
=
System
.
currentTimeMillis
();
AdamMemberOrderVo
vo
=
(
AdamMemberOrderVo
)
redisUtil
.
get
(
key
);
AdamMemberOrderVo
vo
=
(
AdamMemberOrderVo
)
redisUtil
.
get
(
key
);
// if (null == vo) {
// if (null == vo) {
// s = System.currentTimeMillis();
// s = System.currentTimeMillis();
...
@@ -534,6 +549,7 @@ public class DMRdmService {
...
@@ -534,6 +549,7 @@ public class DMRdmService {
//
//
// if (null != vo) redisUtil.set(key, vo);
// if (null != vo) redisUtil.set(key, vo);
// }
// }
log
.
debug
(
"#RDM耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
return
vo
;
return
vo
;
}
}
...
@@ -564,6 +580,7 @@ public class DMRdmService {
...
@@ -564,6 +580,7 @@ public class DMRdmService {
public
AdamMemberCodeVo
getMemberCodeVoByCode
(
String
memberCode
)
{
public
AdamMemberCodeVo
getMemberCodeVoByCode
(
String
memberCode
)
{
String
key
=
AdamRedisConst
.
INFO_MEMBER_CODE
.
concat
(
memberCode
);
String
key
=
AdamRedisConst
.
INFO_MEMBER_CODE
.
concat
(
memberCode
);
long
s
=
System
.
currentTimeMillis
();
AdamMemberCodeVo
vo
=
(
AdamMemberCodeVo
)
redisUtil
.
get
(
key
);
AdamMemberCodeVo
vo
=
(
AdamMemberCodeVo
)
redisUtil
.
get
(
key
);
// if (null == vo) {
// if (null == vo) {
// s = System.currentTimeMillis();
// s = System.currentTimeMillis();
...
@@ -574,6 +591,7 @@ public class DMRdmService {
...
@@ -574,6 +591,7 @@ public class DMRdmService {
// log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
// log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
// if (null != vo && vo.getState() == 0) redisUtil.set(AdamRedisConst.INFO_MEMBER_CODE.concat(memberCode), vo);
// if (null != vo && vo.getState() == 0) redisUtil.set(AdamRedisConst.INFO_MEMBER_CODE.concat(memberCode), vo);
// }
// }
log
.
debug
(
"#RDM耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
return
vo
;
return
vo
;
}
}
...
...
liquidnet-bus-service/liquidnet-service-sweet/docu/db_sweetsugar_structure.sql
View file @
fa7e2b86
...
@@ -183,34 +183,6 @@ CREATE TABLE `sweet_manual_shop`
...
@@ -183,34 +183,6 @@ CREATE TABLE `sweet_manual_shop`
COLLATE
=
utf8_unicode_ci
COLLATE
=
utf8_unicode_ci
ROW_FORMAT
=
DYNAMIC
COMMENT
'电子宣传手册商铺表'
;
ROW_FORMAT
=
DYNAMIC
COMMENT
'电子宣传手册商铺表'
;
-- 正在现场服务号关注事件储存用户信息表
drop
TABLE
if
exists
`sweet_wechat_user`
;
CREATE
TABLE
`sweet_wechat_user`
(
`mid`
bigint
unsigned
NOT
NULL
AUTO_INCREMENT
,
`user_id`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'user_id'
,
`openId`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'openId'
,
`unionId`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'unionId'
,
`nickname`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'昵称'
,
`sexDesc`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'性别'
,
`sex`
tinyint
NOT
NULL
DEFAULT
0
COMMENT
'性别 男1'
,
`headImgUrl`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'头像'
,
`language`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'zh_CN'
,
`country`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'国家'
,
`province`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'省'
,
`city`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'市'
,
`subscribeTime`
datetime
NULL
DEFAULT
null
COMMENT
'关注时间'
,
`subscribeScene`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'ADD_SCENE_SEARCH 关注方式'
,
`created_at`
datetime
NULL
DEFAULT
CURRENT_TIMESTAMP
COMMENT
'创建时间'
,
`updated_at`
datetime
NULL
DEFAULT
CURRENT_TIMESTAMP
COMMENT
'更新时间'
,
PRIMARY
KEY
(
`mid`
),
KEY
`sweet_wechat_user_user_id`
(
`user_id`
)
)
ENGINE
=
InnoDB
DEFAULT
CHARSET
utf8mb4
COLLATE
utf8mb4_unicode_ci
ROW_FORMAT
=
DYNAMIC
COMMENT
'正在现场服务号关注事件储存用户信息表'
;
-- 用户 收藏/喜欢等状态
-- 用户 收藏/喜欢等状态
drop
TABLE
if
exists
`sweet_user_relation`
;
drop
TABLE
if
exists
`sweet_user_relation`
;
CREATE
TABLE
`sweet_user_relation`
CREATE
TABLE
`sweet_user_relation`
...
@@ -437,3 +409,69 @@ CREATE TABLE `sweet_luck_draw`
...
@@ -437,3 +409,69 @@ CREATE TABLE `sweet_luck_draw`
COLLATE
utf8mb4_unicode_ci
COLLATE
utf8mb4_unicode_ci
ROW_FORMAT
=
DYNAMIC
COMMENT
'抽奖表'
;
ROW_FORMAT
=
DYNAMIC
COMMENT
'抽奖表'
;
-- 正在现场服务号关注事件储存用户信息表
drop
TABLE
if
exists
`sweet_wechat_user`
;
CREATE
TABLE
`sweet_wechat_user`
(
`mid`
bigint
unsigned
NOT
NULL
AUTO_INCREMENT
,
`user_id`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'user_id'
,
`openId`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'openId'
,
`unionId`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'unionId'
,
`nickname`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'昵称'
,
`sexDesc`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'性别'
,
`sex`
tinyint
NOT
NULL
DEFAULT
0
COMMENT
'性别 男1'
,
`headImgUrl`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'头像'
,
`language`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'zh_CN'
,
`country`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'国家'
,
`province`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'省'
,
`city`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'市'
,
`subscribeTime`
datetime
NULL
DEFAULT
null
COMMENT
'关注时间'
,
`subscribeScene`
varchar
(
200
)
NOT
NULL
DEFAULT
''
COMMENT
'ADD_SCENE_SEARCH 关注方式'
,
`is_cancel`
tinyint
NOT
NULL
DEFAULT
1
COMMENT
'是否取关 1关注 2已取消'
,
`created_at`
datetime
NULL
DEFAULT
CURRENT_TIMESTAMP
COMMENT
'创建时间'
,
`updated_at`
datetime
NULL
DEFAULT
CURRENT_TIMESTAMP
COMMENT
'更新时间'
,
PRIMARY
KEY
(
`mid`
),
KEY
`sweet_wechat_user_user_id`
(
`user_id`
)
)
ENGINE
=
InnoDB
DEFAULT
CHARSET
utf8mb4
COLLATE
utf8mb4_unicode_ci
ROW_FORMAT
=
DYNAMIC
COMMENT
'正在现场服务号关注事件储存用户信息表'
;
-- 答题表
drop
TABLE
if
exists
`sweet_answer`
;
CREATE
TABLE
`sweet_answer`
(
`mid`
bigint
unsigned
NOT
NULL
AUTO_INCREMENT
,
`answer_id`
varchar
(
255
)
NOT
NULL
DEFAULT
''
COMMENT
'answer_id'
,
`phone`
varchar
(
11
)
NOT
NULL
DEFAULT
''
COMMENT
'手机号'
,
`answer_json`
varchar
(
255
)
NOT
NULL
DEFAULT
''
COMMENT
'答案json'
,
`img_url`
varchar
(
255
)
NOT
NULL
DEFAULT
''
COMMENT
'图片'
,
`created_at`
datetime
NULL
DEFAULT
CURRENT_TIMESTAMP
COMMENT
'创建时间'
,
`updated_at`
datetime
NULL
DEFAULT
CURRENT_TIMESTAMP
COMMENT
'更新时间'
,
PRIMARY
KEY
(
`mid`
),
KEY
`sweet_answer_answer_id`
(
`answer_id`
)
)
ENGINE
=
InnoDB
DEFAULT
CHARSET
utf8mb4
COLLATE
utf8mb4_unicode_ci
ROW_FORMAT
=
DYNAMIC
COMMENT
'答题表'
;
-- 提醒记录
drop
TABLE
if
exists
`sweet_remind`
;
CREATE
TABLE
`sweet_remind`
(
`mid`
bigint
unsigned
NOT
NULL
AUTO_INCREMENT
,
`remind_id`
varchar
(
255
)
NOT
NULL
DEFAULT
''
COMMENT
'remind_id'
,
`openId`
varchar
(
255
)
NOT
NULL
DEFAULT
''
COMMENT
'openId'
,
`unionId`
varchar
(
255
)
NOT
NULL
DEFAULT
''
COMMENT
'unionId'
,
`performancesId`
varchar
(
255
)
NOT
NULL
DEFAULT
''
COMMENT
'演出id'
,
`is_push`
tinyint
NOT
NULL
DEFAULT
1
COMMENT
'是否推送 1未推送 2已推送'
,
`push_time`
varchar
(
255
)
NOT
NULL
DEFAULT
''
COMMENT
'推送时间'
,
`created_at`
datetime
NULL
DEFAULT
CURRENT_TIMESTAMP
COMMENT
'创建时间'
,
`updated_at`
datetime
NULL
DEFAULT
CURRENT_TIMESTAMP
COMMENT
'更新时间'
,
PRIMARY
KEY
(
`mid`
),
KEY
`sweet_remind_id`
(
`remind_id`
)
)
ENGINE
=
InnoDB
DEFAULT
CHARSET
utf8mb4
COLLATE
utf8mb4_unicode_ci
ROW_FORMAT
=
DYNAMIC
COMMENT
'提醒记录表'
;
liquidnet-bus-service/liquidnet-service-sweet/docu/redis_queue_create.txt
View file @
fa7e2b86
...
@@ -8,3 +8,15 @@ XGROUP CREATE sweet:stream:rk.artists.mdsk.relation group.artists.mdsk.relation
...
@@ -8,3 +8,15 @@ XGROUP CREATE sweet:stream:rk.artists.mdsk.relation group.artists.mdsk.relation
-- 抽奖 --
-- 抽奖 --
XADD sweet:stream:rk.luckDraw * 0 0
XADD sweet:stream:rk.luckDraw * 0 0
XGROUP CREATE sweet:stream:rk.luckDraw group.luckDraw 0
XGROUP CREATE sweet:stream:rk.luckDraw group.luckDraw 0
-- 答案 --
XADD sweet:stream:rk.answerInsert * 0 0
XGROUP CREATE sweet:stream:rk.answerInsert group.answerInsert 0
-- 关注服务号的用户信息 --
XADD sweet:stream:rk.sweetUserInsert * 0 0
XGROUP CREATE sweet:stream:rk.sweetUserInsert group.sweetUserInsert 0
-- 提醒记录 --
XADD sweet:stream:rk.remindInsert * 0 0
XGROUP CREATE sweet:stream:rk.remindInsert group.remindInsert 0
\ No newline at end of file
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/constant/SweetConstant.java
View file @
fa7e2b86
...
@@ -15,10 +15,9 @@ public class SweetConstant {
...
@@ -15,10 +15,9 @@ public class SweetConstant {
public
final
static
String
REDIS_KEY_SWEET_SHOP
=
"sweet:artists:shop:manual:"
;
public
final
static
String
REDIS_KEY_SWEET_SHOP
=
"sweet:artists:shop:manual:"
;
public
final
static
String
REDIS_KEY_SWEET_LUCK_DRAW
=
"sweet:artists:luckDraw:uid:"
;
public
final
static
String
REDIS_KEY_SWEET_LUCK_DRAW
=
"sweet:artists:luckDraw:uid:"
;
public
final
static
String
REDIS_KEY_SWEET_REMIND
=
"sweet:remind:unionId:"
;
public
static
final
String
REDIS_KEY_SWEET_REMIND_ALL
=
"sweet:remind:unionId*"
;
public
final
static
String
REDIS_KEY_SWEET_WECHAT_USER_INFO
=
"sweet:wechatUser:unionId:"
;
public
final
static
String
REDIS_KEY_SWEET_WECHAT_USER_INFO
=
"sweet:wechatUser:unionId:"
;
public
final
static
String
REDIS_KEY_SWEET_WECHAT_USER_UNIONID
=
"sweet:wechatUser:openId:"
;
public
final
static
String
REDIS_KEY_SWEET_ANSWER_PHONE
=
"sweet:answer:phone:"
;
// public enum ManualPosition {
// public enum ManualPosition {
// artist("艺人","artist"),
// artist("艺人","artist"),
...
...
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/controller/SweetAnswerController.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
sweet
.
controller
;
import
com.github.pagehelper.PageInfo
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.sweet.entity.SweetArtists
;
import
com.liquidnet.service.sweet.service.ISweetAnswerService
;
import
com.liquidnet.service.sweet.vo.SweetAnswerVo
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
/**
* <p>
* 答题表 前端控制器
* </p>
*
* @author jiangxiulong
* @since 2021-08-12
*/
@Api
(
tags
=
"答案"
)
@RestController
@RequestMapping
(
"/sweetAnswer"
)
public
class
SweetAnswerController
{
@Autowired
private
ISweetAnswerService
sweetAnswerService
;
@GetMapping
(
"info"
)
@ApiOperation
(
"获取答题记录详情"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
type
=
"form"
,
dataType
=
"String"
,
name
=
"phone"
,
value
=
"手机号"
,
required
=
true
)
})
public
ResponseDto
<
SweetAnswerVo
>
getInfo
(
@RequestParam
()
String
phone
)
{
return
sweetAnswerService
.
getInfo
(
phone
);
}
@PostMapping
(
"create"
)
@ApiOperation
(
"添加答题记录"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
type
=
"form"
,
dataType
=
"String"
,
name
=
"phone"
,
value
=
"手机号"
,
required
=
true
),
@ApiImplicitParam
(
type
=
"form"
,
dataType
=
"String"
,
name
=
"answerJson"
,
value
=
"答案json"
,
required
=
true
),
@ApiImplicitParam
(
type
=
"form"
,
dataType
=
"String"
,
name
=
"imgUrl"
,
value
=
"图片地址"
,
required
=
true
),
})
public
ResponseDto
<
Boolean
>
add
(
@RequestParam
()
String
phone
,
@RequestParam
()
String
answerJson
,
@RequestParam
()
String
imgUrl
)
{
return
sweetAnswerService
.
create
(
phone
,
answerJson
,
imgUrl
);
}
}
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/controller/SweetAppletController.java
View file @
fa7e2b86
...
@@ -8,6 +8,7 @@ import com.liquidnet.service.sweet.dto.SweetManualArtistListDto;
...
@@ -8,6 +8,7 @@ import com.liquidnet.service.sweet.dto.SweetManualArtistListDto;
import
com.liquidnet.service.sweet.entity.SweetManualNotify
;
import
com.liquidnet.service.sweet.entity.SweetManualNotify
;
import
com.liquidnet.service.sweet.entity.SweetManualShop
;
import
com.liquidnet.service.sweet.entity.SweetManualShop
;
import
com.liquidnet.service.sweet.entity.SweetRichtext
;
import
com.liquidnet.service.sweet.entity.SweetRichtext
;
import
com.liquidnet.service.sweet.utils.ObjectUtil
;
import
com.liquidnet.service.sweet.utils.RedisDataUtils
;
import
com.liquidnet.service.sweet.utils.RedisDataUtils
;
import
com.liquidnet.service.sweet.vo.SweetArtistsRelationVo
;
import
com.liquidnet.service.sweet.vo.SweetArtistsRelationVo
;
import
com.liquidnet.service.sweet.vo.SweetManualShopAllVo
;
import
com.liquidnet.service.sweet.vo.SweetManualShopAllVo
;
...
@@ -35,7 +36,7 @@ public class SweetAppletController {
...
@@ -35,7 +36,7 @@ public class SweetAppletController {
})
})
public
ResponseDto
<
List
<
SweetManualAppletDto
>>
timeSelect
(
@RequestParam
String
name
)
{
public
ResponseDto
<
List
<
SweetManualAppletDto
>>
timeSelect
(
@RequestParam
String
name
)
{
List
<
SweetManualAppletDto
>
dto
=
redisDataUtils
.
getPushList
();
List
<
SweetManualAppletDto
>
dto
=
redisDataUtils
.
getPushList
();
List
<
SweetManualAppletDto
>
vo
=
new
ArrayList
<>
();
List
<
SweetManualAppletDto
>
vo
=
ObjectUtil
.
getSweetManualAppletDtoList
();
for
(
SweetManualAppletDto
item
:
dto
)
{
for
(
SweetManualAppletDto
item
:
dto
)
{
if
(
item
.
getTitle
().
contains
(
name
))
{
if
(
item
.
getTitle
().
contains
(
name
))
{
vo
.
add
(
item
);
vo
.
add
(
item
);
...
@@ -90,8 +91,8 @@ public class SweetAppletController {
...
@@ -90,8 +91,8 @@ public class SweetAppletController {
@RequestParam
(
required
=
false
)
Integer
size
,
@RequestParam
(
required
=
false
)
Integer
size
,
@RequestParam
String
uid
)
{
@RequestParam
String
uid
)
{
List
<
SweetManualArtistListDto
>
allReturnArtist
=
new
Array
List
();
List
<
SweetManualArtistListDto
>
allReturnArtist
=
ObjectUtil
.
getSweetManualArtistListDto
List
();
List
<
SweetManualArtistListDto
>
returnArtist
=
new
Array
List
();
List
<
SweetManualArtistListDto
>
returnArtist
=
ObjectUtil
.
getSweetManualArtistListDto
List
();
SweetManualArtistList2Dto
data
=
redisDataUtils
.
getTimeList
(
manualId
);
SweetManualArtistList2Dto
data
=
redisDataUtils
.
getTimeList
(
manualId
);
SweetArtistsRelationVo
relationData
=
redisDataUtils
.
getArtistsRelationRedisVo
(
uid
,
manualId
);
SweetArtistsRelationVo
relationData
=
redisDataUtils
.
getArtistsRelationRedisVo
(
uid
,
manualId
);
...
@@ -296,9 +297,9 @@ public class SweetAppletController {
...
@@ -296,9 +297,9 @@ public class SweetAppletController {
public
ResponseDto
<
SweetManualShopAllVo
>
manualShop
(
@RequestParam
String
manualId
)
{
public
ResponseDto
<
SweetManualShopAllVo
>
manualShop
(
@RequestParam
String
manualId
)
{
List
<
SweetManualShop
>
shopList
=
redisDataUtils
.
getManualShopRedisData
(
manualId
);
List
<
SweetManualShop
>
shopList
=
redisDataUtils
.
getManualShopRedisData
(
manualId
);
List
<
SweetManualShop
>
recommend
=
new
ArrayList
<>
();
List
<
SweetManualShop
>
recommend
=
ObjectUtil
.
getSweetManualShopList
();
List
<
SweetManualShop
>
eat
=
new
ArrayList
<>
();
List
<
SweetManualShop
>
eat
=
ObjectUtil
.
getSweetManualShopList
();
List
<
SweetManualShop
>
play
=
new
ArrayList
<>
();
List
<
SweetManualShop
>
play
=
ObjectUtil
.
getSweetManualShopList
();
SweetManualShopAllVo
vo
=
SweetManualShopAllVo
.
getNew
();
SweetManualShopAllVo
vo
=
SweetManualShopAllVo
.
getNew
();
for
(
SweetManualShop
item
:
shopList
)
{
for
(
SweetManualShop
item
:
shopList
)
{
...
...
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/controller/SweetAppletMdskController.java
View file @
fa7e2b86
...
@@ -4,6 +4,7 @@ import com.liquidnet.commons.lang.util.CollectionUtil;
...
@@ -4,6 +4,7 @@ import com.liquidnet.commons.lang.util.CollectionUtil;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.sweet.dto.*
;
import
com.liquidnet.service.sweet.dto.*
;
import
com.liquidnet.service.sweet.entity.*
;
import
com.liquidnet.service.sweet.entity.*
;
import
com.liquidnet.service.sweet.utils.ObjectUtil
;
import
com.liquidnet.service.sweet.utils.RedisDataUtils
;
import
com.liquidnet.service.sweet.utils.RedisDataUtils
;
import
com.liquidnet.service.sweet.utils.RedisMDSKDataUtils
;
import
com.liquidnet.service.sweet.utils.RedisMDSKDataUtils
;
import
com.liquidnet.service.sweet.vo.SweetArtistsRelationVo
;
import
com.liquidnet.service.sweet.vo.SweetArtistsRelationVo
;
...
@@ -36,7 +37,7 @@ public class SweetAppletMdskController {
...
@@ -36,7 +37,7 @@ public class SweetAppletMdskController {
})
})
public
ResponseDto
<
List
<
SweetManualAppletMDSKDto
>>
timeSelect
(
@RequestParam
String
name
)
{
public
ResponseDto
<
List
<
SweetManualAppletMDSKDto
>>
timeSelect
(
@RequestParam
String
name
)
{
List
<
SweetManualAppletMDSKDto
>
dto
=
redisDataUtils
.
getPushList
();
List
<
SweetManualAppletMDSKDto
>
dto
=
redisDataUtils
.
getPushList
();
List
<
SweetManualAppletMDSKDto
>
vo
=
new
ArrayList
<>
();
List
<
SweetManualAppletMDSKDto
>
vo
=
ObjectUtil
.
getSweetManualAppletMDSKDtoList
();
for
(
SweetManualAppletMDSKDto
item
:
dto
)
{
for
(
SweetManualAppletMDSKDto
item
:
dto
)
{
if
(
item
.
getTitle
().
contains
(
name
))
{
if
(
item
.
getTitle
().
contains
(
name
))
{
vo
.
add
(
item
);
vo
.
add
(
item
);
...
@@ -91,8 +92,8 @@ public class SweetAppletMdskController {
...
@@ -91,8 +92,8 @@ public class SweetAppletMdskController {
@RequestParam
(
required
=
false
)
Integer
size
,
@RequestParam
(
required
=
false
)
Integer
size
,
@RequestParam
String
uid
)
{
@RequestParam
String
uid
)
{
List
<
SweetManualArtistListMDSKDto
>
allReturnArtist
=
new
Array
List
();
List
<
SweetManualArtistListMDSKDto
>
allReturnArtist
=
ObjectUtil
.
getSweetManualArtistListMDSKDto
List
();
List
<
SweetManualArtistListMDSKDto
>
returnArtist
=
new
Array
List
();
List
<
SweetManualArtistListMDSKDto
>
returnArtist
=
ObjectUtil
.
getSweetManualArtistListMDSKDto
List
();
SweetManualArtistList2MDSKDto
data
=
redisDataUtils
.
getTimeList
(
manualId
);
SweetManualArtistList2MDSKDto
data
=
redisDataUtils
.
getTimeList
(
manualId
);
SweetArtistsRelationVo
relationData
=
redisDataUtils
.
getArtistsRelationRedisVo
(
uid
,
manualId
);
SweetArtistsRelationVo
relationData
=
redisDataUtils
.
getArtistsRelationRedisVo
(
uid
,
manualId
);
...
@@ -240,9 +241,9 @@ public class SweetAppletMdskController {
...
@@ -240,9 +241,9 @@ public class SweetAppletMdskController {
if
(
vo
.
getWatchList
()
!=
null
)
{
if
(
vo
.
getWatchList
()
!=
null
)
{
watchSize
=
vo
.
getWatchList
().
size
();
watchSize
=
vo
.
getWatchList
().
size
();
}
}
HashMap
<
String
,
Object
>
map
=
CollectionUtil
.
mapStringObject
();
HashMap
<
String
,
Object
>
map
=
CollectionUtil
.
mapStringObject
();
map
.
put
(
"signSize"
,
signSize
);
map
.
put
(
"signSize"
,
signSize
);
map
.
put
(
"watchSize"
,
watchSize
);
map
.
put
(
"watchSize"
,
watchSize
);
return
ResponseDto
.
success
(
map
);
return
ResponseDto
.
success
(
map
);
}
}
...
@@ -297,9 +298,9 @@ public class SweetAppletMdskController {
...
@@ -297,9 +298,9 @@ public class SweetAppletMdskController {
public
ResponseDto
<
SweetManualShopMdskAllVo
>
manualShop
(
@RequestParam
String
manualId
)
{
public
ResponseDto
<
SweetManualShopMdskAllVo
>
manualShop
(
@RequestParam
String
manualId
)
{
List
<
SweetManualShopMdsk
>
shopList
=
redisDataUtils
.
getManualShopRedisData
(
manualId
);
List
<
SweetManualShopMdsk
>
shopList
=
redisDataUtils
.
getManualShopRedisData
(
manualId
);
List
<
SweetManualShopMdsk
>
recommend
=
new
ArrayList
<>
();
List
<
SweetManualShopMdsk
>
recommend
=
ObjectUtil
.
getSweetManualShopMdskList
();
List
<
SweetManualShopMdsk
>
eat
=
new
ArrayList
<>
();
List
<
SweetManualShopMdsk
>
eat
=
ObjectUtil
.
getSweetManualShopMdskList
();
List
<
SweetManualShopMdsk
>
play
=
new
ArrayList
<>
();
List
<
SweetManualShopMdsk
>
play
=
ObjectUtil
.
getSweetManualShopMdskList
();
SweetManualShopMdskAllVo
vo
=
SweetManualShopMdskAllVo
.
getNew
();
SweetManualShopMdskAllVo
vo
=
SweetManualShopMdskAllVo
.
getNew
();
for
(
SweetManualShopMdsk
item
:
shopList
)
{
for
(
SweetManualShopMdsk
item
:
shopList
)
{
...
...
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/controller/SweetWechatLoginController.java
View file @
fa7e2b86
...
@@ -26,7 +26,7 @@ public class SweetWechatLoginController {
...
@@ -26,7 +26,7 @@ public class SweetWechatLoginController {
@ApiImplicitParam
(
type
=
"query"
,
dataType
=
"String"
,
name
=
"code"
,
value
=
"微信code"
,
required
=
true
),
@ApiImplicitParam
(
type
=
"query"
,
dataType
=
"String"
,
name
=
"code"
,
value
=
"微信code"
,
required
=
true
),
@ApiImplicitParam
(
type
=
"query"
,
dataType
=
"String"
,
name
=
"encryptedData"
,
value
=
"encryptedData"
,
required
=
true
),
@ApiImplicitParam
(
type
=
"query"
,
dataType
=
"String"
,
name
=
"encryptedData"
,
value
=
"encryptedData"
,
required
=
true
),
@ApiImplicitParam
(
type
=
"query"
,
dataType
=
"String"
,
name
=
"iv"
,
value
=
"iv"
,
required
=
true
),
@ApiImplicitParam
(
type
=
"query"
,
dataType
=
"String"
,
name
=
"iv"
,
value
=
"iv"
,
required
=
true
),
@ApiImplicitParam
(
type
=
"query"
,
dataType
=
"Integer"
,
name
=
"type"
,
value
=
"1草莓 2五百里 3mdsk"
),
@ApiImplicitParam
(
type
=
"query"
,
dataType
=
"Integer"
,
name
=
"type"
,
value
=
"1草莓 2五百里 3mdsk
4正在
"
),
})
})
public
ResponseDto
userInfo
(
public
ResponseDto
userInfo
(
@RequestParam
()
String
code
,
@RequestParam
()
String
code
,
...
...
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/controller/SweetWechatTemplateController.java
View file @
fa7e2b86
...
@@ -20,7 +20,7 @@ public class SweetWechatTemplateController {
...
@@ -20,7 +20,7 @@ public class SweetWechatTemplateController {
@GetMapping
(
"send"
)
@GetMapping
(
"send"
)
@ApiOperation
(
"发送模版消息"
)
@ApiOperation
(
"发送模版消息"
)
public
ResponseDto
send
()
{
public
ResponseDto
send
()
{
return
sweetTemplateService
.
sendMsg
();
return
sweetTemplateService
.
send
Remind
Msg
();
}
}
@PostMapping
(
"remind"
)
@PostMapping
(
"remind"
)
...
@@ -38,4 +38,20 @@ public class SweetWechatTemplateController {
...
@@ -38,4 +38,20 @@ public class SweetWechatTemplateController {
return
sweetTemplateService
.
remind
(
openId
,
unionId
,
performancesId
);
return
sweetTemplateService
.
remind
(
openId
,
unionId
,
performancesId
);
}
}
@PostMapping
(
"followStatus"
)
@ApiOperation
(
"获取关注状态"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
type
=
"form"
,
dataType
=
"String"
,
name
=
"unionId"
,
value
=
"微信unionId"
,
required
=
true
),
})
public
ResponseDto
followStatus
(
@RequestParam
()
String
unionId
)
{
boolean
status
=
sweetTemplateService
.
followStatus
(
unionId
);
if
(
status
)
{
return
ResponseDto
.
success
(
1
);
}
else
{
return
ResponseDto
.
success
(
2
);
}
}
}
}
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/entity/SweetAnswer.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
sweet
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
java.time.LocalDateTime
;
import
java.io.Serializable
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
/**
* <p>
* 答题表
* </p>
*
* @author jiangxiulong
* @since 2021-08-12
*/
@Data
@EqualsAndHashCode
(
callSuper
=
false
)
public
class
SweetAnswer
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
@TableId
(
value
=
"mid"
,
type
=
IdType
.
AUTO
)
private
Long
mid
;
/**
* answer_id
*/
private
String
answerId
;
/**
* 手机号
*/
private
String
phone
;
/**
* 答案json
*/
private
String
answerJson
;
/**
* 图片
*/
private
String
imgUrl
;
/**
* 创建时间
*/
private
LocalDateTime
createdAt
;
/**
* 更新时间
*/
private
LocalDateTime
updatedAt
;
private
static
final
SweetAnswer
obj
=
new
SweetAnswer
();
public
static
SweetAnswer
getNew
()
{
try
{
return
(
SweetAnswer
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
return
new
SweetAnswer
();
}
}
}
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/entity/SweetRemind.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
sweet
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
java.time.LocalDateTime
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
java.io.Serializable
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
/**
* <p>
* 提醒记录表
* </p>
*
* @author jiangxiulong
* @since 2021-08-13
*/
@Data
@EqualsAndHashCode
(
callSuper
=
false
)
public
class
SweetRemind
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
@TableId
(
value
=
"mid"
,
type
=
IdType
.
AUTO
)
private
Long
mid
;
/**
* remind_id
*/
private
String
remindId
;
/**
* openId
*/
@TableField
(
"openId"
)
private
String
openId
;
/**
* unionId
*/
@TableField
(
"unionId"
)
private
String
unionId
;
/**
* 演出id
*/
@TableField
(
"performancesId"
)
private
String
performancesId
;
/**
* 是否推送 1未推送 2已推送
*/
private
Integer
isPush
;
/**
* 推送时间
*/
private
String
pushTime
;
/**
* 创建时间
*/
private
LocalDateTime
createdAt
;
/**
* 更新时间
*/
private
LocalDateTime
updatedAt
;
private
static
final
SweetRemind
obj
=
new
SweetRemind
();
public
static
SweetRemind
getNew
()
{
try
{
return
(
SweetRemind
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
return
new
SweetRemind
();
}
}
}
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/entity/SweetWechatUser.java
View file @
fa7e2b86
...
@@ -96,6 +96,11 @@ public class SweetWechatUser implements Serializable {
...
@@ -96,6 +96,11 @@ public class SweetWechatUser implements Serializable {
@TableField
(
"subscribeScene"
)
@TableField
(
"subscribeScene"
)
private
String
subscribeScene
;
private
String
subscribeScene
;
/**
* 是否取消关注
*/
private
Integer
isCancel
;
/**
/**
* 创建时间
* 创建时间
*/
*/
...
...
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/handler/SubscribeHandler.java
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
sweet
.
handler
;
package
com
.
liquidnet
.
service
.
sweet
.
handler
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
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.service.base.SqlMapping
;
import
com.liquidnet.service.base.constant.MQConst
;
import
com.liquidnet.service.sweet.entity.SweetWechatUser
;
import
com.liquidnet.service.sweet.entity.SweetWechatUser
;
import
com.liquidnet.service.sweet.mapper.SweetWechatUserMapper
;
import
com.liquidnet.service.sweet.mapper.SweetWechatUserMapper
;
import
com.liquidnet.service.sweet.service.impl.SweetWechatTemplateServiceImpl
;
import
com.liquidnet.service.sweet.utils.QueueUtils
;
import
com.liquidnet.service.sweet.utils.RedisDataUtils
;
import
com.liquidnet.service.sweet.utils.RedisDataUtils
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
me.chanjar.weixin.common.error.WxErrorException
;
import
me.chanjar.weixin.common.error.WxErrorException
;
...
@@ -18,6 +23,7 @@ import org.springframework.beans.factory.annotation.Autowired;
...
@@ -18,6 +23,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.util.LinkedList
;
import
java.util.Map
;
import
java.util.Map
;
/**
/**
...
@@ -35,11 +41,16 @@ public class SubscribeHandler implements WxMpMessageHandler {
...
@@ -35,11 +41,16 @@ public class SubscribeHandler implements WxMpMessageHandler {
private
SweetWechatUserMapper
sweetWechatUserMapper
;
private
SweetWechatUserMapper
sweetWechatUserMapper
;
@Autowired
@Autowired
private
RedisDataUtils
redisDataUtils
;
private
RedisDataUtils
redisDataUtils
;
@Autowired
private
QueueUtils
queueUtils
;
@Autowired
private
SweetWechatTemplateServiceImpl
sweetWechatTemplateService
;
@Override
@Override
public
WxMpXmlOutMessage
handle
(
WxMpXmlMessage
wxMessage
,
Map
<
String
,
Object
>
context
,
WxMpService
wxMpService
,
public
WxMpXmlOutMessage
handle
(
WxMpXmlMessage
wxMessage
,
Map
<
String
,
Object
>
context
,
WxMpService
wxMpService
,
WxSessionManager
sessionManager
)
throws
WxErrorException
{
WxSessionManager
sessionManager
)
throws
WxErrorException
{
log
.
info
(
"接收到一个
扫码
订阅事件:[{}]"
,
wxMessage
.
toString
());
log
.
info
(
"接收到一个订阅事件:[{}]"
,
wxMessage
.
toString
());
// 1、获取微信用户信息
// 1、获取微信用户信息
WxMpUser
wxMpUser
=
wxMpService
.
getUserService
().
userInfo
(
wxMessage
.
getFromUser
());
WxMpUser
wxMpUser
=
wxMpService
.
getUserService
().
userInfo
(
wxMessage
.
getFromUser
());
if
(
null
==
wxMpUser
)
{
if
(
null
==
wxMpUser
)
{
...
@@ -48,7 +59,7 @@ public class SubscribeHandler implements WxMpMessageHandler {
...
@@ -48,7 +59,7 @@ public class SubscribeHandler implements WxMpMessageHandler {
}
}
log
.
info
(
"根据 openId:[{}]获取到的微信用户信息:[{}]"
,
wxMessage
.
getFromUser
(),
wxMpUser
.
toString
());
log
.
info
(
"根据 openId:[{}]获取到的微信用户信息:[{}]"
,
wxMessage
.
getFromUser
(),
wxMpUser
.
toString
());
// 记录用户信息
// 记录用户信息
SweetWechatUser
userInfo
=
sweetWechatUserMapper
.
selectOne
(
Wrappers
.
lambdaQuery
(
SweetWechatUser
.
class
).
eq
(
SweetWechatUser:
:
getOpenId
,
wxMpUser
.
getOpenId
()
));
SweetWechatUser
userInfo
=
redisDataUtils
.
getSweetWechatUser
(
wxMpUser
.
getUnionId
(
));
SweetWechatUser
sweetWechatUser
=
SweetWechatUser
.
getNew
();
SweetWechatUser
sweetWechatUser
=
SweetWechatUser
.
getNew
();
sweetWechatUser
.
setOpenId
(
wxMpUser
.
getOpenId
());
sweetWechatUser
.
setOpenId
(
wxMpUser
.
getOpenId
());
sweetWechatUser
.
setUnionId
(
wxMpUser
.
getUnionId
());
sweetWechatUser
.
setUnionId
(
wxMpUser
.
getUnionId
());
...
@@ -64,19 +75,22 @@ public class SubscribeHandler implements WxMpMessageHandler {
...
@@ -64,19 +75,22 @@ public class SubscribeHandler implements WxMpMessageHandler {
sweetWechatUser
.
setSubscribeScene
(
wxMpUser
.
getSubscribeScene
());
sweetWechatUser
.
setSubscribeScene
(
wxMpUser
.
getSubscribeScene
());
if
(
null
==
userInfo
)
{
if
(
null
==
userInfo
)
{
sweetWechatUser
.
setUserId
(
IDGenerator
.
nextSnowId
());
sweetWechatUser
.
setUserId
(
IDGenerator
.
nextSnowId
());
sweetWechatUserMapper
.
insert
(
sweetWechatUser
);
LinkedList
<
String
>
sqls
=
CollectionUtil
.
linkedListString
();
}
else
{
LinkedList
<
Object
[]>
sqlsDataA
=
CollectionUtil
.
linkedListObjectArr
();
sweetWechatUser
.
setUpdatedAt
(
LocalDateTime
.
now
());
LocalDateTime
now
=
LocalDateTime
.
now
();
sweetWechatUserMapper
.
update
(
sweetWechatUser
,
Wrappers
.
lambdaUpdate
(
SweetWechatUser
.
class
).
eq
(
SweetWechatUser:
:
getUserId
,
userInfo
.
getUserId
()));
sqls
.
add
(
SqlMapping
.
get
(
"sweet_user.insert"
));
}
sqlsDataA
.
add
(
new
Object
[]{
String
unionId
=
wxMpUser
.
getUnionId
();
sweetWechatUser
.
getUserId
(),
sweetWechatUser
.
getOpenId
(),
sweetWechatUser
.
getUnionId
(),
sweetWechatUser
.
getNickname
(),
if
(!
unionId
.
isEmpty
())
{
sweetWechatUser
.
getSexDesc
(),
sweetWechatUser
.
getSex
(),
sweetWechatUser
.
getHeadImgUrl
(),
sweetWechatUser
.
getLanguage
(),
if
(
null
!=
userInfo
)
{
sweetWechatUser
.
getCountry
(),
sweetWechatUser
.
getProvince
(),
sweetWechatUser
.
getCity
(),
sweetWechatUser
.
setMid
(
userInfo
.
getMid
());
sweetWechatUser
.
getSubscribeTime
(),
sweetWechatUser
.
getSubscribeScene
()
sweetWechatUser
.
setUserId
(
userInfo
.
getUserId
());
});
sweetWechatUser
.
setCreatedAt
(
userInfo
.
getCreatedAt
());
queueUtils
.
sendMsgByRedis
(
MQConst
.
SweetQueue
.
SWEET_USER_INSERT_DRAW
.
getKey
(),
}
SqlMapping
.
gets
(
sqls
,
sqlsDataA
));
// 入缓存
redisDataUtils
.
setSweetWechatUser
(
sweetWechatUser
);
redisDataUtils
.
setSweetWechatUser
(
sweetWechatUser
);
//发送模版消息
sweetWechatTemplateService
.
subscribeSend
(
sweetWechatUser
);
}
}
return
null
;
return
null
;
...
...
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/handler/UnsubscribeHandler.java
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
sweet
.
handler
;
package
com
.
liquidnet
.
service
.
sweet
.
handler
;
import
com.liquidnet.commons.lang.util.CollectionUtil
;
import
com.liquidnet.service.base.SqlMapping
;
import
com.liquidnet.service.base.constant.MQConst
;
import
com.liquidnet.service.sweet.entity.SweetWechatUser
;
import
com.liquidnet.service.sweet.mapper.SweetWechatUserMapper
;
import
com.liquidnet.service.sweet.utils.QueueUtils
;
import
com.liquidnet.service.sweet.utils.RedisDataUtils
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
me.chanjar.weixin.common.error.WxErrorException
;
import
me.chanjar.weixin.common.error.WxErrorException
;
import
me.chanjar.weixin.common.session.WxSessionManager
;
import
me.chanjar.weixin.common.session.WxSessionManager
;
...
@@ -7,8 +14,12 @@ import me.chanjar.weixin.mp.api.WxMpMessageHandler;
...
@@ -7,8 +14,12 @@ 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.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.result.WxMpUser
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
java.time.LocalDateTime
;
import
java.util.LinkedList
;
import
java.util.Map
;
import
java.util.Map
;
/**
/**
...
@@ -23,10 +34,42 @@ import java.util.Map;
...
@@ -23,10 +34,42 @@ import java.util.Map;
@Slf4j
@Slf4j
public
class
UnsubscribeHandler
implements
WxMpMessageHandler
{
public
class
UnsubscribeHandler
implements
WxMpMessageHandler
{
@Autowired
private
SweetWechatUserMapper
sweetWechatUserMapper
;
@Autowired
private
RedisDataUtils
redisDataUtils
;
@Autowired
private
QueueUtils
queueUtils
;
@Override
@Override
public
WxMpXmlOutMessage
handle
(
WxMpXmlMessage
wxMessage
,
Map
<
String
,
Object
>
context
,
WxMpService
wxMpService
,
public
WxMpXmlOutMessage
handle
(
WxMpXmlMessage
wxMessage
,
Map
<
String
,
Object
>
context
,
WxMpService
wxMpService
,
WxSessionManager
sessionManager
)
throws
WxErrorException
{
WxSessionManager
sessionManager
)
throws
WxErrorException
{
log
.
info
(
"接收到一个扫码取消订阅事件:[{}]"
,
wxMessage
.
toString
());
log
.
info
(
"接收到一个取消订阅事件:[{}]"
,
wxMessage
.
toString
());
// 1、获取微信用户信息
WxMpUser
wxMpUser
=
wxMpService
.
getUserService
().
userInfo
(
wxMessage
.
getFromUser
());
if
(
null
==
wxMpUser
)
{
log
.
warn
(
"从微信公众号获取用户(FromUser)信息:[{}]失败."
,
wxMessage
.
getFromUser
());
return
null
;
}
log
.
info
(
"根据 openId:[{}]获取到的微信用户信息:[{}]"
,
wxMessage
.
getFromUser
(),
wxMpUser
.
toString
());
// 删除用户信息
String
sweetWechatUserUnionid
=
redisDataUtils
.
getSweetWechatUserUnionid
(
wxMpUser
.
getOpenId
());
if
(
null
!=
sweetWechatUserUnionid
&&
!
sweetWechatUserUnionid
.
isEmpty
())
{
SweetWechatUser
userInfo
=
redisDataUtils
.
getSweetWechatUser
(
sweetWechatUserUnionid
);
if
(
null
!=
userInfo
)
{
LinkedList
<
String
>
sqls
=
CollectionUtil
.
linkedListString
();
LinkedList
<
Object
[]>
sqlsDataA
=
CollectionUtil
.
linkedListObjectArr
();
LocalDateTime
now
=
LocalDateTime
.
now
();
sqls
.
add
(
SqlMapping
.
get
(
"sweet_user.update"
));
sqlsDataA
.
add
(
new
Object
[]{
2
,
now
,
sweetWechatUserUnionid
});
queueUtils
.
sendMsgByRedis
(
MQConst
.
SweetQueue
.
SWEET_USER_INSERT_DRAW
.
getKey
(),
SqlMapping
.
gets
(
sqls
,
sqlsDataA
));
redisDataUtils
.
delSweetWechatUser
(
sweetWechatUserUnionid
,
wxMpUser
.
getOpenId
());
}
}
return
null
;
return
null
;
}
}
}
}
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/mapper/SweetAnswerMapper.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
sweet
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.liquidnet.service.sweet.entity.SweetAnswer
;
/**
* <p>
* 答题表 Mapper 接口
* </p>
*
* @author jiangxiulong
* @since 2021-08-12
*/
public
interface
SweetAnswerMapper
extends
BaseMapper
<
SweetAnswer
>
{
}
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/mapper/SweetRemindMapper.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
sweet
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.liquidnet.service.sweet.entity.SweetRemind
;
/**
* <p>
* 提醒记录表 Mapper 接口
* </p>
*
* @author jiangxiulong
* @since 2021-08-13
*/
public
interface
SweetRemindMapper
extends
BaseMapper
<
SweetRemind
>
{
}
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/service/ISweetAnswerService.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
sweet
.
service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.sweet.entity.SweetAnswer
;
import
com.liquidnet.service.sweet.vo.SweetAnswerVo
;
/**
* <p>
* 答题表 服务类
* </p>
*
* @author jiangxiulong
* @since 2021-08-12
*/
public
interface
ISweetAnswerService
extends
IService
<
SweetAnswer
>
{
ResponseDto
<
SweetAnswerVo
>
getInfo
(
String
phone
);
ResponseDto
<
Boolean
>
create
(
String
phone
,
String
answerJson
,
String
imgUrl
);
}
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/service/ISweetRemindService.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
sweet
.
service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.liquidnet.service.sweet.entity.SweetRemind
;
/**
* <p>
* 提醒记录表 服务类
* </p>
*
* @author jiangxiulong
* @since 2021-08-13
*/
public
interface
ISweetRemindService
extends
IService
<
SweetRemind
>
{
}
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/service/impl/SweetAnswerServiceImpl.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
sweet
.
service
.
impl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.liquidnet.commons.lang.util.CollectionUtil
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.base.SqlMapping
;
import
com.liquidnet.service.base.constant.MQConst
;
import
com.liquidnet.service.sweet.entity.SweetAnswer
;
import
com.liquidnet.service.sweet.mapper.SweetAnswerMapper
;
import
com.liquidnet.service.sweet.service.ISweetAnswerService
;
import
com.liquidnet.service.sweet.utils.QueueUtils
;
import
com.liquidnet.service.sweet.utils.RedisDataUtils
;
import
com.liquidnet.service.sweet.vo.SweetAnswerVo
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.time.LocalDateTime
;
import
java.util.LinkedList
;
/**
* <p>
* 答题表 服务实现类
* </p>
*
* @author jiangxiulong
* @since 2021-08-12
*/
@Service
public
class
SweetAnswerServiceImpl
extends
ServiceImpl
<
SweetAnswerMapper
,
SweetAnswer
>
implements
ISweetAnswerService
{
@Autowired
private
SweetAnswerMapper
sweetAnswerMapper
;
@Autowired
private
RedisDataUtils
redisDataUtils
;
@Autowired
QueueUtils
queueUtils
;
@Override
public
ResponseDto
<
SweetAnswerVo
>
getInfo
(
String
phone
)
{
SweetAnswerVo
sweetAnswerVo
=
redisDataUtils
.
getSweetAnswer
(
phone
);
return
ResponseDto
.
success
(
sweetAnswerVo
);
}
@Override
public
ResponseDto
<
Boolean
>
create
(
String
phone
,
String
answerJson
,
String
imgUrl
)
{
SweetAnswer
sweetAnswer
=
SweetAnswer
.
getNew
();
sweetAnswer
.
setAnswerId
(
IDGenerator
.
nextSnowId
());
sweetAnswer
.
setPhone
(
phone
);
sweetAnswer
.
setAnswerJson
(
answerJson
);
sweetAnswer
.
setImgUrl
(
imgUrl
);
// sweetAnswerMapper.insert(sweetAnswer);
LinkedList
<
String
>
sqls
=
CollectionUtil
.
linkedListString
();
LinkedList
<
Object
[]>
sqlsDataA
=
CollectionUtil
.
linkedListObjectArr
();
LocalDateTime
now
=
LocalDateTime
.
now
();
sqls
.
add
(
SqlMapping
.
get
(
"sweet_answer.insert"
));
sqlsDataA
.
add
(
new
Object
[]{
sweetAnswer
.
getAnswerId
(),
phone
,
answerJson
,
imgUrl
});
queueUtils
.
sendMsgByRedis
(
MQConst
.
SweetQueue
.
ANSWERINSERT_DRAW
.
getKey
(),
SqlMapping
.
gets
(
sqls
,
sqlsDataA
));
SweetAnswerVo
sweetAnswerVo
=
SweetAnswerVo
.
getNew
().
copy
(
sweetAnswer
);
redisDataUtils
.
setSweetAnswer
(
sweetAnswerVo
);
return
ResponseDto
.
success
();
}
}
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/service/impl/SweetRemindServiceImpl.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
sweet
.
service
.
impl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.liquidnet.service.sweet.entity.SweetRemind
;
import
com.liquidnet.service.sweet.mapper.SweetRemindMapper
;
import
com.liquidnet.service.sweet.service.ISweetRemindService
;
import
org.springframework.stereotype.Service
;
/**
* <p>
* 提醒记录表 服务实现类
* </p>
*
* @author jiangxiulong
* @since 2021-08-13
*/
@Service
public
class
SweetRemindServiceImpl
extends
ServiceImpl
<
SweetRemindMapper
,
SweetRemind
>
implements
ISweetRemindService
{
}
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/service/impl/SweetWechatCallbackServiceImpl.java
View file @
fa7e2b86
...
@@ -70,10 +70,10 @@ public class SweetWechatCallbackServiceImpl {
...
@@ -70,10 +70,10 @@ public class SweetWechatCallbackServiceImpl {
.
end
();
.
end
();
// 取消关注事件
// 取消关注事件
/*
router.rule().async(false).msgType(WxConsts.XmlMsgType.EVENT)
router
.
rule
().
async
(
false
).
msgType
(
WxConsts
.
XmlMsgType
.
EVENT
)
.
event
(
WxConsts
.
EventType
.
UNSUBSCRIBE
)
.
event
(
WxConsts
.
EventType
.
UNSUBSCRIBE
)
.
handler
(
unsubscribeHandler
)
.
handler
(
unsubscribeHandler
)
.end();
*/
.
end
();
return
router
;
return
router
;
}
}
...
...
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/service/impl/SweetWechatLoginServiceImpl.java
View file @
fa7e2b86
...
@@ -7,6 +7,7 @@ import cn.binarywang.wx.miniapp.bean.WxMaPhoneNumberInfo;
...
@@ -7,6 +7,7 @@ import cn.binarywang.wx.miniapp.bean.WxMaPhoneNumberInfo;
import
cn.binarywang.wx.miniapp.bean.WxMaUserInfo
;
import
cn.binarywang.wx.miniapp.bean.WxMaUserInfo
;
import
cn.binarywang.wx.miniapp.config.WxMaConfig
;
import
cn.binarywang.wx.miniapp.config.WxMaConfig
;
import
cn.binarywang.wx.miniapp.config.impl.WxMaDefaultConfigImpl
;
import
cn.binarywang.wx.miniapp.config.impl.WxMaDefaultConfigImpl
;
import
com.liquidnet.commons.lang.util.CollectionUtil
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.base.ResponseDto
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
...
@@ -44,6 +45,11 @@ public class SweetWechatLoginServiceImpl {
...
@@ -44,6 +45,11 @@ public class SweetWechatLoginServiceImpl {
@Value
(
"${liquidnet.wechat.applet.mdsk.secret}"
)
@Value
(
"${liquidnet.wechat.applet.mdsk.secret}"
)
private
String
mdskSecret
;
private
String
mdskSecret
;
@Value
(
"${liquidnet.wechat.applet.zhengzai.appid}"
)
private
String
zhengzaiAppid
;
@Value
(
"${liquidnet.wechat.applet.zhengzai.secret}"
)
private
String
zhengzaiSecret
;
public
ResponseDto
userInfo
(
String
code
,
String
encryptedData
,
String
iv
,
Integer
type
)
{
public
ResponseDto
userInfo
(
String
code
,
String
encryptedData
,
String
iv
,
Integer
type
)
{
log
.
info
(
"\n参数code:[{}] "
,
code
);
log
.
info
(
"\n参数code:[{}] "
,
code
);
log
.
info
(
"\n参数encryptedData:[{}] "
,
encryptedData
);
log
.
info
(
"\n参数encryptedData:[{}] "
,
encryptedData
);
...
@@ -65,6 +71,10 @@ public class SweetWechatLoginServiceImpl {
...
@@ -65,6 +71,10 @@ public class SweetWechatLoginServiceImpl {
appId
=
mdskAppid
;
appId
=
mdskAppid
;
appSecret
=
mdskSecret
;
appSecret
=
mdskSecret
;
break
;
break
;
case
4
:
appId
=
zhengzaiAppid
;
appSecret
=
zhengzaiSecret
;
break
;
}
}
WxMaConfig
wxMaConfig
=
wxMaConfig
(
appId
,
appSecret
);
WxMaConfig
wxMaConfig
=
wxMaConfig
(
appId
,
appSecret
);
WxMaService
wxMaService
=
wxMaService
(
wxMaConfig
);
WxMaService
wxMaService
=
wxMaService
(
wxMaConfig
);
...
@@ -85,7 +95,7 @@ public class SweetWechatLoginServiceImpl {
...
@@ -85,7 +95,7 @@ public class SweetWechatLoginServiceImpl {
String
unionId
=
sessionInfo
.
getUnionid
();
String
unionId
=
sessionInfo
.
getUnionid
();
String
openId
=
sessionInfo
.
getOpenid
();
String
openId
=
sessionInfo
.
getOpenid
();
HashMap
userInfo
=
new
HashMap
();
HashMap
<
String
,
Object
>
userInfo
=
CollectionUtil
.
mapStringObject
();
userInfo
.
put
(
"unionId"
,
unionId
);
userInfo
.
put
(
"unionId"
,
unionId
);
userInfo
.
put
(
"openId"
,
openId
);
userInfo
.
put
(
"openId"
,
openId
);
userInfo
.
put
(
"getPhoneNumber"
,
wxMaPhoneNumberInfo
.
getPhoneNumber
());
userInfo
.
put
(
"getPhoneNumber"
,
wxMaPhoneNumberInfo
.
getPhoneNumber
());
...
...
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/service/impl/SweetWechatTemplateServiceImpl.java
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
sweet
.
service
.
impl
;
package
com
.
liquidnet
.
service
.
sweet
.
service
.
impl
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.commons.lang.util.CollectionUtil
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.kylin.constant.KylinRedisConst
;
import
com.liquidnet.service.kylin.constant.KylinRedisConst
;
import
com.liquidnet.service.kylin.dto.vo.middle.KylinTicketTimesVo
;
import
com.liquidnet.service.kylin.dto.vo.middle.KylinTicketTimesVo
;
import
com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo
;
import
com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo
;
import
com.liquidnet.service.sweet.
constant.SweetConstant
;
import
com.liquidnet.service.sweet.
entity.SweetRemind
;
import
com.liquidnet.service.sweet.entity.SweetWechatUser
;
import
com.liquidnet.service.sweet.entity.SweetWechatUser
;
import
com.liquidnet.service.sweet.mapper.SweetRemindMapper
;
import
com.liquidnet.service.sweet.utils.RedisDataUtils
;
import
com.liquidnet.service.sweet.utils.RedisDataUtils
;
import
com.liquidnet.service.sweet.vo.SweetRemindVo
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
me.chanjar.weixin.common.error.WxErrorException
;
import
me.chanjar.weixin.common.error.WxErrorException
;
import
me.chanjar.weixin.mp.api.WxMpService
;
import
me.chanjar.weixin.mp.api.WxMpService
;
...
@@ -20,13 +22,13 @@ import me.chanjar.weixin.mp.config.WxMpConfigStorage;
...
@@ -20,13 +22,13 @@ import me.chanjar.weixin.mp.config.WxMpConfigStorage;
import
me.chanjar.weixin.mp.config.impl.WxMpDefaultConfigImpl
;
import
me.chanjar.weixin.mp.config.impl.WxMpDefaultConfigImpl
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.CollectionUtils
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.time.format.DateTimeFormatter
;
import
java.time.format.DateTimeFormatter
;
import
java.util.Set
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
/**
* <p>
* <p>
...
@@ -47,23 +49,33 @@ public class SweetWechatTemplateServiceImpl {
...
@@ -47,23 +49,33 @@ public class SweetWechatTemplateServiceImpl {
@Value
(
"${liquidnet.client.admin.h5Url}"
)
@Value
(
"${liquidnet.client.admin.h5Url}"
)
private
String
h5Url
;
private
String
h5Url
;
@Value
(
"${liquidnet.wechat.applet.zhengzai.appid}"
)
private
String
appletAppid
;
@Autowired
@Autowired
private
RedisDataUtils
redisDataUtils
;
private
RedisDataUtils
redisDataUtils
;
@Autowired
@Autowired
private
RedisTemplate
redisTemplate
;
@Autowired
private
RedisUtil
redisUtil
;
private
RedisUtil
redisUtil
;
public
ResponseDto
send
(
String
templateId
)
{
@Autowired
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_REMIND_ALL
;
private
SweetRemindMapper
sweetRemindMapper
;
Set
<
String
>
keys
=
redisTemplate
.
keys
(
redisKey
);
if
(!
CollectionUtils
.
isEmpty
(
keys
))
{
public
ResponseDto
sendRemindMsg
()
{
for
(
String
rkey
:
keys
)
{
String
templateId
=
"CNLDBZYQoDgTWudicx8WU81Jr9b6RyG9hmK4O0tpK-k"
;
List
<
SweetRemind
>
sweetRemindList
=
sweetRemindMapper
.
selectList
(
Wrappers
.
lambdaQuery
(
SweetRemind
.
class
)
.
eq
(
SweetRemind:
:
getIsPush
,
1
)
);
ArrayList
<
String
>
remindIdList
=
CollectionUtil
.
arrayListString
();
if
(!
CollectionUtils
.
isEmpty
(
sweetRemindList
))
{
for
(
SweetRemind
remindInfo
:
sweetRemindList
)
{
try
{
try
{
S
weetRemindVo
remindInfo
=
(
SweetRemindVo
)
redisUtil
.
get
(
rkey
);
S
tring
remindId
=
remindInfo
.
getRemindId
(
);
SweetWechatUser
sweetWechatUser
=
redisDataUtils
.
getSweetWechatUser
(
remindInfo
.
getUnionId
());
SweetWechatUser
sweetWechatUser
=
redisDataUtils
.
getSweetWechatUser
(
remindInfo
.
getUnionId
());
KylinPerformanceVo
performanceVo
=
(
KylinPerformanceVo
)
redisUtil
.
get
(
KylinRedisConst
.
PERFORMANCES
.
concat
(
remindInfo
.
getPerformancesId
()));
KylinPerformanceVo
performanceVo
=
(
KylinPerformanceVo
)
redisUtil
.
get
(
KylinRedisConst
.
PERFORMANCES
.
concat
(
remindInfo
.
getPerformancesId
()));
if
(
null
==
sweetWechatUser
)
{
if
(
null
==
sweetWechatUser
)
{
remindIdList
.
add
(
remindId
);
log
.
info
(
"无用户数据:[UnionId=[{}]"
,
remindInfo
.
getUnionId
());
log
.
info
(
"无用户数据:[UnionId=[{}]"
,
remindInfo
.
getUnionId
());
continue
;
continue
;
}
}
...
@@ -74,7 +86,6 @@ public class SweetWechatTemplateServiceImpl {
...
@@ -74,7 +86,6 @@ public class SweetWechatTemplateServiceImpl {
KylinTicketTimesVo
kylinTicketTimesVo
=
performanceVo
.
getTicketTimeList
().
get
(
0
);
KylinTicketTimesVo
kylinTicketTimesVo
=
performanceVo
.
getTicketTimeList
().
get
(
0
);
LocalDateTime
nowTime
=
LocalDateTime
.
now
();
LocalDateTime
nowTime
=
LocalDateTime
.
now
();
// LocalDateTime newNowTime = nowTime.minusMinutes(5);
String
nowTimeStr
=
DateUtil
.
Formatter
.
yyyyMMddHHmmss
.
format
(
nowTime
);
String
nowTimeStr
=
DateUtil
.
Formatter
.
yyyyMMddHHmmss
.
format
(
nowTime
);
String
sellTime
=
performanceVo
.
getSellTime
();
String
sellTime
=
performanceVo
.
getSellTime
();
LocalDateTime
sellTimeLocal
=
LocalDateTime
.
parse
(
sellTime
,
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
));
LocalDateTime
sellTimeLocal
=
LocalDateTime
.
parse
(
sellTime
,
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
));
...
@@ -85,55 +96,129 @@ public class SweetWechatTemplateServiceImpl {
...
@@ -85,55 +96,129 @@ public class SweetWechatTemplateServiceImpl {
if
(
1
==
DateUtil
.
compareStrDay
(
nowTimeStr
,
stopSellTime
))
{
// 超过售卖期 不推 删redis
if
(
1
==
DateUtil
.
compareStrDay
(
nowTimeStr
,
stopSellTime
))
{
// 超过售卖期 不推 删redis
log
.
info
(
"超过售卖期:[nowTimeStr=[{}], [stopSellTime=[{}]"
,
log
.
info
(
"超过售卖期:[nowTimeStr=[{}], [stopSellTime=[{}]"
,
nowTimeStr
,
stopSellTime
);
nowTimeStr
,
stopSellTime
);
redisDataUtils
.
delSweetRemind
(
remindInfo
.
getUnionId
());
remindIdList
.
add
(
remindId
);
// redisDataUtils.delSweetRemind(remindInfo.getUnionId());
continue
;
continue
;
}
}
if
(-
1
==
DateUtil
.
compareStrDay
(
nowTimeStr
,
sellTimeLocalNewStr
))
{
// 还没到售卖期
if
(-
1
==
DateUtil
.
compareStrDay
(
nowTimeStr
,
sellTimeLocalNewStr
))
{
// 还没到售卖期
log
.
info
(
"还没到售卖期:[nowTimeStr=[{}], [sellTimeLocalNewStr=[{}]"
,
log
.
info
(
"还没到售卖期:[nowTimeStr=[{}], [sellTimeLocalNewStr=[{}]"
,
nowTimeStr
,
sellTimeLocalNewStr
);
nowTimeStr
,
sellTimeLocalNewStr
);
continue
;
continue
;
}
}
// 发送模板消息接口
// 发送模板消息接口
WxMpTemplateMessage
templateMessage
=
WxMpTemplateMessage
.
builder
()
WxMpTemplateMessage
templateMessage
=
getTemplateMessage
(
templateId
,
sweetWechatUser
.
getOpenId
(),
h5Url
.
concat
(
"/#/ticket/detail?id="
).
concat
(
remindInfo
.
getPerformancesId
()));
// 接收者openid
.
toUser
(
sweetWechatUser
.
getOpenId
())
// 模板id
.
templateId
(
templateId
)
// 模板跳转链接
.
url
(
h5Url
.
concat
(
"/#/ticket/detail?id="
).
concat
(
remindInfo
.
getPerformancesId
()))
.
build
();
// 添加模板数据
// 添加模板数据
templateMessage
.
addData
(
new
WxMpTemplateData
(
"first"
,
"您关注的演出即将开始售票"
))
templateMessage
.
addData
(
new
WxMpTemplateData
(
"first"
,
"您关注的演出即将开始售票"
))
.
addData
(
new
WxMpTemplateData
(
"keyword1"
,
performanceVo
.
getTitle
()))
.
addData
(
new
WxMpTemplateData
(
"keyword1"
,
performanceVo
.
getTitle
()))
.
addData
(
new
WxMpTemplateData
(
"keyword2"
,
kylinTicketTimesVo
.
getTitle
()))
.
addData
(
new
WxMpTemplateData
(
"keyword2"
,
kylinTicketTimesVo
.
getTitle
()))
.
addData
(
new
WxMpTemplateData
(
"keyword3"
,
performanceVo
.
getFieldName
()))
.
addData
(
new
WxMpTemplateData
(
"keyword3"
,
performanceVo
.
getFieldName
()))
.
addData
(
new
WxMpTemplateData
(
"remark"
,
"点击这里跳转购票"
));
.
addData
(
new
WxMpTemplateData
(
"remark"
,
"点击这里跳转购票"
));
String
msgId
=
null
;
String
msgId
=
sendTmpMsg
(
templateMessage
);
try
{
// 发送模板消息
WxMpConfigStorage
wxMpConfig
=
wxMpConfig
(
appid
,
secret
);
WxMpService
wxMpService
=
wxMpService
(
wxMpConfig
);
msgId
=
wxMpService
.
getTemplateMsgService
().
sendTemplateMsg
(
templateMessage
);
if
(
null
!=
msgId
)
{
if
(
null
!=
msgId
)
{
redisDataUtils
.
delSweetRemind
(
remindInfo
.
getUnionId
());
remindIdList
.
add
(
remindId
);
}
}
catch
(
WxErrorException
e
)
{
log
.
error
(
"小程序演出提醒消息发送异常"
,
e
);
}
}
log
.
info
(
"发送成功:[msgId=[{}]"
,
msgId
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
error
(
"小程序演出提醒消息处理异常"
,
e
);
log
.
error
(
"小程序演出提醒消息处理异常"
,
e
);
}
}
}
}
if
(!
CollectionUtils
.
isEmpty
(
remindIdList
))
{
SweetRemind
remindUpdate
=
SweetRemind
.
getNew
();
remindUpdate
.
setIsPush
(
2
);
remindUpdate
.
setUpdatedAt
(
LocalDateTime
.
now
());
sweetRemindMapper
.
update
(
remindUpdate
,
Wrappers
.
lambdaUpdate
(
SweetRemind
.
class
)
.
in
(
SweetRemind:
:
getRemindId
,
remindIdList
)
);
}
}
}
return
ResponseDto
.
success
();
return
ResponseDto
.
success
();
}
}
public
ResponseDto
sendMsg
()
public
void
subscribeSend
(
SweetWechatUser
sweetWechatUser
)
{
{
String
templateId
=
"y-j82V1TYhlTH1j8QscuDPcPQtNiDtENb7N5IZMBvqU"
;
String
templateId
=
"CNLDBZYQoDgTWudicx8WU81Jr9b6RyG9hmK4O0tpK-k"
;
try
{
return
send
(
templateId
);
String
nowTime
=
DateUtil
.
getNowTime
();
if
(
DateUtil
.
compareStrDay
(
nowTime
,
"2021-08-14 10:00:00"
)
==
1
)
{
WxMpTemplateMessage
templateMessage
=
getTemplateMessage
(
templateId
,
sweetWechatUser
.
getOpenId
(),
appletAppid
,
"pages/webview?query=active"
);
// 添加模板数据
templateMessage
.
addData
(
new
WxMpTemplateData
(
"first"
,
"感谢关注「正在现场」服务号。我们是草莓音乐节演出官方票务平台。"
))
.
addData
(
new
WxMpTemplateData
(
"keyword1"
,
"您已成功关注「正在现场」服务号"
))
.
addData
(
new
WxMpTemplateData
(
"keyword2"
,
"4006-310-750"
))
.
addData
(
new
WxMpTemplateData
(
"remark"
,
"点击下方小程序,继续参与「和我最有缘的音乐人」测试"
));
String
msgId
=
sendTmpMsg
(
templateMessage
);
}
else
{
WxMpTemplateMessage
templateMessage
=
getTemplateMessage
(
templateId
,
sweetWechatUser
.
getOpenId
(),
""
);
// 添加模板数据
templateMessage
.
addData
(
new
WxMpTemplateData
(
"first"
,
"感谢关注「正在现场」服务号。我们是草莓音乐节演出官方票务平台。"
))
.
addData
(
new
WxMpTemplateData
(
"keyword1"
,
"您已成功关注「正在现场」服务号"
))
.
addData
(
new
WxMpTemplateData
(
"keyword2"
,
"4006-310-750"
))
.
addData
(
new
WxMpTemplateData
(
"remark"
,
"随时查阅订单信息,第一时间获取演出开售提醒,更天天有福利,周周有惊喜!"
));
String
msgId
=
sendTmpMsg
(
templateMessage
);
}
}
catch
(
Exception
e
)
{
log
.
error
(
"关注模版消息处理异常"
,
e
);
}
}
/**
* 获取templateMessage
*
* @param templateId
* @param openId
* @param url
* @return
*/
private
WxMpTemplateMessage
getTemplateMessage
(
String
templateId
,
String
openId
,
String
url
)
{
WxMpTemplateMessage
templateMessage
=
WxMpTemplateMessage
.
builder
()
// 接收者openid
.
toUser
(
openId
)
// 模板id
.
templateId
(
templateId
)
// 模板跳转链接
.
url
(
url
)
.
build
();
return
templateMessage
;
}
private
WxMpTemplateMessage
getTemplateMessage
(
String
templateId
,
String
openId
,
String
appid
,
String
pagePath
)
{
//配置小程序信息
WxMpTemplateMessage
.
MiniProgram
miniProgram
=
new
WxMpTemplateMessage
.
MiniProgram
();
miniProgram
.
setAppid
(
appid
);
//小程序appid
miniProgram
.
setUsePath
(
false
);
miniProgram
.
setPagePath
(
pagePath
);
//用户点击时需要跳转的小程序页面
WxMpTemplateMessage
templateMessage
=
WxMpTemplateMessage
.
builder
()
// 接收者openid
.
toUser
(
openId
)
// 模板id
.
templateId
(
templateId
)
// 模板跳转链接
.
miniProgram
(
miniProgram
)
.
build
();
return
templateMessage
;
}
/**
* 发送消息
*
* @param templateMessage
* @return
*/
private
String
sendTmpMsg
(
WxMpTemplateMessage
templateMessage
)
{
String
msgId
=
null
;
try
{
// 发送模板消息
WxMpConfigStorage
wxMpConfig
=
wxMpConfig
(
appid
,
secret
);
WxMpService
wxMpService
=
wxMpService
(
wxMpConfig
);
msgId
=
wxMpService
.
getTemplateMsgService
().
sendTemplateMsg
(
templateMessage
);
log
.
info
(
"发送成功:[msgId=[{}]"
,
msgId
);
}
catch
(
WxErrorException
e
)
{
log
.
error
(
"模版消息发送异常"
,
e
);
}
log
.
info
(
"模版消息发送成功:[msgId=[{}]"
,
msgId
);
return
msgId
;
}
}
private
WxMpConfigStorage
wxMpConfig
(
String
appId
,
String
appSecret
)
{
private
WxMpConfigStorage
wxMpConfig
(
String
appId
,
String
appSecret
)
{
...
@@ -153,4 +238,13 @@ public class SweetWechatTemplateServiceImpl {
...
@@ -153,4 +238,13 @@ public class SweetWechatTemplateServiceImpl {
redisDataUtils
.
setSweetRemind
(
openId
,
unionId
,
performancesId
);
redisDataUtils
.
setSweetRemind
(
openId
,
unionId
,
performancesId
);
return
ResponseDto
.
success
();
return
ResponseDto
.
success
();
}
}
public
boolean
followStatus
(
String
unionId
)
{
SweetWechatUser
sweetWechatUser
=
redisDataUtils
.
getSweetWechatUser
(
unionId
);
if
(
null
!=
sweetWechatUser
&&
!
sweetWechatUser
.
getUnionId
().
isEmpty
())
{
return
true
;
}
else
{
return
false
;
}
}
}
}
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/utils/ObjectUtil.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
sweet
.
utils
;
import
com.liquidnet.service.base.PagedResult
;
import
com.liquidnet.service.sweet.dto.SweetManualAppletDto
;
import
com.liquidnet.service.sweet.dto.SweetManualAppletMDSKDto
;
import
com.liquidnet.service.sweet.dto.SweetManualArtistListDto
;
import
com.liquidnet.service.sweet.dto.SweetManualArtistListMDSKDto
;
import
com.liquidnet.service.sweet.entity.SweetManualShop
;
import
com.liquidnet.service.sweet.entity.SweetManualShopMdsk
;
import
java.util.ArrayList
;
public
class
ObjectUtil
{
private
static
final
ArrayList
<
SweetManualAppletDto
>
sweetManualAppletDtoList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
SweetManualArtistListDto
>
sweetManualArtistListDtoList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
SweetManualShop
>
sweetManualShopList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
SweetManualAppletMDSKDto
>
sweetManualAppletMDSKDtoList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
SweetManualArtistListMDSKDto
>
sweetManualArtistListMDSKDtoList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
SweetManualShopMdsk
>
sweetManualShopMDSKList
=
new
ArrayList
<>();
public
static
ArrayList
<
SweetManualAppletDto
>
getSweetManualAppletDtoList
()
{
return
(
ArrayList
<
SweetManualAppletDto
>)
sweetManualAppletDtoList
.
clone
();
}
public
static
ArrayList
<
SweetManualArtistListDto
>
getSweetManualArtistListDtoList
()
{
return
(
ArrayList
<
SweetManualArtistListDto
>)
sweetManualArtistListDtoList
.
clone
();
}
public
static
ArrayList
<
SweetManualShop
>
getSweetManualShopList
()
{
return
(
ArrayList
<
SweetManualShop
>)
sweetManualShopList
.
clone
();
}
public
static
ArrayList
<
SweetManualAppletMDSKDto
>
getSweetManualAppletMDSKDtoList
()
{
return
(
ArrayList
<
SweetManualAppletMDSKDto
>)
sweetManualAppletMDSKDtoList
.
clone
();
}
public
static
ArrayList
<
SweetManualArtistListMDSKDto
>
getSweetManualArtistListMDSKDtoList
()
{
return
(
ArrayList
<
SweetManualArtistListMDSKDto
>)
sweetManualArtistListMDSKDtoList
.
clone
();
}
public
static
ArrayList
<
SweetManualShopMdsk
>
getSweetManualShopMdskList
()
{
return
(
ArrayList
<
SweetManualShopMdsk
>)
sweetManualShopMDSKList
.
clone
();
}
}
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/utils/RedisDataUtils.java
View file @
fa7e2b86
...
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
...
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.commons.lang.util.CollectionUtil
;
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.service.base.SqlMapping
;
import
com.liquidnet.service.base.SqlMapping
;
import
com.liquidnet.service.base.constant.MQConst
;
import
com.liquidnet.service.base.constant.MQConst
;
import
com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo
;
import
com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo
;
...
@@ -14,6 +15,7 @@ import com.liquidnet.service.sweet.dto.SweetManualArtistListDto;
...
@@ -14,6 +15,7 @@ import com.liquidnet.service.sweet.dto.SweetManualArtistListDto;
import
com.liquidnet.service.sweet.dto.SweetManualArtistStageListDto
;
import
com.liquidnet.service.sweet.dto.SweetManualArtistStageListDto
;
import
com.liquidnet.service.sweet.entity.*
;
import
com.liquidnet.service.sweet.entity.*
;
import
com.liquidnet.service.sweet.mapper.*
;
import
com.liquidnet.service.sweet.mapper.*
;
import
com.liquidnet.service.sweet.vo.SweetAnswerVo
;
import
com.liquidnet.service.sweet.vo.SweetArtistsRelationVo
;
import
com.liquidnet.service.sweet.vo.SweetArtistsRelationVo
;
import
com.liquidnet.service.sweet.vo.SweetRemindVo
;
import
com.liquidnet.service.sweet.vo.SweetRemindVo
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
@@ -97,7 +99,7 @@ public class RedisDataUtils {
...
@@ -97,7 +99,7 @@ public class RedisDataUtils {
Date
dateEnd
=
DateUtil
.
parse
(
sweetManualAppletDto
.
getTimeEnd
(),
DateUtil
.
DATE_SMALL_STR
);
Date
dateEnd
=
DateUtil
.
parse
(
sweetManualAppletDto
.
getTimeEnd
(),
DateUtil
.
DATE_SMALL_STR
);
Date
dateStart
=
DateUtil
.
parse
(
sweetManualAppletDto
.
getTimeStart
(),
DateUtil
.
DATE_SMALL_STR
);
Date
dateStart
=
DateUtil
.
parse
(
sweetManualAppletDto
.
getTimeStart
(),
DateUtil
.
DATE_SMALL_STR
);
int
intervalDay
=
(
int
)
DateUtil
.
intervalDays
(
dateStart
,
dateEnd
);
int
intervalDay
=
(
int
)
DateUtil
.
intervalDays
(
dateStart
,
dateEnd
);
ArrayList
<
String
>
list
=
new
ArrayList
<>
();
ArrayList
<
String
>
list
=
CollectionUtil
.
arrayListString
();
list
.
add
(
DateUtil
.
format
(
dateStart
,
DateUtil
.
Formatter
.
yyyy_MM_dd
));
list
.
add
(
DateUtil
.
format
(
dateStart
,
DateUtil
.
Formatter
.
yyyy_MM_dd
));
for
(
int
i
=
0
;
i
<
intervalDay
;
i
++)
{
for
(
int
i
=
0
;
i
<
intervalDay
;
i
++)
{
list
.
add
(
DateUtil
.
format
(
DateUtil
.
addDay
(
dateStart
,
i
+
1
),
DateUtil
.
Formatter
.
yyyy_MM_dd
));
list
.
add
(
DateUtil
.
format
(
DateUtil
.
addDay
(
dateStart
,
i
+
1
),
DateUtil
.
Formatter
.
yyyy_MM_dd
));
...
@@ -218,7 +220,7 @@ public class RedisDataUtils {
...
@@ -218,7 +220,7 @@ public class RedisDataUtils {
vo
.
setUid
(
uid
);
vo
.
setUid
(
uid
);
if
(
type
.
equalsIgnoreCase
(
"sign"
))
{
if
(
type
.
equalsIgnoreCase
(
"sign"
))
{
if
(
vo
.
getSignList
()
==
null
)
{
if
(
vo
.
getSignList
()
==
null
)
{
ArrayList
<
String
>
signList
=
new
ArrayList
<>
();
ArrayList
<
String
>
signList
=
CollectionUtil
.
arrayListString
();
signList
.
add
(
artistsId
);
signList
.
add
(
artistsId
);
vo
.
setSignList
(
signList
);
vo
.
setSignList
(
signList
);
sqls
.
add
(
SqlMapping
.
get
(
"sweet_user_relation.insert"
));
sqls
.
add
(
SqlMapping
.
get
(
"sweet_user_relation.insert"
));
...
@@ -242,7 +244,7 @@ public class RedisDataUtils {
...
@@ -242,7 +244,7 @@ public class RedisDataUtils {
}
}
}
else
if
(
type
.
equalsIgnoreCase
(
"watch"
))
{
}
else
if
(
type
.
equalsIgnoreCase
(
"watch"
))
{
if
(
vo
.
getWatchList
()
==
null
)
{
if
(
vo
.
getWatchList
()
==
null
)
{
ArrayList
<
String
>
watchList
=
new
ArrayList
<>
();
ArrayList
<
String
>
watchList
=
CollectionUtil
.
arrayListString
();
watchList
.
add
(
artistsId
);
watchList
.
add
(
artistsId
);
vo
.
setWatchList
(
watchList
);
vo
.
setWatchList
(
watchList
);
sqls
.
add
(
SqlMapping
.
get
(
"sweet_user_relation.insert"
));
sqls
.
add
(
SqlMapping
.
get
(
"sweet_user_relation.insert"
));
...
@@ -303,33 +305,38 @@ public class RedisDataUtils {
...
@@ -303,33 +305,38 @@ public class RedisDataUtils {
// 小程序演出提醒
// 小程序演出提醒
public
void
setSweetRemind
(
String
openId
,
String
unionId
,
String
performancesId
)
{
public
void
setSweetRemind
(
String
openId
,
String
unionId
,
String
performancesId
)
{
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_REMIND
.
concat
(
unionId
);
SweetRemindVo
sweetRemindVo
=
SweetRemindVo
.
getNew
();
SweetRemindVo
sweetRemindVo
=
SweetRemindVo
.
getNew
();
sweetRemindVo
.
setRemindId
(
IDGenerator
.
nextSnowId
());
sweetRemindVo
.
setCreatedAt
(
DateUtil
.
getNowTime
());
sweetRemindVo
.
setCreatedAt
(
DateUtil
.
getNowTime
());
sweetRemindVo
.
setPerformancesId
(
performancesId
);
sweetRemindVo
.
setPerformancesId
(
performancesId
);
sweetRemindVo
.
setUnionId
(
unionId
);
sweetRemindVo
.
setUnionId
(
unionId
);
sweetRemindVo
.
setOpenId
(
openId
);
sweetRemindVo
.
setOpenId
(
openId
);
// if (null != performanceInfo) {
LinkedList
<
String
>
sqls
=
CollectionUtil
.
linkedListString
();
// sweetRemindVo.setFieldName(performanceInfo.getFieldName());
LinkedList
<
Object
[]>
sqlsDataA
=
CollectionUtil
.
linkedListObjectArr
();
// sweetRemindVo.setTitle(performanceInfo.getTitle());
LocalDateTime
now
=
LocalDateTime
.
now
();
// sweetRemindVo.setTimeStart(performanceInfo.getTimeStart());
sqls
.
add
(
SqlMapping
.
get
(
"sweet_remind.insert"
));
// sweetRemindVo.setSellTime(performanceInfo.getSellTime());
sqlsDataA
.
add
(
new
Object
[]{
// }
sweetRemindVo
.
getRemindId
(),
sweetRemindVo
.
getOpenId
(),
sweetRemindVo
.
getUnionId
(),
sweetRemindVo
.
getPerformancesId
(),
redisUtil
.
set
(
redisKey
,
sweetRemindVo
);
});
}
queueUtils
.
sendMsgByRedis
(
MQConst
.
SweetQueue
.
SWEET_REMIND_INSERT_DRAW
.
getKey
(),
SqlMapping
.
gets
(
sqls
,
sqlsDataA
));
public
void
delSweetRemind
(
String
unionId
)
{
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_REMIND
.
concat
(
unionId
);
redisUtil
.
del
(
redisKey
);
}
}
// 正在现场服务号关注事件储存用户信息
// 正在现场服务号关注事件储存用户信息
public
void
setSweetWechatUser
(
SweetWechatUser
sweetWechatUser
)
{
public
void
setSweetWechatUser
(
SweetWechatUser
sweetWechatUser
)
{
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_WECHAT_USER_INFO
.
concat
(
sweetWechatUser
.
getUnionId
());
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_WECHAT_USER_INFO
.
concat
(
sweetWechatUser
.
getUnionId
());
String
redisKeyUnid
=
SweetConstant
.
REDIS_KEY_SWEET_WECHAT_USER_UNIONID
.
concat
(
sweetWechatUser
.
getOpenId
());
redisUtil
.
set
(
redisKey
,
sweetWechatUser
);
redisUtil
.
set
(
redisKey
,
sweetWechatUser
);
redisUtil
.
set
(
redisKeyUnid
,
sweetWechatUser
.
getUnionId
());
}
public
String
getSweetWechatUserUnionid
(
String
openid
)
{
if
(
openid
.
isEmpty
())
{
return
null
;
}
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_WECHAT_USER_UNIONID
.
concat
(
openid
);
return
(
String
)
redisUtil
.
get
(
redisKey
);
}
}
public
SweetWechatUser
getSweetWechatUser
(
String
unionid
)
{
public
SweetWechatUser
getSweetWechatUser
(
String
unionid
)
{
if
(
unionid
.
isEmpty
())
{
if
(
unionid
.
isEmpty
())
{
return
null
;
return
null
;
...
@@ -337,6 +344,14 @@ public class RedisDataUtils {
...
@@ -337,6 +344,14 @@ public class RedisDataUtils {
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_WECHAT_USER_INFO
.
concat
(
unionid
);
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_WECHAT_USER_INFO
.
concat
(
unionid
);
return
(
SweetWechatUser
)
redisUtil
.
get
(
redisKey
);
return
(
SweetWechatUser
)
redisUtil
.
get
(
redisKey
);
}
}
public
void
delSweetWechatUser
(
String
unionid
,
String
openid
)
{
if
(!
unionid
.
isEmpty
())
{
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_WECHAT_USER_INFO
.
concat
(
unionid
);
redisUtil
.
del
(
redisKey
);
String
redisKeyUnid
=
SweetConstant
.
REDIS_KEY_SWEET_WECHAT_USER_UNIONID
.
concat
(
openid
);
redisUtil
.
del
(
redisKeyUnid
);
}
}
// 艺人详情
// 艺人详情
public
SweetArtists
setArtistsDetails
(
String
artistsId
)
{
public
SweetArtists
setArtistsDetails
(
String
artistsId
)
{
...
@@ -377,4 +392,15 @@ public class RedisDataUtils {
...
@@ -377,4 +392,15 @@ public class RedisDataUtils {
queueUtils
.
sendMsgByRedis
(
MQConst
.
SweetQueue
.
LUCK_DRAW
.
getKey
(),
queueUtils
.
sendMsgByRedis
(
MQConst
.
SweetQueue
.
LUCK_DRAW
.
getKey
(),
SqlMapping
.
gets
(
sqls
,
sqlsDataA
));
SqlMapping
.
gets
(
sqls
,
sqlsDataA
));
}
}
// 答案
public
void
setSweetAnswer
(
SweetAnswerVo
sweetAnswerVo
)
{
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_ANSWER_PHONE
.
concat
(
sweetAnswerVo
.
getPhone
());
redisUtil
.
set
(
redisKey
,
sweetAnswerVo
);
}
public
SweetAnswerVo
getSweetAnswer
(
String
phone
)
{
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_ANSWER_PHONE
.
concat
(
phone
);
SweetAnswerVo
sweetAnswerVo
=
(
SweetAnswerVo
)
redisUtil
.
get
(
redisKey
);
return
sweetAnswerVo
;
}
}
}
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/utils/RedisMDSKDataUtils.java
View file @
fa7e2b86
...
@@ -92,7 +92,7 @@ public class RedisMDSKDataUtils {
...
@@ -92,7 +92,7 @@ public class RedisMDSKDataUtils {
Date
dateEnd
=
DateUtil
.
parse
(
sweetManualAppletDto
.
getTimeEnd
(),
DateUtil
.
DATE_SMALL_STR
);
Date
dateEnd
=
DateUtil
.
parse
(
sweetManualAppletDto
.
getTimeEnd
(),
DateUtil
.
DATE_SMALL_STR
);
Date
dateStart
=
DateUtil
.
parse
(
sweetManualAppletDto
.
getTimeStart
(),
DateUtil
.
DATE_SMALL_STR
);
Date
dateStart
=
DateUtil
.
parse
(
sweetManualAppletDto
.
getTimeStart
(),
DateUtil
.
DATE_SMALL_STR
);
int
intervalDay
=
(
int
)
DateUtil
.
intervalDays
(
dateStart
,
dateEnd
);
int
intervalDay
=
(
int
)
DateUtil
.
intervalDays
(
dateStart
,
dateEnd
);
ArrayList
<
String
>
list
=
new
ArrayList
<>
();
ArrayList
<
String
>
list
=
CollectionUtil
.
arrayListString
();
list
.
add
(
DateUtil
.
format
(
dateStart
,
DateUtil
.
Formatter
.
yyyy_MM_dd
));
list
.
add
(
DateUtil
.
format
(
dateStart
,
DateUtil
.
Formatter
.
yyyy_MM_dd
));
for
(
int
i
=
0
;
i
<
intervalDay
;
i
++)
{
for
(
int
i
=
0
;
i
<
intervalDay
;
i
++)
{
list
.
add
(
DateUtil
.
format
(
DateUtil
.
addDay
(
dateStart
,
i
+
1
),
DateUtil
.
Formatter
.
yyyy_MM_dd
));
list
.
add
(
DateUtil
.
format
(
DateUtil
.
addDay
(
dateStart
,
i
+
1
),
DateUtil
.
Formatter
.
yyyy_MM_dd
));
...
@@ -213,7 +213,7 @@ public class RedisMDSKDataUtils {
...
@@ -213,7 +213,7 @@ public class RedisMDSKDataUtils {
vo
.
setUid
(
uid
);
vo
.
setUid
(
uid
);
if
(
type
.
equalsIgnoreCase
(
"sign"
))
{
if
(
type
.
equalsIgnoreCase
(
"sign"
))
{
if
(
vo
.
getSignList
()
==
null
)
{
if
(
vo
.
getSignList
()
==
null
)
{
ArrayList
<
String
>
signList
=
new
ArrayList
<>
();
ArrayList
<
String
>
signList
=
CollectionUtil
.
arrayListString
();
signList
.
add
(
artistsId
);
signList
.
add
(
artistsId
);
vo
.
setSignList
(
signList
);
vo
.
setSignList
(
signList
);
sqls
.
add
(
SqlMapping
.
get
(
"sweet_user_relation_mdsk.insert"
));
sqls
.
add
(
SqlMapping
.
get
(
"sweet_user_relation_mdsk.insert"
));
...
@@ -237,7 +237,7 @@ public class RedisMDSKDataUtils {
...
@@ -237,7 +237,7 @@ public class RedisMDSKDataUtils {
}
}
}
else
if
(
type
.
equalsIgnoreCase
(
"watch"
))
{
}
else
if
(
type
.
equalsIgnoreCase
(
"watch"
))
{
if
(
vo
.
getWatchList
()
==
null
)
{
if
(
vo
.
getWatchList
()
==
null
)
{
ArrayList
<
String
>
watchList
=
new
ArrayList
<>
();
ArrayList
<
String
>
watchList
=
CollectionUtil
.
arrayListString
();
watchList
.
add
(
artistsId
);
watchList
.
add
(
artistsId
);
vo
.
setWatchList
(
watchList
);
vo
.
setWatchList
(
watchList
);
sqls
.
add
(
SqlMapping
.
get
(
"sweet_user_relation_mdsk.insert"
));
sqls
.
add
(
SqlMapping
.
get
(
"sweet_user_relation_mdsk.insert"
));
...
...
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/vo/SweetAnswerVo.java
0 → 100644
View file @
fa7e2b86
package
com
.
liquidnet
.
service
.
sweet
.
vo
;
import
com.liquidnet.service.sweet.entity.SweetAnswer
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
@Data
public
class
SweetAnswerVo
implements
Serializable
,
Cloneable
{
/**
* 手机号
*/
private
String
phone
;
/**
* 答案json
*/
private
String
answerJson
;
/**
* 图片
*/
private
String
imgUrl
;
/**
* 创建时间
*/
private
LocalDateTime
createdAt
;
/**
* 更新时间
*/
private
LocalDateTime
updatedAt
;
private
static
final
SweetAnswerVo
obj
=
new
SweetAnswerVo
();
public
static
SweetAnswerVo
getNew
()
{
try
{
return
(
SweetAnswerVo
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
return
new
SweetAnswerVo
();
}
}
public
SweetAnswerVo
copy
(
SweetAnswer
source
)
{
if
(
null
==
source
)
return
this
;
this
.
setPhone
(
source
.
getPhone
());
this
.
setAnswerJson
(
source
.
getAnswerJson
());
this
.
setImgUrl
(
source
.
getImgUrl
());
this
.
setCreatedAt
(
source
.
getCreatedAt
());
this
.
setUpdatedAt
(
source
.
getUpdatedAt
());
return
this
;
}
}
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/vo/SweetRemindVo.java
View file @
fa7e2b86
...
@@ -9,6 +9,7 @@ public class SweetRemindVo implements Serializable, Cloneable {
...
@@ -9,6 +9,7 @@ public class SweetRemindVo implements Serializable, Cloneable {
private
String
performancesId
;
private
String
performancesId
;
private
String
openId
;
private
String
openId
;
private
String
unionId
;
private
String
unionId
;
private
String
remindId
;
/*private String title;
/*private String title;
private String timeStart;
private String timeStart;
private String sellTime;
private String sellTime;
...
...
liquidnet-bus-service/liquidnet-service-sweet/src/main/resources/com/liquidnet/service/sweet/mapper/SweetAnswerMapper.xml
0 → 100644
View file @
fa7e2b86
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.liquidnet.service.sweet.mapper.SweetAnswerMapper"
>
</mapper>
liquidnet-bus-service/liquidnet-service-sweet/src/main/resources/com/liquidnet/service/sweet/mapper/SweetRemindMapper.xml
0 → 100644
View file @
fa7e2b86
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.liquidnet.service.sweet.mapper.SweetRemindMapper"
>
</mapper>
liquidnet-bus-service/liquidnet-service-sweet/src/main/resources/sqlmap.properties
View file @
fa7e2b86
...
@@ -59,3 +59,11 @@ sweet_user_relation_mdsk.delete=DELETE FROM sweet_user_relation_mdsk WHERE user
...
@@ -59,3 +59,11 @@ sweet_user_relation_mdsk.delete=DELETE FROM sweet_user_relation_mdsk WHERE user
# ------------------------用户关系----------------------------
# ------------------------用户关系----------------------------
sweet_luck_draw.insert
=
INSERT INTO sweet_luck_draw (user_id,luck_draw_num,status,created_at) VALUES (?,?,1,?)
sweet_luck_draw.insert
=
INSERT INTO sweet_luck_draw (user_id,luck_draw_num,status,created_at) VALUES (?,?,1,?)
# --------------------------答案--------------------------
sweet_answer.insert
=
INSERT INTO sweet_answer (answer_id,phone,answer_json,img_url) VALUES (?,?,?,?)
# --------------------------关注/取消服务号的用户信息--------------------------
sweet_user.insert
=
INSERT INTO sweet_wechat_user (user_id,openId,unionId,nickname,sexDesc,sex,headImgUrl,language,country,province,city,subscribeTime,subscribeScene) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)
sweet_user.update
=
UPDATE sweet_wechat_user SET is_cancel = ?, updated_at = ? WHERE unionId = ?
# --------------------------提醒记录--------------------------
sweet_remind.insert
=
INSERT INTO sweet_remind (remind_id,openId,unionId,performancesId) VALUES (?,?,?,?)
\ No newline at end of file
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