记得上下班打卡 | 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
04113830
Commit
04113830
authored
Apr 07, 2022
by
jiangxiulong
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/dev_nft_411' into dev_nft_411
parents
07744857
0b377ab0
Changes
10
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
119 additions
and
17 deletions
+119
-17
GalaxyErrorEnum.java
...om/liquidnet/service/galaxy/constant/GalaxyErrorEnum.java
+2
-1
ConsumerGalaxySqlNftOrderFailLogConfig.java
.../kylin/config/ConsumerGalaxySqlNftOrderFailLogConfig.java
+54
-0
ConsumerGalaxySqlNftOrderFailLogReceiver.java
...in/receiver/ConsumerGalaxySqlNftOrderFailLogReceiver.java
+29
-0
ConsumerGoblinBizArtworkClqRdsReceiver.java
...ylin/receiver/ConsumerGoblinBizArtworkClqRdsReceiver.java
+1
-1
ConsumerGoblinBizArtworkGenRdsReceiver.java
...ylin/receiver/ConsumerGoblinBizArtworkGenRdsReceiver.java
+5
-2
ConsumerGoblinBizArtworkUplRdsReceiver.java
...ylin/receiver/ConsumerGoblinBizArtworkUplRdsReceiver.java
+2
-1
ZxinTradeBiz.java
...iquidnet/service/galaxy/router/zxin/biz/ZxinTradeBiz.java
+15
-2
bootstrap-dev.yml
...-service-galaxy-impl/src/main/resources/bootstrap-dev.yml
+1
-2
TestZxlnftSdkUtil.java
.../java/com/liquidnet/service/galaxy/TestZxlnftSdkUtil.java
+8
-6
db_0315_jxl_nft.sql
...in/liquidnet-service-goblin-impl/docu/db_0315_jxl_nft.sql
+2
-2
No files found.
liquidnet-bus-api/liquidnet-service-galaxy-api/src/main/java/com/liquidnet/service/galaxy/constant/GalaxyErrorEnum.java
View file @
04113830
...
...
@@ -28,7 +28,8 @@ public enum GalaxyErrorEnum {
NFT_BUY_FAIL_USER_NOT_EXIST
(
"NFT0010015"
,
"NFT购买失败,用户信息不存在!"
),
NFT_BUY_FAIL_SERIES_NFT_NOT_EXIST
(
"NFT0010016"
,
"NFT购买失败,系列NFT信息不存在!"
),
NFT_PUBLISH_ERROR
(
"NFT0010017"
,
"NFT发行异常!"
),
NFT_BUY_ERROR
(
"NFT0010018"
,
"NFT购买异常!"
);
NFT_BUY_ERROR
(
"NFT0010018"
,
"NFT购买异常!"
),
NFT_PUBLISH_AND_BUY_QUERY_FAIL
(
"NFT0010019"
,
"NFT发行和购买结果查询失败!"
);
private
String
code
;
...
...
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/config/ConsumerGalaxySqlNftOrderFailLogConfig.java
0 → 100644
View file @
04113830
package
com
.
liquidnet
.
service
.
consumer
.
kylin
.
config
;
import
com.liquidnet.common.cache.redis.config.RedisStreamConfig
;
import
com.liquidnet.service.base.constant.MQConst
;
import
com.liquidnet.service.consumer.kylin.receiver.ConsumerGalaxySqlNftOrderFailLogReceiver
;
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.core.StringRedisTemplate
;
import
org.springframework.data.redis.stream.StreamMessageListenerContainer
;
import
org.springframework.data.redis.stream.Subscription
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* @author AnJiabin <anjiabin@zhengzai.tv>
* @version V1.0
* @Description: TODO
* @class: ConsumerGalaxySqlNftOrderFailLogConfig
* @Package com.liquidnet.service.consumer.kylin.config
* @Copyright: LightNet @ Copyright (c) 2022
* @date 2022/4/7 10:57
*/
@Configuration
public
class
ConsumerGalaxySqlNftOrderFailLogConfig
extends
RedisStreamConfig
{
@Autowired
private
ConsumerGalaxySqlNftOrderFailLogReceiver
sqlNftOrderFailLogReceiver
;
@Autowired
StringRedisTemplate
stringRedisTemplate
;
@Bean
public
List
<
Subscription
>
subscriptionSqlNftOrderInfo
(
RedisConnectionFactory
factory
)
{
List
<
Subscription
>
subscriptionList
=
new
ArrayList
<>();
MQConst
.
GalaxyQueue
stream
=
MQConst
.
GalaxyQueue
.
SQL_NFT_ORDER_FAIL_LOG
;
this
.
initStream
(
stringRedisTemplate
,
stream
.
getKey
(),
stream
.
getGroup
());
for
(
int
i
=
0
;
i
<
10
;
i
++)
{
StreamMessageListenerContainer
<
String
,
MapRecord
<
String
,
String
,
String
>>
listenerContainer
=
this
.
buildStreamMessageListenerContainer
(
factory
);
subscriptionList
.
add
(
listenerContainer
.
receiveAutoAck
(
Consumer
.
from
(
stream
.
getGroup
(),
getConsumerName
(
stream
.
name
()
+
i
)),
StreamOffset
.
create
(
stream
.
getKey
(),
ReadOffset
.
lastConsumed
()),
sqlNftOrderFailLogReceiver
));
listenerContainer
.
start
();
}
return
subscriptionList
;
}
}
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/ConsumerGalaxySqlNftOrderFailLogReceiver.java
0 → 100644
View file @
04113830
package
com
.
liquidnet
.
service
.
consumer
.
kylin
.
receiver
;
import
com.liquidnet.service.base.constant.MQConst
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Component
;
/**
* @author AnJiabin <anjiabin@zhengzai.tv>
* @version V1.0
* @Description: TODO
* @class: ConsumerGalaxySqlNftOrderFailLogReceiver
* @Package com.liquidnet.service.consumer.kylin.receiver
* @Copyright: LightNet @ Copyright (c) 2022
* @date 2022/4/7 10:56
*/
@Slf4j
@Component
public
class
ConsumerGalaxySqlNftOrderFailLogReceiver
extends
AbstractSqlRedisReceiver
{
@Override
protected
String
getRedisStreamKey
()
{
return
MQConst
.
GalaxyQueue
.
SQL_NFT_ORDER_FAIL_LOG
.
getKey
();
}
@Override
protected
String
getRedisStreamGroup
()
{
return
MQConst
.
GalaxyQueue
.
SQL_NFT_ORDER_FAIL_LOG
.
getGroup
();
}
}
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/ConsumerGoblinBizArtworkClqRdsReceiver.java
View file @
04113830
...
...
@@ -63,7 +63,7 @@ public class ConsumerGoblinBizArtworkClqRdsReceiver extends AbstractBizRedisRece
aBoolean
=
true
;
}
else
{
String
[]
msgArr
=
msg
.
split
(
","
);
String
skuId
=
msgArr
[
0
],
time
=
msgArr
[
1
]
;
String
skuId
=
msgArr
[
0
],
time
=
msgArr
.
length
==
2
?
msgArr
[
1
]
:
null
;
LocalDateTime
now
=
LocalDateTime
.
now
(),
checkTime
=
now
.
minusSeconds
(
10
);
LocalDateTime
createAt
=
StringUtils
.
isEmpty
(
time
)
?
checkTime
:
LocalDateTime
.
parse
(
time
);
...
...
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/ConsumerGoblinBizArtworkGenRdsReceiver.java
View file @
04113830
package
com
.
liquidnet
.
service
.
consumer
.
kylin
.
receiver
;
import
com.fasterxml.jackson.databind.node.ObjectNode
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.commons.lang.util.CollectionUtil
;
import
com.liquidnet.commons.lang.util.DateUtil
;
...
...
@@ -37,7 +38,6 @@ public class ConsumerGoblinBizArtworkGenRdsReceiver extends AbstractBizRedisRece
private
MongoTemplate
mongoTemplate
;
private
static
final
String
SQL_INSERT_ARTWORK
=
"INSERT INTO goblin_user_digital_artwork (artwork_id, sku_id, uid, order_id, source, state, created_at)VALUES(?,?,?,?,?,?,?)"
;
private
static
final
String
QUEUE_MSG_TL
=
"{\"nftOrderPayId\":\"1\",\"routerType\":\"zxinchain\",\"skuId\":\"2\",\"userId\":\"3\",\"buyTimestamp\":\"4\"}"
;
private
static
final
String
QUEUE_KEY_NFT
=
"galaxy:stream:rk.json.nftPublishAndBuy"
;
@Override
...
...
@@ -154,7 +154,10 @@ public class ConsumerGoblinBizArtworkGenRdsReceiver extends AbstractBizRedisRece
streamOperations
.
add
(
StreamRecords
.
mapBacked
(
sqlArtworkMap
).
withStreamKey
(
MQConst
.
GoblinQueue
.
SQL_ARTWORK_GEN
.
getKey
()));
// NFT发行购买
HashMap
<
String
,
String
>
bizNftBuyMap
=
CollectionUtil
.
mapStringString
();
bizNftBuyMap
.
put
(
"message"
,
QUEUE_MSG_TL
.
replace
(
"1"
,
orderId
).
replace
(
"2"
,
skuId
).
replace
(
"3"
,
uid
).
replace
(
"4"
,
DateUtil
.
Formatter
.
yyyyMMddHHmmss
.
format
(
now
)));
ObjectNode
bizNftBuyNode
=
JsonUtils
.
OM
().
createObjectNode
();
bizNftBuyNode
.
put
(
"nftOrderPayId"
,
orderId
).
put
(
"routerType"
,
"zxinchain"
)
.
put
(
"skuId"
,
skuId
).
put
(
"userId"
,
uid
).
put
(
"buyTimestamp"
,
DateUtil
.
Formatter
.
yyyyMMddHHmmss
.
format
(
now
));
bizNftBuyMap
.
put
(
"message"
,
bizNftBuyNode
.
toString
());
streamOperations
.
add
(
StreamRecords
.
mapBacked
(
bizNftBuyMap
).
withStreamKey
(
QUEUE_KEY_NFT
));
// TODO: 2022/3/30 ==zhanggb.anjiabin
redisUtil
.
incr
(
GoblinRedisConst
.
USER_DIGITAL_ARTWORK_CT
.
concat
(
uid
),
1
);
...
...
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/ConsumerGoblinBizArtworkUplRdsReceiver.java
View file @
04113830
...
...
@@ -27,6 +27,7 @@ import org.springframework.data.redis.connection.stream.StreamRecords;
import
org.springframework.data.redis.core.StreamOperations
;
import
org.springframework.stereotype.Component
;
import
java.time.LocalDateTime
;
import
java.util.HashMap
;
import
java.util.LinkedList
;
...
...
@@ -144,7 +145,7 @@ public class ConsumerGoblinBizArtworkUplRdsReceiver extends AbstractBizRedisRece
streamOperations
.
add
(
StreamRecords
.
mapBacked
(
sqlUpdateMap
).
withStreamKey
(
MQConst
.
GoblinQueue
.
SQL_GOODS
.
getKey
()));
HashMap
<
String
,
String
>
toQueueBeClaimQueryMsg
=
CollectionUtil
.
mapStringString
();
toQueueBeClaimQueryMsg
.
put
(
MQConst
.
QUEUE_MESSAGE_KEY
,
skuId
);
toQueueBeClaimQueryMsg
.
put
(
MQConst
.
QUEUE_MESSAGE_KEY
,
skuId
.
concat
(
","
).
concat
(
String
.
valueOf
(
LocalDateTime
.
now
()))
);
streamOperations
.
add
(
StreamRecords
.
mapBacked
(
toQueueBeClaimQueryMsg
).
withStreamKey
(
MQConst
.
GoblinQueue
.
BIZ_ARTWORK_CLQ
.
getKey
()));
return
true
;
}
...
...
liquidnet-bus-service/liquidnet-service-galaxy/liquidnet-service-galaxy-impl/src/main/java/com/liquidnet/service/galaxy/router/zxin/biz/ZxinTradeBiz.java
View file @
04113830
...
...
@@ -146,12 +146,17 @@ public class ZxinTradeBiz {
return
ResponseDto
.
failure
(
GalaxyErrorEnum
.
PUBLISH_ORDER_NOT_EXIST
.
getCode
(),
GalaxyErrorEnum
.
PUBLISH_ORDER_NOT_EXIST
.
getMessage
());
}
/**
* TODO 如果订单信息是购买失败,则直接调用至信链查询购买结果
*/
if
(
StringUtil
.
isNotEmpty
(
nftOrderBo
.
getNftPublishStatus
())
&&
(
GalaxyEnum
.
TaskStatusEnum
.
INIT
.
getCode
().
equalsIgnoreCase
(
nftOrderBo
.
getNftPublishStatus
())
||
GalaxyEnum
.
TaskStatusEnum
.
PROCESSING
.
getCode
().
equalsIgnoreCase
(
nftOrderBo
.
getNftPublishStatus
()))){
//判断是否需要二次发行
if
(
StringUtil
.
isEmpty
(
nftOrderBo
.
getNftPublishTaskId
())){
}
//执行nft发行结果查询
GalaxyNftPublishResultQueryReqDto
nftPublishResultQueryReqDto
=
GalaxyNftPublishResultQueryReqDto
.
getNew
();
nftPublishResultQueryReqDto
.
setNftOrderPayId
(
reqDto
.
getNftOrderPayId
());
...
...
@@ -165,6 +170,10 @@ public class ZxinTradeBiz {
if
(
StringUtil
.
isNotEmpty
(
nftOrderBo
.
getNftBuyStatus
())
&&
(
GalaxyEnum
.
TaskStatusEnum
.
INIT
.
getCode
().
equalsIgnoreCase
(
nftOrderBo
.
getNftBuyStatus
())
||
GalaxyEnum
.
TaskStatusEnum
.
PROCESSING
.
getCode
().
equalsIgnoreCase
(
nftOrderBo
.
getNftBuyStatus
()))){
//判断是否需要二次购买
if
(
StringUtil
.
isEmpty
(
nftOrderBo
.
getNftBuyTaskId
())){
}
//执行nft购买结果查询
GalaxyNftBuyResultQueryReqDto
nftBuyResultQueryReqDto
=
GalaxyNftBuyResultQueryReqDto
.
getNew
();
nftBuyResultQueryReqDto
.
setNftOrderPayId
(
reqDto
.
getNftOrderPayId
());
...
...
@@ -177,8 +186,12 @@ public class ZxinTradeBiz {
}
GalaxyNftPublishAndBuyResultQueryRespDto
resultQueryRespDto
=
GalaxyNftPublishAndBuyResultQueryRespDto
.
getNew
();
BeanUtil
.
copy
(
nftOrderBo
,
resultQueryRespDto
);
return
ResponseDto
.
success
(
resultQueryRespDto
);
if
(
nftOrderBo
.
getNftPublishStatus
().
equalsIgnoreCase
(
GalaxyEnum
.
TaskStatusEnum
.
TASK_SUCCESS
.
getCode
())&&
nftOrderBo
.
getNftBuyStatus
().
equalsIgnoreCase
(
GalaxyEnum
.
TaskStatusEnum
.
TASK_SUCCESS
.
getCode
())){
BeanUtil
.
copy
(
nftOrderBo
,
resultQueryRespDto
);
return
ResponseDto
.
success
(
resultQueryRespDto
);
}
return
ResponseDto
.
failure
(
GalaxyErrorEnum
.
NFT_PUBLISH_AND_BUY_QUERY_FAIL
.
getCode
(),
GalaxyErrorEnum
.
NFT_PUBLISH_AND_BUY_QUERY_FAIL
.
getMessage
(),
resultQueryRespDto
);
}
/**
...
...
liquidnet-bus-service/liquidnet-service-galaxy/liquidnet-service-galaxy-impl/src/main/resources/bootstrap-dev.yml
View file @
04113830
...
...
@@ -6,8 +6,7 @@ liquidnet:
username
:
user
password
:
user123
eureka
:
# host: 39.107.71.112:7001
host
:
127.0.0.1:7001
host
:
39.107.71.112:7001
# end-dev-这里是配置信息基本值
spring
:
...
...
liquidnet-bus-service/liquidnet-service-galaxy/liquidnet-service-galaxy-impl/src/test/java/com/liquidnet/service/galaxy/TestZxlnftSdkUtil.java
View file @
04113830
...
...
@@ -50,7 +50,7 @@ public class TestZxlnftSdkUtil {
public
static
String
zhouhuanPriKey1
=
"-----BEGIN PRIVATE KEY-----\nMIGTAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBHkwdwIBAQQgjSDapAU4gujWk9mM\nCE1tOokocdKrHMkfvZ0vfaWM+MOgCgYIKoEcz1UBgi2hRANCAAREBgKiqVxvX8L5\nvTzkc7hFZsgXH+fDrORTe28hiEGLVeOPsYx0T91HoPZ8JAZYep1jBBRvr+RLrtiP\nHjumvFES\n-----END PRIVATE KEY-----\n"
;
public
static
String
zhouhuanPubKey2
=
"-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAELZtnP30dbtdFrvherJxfpPEQP+q3\nRyrtECAuEwZg3o8/RLJva0O6unNLHGavkwd77l5UgvX4cPNoX/OV6n/3xQ==\n-----END PUBLIC KEY-----\n"
;
public
static
String
zhouhuanPriKey2
=
"-----BEGIN PRIVATE KEY-----\nMIGTAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBHkwdwIBAQQgNBYWsObyiuXLIZZZ\nPa0P/aNSrlf3//TLkdhZsDroRNugCgYIKoEcz1UBgi2hRANCAAQtm2c/fR1u10Wu\n+F6snF+k8RA/6rdHKu0QIC4TBmDejz9Esm9rQ7q6c0scZq+TB3vuXlSC9fhw82hf\n85Xqf/fF\n-----END PRIVATE KEY-----\n"
;
public
static
String
zhouhuanAddress1
=
"
zxf8dcce2b5374610631735ad4d606372ff199d89e
"
;
public
static
String
zhouhuanAddress1
=
"
ZX12ff8e4796700cf194bae72749d5bd7179864644
"
;
public
static
String
zhouhuanAddress2
=
"zx26ff9db9cf1e981e3028b7e133d54b28eb859f97"
;
public
static
String
ID_CARD_1
=
"142323198302062216"
;
public
static
String
ID_CARD_2
=
"150422199805206019"
;
...
...
@@ -639,15 +639,17 @@ public class TestZxlnftSdkUtil {
@Test
public
void
nft037AddressList
(){
Nft037AddressListReqDto
reqDto
=
Nft037AddressListReqDto
.
getNew
();
reqDto
.
setAddr
(
zxlnftConfig
.
getNftPlatformAddress
());
// reqDto.setAddr(zhouhuanAddress2
);
//
reqDto.setAddr(zxlnftConfig.getNftPlatformAddress());
reqDto
.
setAddr
(
zhouhuanAddress1
);
//无限制系列
reqDto
.
setSeriesId
(
"4e40d5f6f65aa8ec9bc33ab424e0167e68783bbe95d4d265086314d749808eef_8a827e181b695fb8d9b081d3855d2895ced1d003ee186622a005cec37ea77e59"
);
//
reqDto.setSeriesId("4e40d5f6f65aa8ec9bc33ab424e0167e68783bbe95d4d265086314d749808eef_8a827e181b695fb8d9b081d3855d2895ced1d003ee186622a005cec37ea77e59");
//系列001
// reqDto.setSeriesId("4e40d5f6f65aa8ec9bc33ab424e0167e68783bbe95d4d265086314d749808eef_ca49b5ebadd5f73ab057fe869bf897cbcc0f31e0b89db71cc3ec78bca2d16ed6");
//系列002
// reqDto.setSeriesId("4e40d5f6f65aa8ec9bc33ab424e0167e68783bbe95d4d265086314d749808eef_31ff9f7d4c33c98518e095fec6cecdab8d337751602cf6e651eb7d131cff5b61");
reqDto
.
setSeriesId
(
"4e40d5f6f65aa8ec9bc33ab424e0167e68783bbe95d4d265086314d749808eef_224c288ded71e9a75190f018eb7e5382119c2d7a2216aaa4dbd7e602b82e247e"
);
// reqDto.setOffset(0l);
reqDto
.
setLimit
(
1000
l
);
ZxlnftResponseDto
<
Nft037AddressListRespDto
>
resp
=
zxlnftSdkUtil
.
nft037AddressList
(
reqDto
);
...
...
@@ -660,8 +662,8 @@ public class TestZxlnftSdkUtil {
@Test
public
void
nft038AddressWithoutSeriesList
(){
Nft038AddressWithoutSeriesListReqDto
reqDto
=
Nft038AddressWithoutSeriesListReqDto
.
getNew
();
reqDto
.
setAddr
(
zxlnftConfig
.
getNftPlatformAddress
());
//
reqDto.setAddr(zhouhuanAddress1);
//
reqDto.setAddr(zxlnftConfig.getNftPlatformAddress());
reqDto
.
setAddr
(
zhouhuanAddress1
);
// reqDto.setOffset(0l);
reqDto
.
setLimit
(
1000
l
);
ZxlnftResponseDto
<
Nft038AddressWithoutSeriesListRespDto
>
resp
=
zxlnftSdkUtil
.
nft038AddressWithoutSeriesList
(
reqDto
);
...
...
liquidnet-bus-service/liquidnet-service-goblin/liquidnet-service-goblin-impl/docu/db_0315_jxl_nft.sql
View file @
04113830
...
...
@@ -26,7 +26,7 @@ alter table goblin_goods_sku add sale_stop_time datetime null comment '停售时
alter
table
goblin_goods_sku
add
soldout_status
char
default
'0'
not
null
comment
'是否售罄[0-否|1-是]'
after
shelves_status
;
alter
table
goblin_goods_sku
add
sku_canbuy
char
null
comment
'是否购买[0-否|1-是]'
after
sku_appear
;
alter
table
goblin_goods_sku
add
unbox
char
default
'0'
not
null
null
comment
'是否盲盒[0-否|1-是]'
after
sku_canbuy
;
alter
table
goblin_goods_sku
add
hit_ratio
decimal
(
3
,
2
)
null
comment
'盲盒命中率[0.01~100%]'
after
unbox
;
alter
table
goblin_goods_sku
add
hit_ratio
decimal
(
8
,
2
)
null
comment
'盲盒命中率[0.01~100%]'
after
unbox
;
alter
table
goblin_goods_sku
add
opening_time
datetime
null
comment
'盲盒开启时间'
after
hit_ratio
;
alter
table
goblin_goods_sku
add
opening_limit
int
default
0
comment
'盲盒开启时限[单位秒]'
after
opening_time
;
...
...
@@ -54,7 +54,7 @@ create table goblin_goods_sku_nft
nft_url
varchar
(
500
)
null
comment
'NFT素材访问URL'
,
series_id
varchar
(
256
)
null
comment
'NFT系列ID'
,
series_hash
varchar
(
256
)
null
comment
'NFT系列HASH'
,
nft_hash
varchar
(
25
)
null
comment
'NFT藏品HASH'
,
nft_hash
varchar
(
25
6
)
null
comment
'NFT藏品HASH'
,
declare_at
varchar
(
25
)
null
comment
'NFT系列声明时间'
,
created_at
datetime
not
null
,
updated_at
datetime
null
,
...
...
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