记得上下班打卡 | 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
e236687f
Commit
e236687f
authored
Aug 29, 2022
by
张国柄
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
~api:转赠退还实现;
parent
930ebb60
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
55 additions
and
23 deletions
+55
-23
IGoblinUserDigitalArtworkService.java
...vice/goblin/service/IGoblinUserDigitalArtworkService.java
+4
-4
GoblinUserDigitalArtworkController.java
...goblin/controller/GoblinUserDigitalArtworkController.java
+5
-6
GoblinUserDigitalArtworkServiceImpl.java
...lin/service/impl/GoblinUserDigitalArtworkServiceImpl.java
+46
-13
No files found.
liquidnet-bus-api/liquidnet-service-goblin-api/src/main/java/com/liquidnet/service/goblin/service/IGoblinUserDigitalArtworkService.java
View file @
e236687f
...
...
@@ -27,16 +27,16 @@ public interface IGoblinUserDigitalArtworkService {
/**
* 藏品受赠确认领取
*
* @param
userDigitalArtworkVo GoblinUserDigitalArtworkVo
* @param
artworkId 藏品ID
* @return boolean, true-成功
*/
boolean
transferConfirmReceive
(
GoblinUserDigitalArtworkVo
userDigitalArtworkVo
);
boolean
transferConfirmReceive
(
String
artworkId
);
/**
* 藏品受赠确认退还
*
* @param
userDigitalArtworkVo GoblinUserDigitalArtworkVo
* @param
artworkId 藏品ID
* @return boolean, true-成功
*/
boolean
transferConfirmReturn
(
GoblinUserDigitalArtworkVo
userDigitalArtworkVo
);
boolean
transferConfirmReturn
(
String
artworkId
);
}
liquidnet-bus-service/liquidnet-service-goblin/liquidnet-service-goblin-impl/src/main/java/com/liquidnet/service/goblin/controller/GoblinUserDigitalArtworkController.java
View file @
e236687f
...
...
@@ -202,10 +202,10 @@ public class GoblinUserDigitalArtworkController {
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"140117"
));
// 已过转赠领取有效期
}
if
(!
GoblinStatusConst
.
TransferState
.
WAITING
.
name
().
equals
(
userDigitalArtworkVo
.
getTransferState
()))
{
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"140118"
));
// 藏品已领取
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
null
==
userDigitalArtworkVo
.
getTransferState
()
?
"140119"
:
"140118"
));
// 藏品已领取或已退还
}
if
(!
goblinRedisUtils
.
lockUserDigitalArtworkVoOperate
(
artworkId
))
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"140000"
));
boolean
transferReceiveRstFlg
=
goblinUserDigitalArtworkService
.
transferConfirmReceive
(
userDigitalArtworkVo
);
boolean
transferReceiveRstFlg
=
goblinUserDigitalArtworkService
.
transferConfirmReceive
(
artworkId
);
goblinRedisUtils
.
unlockUserDigitalArtworkVoOperate
(
artworkId
);
return
transferReceiveRstFlg
?
ResponseDto
.
success
()
:
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"140002"
));
}
...
...
@@ -222,12 +222,11 @@ public class GoblinUserDigitalArtworkController {
if
(
null
==
userDigitalArtworkVo
||
userDigitalArtworkVo
.
getDelFlg
().
equals
(
"1"
)
||
!
currentUid
.
equals
(
userDigitalArtworkVo
.
getReceiverUid
()))
{
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"140105"
));
// 藏品不存在
}
String
transferState
=
userDigitalArtworkVo
.
getTransferState
();
if
(!
GoblinStatusConst
.
TransferState
.
WAITING
.
name
().
equals
(
transferState
))
{
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
null
==
transferState
?
"140119"
:
"140118"
));
// 藏品已领取
if
(!
GoblinStatusConst
.
TransferState
.
WAITING
.
name
().
equals
(
userDigitalArtworkVo
.
getTransferState
()))
{
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
null
==
userDigitalArtworkVo
.
getTransferState
()
?
"140119"
:
"140118"
));
// 藏品已领取
}
if
(!
goblinRedisUtils
.
lockUserDigitalArtworkVoOperate
(
artworkId
))
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"140000"
));
boolean
transferReceiveRstFlg
=
goblinUserDigitalArtworkService
.
transferConfirmReturn
(
userDigitalArtworkVo
);
boolean
transferReceiveRstFlg
=
goblinUserDigitalArtworkService
.
transferConfirmReturn
(
artworkId
);
goblinRedisUtils
.
unlockUserDigitalArtworkVoOperate
(
artworkId
);
return
transferReceiveRstFlg
?
ResponseDto
.
success
()
:
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"140002"
));
}
...
...
liquidnet-bus-service/liquidnet-service-goblin/liquidnet-service-goblin-impl/src/main/java/com/liquidnet/service/goblin/service/impl/GoblinUserDigitalArtworkServiceImpl.java
View file @
e236687f
...
...
@@ -2,10 +2,7 @@ package com.liquidnet.service.goblin.service.impl;
import
com.fasterxml.jackson.databind.node.ObjectNode
;
import
com.liquidnet.commons.lang.util.*
;
import
com.liquidnet.service.base.MdbMessage
;
import
com.liquidnet.service.base.PagedResult
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.base.SqlMapping
;
import
com.liquidnet.service.base.*
;
import
com.liquidnet.service.base.constant.MQConst
;
import
com.liquidnet.service.galaxy.dto.param.GalaxyNftPublishAndBuyResultQueryReqDto
;
import
com.liquidnet.service.galaxy.dto.param.GalaxyNftPublishAndBuyResultQueryRespDto
;
...
...
@@ -435,7 +432,11 @@ public class GoblinUserDigitalArtworkServiceImpl implements IGoblinUserDigitalAr
}
@Override
public
boolean
transferConfirmReceive
(
GoblinUserDigitalArtworkVo
userDigitalArtworkVo
)
{
public
boolean
transferConfirmReceive
(
String
artworkId
)
{
GoblinUserDigitalArtworkVo
userDigitalArtworkVo
=
goblinRedisUtils
.
getUserDigitalArtworkVo
(
artworkId
);
if
(!
GoblinStatusConst
.
TransferState
.
WAITING
.
name
().
equals
(
userDigitalArtworkVo
.
getTransferState
()))
{
return
false
;
// 藏品已领取或已退还
}
LocalDateTime
currentDateTime
=
LocalDateTime
.
now
();
userDigitalArtworkVo
.
setUpdatedAt
(
currentDateTime
);
userDigitalArtworkVo
.
setTransferState
(
GoblinStatusConst
.
TransferState
.
PENDING
.
name
());
...
...
@@ -453,13 +454,13 @@ public class GoblinUserDigitalArtworkServiceImpl implements IGoblinUserDigitalAr
queueUtils
.
sendMsgByRedis
(
MQConst
.
GoblinQueue
.
BIZ_ARTWORK_TRANS_QUERY
.
getKey
(),
userDigitalArtworkVo
.
getArtworkId
().
concat
(
","
).
concat
(
String
.
valueOf
(
currentDateTime
)));
// Mongo同步更新
GoblinQueueBizMongoDto
goblinQueueBizMongoDto
=
GoblinQueueBizMongoDto
.
getNew
();
goblinQueueBizMongoDto
.
setCollect
(
GoblinUserDigitalArtworkVo
.
class
.
getSimpleName
());
goblinQueueBizMongoDto
.
setColumn
(
"artworkId"
);
goblinQueueBizMongoDto
.
setBizId
(
userDigitalArtworkVo
.
getArtworkId
());
goblinQueueBizMongoDto
.
setPrefix
(
GoblinRedisConst
.
USER_DIGITAL_ARTWORK
);
goblinQueueBizMongoDto
.
setOpType
(
2
);
queueUtils
.
sendMsgByRedis
(
MQConst
.
GoblinQueue
.
BIZ_NFT_MONGO
.
getKey
(),
goblinQueueBizMongoDto
.
toJson
());
MdbMessage
mdbMessage
=
MdbMessage
.
getNew
();
mdbMessage
.
setCollect
(
GoblinUserDigitalArtworkVo
.
class
.
getSimpleName
());
mdbMessage
.
setColumn
(
"artworkId"
);
mdbMessage
.
setBizId
(
userDigitalArtworkVo
.
getArtworkId
());
mdbMessage
.
setPrefix
(
GoblinRedisConst
.
USER_DIGITAL_ARTWORK
);
mdbMessage
.
setOpType
(
2
);
queueUtils
.
sendMsgByRedis
(
MQConst
.
GoblinQueue
.
BIZ_NFT_MONGO
.
getKey
(),
mdbMessage
.
toJson
());
// Mysql持久化
LinkedList
<
String
>
toMqSqls
=
CollectionUtil
.
linkedListString
();
...
...
@@ -478,7 +479,39 @@ public class GoblinUserDigitalArtworkServiceImpl implements IGoblinUserDigitalAr
}
@Override
public
boolean
transferConfirmReturn
(
GoblinUserDigitalArtworkVo
userDigitalArtworkVo
)
{
public
boolean
transferConfirmReturn
(
String
artworkId
)
{
GoblinUserDigitalArtworkVo
userDigitalArtworkVo
=
goblinRedisUtils
.
getUserDigitalArtworkVo
(
artworkId
);
if
(!
GoblinStatusConst
.
TransferState
.
WAITING
.
name
().
equals
(
userDigitalArtworkVo
.
getTransferState
()))
{
return
false
;
// 藏品已领取或已退还
}
String
receiverUid
=
userDigitalArtworkVo
.
getReceiverUid
(),
transferOrderId
=
userDigitalArtworkVo
.
getTransferOrderId
();
if
(
goblinRedisUtils
.
rmvUserDigitalArtworkIdsTransfer
(
receiverUid
,
artworkId
))
{
LocalDateTime
currentDateTime
=
LocalDateTime
.
now
();
// 转赠人藏品恢复
userDigitalArtworkVo
.
setTransferOrderId
(
null
);
userDigitalArtworkVo
.
setTransferState
(
null
);
userDigitalArtworkVo
.
setReceiverUid
(
null
);
userDigitalArtworkVo
.
setReceiverUser
(
null
);
userDigitalArtworkVo
.
setUpdatedAt
(
currentDateTime
);
goblinRedisUtils
.
setUserDigitalArtworkVo
(
userDigitalArtworkVo
);
// Mongo藏品数据更新
MdbMessage
mdbMessage
=
MdbMessage
.
getNew
();
mdbMessage
.
setCollect
(
GoblinUserDigitalArtworkVo
.
class
.
getSimpleName
());
mdbMessage
.
setColumn
(
"artworkId"
);
mdbMessage
.
setBizId
(
artworkId
);
mdbMessage
.
setPrefix
(
GoblinRedisConst
.
USER_DIGITAL_ARTWORK
);
mdbMessage
.
setOpType
(
2
);
queueUtils
.
sendMsgByRedis
(
MQConst
.
GoblinQueue
.
BIZ_NFT_MONGO
.
getKey
(),
mdbMessage
.
toJson
());
// Mysql转赠订单更新
LinkedList
<
String
>
toMqSqls
=
CollectionUtil
.
linkedListString
();
toMqSqls
.
add
(
SqlMapping
.
get
(
"goblin_nft_transfer_order.up_transfer_confirm"
));
// 藏品订单记录更新
LinkedList
<
Object
[]>
updateNftTransferOrderObjs
=
CollectionUtil
.
linkedListObjectArr
();
updateNftTransferOrderObjs
.
add
(
new
Object
[]{
2
,
currentDateTime
,
transferOrderId
});
queueUtils
.
sendMsgByRedis
(
MQConst
.
GoblinQueue
.
SQL_ARTWORK_GEN
.
getKey
(),
SqlMapping
.
gets
(
toMqSqls
,
updateNftTransferOrderObjs
));
return
true
;
}
return
false
;
}
...
...
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