CourseWorkElectronicsShop/ElectronicsShop/ElectronicsShopRestAPI/Controllers/EmployeeController.cs

59 lines
1.3 KiB
C#
Raw Normal View History

2024-05-27 14:57:41 +04:00
using ElectronicsShopContracts.BindingModels;
using ElectronicsShopContracts.BusinessLogicContracts;
using ElectronicsShopContracts.SearchModels;
using ElectronicsShopContracts.ViewModels;
using Microsoft.AspNetCore.Mvc;
namespace ElectronicsShopRestAPI.Controllers {
[Route("api/[controller]/[action]")]
[ApiController]
public class EmployeeController : Controller {
private readonly ILogger _logger;
private readonly IEmployeeLogic _logic;
public EmployeeController(ILogger<EmployeeController> logger, IEmployeeLogic logic) {
_logger = logger;
_logic = logic;
}
[HttpGet]
public EmployeeViewModel? Login(string login, string password) {
try {
2024-05-27 17:35:14 +04:00
return _logic.ReadElement(new EmployeeSearchModel {
2024-05-27 14:57:41 +04:00
Login = login,
Password = password
});
}
catch (Exception ex) {
_logger.LogError(ex, "Ошибка входа в систему");
throw;
}
}
[HttpPost]
public void Register(EmployeeBindingModel model) {
try {
_logic.Create(model);
}
catch (Exception ex) {
_logger.LogError(ex, "Ошибка регистрации");
throw;
}
}
[HttpPost]
public void UpdateData(EmployeeBindingModel model) {
try {
_logic.Update(model);
}
catch (Exception ex) {
_logger.LogError(ex, "Ошибка обновления данных");
throw;
}
}
}
}