From 95d91394da6da4d3833a65856e1d149ebd1332b3 Mon Sep 17 00:00:00 2001 From: Gerardo Date: Tue, 8 Jul 2025 14:44:37 +0200 Subject: [PATCH] avances --- .../DependencyInjectionService.cs | 25 ++++--- .../Exceptions/ExceptionManager.cs | 4 +- .../Features/ResponseApiService.cs | 4 +- .../External/IGetTokenJwtService.cs | 2 +- .../Interfaces/External/IMqttService.cs | 14 ++++ .../Interfaces/IPersistenciaService.cs | 4 +- .../Queries/GetAllUser/GetAllUserModel.cs | 2 +- .../Queries/GetAllUser/GetAllUserQuery.cs | 8 +- .../Queries/GetAllUser/IGetAllUserQuery.cs | 2 +- .../Queries/GetUserById/GetUserByIdModel.cs | 2 +- .../Queries/GetUserById/GetUserByIdQuery.cs | 8 +- .../Queries/GetUserById/IGetUserByIdQuery.cs | 4 +- .../GetUserByPassAndNameModel.cs | 2 +- .../GetUserByPassAndNameQuery.cs | 6 +- .../IGetUserByPassAndNameQueryt.cs | 2 +- .../commands/CreateUser/CreateUserCommand.cs | 6 +- .../commands/CreateUser/CreateUserModel.cs | 2 +- .../commands/CreateUser/IcreateUserCommand.cs | 2 +- .../commands/DeleteUser/DeleteUserCommand.cs | 8 +- .../commands/DeleteUser/IDeleteUserCommand.cs | 2 +- .../commands/UpdateUser/IupdateUserCommand.cs | 4 +- .../commands/UpdateUser/UpdateUserCommand.cs | 8 +- .../commands/UpdateUser/UpdateUserModel.cs | 2 +- .../CreateSesion/CreateSesionCommand.cs | 12 +-- .../CreateSesion/CreateSesionModel.cs | 2 +- .../CreateSesion/ICreateSesionCommand.cs | 2 +- .../CreateSesion/InCreateSesionModel.cs | 2 +- .../Sesion/InCreateSesionValidator.cs | 6 +- .../Validators/User/CreateUserValidator.cs | 4 +- .../User/GetUserByPassAndNameValidator.cs | 4 +- .../Validators/User/UpdateUserValidator.cs | 6 +- .../configuration/MapperProfile.cs | 14 ++-- .../mqtt/IMqttAppService.cs | 13 ++++ .../mqtt/MqttAppService.cs | 30 ++++++++ .../src/Mqtt.App.Application/mqtt/mqttBase.cs | 14 ++++ .../Mqtt.App.Application/mqtt/mqttPublish.cs | 13 ++++ .../DependencyInjectionService.cs | 2 +- .../Entities/Booking/BookingEntity.cs | 4 +- .../Entities/Customer/CustomerEntity.cs | 2 +- .../Entities/User/UserEntity.cs | 2 +- .../src/Mqtt.App.Domain/Enums/BookingType.cs | 2 +- .../Models/BaseResponseModel.cs | 2 +- .../DependencyInjectionService.cs | 9 ++- .../GetTokenJWT/GetTokenJwtService.cs | 4 +- .../Mqtt.App.External.csproj | 1 + .../src/Mqtt.App.External/Mqtt/MqttService.cs | 75 +++++++++++++++++++ .../Controllers/SesionController.cs | 8 +- .../Controllers/UserController.cs | 18 ++--- .../Controllers/mqttController.cs | 26 +++++++ .../DependencyInjectionService.cs | 4 +- .../src/Mqtt.App.api/Mqtt.App.api.csproj.user | 2 + mqttApi/src/Mqtt.App.api/Mqtt.App.api.http | 4 +- mqttApi/src/Mqtt.App.api/Program.cs | 14 ++-- .../Configurations/UserConfiguration.cs | 4 +- .../DependencyInjectionService.cs | 6 +- .../Services/PersistenciaService.cs | 8 +- 56 files changed, 318 insertions(+), 124 deletions(-) create mode 100644 mqttApi/src/Mqtt.App.Application/Interfaces/External/IMqttService.cs create mode 100644 mqttApi/src/Mqtt.App.Application/mqtt/IMqttAppService.cs create mode 100644 mqttApi/src/Mqtt.App.Application/mqtt/MqttAppService.cs create mode 100644 mqttApi/src/Mqtt.App.Application/mqtt/mqttBase.cs create mode 100644 mqttApi/src/Mqtt.App.Application/mqtt/mqttPublish.cs create mode 100644 mqttApi/src/Mqtt.App.External/Mqtt/MqttService.cs create mode 100644 mqttApi/src/Mqtt.App.api/Controllers/mqttController.cs diff --git a/mqttApi/src/Mqtt.App.Application/DependencyInjectionService.cs b/mqttApi/src/Mqtt.App.Application/DependencyInjectionService.cs index fc99934..3e997a1 100644 --- a/mqttApi/src/Mqtt.App.Application/DependencyInjectionService.cs +++ b/mqttApi/src/Mqtt.App.Application/DependencyInjectionService.cs @@ -1,14 +1,14 @@ using AutoMapper; -using Empresa.App.Application.configuration; -using Empresa.App.Application.Persistencia.user.commands.CreateUser; -using Empresa.App.Application.Persistencia.user.commands.DeleteUser; -using Empresa.App.Application.Persistencia.user.commands.UpdateUser; -using Empresa.App.Application.Persistencia.user.Queries.GetAllUser; -using Empresa.App.Application.Persistencia.user.Queries.GetUserById; -using Empresa.App.Application.Persistencia.user.Queries.GetUserByPassAndName; -using Empresa.App.Application.Sesion.Commands.CreateSesion; -using Empresa.App.Application.Validators.Sesion; -using Empresa.App.Application.Validators.User; +using Mqtt.App.Application.configuration; +using Mqtt.App.Application.Persistencia.user.commands.CreateUser; +using Mqtt.App.Application.Persistencia.user.commands.DeleteUser; +using Mqtt.App.Application.Persistencia.user.commands.UpdateUser; +using Mqtt.App.Application.Persistencia.user.Queries.GetAllUser; +using Mqtt.App.Application.Persistencia.user.Queries.GetUserById; +using Mqtt.App.Application.Persistencia.user.Queries.GetUserByPassAndName; +using Mqtt.App.Application.Sesion.Commands.CreateSesion; +using Mqtt.App.Application.Validators.Sesion; +using Mqtt.App.Application.Validators.User; using FluentValidation; using Microsoft.Extensions.DependencyInjection; using System; @@ -16,7 +16,8 @@ using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application +using Mqtt.App.Application.mqtt; +namespace Mqtt.App.Application { public static class DependencyInjectionService { @@ -29,6 +30,8 @@ namespace Empresa.App.Application ); #region user services.AddTransient< IcreateUserCommand,CreateUserCommand>(); + services.AddTransient(); + services.AddTransient(); services.AddTransient(); services.AddTransient(); diff --git a/mqttApi/src/Mqtt.App.Application/Exceptions/ExceptionManager.cs b/mqttApi/src/Mqtt.App.Application/Exceptions/ExceptionManager.cs index cb048b2..449fa84 100644 --- a/mqttApi/src/Mqtt.App.Application/Exceptions/ExceptionManager.cs +++ b/mqttApi/src/Mqtt.App.Application/Exceptions/ExceptionManager.cs @@ -1,9 +1,9 @@ -using Empresa.App.Application.Features; +using Mqtt.App.Application.Features; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Filters; -namespace Empresa.App.Application.Exceptions +namespace Mqtt.App.Application.Exceptions { //captura errores public class ExceptionManager : IExceptionFilter diff --git a/mqttApi/src/Mqtt.App.Application/Features/ResponseApiService.cs b/mqttApi/src/Mqtt.App.Application/Features/ResponseApiService.cs index 60b0120..8840158 100644 --- a/mqttApi/src/Mqtt.App.Application/Features/ResponseApiService.cs +++ b/mqttApi/src/Mqtt.App.Application/Features/ResponseApiService.cs @@ -1,6 +1,6 @@ -using Empresa.App.Domain.Models; +using Mqtt.App.Domain.Models; -namespace Empresa.App.Application.Features +namespace Mqtt.App.Application.Features { public static class ResponseApiService { diff --git a/mqttApi/src/Mqtt.App.Application/Interfaces/External/IGetTokenJwtService.cs b/mqttApi/src/Mqtt.App.Application/Interfaces/External/IGetTokenJwtService.cs index 04f428a..c70ba41 100644 --- a/mqttApi/src/Mqtt.App.Application/Interfaces/External/IGetTokenJwtService.cs +++ b/mqttApi/src/Mqtt.App.Application/Interfaces/External/IGetTokenJwtService.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Interfaces.External +namespace Mqtt.App.Application.Interfaces.External { public interface IGetTokenJwtService { diff --git a/mqttApi/src/Mqtt.App.Application/Interfaces/External/IMqttService.cs b/mqttApi/src/Mqtt.App.Application/Interfaces/External/IMqttService.cs new file mode 100644 index 0000000..c2aae5d --- /dev/null +++ b/mqttApi/src/Mqtt.App.Application/Interfaces/External/IMqttService.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Mqtt.App.Application.Interfaces.External +{ + public interface IMqttService + { + Task publishAsync(string topic, string payload); + public bool CompruebaKey(string key); + } +} diff --git a/mqttApi/src/Mqtt.App.Application/Interfaces/IPersistenciaService.cs b/mqttApi/src/Mqtt.App.Application/Interfaces/IPersistenciaService.cs index 51d1337..774386f 100644 --- a/mqttApi/src/Mqtt.App.Application/Interfaces/IPersistenciaService.cs +++ b/mqttApi/src/Mqtt.App.Application/Interfaces/IPersistenciaService.cs @@ -1,11 +1,11 @@ -using Empresa.App.Domain.Entities.User; +using Mqtt.App.Domain.Entities.User; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Interfaces +namespace Mqtt.App.Application.Interfaces { //servicion para guardar datos public interface IPersistenciaService diff --git a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetAllUser/GetAllUserModel.cs b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetAllUser/GetAllUserModel.cs index fb8fe92..8860b7d 100644 --- a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetAllUser/GetAllUserModel.cs +++ b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetAllUser/GetAllUserModel.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Persistencia.user.Queries.GetAllUser +namespace Mqtt.App.Application.Persistencia.user.Queries.GetAllUser { public class GetAllUserModel { diff --git a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetAllUser/GetAllUserQuery.cs b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetAllUser/GetAllUserQuery.cs index 925b801..411ffaa 100644 --- a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetAllUser/GetAllUserQuery.cs +++ b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetAllUser/GetAllUserQuery.cs @@ -1,14 +1,14 @@ using AutoMapper; -using Empresa.App.Application.Interfaces; -using Empresa.App.Application.Persistencia.user.commands.UpdateUser; -using Empresa.App.Domain.Entities.User; +using Mqtt.App.Application.Interfaces; +using Mqtt.App.Application.Persistencia.user.commands.UpdateUser; +using Mqtt.App.Domain.Entities.User; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Persistencia.user.Queries.GetAllUser +namespace Mqtt.App.Application.Persistencia.user.Queries.GetAllUser { public class GetAllUserQuery: IGetAllUserQuery { diff --git a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetAllUser/IGetAllUserQuery.cs b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetAllUser/IGetAllUserQuery.cs index d545ad2..1f4a94a 100644 --- a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetAllUser/IGetAllUserQuery.cs +++ b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetAllUser/IGetAllUserQuery.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Persistencia.user.Queries.GetAllUser +namespace Mqtt.App.Application.Persistencia.user.Queries.GetAllUser { public interface IGetAllUserQuery { diff --git a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserById/GetUserByIdModel.cs b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserById/GetUserByIdModel.cs index bbd7260..df362a5 100644 --- a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserById/GetUserByIdModel.cs +++ b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserById/GetUserByIdModel.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Persistencia.user.Queries.GetUserById +namespace Mqtt.App.Application.Persistencia.user.Queries.GetUserById { public class GetUserByIdModel { diff --git a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserById/GetUserByIdQuery.cs b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserById/GetUserByIdQuery.cs index 58541ea..8c5f38f 100644 --- a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserById/GetUserByIdQuery.cs +++ b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserById/GetUserByIdQuery.cs @@ -1,7 +1,7 @@ using AutoMapper; -using Empresa.App.Application.Interfaces; -using Empresa.App.Application.Persistencia.user.commands.UpdateUser; -using Empresa.App.Domain.Entities.User; +using Mqtt.App.Application.Interfaces; +using Mqtt.App.Application.Persistencia.user.commands.UpdateUser; +using Mqtt.App.Domain.Entities.User; using System; using System.Collections.Generic; using System.Linq; @@ -9,7 +9,7 @@ using System.Reflection; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Persistencia.user.Queries.GetUserById +namespace Mqtt.App.Application.Persistencia.user.Queries.GetUserById { public class GetUserByIdQuery: IGetUserByIdQuery { diff --git a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserById/IGetUserByIdQuery.cs b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserById/IGetUserByIdQuery.cs index 1beeab8..0360f83 100644 --- a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserById/IGetUserByIdQuery.cs +++ b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserById/IGetUserByIdQuery.cs @@ -1,11 +1,11 @@ -using Empresa.App.Application.Persistencia.user.Queries.GetAllUser; +using Mqtt.App.Application.Persistencia.user.Queries.GetAllUser; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Persistencia.user.Queries.GetUserById +namespace Mqtt.App.Application.Persistencia.user.Queries.GetUserById { public interface IGetUserByIdQuery { diff --git a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserByPassAndName/GetUserByPassAndNameModel.cs b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserByPassAndName/GetUserByPassAndNameModel.cs index d7666d9..0cad1d4 100644 --- a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserByPassAndName/GetUserByPassAndNameModel.cs +++ b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserByPassAndName/GetUserByPassAndNameModel.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Persistencia.user.Queries.GetUserByPassAndName +namespace Mqtt.App.Application.Persistencia.user.Queries.GetUserByPassAndName { public class GetUserByPassAndNameModel { diff --git a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserByPassAndName/GetUserByPassAndNameQuery.cs b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserByPassAndName/GetUserByPassAndNameQuery.cs index bc19fc6..973ec78 100644 --- a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserByPassAndName/GetUserByPassAndNameQuery.cs +++ b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserByPassAndName/GetUserByPassAndNameQuery.cs @@ -1,6 +1,6 @@ using AutoMapper; -using Empresa.App.Application.Interfaces; -using Empresa.App.Application.Persistencia.user.Queries.GetUserById; +using Mqtt.App.Application.Interfaces; +using Mqtt.App.Application.Persistencia.user.Queries.GetUserById; using System; using System.Collections.Generic; using System.Linq; @@ -8,7 +8,7 @@ using System.Text; using System.Threading.Tasks; using System.Xml.Linq; -namespace Empresa.App.Application.Persistencia.user.Queries.GetUserByPassAndName +namespace Mqtt.App.Application.Persistencia.user.Queries.GetUserByPassAndName { public class GetUserByPassAndNameQuery: IGetUserByPassAndNameQuery { diff --git a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserByPassAndName/IGetUserByPassAndNameQueryt.cs b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserByPassAndName/IGetUserByPassAndNameQueryt.cs index 385a55c..de2bbb0 100644 --- a/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserByPassAndName/IGetUserByPassAndNameQueryt.cs +++ b/mqttApi/src/Mqtt.App.Application/Persistencia/user/Queries/GetUserByPassAndName/IGetUserByPassAndNameQueryt.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Persistencia.user.Queries.GetUserByPassAndName +namespace Mqtt.App.Application.Persistencia.user.Queries.GetUserByPassAndName { public interface IGetUserByPassAndNameQuery { diff --git a/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/CreateUser/CreateUserCommand.cs b/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/CreateUser/CreateUserCommand.cs index b77f4bf..7156267 100644 --- a/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/CreateUser/CreateUserCommand.cs +++ b/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/CreateUser/CreateUserCommand.cs @@ -1,13 +1,13 @@ using AutoMapper; -using Empresa.App.Application.Interfaces; -using Empresa.App.Domain.Entities.User; +using Mqtt.App.Application.Interfaces; +using Mqtt.App.Domain.Entities.User; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Persistencia.user.commands.CreateUser +namespace Mqtt.App.Application.Persistencia.user.commands.CreateUser { public class CreateUserCommand: IcreateUserCommand { diff --git a/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/CreateUser/CreateUserModel.cs b/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/CreateUser/CreateUserModel.cs index 19f8e53..51b4d75 100644 --- a/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/CreateUser/CreateUserModel.cs +++ b/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/CreateUser/CreateUserModel.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Persistencia.user.commands.CreateUser +namespace Mqtt.App.Application.Persistencia.user.commands.CreateUser { public class CreateUserModel { diff --git a/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/CreateUser/IcreateUserCommand.cs b/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/CreateUser/IcreateUserCommand.cs index fd56820..d43f015 100644 --- a/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/CreateUser/IcreateUserCommand.cs +++ b/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/CreateUser/IcreateUserCommand.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Persistencia.user.commands.CreateUser +namespace Mqtt.App.Application.Persistencia.user.commands.CreateUser { public interface IcreateUserCommand { diff --git a/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/DeleteUser/DeleteUserCommand.cs b/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/DeleteUser/DeleteUserCommand.cs index 04b8ef4..872ee4e 100644 --- a/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/DeleteUser/DeleteUserCommand.cs +++ b/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/DeleteUser/DeleteUserCommand.cs @@ -1,14 +1,14 @@ using AutoMapper; -using Empresa.App.Application.Interfaces; -using Empresa.App.Application.Persistencia.user.commands.UpdateUser; -using Empresa.App.Domain.Entities.User; +using Mqtt.App.Application.Interfaces; +using Mqtt.App.Application.Persistencia.user.commands.UpdateUser; +using Mqtt.App.Domain.Entities.User; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Persistencia.user.commands.DeleteUser +namespace Mqtt.App.Application.Persistencia.user.commands.DeleteUser { public class DeleteUserCommand: IDeleteUserCommand { diff --git a/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/DeleteUser/IDeleteUserCommand.cs b/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/DeleteUser/IDeleteUserCommand.cs index 537a51f..683a306 100644 --- a/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/DeleteUser/IDeleteUserCommand.cs +++ b/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/DeleteUser/IDeleteUserCommand.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Persistencia.user.commands.DeleteUser +namespace Mqtt.App.Application.Persistencia.user.commands.DeleteUser { public interface IDeleteUserCommand { diff --git a/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/UpdateUser/IupdateUserCommand.cs b/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/UpdateUser/IupdateUserCommand.cs index dac738d..00095a3 100644 --- a/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/UpdateUser/IupdateUserCommand.cs +++ b/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/UpdateUser/IupdateUserCommand.cs @@ -1,11 +1,11 @@ -using Empresa.App.Application.Persistencia.user.commands.CreateUser; +using Mqtt.App.Application.Persistencia.user.commands.CreateUser; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Persistencia.user.commands.UpdateUser +namespace Mqtt.App.Application.Persistencia.user.commands.UpdateUser { public interface IupdateUserCommand { diff --git a/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/UpdateUser/UpdateUserCommand.cs b/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/UpdateUser/UpdateUserCommand.cs index 8f0adb8..4a5119e 100644 --- a/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/UpdateUser/UpdateUserCommand.cs +++ b/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/UpdateUser/UpdateUserCommand.cs @@ -1,14 +1,14 @@ using AutoMapper; -using Empresa.App.Application.Interfaces; -using Empresa.App.Application.Persistencia.user.commands.CreateUser; -using Empresa.App.Domain.Entities.User; +using Mqtt.App.Application.Interfaces; +using Mqtt.App.Application.Persistencia.user.commands.CreateUser; +using Mqtt.App.Domain.Entities.User; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Persistencia.user.commands.UpdateUser +namespace Mqtt.App.Application.Persistencia.user.commands.UpdateUser { public class UpdateUserCommand : IupdateUserCommand diff --git a/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/UpdateUser/UpdateUserModel.cs b/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/UpdateUser/UpdateUserModel.cs index 6099b14..d729cac 100644 --- a/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/UpdateUser/UpdateUserModel.cs +++ b/mqttApi/src/Mqtt.App.Application/Persistencia/user/commands/UpdateUser/UpdateUserModel.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Persistencia.user.commands.UpdateUser +namespace Mqtt.App.Application.Persistencia.user.commands.UpdateUser { public class UpdateUserModel { diff --git a/mqttApi/src/Mqtt.App.Application/Sesion/Commands/CreateSesion/CreateSesionCommand.cs b/mqttApi/src/Mqtt.App.Application/Sesion/Commands/CreateSesion/CreateSesionCommand.cs index 719b8f3..80863d1 100644 --- a/mqttApi/src/Mqtt.App.Application/Sesion/Commands/CreateSesion/CreateSesionCommand.cs +++ b/mqttApi/src/Mqtt.App.Application/Sesion/Commands/CreateSesion/CreateSesionCommand.cs @@ -1,16 +1,16 @@ using AutoMapper; -using Empresa.App.Application.Interfaces; -using Empresa.App.Application.Interfaces.External; -using Empresa.App.Application.Persistencia.user.commands.CreateUser; -using Empresa.App.Application.Persistencia.user.Queries.GetUserByPassAndName; -using Empresa.App.Domain.Entities.User; +using Mqtt.App.Application.Interfaces; +using Mqtt.App.Application.Interfaces.External; +using Mqtt.App.Application.Persistencia.user.commands.CreateUser; +using Mqtt.App.Application.Persistencia.user.Queries.GetUserByPassAndName; +using Mqtt.App.Domain.Entities.User; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Sesion.Commands.CreateSesion +namespace Mqtt.App.Application.Sesion.Commands.CreateSesion { public class CreateSesionCommand: ICreateSesionCommand { diff --git a/mqttApi/src/Mqtt.App.Application/Sesion/Commands/CreateSesion/CreateSesionModel.cs b/mqttApi/src/Mqtt.App.Application/Sesion/Commands/CreateSesion/CreateSesionModel.cs index 6a4fff4..be53469 100644 --- a/mqttApi/src/Mqtt.App.Application/Sesion/Commands/CreateSesion/CreateSesionModel.cs +++ b/mqttApi/src/Mqtt.App.Application/Sesion/Commands/CreateSesion/CreateSesionModel.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Sesion.Commands.CreateSesion +namespace Mqtt.App.Application.Sesion.Commands.CreateSesion { public class CreateSesionModel { diff --git a/mqttApi/src/Mqtt.App.Application/Sesion/Commands/CreateSesion/ICreateSesionCommand.cs b/mqttApi/src/Mqtt.App.Application/Sesion/Commands/CreateSesion/ICreateSesionCommand.cs index a4955e0..012388c 100644 --- a/mqttApi/src/Mqtt.App.Application/Sesion/Commands/CreateSesion/ICreateSesionCommand.cs +++ b/mqttApi/src/Mqtt.App.Application/Sesion/Commands/CreateSesion/ICreateSesionCommand.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Sesion.Commands.CreateSesion +namespace Mqtt.App.Application.Sesion.Commands.CreateSesion { public interface ICreateSesionCommand { diff --git a/mqttApi/src/Mqtt.App.Application/Sesion/Commands/CreateSesion/InCreateSesionModel.cs b/mqttApi/src/Mqtt.App.Application/Sesion/Commands/CreateSesion/InCreateSesionModel.cs index cc4f08b..9e8c4f3 100644 --- a/mqttApi/src/Mqtt.App.Application/Sesion/Commands/CreateSesion/InCreateSesionModel.cs +++ b/mqttApi/src/Mqtt.App.Application/Sesion/Commands/CreateSesion/InCreateSesionModel.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Sesion.Commands.CreateSesion +namespace Mqtt.App.Application.Sesion.Commands.CreateSesion { public class InCreateSesionModel { diff --git a/mqttApi/src/Mqtt.App.Application/Validators/Sesion/InCreateSesionValidator.cs b/mqttApi/src/Mqtt.App.Application/Validators/Sesion/InCreateSesionValidator.cs index ee65982..5a6f70d 100644 --- a/mqttApi/src/Mqtt.App.Application/Validators/Sesion/InCreateSesionValidator.cs +++ b/mqttApi/src/Mqtt.App.Application/Validators/Sesion/InCreateSesionValidator.cs @@ -1,5 +1,5 @@ -using Empresa.App.Application.Persistencia.user.commands.CreateUser; -using Empresa.App.Application.Sesion.Commands.CreateSesion; +using Mqtt.App.Application.Persistencia.user.commands.CreateUser; +using Mqtt.App.Application.Sesion.Commands.CreateSesion; using FluentValidation; using System; using System.Collections.Generic; @@ -7,7 +7,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Validators.Sesion +namespace Mqtt.App.Application.Validators.Sesion { public class InCreateSesionValidator : AbstractValidator { diff --git a/mqttApi/src/Mqtt.App.Application/Validators/User/CreateUserValidator.cs b/mqttApi/src/Mqtt.App.Application/Validators/User/CreateUserValidator.cs index c1ff0ab..97a9370 100644 --- a/mqttApi/src/Mqtt.App.Application/Validators/User/CreateUserValidator.cs +++ b/mqttApi/src/Mqtt.App.Application/Validators/User/CreateUserValidator.cs @@ -1,4 +1,4 @@ -using Empresa.App.Application.Persistencia.user.commands.CreateUser; +using Mqtt.App.Application.Persistencia.user.commands.CreateUser; using FluentValidation; using System; using System.Collections.Generic; @@ -6,7 +6,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Validators.User +namespace Mqtt.App.Application.Validators.User { public class CreateUserValidator:AbstractValidator { diff --git a/mqttApi/src/Mqtt.App.Application/Validators/User/GetUserByPassAndNameValidator.cs b/mqttApi/src/Mqtt.App.Application/Validators/User/GetUserByPassAndNameValidator.cs index b5ce304..84a42d5 100644 --- a/mqttApi/src/Mqtt.App.Application/Validators/User/GetUserByPassAndNameValidator.cs +++ b/mqttApi/src/Mqtt.App.Application/Validators/User/GetUserByPassAndNameValidator.cs @@ -1,4 +1,4 @@ -using Empresa.App.Application.Persistencia.user.commands.UpdateUser; +using Mqtt.App.Application.Persistencia.user.commands.UpdateUser; using FluentValidation; using System; using System.Collections.Generic; @@ -6,7 +6,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Validators.User +namespace Mqtt.App.Application.Validators.User { public class GetUserByPassAndNameValidator : AbstractValidator<(string, string)> { diff --git a/mqttApi/src/Mqtt.App.Application/Validators/User/UpdateUserValidator.cs b/mqttApi/src/Mqtt.App.Application/Validators/User/UpdateUserValidator.cs index 317d0a6..5a23d55 100644 --- a/mqttApi/src/Mqtt.App.Application/Validators/User/UpdateUserValidator.cs +++ b/mqttApi/src/Mqtt.App.Application/Validators/User/UpdateUserValidator.cs @@ -1,5 +1,5 @@ -using Empresa.App.Application.Persistencia.user.commands.CreateUser; -using Empresa.App.Application.Persistencia.user.commands.UpdateUser; +using Mqtt.App.Application.Persistencia.user.commands.CreateUser; +using Mqtt.App.Application.Persistencia.user.commands.UpdateUser; using FluentValidation; using System; using System.Collections.Generic; @@ -7,7 +7,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.Validators.User +namespace Mqtt.App.Application.Validators.User { public class UpdateUserValidator : AbstractValidator { diff --git a/mqttApi/src/Mqtt.App.Application/configuration/MapperProfile.cs b/mqttApi/src/Mqtt.App.Application/configuration/MapperProfile.cs index 16b5ae2..5d8982a 100644 --- a/mqttApi/src/Mqtt.App.Application/configuration/MapperProfile.cs +++ b/mqttApi/src/Mqtt.App.Application/configuration/MapperProfile.cs @@ -1,17 +1,17 @@ using AutoMapper; -using Empresa.App.Application.Persistencia.user.commands.CreateUser; -using Empresa.App.Application.Persistencia.user.commands.UpdateUser; -using Empresa.App.Application.Persistencia.user.Queries.GetAllUser; -using Empresa.App.Application.Persistencia.user.Queries.GetUserById; -using Empresa.App.Application.Persistencia.user.Queries.GetUserByPassAndName; -using Empresa.App.Domain.Entities.User; +using Mqtt.App.Application.Persistencia.user.commands.CreateUser; +using Mqtt.App.Application.Persistencia.user.commands.UpdateUser; +using Mqtt.App.Application.Persistencia.user.Queries.GetAllUser; +using Mqtt.App.Application.Persistencia.user.Queries.GetUserById; +using Mqtt.App.Application.Persistencia.user.Queries.GetUserByPassAndName; +using Mqtt.App.Domain.Entities.User; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Application.configuration +namespace Mqtt.App.Application.configuration { public class MapperProfile : Profile { diff --git a/mqttApi/src/Mqtt.App.Application/mqtt/IMqttAppService.cs b/mqttApi/src/Mqtt.App.Application/mqtt/IMqttAppService.cs new file mode 100644 index 0000000..85e82dd --- /dev/null +++ b/mqttApi/src/Mqtt.App.Application/mqtt/IMqttAppService.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Mqtt.App.Application.mqtt +{ + public interface IMqttAppService + { + Task Publica(mqttPublish data); + } +} diff --git a/mqttApi/src/Mqtt.App.Application/mqtt/MqttAppService.cs b/mqttApi/src/Mqtt.App.Application/mqtt/MqttAppService.cs new file mode 100644 index 0000000..d0bb8b7 --- /dev/null +++ b/mqttApi/src/Mqtt.App.Application/mqtt/MqttAppService.cs @@ -0,0 +1,30 @@ +using Mqtt.App.Application.Interfaces.External; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Mqtt.App.Application.mqtt +{ + public class MqttAppService: IMqttAppService + { + private readonly IMqttService _mqttService; + + public MqttAppService(IMqttService mqttService) + { + _mqttService=mqttService; + } + + public async Task Publica(mqttPublish data) + { + return CompruebaKey(data) && await _mqttService.publishAsync(data.topic, data.payload); + } + internal bool CompruebaKey(MqttBase data) + { + return _mqttService.CompruebaKey(data.key); + } + + + } +} diff --git a/mqttApi/src/Mqtt.App.Application/mqtt/mqttBase.cs b/mqttApi/src/Mqtt.App.Application/mqtt/mqttBase.cs new file mode 100644 index 0000000..6c302f8 --- /dev/null +++ b/mqttApi/src/Mqtt.App.Application/mqtt/mqttBase.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Mqtt.App.Application.mqtt +{ + public class MqttBase + { + public string key { get; set; } + public string topic { get; set; } + } +} diff --git a/mqttApi/src/Mqtt.App.Application/mqtt/mqttPublish.cs b/mqttApi/src/Mqtt.App.Application/mqtt/mqttPublish.cs new file mode 100644 index 0000000..59b421d --- /dev/null +++ b/mqttApi/src/Mqtt.App.Application/mqtt/mqttPublish.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Mqtt.App.Application.mqtt +{ + public class mqttPublish : MqttBase + { + public string payload {get; set;} + } +} diff --git a/mqttApi/src/Mqtt.App.Common/DependencyInjectionService.cs b/mqttApi/src/Mqtt.App.Common/DependencyInjectionService.cs index def2007..7caa482 100644 --- a/mqttApi/src/Mqtt.App.Common/DependencyInjectionService.cs +++ b/mqttApi/src/Mqtt.App.Common/DependencyInjectionService.cs @@ -5,7 +5,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Common +namespace Mqtt.App.Common { public static class DependencyInjectionService { diff --git a/mqttApi/src/Mqtt.App.Domain/Entities/Booking/BookingEntity.cs b/mqttApi/src/Mqtt.App.Domain/Entities/Booking/BookingEntity.cs index 2767f0d..c93e21f 100644 --- a/mqttApi/src/Mqtt.App.Domain/Entities/Booking/BookingEntity.cs +++ b/mqttApi/src/Mqtt.App.Domain/Entities/Booking/BookingEntity.cs @@ -1,11 +1,11 @@ -using Empresa.App.Domain.Enums; +using Mqtt.App.Domain.Enums; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Domain.Entities.Booking +namespace Mqtt.App.Domain.Entities.Booking { public class BookingEntity { diff --git a/mqttApi/src/Mqtt.App.Domain/Entities/Customer/CustomerEntity.cs b/mqttApi/src/Mqtt.App.Domain/Entities/Customer/CustomerEntity.cs index 4a094f2..5aff6b7 100644 --- a/mqttApi/src/Mqtt.App.Domain/Entities/Customer/CustomerEntity.cs +++ b/mqttApi/src/Mqtt.App.Domain/Entities/Customer/CustomerEntity.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Domain.Entities.Customer +namespace Mqtt.App.Domain.Entities.Customer { public class CustomerEntity { diff --git a/mqttApi/src/Mqtt.App.Domain/Entities/User/UserEntity.cs b/mqttApi/src/Mqtt.App.Domain/Entities/User/UserEntity.cs index 82ec597..1513b07 100644 --- a/mqttApi/src/Mqtt.App.Domain/Entities/User/UserEntity.cs +++ b/mqttApi/src/Mqtt.App.Domain/Entities/User/UserEntity.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Domain.Entities.User +namespace Mqtt.App.Domain.Entities.User { public class UserEntity { diff --git a/mqttApi/src/Mqtt.App.Domain/Enums/BookingType.cs b/mqttApi/src/Mqtt.App.Domain/Enums/BookingType.cs index 0cffa66..171876a 100644 --- a/mqttApi/src/Mqtt.App.Domain/Enums/BookingType.cs +++ b/mqttApi/src/Mqtt.App.Domain/Enums/BookingType.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.Domain.Enums +namespace Mqtt.App.Domain.Enums { public enum BookingType { diff --git a/mqttApi/src/Mqtt.App.Domain/Models/BaseResponseModel.cs b/mqttApi/src/Mqtt.App.Domain/Models/BaseResponseModel.cs index 7469678..e465ce0 100644 --- a/mqttApi/src/Mqtt.App.Domain/Models/BaseResponseModel.cs +++ b/mqttApi/src/Mqtt.App.Domain/Models/BaseResponseModel.cs @@ -1,6 +1,6 @@  -namespace Empresa.App.Domain.Models +namespace Mqtt.App.Domain.Models { public class BaseResponseModel { diff --git a/mqttApi/src/Mqtt.App.External/DependencyInjectionService.cs b/mqttApi/src/Mqtt.App.External/DependencyInjectionService.cs index 226f4a0..86a2fe5 100644 --- a/mqttApi/src/Mqtt.App.External/DependencyInjectionService.cs +++ b/mqttApi/src/Mqtt.App.External/DependencyInjectionService.cs @@ -1,5 +1,5 @@ -using Empresa.App.Application.Interfaces.External; -using Empresa.App.External.GetTokenJWT; +using Mqtt.App.Application.Interfaces.External; +using Mqtt.App.External.GetTokenJWT; using Microsoft.AspNetCore.Authentication.JwtBearer; using Microsoft.AspNetCore.DataProtection.KeyManagement; using Microsoft.Extensions.Configuration; @@ -11,8 +11,9 @@ using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; +using Mqtt.App.External.Mqtt; -namespace Empresa.App.External +namespace Mqtt.App.External { public static class DependencyInjectionService { @@ -20,6 +21,8 @@ namespace Empresa.App.External { services.AddSingleton(); + services.AddSingleton(); + services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme).AddJwtBearer(option => option.TokenValidationParameters=new TokenValidationParameters diff --git a/mqttApi/src/Mqtt.App.External/GetTokenJWT/GetTokenJwtService.cs b/mqttApi/src/Mqtt.App.External/GetTokenJWT/GetTokenJwtService.cs index 25ef918..c2698a3 100644 --- a/mqttApi/src/Mqtt.App.External/GetTokenJWT/GetTokenJwtService.cs +++ b/mqttApi/src/Mqtt.App.External/GetTokenJWT/GetTokenJwtService.cs @@ -1,4 +1,4 @@ -using Empresa.App.Application.Interfaces.External; +using Mqtt.App.Application.Interfaces.External; using Microsoft.Extensions.Configuration; using Microsoft.IdentityModel.Tokens; using System; @@ -9,7 +9,7 @@ using System.Security.Claims; using System.Text; using System.Threading.Tasks; -namespace Empresa.App.External.GetTokenJWT +namespace Mqtt.App.External.GetTokenJWT { public class GetTokenJwtService: IGetTokenJwtService { diff --git a/mqttApi/src/Mqtt.App.External/Mqtt.App.External.csproj b/mqttApi/src/Mqtt.App.External/Mqtt.App.External.csproj index 01aba5d..86b0a51 100644 --- a/mqttApi/src/Mqtt.App.External/Mqtt.App.External.csproj +++ b/mqttApi/src/Mqtt.App.External/Mqtt.App.External.csproj @@ -10,6 +10,7 @@ + diff --git a/mqttApi/src/Mqtt.App.External/Mqtt/MqttService.cs b/mqttApi/src/Mqtt.App.External/Mqtt/MqttService.cs new file mode 100644 index 0000000..7472312 --- /dev/null +++ b/mqttApi/src/Mqtt.App.External/Mqtt/MqttService.cs @@ -0,0 +1,75 @@ +using Microsoft.Extensions.Configuration; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using MQTTnet; +using System.Buffers; +using System.Text; +using System.IdentityModel.Tokens.Jwt; +using Microsoft.AspNetCore.Hosting.Server; +using Mqtt.App.Application.Interfaces.External; +using Microsoft.AspNetCore.DataProtection.KeyManagement; +namespace Mqtt.App.External.Mqtt +{ + public class MqttService: IMqttService + { + private readonly IConfiguration _config; + + public MqttService(IConfiguration config) + { + _config = config; + } + public bool CompruebaKey(string key) + { + if(_config == null ) + return false; + string apikey = _config["ApiKeyMqtt"]; + if (String.IsNullOrWhiteSpace(apikey) || String.IsNullOrWhiteSpace(key)) + return false; + + return apikey.Equals(key); + + } + public async Task publishAsync(string topic, string payload) + { + if (_config == null || String.IsNullOrWhiteSpace(topic) || String.IsNullOrWhiteSpace(payload)) + return false; + + string server = _config["ServerMqtt"]; + string topicFormat = _config["TopicFormatMqtt"]; + + if (String.IsNullOrWhiteSpace(server) || String.IsNullOrWhiteSpace(topicFormat)) + return false; + + bool res = true; + var mqttFactory = new MqttClientFactory(); + byte[] bytes = Encoding.UTF8.GetBytes(payload); + + using (var mqttClient = mqttFactory.CreateMqttClient()) + { + var mqttClientOptions = new MqttClientOptionsBuilder().WithTcpServer(server).Build(); + + // Setup message handling before connecting so that queued messages + // are also handled properly. When there is no event handler attached all + // received messages get lost. + + var conect = await mqttClient.ConnectAsync(mqttClientOptions, CancellationToken.None); + res = conect.ResultCode == MqttClientConnectResultCode.Success; + if (res) + { + MqttClientPublishResult resultPublish = await mqttClient.PublishAsync(new MqttApplicationMessage + { + Topic = string.Format(topicFormat, topic), + Payload = new ReadOnlySequence(bytes) + }); + res = resultPublish.IsSuccess; + await mqttClient.DisconnectAsync(); + } + } + return res; + } + + } +} diff --git a/mqttApi/src/Mqtt.App.api/Controllers/SesionController.cs b/mqttApi/src/Mqtt.App.api/Controllers/SesionController.cs index 6fa842f..0a6cd8d 100644 --- a/mqttApi/src/Mqtt.App.api/Controllers/SesionController.cs +++ b/mqttApi/src/Mqtt.App.api/Controllers/SesionController.cs @@ -1,13 +1,13 @@ -using Empresa.App.Application.Features; -using Empresa.App.Application.Persistencia.user.commands.CreateUser; -using Empresa.App.Application.Sesion.Commands.CreateSesion; +using Mqtt.App.Application.Features; +using Mqtt.App.Application.Persistencia.user.commands.CreateUser; +using Mqtt.App.Application.Sesion.Commands.CreateSesion; using FluentValidation; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; //using System.Web.Http; -namespace Empresa.App.api.Controllers +namespace Mqtt.App.api.Controllers { [Authorize] [Route("api/v1/Sesion")] diff --git a/mqttApi/src/Mqtt.App.api/Controllers/UserController.cs b/mqttApi/src/Mqtt.App.api/Controllers/UserController.cs index 197f934..92cad88 100644 --- a/mqttApi/src/Mqtt.App.api/Controllers/UserController.cs +++ b/mqttApi/src/Mqtt.App.api/Controllers/UserController.cs @@ -1,11 +1,11 @@ -using Empresa.App.Application.Exceptions; -using Empresa.App.Application.Features; -using Empresa.App.Application.Persistencia.user.commands.CreateUser; -using Empresa.App.Application.Persistencia.user.commands.DeleteUser; -using Empresa.App.Application.Persistencia.user.commands.UpdateUser; -using Empresa.App.Application.Persistencia.user.Queries.GetAllUser; -using Empresa.App.Application.Persistencia.user.Queries.GetUserById; -using Empresa.App.Application.Persistencia.user.Queries.GetUserByPassAndName; +using Mqtt.App.Application.Exceptions; +using Mqtt.App.Application.Features; +using Mqtt.App.Application.Persistencia.user.commands.CreateUser; +using Mqtt.App.Application.Persistencia.user.commands.DeleteUser; +using Mqtt.App.Application.Persistencia.user.commands.UpdateUser; +using Mqtt.App.Application.Persistencia.user.Queries.GetAllUser; +using Mqtt.App.Application.Persistencia.user.Queries.GetUserById; +using Mqtt.App.Application.Persistencia.user.Queries.GetUserByPassAndName; using FluentValidation; using Microsoft.AspNetCore.Authorization; @@ -14,7 +14,7 @@ using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; //using System.Web.Http; -namespace Empresa.App.api.Controllers +namespace Mqtt.App.api.Controllers { [Authorize] [Route("api/v1/User")] diff --git a/mqttApi/src/Mqtt.App.api/Controllers/mqttController.cs b/mqttApi/src/Mqtt.App.api/Controllers/mqttController.cs new file mode 100644 index 0000000..23b3205 --- /dev/null +++ b/mqttApi/src/Mqtt.App.api/Controllers/mqttController.cs @@ -0,0 +1,26 @@ +using FluentValidation; +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; +using Mqtt.App.Application.Features; +using Mqtt.App.Application.mqtt; +using Mqtt.App.Application.Persistencia.user.commands.CreateUser; + +namespace Mqtt.App.api.Controllers +{ + [Route("api/v1/mqtt")] + [ApiController] + public class mqttController : ControllerBase + { + [AllowAnonymous] + [HttpPost] + public async Task Create( + [FromBody] mqttPublish model, + [FromServices] IMqttAppService mqttService + ) + { + var data = await mqttService.Publica(model); + return StatusCode(StatusCodes.Status201Created, ResponseApiService.Response(StatusCodes.Status201Created, data)); + } + } +} diff --git a/mqttApi/src/Mqtt.App.api/DependencyInjectionService.cs b/mqttApi/src/Mqtt.App.api/DependencyInjectionService.cs index d4da147..25a740d 100644 --- a/mqttApi/src/Mqtt.App.api/DependencyInjectionService.cs +++ b/mqttApi/src/Mqtt.App.api/DependencyInjectionService.cs @@ -1,7 +1,7 @@ using Microsoft.OpenApi.Models; using System.Reflection; -namespace Empresa.App.api +namespace Mqtt.App.api { //clase de inyeccion de depèndencias public static class DependencyInjectionService @@ -13,7 +13,7 @@ namespace Empresa.App.api option.SwaggerDoc("v1", new OpenApiInfo { Version = "v1", - Title = "Empresa.App.api", + Title = "Mqtt.App.api", Description = "Plantilla generica para apis" }); //parametros de seguridad----------------------------------- diff --git a/mqttApi/src/Mqtt.App.api/Mqtt.App.api.csproj.user b/mqttApi/src/Mqtt.App.api/Mqtt.App.api.csproj.user index a578f85..4616530 100644 --- a/mqttApi/src/Mqtt.App.api/Mqtt.App.api.csproj.user +++ b/mqttApi/src/Mqtt.App.api/Mqtt.App.api.csproj.user @@ -2,5 +2,7 @@ F:\desa\v2022\PlantillaApiNet8\Empresa.app\src\Empresa.App.api\Properties\PublishProfiles\ParaDocker.pubxml + ApiControllerEmptyScaffolder + root/Common/Api \ No newline at end of file diff --git a/mqttApi/src/Mqtt.App.api/Mqtt.App.api.http b/mqttApi/src/Mqtt.App.api/Mqtt.App.api.http index 14a16c5..2853185 100644 --- a/mqttApi/src/Mqtt.App.api/Mqtt.App.api.http +++ b/mqttApi/src/Mqtt.App.api/Mqtt.App.api.http @@ -1,6 +1,6 @@ -@Empresa.App.api_HostAddress = http://localhost:5181 +@Mqtt.App.api_HostAddress = http://localhost:5181 -GET {{Empresa.App.api_HostAddress}}/weatherforecast/ +GET {{Mqtt.App.api_HostAddress}}/weatherforecast/ Accept: application/json ### diff --git a/mqttApi/src/Mqtt.App.api/Program.cs b/mqttApi/src/Mqtt.App.api/Program.cs index f1cd4ff..f017072 100644 --- a/mqttApi/src/Mqtt.App.api/Program.cs +++ b/mqttApi/src/Mqtt.App.api/Program.cs @@ -1,10 +1,10 @@ -using Empresa.App.api; -using Empresa.App.Application.Interfaces; -using Empresa.App.Common; -using Empresa.app.Persistencia; -using Empresa.App.External; -using Empresa.App.Application.Persistencia.user.commands.CreateUser; -using Empresa.App.Application; +using Mqtt.App.api; +using Mqtt.App.Application.Interfaces; +using Mqtt.App.Common; +using Mqtt.App.Persistencia; +using Mqtt.App.External; +using Mqtt.App.Application.Persistencia.user.commands.CreateUser; +using Mqtt.App.Application; var builder = WebApplication.CreateBuilder(args); diff --git a/mqttApi/src/Mqtt.app.Persistencia/Configurations/UserConfiguration.cs b/mqttApi/src/Mqtt.app.Persistencia/Configurations/UserConfiguration.cs index 3151392..cb3cc29 100644 --- a/mqttApi/src/Mqtt.app.Persistencia/Configurations/UserConfiguration.cs +++ b/mqttApi/src/Mqtt.app.Persistencia/Configurations/UserConfiguration.cs @@ -1,4 +1,4 @@ -using Empresa.App.Domain.Entities.User; +using Mqtt.App.Domain.Entities.User; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Metadata.Builders; using System; @@ -7,7 +7,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.app.Persistencia.Configurations +namespace Mqtt.App.Persistencia.Configurations { public class UserConfiguration { diff --git a/mqttApi/src/Mqtt.app.Persistencia/DependencyInjectionService.cs b/mqttApi/src/Mqtt.app.Persistencia/DependencyInjectionService.cs index cf11ae9..c06d569 100644 --- a/mqttApi/src/Mqtt.app.Persistencia/DependencyInjectionService.cs +++ b/mqttApi/src/Mqtt.app.Persistencia/DependencyInjectionService.cs @@ -1,5 +1,5 @@ -using Empresa.app.Persistencia.Services; -using Empresa.App.Application.Interfaces; +using Mqtt.App.Persistencia.Services; +using Mqtt.App.Application.Interfaces; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using System; @@ -9,7 +9,7 @@ using System.Text; using System.Threading.Tasks; using Microsoft.EntityFrameworkCore; using Microsoft.Data.SqlClient; -namespace Empresa.app.Persistencia +namespace Mqtt.App.Persistencia { public static class DependencyInjectionService { diff --git a/mqttApi/src/Mqtt.app.Persistencia/Services/PersistenciaService.cs b/mqttApi/src/Mqtt.app.Persistencia/Services/PersistenciaService.cs index 590a067..b93ca14 100644 --- a/mqttApi/src/Mqtt.app.Persistencia/Services/PersistenciaService.cs +++ b/mqttApi/src/Mqtt.app.Persistencia/Services/PersistenciaService.cs @@ -1,6 +1,6 @@ -using Empresa.app.Persistencia.Configurations; -using Empresa.App.Application.Interfaces; -using Empresa.App.Domain.Entities.User; +using Mqtt.App.Persistencia.Configurations; +using Mqtt.App.Application.Interfaces; +using Mqtt.App.Domain.Entities.User; using Microsoft.EntityFrameworkCore; using System; using System.Collections.Generic; @@ -8,7 +8,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Empresa.app.Persistencia.Services +namespace Mqtt.App.Persistencia.Services { public class PersistenciaService : DbContext, IPersistenciaService {