会员支付修改
This commit is contained in:
@@ -95,7 +95,7 @@ public class VipPayController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@PostMapping("/ltPayMember")
|
@PostMapping("/ltPayMember")
|
||||||
@Debounce(value = "#payParam.memberOrderId")
|
@Debounce(value = "#payParam.shopUserId")
|
||||||
public CzgResult<Map<String, Object>> ltPayMember(HttpServletRequest request, @Validated @RequestBody VipMemberPayParamDTO payParam) {
|
public CzgResult<Map<String, Object>> ltPayMember(HttpServletRequest request, @Validated @RequestBody VipMemberPayParamDTO payParam) {
|
||||||
AssertUtil.isNull(payParam.getShopUserId(), "购买失败 未指定店铺用户Id");
|
AssertUtil.isNull(payParam.getShopUserId(), "购买失败 未指定店铺用户Id");
|
||||||
payParam.setPlatformType(ServletUtil.getHeaderIgnoreCase(ServletUtil.getRequest(), "platformType"));
|
payParam.setPlatformType(ServletUtil.getHeaderIgnoreCase(ServletUtil.getRequest(), "platformType"));
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import jakarta.validation.constraints.NotNull;
|
|||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
|
import lombok.experimental.Accessors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 会员充值订单 实体类。
|
* 会员充值订单 实体类。
|
||||||
@@ -19,6 +20,7 @@ import lombok.NoArgsConstructor;
|
|||||||
@Data
|
@Data
|
||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
|
@Accessors(chain = true)
|
||||||
public class MemberOrderDTO implements Serializable {
|
public class MemberOrderDTO implements Serializable {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|||||||
@@ -17,8 +17,6 @@ public class VipMemberPayParamDTO {
|
|||||||
private Long shopId;
|
private Long shopId;
|
||||||
@NotNull(message = "用户ID不能为空")
|
@NotNull(message = "用户ID不能为空")
|
||||||
private Long shopUserId;
|
private Long shopUserId;
|
||||||
@NotNull(message = "会员订单id不能为空")
|
|
||||||
private Long memberOrderId;
|
|
||||||
/**
|
/**
|
||||||
* 平台类型 pc 收银机客户端 wechat 微信小程序 alipay 支付宝小程序 admin-pc PC管理端 admin-app APP管理端
|
* 平台类型 pc 收银机客户端 wechat 微信小程序 alipay 支付宝小程序 admin-pc PC管理端 admin-app APP管理端
|
||||||
*/
|
*/
|
||||||
@@ -32,4 +30,10 @@ public class VipMemberPayParamDTO {
|
|||||||
private String pwd;
|
private String pwd;
|
||||||
private String returnUrl;
|
private String returnUrl;
|
||||||
private String buyerRemark;
|
private String buyerRemark;
|
||||||
|
private String name;
|
||||||
|
private String nickName;
|
||||||
|
private String orderType;
|
||||||
|
private Integer sex;
|
||||||
|
private String birthDay;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1139,7 +1139,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|||||||
} else {
|
} else {
|
||||||
//新客立减
|
//新客立减
|
||||||
if (param.getNewCustomerDiscountId() != null) {
|
if (param.getNewCustomerDiscountId() != null) {
|
||||||
newConsumerDiscountRecordService.useDiscount(param.getNewCustomerDiscountId(), shopUser.getId(), param.getOrderId(), param.getNewCustomerDiscountAmount());
|
newConsumerDiscountRecordService.useDiscount(shopUser.getId(), param.getOrderId(), param.getNewCustomerDiscountAmount());
|
||||||
}
|
}
|
||||||
//积分使用
|
//积分使用
|
||||||
if (orderInfo.getPointsNum() != null && orderInfo.getPointsNum() > 0) {
|
if (orderInfo.getPointsNum() != null && orderInfo.getPointsNum() > 0) {
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import com.czg.entity.resp.*;
|
|||||||
import com.czg.enums.ShopUserFlowBizEnum;
|
import com.czg.enums.ShopUserFlowBizEnum;
|
||||||
import com.czg.exception.CzgException;
|
import com.czg.exception.CzgException;
|
||||||
import com.czg.exception.PaySuccessException;
|
import com.czg.exception.PaySuccessException;
|
||||||
|
import com.czg.market.dto.MemberOrderDTO;
|
||||||
import com.czg.market.entity.MkShopCouponRecord;
|
import com.czg.market.entity.MkShopCouponRecord;
|
||||||
import com.czg.market.service.MemberOrderService;
|
import com.czg.market.service.MemberOrderService;
|
||||||
import com.czg.market.service.MkShopCouponRecordService;
|
import com.czg.market.service.MkShopCouponRecordService;
|
||||||
@@ -36,6 +37,7 @@ import com.czg.resp.CzgResult;
|
|||||||
import com.czg.sa.StpKit;
|
import com.czg.sa.StpKit;
|
||||||
import com.czg.service.CzgPayService;
|
import com.czg.service.CzgPayService;
|
||||||
import com.czg.service.RedisService;
|
import com.czg.service.RedisService;
|
||||||
|
import com.czg.service.market.service.impl.MemberOrderServiceImpl;
|
||||||
import com.czg.service.order.dto.*;
|
import com.czg.service.order.dto.*;
|
||||||
import com.czg.service.order.enums.OrderStatusEnums;
|
import com.czg.service.order.enums.OrderStatusEnums;
|
||||||
import com.czg.service.order.service.PayService;
|
import com.czg.service.order.service.PayService;
|
||||||
@@ -395,15 +397,18 @@ public class PayServiceImpl implements PayService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public CzgResult<Map<String, Object>> ltPayMember(String clientIP, VipMemberPayParamDTO payParam) {
|
public CzgResult<Map<String, Object>> ltPayMember(String clientIP, VipMemberPayParamDTO payParam) {
|
||||||
MemberOrder memberOrder = memberOrderService.getOne(new QueryWrapper().eq(MemberOrder::getId, payParam.getMemberOrderId()));
|
ShopUser shopUser = shopUserService.getOne(new QueryWrapper().eq(ShopUser::getSourceShopId, payParam.getShopId()).eq(ShopUser::getUserId, StpKit.USER.getLoginIdAsLong()));
|
||||||
AssertUtil.isNull(memberOrder, "充值会员失败 该会员订单不存在");
|
|
||||||
ShopUser shopUser = shopUserService.getOne(new QueryWrapper().eq(ShopUser::getSourceShopId, payParam.getShopId()).eq(ShopUser::getId, payParam.getShopUserId()));
|
|
||||||
AssertUtil.isNull(shopUser, "充值失败 该店铺用户不存在");
|
AssertUtil.isNull(shopUser, "充值失败 该店铺用户不存在");
|
||||||
|
MemberOrder memberOrder = memberOrderService.createMemberOrder(new MemberOrderDTO().setName(payParam.getName())
|
||||||
|
.setNum(1).setNickName(payParam.getNickName())
|
||||||
|
.setOrderType(payParam.getOrderType())
|
||||||
|
.setPlatformType(payParam.getPlatformType()).setSex(payParam.getSex()).setUserId(StpKit.USER.getLoginIdAsLong()).setShopId(payParam.getShopId()).setBirthDay(payParam.getBirthDay()));
|
||||||
|
|
||||||
AssertUtil.isBlank(payParam.getOpenId(), "用户小程序ID不能为空");
|
AssertUtil.isBlank(payParam.getOpenId(), "用户小程序ID不能为空");
|
||||||
AssertUtil.isBlank(payParam.getPayType(), "支付方式不能为空");
|
AssertUtil.isBlank(payParam.getPayType(), "支付方式不能为空");
|
||||||
String payOrderNo = payParam.getPlatformType() + IdUtil.getSnowflakeNextId();
|
String payOrderNo = payParam.getPlatformType() + IdUtil.getSnowflakeNextId();
|
||||||
initOrderPayment(new OrderPayment(payParam.getShopId(), shopUser.getId(), "memberPay", payOrderNo,
|
initOrderPayment(new OrderPayment(payParam.getShopId(), shopUser.getId(), "memberPay", payOrderNo,
|
||||||
"", memberOrder.getAmount(), payParam.getMemberOrderId()));
|
"", memberOrder.getAmount(), memberOrder.getId()));
|
||||||
return ltPay(payParam.getShopId(), payParam.getPayType(), new CzgLtPayReq(payOrderNo, memberOrder.getAmount().multiply(MONEY_RATE).longValue(),
|
return ltPay(payParam.getShopId(), payParam.getPayType(), new CzgLtPayReq(payOrderNo, memberOrder.getAmount().multiply(MONEY_RATE).longValue(),
|
||||||
payParam.getPayType(), "会员充值", payParam.getOpenId(), clientIP, payParam.getReturnUrl(), payParam.getBuyerRemark(), ""));
|
payParam.getPayType(), "会员充值", payParam.getOpenId(), clientIP, payParam.getReturnUrl(), payParam.getBuyerRemark(), ""));
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user