Files
Caspian.WorkflowFramework/SampleWorkflowWeb/Services/CardService.cs
T
2025-07-02 16:25:46 +03:30

89 lines
3.2 KiB
C#

using Microsoft.AspNetCore.Cors.Infrastructure;
using Microsoft.AspNetCore.Mvc.Rendering;
using System;
using SampleWorkflowWeb.Models;
namespace SampleWorkflowWeb.Services
{
public class CardService : ICardService
{
#region Fields
private List<CardModel> _cards;
#endregion
#region Ctor
public CardService()
{
_cards = new List<CardModel>();
_cards.Add(new CardModel() { Id = 1, PAN = "6221-0612-2862-5721", BankName = "پارسیان", FullName = "بهزاد علیزاده" });
_cards.Add(new CardModel() { Id = 2, PAN = "6221-0612-2577-8317", BankName = "پارسیان", FullName = "بهزاد علیزاده" });
_cards.Add(new CardModel() { Id = 3, PAN = "6037-6915-6533-2053", BankName = "صادرات", FullName = "ذکربا تاجمیری" });
_cards.Add(new CardModel() { Id = 4, PAN = "6037-6915-6533-2053", BankName = "ملی", FullName = "مصطفی حسنی کلشتری" });
_cards.Add(new CardModel() { Id = 5, PAN = "6219-8619-9535-2407", BankName = "سامان", FullName = "علی محمدی" });
_cards.Add(new CardModel() { Id = 6, PAN = "5022-2910-9783-9243", BankName = "پاسارگاد", FullName = "اکبر وفایی مزید" });
_cards.Add(new CardModel() { Id = 7, PAN = "6037-6916-2463-8961", BankName = "صادرات", FullName = "رضا پازوکی" });
_cards.Add(new CardModel() { Id = 8, PAN = "5892-1016-2042-8678", BankName = "سپه", FullName = "حسن بهرامی" });
}
#endregion
#region GetSourceCardsService
public SelectList GetSourceCardsService()
{
var myCards = _cards
.Select(x => new { Id = x.Id, Title = $"{x.PAN}" })
.Take(2);
return new SelectList(myCards, "Id", "Title");
}
#endregion
#region GetDestinationCardsService
public SelectList GetDestinationCardsService()
{
var cards = _cards
.Select(x => new { Id = x.Id, Title = $"{x.PAN}" })
.Skip(2);
return new SelectList(cards, "Id", "Title");
}
#endregion
#region GetCardService
public CardModel? GetCardService(int id)
{
var card = _cards
.FirstOrDefault(x => x.Id == id);
return card;
}
#endregion
#region GetCardOwnerService
public string? GetCardOwnerService(int id)
{
var fullName = _cards
.FirstOrDefault(x => x.Id == id)?
.FullName;
return fullName;
}
#endregion
#region TransferAsync
public async Task<bool> TransferAsync(string sourcePan, string destinationPan, long? amount)
{
return true;
}
#endregion
}
public interface ICardService
{
SelectList GetSourceCardsService();
SelectList GetDestinationCardsService();
CardModel? GetCardService(int id);
string? GetCardOwnerService(int id);
Task<bool> TransferAsync(string sourcePan, string destinationPan, long? amount);
}
}