Browse Source

Merge branch 'for_member_only' of https://git.youlane.cn/server/formallProject into for_member_only

release_toaliyun_real
xhxu 5 years ago
parent
commit
e24c37ae45
13 changed files with 136 additions and 64 deletions
  1. +8
    -0
      mallinkAdmin/src/main/resources/db/migration/V202007311200__FOR_MEMBER_ONLY_001.sql
  2. +14
    -11
      mallinkBApi/src/main/java/com/iformall/controller/WxMicroPayController.java
  3. +62
    -30
      mallinkCApi/src/main/java/com/iformall/controller/WxCardPayController.java
  4. +3
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxCardSpend.java
  5. +2
    -1
      mallinkService/src/main/java/com/iformall/domain/po/WxCouponOrder.java
  6. +1
    -1
      mallinkService/src/main/java/com/iformall/mapper/WxPayOrderMapper.java
  7. +2
    -1
      mallinkService/src/main/java/com/iformall/service/WxCouponOrderService.java
  8. +15
    -8
      mallinkService/src/main/java/com/iformall/service/WxOrderService.java
  9. +4
    -1
      mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java
  10. +6
    -4
      mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java
  11. +8
    -7
      mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java
  12. +2
    -0
      mallinkService/src/main/java/com/iformall/service/pay/PayServiceFactory.java
  13. +9
    -0
      mallinkService/src/main/java/com/iformall/service/pay/service/PayShareAdapterService.java

+ 8
- 0
mallinkAdmin/src/main/resources/db/migration/V202007311200__FOR_MEMBER_ONLY_001.sql View File

@@ -19,3 +19,11 @@ ADD COLUMN `login_count` int(11) DEFAULT 0 COMMENT '登陆次数' AFTER `active

update wx_c_user_basic_info wcubi set wcubi.login_count = (select wcu.login_count from wx_c_user wcu where wcu.id=wcubi.id);

ALTER TABLE `wx_coupon_order`
ADD COLUMN `pay_vendor` SMALLINT(3) DEFAULT NULL COMMENT '订单渠道,EnumPayWay.class';

UPDATE wx_coupon_order o INNER JOIN wx_pay_order po ON po.order_id = o.`id` SET o.pay_vendor = po.pay_vendor;

ALTER TABLE `wx_card_spend`
ADD COLUMN `remark` VARCHAR(30) DEFAULT NULL COMMENT '备注';


+ 14
- 11
mallinkBApi/src/main/java/com/iformall/controller/WxMicroPayController.java View File

@@ -69,27 +69,30 @@ public class WxMicroPayController extends BaseController {
//Assert.isTrue(!checkUnique(sysRole.getName(), null), "重复的角色名");
String authCode = paramMap.get("authCode");
String totalFeeStr = paramMap.get("totalFee");
return saveMicopayOrder(authCode, totalFeeStr, EnumPayWay.PAY_WAY_WECHAT_MA, request);
}

if (StringUtils.isBlank(authCode)) {
private ResultData saveMicopayOrder(String authCode,String totalFeeStr,EnumPayWay payWay,HttpServletRequest request) {
if (StringUtils.isBlank(authCode)) {
logger.error("authCode不能为空");
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "authCode不能为空");
}
if (StringUtils.isBlank(totalFeeStr)) {
logger.error("totalFee不能为空");
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "totalFee不能为空");
}
if (!checkAuthCode(authCode)) {
logger.error("authCode不符合规则");
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "authCode不符合规则");
}

String ipStr = IPUtil.getIpAddr(request);
if (StringUtils.isBlank(totalFeeStr)) {
logger.error("totalFee不能为空");
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "totalFee不能为空");
}
String ipStr = IPUtil.getIpAddr(request);

WxMerchantBUser user = getUser();

WxOrder order = null;
try {
order = wxOrderService.saveMicroPayOrder(user, totalFeeStr);
order = wxOrderService.saveMicroPayOrder(user, totalFeeStr,payWay);
} catch (MallinkException e) {
logger.error("saveMicopayOrder 1" + e.getMessage());
return new ResultData(e.getErrorCode(), e.getMessage());
@@ -104,9 +107,8 @@ public class WxMicroPayController extends BaseController {
record.setAuthCode(authCode);
record.setPayAmount(order.getPayment());
record.setIp(ipStr);

try {
return wxPayOrderService.createMicroPayOrder(user, record, EnumPayWay.PAY_WAY_WECHAT_MA, null);
return wxPayOrderService.createMicroPayOrder(user, record, payWay, null);
} catch (MallinkException e) {
logger.error("payment wechat, order create error, req 2: " + record.toString() + ", e:" + e.getMessage());
return new ResultData(e.getErrorCode(), e.getMessage());
@@ -115,7 +117,8 @@ public class WxMicroPayController extends BaseController {
return new ResultData(ErrorCode.PAY_ORDER_ERROR, e.getMessage());
}
}

@ApiOperation(value = "查询付款码支付订单", notes = "{\"payOrderId\":\"String\",\"orderId\":\"String\"}")
@PostMapping("order_query")
public ResultData queryMicopayOrder(@RequestBody Map<String, String> paramMap) {


+ 62
- 30
mallinkCApi/src/main/java/com/iformall/controller/WxCardPayController.java View File

@@ -1,30 +1,51 @@
package com.iformall.controller;


import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.github.pagehelper.PageInfo;
import com.iformall.common.ErrorCode;
import com.iformall.common.ResultData;
import com.iformall.domain.po.*;
import com.iformall.domain.po.WxCUser;
import com.iformall.domain.po.WxCUserBasicInfo;
import com.iformall.domain.po.WxCardInfo;
import com.iformall.domain.po.WxCardSpend;
import com.iformall.domain.po.WxCouponMerchant;
import com.iformall.domain.po.WxCouponOrder;
import com.iformall.domain.po.WxMerchant;
import com.iformall.domain.po.WxOrder;
import com.iformall.domain.vo.WxCardSpendVo;
import com.iformall.enums.EnumCreditLockedStatus;
import com.iformall.enums.EnumMerchantStatus;
import com.iformall.enums.EnumPayWay;
import com.iformall.exception.MallinkException;
import com.iformall.service.*;
import com.iformall.service.WxCUserBasicInfoService;
import com.iformall.service.WxCardInfoService;
import com.iformall.service.WxCardSpendService;
import com.iformall.service.WxCouponOrderService;
import com.iformall.service.WxMerchantService;
import com.iformall.service.WxOrderService;
import com.iformall.utils.Constant;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import javax.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
* @author Stormeye Wu wuguoqiang@iformall.com
@@ -53,27 +74,28 @@ public class WxCardPayController extends BaseController {
@Autowired
WxCUserBasicInfoService wxCUserBasicInfoService;

@ApiOperation(value = "C端扫B端储值卡支付订单", notes = "params:{\"cardId\":\"String\",\"merchantId\":\"String\",\"totalFee\":\"String(元)\"}")
@ApiOperation(value = "微信C端扫B端储值卡支付订单", notes = "params:{\"cardId\":\"String\",\"merchantId\":\"String\",\"totalFee\":\"String(元)\"}")
@PostMapping("order_create")
public ResultData saveCardPayOrder(@RequestBody Map<String, String> paramMap, HttpServletRequest request) {
String ipStr = getIpAddr();
logger.info("saveCardPayOrder: " + ipStr + " :" + paramMap.toString());

WxCUser user = getUser();
if (!user.isBasicInfo()) {
logger.error("暂未成为会员,请授权手机号");
return new ResultData(ErrorCode.USER_IS_NOT_MEMBER.getCode(), "暂未成为会员,请授权手机号");
}
WxCUserBasicInfo wxCUserBasicInfo = wxCUserBasicInfoService.getById(user.getUserId());
if (null != wxCUserBasicInfo && EnumCreditLockedStatus.CLOSE.getCode().equals(wxCUserBasicInfo.getStatus())) {
logger.error(ErrorCode.MEMBER_IS_LOCKED.getMessage());
return new ResultData(ErrorCode.MEMBER_IS_LOCKED);
}

String cardIdStr = paramMap.get("cardId");
String merchantStr = paramMap.get("merchantId");
String totalFeeStr = paramMap.get("totalFee");
return saveCardPayOrder(user.getUserId(),cardIdStr,merchantStr,totalFeeStr,EnumPayWay.PAY_WAY_WECHAT);
}

private ResultData saveCardPayOrder(Long cUserId,String cardIdStr,String merchantStr,String totalFeeStr,EnumPayWay payWay) {
String ipStr = getIpAddr();
logger.info("saveCardPayOrder: " + ipStr + " : cUserId:{} , cardIdStr:{},merchantStr:{},totalFeeStr:{}",cUserId,cardIdStr,cardIdStr,cardIdStr);
WxCUserBasicInfo wxCUserBasicInfo = wxCUserBasicInfoService.getById(cUserId);
if (null != wxCUserBasicInfo && EnumCreditLockedStatus.CLOSE.getCode().equals(wxCUserBasicInfo.getStatus())) {
logger.error(ErrorCode.MEMBER_IS_LOCKED.getMessage());
return new ResultData(ErrorCode.MEMBER_IS_LOCKED);
}
if (StringUtils.isBlank(cardIdStr) || cardIdStr.equalsIgnoreCase(Constant.UNDEFINED)) {
logger.error("cardId不能为空");
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "cardId不能为空");
@@ -119,7 +141,7 @@ public class WxCardPayController extends BaseController {

//查看所有者与扫码者是否为一致
WxCouponOrder couponOrder = wxCouponOrderService.getById(cardId);
if (!couponOrder.getOwnerId().equals(user.getUserId())) {
if (!couponOrder.getOwnerId().equals(cUserId)) {
logger.error("卡已被领取: " + cardIdStr);
return new ResultData(ErrorCode.CARD_TRANSFERED);
}
@@ -138,7 +160,7 @@ public class WxCardPayController extends BaseController {

WxOrder order = null;
try {
order = wxOrderService.saveCardPayOrder(merchant, user.getUserId(), totalFeeStr, payment);
order = wxOrderService.saveCardPayOrder(merchant, cUserId, totalFeeStr, payment,payWay);
} catch (MallinkException e) {
logger.error("saveCardPayOrder 1" + e.getMessage());
return new ResultData(e.getErrorCode(), e.getMessage());
@@ -150,11 +172,12 @@ public class WxCardPayController extends BaseController {
WxCardSpend record = new WxCardSpend();
record.updateTenantInfo(merchant);
record.setCardId(cardId);
record.setOwnerId(user.getUserId());
record.setOwnerId(cUserId);
record.setMerchantId(merchantId);
record.setOrderId(order.getId());
record.setIp(ipStr);
record.setDeductionAmount(payment);
record.setRemark("操作于["+payWay.getMessage()+"("+payWay.getCode()+")]");

try {
return wxCardSpendService.createCardSpend(record, order, couponMerchant);
@@ -166,7 +189,8 @@ public class WxCardPayController extends BaseController {
return new ResultData(ErrorCode.PAY_ORDER_ERROR, e.getMessage());
}
}

@ApiOperation("C端扫B端储值卡交易流水列表接口")
@GetMapping("list")
@ApiImplicitParams({
@@ -180,9 +204,13 @@ public class WxCardPayController extends BaseController {
logger.error("暂未成为会员,请授权手机号");
return new ResultData(ErrorCode.USER_IS_NOT_MEMBER.getCode(), "暂未成为会员,请授权手机号");
}
if (wxCardSpend == null) wxCardSpend = new WxCardSpendVo();
return cardSpendList(wxCardSpend,user.getUserId(), pageNum, pageSize);
}
private ResultData cardSpendList(WxCardSpendVo wxCardSpend,Long cUserId,Integer pageNum, Integer pageSize) {
if (wxCardSpend == null) wxCardSpend = new WxCardSpendVo();
wxCardSpend.updateTenantInfo(getTenantInfo());
wxCardSpend.setOwnerId(user.getUserId());
wxCardSpend.setOwnerId(cUserId);
final PageInfo<WxCardSpendVo> page = wxCardSpendService.listAsPage(wxCardSpend, pageNum, pageSize);
return new ResultData(page);
}
@@ -197,9 +225,13 @@ public class WxCardPayController extends BaseController {
logger.error("暂未成为会员,请授权手机号");
return new ResultData(ErrorCode.USER_IS_NOT_MEMBER.getCode(), "暂未成为会员,请授权手机号");
}
if (wxCardSpend == null) wxCardSpend = new WxCardSpendVo();
return sumCardSpendList(wxCardSpend, user.getUserId());
}
private ResultData sumCardSpendList(WxCardSpendVo wxCardSpend,Long cUserId) {
if (wxCardSpend == null) wxCardSpend = new WxCardSpendVo();
wxCardSpend.updateTenantInfo(getTenantInfo());
wxCardSpend.setOwnerId(user.getUserId());
wxCardSpend.setOwnerId(cUserId);
final List<Map<String, Object>> mapList = wxCardSpendService.sumCardSpendForOwner(wxCardSpend);
return new ResultData(mapList);
}


+ 3
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxCardSpend.java View File

@@ -61,6 +61,9 @@ public class WxCardSpend extends TenantEntity {

@io.swagger.annotations.ApiModelProperty(value="来源(0:C端小程序扫一扫, 1:POS支付)",name="payFrom")
private Integer payFrom;
@io.swagger.annotations.ApiModelProperty(value="说明",name="remark")
private String remark;

@TableField(exist = false)
@Excel(name = "消费金额(元)", width = 20, orderNum = "7")


+ 2
- 1
mallinkService/src/main/java/com/iformall/domain/po/WxCouponOrder.java View File

@@ -42,7 +42,8 @@ public class WxCouponOrder extends TenantEntity {
private Date updateDate;
@io.swagger.annotations.ApiModelProperty(value = "单券实际购买价格", name = "couponPrice")
private Integer couponPrice;

@io.swagger.annotations.ApiModelProperty(value = "支付渠道EnumPayWay", name = "pay_vendor")
private Integer payVendor;
@io.swagger.annotations.ApiModelProperty(value="过期退款(0:正常,1不退)",name="autoRefund")
private Integer autoRefund;



+ 1
- 1
mallinkService/src/main/java/com/iformall/mapper/WxPayOrderMapper.java View File

@@ -9,7 +9,7 @@ public interface WxPayOrderMapper extends CommonMapper<WxPayOrder, Long> {

List<WxPayOrder> findList(WxPayOrder wxPayOrder);

List<WxPayOrderVo> findListOfPaidOrderByDate(Map dateMap);
//List<WxPayOrderVo> findListOfPaidOrderByDate(Map dateMap);

List<WxPayOrder> findListForUnPs(WxPayOrder wxPayOrder);



+ 2
- 1
mallinkService/src/main/java/com/iformall/service/WxCouponOrderService.java View File

@@ -6,6 +6,7 @@ import com.iformall.common.ResultData;
import com.iformall.domain.po.*;
import com.iformall.domain.po.base.TenantEntity;
import com.iformall.domain.vo.*;
import com.iformall.enums.EnumPayWay;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -207,7 +208,7 @@ public interface WxCouponOrderService {

WxPayOrder microPayPreVerify(WxOrder microOrder, WxCouponOrder couponOrder, WxMerchantBUser bUser, Integer price);

Integer microPayVerify(WxMerchantBUser bUser, Long couponOrderId);
Integer microPayVerify(WxMerchantBUser bUser, Long couponOrderId,EnumPayWay payWay);

/**
* 尚安停车


+ 15
- 8
mallinkService/src/main/java/com/iformall/service/WxOrderService.java View File

@@ -1,20 +1,27 @@
package com.iformall.service;

import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.github.pagehelper.PageInfo;
import com.iformall.common.ResultData;
import com.iformall.domain.dto.OrderSaveDto;
import com.iformall.domain.po.*;
import com.iformall.domain.po.WxCUserBasicInfo;
import com.iformall.domain.po.WxCoupon;
import com.iformall.domain.po.WxCouponOrder;
import com.iformall.domain.po.WxMerchant;
import com.iformall.domain.po.WxMerchantBUser;
import com.iformall.domain.po.WxOrder;
import com.iformall.domain.po.base.TenantEntity;
import com.iformall.domain.vo.WxCouponSendVo;
import com.iformall.domain.vo.WxOrderCouponPressVo;
import com.iformall.domain.vo.WxOrderCouponVo;
import com.iformall.domain.vo.WxOrderQueryVo;
import com.iformall.enums.EnumOrderStatus;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
import com.iformall.enums.EnumPayWay;

public interface WxOrderService {

@@ -51,7 +58,7 @@ public interface WxOrderService {
* @param totalFeeStr
* @return 订单id
*/
WxOrder saveMicroPayOrder(WxMerchantBUser user, String totalFeeStr);
WxOrder saveMicroPayOrder(WxMerchantBUser user, String totalFeeStr,EnumPayWay payWay);

/**
* 付款码支付v2
@@ -70,7 +77,7 @@ public interface WxOrderService {
* @param payment
* @return 订单id
*/
WxOrder saveCardPayOrder(WxMerchant merchant, Long cUserId, String totalFeeStr, Integer payment);
WxOrder saveCardPayOrder(WxMerchant merchant, Long cUserId, String totalFeeStr, Integer payment,EnumPayWay payWay);

/**
* 免费券订单接口


+ 4
- 1
mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java View File

@@ -543,6 +543,8 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {
merchantSubsidy.setRealPayment(couponOrder.getCouponPrice());
merchantSubsidy.setSubsidy(couponOrder.getCouponPrice());
merchantSubsidy.setRealSubsidy(couponOrder.getCouponPrice());
couponOrder.getPayVendor();
11111111111
merchantSubsidy.setType(EnumMerchantSubsidyType.WECHAT.getCode());
merchantSubsidy.setCreateDate(curDate);
merchantSubsidy.setUpdateDate(curDate);
@@ -1387,12 +1389,13 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {

@Override
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
public Integer microPayVerify(WxMerchantBUser bUser, Long couponOrderId) {
public Integer microPayVerify(WxMerchantBUser bUser, Long couponOrderId,EnumPayWay payWay) {
WxCouponOrder updateCouponOrder = new WxCouponOrder();
updateCouponOrder.setId(couponOrderId);
updateCouponOrder.setBUserId(bUser.getId());
updateCouponOrder.setCouponOrderStatus(EnumCouponOrderStatus.COUPON_ORDER_USED.getCode());
updateCouponOrder.setUpdateDate(new Date());
updateCouponOrder.setPayVendor(payWay.getCode());
// 核销状态更新
int num = wxCouponOrderMapper.updateById(updateCouponOrder);
if (num == 1) {


+ 6
- 4
mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java View File

@@ -89,6 +89,7 @@ import com.iformall.enums.EnumOrderType;
import com.iformall.enums.EnumPayShare;
import com.iformall.enums.EnumPayStatus;
import com.iformall.enums.EnumPayType;
import com.iformall.enums.EnumPayWay;
import com.iformall.enums.EnumProfitSharingOrderType;
import com.iformall.enums.EnumScoreType;
import com.iformall.enums.EnumUserType;
@@ -821,7 +822,7 @@ public class WxOrderServiceImpl implements WxOrderService {

@Override
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
public WxOrder saveMicroPayOrder(WxMerchantBUser user, String totalFeeStr) {
public WxOrder saveMicroPayOrder(WxMerchantBUser user, String totalFeeStr,EnumPayWay payWay) {
// 检查用户
if (user == null) {
logger.error("用户不存在");
@@ -853,7 +854,7 @@ public class WxOrderServiceImpl implements WxOrderService {

// body
// tenant_id + merchant_id + title + subtitle
String bodyStr = "刷卡支付, 金额:" + totalFeeStr;
String bodyStr = "["+payWay.getMessage()+"("+payWay.getCode()+")]刷卡支付, 金额:" + totalFeeStr;

record.setId(orderNumber);
record.updateTenantInfo(user);
@@ -937,7 +938,7 @@ public class WxOrderServiceImpl implements WxOrderService {

@Override
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
public WxOrder saveCardPayOrder(WxMerchant merchant, Long cUserId, String totalFeeStr, Integer payment) {
public WxOrder saveCardPayOrder(WxMerchant merchant, Long cUserId, String totalFeeStr, Integer payment,EnumPayWay payWay) {
Date curr = new Date();

final IdWorker idWorker = IdWorker.get();
@@ -945,7 +946,7 @@ public class WxOrderServiceImpl implements WxOrderService {

// body
// tenant_id + merchant_id + title + subtitle
String bodyStr = "C扫B储值卡支付, 金额:" + totalFeeStr;
String bodyStr = "["+payWay.getMessage()+"("+payWay.getCode()+")]C扫B储值卡支付, 金额:" + totalFeeStr;

WxOrder record = new WxOrder();
record.setId(orderNumber);
@@ -1054,6 +1055,7 @@ public class WxOrderServiceImpl implements WxOrderService {
couponOrder.setAutoRefund(coupon.getAutoRefund());
couponOrder.setOrderId(order.getOrderNumber());
couponOrder.setExpiredTime(valid_date);
couponOrder.setPayVendor(payOrder.getPayVendor());
if (!isCard) {
couponOrder.setCouponOrderStatus(EnumCouponOrderStatus.COUPON_ORDER_USE_WAIT.getCode());
} else {


+ 8
- 7
mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java View File

@@ -50,7 +50,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService {
WxAppinfoMapper wxAppinfoMapper;

@Autowired
WxCUserMapper wxCUserMapper;
WxCUserBasicInfoMapper wxCUserBasicInfoMapper;

@Autowired
WxCUserService wxCUserService;
@@ -1119,8 +1119,8 @@ public class WxPayOrderServiceImpl implements WxPayOrderService {
// B端收银台核销券处理, 收银台支付和券支付可能不是同一个人
WxPayOrder payOrderQ = new WxPayOrder();
payOrderQ.setOrderId(order.getId());
payOrderQ.setPayFrom(EnumPayFrom.INSIDE_B.getCode());
payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_WAIT.getCode());
//payOrderQ.setPayFrom(EnumPayFrom.INSIDE_B.getCode());
//payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_WAIT.getCode());
try {
WxPayOrder unPayOrder = wxPayOrderMapper.selectOne(new QueryWrapper<>(payOrderQ));
if (unPayOrder != null) {
@@ -1128,6 +1128,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService {
try {
unPayOrder.setOrderId(order.getId());
unPayOrder.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode());
unPayOrder.setPayVendor(payWay.getCode());
wxPayOrderMapper.updateById(unPayOrder);
} catch (Exception e) {
logger.error("支付订单数据库更新失败: " + e.getMessage());
@@ -1135,12 +1136,12 @@ public class WxPayOrderServiceImpl implements WxPayOrderService {
}
if (unPayOrder.getPosPayOrderId() != null) {
try {
wxCouponOrderService.microPayVerify(user, unPayOrder.getPosPayOrderId());
wxCouponOrderService.microPayVerify(user, unPayOrder.getPosPayOrderId(),payWay);
} catch (Exception e) {
logger.error(e.getMessage());
}
// 更新后处理
wxCouponOrderService.sendInsideCouponVerifyMsg(unPayOrder, unPayOrder.getPosPayOrderId(), user.getId());
wxCouponOrderService.sendInsideCouponVerifyMsg(unPayOrder, unPayOrder.getPosPayOrderId(), user.getId(),payWay);
}
}
} catch (Exception e) {
@@ -1310,7 +1311,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService {
throw new MallinkException(ErrorCode.ORDER_IS_NOT_FIND);
}
if (order.getType().equals(EnumOrderType.COUPON.getCode())) {
WxCUser user = wxCUserMapper.selectById(order.getCUserId());
WxCUserBasicInfo user = wxCUserBasicInfoMapper.selectById(order.getCUserId());
if (user == null) {
logger.error("pay handle, order " + record.getOrderId() + " not found , payOrderid : " + record.getPayOrderNo());
throw new MallinkException(ErrorCode.USER_IS_EMPTY);
@@ -1404,7 +1405,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService {
throw new MallinkException(ErrorCode.ORDER_IS_NOT_FIND);
}
if (order.getType().equals(EnumOrderType.COUPON.getCode())) {
WxCUser user = wxCUserMapper.selectById(order.getCUserId());
WxCUserBasicInfo user = wxCUserBasicInfoMapper.selectById(order.getCUserId());
if (user == null) {
logger.error("pay handle, order " + record.getOrderId() + " not found , payOrderid : " + record.getPayOrderNo());
throw new MallinkException(ErrorCode.USER_IS_EMPTY);


+ 2
- 0
mallinkService/src/main/java/com/iformall/service/pay/PayServiceFactory.java View File

@@ -74,4 +74,6 @@ public class PayServiceFactory {
return serviceMap;
}
}

+ 9
- 0
mallinkService/src/main/java/com/iformall/service/pay/service/PayShareAdapterService.java View File

@@ -0,0 +1,9 @@
package com.iformall.service.pay.service;

/**
* 分账接口
* @author alascor
*/
public interface PayShareAdapterService {

}

Loading…
Cancel
Save