记得上下班打卡 | git大法好,push需谨慎

Commit 7890533d authored by jiangxiulong's avatar jiangxiulong

nft:藏品详情:1增加notPayNum字段2判断skuvo为空

parent 26bb70e8
......@@ -134,6 +134,7 @@ public class GoblinRedisConst {
public static final String REDIS_GOBLIN_NFT_GOODS_LIST_INFO = PREFIX.concat("nft:goodsList:info:");// nft商品列表单藏品详情 skuId
public static final String REDIS_GOBLIN_NFT_NUM_ACCOUNT = PREFIX.concat("nft:account:");// nft用户数字账户是否开通 userId
public static final String REDIS_GOBLIN_NFT_NUM_ACCOUNT_INFO = PREFIX.concat("nft:account:info:");// nft用户数字账户开通信息 userId
public static final String REDIS_GOBLIN_NFT_NOT_PAY_NUM = PREFIX.concat("nft:notPay:");// nft藏品待支付订单数量 skuId:listId
/**
* {goblin:nft:certmeta:{idType+idNo},{idname,mobile}}
*/
......
......@@ -94,19 +94,23 @@ public class GoblinNftGoodsSkuInfoVo implements Serializable, Cloneable {
@ApiModelProperty(position = 65, value = "是否开启兑换 1未开启 2已开启")
private int isExchange;
@ApiModelProperty(position = 65, value = "单品AR文件URL-iOS版")
@ApiModelProperty(position = 66, value = "待支付订单数量")
private int notPayNum;
@ApiModelProperty(position = 67, value = "单品AR文件URL-iOS版")
private String arUrlIos;
@ApiModelProperty(position = 66, value = "单品AR文件URL-Android版")
@ApiModelProperty(position = 68, value = "单品AR文件URL-Android版")
private String arUrlAndroid;
@ApiModelProperty(position = 67, value = "标签[0-提前购买|1-分段购买]")
@ApiModelProperty(position = 69, value = "标签[0-提前购买|1-分段购买]")
private Integer tagType;
@ApiModelProperty(position = 68, value = "分批购活动id")
@ApiModelProperty(position = 70, value = "分批购活动id")
private String listId;
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
@ApiModelProperty(position = 69, value = "sku正常开售时间")
@ApiModelProperty(position = 71, value = "sku正常开售时间")
private LocalDateTime baseSaleStartTime;
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
@ApiModelProperty(position = 70, value = "下个分段购开始时间,如果为null则没有")
@ApiModelProperty(position = 72, value = "下个分段购开始时间,如果为null则没有")
private LocalDateTime nextSaleStartTime;
private static final GoblinNftGoodsSkuInfoVo obj = new GoblinNftGoodsSkuInfoVo();
......
......@@ -144,6 +144,9 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
public GoblinNftGoodsSkuInfoVo goodsDetail(String skuId) {
LocalDateTime now = LocalDateTime.now();
HashMap<String, Object> map = goblinRedisUtils.getGoodsSkuInfoVo(now, skuId);
if (null == map) {
return null;
}
GoblinGoodsSkuInfoVo skuInfoVo = (GoblinGoodsSkuInfoVo) map.get("vo");
Integer tagType = (Integer) map.get("tagType");
String listId = (String) map.get("listId");
......@@ -180,9 +183,10 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
nftGoodsSkuInfoVo.setListId(listId);
nftGoodsSkuInfoVo.setBaseSaleStartTime(baseSaleStartTime);
nftGoodsSkuInfoVo.setNextSaleStartTime(nextSaleStartTime);
// 是否开启兑换
nftGoodsSkuInfoVo.setIsExchange(goblinRedisUtils.getIsExchange(skuId));
// 待支付订单数量
nftGoodsSkuInfoVo.setNotPayNum(goblinRedisUtils.getNotPayNum(skuId, listId));
return nftGoodsSkuInfoVo;
} else {
return null;
......
......@@ -809,6 +809,9 @@ public class GoblinRedisUtils {
*/
public HashMap<String, Object> getGoodsSkuInfoVo(LocalDateTime now, String skuId) {
GoblinGoodsSkuInfoVo vo = getGoodsSkuInfoVo(skuId);
if (null == vo) {
return null;
}
HashMap<String, Object> map = CollectionUtil.mapStringObject();
LocalDateTime nextSaleStartTime = null;
if (null == vo.getSaleStartTime() || now.isAfter(vo.getSaleStartTime())) {//普通商品已开售
......@@ -2083,6 +2086,19 @@ public class GoblinRedisUtils {
}
}
public int getNotPayNum(String skuId, String listId) {
String redisKey = GoblinRedisConst.REDIS_GOBLIN_NFT_NOT_PAY_NUM.concat(skuId);
if (null != listId) {
redisKey = redisKey.concat(":").concat(listId);
}
Object obj = redisUtil.get(redisKey);
if (obj == null) {
return 0;
} else {
return (int) obj;
}
}
/**
* private int skuType 商品类型[0-常规|1-数字藏品]
* private String status 审核状态[0-初始编辑|1-审核中|2-审核不通过|3-审核通过];
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment