From c57f7729847a9293430c389ea172a9d8570da564 Mon Sep 17 00:00:00 2001
From: oscarvarcar <51308529+oscarvarcar@users.noreply.github.com>
Date: Tue, 3 Dec 2024 12:33:07 -0700
Subject: [PATCH] nuevos servicios
---
pom.xml | 18 ++
.../com/crov/controllers/AuthController.java | 23 ++
.../SeguridadLicenciasController.java | 199 ++++++++++++++++++
.../com/crov/crovWSTotal/EncriptadorAES.java | 74 +++++++
.../java/com/crov/crovWSTotal/Utilerias.java | 32 +++
.../crovWSTotal/config/SecurityConfig.java | 37 ----
.../java/com/crov/models/ActivationKey.java | 117 ++++++++++
src/main/java/com/crov/models/Empresa.java | 48 +++++
.../java/com/crov/models/EmpresaUser.java | 109 ++++++++++
.../java/com/crov/models/PersonSoftware.java | 183 ++++++++++++++++
src/main/java/com/crov/models/Software.java | 155 ++++++++++++++
src/main/java/com/crov/models/Usuario.java | 2 +-
.../java/com/crov/models/UsuarioModel.java | 152 +++++++++++++
.../repositories/ActivationKeyRepository.java | 33 +++
.../PersonSoftwareRepository.java | 13 ++
.../crov/repositories/SoftwareRepository.java | 21 ++
.../crov/requests/PersonSoftwareRequest.java | 85 ++++++++
.../crov/services/ActivationKeyService.java | 35 +++
.../java/com/crov/services/AuthService.java | 23 ++
.../com/crov/services/JwtRequestFilter.java | 60 ++++++
.../java/com/crov/services/JwtTokenUtil.java | 34 +++
.../crov/services/PersonSoftwareService.java | 19 ++
.../com/crov/services/SecurityConfig.java | 45 ++++
.../com/crov/services/SoftwareService.java | 31 +++
src/main/resources/application.properties | 6 +-
25 files changed, 1514 insertions(+), 40 deletions(-)
create mode 100644 src/main/java/com/crov/controllers/AuthController.java
create mode 100644 src/main/java/com/crov/controllers/SeguridadLicenciasController.java
create mode 100644 src/main/java/com/crov/crovWSTotal/EncriptadorAES.java
create mode 100644 src/main/java/com/crov/crovWSTotal/Utilerias.java
delete mode 100644 src/main/java/com/crov/crovWSTotal/config/SecurityConfig.java
create mode 100644 src/main/java/com/crov/models/ActivationKey.java
create mode 100644 src/main/java/com/crov/models/Empresa.java
create mode 100644 src/main/java/com/crov/models/EmpresaUser.java
create mode 100644 src/main/java/com/crov/models/PersonSoftware.java
create mode 100644 src/main/java/com/crov/models/Software.java
create mode 100644 src/main/java/com/crov/models/UsuarioModel.java
create mode 100644 src/main/java/com/crov/repositories/ActivationKeyRepository.java
create mode 100644 src/main/java/com/crov/repositories/PersonSoftwareRepository.java
create mode 100644 src/main/java/com/crov/repositories/SoftwareRepository.java
create mode 100644 src/main/java/com/crov/requests/PersonSoftwareRequest.java
create mode 100644 src/main/java/com/crov/services/ActivationKeyService.java
create mode 100644 src/main/java/com/crov/services/AuthService.java
create mode 100644 src/main/java/com/crov/services/JwtRequestFilter.java
create mode 100644 src/main/java/com/crov/services/JwtTokenUtil.java
create mode 100644 src/main/java/com/crov/services/PersonSoftwareService.java
create mode 100644 src/main/java/com/crov/services/SecurityConfig.java
create mode 100644 src/main/java/com/crov/services/SoftwareService.java
diff --git a/pom.xml b/pom.xml
index 8136386..075b2eb 100644
--- a/pom.xml
+++ b/pom.xml
@@ -90,6 +90,24 @@
org.springframework.boot
spring-boot-starter-validation
+
+ io.jsonwebtoken
+ jjwt-api
+ 0.11.5
+
+
+ io.jsonwebtoken
+ jjwt-impl
+ 0.11.5
+ runtime
+
+
+ io.jsonwebtoken
+ jjwt-jackson
+ 0.11.5
+ runtime
+
+
diff --git a/src/main/java/com/crov/controllers/AuthController.java b/src/main/java/com/crov/controllers/AuthController.java
new file mode 100644
index 0000000..1f1f956
--- /dev/null
+++ b/src/main/java/com/crov/controllers/AuthController.java
@@ -0,0 +1,23 @@
+package com.crov.controllers;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.crov.services.AuthService;
+
+@RestController
+@RequestMapping("/api/auth")
+public class AuthController {
+
+ @Autowired
+ private AuthService authService;
+
+ @PostMapping("/token")
+ public ResponseEntity login(@RequestParam String username, @RequestParam String password) {
+ return ResponseEntity.ok(authService.login(username, password));
+ }
+}
diff --git a/src/main/java/com/crov/controllers/SeguridadLicenciasController.java b/src/main/java/com/crov/controllers/SeguridadLicenciasController.java
new file mode 100644
index 0000000..792f05f
--- /dev/null
+++ b/src/main/java/com/crov/controllers/SeguridadLicenciasController.java
@@ -0,0 +1,199 @@
+package com.crov.controllers;
+
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.UUID;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.CrossOrigin;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.crov.crovWSTotal.EncriptadorAES;
+import com.crov.crovWSTotal.Utilerias;
+import com.crov.models.ActivationKey;
+import com.crov.models.ActivationKey.ActiveKey;
+import com.crov.models.ActivationKey.TipoKey;
+import com.crov.models.PersonSoftware;
+import com.crov.models.PersonSoftware.ActivePerson;
+import com.crov.models.PersonSoftware.BlackListPerson;
+import com.crov.models.Software;
+import com.crov.models.Software.ActiveSofware;
+import com.crov.requests.PersonSoftwareRequest;
+import com.crov.services.ActivationKeyService;
+import com.crov.services.PersonSoftwareService;
+import com.crov.services.SoftwareService;
+
+@RestController
+@CrossOrigin(origins = "http://localhost:5173")
+@RequestMapping("/api/seguridadLicencias")
+public class SeguridadLicenciasController {
+
+ private static final String LICENCIA_DEMO = "0db513ee-7757-11ed-a1eb-0242ac120002";
+
+ @Autowired
+ ActivationKeyService actKeyServ;
+
+ @Autowired
+ SoftwareService softwareServ;
+
+ @Autowired
+ PersonSoftwareService personServ;
+
+ @PostMapping("/registroLicencia")
+ public ResponseEntity