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; + } + } + } +}