EasyAbp/PaymentService

PaymentApprovedEventEto should be published before paying

Closed this issue · 1 comments

Relate to: EasyAbp/EShop#40
This measure was added to reduce invalid payments.

  • Set Payment.ApprovedTime by handling the PaymentApprovedEventEto event.
  • Check the Payment.ApprovedTime is not null in IPaymentServiceProvider.PayAsync().
  • Check the Payment.ApprovedTime is not null before other modules sync the Payment entity data.

This design is too complex, considering to design timing unused payment cleaner plugin and payment request frequency limiter plugin.