Merge branch 'main' of http://student.git.athene.tech/shadowik/CourseWork_BankYouBankrupt
This commit is contained in:
commit
4692ba437f
@ -21,7 +21,8 @@ namespace BankYouBankruptBusinessLogic.BusinessLogics
|
|||||||
|
|
||||||
private readonly IDebitingStorage _debitingStorage;
|
private readonly IDebitingStorage _debitingStorage;
|
||||||
|
|
||||||
public CashWithdrawalLogic(ILogger<CashWithdrawalLogic> logger, ICashWithdrawalStorage cashWithdrawalStorage, IDebitingStorage debitingStorage)
|
public CashWithdrawalLogic(ILogger<CashWithdrawalLogic> logger, ICashWithdrawalStorage cashWithdrawalStorage,
|
||||||
|
IDebitingStorage debitingStorage)
|
||||||
{
|
{
|
||||||
_logger = logger;
|
_logger = logger;
|
||||||
_cashWithdrawalStorage = cashWithdrawalStorage;
|
_cashWithdrawalStorage = cashWithdrawalStorage;
|
||||||
|
@ -9,6 +9,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using BankYouBankruptContracts.ViewModels.Client.Default;
|
using BankYouBankruptContracts.ViewModels.Client.Default;
|
||||||
|
using BankYouBankruptDataModels.Enums;
|
||||||
|
|
||||||
namespace BankYouBankruptBusinessLogic.BusinessLogics
|
namespace BankYouBankruptBusinessLogic.BusinessLogics
|
||||||
{
|
{
|
||||||
@ -16,16 +17,27 @@ namespace BankYouBankruptBusinessLogic.BusinessLogics
|
|||||||
{
|
{
|
||||||
private readonly ILogger _logger;
|
private readonly ILogger _logger;
|
||||||
private readonly ICreditingStorage _creditingStorage;
|
private readonly ICreditingStorage _creditingStorage;
|
||||||
|
private readonly ICardStorage _cardStorage;
|
||||||
|
|
||||||
public CreditingLogic(ILogger<CreditingLogic> logger, ICreditingStorage creditingStorage) {
|
public CreditingLogic(ILogger<CreditingLogic> logger, ICreditingStorage creditingStorage, ICardStorage cardStorage) {
|
||||||
_logger = logger;
|
_logger = logger;
|
||||||
_creditingStorage = creditingStorage;
|
_creditingStorage = creditingStorage;
|
||||||
|
_cardStorage = cardStorage;
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool Create(CreditingBindingModel model)
|
public bool Create(CreditingBindingModel model)
|
||||||
{
|
{
|
||||||
CheckModel(model);
|
CheckModel(model);
|
||||||
|
|
||||||
|
if (!CheckCardPeriod(model))
|
||||||
|
{
|
||||||
|
model.Status = StatusEnum.Карта_просрочена;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
model.Status = StatusEnum.Открыта;
|
||||||
|
}
|
||||||
|
|
||||||
if (_creditingStorage.Insert(model) == null)
|
if (_creditingStorage.Insert(model) == null)
|
||||||
{
|
{
|
||||||
_logger.LogWarning("Insert operation failed");
|
_logger.LogWarning("Insert operation failed");
|
||||||
@ -111,5 +123,22 @@ namespace BankYouBankruptBusinessLogic.BusinessLogics
|
|||||||
_logger.LogInformation("Crediting. Sum:{Sum}.CardId:{CardId}.Date:{date}.Id:{Id}",
|
_logger.LogInformation("Crediting. Sum:{Sum}.CardId:{CardId}.Date:{date}.Id:{Id}",
|
||||||
model.Sum, model.CardId, model.DateOpen.ToString(), model.Id);
|
model.Sum, model.CardId, model.DateOpen.ToString(), model.Id);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
//проверка карты на просроченность
|
||||||
|
bool CheckCardPeriod(CreditingBindingModel model)
|
||||||
|
{
|
||||||
|
var card = _cardStorage.GetElement(new CardSearchModel
|
||||||
|
{
|
||||||
|
Id = model.CardId
|
||||||
|
});
|
||||||
|
|
||||||
|
//если карта просрочена
|
||||||
|
if (card.Period < DateTime.Now)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -9,27 +9,43 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using BankYouBankruptContracts.ViewModels.Client.Default;
|
using BankYouBankruptContracts.ViewModels.Client.Default;
|
||||||
|
using BankYouBankruptDataModels.Enums;
|
||||||
|
|
||||||
namespace BankYouBankruptBusinessLogic.BusinessLogics
|
namespace BankYouBankruptBusinessLogic.BusinessLogics
|
||||||
{
|
{
|
||||||
public class DebitingLogic : IDebitingLogic
|
public class DebitingLogic : IDebitingLogic
|
||||||
{
|
{
|
||||||
private readonly ILogger _logger;
|
private readonly ILogger _logger;
|
||||||
|
|
||||||
private readonly IDebitingStorage _debitingStorage;
|
private readonly IDebitingStorage _debitingStorage;
|
||||||
|
|
||||||
public DebitingLogic(ILogger<DebitingLogic> logger, IDebitingStorage debitingStorage) {
|
private readonly ICardStorage _cardStorage;
|
||||||
|
|
||||||
|
public DebitingLogic(ILogger<DebitingLogic> logger, IDebitingStorage debitingStorage, ICardStorage cardStorage) {
|
||||||
_logger = logger;
|
_logger = logger;
|
||||||
_debitingStorage = debitingStorage;
|
_debitingStorage = debitingStorage;
|
||||||
|
_cardStorage = cardStorage;
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool Create(DebitingBindingModel model)
|
public bool Create(DebitingBindingModel model)
|
||||||
{
|
{
|
||||||
CheckModel(model);
|
CheckModel(model);
|
||||||
if (_debitingStorage.Insert(model) == null)
|
|
||||||
|
if (!CheckCardPeriod(model))
|
||||||
|
{
|
||||||
|
model.Status = StatusEnum.Карта_просрочена;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
model.Status = StatusEnum.Открыта;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (_debitingStorage.Insert(model) == null)
|
||||||
{
|
{
|
||||||
_logger.LogWarning("Insert operation failed");
|
_logger.LogWarning("Insert operation failed");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -111,5 +127,22 @@ namespace BankYouBankruptBusinessLogic.BusinessLogics
|
|||||||
_logger.LogInformation("Debiting. Sum:{Sum}.CardId:{CardId}.DateOpen:{DateOpen}.DateOpen:{DateOpen}.Id:{Id}",
|
_logger.LogInformation("Debiting. Sum:{Sum}.CardId:{CardId}.DateOpen:{DateOpen}.DateOpen:{DateOpen}.Id:{Id}",
|
||||||
model.Sum, model.CardId, model.DateOpen.ToString(), model.DateClose.ToString(), model.Id);
|
model.Sum, model.CardId, model.DateOpen.ToString(), model.DateClose.ToString(), model.Id);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
//проверка карты на просроченность
|
||||||
|
bool CheckCardPeriod(DebitingBindingModel model)
|
||||||
|
{
|
||||||
|
var card = _cardStorage.GetElement(new CardSearchModel
|
||||||
|
{
|
||||||
|
Id = model.CardId
|
||||||
|
});
|
||||||
|
|
||||||
|
//если карта просрочена
|
||||||
|
if (card.Period < DateTime.Now)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -14,7 +14,6 @@ using System.Collections;
|
|||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Xml.Linq;
|
using System.Xml.Linq;
|
||||||
using static System.Net.Mime.MediaTypeNames;
|
|
||||||
|
|
||||||
namespace BankYouBankruptClientApp.Controllers
|
namespace BankYouBankruptClientApp.Controllers
|
||||||
{
|
{
|
||||||
@ -507,9 +506,11 @@ namespace BankYouBankruptClientApp.Controllers
|
|||||||
Operations = result,
|
Operations = result,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
[HttpGet]
|
#region Диаграмма
|
||||||
|
|
||||||
|
[HttpGet]
|
||||||
public IActionResult Diagram() {
|
public IActionResult Diagram() {
|
||||||
if (APIClient.Client == null)
|
if (APIClient.Client == null)
|
||||||
{
|
{
|
||||||
@ -537,5 +538,7 @@ namespace BankYouBankruptClientApp.Controllers
|
|||||||
Elements = APIClient.GetRequest<List<ClientDiagramElementsViewModel>>($"api/Card/getCardMonthResult?cardId={cardId}")
|
Elements = APIClient.GetRequest<List<ClientDiagramElementsViewModel>>($"api/Card/getCardMonthResult?cardId={cardId}")
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
}
|
}
|
@ -1,4 +1,5 @@
|
|||||||
@using BankYouBankruptContracts.ViewModels.Client.Default
|
@using BankYouBankruptContracts.ViewModels.Client.Default
|
||||||
|
@using BankYouBankruptDataModels.Enums;
|
||||||
|
|
||||||
@model List<CreditingViewModel>
|
@model List<CreditingViewModel>
|
||||||
|
|
||||||
@ -51,7 +52,7 @@
|
|||||||
@Html.DisplayFor(modelItem => item.Sum)
|
@Html.DisplayFor(modelItem => item.Sum)
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
@Html.DisplayFor(modelItem => item.Status)
|
@item.Status.ToString().Replace("_", " ")
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
@Html.DisplayFor(modelItem => item.DateOpen)
|
@Html.DisplayFor(modelItem => item.DateOpen)
|
||||||
|
@ -51,7 +51,7 @@
|
|||||||
@Html.DisplayFor(modelItem => item.Sum)
|
@Html.DisplayFor(modelItem => item.Sum)
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
@Html.DisplayFor(modelItem => item.Status)
|
@item.Status.ToString().Replace("_", " ")
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
@Html.DisplayFor(modelItem => item.DateOpen)
|
@Html.DisplayFor(modelItem => item.DateOpen)
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
@using BankYouBankruptContracts.ViewModels.Client.Reports;
|
@using BankYouBankruptContracts.ViewModels.Client.Reports;
|
||||||
|
@using Microsoft.JSInterop;
|
||||||
|
@inject IJSRuntime JS
|
||||||
|
|
||||||
@model ReportClientCardsViewModel
|
@model ReportClientCardsViewModel
|
||||||
|
|
||||||
|
@ -12,6 +12,8 @@ namespace BankYouBankruptDataModels.Enums
|
|||||||
|
|
||||||
Закрыта = 1,
|
Закрыта = 1,
|
||||||
|
|
||||||
Отклонено = 2
|
Отклонено = 2,
|
||||||
|
|
||||||
|
Карта_просрочена = 3
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -56,7 +56,8 @@ namespace BankYouBankruptDatabaseImplement.Models
|
|||||||
CardId = model.CardId,
|
CardId = model.CardId,
|
||||||
Card = context.Cards.First(x => x.Id == model.CardId),
|
Card = context.Cards.First(x => x.Id == model.CardId),
|
||||||
Sum = model.Sum,
|
Sum = model.Sum,
|
||||||
DateOpen = model.DateOpen
|
DateOpen = model.DateOpen,
|
||||||
|
Status = model.Status
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -51,7 +51,7 @@ namespace BankYouBankruptDatabaseImplement.Models
|
|||||||
Card = context.Cards.First(x => x.Id == model.CardId),
|
Card = context.Cards.First(x => x.Id == model.CardId),
|
||||||
Sum = model.Sum,
|
Sum = model.Sum,
|
||||||
DateOpen = model.DateOpen,
|
DateOpen = model.DateOpen,
|
||||||
Status = StatusEnum.Открыта
|
Status = model.Status
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -48,7 +48,6 @@ namespace BankYouBankruptRestApi.Controllers
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
[HttpGet]
|
[HttpGet]
|
||||||
public List<CardViewModel>? GetUsersCardsList(int id)
|
public List<CardViewModel>? GetUsersCardsList(int id)
|
||||||
{
|
{
|
||||||
|
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user