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

Commit 995e306b authored by 胡佳晨's avatar 胡佳晨

nft商品详情增加 预约数据

parent 2157b10e
......@@ -8,6 +8,8 @@ import lombok.Data;
import java.math.BigInteger;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
/**
* <p>
......@@ -22,34 +24,20 @@ public class AnticipateValueVo implements Cloneable {
private static final long serialVersionUID = 1L;
/**
* sku名称
*/
@ApiModelProperty(value = "sku名称")
private String skuName;
/**
* 预约开始时间
*/
@ApiModelProperty(value = "预约开始时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
private LocalDateTime aboutStartDate;
/**
* 预约结束时间
*/
@ApiModelProperty(value = "预约结束时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
private LocalDateTime aboutEndDate;
@ApiModelProperty("预约状态(0:未开始,1:可预约,3:已结束)")
private Integer state;
@ApiModelProperty("预约规则")
private String rule;
@ApiModelProperty("预约人数")
private BigInteger aboutPeople;
@ApiModelProperty("前三预约头像")
private List<String> aboutAvatarList;
private static final AnticipateValueVo obj = new AnticipateValueVo();
......@@ -61,4 +49,13 @@ public class AnticipateValueVo implements Cloneable {
}
}
public AnticipateValueVo copy(GoblinGoodsAnticipateValueVo source) {
this.setRule(source.getRule());
this.setAboutPeople(source.getAboutPeople());
this.setAboutStartDate(source.getAboutStartDate());
this.setAboutEndDate(source.getAboutEndDate());
this.setState(source.getState());
return this;
}
}
......@@ -79,6 +79,8 @@ public class GoblinNftGoodsSkuInfoVo implements Serializable, Cloneable {
private String rule;
@ApiModelProperty(position = 63, value = "预约认输")
private BigInteger aboutPeople;
@ApiModelProperty(position = 64, value = "前三预约头像")
private List<String> aboutAvatarList;
private static final GoblinNftGoodsSkuInfoVo obj = new GoblinNftGoodsSkuInfoVo();
......@@ -116,6 +118,7 @@ public class GoblinNftGoodsSkuInfoVo implements Serializable, Cloneable {
this.setState(anticipateValueVo.getState());
this.setRule(anticipateValueVo.getRule());
this.setAboutPeople(anticipateValueVo.getAboutPeople());
this.setAboutAvatarList(anticipateValueVo.getAboutAvatarList());
}
return this;
}
......
......@@ -48,5 +48,5 @@ public interface IGoblinGoodsAnticipateService {
*/
ResponseDto<Object> userAbout(String skuId, String uid, String phone);
ResponseDto<AnticipateValueVo> getAnticipateValueBySkuId(String skuId);
AnticipateValueVo getAnticipateValueBySkuId(String skuId,int hasHead);
}
......@@ -60,10 +60,10 @@ public class GoblinGoodsAnticipateMgController {
return goblinGoodsAnticipateService.delete(skuId);
}
@ApiOperation("更具sku获取信息")
@GetMapping("/getAnticipateValueBySkuId")
public ResponseDto<AnticipateValueVo> getAnticipateValueBySkuId(@RequestParam(name = "skuId") String skuId){
return goblinGoodsAnticipateService.getAnticipateValueBySkuId(skuId);
}
// @ApiOperation("更具sku获取信息")
// @GetMapping("/getAnticipateValueBySkuId")
// public ResponseDto<AnticipateValueVo> getAnticipateValueBySkuId(@RequestParam(name = "skuId") String skuId){
// return goblinGoodsAnticipateService.getAnticipateValueBySkuId(skuId);
// }
}
......@@ -256,11 +256,11 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS
}
@Override
public ResponseDto<AnticipateValueVo> getAnticipateValueBySkuId(String skuId) {
public AnticipateValueVo getAnticipateValueBySkuId(String skuId, int hasHead) {
GoblinGoodsAnticipateValueVo anticipateValueVo = goblinMongoUtils.getAnticipateValueVo(skuId);
AnticipateValueVo valueVo = AnticipateValueVo.getNew();
if (anticipateValueVo != null) {
BeanUtils.copyProperties(anticipateValueVo, valueVo);
valueVo = valueVo.copy(anticipateValueVo);
valueVo.setState(setState(valueVo.getAboutStartDate(), valueVo.getAboutEndDate()));
} else {
valueVo.setState(null);
......@@ -269,7 +269,12 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS
valueVo.setAboutPeople(BigInteger.ZERO);
valueVo.setRule("");
}
return ResponseDto.success(valueVo);
if(hasHead==1){
valueVo.setAboutAvatarList(goblinRedisUtils.getUserAvatar(skuId));
}else{
valueVo.setAboutAvatarList(CollectionUtil.linkedListString());
}
return valueVo;
}
private void userAvatar(String skuId) {
......
......@@ -73,7 +73,7 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
List<GoblinGoodsSkuInfoVo> skuInfoVos = mongoTemplate.find(query, GoblinGoodsSkuInfoVo.class, GoblinGoodsSkuInfoVo.class.getSimpleName());
for (GoblinGoodsSkuInfoVo info : skuInfoVos) {
//获取预约相关
AnticipateValueVo anticipateValueVo = goblinGoodsAnticipateService.getAnticipateValueBySkuId(info.getSkuId()).getData();
AnticipateValueVo anticipateValueVo = goblinGoodsAnticipateService.getAnticipateValueBySkuId(info.getSkuId(),0);
// sku信息
GoblinNftGoodsSkuListVo nftGoodsSkuInfoVo = GoblinNftGoodsSkuListVo.getNew().copy(info, anticipateValueVo);
// spu信息
......@@ -119,7 +119,7 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
GoblinGoodsSkuInfoVo goodsSkuInfoVo = goblinRedisUtils.getGoodsSkuInfoVo(skuId);
if (goblinRedisUtils.getSkuAllStatusShow(goodsSkuInfoVo)) {
//获取预约相关
AnticipateValueVo anticipateValueVo = goblinGoodsAnticipateService.getAnticipateValueBySkuId(skuId).getData();
AnticipateValueVo anticipateValueVo = goblinGoodsAnticipateService.getAnticipateValueBySkuId(skuId,1);
GoblinNftGoodsSkuInfoVo nftGoodsSkuInfoVo = GoblinNftGoodsSkuInfoVo.getNew().copy(goodsSkuInfoVo, anticipateValueVo);
// 限购数量
......
......@@ -127,6 +127,21 @@ public class GoblinRedisUtils {
}
}
/**
* 获取用户预约头像
* @param skuId
* @return
*/
public List<String> getUserAvatar(String skuId){
String rdk = GoblinRedisConst.ANTICIPATE_SKUID_AVATAR.concat(skuId);
Object obj = redisUtil.get(rdk);
if(obj==null){
return CollectionUtil.arrayListString();
}else{
return (List<String>) obj;
}
}
/* ---------------------------------------- sku库存相关 ---------------------------------------- */
public void setSkuStock(String marketPre, String skuId, Integer stock) {
String rk = GoblinRedisConst.REAL_STOCK_SKU;
......
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