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

Commit 15ac511f authored by jiangxiulong's avatar jiangxiulong

增加预下单订单详情

parent 23f8c9e0
package com.liquidnet.service.goblin.dto.vo;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
@ApiModel(value = "GoblinPayOrderDetailsVo", description = "NFT预下单订单详情")
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class GoblinPayOrderDetailsVo implements Serializable, Cloneable {
private static final long serialVersionUID = -2564883531113300178L;
@ApiModelProperty(position = 10, value = "商品单品ID")
private String skuId;
@ApiModelProperty(position = 11, value = "商品ID[64]")
private String spuId;
@ApiModelProperty(position = 13, value = "单品的名称[100]")
private String name;
@ApiModelProperty(position = 14, value = "单品的副标题[128]")
private String subtitle;
@ApiModelProperty(position = 15, value = "单品默认图片的URL[256]")
private String skuPic;
@ApiModelProperty(position = 21, value = "单品现价[20,2]")
private BigDecimal price;
@ApiModelProperty(position = 22, value = "数量")
private Integer num;
@ApiModelProperty(position = 23, value = "总价")
private BigDecimal priceTotal;
private static final GoblinPayOrderDetailsVo obj = new GoblinPayOrderDetailsVo();
public static GoblinPayOrderDetailsVo getNew() {
try {
return (GoblinPayOrderDetailsVo) obj.clone();
} catch (CloneNotSupportedException e) {
return new GoblinPayOrderDetailsVo();
}
}
public GoblinPayOrderDetailsVo copy(GoblinGoodsSkuInfoVo source) {
if (null == source) return this;
this.setSkuId(source.getSkuId());
this.setSpuId(source.getSpuId());
this.setName(source.getName());
this.setSubtitle(source.getSubtitle());
this.setSkuPic(source.getSkuPic());
this.setPrice(source.getPrice());
return this;
}
}
...@@ -3,6 +3,7 @@ package com.liquidnet.service.goblin.service; ...@@ -3,6 +3,7 @@ package com.liquidnet.service.goblin.service;
import com.liquidnet.service.base.PagedResult; import com.liquidnet.service.base.PagedResult;
import com.liquidnet.service.base.ResponseDto; import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.goblin.dto.vo.GoblinNftOrderDetailsVo; import com.liquidnet.service.goblin.dto.vo.GoblinNftOrderDetailsVo;
import com.liquidnet.service.goblin.dto.vo.GoblinPayOrderDetailsVo;
public interface IGoblinNftOrderAppService { public interface IGoblinNftOrderAppService {
...@@ -10,4 +11,5 @@ public interface IGoblinNftOrderAppService { ...@@ -10,4 +11,5 @@ public interface IGoblinNftOrderAppService {
ResponseDto<GoblinNftOrderDetailsVo> orderDetails(String orderId); ResponseDto<GoblinNftOrderDetailsVo> orderDetails(String orderId);
GoblinPayOrderDetailsVo payOrderDetails(String skuId);
} }
...@@ -3,6 +3,7 @@ package com.liquidnet.service.goblin.controller; ...@@ -3,6 +3,7 @@ package com.liquidnet.service.goblin.controller;
import com.liquidnet.service.base.PagedResult; import com.liquidnet.service.base.PagedResult;
import com.liquidnet.service.base.ResponseDto; import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.goblin.dto.vo.GoblinNftOrderDetailsVo; import com.liquidnet.service.goblin.dto.vo.GoblinNftOrderDetailsVo;
import com.liquidnet.service.goblin.dto.vo.GoblinPayOrderDetailsVo;
import com.liquidnet.service.goblin.service.IGoblinNftOrderAppService; import com.liquidnet.service.goblin.service.IGoblinNftOrderAppService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParam;
...@@ -11,10 +12,7 @@ import io.swagger.annotations.ApiOperation; ...@@ -11,10 +12,7 @@ import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
...@@ -48,4 +46,19 @@ public class GoblinNftOrderAppController { ...@@ -48,4 +46,19 @@ public class GoblinNftOrderAppController {
return goblinNftOrderAppService.orderDetails(orderId); return goblinNftOrderAppService.orderDetails(orderId);
} }
@GetMapping("payOrderDetails")
@ApiOperation("预下单订单详情")
@ApiImplicitParams({
@ApiImplicitParam(type = "query", required = true, dataType = "String", name = "skuId", value = "skuId", example = "1"),
})
public ResponseDto<GoblinPayOrderDetailsVo> payOrderDetails(
@RequestParam("skuId") @NotBlank(message = "skuId不能为空") String skuId
) {
GoblinPayOrderDetailsVo vo = goblinNftOrderAppService.payOrderDetails(skuId);
if (vo == null) {
return ResponseDto.failure("获取失败");
}
return ResponseDto.success(vo);
}
} }
...@@ -4,10 +4,7 @@ import com.liquidnet.commons.lang.util.CurrentUtil; ...@@ -4,10 +4,7 @@ import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.service.base.ErrorMapping; import com.liquidnet.service.base.ErrorMapping;
import com.liquidnet.service.base.PagedResult; import com.liquidnet.service.base.PagedResult;
import com.liquidnet.service.base.ResponseDto; import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.goblin.dto.vo.GoblinGoodsSkuInfoVo; import com.liquidnet.service.goblin.dto.vo.*;
import com.liquidnet.service.goblin.dto.vo.GoblinNftOrderDetailsVo;
import com.liquidnet.service.goblin.dto.vo.GoblinNftOrderGoodsSkuInfoVo;
import com.liquidnet.service.goblin.dto.vo.GoblinNftOrderVo;
import com.liquidnet.service.goblin.service.IGoblinNftOrderAppService; import com.liquidnet.service.goblin.service.IGoblinNftOrderAppService;
import com.liquidnet.service.goblin.util.*; import com.liquidnet.service.goblin.util.*;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -84,4 +81,22 @@ public class GoblinNftOrderAppServiceImpl implements IGoblinNftOrderAppService { ...@@ -84,4 +81,22 @@ public class GoblinNftOrderAppServiceImpl implements IGoblinNftOrderAppService {
return ResponseDto.success(orderDetails); return ResponseDto.success(orderDetails);
} }
@Override
public GoblinPayOrderDetailsVo payOrderDetails(String skuId) {
GoblinGoodsSkuInfoVo goodsSkuInfoVo = goblinRedisUtils.getGoodsSkuInfoVo(skuId);
if (
null != goodsSkuInfoVo && goodsSkuInfoVo.getDelFlg().equals("0") &&
goodsSkuInfoVo.getStatus().equals("3") &&
goodsSkuInfoVo.getShelvesStatus().equals("3") && goodsSkuInfoVo.getSkuAppear().equals("0") &&
goodsSkuInfoVo.getSkuType() == 1
) {
GoblinPayOrderDetailsVo payOrderDetailsVo = GoblinPayOrderDetailsVo.getNew().copy(goodsSkuInfoVo);
payOrderDetailsVo.setNum(1);
payOrderDetailsVo.setPriceTotal(payOrderDetailsVo.getPrice());
return payOrderDetailsVo;
} else {
return null;
}
}
} }
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