Merge branch 'master' of git.reim.ar:ReiMerc/temperature-alarm

This commit is contained in:
Jeas0001 2025-04-08 11:22:11 +02:00
commit 0d77807d56
10 changed files with 28 additions and 31 deletions

View File

@ -31,7 +31,7 @@ namespace Api.AMQP
string message = JsonSerializer.Serialize(deviceLimit); string message = JsonSerializer.Serialize(deviceLimit);
var body = Encoding.UTF8.GetBytes(message); var body = Encoding.UTF8.GetBytes(message);
await _channel.BasicPublishAsync(exchange: string.Empty, routingKey: _queue, body: body); await _channel.BasicPublishAsync(exchange: _queue, routingKey: _queue, body: body);
// Short delay before disconnecting from rabbitMQ // Short delay before disconnecting from rabbitMQ

View File

@ -92,7 +92,7 @@ namespace Api.BusinessLogic
/// <param name="device">The updated info</param> /// <param name="device">The updated info</param>
/// <param name="deviceId">The device to be edited</param> /// <param name="deviceId">The device to be edited</param>
/// <returns>returns the updated device in a OkObjectResult and if there is some error it returns a ConflictObjectResult and a message that explain the reason</returns> /// <returns>returns the updated device in a OkObjectResult and if there is some error it returns a ConflictObjectResult and a message that explain the reason</returns>
public async Task<IActionResult> EditDevice(EditDeviceRequest request, int deviceId) public async Task<IActionResult> EditDevice(UpdateDeviceRequest request, int deviceId)
{ {
var device = await _dbAccess.ReadDevice(deviceId); var device = await _dbAccess.ReadDevice(deviceId);
if (device != null) if (device != null)
@ -111,7 +111,7 @@ namespace Api.BusinessLogic
publisher.Handle_Push_Device_Limits(deviceLimit); publisher.Handle_Push_Device_Limits(deviceLimit);
} }
return await _dbAccess.EditDevice(device); return await _dbAccess.UpdateDevice(device);
} }
/// <summary> /// <summary>

View File

@ -118,7 +118,7 @@ namespace Api.BusinessLogic
/// <param name="user">Contains the updated user info</param> /// <param name="user">Contains the updated user info</param>
/// <param name="userId">Has the id for the user that is to be updated</param> /// <param name="userId">Has the id for the user that is to be updated</param>
/// <returns>returns the updated user in a OkObjectResult and if there is some error it returns a ConflictObjectResult and a message that explain the reason</returns> /// <returns>returns the updated user in a OkObjectResult and if there is some error it returns a ConflictObjectResult and a message that explain the reason</returns>
public async Task<IActionResult> EditProfile(EditUserRequest userRequest, int userId) public async Task<IActionResult> EditProfile(UpdateUserRequest userRequest, int userId)
{ {
var profile = await _dbAccess.ReadUser(userId); var profile = await _dbAccess.ReadUser(userId);
var users = await _dbAccess.ReadAllUsers(); var users = await _dbAccess.ReadAllUsers();
@ -173,7 +173,7 @@ namespace Api.BusinessLogic
string hashedNewPassword = ComputeHash(passwordRequest.NewPassword, SHA256.Create(), user.Salt); string hashedNewPassword = ComputeHash(passwordRequest.NewPassword, SHA256.Create(), user.Salt);
user.Password = hashedNewPassword; user.Password = hashedNewPassword;
return await _dbAccess.updatePassword(user); return await _dbAccess.UpdatePassword(user);
} }
/// <summary> /// <summary>

View File

@ -24,7 +24,7 @@ namespace Api.Controllers
// Sends the userId to deviceLogic // Sends the userId to deviceLogic
[Authorize] [Authorize]
[HttpGet] [HttpGet]
public async Task<IActionResult> GetDevices() public async Task<IActionResult> ReadDevices()
{ {
var claims = HttpContext.User.Claims; var claims = HttpContext.User.Claims;
string userIdString = claims.FirstOrDefault(c => c.Type == ClaimTypes.NameIdentifier).Value; string userIdString = claims.FirstOrDefault(c => c.Type == ClaimTypes.NameIdentifier).Value;
@ -34,8 +34,8 @@ namespace Api.Controllers
// Sends the device and userId to deviceLogic // Sends the device and userId to deviceLogic
[Authorize] [Authorize]
[HttpPost("adddevice/{referenceId}")] [HttpPost("add/{referenceId}")]
public async Task<IActionResult> AddDevice(string referenceId) public async Task<IActionResult> CreateDevice(string referenceId)
{ {
var claims = HttpContext.User.Claims; var claims = HttpContext.User.Claims;
string userIdString = claims.FirstOrDefault(c => c.Type == ClaimTypes.NameIdentifier).Value; string userIdString = claims.FirstOrDefault(c => c.Type == ClaimTypes.NameIdentifier).Value;
@ -46,7 +46,7 @@ namespace Api.Controllers
// Sends the deviceId to deviceLogic // Sends the deviceId to deviceLogic
[Authorize] [Authorize]
[HttpGet("logs/{deviceId}")] [HttpGet("logs/{deviceId}")]
public async Task<IActionResult> GetLogs(int deviceId, DateTime? dateTimeStart = null, DateTime? dateTimeEnd = null) public async Task<IActionResult> ReadLogs(int deviceId, DateTime? dateTimeStart = null, DateTime? dateTimeEnd = null)
{ {
DateTimeRange dateTimeRange = new DateTimeRange(); DateTimeRange dateTimeRange = new DateTimeRange();
if (dateTimeStart != null && dateTimeEnd != null) if (dateTimeStart != null && dateTimeEnd != null)
@ -65,19 +65,16 @@ namespace Api.Controllers
// Sends the deviceId to deviceLogic // Sends the deviceId to deviceLogic
[Authorize] [Authorize]
[HttpPut("update/{deviceId}")] [HttpPut("update/{deviceId}")]
public async Task<IActionResult> EditDevice([FromBody] EditDeviceRequest device, int deviceId) public async Task<IActionResult> UpdateDevice([FromBody] UpdateDeviceRequest device, int deviceId)
{ {
return await _deviceLogic.EditDevice(device, deviceId); return await _deviceLogic.EditDevice(device, deviceId);
} }
// Sends the userId to userLogic // Sends the userId to userLogic
[Authorize] [Authorize]
[HttpDelete("Delete/{deviceId}")] [HttpDelete("delete/{deviceId}")]
public async Task<IActionResult> DeleteDevice(int deviceId) public async Task<IActionResult> DeleteDevice(int deviceId)
{ {
//var claims = HttpContext.User.Claims;
//string userIdString = claims.FirstOrDefault(c => c.Type == ClaimTypes.NameIdentifier).Value;
//int userId = Convert.ToInt32(userIdString);
return await _deviceLogic.DeleteDevice(deviceId); return await _deviceLogic.DeleteDevice(deviceId);
} }
} }

View File

@ -14,10 +14,10 @@ namespace Api.Controllers
_dbAccess = dbAccess; _dbAccess = dbAccess;
} }
[HttpGet("API")] [HttpGet("api")]
public async Task<IActionResult> HealthAPI() { return Ok(true); } public async Task<IActionResult> HealthAPI() { return Ok(true); }
[HttpGet("DB")] [HttpGet("db")]
public async Task<IActionResult> HealthDB() { return Ok(_dbAccess.Test()); } public async Task<IActionResult> HealthDB() { return Ok(_dbAccess.Test()); }
} }
} }

View File

@ -19,8 +19,8 @@ namespace Api.Controllers
} }
//[Authorize] //[Authorize]
[HttpGet("Get")] [HttpGet("get")]
public async Task<IActionResult> GetUSer() public async Task<IActionResult> ReadUser()
{ {
var claims = HttpContext.User.Claims; var claims = HttpContext.User.Claims;
string userIdString = claims.FirstOrDefault(c => c.Type == ClaimTypes.NameIdentifier).Value; string userIdString = claims.FirstOrDefault(c => c.Type == ClaimTypes.NameIdentifier).Value;
@ -28,14 +28,14 @@ namespace Api.Controllers
return await _userLogic.getUser(userId); return await _userLogic.getUser(userId);
} }
[HttpPost("Login")] [HttpPost("login")]
public async Task<IActionResult> Login([FromBody] Login login) public async Task<IActionResult> Login([FromBody] Login login)
{ {
return await _userLogic.Login(login); return await _userLogic.Login(login);
} }
// Sends the user to userLogic // Sends the user to userLogic
[HttpPost("Create")] [HttpPost("create")]
public async Task<IActionResult> CreateUser([FromBody] CreateUserRequest user) public async Task<IActionResult> CreateUser([FromBody] CreateUserRequest user)
{ {
return await _userLogic.RegisterUser(user); return await _userLogic.RegisterUser(user);
@ -43,7 +43,7 @@ namespace Api.Controllers
[Authorize] [Authorize]
[HttpPut("change-password")] [HttpPut("change-password")]
public async Task<IActionResult> changePassword([FromBody] ChangePasswordRequest passwordRequest) public async Task<IActionResult> ChangePassword([FromBody] ChangePasswordRequest passwordRequest)
{ {
var claims = HttpContext.User.Claims; var claims = HttpContext.User.Claims;
string userIdString = claims.FirstOrDefault(c => c.Type == ClaimTypes.NameIdentifier).Value; string userIdString = claims.FirstOrDefault(c => c.Type == ClaimTypes.NameIdentifier).Value;
@ -54,8 +54,8 @@ namespace Api.Controllers
// Sends the user and userId to userLogic // Sends the user and userId to userLogic
[Authorize] [Authorize]
[HttpPut("Update")] [HttpPut("update")]
public async Task<IActionResult> EditUser([FromBody] EditUserRequest userRequest) public async Task<IActionResult> UpdateUser([FromBody] UpdateUserRequest userRequest)
{ {
var claims = HttpContext.User.Claims; var claims = HttpContext.User.Claims;
string userIdString = claims.FirstOrDefault(c => c.Type == ClaimTypes.NameIdentifier).Value; string userIdString = claims.FirstOrDefault(c => c.Type == ClaimTypes.NameIdentifier).Value;
@ -65,7 +65,7 @@ namespace Api.Controllers
// Sends the userId to userLogic // Sends the userId to userLogic
[Authorize] [Authorize]
[HttpDelete("Delete")] [HttpDelete("delete")]
public async Task<IActionResult> DeleteUser() public async Task<IActionResult> DeleteUser()
{ {
var claims = HttpContext.User.Claims; var claims = HttpContext.User.Claims;
@ -74,7 +74,7 @@ namespace Api.Controllers
return await _userLogic.DeleteUser(userId); return await _userLogic.DeleteUser(userId);
} }
[HttpPost("RefreshToken/{refreshToken}")] [HttpPost("refreshToken/{refreshToken}")]
public async Task<IActionResult> RefreshToken(string refreshToken) public async Task<IActionResult> RefreshToken(string refreshToken)
{ {
return await _userLogic.RefreshToken(refreshToken); return await _userLogic.RefreshToken(refreshToken);

View File

@ -103,7 +103,7 @@ namespace Api.DBAccess
} }
public async Task<IActionResult> updatePassword(User user) public async Task<IActionResult> UpdatePassword(User user)
{ {
_context.Entry(user).State = EntityState.Modified; _context.Entry(user).State = EntityState.Modified;
@ -170,7 +170,7 @@ namespace Api.DBAccess
/// <param name="request">Contains the updated device info</param> /// <param name="request">Contains the updated device info</param>
/// <param name="referenceId">Has the id for the device that is to be updated</param> /// <param name="referenceId">Has the id for the device that is to be updated</param>
/// <returns>returns the updated device in a OkObjectResult and if there is some error it returns a ConflictObjectResult and a message that explain the reason</returns> /// <returns>returns the updated device in a OkObjectResult and if there is some error it returns a ConflictObjectResult and a message that explain the reason</returns>
public async Task<IActionResult> EditDevice(Device device) public async Task<IActionResult> UpdateDevice(Device device)
{ {
_context.Entry(device).State = EntityState.Modified; _context.Entry(device).State = EntityState.Modified;

View File

@ -1,6 +1,6 @@
namespace Api.Models.Devices namespace Api.Models.Devices
{ {
public class EditDeviceRequest public class UpdateDeviceRequest
{ {
public string Name { get; set; } public string Name { get; set; }

View File

@ -1,6 +1,6 @@
namespace Api.Models.Users namespace Api.Models.Users
{ {
public class EditUserRequest public class UpdateUserRequest
{ {
public string UserName { get; set; } public string UserName { get; set; }
public string Email { get; set; } public string Email { get; set; }

View File

@ -90,7 +90,7 @@ async function fetchData() {
const deviceData = []; const deviceData = [];
for (const device of devices) { for (const device of devices) {
const data = await getLogsOnDeviceId(device.id, startDate.setZone("UTC"), endDate.setZone("UTC")) const data = await getLogsOnDeviceId(device.id, startDate?.setZone("UTC"), endDate?.setZone("UTC"))
.catch(handleError); .catch(handleError);
deviceData.push(data); deviceData.push(data);
@ -148,7 +148,7 @@ async function fetchData() {
}); });
} }
chart.options.scales.x.time.unit = startDate.hasSame(endDate, "day") ? "hour" : "day"; chart.options.scales.x.time.unit = startDate?.hasSame(endDate, "day") ? "hour" : "day";
chart.data.datasets = deviceData.map((dataset, i) => { chart.data.datasets = deviceData.map((dataset, i) => {
const color = new Array(3) const color = new Array(3)