记得上下班打卡 | 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
db65281f
Commit
db65281f
authored
Jul 11, 2022
by
胡佳晨
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wf hjc ajb
parent
57009291
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
74 additions
and
52 deletions
+74
-52
GoblinGagoController.java
.../web/controller/zhengzai/goblin/GoblinGagoController.java
+50
-42
GoblinRedisUtils.java
.../client/admin/zhengzai/goblin/utils/GoblinRedisUtils.java
+24
-10
No files found.
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-web/src/main/java/com/liquidnet/client/admin/web/controller/zhengzai/goblin/GoblinGagoController.java
View file @
db65281f
package
com
.
liquidnet
.
client
.
admin
.
web
.
controller
.
zhengzai
.
goblin
;
package
com
.
liquidnet
.
client
.
admin
.
web
.
controller
.
zhengzai
.
goblin
;
import
com.fasterxml.jackson.core.type.TypeReference
;
import
com.liquidnet.client.admin.common.annotation.Log
;
import
com.liquidnet.client.admin.common.annotation.Log
;
import
com.liquidnet.client.admin.common.core.controller.BaseController
;
import
com.liquidnet.client.admin.common.core.controller.BaseController
;
import
com.liquidnet.client.admin.common.core.domain.AjaxResult
;
import
com.liquidnet.client.admin.common.core.domain.AjaxResult
;
import
com.liquidnet.client.admin.common.enums.BusinessType
;
import
com.liquidnet.client.admin.common.enums.BusinessType
;
import
com.liquidnet.client.admin.zhengzai.goblin.
service.IGoblinCommonService
;
import
com.liquidnet.client.admin.zhengzai.goblin.
utils.GoblinRedisUtils
;
import
com.liquidnet.common.cache.redis.util.RedisDataSourceUtil
;
import
com.liquidnet.common.cache.redis.util.RedisDataSourceUtil
;
import
com.liquidnet.commons.lang.util.CollectionUtil
;
import
com.liquidnet.commons.lang.util.HttpUtil
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.service.adam.constant.AdamRedisConst
;
import
com.liquidnet.service.adam.constant.AdamRedisConst
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.goblin.constant.GoblinRedisConst
;
import
com.liquidnet.service.candy.vo.CandyCouponVo
;
import
com.liquidnet.service.goblin.constant.NftAccStatusEnum
;
import
com.liquidnet.service.goblin.dto.vo.GoblinGoodsSkuInfoVo
;
import
com.liquidnet.service.goblin.dto.GoblinStoreSearchDto
;
import
com.liquidnet.service.goblin.dto.GoblinUserNftAccInfoVo
;
import
com.liquidnet.service.kylin.dao.PerformanceTitleDao
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiImplicitParams
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.util.MultiValueMap
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.List
;
import
java.util.List
;
...
@@ -29,6 +32,12 @@ public class GoblinGagoController extends BaseController {
...
@@ -29,6 +32,12 @@ public class GoblinGagoController extends BaseController {
@Autowired
@Autowired
RedisDataSourceUtil
redisDataSourceUtil
;
RedisDataSourceUtil
redisDataSourceUtil
;
@Autowired
GoblinRedisUtils
goblinRedisUtils
;
@Value
(
"${liquidnet.service.order.url}"
)
private
String
orderUrl
;
// private String orderUrl = "http://127.0.0.1/order";
private
final
String
prefix
=
"zhengzai/goblin/gago"
;
private
final
String
prefix
=
"zhengzai/goblin/gago"
;
@GetMapping
()
@GetMapping
()
...
@@ -49,16 +58,11 @@ public class GoblinGagoController extends BaseController {
...
@@ -49,16 +58,11 @@ public class GoblinGagoController extends BaseController {
return
AjaxResult
.
error
(
"账号不存在"
);
return
AjaxResult
.
error
(
"账号不存在"
);
}
}
String
uid
=
(
String
)
obj1
;
String
uid
=
(
String
)
obj1
;
String
redisKey
=
GoblinRedisConst
.
REDIS_GOBLIN_NFT_NUM_ACCOUNT_INFO
.
concat
(
uid
);
Boolean
obj2
=
goblinRedisUtils
.
getIsOpenAccount
(
uid
);
Object
obj2
=
redisDataSourceUtil
.
getRedisGoblinUtil
().
get
(
redisKey
);
if
(!
obj2
)
{
if
(
obj2
==
null
)
{
return
AjaxResult
.
error
(
"账号未开通数字账号"
);
}
GoblinUserNftAccInfoVo
nftAccInfoVo
=
(
GoblinUserNftAccInfoVo
)
obj2
;
if
(!
NftAccStatusEnum
.
StatusAcc
.
SUCCESS
.
getCode
().
equals
(
nftAccInfoVo
.
getCode
()))
{
return
AjaxResult
.
error
(
"账号未开通数字账号"
);
return
AjaxResult
.
error
(
"账号未开通数字账号"
);
}
}
ajaxResult
.
put
(
"uid"
,
uid
);
ajaxResult
.
put
(
"uid"
,
uid
);
return
ajaxResult
;
return
ajaxResult
;
}
}
...
@@ -66,34 +70,38 @@ public class GoblinGagoController extends BaseController {
...
@@ -66,34 +70,38 @@ public class GoblinGagoController extends BaseController {
@Log
(
title
=
"生成兑换订单"
,
businessType
=
BusinessType
.
INNER_OPERATION
)
@Log
(
title
=
"生成兑换订单"
,
businessType
=
BusinessType
.
INNER_OPERATION
)
@PostMapping
(
value
=
"/exchangeNumNftOrder"
)
@PostMapping
(
value
=
"/exchangeNumNftOrder"
)
@ResponseBody
@ResponseBody
public
AjaxResult
listByStatus
(
@RequestParam
(
value
=
"skuId"
)
String
skuId
,
@RequestParam
(
value
=
"nftNum"
)
String
nftNum
,
@RequestParam
(
value
=
"uid"
)
String
uid
)
{
public
AjaxResult
listByStatus
(
@RequestParam
(
value
=
"skuId"
)
String
skuId
,
@RequestParam
(
value
=
"nftNum"
)
int
nftNum
,
@RequestParam
(
value
=
"uid"
)
String
uid
)
{
// List<PerformanceTitleDao> result = kylinPerformancesService.getListByStatus(status,title);
//当前 nft序号
// AjaxResult ajax = new AjaxResult();
int
cNufCount
=
goblinRedisUtils
.
getNftCountBySku
(
skuId
);
// ajax.put("value", result);
if
(
cNufCount
>=
nftNum
)
{
// return ajax;
return
AjaxResult
.
error
(
"该序号已售卖"
);
return
null
;
}
boolean
addResult
=
goblinRedisUtils
.
addNftList
(
skuId
,
nftNum
+
""
);
if
(!
addResult
)
{
return
AjaxResult
.
error
(
"该序号已被占用"
);
}
GoblinGoodsSkuInfoVo
skuInfoVo
=
goblinRedisUtils
.
getGoodsSkuInfoVo
(
skuId
);
if
(
skuInfoVo
==
null
||
skuInfoVo
.
getSkuStock
()
<=
nftNum
)
{
return
AjaxResult
.
error
(
"该序号不存在"
);
}
if
(
skuInfoVo
.
getUnbox
().
equals
(
"1"
))
{
return
AjaxResult
.
error
(
"不支持盲盒"
);
}
//
MultiValueMap
<
String
,
String
>
params
=
CollectionUtil
.
linkedMultiValueMapStringString
();
params
.
add
(
"userId"
,
uid
);
params
.
add
(
"skuId"
,
skuId
);
MultiValueMap
<
String
,
String
>
header
=
CollectionUtil
.
linkedMultiValueMapStringString
();
header
.
add
(
"Accept"
,
"application/json;charset=UTF-8"
);
String
returnData
=
HttpUtil
.
post
(
orderUrl
.
concat
(
"/goblin/nft/airdropInner"
),
params
,
header
);
ResponseDto
<
Boolean
>
innerReturnVo
=
JsonUtils
.
fromJson
(
returnData
,
new
TypeReference
<
ResponseDto
<
Boolean
>>()
{
});
if
(
innerReturnVo
.
getData
())
{
return
AjaxResult
.
success
();
}
else
{
return
AjaxResult
.
error
();
}
}
}
// @Log(title = "搜索NFT SPU", businessType = BusinessType.INNER_OPERATION)
// @GetMapping("search_spu")
// @ApiImplicitParams({
// @ApiImplicitParam(type = "form", required = true, name = "name", value = "spu名称"),
// })
// @ResponseBody
// public AjaxResult storeSearch(String name, List<String> status) {
// return ResponseDto.success(goblinCommonService.storeSearch(name, status));
// }
//
// @Log(title = "搜索NFT SKU", businessType = BusinessType.INNER_OPERATION)
// @GetMapping("search_sku")
// @ApiImplicitParams({
// @ApiImplicitParam(type = "form", required = true, name = "name", value = "sku名称"),
// })
// @ResponseBody
// public AjaxResult storeSearch(String name, List<String> status) {
// return ResponseDto.success(goblinCommonService.storeSearch(name, status));
// }
/** ------------------------------------------------------------------------ **/
/** ------------------------------------------------------------------------ **/
}
}
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-zhengzai/src/main/java/com/liquidnet/client/admin/zhengzai/goblin/utils/GoblinRedisUtils.java
View file @
db65281f
...
@@ -5,16 +5,17 @@ import com.liquidnet.commons.lang.util.CollectionUtil;
...
@@ -5,16 +5,17 @@ import com.liquidnet.commons.lang.util.CollectionUtil;
import
com.liquidnet.service.galaxy.constant.GalaxyConstant
;
import
com.liquidnet.service.galaxy.constant.GalaxyConstant
;
import
com.liquidnet.service.galaxy.dto.param.GalaxyNftPublishAndBuyReqDto
;
import
com.liquidnet.service.galaxy.dto.param.GalaxyNftPublishAndBuyReqDto
;
import
com.liquidnet.service.goblin.constant.GoblinRedisConst
;
import
com.liquidnet.service.goblin.constant.GoblinRedisConst
;
import
com.liquidnet.service.goblin.constant.GoblinStatusConst
;
import
com.liquidnet.service.goblin.constant.NftAccStatusEnum
;
import
com.liquidnet.service.goblin.constant.NftAccStatusEnum
;
import
com.liquidnet.service.goblin.dto.GoblinUserNftAccInfoVo
;
import
com.liquidnet.service.goblin.dto.GoblinUserNftAccInfoVo
;
import
com.liquidnet.service.goblin.dto.vo.GoblinMarketingZhengzaiRelationVo
;
import
com.liquidnet.service.goblin.dto.vo.*
;
import
com.liquidnet.service.goblin.dto.vo.GoblinNftSkuVo
;
import
com.liquidnet.service.goblin.dto.vo.GoblinSelfMarketingVo
;
import
com.liquidnet.service.goblin.entity.GoblinGoodsSku
;
import
com.liquidnet.service.goblin.entity.GoblinGoodsSku
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
@Component
@Component
...
@@ -157,8 +158,8 @@ public class GoblinRedisUtils {
...
@@ -157,8 +158,8 @@ public class GoblinRedisUtils {
}
}
//获取 当前xx链上SkuId 发行的数量
//获取 当前xx链上SkuId 发行的数量
public
int
getNftCountBySku
(
String
routerType
,
String
skuId
)
{
public
int
getNftCountBySku
(
String
skuId
)
{
String
redisKey
=
GalaxyConstant
.
REDIS_KEY_GALAXY_PUBLISH_NFT
.
concat
(
routerType
).
concat
(
":"
).
concat
(
skuId
);
String
redisKey
=
GalaxyConstant
.
REDIS_KEY_GALAXY_PUBLISH_NFT
.
concat
(
":"
).
concat
(
skuId
);
Object
obj
=
redisDataSourceUtil
.
getRedisGoblinUtil
().
get
(
redisKey
);
Object
obj
=
redisDataSourceUtil
.
getRedisGoblinUtil
().
get
(
redisKey
);
if
(
obj
==
null
)
{
if
(
obj
==
null
)
{
return
-
1
;
return
-
1
;
...
@@ -168,8 +169,8 @@ public class GoblinRedisUtils {
...
@@ -168,8 +169,8 @@ public class GoblinRedisUtils {
}
}
//获取 nft序号站位list
//获取 nft序号站位list
public
List
<
String
>
getNftList
(
String
routerType
,
String
skuId
)
{
public
List
<
String
>
getNftList
(
String
skuId
)
{
String
redisKey
=
GoblinRedisConst
.
GOBLIN_NUM_LIST
.
concat
(
routerType
).
concat
(
":"
).
concat
(
skuId
);
String
redisKey
=
GoblinRedisConst
.
GOBLIN_NUM_LIST
.
concat
(
":"
).
concat
(
skuId
);
Object
obj
=
redisDataSourceUtil
.
getRedisGoblinUtil
().
get
(
redisKey
);
Object
obj
=
redisDataSourceUtil
.
getRedisGoblinUtil
().
get
(
redisKey
);
if
(
obj
==
null
)
{
if
(
obj
==
null
)
{
return
CollectionUtil
.
arrayListString
();
return
CollectionUtil
.
arrayListString
();
...
@@ -179,11 +180,24 @@ public class GoblinRedisUtils {
...
@@ -179,11 +180,24 @@ public class GoblinRedisUtils {
}
}
//添加 nft序号站位list
//添加 nft序号站位list
public
void
addNftList
(
String
routerType
,
String
skuId
,
String
num
)
{
public
boolean
addNftList
(
String
skuId
,
String
num
)
{
String
redisKey
=
GoblinRedisConst
.
GOBLIN_NUM_LIST
.
concat
(
routerType
).
concat
(
":"
).
concat
(
skuId
);
String
redisKey
=
GoblinRedisConst
.
GOBLIN_NUM_LIST
.
concat
(
":"
).
concat
(
skuId
);
List
<
String
>
voList
=
getNftList
(
routerType
,
skuId
);
List
<
String
>
voList
=
getNftList
(
skuId
);
if
(
voList
.
contains
(
num
))
{
return
false
;
}
voList
.
add
(
num
);
voList
.
add
(
num
);
redisDataSourceUtil
.
getRedisGoblinUtil
().
set
(
redisKey
,
voList
);
redisDataSourceUtil
.
getRedisGoblinUtil
().
set
(
redisKey
,
voList
);
return
true
;
}
public
GoblinGoodsSkuInfoVo
getGoodsSkuInfoVo
(
String
skuId
)
{
String
rk
=
GoblinRedisConst
.
BASIC_GOODS_SKU
.
concat
(
skuId
);
GoblinGoodsSkuInfoVo
vo
=
(
GoblinGoodsSkuInfoVo
)
redisDataSourceUtil
.
getRedisGoblinUtil
().
get
(
rk
);
if
(
null
==
vo
)
{
return
null
;
}
return
vo
;
}
}
//覆盖 站位宾哥要dto
//覆盖 站位宾哥要dto
...
...
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