修改篮球入场支付方式
This commit is contained in:
@@ -210,11 +210,22 @@ public class VenueController extends BaseApiController {
|
||||
*/
|
||||
@RequestMapping(value = "/venue/basketball/pay", method = RequestMethod.POST)
|
||||
@AccessToken
|
||||
public ResponseDTO recharge(@RequestParam("rechargeId") Integer rechargeId){
|
||||
Venue venue = new Venue();
|
||||
// TODO
|
||||
public ResponseDTO recharge(@RequestParam("venueId") Integer venueId){
|
||||
Device byDevice = deviceService.findByDevice(venueId);
|
||||
BasketEnterResult join = new BasketEnterResult();
|
||||
if (byDevice == null) {
|
||||
join.setFlg(999);
|
||||
join.setMsg("通讯异常,门禁设备离线中");
|
||||
return ResponseDTO.ok().addAttribute("join", join);
|
||||
}
|
||||
String doorSn = byDevice.getName();
|
||||
boolean lockStat = doorLockUtil.checkDoorLock(doorSn);
|
||||
if (lockStat) {
|
||||
throw new ServiceException("有人正在使用门禁,请稍后再试");
|
||||
}
|
||||
Integer memberId = getMemberIdByAccessToken();
|
||||
return ResponseDTO.ok().
|
||||
addAttribute("pay",orderService.createEnterVenueOrder(venue,getLoginMemberId(), PayTypeEnum.WEI_XIN,new BigDecimal(10)));
|
||||
addAttribute("pay",orderService.createEnterVenueOrder(venueId, memberId, PayTypeEnum.WEI_XIN,new BigDecimal(10)));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.sv.dto;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
public class BasketEnterResult implements Serializable {
|
||||
/**
|
||||
@@ -10,6 +11,16 @@ public class BasketEnterResult implements Serializable {
|
||||
|
||||
private String msg;
|
||||
|
||||
private BigDecimal money;
|
||||
|
||||
public BigDecimal getMoney() {
|
||||
return money;
|
||||
}
|
||||
|
||||
public void setMoney(BigDecimal money) {
|
||||
this.money = money;
|
||||
}
|
||||
|
||||
public Integer getFlg() {
|
||||
return flg;
|
||||
}
|
||||
|
||||
@@ -181,7 +181,7 @@ public class MemberCardOrderService extends BaseServiceImpl {
|
||||
// memberCardService.createCard(order,totalPrice);
|
||||
|
||||
// 4.调支付
|
||||
OrderPaySignResponse.WechatPayParam wechatPayParam = createUnifiedOrder(order.getOrderSn(), memberId,ip);
|
||||
OrderPaySignResponse.WechatPayParam wechatPayParam = createUnifiedOrder(order.getOrderSn(), memberId,ip,"购买商品");
|
||||
return wechatPayParam;
|
||||
}
|
||||
|
||||
@@ -220,12 +220,12 @@ public class MemberCardOrderService extends BaseServiceImpl {
|
||||
* @return
|
||||
*/
|
||||
@Transactional
|
||||
public OrderPaySignResponse.WechatPayParam createUnifiedOrder(String orderSn, Integer memberId, String ip) {
|
||||
public OrderPaySignResponse.WechatPayParam createUnifiedOrder(String orderSn, Integer memberId, String ip,String orderTitle) {
|
||||
Order order = orderService.findOrderSn(orderSn, memberId);
|
||||
if (order == null){
|
||||
throw new ServiceException(com.sv.exception.api.ExceptionCodeTemplate.ORDER_ERROR);
|
||||
}
|
||||
return wechatPayService.createUnifiedOrder(orderSn, order.getPrice(), ip, "JSAPI", memberId);
|
||||
return wechatPayService.createUnifiedOrder(orderSn, order.getPrice(), ip, memberId,orderTitle);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -287,7 +287,7 @@ public class MemberLessonTicketService extends BaseServiceImpl {
|
||||
memberService.updateMoney(memberId, order.getPrice().negate());
|
||||
paySuccess(order);
|
||||
} else {
|
||||
wechatPayParam = memberCardOrderService.createUnifiedOrder(order.getOrderSn(), memberId, ip);
|
||||
wechatPayParam = memberCardOrderService.createUnifiedOrder(order.getOrderSn(), memberId, ip,"购买商品");
|
||||
}
|
||||
}
|
||||
redisLock.unlock();
|
||||
|
||||
@@ -10,6 +10,7 @@ import com.sv.dto.api.wechat.OrderPaySignResponse;
|
||||
import com.sv.entity.*;
|
||||
import com.sv.exception.api.ExceptionCodeTemplate;
|
||||
import com.sv.mapper.OrderMapper;
|
||||
import com.sv.mapper.VenueMapper;
|
||||
import com.sv.service.api.config.WechatPayService;
|
||||
import com.ydd.framework.core.common.Pagination;
|
||||
import com.ydd.framework.core.exception.ServiceException;
|
||||
@@ -44,6 +45,8 @@ public class OrderService extends BaseServiceImpl {
|
||||
@Resource
|
||||
private OrderMapper orderMapper;
|
||||
@Resource
|
||||
private VenueMapper venueMapper;
|
||||
@Resource
|
||||
private WechatPayService wechatPayService;
|
||||
@Resource
|
||||
private RechargeService rechargeService;
|
||||
@@ -224,7 +227,7 @@ public class OrderService extends BaseServiceImpl {
|
||||
orderMapper.insert(order);
|
||||
|
||||
// 调微信
|
||||
OrderPaySignResponse.WechatPayParam wechatPayParam = memberCardOrderService.createUnifiedOrder(order.getOrderSn(), memberId,ip);
|
||||
OrderPaySignResponse.WechatPayParam wechatPayParam = memberCardOrderService.createUnifiedOrder(order.getOrderSn(), memberId,ip,"余额充值");
|
||||
return wechatPayParam;
|
||||
}
|
||||
|
||||
@@ -240,12 +243,14 @@ public class OrderService extends BaseServiceImpl {
|
||||
|
||||
/**
|
||||
* 生成进场订单
|
||||
* @param venue
|
||||
* @param memberId
|
||||
* @return
|
||||
*/
|
||||
@Deprecated
|
||||
public String createEnterVenueOrder(Venue venue, Integer memberId,PayTypeEnum payTypeEnum,BigDecimal price){
|
||||
public OrderPaySignResponse.WechatPayParam createEnterVenueOrder(Integer venueId, Integer memberId,PayTypeEnum payTypeEnum,BigDecimal price){
|
||||
Venue venue = venueMapper.findById(venueId);
|
||||
if (venue == null) {
|
||||
throw new ServiceException("未找到该场馆");
|
||||
}
|
||||
//创建订单
|
||||
Order order = new Order();
|
||||
order.setOrderSn(createSn());
|
||||
@@ -257,15 +262,12 @@ public class OrderService extends BaseServiceImpl {
|
||||
order.setPlatformId(venue.getPlatformId());
|
||||
order.setMemberId(memberId);
|
||||
orderMapper.insert(order);
|
||||
|
||||
//扣除用户余额
|
||||
if(payTypeEnum.value.equals(PayTypeEnum.BALANCE.value)) {
|
||||
memberMoneyLogService.create(memberId, venue.getPlatformId(), MoneyLogEnum.JOIN.value, price.negate(), PayTypeEnum.BALANCE.value, null, venue.getId(), venue.getType(), null);
|
||||
}
|
||||
//TODO 调用微信支付 不用这个方法,需要新增方法,把商品的信息进行调整 最好有空把充值的内容也更新一下
|
||||
OrderPaySignResponse.WechatPayParam wechatPayParam = memberCardOrderService.createUnifiedOrder(order.getOrderSn(), memberId,"ip");
|
||||
|
||||
return order.getOrderSn();
|
||||
//扣除用户余额 目前篮球订单不支持余额支付
|
||||
// if(payTypeEnum.value.equals(PayTypeEnum.BALANCE.value)) {
|
||||
// memberMoneyLogService.create(memberId, venue.getPlatformId(), MoneyLogEnum.JOIN.value, price.negate(), PayTypeEnum.BALANCE.value, null, venue.getId(), venue.getType(), null);
|
||||
// }
|
||||
OrderPaySignResponse.WechatPayParam wechatPayParam = memberCardOrderService.createUnifiedOrder(order.getOrderSn(), memberId,"ip","入场结算订单");
|
||||
return wechatPayParam;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -57,7 +57,7 @@ public class WechatPayService extends BaseServiceImpl {
|
||||
* @return
|
||||
*/
|
||||
@Transactional
|
||||
public OrderPaySignResponse.WechatPayParam createUnifiedOrder(String orderSn, BigDecimal money, String ip, String tradeType, Integer memberId) {
|
||||
public OrderPaySignResponse.WechatPayParam createUnifiedOrder(String orderSn, BigDecimal money, String ip, Integer memberId, String orderTitle) {
|
||||
OrderPaySignResponse.WechatPayParam wechatPayParam;
|
||||
try {
|
||||
// 设置过期时间
|
||||
@@ -73,7 +73,7 @@ public class WechatPayService extends BaseServiceImpl {
|
||||
weChatPayHelper.setMchId(payConfig.getMchId());
|
||||
weChatPayHelper.setKey(payConfig.getKey());
|
||||
weChatPayHelper.setParameter("nonce_str", nonceStr);
|
||||
weChatPayHelper.setParameter("body", "购买商品");
|
||||
weChatPayHelper.setParameter("body", orderTitle);
|
||||
weChatPayHelper.setParameter("detail", "商品");
|
||||
weChatPayHelper.setParameter("out_trade_no", orderSn);
|
||||
String payMoney = money.multiply(new BigDecimal(100))
|
||||
@@ -82,7 +82,7 @@ public class WechatPayService extends BaseServiceImpl {
|
||||
weChatPayHelper.setParameter("spbill_create_ip", ip);
|
||||
weChatPayHelper.setParameter("time_start", DateFormatUtils.format(current, "yyyyMMddHHmmss"));
|
||||
weChatPayHelper.setParameter("notify_url", payConfig.getNotifyUrl());
|
||||
weChatPayHelper.setParameter("trade_type", tradeType);
|
||||
weChatPayHelper.setParameter("trade_type", "JSAPI"); // 目前写死
|
||||
//使用公众号的appid
|
||||
MemberAuth memberAuth = memberAuthService.findByMemberId(memberId);
|
||||
weChatPayHelper.setParameter("openid", memberAuth.getAuthId());
|
||||
|
||||
Reference in New Issue
Block a user