- BTCPay Server integration - TeleBot Telegram bot - Review system - Admin area - Docker deployment configuration 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
42 lines
1.1 KiB
C#
42 lines
1.1 KiB
C#
using System.ComponentModel.DataAnnotations;
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
using LittleShop.Enums;
|
|
|
|
namespace LittleShop.Models;
|
|
|
|
public class CryptoPayment
|
|
{
|
|
[Key]
|
|
public Guid Id { get; set; }
|
|
|
|
public Guid OrderId { get; set; }
|
|
|
|
public CryptoCurrency Currency { get; set; }
|
|
|
|
[Required]
|
|
[StringLength(500)]
|
|
public string WalletAddress { get; set; } = string.Empty;
|
|
|
|
[Column(TypeName = "decimal(18,8)")]
|
|
public decimal RequiredAmount { get; set; }
|
|
|
|
[Column(TypeName = "decimal(18,8)")]
|
|
public decimal PaidAmount { get; set; } = 0;
|
|
|
|
public PaymentStatus Status { get; set; } = PaymentStatus.Pending;
|
|
|
|
[StringLength(200)]
|
|
public string? BTCPayInvoiceId { get; set; }
|
|
|
|
[StringLength(200)]
|
|
public string? TransactionHash { get; set; }
|
|
|
|
public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
|
|
|
|
public DateTime? PaidAt { get; set; }
|
|
|
|
public DateTime ExpiresAt { get; set; }
|
|
|
|
// Navigation properties
|
|
public virtual Order Order { get; set; } = null!;
|
|
} |