代表多种付款方式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了代表多种付款方式相关的知识,希望对你有一定的参考价值。

我有一种情况,客户可以通过信用卡或PayPal帐户付款。我目前有一个超级作为“客户”,有两个子类型的'公共'和'商业'。但是,这两种类型都可以通过任何一种付款方式支付,并且可以使用多个信用卡/ PayPal帐户。

我有一个当前的模型,但不是有多个卡等。我最终需要能够查询客户通过什么方法支付。例如,在一段时间内通过信用卡支付了多少客户。

减去付款细节的模型看起来类似于:

[订购] - - - - [客户] ---(d)--- [PUBLIC] [商业]

答案

在SQL中提取这种查询应该不是问题。如果您为付款帐户添加了表格,并且PAYPAL_ACCOUNT和CREDITCARD_ACCOUNT需要是两个单独的表格,您可以将这些表格与CUSTOMER和ORDER相关联,但不能与PUBLIC或COMMERCIAL相关联。

您可以在SQL中使用LEFT JOIN来显示不包含每个表的行。这将填充表中的字段为null,例如当它是来自PUBLIC帐户的订单并且您查看COMMERCIAL表时

SELECT * from ORDER o
INNER JOIN CUSTOMER c on c.ID = o.CustomerID
LEFT JOIN PUBLIC p on p.CustomerID = c.ID
LEFT JOIN COMMERCIAL co on co.CustomerID = c.ID
LEFT JOIN PAYPAL_ACCOUNT pa on pa.ID = o.PaypalAccountID
LEFT JOIN CREDITCARD_ACCOUNT cc on cc.ID = o.CreditCardAccountID

然后你可以在最后添加where子句来缩小范围

WHERE o.PaypalAccountID is not null

只拉起Paypal

以上是关于代表多种付款方式的主要内容,如果未能解决你的问题,请参考以下文章

WooCommerce - 同时使用多种付款方式支付订单

显示每个 id 的表格内容

分享几个实用的代码片段(第二弹)

分享几个实用的代码片段(第二弹)

FISAP 付款及清账

支付平台架构