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

Commit 1faac76d authored by 胡佳晨's avatar 胡佳晨

提交下单 接口 暂时无消费

parent fc1bd9c1
......@@ -11,6 +11,8 @@ public class StoneConstant {
public static final String LOGS_LIST=ITEM.concat("logs:list:");
//orderList 积分订单列表
public static final String ORDER_LIST=ITEM.concat("order:list:");
//orderList 积分订单列表
public static final String ORDER_DETAILS=ITEM.concat("order:details:");
//剩余库存
public static final String SURPLUS_GENERAL = ":surplusGeneral";
......
......@@ -2,10 +2,12 @@ package com.liquidnet.service.stone.controller;
import com.github.pagehelper.PageInfo;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.stone.service.IStoneScoreOrderService;
import com.liquidnet.service.stone.vo.StoneOrderListVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
......@@ -18,18 +20,21 @@ import java.util.List;
@Validated
public class StoneOrderController {
@Autowired
IStoneScoreOrderService stoneScoreOrderService;
@PostMapping("pre")
@ApiOperation("纯积分商品下单")
@ApiResponse(code = 200, message = "接口返回对象参数")
public ResponseDto<String> order(@RequestParam("itemId") @Valid String itemId,
@RequestParam("number") @Valid Integer number) {
return ResponseDto.success();
return stoneScoreOrderService.order(itemId,number);
}
@GetMapping("list")
@ApiOperation("积分订单列表")
@ApiResponse(code = 200, message = "接口返回对象参数")
public ResponseDto<PageInfo<List<StoneOrderListVo>>> orderList(@RequestParam("page") @Valid Integer page) {
return ResponseDto.success();
return ResponseDto.success(stoneScoreOrderService.orderList(page));
}
}
......@@ -68,6 +68,8 @@ public class StoneScoreOrderServiceImpl implements IStoneScoreOrderService {
}
//增加限购
stoneRedisUtils.addItemLimit(uid, itemId, number);
//减少库存
stoneRedisUtils.changeStoneGeneralSurplus(itemId,-number);
//下单
StoneScoreOrder order = StoneScoreOrder.getNew();
order.setOrderId(IDGenerator.nextTimeId());
......@@ -93,12 +95,12 @@ public class StoneScoreOrderServiceImpl implements IStoneScoreOrderService {
order.setCreatedAt(LocalDateTime.now());
//redis
StoneOrderListVo listVo = StoneOrderListVo.getNew().copy(order, data.getImg());
stoneRedisUtils.setOrderDetails(uid, listVo);
stoneRedisUtils.setOrderDetails(listVo.getOrderId(), listVo);
stoneRedisUtils.addOrderList(uid, listVo);
//mongo
stoneMongoUtils.orderCreate(listVo);
//TODO mysql
return null;
return ResponseDto.success("下单成功");
}
@Override
......
......@@ -290,11 +290,11 @@ public class StoneRedisUtils {
/**
* 覆盖 积分订单数据
*
* @param uid
* @param orderId
* @param data
*/
public void setOrderDetails(String uid, StoneOrderListVo data) {
String redisKey = StoneConstant.ORDER_LIST.concat(uid);
public void setOrderDetails(String orderId, StoneOrderListVo data) {
String redisKey = StoneConstant.ORDER_DETAILS.concat(orderId);
redisUtil.set(redisKey, data);
}
......@@ -302,7 +302,7 @@ public class StoneRedisUtils {
* 获取 订单 缓存list
*/
public List<StoneOrderListVo> getOrderList(String uid) {
String redisKey = StoneConstant.LOGS_LIST.concat(uid);
String redisKey = StoneConstant.ORDER_LIST.concat(uid);
Object obj = redisUtil.get(redisKey);
if (obj == null) {
return (List<StoneOrderListVo>) mongoUtils.orderList(uid, 1, 40).get("data");
......
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