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

Commit 20968b25 authored by 胡佳晨's avatar 胡佳晨

修改 下单接口

parent df44b39f
......@@ -10,6 +10,7 @@ public class GoblinPayInnerResultVo implements Serializable, Cloneable {
private String code;
private String orderCode;
private String orderMasterCode;
private Integer status;
private String orderId;
private String payType;
......
......@@ -101,6 +101,7 @@ global-auth:
- ${liquidnet.info.context}/v2/api-docs*
- ${liquidnet.info.context}/inner/**
- ${liquidnet.info.context}/front/*
- ${liquidnet.info.context}/zhengzai/store/**
oncheck-url-pattern:
-
# -----------------------------------------------------------
......
......@@ -137,6 +137,30 @@ spring:
max-wait: -1
max-idle: 8
min-idle: 0
stone:
database: 15
dbs: ${liquidnet.redis.stone.dbs}
port: ${liquidnet.redis.stone.port}
host: ${liquidnet.redis.stone.host}
password: ${liquidnet.redis.stone.password}
lettuce:
pool:
max-active: 8
max-wait: -1
max-idle: 8
min-idle: 0
goblin:
database: 15
dbs: ${liquidnet.redis.goblin.dbs}
port: ${liquidnet.redis.goblin.port}
host: ${liquidnet.redis.goblin.host}
password: ${liquidnet.redis.goblin.password}
lettuce:
pool:
max-active: 8
max-wait: -1
max-idle: 8
min-idle: 0
data:
mongodb:
uri: mongodb://${liquidnet.mongodb.user}:${liquidnet.mongodb.pwd}@${liquidnet.mongodb.host}/?authSource=admin&maxPoolSize=200&waitQueueMultiple=100
......
......@@ -16,7 +16,7 @@ import java.util.List;
@Slf4j
@Api(tags = "正在下单相关")
@RestController
@RequestMapping("/zhengzai")
@RequestMapping("/zhengzai/app")
public class GoblinAppZhengzaiController {
@Autowired
......
package com.liquidnet.service.goblin.controller;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.goblin.dto.manage.GoblinOrderParam;
import com.liquidnet.service.goblin.dto.vo.GoblinPayInnerResultVo;
import com.liquidnet.service.goblin.dto.vo.GoblinSelfMarketingVo;
import com.liquidnet.service.goblin.dto.vo.GoblinZhengzaiGoodVo;
import com.liquidnet.service.goblin.service.IGoblinOrderService;
import com.liquidnet.service.goblin.service.IGoblinStoreZhengzaiService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
......@@ -10,10 +13,7 @@ import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
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.*;
import javax.validation.Valid;
import java.util.List;
......@@ -26,6 +26,8 @@ public class GoblinStoreZhengzaiController {
@Autowired
IGoblinStoreZhengzaiService goblinStoreZhengzaiService;
@Autowired
IGoblinOrderService goblinOrderService;
@GetMapping("market/list")
@ApiOperation("正在下单-活动列表")
......@@ -41,4 +43,13 @@ public class GoblinStoreZhengzaiController {
public ResponseDto<List<GoblinZhengzaiGoodVo>> getStoreList(@RequestParam("marketId") @Valid String marketId) {
return goblinStoreZhengzaiService.getSpuList(marketId);
}
@PostMapping("fc7bce6d6c2213b866f76493f92224b7")
@ApiOperation("正在下单-下单")
public ResponseDto<GoblinPayInnerResultVo> checkOrder(@RequestBody GoblinOrderParam param) {
if (param.getUid() == null) {
param.setUid("zhengzai");
}
return goblinOrderService.checkOrder(param, param.getUid());
}
}
......@@ -205,7 +205,7 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService {
marketId = spuVo.getMarketId();
marketType = pre;
skuName = skuName.concat(skuVo.getName()).concat(",");
if (pre != null && pre.contains(GoblinStatusConst.MarketPreStatus.MARKET_PRE_PURCHASE.getValue())) {
if (pre != null && pre.equals(GoblinStatusConst.MarketPreStatus.MARKET_PRE_ZHENGZAI.getValue())) {
writeOffCode = "EMPTY";
}
//获得 商品原价和活动价格
......@@ -226,7 +226,7 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService {
}
}
//获得活动优惠价格
priceBase = priceBase.subtract(BigDecimal.valueOf(skuParam.getNumber()));
priceBase = priceBase.multiply(BigDecimal.valueOf(skuParam.getNumber()));
price = price.subtract(BigDecimal.valueOf(skuParam.getNumber()));
voucherMarket = voucherMarket.add(priceBase.subtract(price));
storeTotalPrice = storeTotalPrice.add(price);
......@@ -273,9 +273,13 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService {
storeOrder.setUserName(StringUtils.defaultString(((String) token.get("nickname")), ""));
storeOrder.setUserMobile(StringUtils.defaultString(((String) token.get("mobile")), ""));
storeOrder.setPriceTotal(storeTotalPrice);
storeOrder.setPriceActual(storeOrder.getPriceTotal().add(storeOrder.getPriceExpress()).subtract(voucherMarket).subtract(voucherPrice));
storeOrder.setPriceRefund(BigDecimal.ZERO);
if(addressesVo==null){
storeOrder.setPriceExpress(BigDecimal.ZERO);
}else{
storeOrder.setPriceExpress(BigDecimal.TEN);
}
storeOrder.setPriceActual(storeOrder.getPriceTotal().add(storeOrder.getPriceExpress()).add(voucherMarket).subtract(voucherPrice));
storeOrder.setPriceRefund(BigDecimal.ZERO);
storeOrder.setPriceCoupon(voucherPrice);
storeOrder.setPriceVoucher(voucherMarket.add(voucherPrice));
storeOrder.setStatus(0);
......@@ -322,7 +326,7 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService {
boolean isFree = false;
GoblinPayInnerResultVo payInnerResultVo;
String payCode;
if (preParam.getPriceActual().compareTo(BigDecimal.valueOf(0)) > 0) {
if (preParam.getPriceActual().compareTo(BigDecimal.valueOf(0)) > 0 && !preParam.getPayType().equals("huifu")) {
// 调用支付
LinkedMultiValueMap<String, String> httpData = CollectionUtil.linkedMultiValueMapStringString();
httpData.add("type", "PRODUCT");
......@@ -364,6 +368,13 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService {
payCode = payInnerResultVo.getCode();
payInnerResultVo.setShowUrl(preParam.getShowUrl());
payInnerResultVo.setReturnUrl(preParam.getReturnUrl());
}else if(preParam.getPayType().equals("huifu")){
isFree = true;
preParam.setPayType("huifu");
payCode = "HUIFU_PAY_CODE";
payInnerResultVo = GoblinPayInnerResultVo.getNew();
payInnerResultVo.setPrice(preParam.getPriceActual());
payInnerResultVo.setPayType(preParam.getPayType());
} else {
isFree = true;
preParam.setPayType("FREE");
......@@ -372,6 +383,7 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService {
payInnerResultVo.setPrice(BigDecimal.valueOf(0));
payInnerResultVo.setPayType(preParam.getPayType());
}
payInnerResultVo.setOrderMasterCode(preParam.getOrderMasterCode());
LinkedList<String> sqls = CollectionUtil.linkedListString();
sqls.add(SqlMapping.get("goblin.order.create.sku_insert"));
......@@ -428,7 +440,9 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService {
queueUtils.sendMsgByRedis(MQConst.GoblinQueue.GOBLIN_ORDER_CREATE_PAY.getKey(), sqlData);
}
log.info(UserPathDto.setData("下单(唤起支付)", preParam, payInnerResultVo));
if (isFree) {
if (isFree && preParam.getPayType().equals("huifu")) {
return ResponseDto.success(payInnerResultVo);
}else if (isFree) {
SyncOrderParam syncOrderParam = SyncOrderParam.getNew();
syncOrderParam.setOrderCode(preParam.getOrderMasterCode());
syncOrderParam.setPaymentAt(DateUtil.format(LocalDateTime.now(), DateUtil.Formatter.yyyyMMddHHmmss));
......
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