Add webhook support for card transactions and notifications.
Java CI / build (push) Successful in 50s
.NET+Docker CI/CD / Unit and Integration tests (push) Successful in 33s
.NET+Docker CI/CD / Push Docker image to ghcr.io (push) Failing after 30s

Some optimizations and fixes

Signed-off-by: Dmitrii <computer@yawaflua.tech>

Took 2 hours 4 minutes
This commit is contained in:
Dmitrii
2026-07-12 06:27:28 +03:00
parent 0e53d7dd8c
commit f19a5d3586
37 changed files with 1155 additions and 950 deletions
@@ -9,6 +9,8 @@ public class Card
public string Name { get; set; }
public string SpworldsID { get; set; }
public string Token { get; set; }
public string ShortId { get; set; } = "";
public bool WebhookConnected { get; set; } = false;
public int Balance { get; set; } = 0;
@@ -1,3 +1,4 @@
using System.ComponentModel.DataAnnotations;
using SpMega.Backend.Persistent.Models.Transactions;
namespace SpMega.Backend.Persistent.Models.Users;
@@ -5,8 +6,10 @@ namespace SpMega.Backend.Persistent.Models.Users;
public class User
{
public Guid Id { get; set; }
public string Username { get; set; }
public string Token { get; set; }
[MaxLength(2048)] public string Username { get; set; }
[MaxLength(2048)] public string Token { get; set; }
[MaxLength(2048)] public string? ShortId { get; set; }
public List<Card> Cards { get; set; } = [];
public List<Transaction> Transactions { get; set; } = [];
@@ -1,12 +1,14 @@
using System.ComponentModel.DataAnnotations;
namespace SpMega.Backend.Persistent.Models.Users;
public class UserSession
{
public Guid Id { get; set; }
public string Token { get; set; }
[MaxLength(2048)] public string Token { get; set; }
public User? User { get; set; } = null;
public Guid UserId { get; set; }
public string UserName { get; set; }
[MaxLength(2048)] public string UserName { get; set; }
public DateTime CreatedAt { get; init; } = DateTime.UtcNow;
public DateTime UpdatedAt { get; set; }