From 5ce425651d6dfb9ca22525713184a0caca8a2ca2 Mon Sep 17 00:00:00 2001 From: abazov73 <92822431+abazov73@users.noreply.github.com> Date: Fri, 7 Apr 2023 14:51:49 +0400 Subject: [PATCH] =?UTF-8?q?=D0=9A=D0=BE=D0=BD=D1=82=D1=80=D0=BE=D0=BB?= =?UTF-8?q?=D0=BB=D0=B5=D1=80=D1=8B=20=D0=B4=D0=BB=D1=8F=20=D1=80=D0=BE?= =?UTF-8?q?=D0=BB=D0=B8=20=D0=97=D0=B0=D0=BA=D0=B0=D0=B7=D1=87=D0=B8=D0=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BankRestApi/Controllers/DealController.cs | 14 ++- .../Controllers/OperatorController.cs | 63 +++++++++++++ .../Controllers/PaymentController.cs | 89 ++++++++++++++++++ .../Controllers/TransferController.cs | 90 +++++++++++++++++++ 4 files changed, 255 insertions(+), 1 deletion(-) create mode 100644 Bank/BankRestApi/Controllers/OperatorController.cs create mode 100644 Bank/BankRestApi/Controllers/PaymentController.cs create mode 100644 Bank/BankRestApi/Controllers/TransferController.cs diff --git a/Bank/BankRestApi/Controllers/DealController.cs b/Bank/BankRestApi/Controllers/DealController.cs index ce48bc5..cd98986 100644 --- a/Bank/BankRestApi/Controllers/DealController.cs +++ b/Bank/BankRestApi/Controllers/DealController.cs @@ -18,7 +18,19 @@ namespace BankRestApi.Controllers _logger = logger; _deal = deal; } - + [HttpGet] + public List? GetDealsList() + { + try + { + return _deal.ReadList(null); + } + catch (Exception ex) + { + _logger.LogError(ex, "Ошибка получения списка сделок"); + throw; + } + } [HttpGet] public List? GetDeals(int operatorId) { diff --git a/Bank/BankRestApi/Controllers/OperatorController.cs b/Bank/BankRestApi/Controllers/OperatorController.cs new file mode 100644 index 0000000..7999bb9 --- /dev/null +++ b/Bank/BankRestApi/Controllers/OperatorController.cs @@ -0,0 +1,63 @@ +using BankContracts.BindingModels; +using BankContracts.BusinessLogicsContracts; +using BankContracts.SearchModels; +using BankContracts.ViewModels; +using Microsoft.AspNetCore.Mvc; + +namespace BankRestApi.Controllers +{ + [Route("api/[controller]/[action]")] + [ApiController] + public class OperatorController : Controller + { + private readonly ILogger _logger; + private readonly IOperatorLogic _operator; + + public OperatorController(ILogger logger, IOperatorLogic operatorC) + { + _logger = logger; + _operator = operatorC; + } + + [HttpPost] + public void CreateOperator(OperatorBindingModel model) + { + try + { + _operator.Create(model); + } + catch (Exception ex) + { + _logger.LogError(ex, "Ошибка создания зачисления"); + throw; + } + } + + [HttpPatch] + public void UpdateOperator(OperatorBindingModel model) + { + try + { + _operator.Update(model); + } + catch (Exception ex) + { + _logger.LogError(ex, "Ошибка обновления зачисления"); + throw; + } + } + [HttpDelete] + public void DeleteOperator(OperatorBindingModel model) + { + try + { + _operator.Delete(model); + } + catch (Exception ex) + { + _logger.LogError(ex, "Ошибка удаления зачисления"); + throw; + } + } + } +} diff --git a/Bank/BankRestApi/Controllers/PaymentController.cs b/Bank/BankRestApi/Controllers/PaymentController.cs new file mode 100644 index 0000000..3afbf5a --- /dev/null +++ b/Bank/BankRestApi/Controllers/PaymentController.cs @@ -0,0 +1,89 @@ +using BankContracts.BindingModels; +using BankContracts.BusinessLogicsContracts; +using BankContracts.SearchModels; +using BankContracts.ViewModels; +using Microsoft.AspNetCore.Mvc; + +namespace BankRestApi.Controllers +{ + [Route("api/[controller]/[action]")] + [ApiController] + public class PaymentController : Controller + { + private readonly ILogger _logger; + private readonly IPaymentLogic _payment; + + public PaymentController(ILogger logger, IPaymentLogic payment) + { + _logger = logger; + _payment = payment; + } + [HttpGet] + public List? GetPaymentsList() + { + try + { + return _payment.ReadList(null); + } + catch (Exception ex) + { + _logger.LogError(ex, "Ошибка получения списка выплат"); + throw; + } + } + [HttpGet] + public List? GetPayments(int operatorId) + { + try + { + return _payment.ReadList(new PaymentSearchModel { OperatorId = operatorId }); + } + catch (Exception ex) + { + _logger.LogError(ex, "Ошибка получения списка выплат оператора id={Id}", operatorId); + throw; + } + } + + [HttpPost] + public void CreatePayment(PaymentBindingModel model) + { + try + { + _payment.Create(model); + } + catch (Exception ex) + { + _logger.LogError(ex, "Ошибка создания платежа"); + throw; + } + } + + [HttpPatch] + public void UpdatePayment(PaymentBindingModel model) + { + try + { + _payment.Update(model); + } + catch (Exception ex) + { + _logger.LogError(ex, "Ошибка обновления платежа"); + throw; + } + } + [HttpDelete] + public void DeletePayment(PaymentBindingModel model) + { + try + { + _payment.Delete(model); + } + catch (Exception ex) + { + _logger.LogError(ex, "Ошибка удаления платежа"); + throw; + } + } + } +} diff --git a/Bank/BankRestApi/Controllers/TransferController.cs b/Bank/BankRestApi/Controllers/TransferController.cs new file mode 100644 index 0000000..a538f44 --- /dev/null +++ b/Bank/BankRestApi/Controllers/TransferController.cs @@ -0,0 +1,90 @@ +using BankContracts.BindingModels; +using BankContracts.BusinessLogicsContracts; +using BankContracts.SearchModels; +using BankContracts.ViewModels; +using Microsoft.AspNetCore.Mvc; + +namespace BankRestApi.Controllers +{ + [Route("api/[controller]/[action]")] + [ApiController] + public class TransferController : Controller + { + private readonly ILogger _logger; + private readonly ITransferLogic _transfer; + + public TransferController(ILogger logger, ITransferLogic transfer) + { + _logger = logger; + _transfer = transfer; + } + [HttpGet] + public List? GetTransfersList() + { + try + { + return _transfer.ReadList(null); + } + catch (Exception ex) + { + _logger.LogError(ex, "Ошибка получения списка зачислений"); + throw; + } + } + + [HttpGet] + public List? GetTransfers(int operatorId) + { + try + { + return _transfer.ReadList(new TransferSearchModel { OperatorId = operatorId }); + } + catch (Exception ex) + { + _logger.LogError(ex, "Ошибка получения списка зачислений оператора id={Id}", operatorId); + throw; + } + } + + [HttpPost] + public void CreateTransfer(TransferBindingModel model) + { + try + { + _transfer.Create(model); + } + catch (Exception ex) + { + _logger.LogError(ex, "Ошибка создания зачисления"); + throw; + } + } + + [HttpPatch] + public void UpdateTransfer(TransferBindingModel model) + { + try + { + _transfer.Update(model); + } + catch (Exception ex) + { + _logger.LogError(ex, "Ошибка обновления зачисления"); + throw; + } + } + [HttpDelete] + public void DeleteTransfer(TransferBindingModel model) + { + try + { + _transfer.Delete(model); + } + catch (Exception ex) + { + _logger.LogError(ex, "Ошибка удаления зачисления"); + throw; + } + } + } +}