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

Commit 699db9e1 authored by 胡佳晨's avatar 胡佳晨

商品详情

parent 99dc3c5e
...@@ -2,7 +2,10 @@ package com.liquidnet.service.stone.service; ...@@ -2,7 +2,10 @@ package com.liquidnet.service.stone.service;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.stone.entity.StoneScoreItems;
import com.liquidnet.service.stone.vo.StoneItemListVo; import com.liquidnet.service.stone.vo.StoneItemListVo;
import com.liquidnet.service.stone.vo.StoneScoreItemVo;
import java.util.List; import java.util.List;
...@@ -18,4 +21,6 @@ public interface IStoneScoreItemsService { ...@@ -18,4 +21,6 @@ public interface IStoneScoreItemsService {
PageInfo<List<StoneItemListVo>> itemList(Integer page, Integer size); PageInfo<List<StoneItemListVo>> itemList(Integer page, Integer size);
ResponseDto<StoneScoreItemVo> itemDetails(String itemId);
} }
package com.liquidnet.service.stone.vo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.service.stone.entity.StoneScoreItems;
import com.liquidnet.service.stone.entity.StoneScoreLogs;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* <p>
* 积分物品表
* </p>
*
* @author liquidnet
* @since 2021-10-19
*/
@Data
@ApiModel
public class StoneScoreItemVo implements Serializable, Cloneable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(position = 0, value = "积分物品id")
private String itemId;
@ApiModelProperty(position = 1, value = "积分物品名称")
private String targetTitle;
@ApiModelProperty(position = 2, value = "目标类型[1-券|1x-商品维度|2x-演出维度]")
private Integer type;
@ApiModelProperty(position = 3, value = "展示图")
private String img;
@ApiModelProperty(position = 4, value = "所需积分")
private Integer score;
@ApiModelProperty(position = 5, value = "所需金额")
private BigDecimal price;
@ApiModelProperty(position = 6, value = "限购数量[0-不限]")
private Integer limitCount;
@ApiModelProperty(position = 7, value = "商品详情")
private String details;
@ApiModelProperty(position = 8, value = "注意事项")
private String notice;
@ApiModelProperty(position = 9, value = "状态[-999-全部|-1-删除|0-未上架|1-已上架|2-定时上架|7-已下架|8-售罄]")
private Integer status;
private static final StoneScoreItemVo obj = new StoneScoreItemVo();
public static StoneScoreItemVo getNew() {
try {
return (StoneScoreItemVo) obj.clone();
} catch (CloneNotSupportedException e) {
return new StoneScoreItemVo();
}
}
public StoneScoreItemVo copy(StoneScoreItems source) {
if (null == source) return this;
this.setItemId(source.getItemId());
this.setTargetTitle(source.getTargetTitle());
this.setType(source.getType());
this.setImg(source.getImg());
this.setScore(source.getScore().intValue());
this.setPrice(source.getPrice());
this.setLimitCount(source.getLimitCount());
this.setDetails(source.getDetails());
this.setNotice(source.getNotice());
this.setStatus(source.getStatus());
return this;
}
}
...@@ -4,6 +4,7 @@ import com.github.pagehelper.PageInfo; ...@@ -4,6 +4,7 @@ import com.github.pagehelper.PageInfo;
import com.liquidnet.service.base.ResponseDto; import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.stone.service.IStoneScoreItemsService; import com.liquidnet.service.stone.service.IStoneScoreItemsService;
import com.liquidnet.service.stone.vo.StoneItemListVo; import com.liquidnet.service.stone.vo.StoneItemListVo;
import com.liquidnet.service.stone.vo.StoneScoreItemVo;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse; import io.swagger.annotations.ApiResponse;
...@@ -29,4 +30,12 @@ public class StoneItemController { ...@@ -29,4 +30,12 @@ public class StoneItemController {
public ResponseDto<PageInfo<List<StoneItemListVo>>> itemList(@RequestParam("page") @Valid Integer page) { public ResponseDto<PageInfo<List<StoneItemListVo>>> itemList(@RequestParam("page") @Valid Integer page) {
return ResponseDto.success(stoneScoreItemsService.itemList(page, 40)); return ResponseDto.success(stoneScoreItemsService.itemList(page, 40));
} }
@GetMapping("details")
@ApiOperation("积分商品详情")
@ApiResponse(code = 200, message = "接口返回对象参数")
public ResponseDto<StoneScoreItemVo> itemDetails(@RequestParam("itemId") @Valid String itemId) {
return stoneScoreItemsService.itemDetails(itemId);
}
} }
package com.liquidnet.service.stone.controller; package com.liquidnet.service.stone.controller;
import com.github.pagehelper.PageInfo;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.stone.vo.StoneItemListVo;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.validation.Valid;
import java.util.List;
@Api(tags = "积分-订单相关") @Api(tags = "积分-订单相关")
@RestController @RestController
@RequestMapping("order") @RequestMapping("order")
@Validated @Validated
public class StoneOrderController { public class StoneOrderController {
@GetMapping("pre")
@ApiOperation("积分订单列表")
@ApiResponse(code = 200, message = "接口返回对象参数")
public ResponseDto<PageInfo<List<StoneItemListVo>>> order(@RequestParam("page") @Valid Integer page) {
return ResponseDto.success();
}
@GetMapping("list")
@ApiOperation("积分订单列表")
@ApiResponse(code = 200, message = "接口返回对象参数")
public ResponseDto<PageInfo<List<StoneItemListVo>>> orderList(@RequestParam("page") @Valid Integer page) {
return ResponseDto.success();
}
} }
...@@ -30,7 +30,7 @@ public class StoneUserController { ...@@ -30,7 +30,7 @@ public class StoneUserController {
IStoneScoreLogsService stoneScoreLogsService; IStoneScoreLogsService stoneScoreLogsService;
@GetMapping("info") @GetMapping("info")
@ApiOperation("积分商品列表") @ApiOperation("用户信息")
@ApiResponse(code = 200, message = "接口返回对象参数") @ApiResponse(code = 200, message = "接口返回对象参数")
public ResponseDto<StoneScoreListDto> stoneUserInfo() { public ResponseDto<StoneScoreListDto> stoneUserInfo() {
return ResponseDto.success(stoneScoreUserService.stoneUserInfo()); return ResponseDto.success(stoneScoreUserService.stoneUserInfo());
......
package com.liquidnet.service.stone.service.impl; package com.liquidnet.service.stone.service.impl;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.base.UserPathDto; import com.liquidnet.service.base.UserPathDto;
import com.liquidnet.service.stone.entity.StoneScoreItems; import com.liquidnet.service.stone.entity.StoneScoreItems;
import com.liquidnet.service.stone.service.IStoneScoreItemsService; import com.liquidnet.service.stone.service.IStoneScoreItemsService;
...@@ -8,6 +9,7 @@ import com.liquidnet.service.stone.util.ObjectUtils; ...@@ -8,6 +9,7 @@ import com.liquidnet.service.stone.util.ObjectUtils;
import com.liquidnet.service.stone.util.StoneMongoUtils; import com.liquidnet.service.stone.util.StoneMongoUtils;
import com.liquidnet.service.stone.util.StoneRedisUtils; import com.liquidnet.service.stone.util.StoneRedisUtils;
import com.liquidnet.service.stone.vo.StoneItemListVo; import com.liquidnet.service.stone.vo.StoneItemListVo;
import com.liquidnet.service.stone.vo.StoneScoreItemVo;
import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.ObjectUtil;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -66,4 +68,14 @@ public class StoneScoreItemsServiceImpl implements IStoneScoreItemsService { ...@@ -66,4 +68,14 @@ public class StoneScoreItemsServiceImpl implements IStoneScoreItemsService {
log.info(UserPathDto.setData("积分商品列表", "", voList)); log.info(UserPathDto.setData("积分商品列表", "", voList));
return mPageInfo; return mPageInfo;
} }
@Override
public ResponseDto<StoneScoreItemVo> itemDetails(String itemId) {
StoneScoreItems data = redisUtils.getItemData(itemId);
if(redisUtils.getStoneGeneralSurplus(itemId)<=0){
data.setStatus(8);
}
StoneScoreItemVo vo = StoneScoreItemVo.getNew().copy(data);
return ResponseDto.success(vo);
}
} }
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