记得上下班打卡 | 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
9a92c31a
Commit
9a92c31a
authored
May 24, 2021
by
张国柄
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
调整redis key for member user info;
会员续费到期时间计算逻辑调整;
parent
810f4aef
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
19 additions
and
13 deletions
+19
-13
AdamRedisConst.java
...a/com/liquidnet/service/adam/constant/AdamRedisConst.java
+1
-1
AdamMemberOrderServiceImpl.java
...service/adam/service/impl/AdamMemberOrderServiceImpl.java
+15
-11
AdamUserMemberServiceImpl.java
.../service/adam/service/impl/AdamUserMemberServiceImpl.java
+3
-1
No files found.
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/constant/AdamRedisConst.java
View file @
9a92c31a
...
...
@@ -26,7 +26,7 @@ public class AdamRedisConst {
public
static
final
String
MEMBER_MEMBER_NO_MAX_KEY
=
ADAM
.
concat
(
":members:member_no_max:"
);
public
static
final
String
INFO_MEMBERS_USER
_INFO
=
ADAM
.
concat
(
":list:members:user:info:
"
);
public
static
final
String
INFO_MEMBERS_USER
=
ADAM
.
concat
(
":list:members:user
"
);
public
static
final
String
INFO_MEMBERS_REPERTORY_INFO
=
ADAM
.
concat
(
":list:members:repertory:"
);
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamMemberOrderServiceImpl.java
View file @
9a92c31a
...
...
@@ -4,7 +4,6 @@ import com.alibaba.fastjson.JSON;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.common.mq.constant.MQConst
;
import
com.liquidnet.commons.lang.util.*
;
import
com.liquidnet.service.adam.constant.AdamMemberConst
;
import
com.liquidnet.service.adam.constant.AdamRedisConst
;
...
...
@@ -21,7 +20,6 @@ import com.liquidnet.service.adam.service.IAdamMemberService;
import
com.liquidnet.service.adam.service.IAdamUserMemberService
;
import
com.liquidnet.service.adam.service.admin.IAdamMemberPriceService
;
import
com.liquidnet.service.adam.util.MemberUtil
;
import
com.liquidnet.service.base.SqlMapping
;
import
com.mongodb.BasicDBObject
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.amqp.rabbit.core.RabbitTemplate
;
...
...
@@ -91,8 +89,10 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
public
AdamMemberOrderVo
getMemberOrderInfo
(
String
uid
,
String
orderNo
)
{
AdamMemberOrderVo
orderVo
=
(
AdamMemberOrderVo
)
redisUtil
.
hget
(
AdamRedisConst
.
INFO_MEMBERS_ORDER_INFO
.
concat
(
uid
),
orderNo
);
if
(
null
==
orderVo
)
{
orderVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"orderNo"
).
is
(
orderNo
)),
orderVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"orderNo"
).
is
(
orderNo
)
.
and
(
"uid"
).
is
(
uid
)
),
AdamMemberOrderVo
.
class
,
AdamMemberOrderVo
.
class
.
getSimpleName
());
if
(
null
!=
orderVo
)
redisUtil
.
hset
(
AdamRedisConst
.
INFO_MEMBERS_ORDER_INFO
.
concat
(
uid
),
orderNo
,
orderVo
);
}
return
orderVo
;
}
...
...
@@ -205,7 +205,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
String
code
=
param
.
getMemberCode
();
int
type
=
param
.
getType
();
AdamUserMemberVo
userMemberVo
=
(
AdamUserMemberVo
)
redisUtil
.
get
(
AdamRedisConst
.
INFO_MEMBERS_USER_INFO
.
concat
(
uid
)
);
AdamUserMemberVo
userMemberVo
=
(
AdamUserMemberVo
)
redisUtil
.
hget
(
AdamRedisConst
.
INFO_MEMBERS_USER
,
uid
);
if
(
null
==
userMemberVo
)
{
userMemberVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"uid"
).
is
(
uid
)),
AdamUserMemberVo
.
class
,
AdamUserMemberVo
.
class
.
getSimpleName
());
}
...
...
@@ -268,7 +268,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
// 创建用户会员相关信息
mongoTemplate
.
insert
(
memberVo
,
AdamUserMemberVo
.
class
.
getSimpleName
());
redisUtil
.
set
(
AdamRedisConst
.
INFO_MEMBERS_USER_INFO
.
concat
(
uid
)
,
memberVo
);
redisUtil
.
hset
(
AdamRedisConst
.
INFO_MEMBERS_USER
,
uid
,
memberVo
);
// 更新旧数据
memberCodeVo
.
setState
(
AdamMemberConst
.
STATUS_USED
);
...
...
@@ -351,7 +351,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
AdamMemberCodeVo
codeVo
=
null
;
int
day
=
priceVo
.
getDays
();
try
{
if
(
AdamMemberConst
.
SUB_TYPE_BUY_VIP
==
orderVo
.
getMode
(
))
{
// 购买会员
if
(
AdamMemberConst
.
SUB_TYPE_BUY_VIP
.
equals
(
orderVo
.
getMode
()
))
{
// 购买会员
AdamUserMemberVo
userMemberInfo
=
adamUserMemberService
.
getUserMemberInfo
(
orderVo
.
getUid
());
if
(
null
==
userMemberInfo
)
{
// 创建会员
cardNumber
=
adamUserMemberService
.
getMaxMemberNo
(
orderVo
.
getMemberId
());
...
...
@@ -380,17 +380,21 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
// 订单写入MongoDB和Redis中
mongoTemplate
.
insert
(
createMemberUser
,
AdamUserMemberVo
.
class
.
getSimpleName
());
redisUtil
.
set
(
AdamRedisConst
.
INFO_MEMBERS_USER_INFO
.
concat
(
orderVo
.
getUid
()
),
createMemberUser
);
redisUtil
.
hset
(
AdamRedisConst
.
INFO_MEMBERS_USER
,
orderVo
.
getUid
(
),
createMemberUser
);
// 会员码使用记录
mongoTemplate
.
insert
(
codeVo
,
AdamMemberCodeVo
.
class
.
getSimpleName
());
redisUtil
.
hset
(
AdamRedisConst
.
INFO_MEMBERS_CODE_INFO
.
concat
(
codeVo
.
getBuyUid
()),
codeVo
.
getBuyOrderNo
(),
codeVo
);
// todo mq 发送数据到队列中
}
else
{
// 续费
// TODO: 2021/5/24 延期或存续
String
currentExpiryAt
=
userMemberInfo
.
getExpiryAt
();
Date
now
=
DateUtil
.
parse
(
DateUtil
.
getNowTime
(),
DateUtil
.
DATE_SMALL_STR
),
currentExpiryAtDate
=
DateUtil
.
parse
(
currentExpiryAt
,
DateUtil
.
DATE_FULL_STR
);
currentExpiryAtDate
=
currentExpiryAtDate
.
before
(
now
)
?
now
:
currentExpiryAtDate
;
Calendar
calendar
=
Calendar
.
getInstance
();
calendar
.
setTime
(
DateUtil
.
parse
(
currentExpiryAt
,
"yyyy-MM-dd HH:mm:ss"
)
);
calendar
.
setTime
(
currentExpiryAtDate
);
Date
expiryAt
=
DateUtil
.
getBeforeDayEnd
(
calendar
,
day
);
String
expiryAtStr
=
DateUtil
.
format
(
expiryAt
,
DateUtil
.
Formatter
.
yyyyMMddHHmmss
);
...
...
@@ -401,10 +405,10 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
mongoTemplate
.
getCollection
(
AdamUserMemberVo
.
class
.
getSimpleName
())
.
updateOne
(
Query
.
query
(
Criteria
.
where
(
"uid"
).
is
(
userMemberInfo
.
getUid
())).
getQueryObject
(),
object
);
redisUtil
.
set
(
AdamRedisConst
.
INFO_MEMBERS_USER_INFO
.
concat
(
orderVo
.
getUid
()
),
userMemberInfo
);
redisUtil
.
hset
(
AdamRedisConst
.
INFO_MEMBERS_USER
,
orderVo
.
getUid
(
),
userMemberInfo
);
}
}
if
(
AdamMemberConst
.
SUB_TYPE_BUY_VIP_CODE
==
orderVo
.
getMode
(
))
{
// 购买会员码
if
(
AdamMemberConst
.
SUB_TYPE_BUY_VIP_CODE
.
equals
(
orderVo
.
getMode
()
))
{
// 购买会员码
cardNumber
=
adamUserMemberService
.
getMaxMemberNo
(
orderVo
.
getMemberId
());
codeVo
=
this
.
getAdamMemberCodeVo
(
orderVo
,
result
.
getCode
(),
0
,
currentDateTime
);
codeVo
.
setState
(
0
);
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamUserMemberServiceImpl.java
View file @
9a92c31a
...
...
@@ -63,9 +63,11 @@ public class AdamUserMemberServiceImpl extends ServiceImpl<AdamUserMemberMapper,
@Override
public
AdamUserMemberVo
getUserMemberInfo
(
String
uid
)
{
AdamUserMemberVo
adamUserMemberVo
=
(
AdamUserMemberVo
)
redisUtil
.
hget
(
AdamRedisConst
.
INFO_MEMBERS_USER
_INFO
.
concat
(
uid
)
,
uid
);
AdamUserMemberVo
adamUserMemberVo
=
(
AdamUserMemberVo
)
redisUtil
.
hget
(
AdamRedisConst
.
INFO_MEMBERS_USER
,
uid
);
if
(
null
==
adamUserMemberVo
)
{
adamUserMemberVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"uid"
).
is
(
uid
)),
AdamUserMemberVo
.
class
,
AdamUserMemberVo
.
class
.
getSimpleName
());
if
(
null
!=
adamUserMemberVo
)
redisUtil
.
hset
(
AdamRedisConst
.
INFO_MEMBERS_USER
,
uid
,
adamUserMemberVo
);
}
return
adamUserMemberVo
;
}
...
...
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