SpendPolicy.cs 903 B

1234567891011121314151617181920212223242526272829
  1. using Domain.Entities.Wallets.ValueObject;
  2. ///<summary>
  3. /// 어떤 잔액부터 소진할지 정의
  4. ///</summary>
  5. namespace Domain.Entities.Wallets.Policy;
  6. public static class SpendPolicy
  7. {
  8. public static readonly WalletBalanceType[] DefaultSpendOrder =
  9. {
  10. WalletBalanceType.PgCharged,
  11. WalletBalanceType.Deposit,
  12. WalletBalanceType.Reward,
  13. WalletBalanceType.Adjusted,
  14. WalletBalanceType.Donation,
  15. WalletBalanceType.Airdrop
  16. };
  17. // 상점 결제 전용 차감 순서. 비활성 잔액 유형(원장 호환용)과 Locked 는 사용 불가.
  18. public static readonly WalletBalanceType[] StoreOrderSpendOrder =
  19. {
  20. WalletBalanceType.PgCharged, // 1
  21. WalletBalanceType.Deposit, // 2
  22. WalletBalanceType.Reward, // 4
  23. WalletBalanceType.Airdrop, // 5
  24. WalletBalanceType.Adjusted // 7
  25. };
  26. }