diff --git a/.classpath b/.classpath
index 607384f..6e6c2a0 100644
--- a/.classpath
+++ b/.classpath
@@ -20,7 +20,7 @@
-
+
diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs
index 0fb1240..5b59d8a 100644
--- a/.settings/org.eclipse.jdt.core.prefs
+++ b/.settings/org.eclipse.jdt.core.prefs
@@ -42,9 +42,9 @@ org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.lambda.genericSignature=do not generate
org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
org.eclipse.jdt.core.compiler.codegen.shareCommonFinallyBlocks=disabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.7
+org.eclipse.jdt.core.compiler.compliance=1.8
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
@@ -169,7 +169,7 @@ org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
org.eclipse.jdt.core.compiler.processAnnotations=disabled
org.eclipse.jdt.core.compiler.release=disabled
-org.eclipse.jdt.core.compiler.source=1.7
+org.eclipse.jdt.core.compiler.source=1.8
org.eclipse.jdt.core.compiler.storeAnnotations=disabled
org.eclipse.jdt.core.compiler.taskCaseSensitive=enabled
org.eclipse.jdt.core.compiler.taskPriorities=NORMAL,HIGH,NORMAL
diff --git a/README.md b/README.md
index 222d414..2fd63f4 100644
--- a/README.md
+++ b/README.md
@@ -508,19 +508,34 @@ public class ExampleReadme {
try {
//Intancia del servicio de Consulta de saldo y autenticación
- SWBalanceAccountService sdk = new SWBalanceAccountService("user", "password", "https://services.test.sw.com.mx");
+ SWBalanceAccountService sdk = new SWBalanceAccountService("user", "password", "https://services.test.sw.com.mx","https://api.test.sw.com.mx" );
BalanceAcctResponse response = null;
response = (BalanceAcctResponse) sdk.GetBalanceAccount();
//Imprimimos los datos de la respuesta que se obtuvo
- System.out.println(response.Status);
- System.out.println(response.timbresAsignados);
- System.out.println(response.HttpStatusCode);
- System.out.println(response.fechaExpiracion);
- System.out.println(response.idClienteUsuario);
- System.out.println(response.idSaldoCliente);
- System.out.println(response.saldoTimbres);
- System.out.println(response.timbresUtilizados);
- System.out.println(response.unlimited);
+ System.out.println(response.Status);
+ System.out.println(response.HttpStatusCode);
+ System.out.println(response.idUserBalance);
+ System.out.println(response.idUser);
+ System.out.println(response.stampsBalance);
+ System.out.println(response.stampsUsed);
+ System.out.println(response.expirationDate);
+ System.out.println(response.isUnlimited);
+ System.out.println(response.stampsAssigned);
+ if (response.lastTransaction != null) {
+ System.out.println("Folio: " + response.lastTransaction.folio);
+ System.out.println("ID Usuario: " + response.lastTransaction.idUser);
+ System.out.println("ID Usuario Receptor: " + response.lastTransaction.idUserReceiver);
+ System.out.println("Nombre Receptor: " + response.lastTransaction.nameReceiver);
+ System.out.println("Stamps In: " + response.lastTransaction.stampsIn);
+ System.out.println("Stamps Out: "
+ + (response.lastTransaction.stampsOut != null ? response.lastTransaction.stampsOut : "null"));
+ System.out.println("Stamps Current: " + response.lastTransaction.stampsCurrent);
+ System.out.println("Comentario: " + response.lastTransaction.comment);
+ System.out.println("Fecha: " + response.lastTransaction.date);
+ System.out.println("Email Enviado: " + response.lastTransaction.isEmailSent);
+ } else {
+ System.out.println("No hay transacción disponible.");
+ }
//En caso de obtener error, este puede obtenerse de los siguientes campos
System.out.println(response.message);
System.out.println(response.messageDetail);
@@ -547,6 +562,7 @@ Consulta de timbres
Este método recibe los siguientes parametros:
* Usuario y contraseña o Token
* Url Servicios SW
+* Url APIs SW
**Ejemplo de consumo de la libreria para consultar el saldo utilizando Token**
@@ -567,21 +583,35 @@ public class ExampleReadme {
try {
//Intancia del servicio de Consulta de saldo y autenticación
- SWBalanceAccountService sdk = new SWBalanceAccountService("T2lYQ0t4L0R...", "https://services.test.sw.com.mx");
+ SWBalanceAccountService sdk = new SWBalanceAccountService("T2lYQ0t4L0R...", "https://services.test.sw.com.mx","https://api.test.sw.com.mx");
BalanceAcctResponse response = null;
response = (BalanceAcctResponse) sdk.GetBalanceAccount();
//Imprimimos los datos de la respuesta que se obtuvo
- System.out.println(response.Status);
- System.out.println(response.timbresAsignados);
- System.out.println(response.HttpStatusCode);
- System.out.println(response.fechaExpiracion);
- System.out.println(response.idClienteUsuario);
- System.out.println(response.idSaldoCliente);
- System.out.println(response.saldoTimbres);
- System.out.println(response.timbresUtilizados);
- System.out.println(response.unlimited);
-
+ System.out.println(response.Status);
+ System.out.println(response.HttpStatusCode);
+ System.out.println(response.idUserBalance);
+ System.out.println(response.idUser);
+ System.out.println(response.stampsBalance);
+ System.out.println(response.stampsUsed);
+ System.out.println(response.expirationDate);
+ System.out.println(response.isUnlimited);
+ System.out.println(response.stampsAssigned);
+ if (response.lastTransaction != null) {
+ System.out.println("Folio: " + response.lastTransaction.folio);
+ System.out.println("ID Usuario: " + response.lastTransaction.idUser);
+ System.out.println("ID Usuario Receptor: " + response.lastTransaction.idUserReceiver);
+ System.out.println("Nombre Receptor: " + response.lastTransaction.nameReceiver);
+ System.out.println("Stamps In: " + response.lastTransaction.stampsIn);
+ System.out.println("Stamps Out: "
+ + (response.lastTransaction.stampsOut != null ? response.lastTransaction.stampsOut : "null"));
+ System.out.println("Stamps Current: " + response.lastTransaction.stampsCurrent);
+ System.out.println("Comentario: " + response.lastTransaction.comment);
+ System.out.println("Fecha: " + response.lastTransaction.date);
+ System.out.println("Email Enviado: " + response.lastTransaction.isEmailSent);
+ } else {
+ System.out.println("No hay transacción disponible.");
+ }
//En caso de obtener error, este puede obtenerse de los siguientes campos
System.out.println(response.message);
System.out.println(response.messageDetail);
@@ -1727,14 +1757,14 @@ Crear Usuario
Método para crear un nuevo usuario.
Este metodo recibe los siguientes parametros:
-- Email
- Nombre
-- Password
- RFC
-- Profile
+- Email
- Stamps
-- Unlimited
-- Active
+- isUnlimited
+- Contraseña
+- Email de notificaciones
+- Numero de telefono
**Ejemplo de consumo de la libreria para crear una cuenta nueva**
@@ -1757,10 +1787,9 @@ public class ExampleReadme {
//Creamos la instancia del servicio y nos autenticamos con user y password
SWAccountUserService app = new SWAccountUserService ("user", "password", "https://services.test.sw.com.mx","https://api.test.sw.com.mx",null, 0)
ccountUserResponse response = null;
- response = (AccountUserResponse) app.CrearUsuario("usuario_nuevo", "password_nuevo", "Prueba SW Java 1.6", "CACX7605101P8", 20, AccountUserProfiles.Hijo, false, true);
+ response = (AccountUserResponse) app.CrearUsuario("usuario_nuevo", "password_nuevo", "Prueba SW Java 1.6", "CACX7605101P8", 20, "0000000000", false, "notification_email@gmail.com");
//Imprimimos los datos de la solicitud
System.out.println(response.HttpStatusCode);
- System.out.println(response.data);
System.out.println(response.Status);
//En caso de obtener un error, este puede obtenerse de los campos
System.out.println(response.message);
@@ -1783,7 +1812,8 @@ Este metodo recibe los siguientes parametros:
- Nombre
- RFC
- Unlimited
-- Active
+- Numero de telefono
+- Correo para notificaciones
**Ejemplo de consumo de la libreria para modificar una cuenta**
@@ -1806,10 +1836,9 @@ public class ExampleReadme {
SWAccountUserService app = new SWAccountUserService ("user", "password", "https://services.test.sw.com.mx","https://api.test.sw.com.mx",null, 0)
ccountUserResponse response = null;
response = (AccountUserResponse) app.ActualizarUsuario(UUID.fromString("be2a859c-cd5f-42b5-b35d-f065b3dfecac4"),
- "Prueba", "RAQÑ7701212M3", false, true);
+ "Prueba", "RAQÑ7701212M3", false, "0000000000", "correo@email.com");
//Imprimimos los datos de la solicitud
System.out.println(response.HttpStatusCode);
- System.out.println(response.data);
System.out.println(response.Status);
//En caso de obtener un error, este puede obtenerse de los campos
System.out.println(response.message);
@@ -1853,7 +1882,6 @@ public class ExampleReadme {
response = (AccountUserResponse) app.EliminarUsuario(UUID.fromString("be2a859c-cd5f-42b5-b35d-f065b3dfecac4"));
//Imprimimos los datos de la solicitud
System.out.println(response.HttpStatusCode);
- System.out.println(response.data);
System.out.println(response.Status);
//En caso de obtener un error, este puede obtenerse de los campos
System.out.println(response.message);
@@ -1871,11 +1899,9 @@ Consultar todos los usuarios de una cuenta
Método para consultar todos las cuentas hijas.
-Este metodo muestra los datos de la consulta de forma paginada, por ello se debe agregar:
-- Page (numero de página a consultar)
-- PageSize (numero de registros por página)
+Este metodo muestra los datos de la consulta de las cuentas hijas de la cuenta que se coloca como autenticación.
-**Ejemplo de consumo de la libreria para Consultar todos los Certificados**
+**Ejemplo de consumo de la libreria para Consultar todos las cuentas hija**
```java
package com.mycompany.examplereadme;
@@ -1897,21 +1923,20 @@ public class ExampleReadme {
//Creamos la instancia del servicio y nos autenticamos con user y password
SWAccountUserService app = new SWAccountUserService ("user", "password", "https://services.test.sw.com.mx","https://api.test.sw.com.mx",null, 0)
AccountUserResponse> response = null;
- response = (AccountUserResponse>) app.ObtenerUsuarios(1, 10);
+ response = (AccountUserResponse>) app.ObtenerUsuariosHijo();
System.out.println(response.HttpStatusCode);
List lista = response.data;
if (lista != null) {
for (int i = 0; i < lista.size(); i++) {
DataAccountUser dato = lista.get(i);
- System.out.println("Email: " + dato.email);
- System.out.println("Password: " + dato.password);
+ System.out.println("Email: " + dato.email);
System.out.println("Nombre: " + dato.name);
System.out.println("Perfil: " + dato.profile);
System.out.println("Stamps: " + dato.stamps);
System.out.println("idUsuario: " + dato.idUsuario);
- System.out.println("Rfc: " + dato.apellidoPaterno);
- System.out.println("Ilimitado: " + dato.unlimited);
- System.out.println("Activo: " + dato.activo + "\n");
+ System.out.println("Rfc: " + dato.taxId);
+ System.out.println("Ilimitado: " + dato.isUnlimited);
+ System.out.println("Activo: " + dato.isActive + "\n");
}
}
//Imprimimos los datos de la solicitud
@@ -1931,7 +1956,7 @@ public class ExampleReadme {
-Consultar certificados por ID Usuario
+Consultar usuarios por ID Usuario
Método para consultar la informacion de una cuenta.
@@ -1959,7 +1984,7 @@ public class ExampleReadme {
//Creamos la instancia del servicio y nos autenticamos con user y password
SWAccountUserService app = new SWAccountUserService ("user", "password", "https://services.test.sw.com.mx","https://api.test.sw.com.mx",null, 0)
AccountUserResponse response = null;
- response = (AccountUserResponse) app.ObtenerInfoUsuarioId(UUID.fromString("be2a859c-cd5f-42b5-b35d-f058b3a9aac4"));
+ response = (AccountUserResponse) app.ObtenerUsuarioPorId(UUID.fromString("be2a859c-cd5f-42b5-b35d-f058b3a9aac4"));
DataAccountUser usuario = response.data;
if (usuario != null) {
System.out.println("Email: " + usuario.email);
@@ -1989,12 +2014,14 @@ public class ExampleReadme {
-Consultar certificados por token
+Consultar usuarios por Email
-Método para obtener la informacion de una cuenta por el medio de autenticacion ya sea por token o usuario y contraseña.
+Método para consultar la informacion de las cuentas por email.
+Este metodo requiere sólo un parametro:
+- Email
-**Ejemplo de consumo de la libreria para Consultar la informacion de una cuenta**
+**Ejemplo de consumo de la libreria para Consultar la informacion de las cuentas con un mismo email o que coincidan**
```java
package com.mycompany.examplereadme;
@@ -2015,7 +2042,7 @@ public class ExampleReadme {
//Creamos la instancia del servicio y nos autenticamos con user y password
SWAccountUserService app = new SWAccountUserService ("user", "password", "https://services.test.sw.com.mx","https://api.test.sw.com.mx",null, 0)
AccountUserResponse response = null;
- response = (AccountUserResponse) app.ObtenerInfoUsuario();
+ response = (AccountUserResponse) app.ObtenerUsuarioPorEmail("email@correo.com");
DataAccountUser usuario = response.data;
if (usuario != null) {
System.out.println("Email: " + usuario.email);
@@ -2039,6 +2066,121 @@ public class ExampleReadme {
}
}
}
+
+```
+
+
+
+
+Consultar usuarios por RFC Usuario
+
+Método para consultar la informacion de los usuarios que contengan el mismo RFC.
+
+Este metodo requiere sólo un parametro:
+- RFC
+
+**Ejemplo de consumo de la libreria para Consultar la informacion de una cuenta**
+
+```java
+package com.mycompany.examplereadme;
+
+import Exceptions.AuthException;
+import Exceptions.GeneralException;
+import Services.Account.AccountUser.SWAccountUserService;
+import Utils.Responses.Account.AccountUser.DataAccountUser;
+import Utils.Responses.Account.AccountUserDataAccountUserResponse;
+import java.io.IOException;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+
+public class ExampleReadme {
+
+ public static void main(String[] args) {
+ try {
+ //Creamos la instancia del servicio y nos autenticamos con user y password
+ SWAccountUserService app = new SWAccountUserService ("user", "password", "https://services.test.sw.com.mx","https://api.test.sw.com.mx",null, 0)
+ AccountUserResponse response = null;
+ response = (AccountUserResponse) app.ObtenerUsuarioPorRfc("EKU9003173C9");
+ DataAccountUser usuario = response.data;
+ if (usuario != null) {
+ System.out.println("Email: " + dato.email);
+ System.out.println("Nombre: " + dato.name);
+ System.out.println("Perfil: " + dato.profile);
+ System.out.println("Stamps: " + dato.stamps);
+ System.out.println("idUsuario: " + dato.idUsuario);
+ System.out.println("Rfc: " + dato.taxId);
+ System.out.println("Ilimitado: " + dato.isUnlimited);
+ System.out.println("Activo: " + dato.isActive + "\n");
+ }
+ //Imprimimos los datos de la solicitud
+ System.out.println(response.HttpStatusCode);
+ System.out.println(response.Status);
+ //En caso de obtener un error, este puede obtenerse de los campos
+ System.out.println(response.message);
+ System.out.println(response.messageDetail);
+ } catch (AuthException | GeneralException | IOException ex) {
+ Logger.getLogger(ExampleReadme.class.getName()).log(Level.SEVERE, null, ex);
+ }
+ }
+}
+
+```
+
+
+
+
+Consultar usuarios activos
+
+Método para consultar la informacion de los usuarios que esten activos o no.
+
+Este metodo requiere sólo un parametro:
+- true o false
+
+**Ejemplo de consumo de la libreria para Consultar la informacion de los usuarios activos**
+
+```java
+package com.mycompany.examplereadme;
+
+import Exceptions.AuthException;
+import Exceptions.GeneralException;
+import Services.Account.AccountUser.SWAccountUserService;
+import Utils.Responses.Account.AccountUser.DataAccountUser;
+import Utils.Responses.Account.AccountUserDataAccountUserResponse;
+import java.io.IOException;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+
+public class ExampleReadme {
+
+ public static void main(String[] args) {
+ try {
+ //Creamos la instancia del servicio y nos autenticamos con user y password
+ SWAccountUserService app = new SWAccountUserService ("user", "password", "https://services.test.sw.com.mx","https://api.test.sw.com.mx",null, 0)
+ AccountUserResponse response = null;
+ response = (AccountUserResponse) app.ObtenerUsuariosActivos(false); // Si quieres los activos coloca "true"
+ DataAccountUser usuario = response.data;
+ if (usuario != null) {
+ System.out.println("Email: " + dato.email);
+ System.out.println("Nombre: " + dato.name);
+ System.out.println("Perfil: " + dato.profile);
+ System.out.println("Stamps: " + dato.stamps);
+ System.out.println("idUsuario: " + dato.idUsuario);
+ System.out.println("Rfc: " + dato.taxId);
+ System.out.println("Ilimitado: " + dato.isUnlimited);
+ System.out.println("Activo: " + dato.isActive + "\n");
+ }
+ //Imprimimos los datos de la solicitud
+ System.out.println(response.HttpStatusCode);
+ System.out.println(response.Status);
+ //En caso de obtener un error, este puede obtenerse de los campos
+ System.out.println(response.message);
+ System.out.println(response.messageDetail);
+ } catch (AuthException | GeneralException | IOException ex) {
+ Logger.getLogger(ExampleReadme.class.getName()).log(Level.SEVERE, null, ex);
+ }
+ }
+}
+
```
diff --git a/pom.xml b/pom.xml
index 832a21b..4233d73 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
ISO-8859-1
SW-JAVA
- 1.0.19.4
+ 1.0.21.1
jar
https://github.com/lunasoft/sw-sdk-java
@@ -89,8 +89,8 @@
maven-compiler-plugin
3.8.1
-
- 1.7
+
+ 1.8
@@ -139,29 +139,29 @@
- junit
- junit
- 4.13.1
+ org.junit.jupiter
+ junit-jupiter-api
+ 5.8.1
- org.apache.httpcomponents
- httpclient
- 4.5.13
+ org.apache.httpcomponents.client5
+ httpclient5
+ 5.3.1
org.apache.httpcomponents
httpasyncclient
- 4.1.4
+ 4.1.5
org.apache.httpcomponents
httpmime
- 4.5.6
+ 4.5.14
org.json
json
- 20180130
+ 20240303
com.googlecode.juniversalchardet
@@ -176,12 +176,12 @@
jakarta.xml.ws
jakarta.xml.ws-api
- 2.3.3
-
+ 4.0.2
+
com.sun.xml.messaging.saaj
saaj-impl
- 1.5.1
+ 3.0.4
mx.com.sw.services
@@ -191,7 +191,7 @@
com.google.code.gson
gson
- 2.8.9
+ 2.11.0
com.googlecode.json-simple
diff --git a/src/main/java/Services/Account/AccountUser/SWAccountUserService.java b/src/main/java/Services/Account/AccountUser/SWAccountUserService.java
index 0577227..47c7514 100644
--- a/src/main/java/Services/Account/AccountUser/SWAccountUserService.java
+++ b/src/main/java/Services/Account/AccountUser/SWAccountUserService.java
@@ -10,7 +10,6 @@
import Exceptions.AuthException;
import Exceptions.GeneralException;
import Services.SWService;
-import Utils.Helpers.EnumAccountUser.AccountUserProfiles;
import Utils.Requests.Account.AccountUser.AccountUserOptionsRequest;
import Utils.Requests.Account.AccountUser.AccountUserRequest;
import Utils.Responses.IResponse;
@@ -22,12 +21,13 @@
public class SWAccountUserService extends SWService {
/**
- * Constructor que requiere credenciales de autenticación para el servicio.
+ * Constructor que inicializa el servicio utilizando credenciales de
+ * autenticación.
*
* @param user Nombre de usuario para la autenticación.
* @param password Contraseña para la autenticación.
* @param URI URI base para la autenticación.
- * @param URIAPI URI de la API para el servicio.
+ * @param URIAPI URI base para la autenticación.
* @param proxyHost Host del proxy (puede ser nulo).
* @param proxyPort Puerto del proxy.
* @throws AuthException Si la autenticación falla.
@@ -38,7 +38,7 @@ public SWAccountUserService(String user, String password, String URI, String URI
}
/**
- * Constructor que utiliza un token de autenticación para el servicio.
+ * Constructor que inicializa el servicio utilizando un token de autenticación.
*
* @param token Token de autenticación.
* @param URIAPI URI de la API para el servicio.
@@ -52,48 +52,47 @@ public SWAccountUserService(String token, String URIAPI, String proxyHost, int p
/**
* Crea un nuevo usuario de cuenta con la información proporcionada.
*
- * @param email Correo electrónico del nuevo usuario.
- * @param passwordUser Contraseña del nuevo usuario.
- * @param name Nombre del nuevo usuario.
- * @param rfc RFC del nuevo usuario.
- * @param stamps Número de timbres del nuevo usuario.
- * @param profile Perfil del nuevo usuario.
- * @param unlimited Indica si el usuario tiene acceso ilimitado.
- * @param active Indica si el usuario está activo.
+ * @param email Correo electrónico del nuevo usuario.
+ * @param passwordUser Contraseña del nuevo usuario.
+ * @param name Nombre del nuevo usuario.
+ * @param rfc RFC del nuevo usuario.
+ * @param stamps Número de timbres asignados al usuario.
+ * @param phone Número telefónico del usuario.
+ * @param unlimited Indica si el usuario tiene acceso ilimitado.
+ * @param notificationEmail Correo electrónico para notificaciones.
* @return IResponse con el resultado de la operación.
* @throws AuthException Si la autenticación falla.
* @throws GeneralException Si ocurre un error general.
* @throws IOException Si hay un error de entrada/salida.
*/
-
public IResponse CrearUsuario(String email, String passwordUser, String name, String rfc, int stamps,
- AccountUserProfiles profile, boolean unlimited, boolean active)
+ String phone, boolean unlimited, String notificationEmail)
throws AuthException, GeneralException, IOException {
AccountUserOptionsRequest settings = AccountUserOptionsRequest.crearUsuarioRequest(getToken(), getURIAPI(),
- email, passwordUser,
- name, rfc, stamps, profile, unlimited, active, getProxyHost(), getProxyPort());
+ email, passwordUser, name, rfc, stamps, phone, unlimited, notificationEmail, getProxyHost(),
+ getProxyPort());
return AccountUserRequest.createCreateUserRequest(settings);
}
/**
* Actualiza la información de un usuario existente.
*
- * @param idUser Identificador único del usuario a actualizar.
- * @param name Nuevo nombre del usuario.
- * @param rfc Nuevo RFC del usuario.
- * @param unlimited Indica si el usuario tiene acceso ilimitado.
- * @param active Indica si el usuario está activo.
+ * @param idUser Identificador único del usuario a actualizar.
+ * @param name Nuevo nombre del usuario.
+ * @param rfc Nuevo RFC del usuario.
+ * @param unlimited Indica si el usuario tiene acceso ilimitado.
+ * @param phone Nuevo número telefónico.
+ * @param notificationEmail Nuevo correo para notificaciones.
* @return IResponse con el resultado de la operación.
* @throws AuthException Si la autenticación falla.
* @throws GeneralException Si ocurre un error general.
* @throws IOException Si hay un error de entrada/salida.
*/
- public IResponse ActualizarUsuario(UUID idUser, String name, String rfc, boolean unlimited, boolean active)
+ public IResponse ActualizarUsuario(UUID idUser, String name, String rfc, boolean unlimited, String phone,
+ String notificationEmail)
throws AuthException, GeneralException, IOException {
-
AccountUserOptionsRequest settings = AccountUserOptionsRequest.actualizarUsuarioRequest(getToken(), getURIAPI(),
- idUser, name, rfc,
- unlimited, active, getProxyHost(), getProxyPort());
+ idUser, name, rfc, unlimited, phone, notificationEmail, getProxyHost(), getProxyPort());
return AccountUserRequest.createUpdateUserRequest(settings, idUser);
}
@@ -113,51 +112,76 @@ public IResponse EliminarUsuario(UUID idUser) throws AuthException, GeneralExcep
}
/**
- * Obtiene la lista de usuarios paginada.
+ * Obtiene la lista de usuarios existentes.
*
- * @param page Número de página.
- * @param pageSize Número usuarios por página.
* @return IResponse con la lista de usuarios.
* @throws AuthException Si la autenticación falla.
* @throws GeneralException Si ocurre un error general.
* @throws IOException Si hay un error de entrada/salida.
*/
- public IResponse ObtenerUsuarios(int page, int pageSize) throws AuthException, GeneralException, IOException {
-
+ public IResponse ObtenerUsuariosHijo() throws AuthException, GeneralException, IOException {
AccountUserOptionsRequest settings = AccountUserOptionsRequest.obtenerUsuariosRequest(getToken(), getURIAPI(),
- page, pageSize,
getProxyHost(), getProxyPort());
- return AccountUserRequest.createGetAllUsersRequest(settings, page, pageSize);
+ return AccountUserRequest.createGetAllUsersRequest(settings);
}
/**
- * Obtiene la información del usuario actual.
+ * Obtiene información de un usuario específico por su ID.
*
+ * @param idUser Identificador único del usuario.
* @return IResponse con la información del usuario.
* @throws AuthException Si la autenticación falla.
* @throws GeneralException Si ocurre un error general.
* @throws IOException Si hay un error de entrada/salida.
*/
- public IResponse ObtenerInfoUsuario() throws AuthException, GeneralException, IOException {
+ public IResponse ObtenerUsuarioPorId(UUID idUser) throws AuthException, GeneralException, IOException {
AccountUserOptionsRequest settings = AccountUserOptionsRequest.obtenerUsuarioPorTokenRequest(getToken(),
- getURIAPI(), getProxyHost(),
- getProxyPort());
- return AccountUserRequest.createGetUserRequest(settings);
+ getURIAPI(), getProxyHost(), getProxyPort());
+ return AccountUserRequest.createGetUserById(settings, idUser);
}
/**
- * Obtiene la información de un usuario específico por su identificador ú
- * ico.
+ * Obtiene un usuario por su RFC.
*
- * @param idUser Identificador único del usuario.
+ * @param rfc RFC del usuario.
* @return IResponse con la información del usuario.
* @throws AuthException Si la autenticación falla.
* @throws GeneralException Si ocurre un error general.
* @throws IOException Si hay un error de entrada/salida.
*/
- public IResponse ObtenerInfoUsuarioId(UUID idUser) throws AuthException, GeneralException, IOException {
- AccountUserOptionsRequest settings = AccountUserOptionsRequest.usuarioIdRequest(getToken(), getURIAPI(), idUser,
- getProxyHost(), getProxyPort());
- return AccountUserRequest.createGetUserIdRequest(settings, idUser);
+ public IResponse ObtenerUsuarioPorRfc(String rfc) throws AuthException, GeneralException, IOException {
+ AccountUserOptionsRequest settings = AccountUserOptionsRequest.obtenerUsuarioPorTokenRequest(getToken(),
+ getURIAPI(), getProxyHost(), getProxyPort());
+ return AccountUserRequest.createGetUserByRfc(settings, rfc);
+ }
+
+ /**
+ * Obtiene un usuario por su correo electrónico.
+ *
+ * @param email Correo electrónico del usuario.
+ * @return IResponse con la información del usuario.
+ * @throws AuthException Si la autenticación falla.
+ * @throws GeneralException Si ocurre un error general.
+ * @throws IOException Si hay un error de entrada/salida.
+ */
+ public IResponse ObtenerUsuarioPorEmail(String email) throws AuthException, GeneralException, IOException {
+ AccountUserOptionsRequest settings = AccountUserOptionsRequest.obtenerUsuarioPorTokenRequest(getToken(),
+ getURIAPI(), getProxyHost(), getProxyPort());
+ return AccountUserRequest.createGetUserByEmail(settings, email);
+ }
+
+ /**
+ * Obtiene los usuarios activos.
+ *
+ * @param isActive Indica si se buscan usuarios activos o inactivos.
+ * @return IResponse con la lista de usuarios.
+ * @throws AuthException Si la autenticación falla.
+ * @throws GeneralException Si ocurre un error general.
+ * @throws IOException Si hay un error de entrada/salida.
+ */
+ public IResponse ObtenerUsuariosActivos(Boolean isActive) throws AuthException, GeneralException, IOException {
+ AccountUserOptionsRequest settings = AccountUserOptionsRequest.obtenerUsuarioPorTokenRequest(getToken(),
+ getURIAPI(), getProxyHost(), getProxyPort());
+ return AccountUserRequest.createGetUserByActive(settings, isActive);
}
}
diff --git a/src/main/java/Services/BalanceAccount/SWBalanceAccountService.java b/src/main/java/Services/BalanceAccount/SWBalanceAccountService.java
index 1ed9a15..57ed7e3 100644
--- a/src/main/java/Services/BalanceAccount/SWBalanceAccountService.java
+++ b/src/main/java/Services/BalanceAccount/SWBalanceAccountService.java
@@ -22,22 +22,12 @@ public class SWBalanceAccountService extends SWService {
/**
* Constructor que requiere credenciales de autenticación para el servicio.
- * @param user Nombre de usuario para la autenticación.
- * @param password Contraseña para la autenticación.
- * @param URI URI base para la autenticación.
- * @throws AuthException Si la autenticación falla.
- */
- public SWBalanceAccountService(String user, String password, String URI) throws AuthException {
- super(user, password, URI);
- }
-
- /**
- * Constructor que utiliza un token de autenticación para el servicio.
- * @param user Nombre de usuario para la autenticación.
- * @param password Contraseña para la autenticación.
- * @param URI URI base para la autenticación.
- * @param URIAPI URI de la API para el servicio.
- * @throws AuthException Si la autenticación falla.
+ *
+ * @param user Nombre de usuario para la autenticación.
+ * @param password Contraseña para la autenticación.
+ * @param URI URI base para la autenticación.
+ * @param URIAPI URI base para la autenticación.
+ * @throws AuthException Si la autenticación falla.
*/
public SWBalanceAccountService(String user, String password, String URI, String URIAPI) throws AuthException {
super(user, password, URI, URIAPI);
@@ -45,80 +35,67 @@ public SWBalanceAccountService(String user, String password, String URI, String
/**
* Constructor que utiliza un token de autenticación para el servicio.
- * @param token Token de autenticación.
- * @param URI URI base para la autenticación.
- * @throws AuthException Si la autenticación falla.
- */
- public SWBalanceAccountService(String token, String URI) throws AuthException {
- super(token, URI);
- }
-
- /**
- * Constructor que utiliza un token de autenticación para el servicio.
- * @param user Nombre de usuario para la autenticación.
- * @param password Contraseña para la autenticación.
- * @param URI URI base para la autenticación.
- * @param proxyHost Host del proxy (puede ser nulo).
- * @param proxyPort Puerto del proxy.
- * @throws AuthException Si la autenticación falla.
- */
- public SWBalanceAccountService(String user, String password, String URI, String proxyHost, int proxyPort) throws AuthException {
- super(user, password, URI, proxyHost, proxyPort);
- }
-
- /**
- * Constructor que utiliza un token de autenticación para el servicio.
- * @param token Token de autenticación.
- * @param URI URI base para la autenticación.
- * @param proxyHost Host del proxy (puede ser nulo).
- * @param proxyPort Puerto del proxy.
- * @throws AuthException Si la autenticación falla.
+ *
+ * @param token Token de autenticación.
+ * @param URIAPI URI de la API para el servicio.
+ * @throws AuthException Si la autenticación falla.
*/
- public SWBalanceAccountService(String token, String URI, String proxyHost, int proxyPort) {
- super(token, URI, proxyHost, proxyPort);
+ public SWBalanceAccountService(String token, String URIAPI) {
+ super(token, URIAPI);
}
/**
* Obtiene el saldo de la cuenta.
- * @return IResponse con el resultado de la operación.
+ *
+ * @return IResponse con el resultado de la operación.
* @throws AuthException Si la autenticación falla.
* @throws GeneralException Si ocurre un error general.
* @throws IOException Si hay un error de entrada/salida.
*/
public IResponse GetBalanceAccount() throws AuthException, GeneralException, IOException {
- BalanceAcctOptionsRequest settings = BalanceAcctOptionsRequest.sendRequest(getToken(), getURI(), getProxyHost(), getProxyPort());
+ BalanceAcctOptionsRequest settings = BalanceAcctOptionsRequest.sendRequest(getToken(),
+ getURIAPI() == null ? getURI() : getURIAPI(),
+ getProxyHost(), getProxyPort());
return BalanceAcctRequest.createBalanceAcctRequest(settings);
}
/**
* Realiza un movimiento de agregar saldo en la cuenta.
- * @param idUser ID del usuario.
- * @param stamps Número de timbres a agregar o remover.
- * @param comment Comentario del movimiento.
- * @param action Tipo de movimiento (add).
- * @return IResponse con el resultado de la operación.
+ *
+ * @param idUser ID del usuario.
+ * @param stamps Número de timbres a agregar o remover.
+ * @param comment Comentario del movimiento.
+ * @param action Tipo de movimiento (add).
+ * @return IResponse con el resultado de la operación.
* @throws AuthException Si la autenticación falla.
* @throws GeneralException Si ocurre un error general.
* @throws IOException Si hay un error de entrada/salida.
*/
- public IResponse AddBalanceAccountStamp(UUID idUser, int stamps, String comment) throws AuthException, GeneralException, IOException {
- BalanceAcctOptionsRequest settings = BalanceAcctOptionsRequest.balanceAccountStamp(getToken(), getURIAPI() == null ? getURI() : getURIAPI(), idUser, stamps, comment, AccountBalanceAction.Add, getProxyHost(), getProxyPort());
- return BalanceAcctRequest.createBalanceStampRequest(settings, comment);
+ public IResponse AddBalanceAccountStamp(UUID idUser, int stamps, String comment)
+ throws AuthException, GeneralException, IOException {
+ BalanceAcctOptionsRequest settings = BalanceAcctOptionsRequest.balanceAccountStamp(getToken(),
+ getURIAPI() == null ? getURI() : getURIAPI(), idUser, stamps, comment, AccountBalanceAction.Add,
+ getProxyHost(), getProxyPort());
+ return BalanceAcctRequest.createBalanceStampRequest(settings, "add", stamps, comment);
}
/**
* Realiza un movimiento de elimnar saldo en la cuenta.
- * @param idUser ID del usuario.
- * @param stamps Número de timbres a agregar o remover.
- * @param comment Comentario del movimiento.
- * @param action Tipo de movimiento (remove).
- * @return IResponse con el resultado de la operación.
+ *
+ * @param idUser ID del usuario.
+ * @param stamps Número de timbres a agregar o remover.
+ * @param comment Comentario del movimiento.
+ * @param action Tipo de movimiento (remove).
+ * @return IResponse con el resultado de la operación.
* @throws AuthException Si la autenticación falla.
* @throws GeneralException Si ocurre un error general.
* @throws IOException Si hay un error de entrada/salida.
*/
- public IResponse RemoveBalanceAccountStamp(UUID idUser, int stamps, String comment) throws AuthException, GeneralException, IOException {
- BalanceAcctOptionsRequest settings = BalanceAcctOptionsRequest.balanceAccountStamp(getToken(), getURIAPI() == null ? getURI() : getURIAPI(), idUser, stamps, comment, AccountBalanceAction.Add, getProxyHost(), getProxyPort());
- return BalanceAcctRequest.createBalanceStampRequest(settings, comment);
+ public IResponse RemoveBalanceAccountStamp(UUID idUser, int stamps, String comment)
+ throws AuthException, GeneralException, IOException {
+ BalanceAcctOptionsRequest settings = BalanceAcctOptionsRequest.balanceAccountStamp(getToken(),
+ getURIAPI() == null ? getURI() : getURIAPI(), idUser, stamps, comment, AccountBalanceAction.Remove,
+ getProxyHost(), getProxyPort());
+ return BalanceAcctRequest.createBalanceStampRequest(settings, "remove", stamps, comment);
}
}
diff --git a/src/main/java/Services/Pendings/SWPendingsService.java b/src/main/java/Services/Pendings/SWPendingsService.java
index b7ca3ab..32eae31 100644
--- a/src/main/java/Services/Pendings/SWPendingsService.java
+++ b/src/main/java/Services/Pendings/SWPendingsService.java
@@ -2,7 +2,7 @@
import java.io.IOException;
-import javax.xml.soap.SOAPException;
+import jakarta.xml.soap.SOAPException;
import Exceptions.AuthException;
import Exceptions.GeneralException;
diff --git a/src/main/java/Services/Relations/SWRelationsService.java b/src/main/java/Services/Relations/SWRelationsService.java
index a168134..5996462 100644
--- a/src/main/java/Services/Relations/SWRelationsService.java
+++ b/src/main/java/Services/Relations/SWRelationsService.java
@@ -2,7 +2,7 @@
import java.io.IOException;
-import javax.xml.soap.SOAPException;
+import jakarta.xml.soap.SOAPException;
import Exceptions.AuthException;
import Exceptions.GeneralException;
diff --git a/src/main/java/Services/SWService.java b/src/main/java/Services/SWService.java
index 39f1050..488b740 100644
--- a/src/main/java/Services/SWService.java
+++ b/src/main/java/Services/SWService.java
@@ -10,6 +10,9 @@
import Utils.Responses.Authentication.SuccessAuthResponse;
public abstract class SWService {
+ static {
+ System.setProperty("https.protocols", "TLSv1.2");
+ }
private String URI;
private String URIAPI;
private String Token = null;
diff --git a/src/main/java/Services/StatusCfdi/StatusCfdiService.java b/src/main/java/Services/StatusCfdi/StatusCfdiService.java
index a31ca4b..609101a 100644
--- a/src/main/java/Services/StatusCfdi/StatusCfdiService.java
+++ b/src/main/java/Services/StatusCfdi/StatusCfdiService.java
@@ -2,7 +2,7 @@
import java.io.IOException;
-import javax.xml.soap.SOAPException;
+import jakarta.xml.soap.SOAPException;
import Exceptions.AuthException;
import Exceptions.GeneralException;
diff --git a/src/main/java/Utils/Constants.java b/src/main/java/Utils/Constants.java
index b1c5c03..e97f9b6 100644
--- a/src/main/java/Utils/Constants.java
+++ b/src/main/java/Utils/Constants.java
@@ -1,8 +1,8 @@
package Utils;
public class Constants {
- public static String BASE_PATH = "http://services.test.sw.com.mx";
- public static String AUTH_PATH = "/security/authenticate";
+ public static String BASE_PATH = "https://services.test.sw.com.mx";
+ public static String AUTH_PATH_V2 = "/v2/security/authenticate";
public static String STAMP_PATH = "/cfdi33/stamp/";
public static String STAMP_ZIP_PATH = "/cfdi/stamp/v1/zip/";
public static String STAMP_V2_PATH = "/cfdi33/v2/stamp/";
@@ -18,6 +18,7 @@ public class Constants {
public static String CANCELATION_UUID_PATH = "/cfdi33/cancel/";
public static String BALANCE_ACCOUNT_PATH = "/account/balance/";
public static String BALANCE_ACCOUNT_MANAGEMENT_PATH = "/management/api/balance/";
+ public static String BALANCE_ACCOUNTV2_MANAGEMENT_PATH = "/management/v2/api/";
public static String VALIDATE_XML_PATH = "/validate/cfdi33";
public static String GENERATE_PDF_PATH = "/pdf/v1/api/GeneratePdf";
public static String ACEPTAR_RECHAZAR_CANCELACION_CSD_PATH = "/acceptreject/csd";
@@ -35,8 +36,6 @@ public class Constants {
public static String DISABLE_SEARCH_CSD = "/certificates/";
public static String LIST_CSD = "/certificates";
public static String REGENERATE_PDF = "/pdf/v1/api/regeneratepdf/";
- public static String USUARIOS = "/management/api/users";
- public static String USUARIOS_ID = "/management/api/users/";
- public static String USUARIOS_TOKEN = "/management/api/users/info";
+ public static String USUARIOSV2 = "/management/v2/api/dealers/users";
public static String RESEND = "/comprobante/resendemail";
}
diff --git a/src/main/java/Utils/Requests/Account/AccountUser/AccountUserFilters.java b/src/main/java/Utils/Requests/Account/AccountUser/AccountUserFilters.java
new file mode 100644
index 0000000..db97a85
--- /dev/null
+++ b/src/main/java/Utils/Requests/Account/AccountUser/AccountUserFilters.java
@@ -0,0 +1,19 @@
+package Utils.Requests.Account.AccountUser;
+
+public enum AccountUserFilters {
+ EMAIL("Email"),
+ TAX_ID("TaxId"),
+ ID_USER("IdUser"),
+ IS_ACTIVE("IsActive");
+
+ private final String queryKey;
+
+ // Constructor correcto
+ AccountUserFilters(String queryKey) {
+ this.queryKey = queryKey;
+ }
+
+ public String getQueryKey() {
+ return queryKey;
+ }
+}
\ No newline at end of file
diff --git a/src/main/java/Utils/Requests/Account/AccountUser/AccountUserOptionsRequest.java b/src/main/java/Utils/Requests/Account/AccountUser/AccountUserOptionsRequest.java
index ebb7640..a953478 100644
--- a/src/main/java/Utils/Requests/Account/AccountUser/AccountUserOptionsRequest.java
+++ b/src/main/java/Utils/Requests/Account/AccountUser/AccountUserOptionsRequest.java
@@ -3,25 +3,34 @@
import java.util.UUID;
import Utils.Constants;
-import Utils.Helpers.EnumAccountUser.AccountUserProfiles;
import Utils.Requests.IRequest;
/**
- * La clase AccountUserOptionsRequest representa las opciones de solicitud para operaciones relacionadas con usuarios de cuentas.
- * Extiende la clase IRequest para incluir información común de solicitud.
+ * La clase AccountUserOptionsRequest representa las opciones de solicitud para
+ * operaciones relacionadas con usuarios de cuentas.
+ * Extiende la clase IRequest para incluir información común de solicitud,
+ * como el token de autenticación, la URI de la API y la configuración de proxy.
*/
public class AccountUserOptionsRequest extends IRequest {
- private String email;
- private String passwordUser;
- private String name;
- private String rfc;
- private int stamps;
- private AccountUserProfiles profile;
- private boolean unlimited;
- private boolean active;
+ private String name; // Nombre del usuario
+ private String taxId; // RFC o identificación fiscal
+ private String email; // Correo electrónico del usuario
+ private int stamps; // Timbres asignados al usuario
+ private boolean unlimited; // Indicador si el usuario tiene timbres ilimitados
+ private String passwordUser; // Contraseña del usuario
+ private String notificationEmail; // Correo para notificaciones
+ private String phone; // Teléfono del usuario
+ private UUID idUsuario; // Identificador único del usuario
/**
- * Constructor privado para crear una instancia de AccountUserOptionsRequest. Utilizado por los métodos estáticos de creación de solicitudes.
+ * Constructor privado para crear una instancia de AccountUserOptionsRequest.
+ * Este constructor no puede ser invocado directamente fuera de la clase, ya que
+ * está diseñado para ser utilizado por los métodos estáticos.
+ *
+ * @param token Token de autenticación
+ * @param URIAPI URI base de la API
+ * @param proxyHost Host del proxy (si aplica)
+ * @param proxyPort Puerto del proxy (si aplica)
*/
private AccountUserOptionsRequest(String token, String URIAPI, String proxyHost, int proxyPort) {
super(token, URIAPI, proxyHost, proxyPort);
@@ -29,76 +38,139 @@ private AccountUserOptionsRequest(String token, String URIAPI, String proxyHost,
/**
* Método estático para crear una solicitud de creación de usuario.
+ * Establece los parámetros necesarios para registrar un nuevo usuario en el sistema.
+ *
+ * @param token Token de autenticación
+ * @param URIAPI URI base de la API
+ * @param email Correo electrónico del usuario
+ * @param passwordUser Contraseña del usuario
+ * @param name Nombre del usuario
+ * @param taxId RFC o identificación fiscal
+ * @param stamps Timbres asignados
+ * @param phone Teléfono del usuario
+ * @param unlimited Indicador si el usuario tiene timbres ilimitados
+ * @param notificationEmail Correo para notificaciones
+ * @param proxyHost Host del proxy
+ * @param proxyPort Puerto del proxy
+ * @return Instancia configurada de AccountUserOptionsRequest
*/
public static AccountUserOptionsRequest crearUsuarioRequest(String token, String URIAPI, String email,
- String passwordUser, String name, String rfc, int stamps, AccountUserProfiles profile,
- boolean unlimited, boolean active, String proxyHost, int proxyPort) {
- return new AccountUserOptionsRequest(token, URIAPI + Constants.USUARIOS, proxyHost, proxyPort)
- .crearUsuario(email, passwordUser, name, rfc, stamps, profile, unlimited, active);
+ String passwordUser, String name, String taxId, int stamps, String phone,
+ boolean unlimited, String notificationEmail, String proxyHost, int proxyPort) {
+ return new AccountUserOptionsRequest(token, URIAPI + Constants.USUARIOSV2, proxyHost, proxyPort)
+ .crearUsuario(email, passwordUser, name, taxId, stamps, phone, unlimited, notificationEmail);
}
/**
* Método estático para crear una solicitud de actualización de usuario.
+ * Se utiliza para actualizar la información de un usuario existente.
+ *
+ * @param token Token de autenticación
+ * @param URIAPI URI base de la API
+ * @param idUsuario Identificador único del usuario
+ * @param name Nuevo nombre del usuario
+ * @param taxId Nuevo RFC o identificación fiscal
+ * @param unlimited Indicador si el usuario tiene timbres ilimitados
+ * @param phone Nuevo teléfono del usuario
+ * @param notificationEmail Nuevo correo para notificaciones
+ * @param proxyHost Host del proxy
+ * @param proxyPort Puerto del proxy
+ * @return Instancia configurada de AccountUserOptionsRequest
*/
public static AccountUserOptionsRequest actualizarUsuarioRequest(String token, String URIAPI, UUID idUsuario,
- String name, String rfc, boolean unlimited, boolean active, String proxyHost, int proxyPort) {
- return new AccountUserOptionsRequest(token, URIAPI + Constants.USUARIOS_ID + idUsuario.toString(), proxyHost,
+ String name, String taxId, boolean unlimited, String phone, String notificationEmail, String proxyHost,
+ int proxyPort) {
+ return new AccountUserOptionsRequest(token, URIAPI + Constants.USUARIOSV2 + "/" + idUsuario.toString(),
+ proxyHost,
proxyPort)
- .actualizarUsuario(idUsuario, name, rfc, unlimited, active);
+ .actualizarUsuario(idUsuario, name, taxId, unlimited, phone, notificationEmail);
}
/**
* Método estático para crear una solicitud de obtención y eliminación de usuario por ID.
+ * Esta solicitud permite consultar o eliminar un usuario identificado por su UUID.
+ *
+ * @param token Token de autenticación
+ * @param URIAPI URI base de la API
+ * @param idUsuario Identificador único del usuario
+ * @param proxyHost Host del proxy
+ * @param proxyPort Puerto del proxy
+ * @return Instancia configurada de AccountUserOptionsRequest
*/
public static AccountUserOptionsRequest usuarioIdRequest(String token, String URIAPI, UUID idUsuario,
String proxyHost, int proxyPort) {
- return new AccountUserOptionsRequest(token, URIAPI + Constants.USUARIOS_ID + idUsuario.toString(), proxyHost,
+ return new AccountUserOptionsRequest(token, URIAPI + Constants.USUARIOSV2 + "/" + idUsuario.toString(),
+ proxyHost,
proxyPort);
}
/**
- * Método estático para crear una solicitud paginada de obtención de todos los usuarios.
+ * Método estático para crear una solicitud de obtención de todos los usuarios.
+ *
+ * @param token Token de autenticación
+ * @param URIAPI URI base de la API
+ * @param proxyHost Host del proxy
+ * @param proxyPort Puerto del proxy
+ * @return Instancia configurada de AccountUserOptionsRequest
*/
- public static AccountUserOptionsRequest obtenerUsuariosRequest(String token, String URIAPI, int page,
- int pageSize, String proxyHost, int proxyPort) {
+ public static AccountUserOptionsRequest obtenerUsuariosRequest(String token, String URIAPI, String proxyHost, int proxyPort) {
return new AccountUserOptionsRequest(token,
- URIAPI + Constants.USUARIOS + "?page=" + page + "&pageSize=" + pageSize, proxyHost, proxyPort);
+ URIAPI + Constants.USUARIOSV2, proxyHost, proxyPort);
}
/**
* Método estático para crear una solicitud de obtención de usuario por token.
+ * Este método permite obtener la información del usuario autenticado mediante su token.
+ *
+ * @param token Token de autenticación
+ * @param URIAPI URI base de la API
+ * @param proxyHost Host del proxy
+ * @param proxyPort Puerto del proxy
+ * @return Instancia configurada de AccountUserOptionsRequest
*/
public static AccountUserOptionsRequest obtenerUsuarioPorTokenRequest(String token, String URIAPI, String proxyHost,
int proxyPort) {
- return new AccountUserOptionsRequest(token, URIAPI + Constants.USUARIOS, proxyHost, proxyPort);
+ return new AccountUserOptionsRequest(token, URIAPI + Constants.USUARIOSV2, proxyHost, proxyPort);
}
// Métodos privados para configurar los parámetros específicos de la solicitud.
- private AccountUserOptionsRequest crearUsuario(String email, String passwordUser, String name, String rfc,
- int stamps, AccountUserProfiles profile, boolean unlimited, boolean active) {
+ /**
+ * Configura los parámetros para una solicitud de creación de usuario.
+ */
+ private AccountUserOptionsRequest crearUsuario(String email, String passwordUser, String name, String taxId,
+ int stamps, String phone, boolean unlimited, String notificationEmail) {
this.email = email;
this.passwordUser = passwordUser;
this.name = name;
- this.rfc = rfc;
+ this.taxId = taxId;
this.stamps = stamps;
- this.profile = profile;
+ this.phone = phone;
this.unlimited = unlimited;
- this.active = active;
+ this.notificationEmail = notificationEmail;
return this;
}
- private AccountUserOptionsRequest actualizarUsuario(UUID idUsuario, String name, String rfc, boolean unlimited,
- boolean active) {
+ /**
+ * Configura los parámetros para una solicitud de actualización de usuario.
+ */
+ private AccountUserOptionsRequest actualizarUsuario(UUID idUsuario, String name, String taxId, boolean unlimited,
+ String phone, String notificationEmail) {
+ this.idUsuario = idUsuario;
this.name = name;
- this.rfc = rfc;
+ this.taxId = taxId;
this.unlimited = unlimited;
- this.active = active;
+ this.notificationEmail = notificationEmail;
+ this.phone = phone;
return this;
}
// Métodos de acceso a los atributos de la solicitud.
+ public UUID getIdUsuario() {
+ return idUsuario;
+ }
+
public String getEmail() {
return email;
}
@@ -111,23 +183,23 @@ public String getName() {
return name;
}
- public String getRfc() {
- return rfc;
+ public String getTaxId() {
+ return taxId;
}
public int getStamps() {
return stamps;
}
- public AccountUserProfiles getProfile() {
- return profile;
- }
-
public boolean isUnlimited() {
return unlimited;
}
- public boolean isActive() {
- return active;
+ public String getNotificationEmail() {
+ return notificationEmail;
+ }
+
+ public String getPhone() {
+ return phone;
}
-}
\ No newline at end of file
+}
diff --git a/src/main/java/Utils/Requests/Account/AccountUser/AccountUserRequest.java b/src/main/java/Utils/Requests/Account/AccountUser/AccountUserRequest.java
index 1a75cca..77300eb 100644
--- a/src/main/java/Utils/Requests/Account/AccountUser/AccountUserRequest.java
+++ b/src/main/java/Utils/Requests/Account/AccountUser/AccountUserRequest.java
@@ -1,7 +1,9 @@
package Utils.Requests.Account.AccountUser;
import java.io.IOException;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import java.util.UUID;
import org.apache.http.client.methods.CloseableHttpResponse;
@@ -9,6 +11,7 @@
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.client.methods.HttpPut;
+import org.apache.http.client.methods.HttpRequestBase;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.json.JSONException;
@@ -21,118 +24,139 @@
import Utils.Responses.Account.AccountUser.DataAccountUser;
/**
- * La clase AccountUserRequest maneja las solicitudes relacionadas con las
- * operaciones de usuario de cuentas.
- * Utiliza la biblioteca Apache HttpClient para realizar solicitudes HTTP.
+ * Clase AccountUserRequest para manejar solicitudes HTTP relacionadas con
+ * usuarios de cuenta.
*/
-
public class AccountUserRequest {
+
+ // Métodos estáticos para solicitudes específicas
+
public static IResponse createCreateUserRequest(IRequest request)
throws GeneralException, AuthException, IOException {
- return new AccountUserRequest().createUserRequest(request);
+ return new AccountUserRequest().createUserRequest(request, DataAccountUser.class);
}
public static IResponse createUpdateUserRequest(IRequest request, UUID idUser)
throws GeneralException, AuthException, IOException {
- return new AccountUserRequest().updateUserRequest(request, idUser);
+ return new AccountUserRequest().updateUserRequest(request, idUser, DataAccountUser.class);
}
public static IResponse createDeleteUserRequest(IRequest request, UUID idUser)
throws GeneralException, AuthException, IOException {
- return new AccountUserRequest().deleteUserRequest(request, idUser);
+ return new AccountUserRequest().deleteUserRequest(request, idUser, String.class);
+ }
+
+ public static IResponse createGetAllUsersRequest(IRequest request)
+ throws GeneralException, AuthException, IOException {
+ return new AccountUserRequest().getUserFiltersRequest(request, new HashMap<>(), List.class);
}
- public static IResponse createGetAllUsersRequest(IRequest request, int page, int pageSize)
+ public static IResponse createGetUserById(IRequest request, UUID idUser)
throws GeneralException, AuthException, IOException {
- return new AccountUserRequest().getAllUsersRequest(request, page, pageSize);
+ Map filters = new HashMap<>();
+ filters.put(AccountUserFilters.ID_USER, idUser.toString());
+ return new AccountUserRequest().getUserFiltersRequest(request, filters, List.class);
}
- public static IResponse createGetUserRequest(IRequest request) throws GeneralException, AuthException, IOException {
- return new AccountUserRequest().getUserRequest(request);
+ public static IResponse createGetUserByEmail(IRequest request, String email)
+ throws GeneralException, AuthException, IOException {
+ Map filters = new HashMap<>();
+ filters.put(AccountUserFilters.EMAIL, email);
+ return new AccountUserRequest().getUserFiltersRequest(request, filters, List.class);
+ }
+
+ public static IResponse createGetUserByRfc(IRequest request, String rfc)
+ throws GeneralException, AuthException, IOException {
+ Map filters = new HashMap<>();
+ filters.put(AccountUserFilters.TAX_ID, rfc);
+ return new AccountUserRequest().getUserFiltersRequest(request, filters, List.class);
}
- public static IResponse createGetUserIdRequest(IRequest request, UUID idUser)
+ public static IResponse createGetUserByActive(IRequest request, Boolean isActive)
throws GeneralException, AuthException, IOException {
- return new AccountUserRequest().getUserIdRequest(request, idUser);
+ Map filters = new HashMap<>();
+ filters.put(AccountUserFilters.IS_ACTIVE, isActive.toString());
+ return new AccountUserRequest().getUserFiltersRequest(request, filters, List.class);
}
- private IResponse createUserRequest(IRequest request) throws GeneralException, AuthException, IOException {
+ // Métodos internos con clases de respuesta específicas
+
+ private IResponse createUserRequest(IRequest request, Class responseClass)
+ throws GeneralException, AuthException, IOException {
try {
JSONObject requestJSON = AccountUserRequestHelper.buildUserCreateJson((AccountUserOptionsRequest) request);
- CloseableHttpClient client = HttpClients.createDefault();
- HttpPost httpPost = new HttpPost(request.URI);
- AccountUserRequestHelper.configureHttpRequest(request, httpPost, requestJSON);
-
- try (CloseableHttpResponse responseB = client.execute(httpPost)) {
- return AccountUserRequestHelper.handleResponse(responseB, String.class);
- }
+ return executePostRequest(request, requestJSON, responseClass);
} catch (JSONException e) {
- throw new GeneralException(500, "Error en la construcción de la solicitud JSON: " + e.getMessage());
+ throw new GeneralException(500, "Error al construir JSON: " + e.getMessage());
}
}
- private IResponse updateUserRequest(IRequest request, UUID idUser)
+ private IResponse updateUserRequest(IRequest request, UUID idUser, Class responseClass)
throws GeneralException, AuthException, IOException {
try {
JSONObject requestJSON = AccountUserRequestHelper.buildUserUpdateJson((AccountUserOptionsRequest) request);
- CloseableHttpClient client = HttpClients.createDefault();
- HttpPut httpPut = new HttpPut(request.URI);
- AccountUserRequestHelper.configureHttpRequest(request, httpPut, requestJSON);
-
- try (CloseableHttpResponse responseB = client.execute(httpPut)) {
- return AccountUserRequestHelper.handleResponse(responseB, String.class);
- }
+ return executePutRequest(request, requestJSON, responseClass);
} catch (JSONException e) {
- throw new GeneralException(500, "Error en la construcción de la solicitud JSON: " + e.getMessage());
+ throw new GeneralException(500, "Error al construir JSON: " + e.getMessage());
}
}
- private IResponse deleteUserRequest(IRequest request, UUID IdUser)
+ private IResponse deleteUserRequest(IRequest request, UUID idUser, Class responseClass)
throws GeneralException, AuthException, IOException {
- try {
- CloseableHttpClient client = HttpClients.createDefault();
- HttpDelete httpDelete = new HttpDelete(request.URI);
- AccountUserRequestHelper.configureHttpRequest(request, httpDelete, new JSONObject());
-
- try (CloseableHttpResponse responseB = client.execute(httpDelete)) {
- return AccountUserRequestHelper.handleResponse(responseB, String.class);
- }
- } catch (JSONException e) {
- throw new GeneralException(500, "Error en la construcción de la solicitud JSON: " + e.getMessage());
- }
+ HttpDelete httpDelete = new HttpDelete(request.URI);
+ AccountUserRequestHelper.configureHttpRequest(request, httpDelete, new JSONObject());
+ return executeHttpRequest(httpDelete, responseClass);
}
- private IResponse getAllUsersRequest(IRequest request, int page, int pageSize)
+ private IResponse getUserFiltersRequest(IRequest request, Map filters,
+ Class responseClass)
throws GeneralException, AuthException, IOException {
- HttpGet httpGet = new HttpGet(request.URI);
- AccountUserRequestHelper.configureHttpRequest(request, httpGet, new JSONObject());
- try (CloseableHttpClient client = HttpClients.createDefault();
- CloseableHttpResponse response = client.execute(httpGet)) {
- return AccountUserRequestHelper.handleResponse(response, List.class);
- }
- }
+ String uriWithFilters = buildUriWithFilter(request.URI, filters);
+ HttpGet httpGet = new HttpGet(uriWithFilters);
- private IResponse getUserRequest(IRequest request) throws GeneralException, AuthException, IOException {
- HttpGet httpGet = new HttpGet(request.URI + "/info");
AccountUserRequestHelper.configureHttpRequest(request, httpGet, new JSONObject());
+ return executeHttpRequest(httpGet, responseClass);
+ }
- try (CloseableHttpClient client = HttpClients.createDefault();
- CloseableHttpResponse response = client.execute(httpGet)) {
+ // Métodos auxiliares
- return AccountUserRequestHelper.handleResponse(response, DataAccountUser.class);
+ private String buildUriWithFilter(String baseUri, Map filters) {
+ StringBuilder uriBuilder = new StringBuilder(baseUri);
+ boolean hasQueryParams = false;
+
+ for (Map.Entry filter : filters.entrySet()) {
+ if (filter.getValue() != null) { // Verifica que el valor del filtro no sea null
+ uriBuilder.append(hasQueryParams ? "&" : "?")
+ .append(filter.getKey().getQueryKey())
+ .append("=")
+ .append(filter.getValue());
+ hasQueryParams = true;
+ }
}
- }
- private IResponse getUserIdRequest(IRequest request, UUID idUser)
- throws GeneralException, AuthException, IOException {
- HttpGet httpGet = new HttpGet(request.URI);
- AccountUserRequestHelper.configureHttpRequest(request, httpGet, new JSONObject());
+ return uriBuilder.toString();
+ }
+ private IResponse executeHttpRequest(HttpRequestBase requestBase, Class responseClass)
+ throws IOException, GeneralException {
try (CloseableHttpClient client = HttpClients.createDefault();
- CloseableHttpResponse response = client.execute(httpGet)) {
-
- return AccountUserRequestHelper.handleResponse(response, DataAccountUser.class);
+ CloseableHttpResponse response = client.execute(requestBase)) {
+ return AccountUserRequestHelper.handleResponse(response, responseClass);
}
}
+
+ private IResponse executePostRequest(IRequest request, JSONObject json, Class responseClass)
+ throws IOException, GeneralException {
+ HttpPost httpPost = new HttpPost(request.URI);
+ AccountUserRequestHelper.configureHttpRequest(request, httpPost, json);
+ return executeHttpRequest(httpPost, responseClass);
+ }
+
+ private IResponse executePutRequest(IRequest request, JSONObject json, Class responseClass)
+ throws IOException, GeneralException {
+ HttpPut httpPut = new HttpPut(request.URI);
+ AccountUserRequestHelper.configureHttpRequest(request, httpPut, json);
+ return executeHttpRequest(httpPut, responseClass);
+ }
}
diff --git a/src/main/java/Utils/Requests/Account/AccountUser/AccountUserRequestHelper.java b/src/main/java/Utils/Requests/Account/AccountUser/AccountUserRequestHelper.java
index 0cbe9d9..3103aeb 100644
--- a/src/main/java/Utils/Requests/Account/AccountUser/AccountUserRequestHelper.java
+++ b/src/main/java/Utils/Requests/Account/AccountUser/AccountUserRequestHelper.java
@@ -24,7 +24,8 @@
import Utils.Responses.Account.AccountUser.DataAccountUser;
/**
- * Clase de utilidad que proporciona métodos auxiliares para manejar solicitudes
+ * Clase de utilidad que proporciona métodos auxiliares para manejar
+ * olicitudes
* y respuestas
* relacionadas con usuarios de cuentas.
*/
@@ -44,8 +45,15 @@ public class AccountUserRequestHelper {
protected static AccountUserResponse handleResponse(CloseableHttpResponse response, Class responseType)
throws IOException, GeneralException {
int status = response.getStatusLine().getStatusCode();
+
+ // Verifica si el código de estado es 204 (No Content) para la respuesta OK de Delete user
+ if (status == 204) {
+ return new AccountUserResponse<>(status, "success", null, "Usuario eliminado correctamente.", "");
+ }
+
String responseString = EntityUtils.toString(response.getEntity(), "UTF-8");
+ // Verifica si la respuesta no está vacía y el estado es válido (< 500)
if (!responseString.isEmpty() && status < 500) {
JSONObject body = new JSONObject(responseString);
@@ -70,16 +78,22 @@ protected static AccountUserResponse handleResponse(CloseableHttpResponse
return new AccountUserResponse<>(status, body.getString("status"), (T) userList, "OK", "OK");
}
+ }
+ if (status == 400) {// Se agrego para manejar las respuesras erroneas de Actualizar y Crear Usuarios
+ // en la version 2
+ String messageDetail = body.optString("messageDetail", "");
+ String message = body.optString("message", "Bad Request");
+ return new AccountUserResponse<>(status, "error", null, message, messageDetail);
} else {
String messageDetail = body.optString("messageDetail", "");
- return new AccountUserResponse<>(status, body.getString("status"), null, body.getString("message"),
- messageDetail);
+ String message = body.optString("message", "");
+ return new AccountUserResponse<>(status, body.getString("status"), null, message, messageDetail);
}
} else {
+ // Maneja el caso donde el contenido no es válido o está vacío
return new AccountUserResponse<>(status, "error", null, response.getStatusLine().getReasonPhrase(),
responseString);
}
- return null;
}
/**
@@ -94,11 +108,11 @@ protected static JSONObject buildUserCreateJson(AccountUserOptionsRequest accoun
requestJSON.put("email", accountUserOptionsRequest.getEmail());
requestJSON.put("password", accountUserOptionsRequest.getPassword());
requestJSON.put("name", accountUserOptionsRequest.getName());
- requestJSON.put("rfc", accountUserOptionsRequest.getRfc());
- requestJSON.put("profile", accountUserOptionsRequest.getProfile().getValue());
+ requestJSON.put("taxId", accountUserOptionsRequest.getTaxId());
+ requestJSON.put("phone", accountUserOptionsRequest.getPhone());
requestJSON.put("stamps", accountUserOptionsRequest.getStamps());
- requestJSON.put("unlimited", accountUserOptionsRequest.isUnlimited());
- requestJSON.put("active", accountUserOptionsRequest.isActive());
+ requestJSON.put("isUnlimited", accountUserOptionsRequest.isUnlimited());
+ requestJSON.put("notificationEmail", accountUserOptionsRequest.getNotificationEmail());
return requestJSON;
}
@@ -111,12 +125,14 @@ protected static JSONObject buildUserCreateJson(AccountUserOptionsRequest accoun
* @return Objeto JSON representando la solicitud de actualización de usuario.
*/
- protected static JSONObject buildUserUpdateJson(AccountUserOptionsRequest accountUserOptionsRequest) {
+ protected static JSONObject buildUserUpdateJson(AccountUserOptionsRequest accountUserOptionsRequest) {
JSONObject requestJSON = new JSONObject();
+ requestJSON.put("idUser", accountUserOptionsRequest.getIdUsuario());
requestJSON.put("name", accountUserOptionsRequest.getName());
- requestJSON.put("rfc", accountUserOptionsRequest.getRfc());
+ requestJSON.put("taxId", accountUserOptionsRequest.getTaxId());
requestJSON.put("unlimited", accountUserOptionsRequest.isUnlimited());
- requestJSON.put("active", accountUserOptionsRequest.isActive());
+ requestJSON.put("phone", accountUserOptionsRequest.getPhone());
+ requestJSON.put("notificationEmail", accountUserOptionsRequest.getNotificationEmail());
return requestJSON;
}
@@ -127,37 +143,32 @@ protected static JSONObject buildUserUpdateJson(AccountUserOptionsRequest accoun
* @return Objeto DataAccountUser creado a partir del JSON.
*/
- protected static DataAccountUser UserData(JSONObject userData) {
- String email = userData.optString("email", null);
- String password = userData.optString("password", null);
- String nombre = userData.optString("nombre", null);
- String apellidoPaterno = userData.optString("apellidoPaterno", null);
- String apellidoMaterno = userData.optString("apellidoMaterno", null);
- String username = userData.optString("username", null);
- String fechaUltimoPassword = userData.optString("fechaUltimoPassword", null);
- String telefono = userData.optString("telefono", null);
- boolean administrador = userData.optBoolean("administrador");
- String profileValue = userData.optString("profileValue", null);
+ protected static DataAccountUser UserData(JSONObject userData) {
String idUsuario = userData.optString("idUsuario", null);
- String idCliente = userData.optString("idCliente", null);
- String stamps = userData.optString("stamps", null);
- boolean unlimited = userData.optBoolean("unlimited");
+ String idDealer = userData.optString("idDealer", null);
+ String name = userData.optString("name", null);
+ String taxId = userData.optString("taxId", null);
+ String username = userData.optString("username", null);
+ String lastPasswordChange = userData.optString("lastPasswordChange", null);
+ String email = userData.optString("email", null);
+ String notificationEmail = userData.optString("notificationEmail", null);
+ boolean isAdmin = userData.optBoolean("isAdmin");
int profile = userData.optInt("profile");
- boolean activo = userData.optBoolean("activo");
+ boolean isActive = userData.optBoolean("isActive");
String registeredDate = userData.optString("registeredDate", null);
- boolean eliminado = userData.optBoolean("eliminado");
- String tokenAccess = userData.optString("tokenAccess", null);
- String tokenAccessHash = userData.optString("tokenAccessHash", null);
+ String accessToken = userData.optString("accessToken", null);
+ String phone = userData.optString("phone", null);
+ String stamps = userData.optString("stamps", null);
+ boolean isUnlimited = userData.optBoolean("isUnlimited");
return new DataAccountUser(
- email, password, nombre, apellidoPaterno, apellidoMaterno, username,
- fechaUltimoPassword, telefono, administrador, profileValue, idUsuario,
- idCliente, stamps, unlimited, profile, activo, registeredDate,
- eliminado, tokenAccess, tokenAccessHash);
+ idUsuario, idDealer, name, taxId, username, lastPasswordChange, email, notificationEmail,
+ isAdmin, profile, isActive, registeredDate, accessToken, phone, stamps, isUnlimited);
}
/**
- * Configura la solicitud HTTP con la información proporcionada en la IRequest y
+ * Configura la solicitud HTTP con la información proporcionada en la IRequest
+ *
* el JSON de la solicitud.
*
* @param request Información de la solicitud.
@@ -165,7 +176,7 @@ protected static DataAccountUser UserData(JSONObject userData) {
* @param requestJSON Objeto JSON que contiene la información de la solicitud.
*/
- protected static void configureHttpRequest(IRequest request, HttpRequestBase httpRequest, JSONObject requestJSON) {
+ protected static void configureHttpRequest(IRequest request, HttpRequestBase httpRequest, JSONObject requestJSON) {
try {
RequestHelper.setTimeOut(request.options, 5000);
RequestHelper.setProxy(request.options, request.proxyHost, request.proxyPort);
diff --git a/src/main/java/Utils/Requests/Authentication/AuthOptionsRequest.java b/src/main/java/Utils/Requests/Authentication/AuthOptionsRequest.java
index 4602bd5..8b5a229 100644
--- a/src/main/java/Utils/Requests/Authentication/AuthOptionsRequest.java
+++ b/src/main/java/Utils/Requests/Authentication/AuthOptionsRequest.java
@@ -6,6 +6,8 @@
public class AuthOptionsRequest extends IRequest {
private String ProxyHost = null;
private String PortHost = null;
+ private String User;
+ private String Password;
public void setProxyHost(String proxyHost) {
ProxyHost = proxyHost;
@@ -14,10 +16,23 @@ public void setProxyHost(String proxyHost) {
public void setPortHost(String portHost) {
PortHost = portHost;
}
+ public void setUser(String user) {
+ User = user;
+ }
+
+ public void setPassword(String password) {
+ Password = password;
+ }
+
public AuthOptionsRequest(String URI, String user, String password, String proxyHost, int proxyPort) {
- super(URI+ Constants.AUTH_PATH, user, password, proxyHost, proxyPort);
+ super(URI+ Constants.AUTH_PATH_V2, user, password, proxyHost, proxyPort); // Llama al constructor de SWService para inicializar correctamente
+ this.ProxyHost = proxyHost;
+ this.PortHost = String.valueOf(proxyPort); // Guarda el puerto como un string
+ this.User = user;
+ this.Password = password;
}
+
public String getProxyHost() {
return ProxyHost;
@@ -26,4 +41,11 @@ public String getProxyHost() {
public String getPortHost() {
return PortHost;
}
+ public String getUser() {
+ return User;
+ }
+
+ public String getPassword() {
+ return Password;
+ }
}
diff --git a/src/main/java/Utils/Requests/Authentication/AuthRequest.java b/src/main/java/Utils/Requests/Authentication/AuthRequest.java
index 8cd9551..b6f075a 100644
--- a/src/main/java/Utils/Requests/Authentication/AuthRequest.java
+++ b/src/main/java/Utils/Requests/Authentication/AuthRequest.java
@@ -11,61 +11,84 @@
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
+import org.apache.http.entity.StringEntity;
+import org.apache.http.entity.mime.HttpMultipartMode;
+import org.apache.http.entity.mime.MultipartEntityBuilder;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
+import org.apache.http.message.BasicHeader;
import org.apache.http.util.EntityUtils;
import org.json.JSONException;
import org.json.JSONObject;
import java.io.IOException;
+import java.nio.charset.Charset;
public class AuthRequest implements IRequestor {
public IResponse sendRequest(IRequest request) throws GeneralException, AuthException, IOException {
+ try {
+ // Verificar que los campos necesarios no estén vacíos
+ if (RequestHelper.stringEmptyOrNull(((AuthOptionsRequest) request).getUser())
+ || RequestHelper.stringEmptyOrNull(((AuthOptionsRequest) request).getPassword())) {
+ return new SuccessAuthResponse(400, "error", null, 0,
+ "El usuario o contraseña proporcionados están vacíos", null);
+ }
+ String messageDetail = "";
- if (request.URI.isEmpty()){
- throw new GeneralException(400,"URL VACIA");
- }
+ // Crear JSON de la solicitud
+ JSONObject requestJSON = new JSONObject();
+ requestJSON.put("user", ((AuthOptionsRequest) request).getUser());
+ requestJSON.put("password", ((AuthOptionsRequest) request).getPassword());
- String messageDetail = "";
- try {
- CloseableHttpClient client = HttpClients.createDefault();
- HttpPost httppost = new HttpPost(request.URI);
- httppost.setHeader("user", request.User);
- httppost.addHeader("password", request.Password);
- RequestHelper.setTimeOut(request.options, 3000);
- RequestHelper.setProxy(request.options, request.proxyHost, request.proxyPort);
- httppost.setConfig(request.options.build());
+ // Configuración de la solicitud HTTP
+ CloseableHttpClient client = HttpClients.createDefault();
+ HttpPost httppost = new HttpPost(request.URI);
+ RequestHelper.setTimeOut(request.options, requestJSON.toString().length());
+ RequestHelper.setProxy(request.options, request.proxyHost, request.proxyPort);
+ httppost.setConfig(request.options.build());
+ httppost.addHeader(new BasicHeader("Content-Type", "application/json"));
+
+ // Enviar los datos en el cuerpo de la solicitud
+ MultipartEntityBuilder builder = MultipartEntityBuilder.create();
+ builder.setCharset(Charset.forName("UTF-8"));
+ builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);
+ StringEntity sEntity = new StringEntity(requestJSON.toString());
+ httppost.setEntity(sEntity);
+
+ // Ejecutar la solicitud y procesar la respuesta
CloseableHttpResponse responseB = client.execute(httppost);
HttpEntity entity = responseB.getEntity();
String responseString = EntityUtils.toString(entity, "UTF-8");
int status = responseB.getStatusLine().getStatusCode();
+
+ // Cerrar conexiones
client.close();
responseB.close();
- if(!responseString.isEmpty() && status < 500) {
- JSONObject body = new JSONObject(responseString);
- if(!body.isNull("messageDetail")){
- messageDetail = body.getString("messageDetail");
- }
- if(status==200){
- JSONObject data = body.getJSONObject("data");
- return new SuccessAuthResponse(status,body.getString("status"),data.getString("token"),data.getInt("expires_in"),"OK","OK");
- }
- else{
- return new SuccessAuthResponse(status,body.getString("status"),"",0,body.getString("message"),messageDetail);
+ // Manejo de la respuesta
+ if (!responseString.isEmpty() && status < 500) {
+ JSONObject body = new JSONObject(responseString);
+ if (!body.isNull("messageDetail")) {
+ messageDetail = body.getString("messageDetail");
+ }
- }
- }
- else{
- return new SuccessAuthResponse(status,"error","",0,responseB.getStatusLine().getReasonPhrase(), responseString);
+ if (status == 200) {
+ JSONObject data = body.getJSONObject("data");
+ return new SuccessAuthResponse(status, body.getString("status"), data.getString("token"),
+ data.getInt("expires_in"), "OK", "OK");
+ } else {
+ return new SuccessAuthResponse(status, body.getString("status"), "", 0, body.getString("message"),
+ messageDetail);
+
+ }
+ } else {
+ return new SuccessAuthResponse(status, "error", "", 0, responseB.getStatusLine().getReasonPhrase(),
+ responseString);
}
- } catch(JSONException e){
- throw new GeneralException(500,e.getMessage());
+ } catch (JSONException e) {
+ throw new GeneralException(500, e.getMessage());
}
-
-
}
-
-}
\ No newline at end of file
+}
diff --git a/src/main/java/Utils/Requests/BalanceAccount/BalanceAcctOptionsRequest.java b/src/main/java/Utils/Requests/BalanceAccount/BalanceAcctOptionsRequest.java
index a6878a3..5f22072 100644
--- a/src/main/java/Utils/Requests/BalanceAccount/BalanceAcctOptionsRequest.java
+++ b/src/main/java/Utils/Requests/BalanceAccount/BalanceAcctOptionsRequest.java
@@ -21,22 +21,26 @@ public class BalanceAcctOptionsRequest extends IRequest {
* Constructor privado para crear una instancia de BalanceAcctOptionsRequest.
* Utilizado por los métodos estáticos de creación de solicitudes.
*/
- private BalanceAcctOptionsRequest(String token, String URI, String proxyHost, int proxyPort) {
- super(token, URI, proxyHost, proxyPort);
+ private BalanceAcctOptionsRequest(String token, String URIAPI, String proxyHost, int proxyPort) {
+ super(token, URIAPI, proxyHost, proxyPort);
}
/**
* Método estático para crear una solicitud de obtención de saldo de cuenta.
*/
- public static BalanceAcctOptionsRequest sendRequest(String token, String URI, String proxyHost, int proxyPort) {
- return new BalanceAcctOptionsRequest(token, URI + Constants.BALANCE_ACCOUNT_PATH, proxyHost, proxyPort);
+ public static BalanceAcctOptionsRequest sendRequest(String token, String URIAPI, String proxyHost, int proxyPort) {
+ return new BalanceAcctOptionsRequest(token, URIAPI + Constants.BALANCE_ACCOUNTV2_MANAGEMENT_PATH + "users/balance",
+ proxyHost, proxyPort);
}
/**
* Método estático para crear una solicitud de movimiento de saldo de cuenta.
*/
- public static BalanceAcctOptionsRequest balanceAccountStamp(String token, String URI, UUID idUser, int stamps, String comment, AccountBalanceAction action, String proxyHost, int proxyPort) {
- return new BalanceAcctOptionsRequest(token, URI + Constants.BALANCE_ACCOUNT_MANAGEMENT_PATH + "/" + idUser + "/" + action + "/" + stamps , proxyHost, proxyPort);
+ public static BalanceAcctOptionsRequest balanceAccountStamp(String token, String URIAPI, UUID idUser, int stamps,
+ String comment, AccountBalanceAction action, String proxyHost, int proxyPort) {
+ return new BalanceAcctOptionsRequest(token,
+ URIAPI + Constants.BALANCE_ACCOUNTV2_MANAGEMENT_PATH + "dealers/users" + "/" + idUser + "/stamps",
+ proxyHost, proxyPort);
}
/**
diff --git a/src/main/java/Utils/Requests/BalanceAccount/BalanceAcctRequest.java b/src/main/java/Utils/Requests/BalanceAccount/BalanceAcctRequest.java
index 8d05236..2232a6d 100644
--- a/src/main/java/Utils/Requests/BalanceAccount/BalanceAcctRequest.java
+++ b/src/main/java/Utils/Requests/BalanceAccount/BalanceAcctRequest.java
@@ -4,14 +4,13 @@
import Exceptions.GeneralException;
import Utils.Helpers.RequestHelper;
import Utils.Requests.IRequest;
-import Utils.Requests.IRequestor;
import Utils.Responses.IResponse;
import Utils.Responses.BalanceAccount.BalanceAcctResponse;
-
import java.io.IOException;
-
+import java.net.URI;
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
+import org.apache.http.client.methods.HttpEntityEnclosingRequestBase;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
@@ -27,47 +26,85 @@
* Utiliza la biblioteca Apache HttpClient para realizar solicitudes HTTP.
*/
public class BalanceAcctRequest {
- public static IResponse createBalanceAcctRequest(IRequest request) throws GeneralException, AuthException, IOException {
+ public static IResponse createBalanceAcctRequest(IRequest request)
+ throws GeneralException, AuthException, IOException {
return new BalanceAcctRequest().balanceAcctRequest(request);
}
- public static IResponse createBalanceStampRequest(IRequest request, String comment) throws GeneralException, AuthException, IOException {
- return new BalanceAcctRequest().balanceAcctStampRequest(request, comment);
+ public static IResponse createBalanceStampRequest(IRequest request, String action, int stamps, String comment)
+ throws GeneralException, AuthException, IOException {
+ return new BalanceAcctRequest().balanceAcctStampRequest(request, action, stamps, comment);
}
private IResponse balanceAcctRequest(IRequest request) throws GeneralException, AuthException, IOException {
try {
- CloseableHttpClient client = HttpClients.createDefault();
- HttpGet httpget = new HttpGet(request.URI);
- httpget.setHeader("Authorization", "bearer " + request.Token);
- RequestHelper.setTimeOut(request.options, 3500);
- RequestHelper.setProxy(request.options, request.proxyHost, request.proxyPort);
- httpget.setConfig(request.options.build());
- CloseableHttpResponse responseB = client.execute(httpget);
- HttpEntity entity = responseB.getEntity();
+ CloseableHttpClient client = HttpClients.createDefault();
+ HttpGet httpget = new HttpGet(request.URI);
+ httpget.setHeader("Authorization", "bearer " + request.Token);
+ RequestHelper.setTimeOut(request.options, 3500);
+ RequestHelper.setProxy(request.options, request.proxyHost, request.proxyPort);
+ httpget.setConfig(request.options.build());
+ CloseableHttpResponse responseB = client.execute(httpget);
+ HttpEntity entity = responseB.getEntity();
String responseString = EntityUtils.toString(entity, "UTF-8");
int status = responseB.getStatusLine().getStatusCode();
client.close();
responseB.close();
- if(!responseString.isEmpty() && status < 500) {
+ if (!responseString.isEmpty() && status < 500) {
JSONObject body = new JSONObject(responseString);
if (status == 200) {
JSONObject data = body.getJSONObject("data");
- return new BalanceAcctResponse(status, body.getString("status"),
- data.getString("idSaldoCliente"), data.getString("idClienteUsuario"), data.getInt("saldoTimbres"), data.getInt("timbresUtilizados"),
- data.get("fechaExpiracion").toString(), data.getBoolean("unlimited"), data.getInt("timbresAsignados"),"OK","OK");
- }
- else {
+ // Asegúrate de obtener correctamente los nuevos campos, incluyendo la
+ // subestructura "lastTransaction".
+ return new BalanceAcctResponse(
+ status,
+ body.getString("status"),
+ data.getString("idUserBalance"),
+ data.getString("idUser"),
+ data.getInt("stampsBalance"),
+ data.getInt("stampsUsed"),
+ data.getInt("stampsAssigned"),
+ data.getBoolean("isUnlimited"),
+ data.get("expirationDate") != null ? data.get("expirationDate").toString() : null,
+ // Agregar la subestructura de la transacción
+ new BalanceAcctResponse.LastTransaction(
+ data.getJSONObject("lastTransaction").getInt("folio"),
+ data.getJSONObject("lastTransaction").getString("idUser"),
+ data.getJSONObject("lastTransaction").getString("idUserReceiver"),
+ data.getJSONObject("lastTransaction").getString("nameReceiver"),
+ data.getJSONObject("lastTransaction").has("stampsIn")
+ && !data.getJSONObject("lastTransaction").isNull("stampsIn")
+ ? data.getJSONObject("lastTransaction").getInt("stampsIn")
+ : null,
+ data.getJSONObject("lastTransaction").has("stampsOut")
+ && !data.getJSONObject("lastTransaction").isNull("stampsOut")
+ ? data.getJSONObject("lastTransaction").getInt("stampsOut")
+ : null,
+ data.getJSONObject("lastTransaction").has("stampsCurrent")
+ && !data.getJSONObject("lastTransaction").isNull("stampsCurrent")
+ ? data.getJSONObject("lastTransaction").getInt("stampsCurrent")
+ : null,
+ data.getJSONObject("lastTransaction").has("comment")
+ && !data.getJSONObject("lastTransaction").isNull("comment")
+ ? data.getJSONObject("lastTransaction").getString("comment")
+ : null,
+ data.getJSONObject("lastTransaction").getString("date"),
+ data.getJSONObject("lastTransaction").getBoolean("isEmailSent")),
+ "OK", "OK");
+
+ } else {
String messageDetail = "";
if (!body.isNull("messageDetail")) {
messageDetail = body.getString("messageDetail");
}
- return new BalanceAcctResponse(status, body.getString("status"), body.getString("message"), messageDetail);
+ return new BalanceAcctResponse(status, body.getString("status"), body.getString("message"),
+ messageDetail);
}
} else {
- return new BalanceAcctResponse(status, "error", responseB.getStatusLine().getReasonPhrase(), responseString);
+ return new BalanceAcctResponse(status, "error", responseB.getStatusLine().getReasonPhrase(),
+ responseString);
}
} catch (JSONException e) {
@@ -75,44 +112,58 @@ private IResponse balanceAcctRequest(IRequest request) throws GeneralException,
}
}
- private IResponse balanceAcctStampRequest (IRequest request, String comment) throws GeneralException, AuthException, IOException {
- try {
- CloseableHttpClient client = HttpClients.createDefault();
- HttpPost httpPost = new HttpPost(request.URI);
- httpPost.setHeader("Authorization", "Bearer " + request.Token);
- httpPost.setHeader("Content-Type", "application/json");
+ private IResponse balanceAcctStampRequest(IRequest request, String action, int stamps, String comment)
+ throws GeneralException, AuthException, IOException {
+ try (CloseableHttpClient client = HttpClients.createDefault()) {
+ HttpEntityEnclosingRequestBase httpRequest;
+
+ if ("add".equalsIgnoreCase(action)) {
+ httpRequest = new HttpPost(request.URI);
+ } else if ("remove".equalsIgnoreCase(action)) {
+ httpRequest = new HttpDeleteWithBody(request.URI);
+ } else {
+ throw new IllegalArgumentException("Acción no válida: " + action);
+ }
+ httpRequest.setHeader("Authorization", "bearer " + request.Token);
+ httpRequest.setHeader("Content-Type", "application/json");
RequestHelper.setTimeOut(request.options, 3500);
RequestHelper.setProxy(request.options, request.proxyHost, request.proxyPort);
- httpPost.setConfig(request.options.build());
-
+ httpRequest.setConfig(request.options.build());
JSONObject json = new JSONObject();
- json.put("Comentario", comment);
-
- StringEntity entity = new StringEntity(json.toString());
- httpPost.setEntity(entity);
-
- CloseableHttpResponse responseB = client.execute(httpPost);
-
- int status = responseB.getStatusLine().getStatusCode();
- String responseString = EntityUtils.toString(responseB.getEntity(), "UTF-8");
- JSONObject body = new JSONObject(responseString);
-
- client.close();
- responseB.close();
-
- if (status == 200) {
- return new BalanceAcctResponse(status, body.getString("status"), body.getString("data"), "");
- }else{
- String messageDetail = "";
+ json.put("stamps", stamps);
+ json.put("comment", comment);
+ httpRequest.setEntity(new StringEntity(json.toString()));
+ try (CloseableHttpResponse response = client.execute(httpRequest)) {
+ int status = response.getStatusLine().getStatusCode();
+ String responseString = EntityUtils.toString(response.getEntity(), "UTF-8");
+ JSONObject body = new JSONObject(responseString);
- if (!body.isNull("messageDetail")) {
- messageDetail = body.getString("messageDetail");
+ if (status == 200) {
+ return new BalanceAcctResponse(status, body.getString("status"),
+ "Nuevo saldo: " + body.getInt("data"), "");
+ } else {
+ String messageDetail = body.optString("messageDetail", "");
+ return new BalanceAcctResponse(status, body.getString("status"), body.getString("message"),
+ messageDetail);
}
- return new BalanceAcctResponse(status, body.getString("status"), body.getString("message"), messageDetail);
}
-
} catch (JSONException e) {
throw new GeneralException(500, e.getMessage());
}
}
+
+ class HttpDeleteWithBody extends HttpEntityEnclosingRequestBase {
+ public static final String METHOD_NAME = "DELETE";
+
+ public HttpDeleteWithBody(final String uri) {
+ super();
+ setURI(URI.create(uri));
+ }
+
+ @Override
+ public String getMethod() {
+ return METHOD_NAME;
+ }
+ }
+
}
\ No newline at end of file
diff --git a/src/main/java/Utils/Requests/IRequestor.java b/src/main/java/Utils/Requests/IRequestor.java
index 01e14fa..6e5e823 100644
--- a/src/main/java/Utils/Requests/IRequestor.java
+++ b/src/main/java/Utils/Requests/IRequestor.java
@@ -2,7 +2,7 @@
import java.io.IOException;
import java.io.UnsupportedEncodingException;
-import javax.xml.soap.SOAPException;
+import jakarta.xml.soap.SOAPException;
import org.apache.http.client.ClientProtocolException;
import Exceptions.AuthException;
import Exceptions.GeneralException;
diff --git a/src/main/java/Utils/Requests/StatusCfdi/StatusCancelationRequest.java b/src/main/java/Utils/Requests/StatusCfdi/StatusCancelationRequest.java
index 888e24e..7c755a2 100644
--- a/src/main/java/Utils/Requests/StatusCfdi/StatusCancelationRequest.java
+++ b/src/main/java/Utils/Requests/StatusCfdi/StatusCancelationRequest.java
@@ -3,17 +3,17 @@
import java.io.IOException;
import java.io.UnsupportedEncodingException;
-import javax.xml.soap.MessageFactory;
-import javax.xml.soap.MimeHeaders;
-import javax.xml.soap.SOAPBody;
-import javax.xml.soap.SOAPConnection;
-import javax.xml.soap.SOAPConnectionFactory;
-import javax.xml.soap.SOAPElement;
-import javax.xml.soap.SOAPEnvelope;
-import javax.xml.soap.SOAPException;
-import javax.xml.soap.SOAPFault;
-import javax.xml.soap.SOAPMessage;
-import javax.xml.soap.SOAPPart;
+import jakarta.xml.soap.MessageFactory;
+import jakarta.xml.soap.MimeHeaders;
+import jakarta.xml.soap.SOAPBody;
+import jakarta.xml.soap.SOAPConnection;
+import jakarta.xml.soap.SOAPConnectionFactory;
+import jakarta.xml.soap.SOAPElement;
+import jakarta.xml.soap.SOAPEnvelope;
+import jakarta.xml.soap.SOAPException;
+import jakarta.xml.soap.SOAPFault;
+import jakarta.xml.soap.SOAPMessage;
+import jakarta.xml.soap.SOAPPart;
import org.apache.http.client.ClientProtocolException;
import org.w3c.dom.Node;
diff --git a/src/main/java/Utils/Responses/Account/AccountUser/DataAccountUser.java b/src/main/java/Utils/Responses/Account/AccountUser/DataAccountUser.java
index 0c88ba8..13bc783 100644
--- a/src/main/java/Utils/Responses/Account/AccountUser/DataAccountUser.java
+++ b/src/main/java/Utils/Responses/Account/AccountUser/DataAccountUser.java
@@ -5,55 +5,47 @@
*/
public class DataAccountUser {
// Atributos que representan la información de una cuenta
- public String email;
- public String password;
+ public String idUsuario;
+ public String idDealer;
public String name;
- public String apellidoPaterno;
- public String apellidoMaterno;
+ public String taxId;
public String username;
- public String fechaUltimoPassword;
- public String telefono;
- public boolean administrador;
- public String profileValue;
- public String idUsuario;
- public String idCliente;
- public String stamps;
- public boolean unlimited;
+ public String lastPasswordChange;
+ public String email;
+ public String notificationEmail;
+ public boolean isAdmin;
public int profile;
- public boolean activo;
+ public boolean isActive;
public String registeredDate;
- public boolean eliminado;
- public String tokenAccess;
- public String tokenAccessHash;
+ public String accessToken;
+ public String phone;
+ public String stamps;
+ public boolean isUnlimited;
/**
- * Constructor que inicializa una instancia de DataAccountUser con la información de la cuenta.
+ * Constructor que inicializa una instancia de DataAccountUser con la
+ * información de la cuenta.
*/
- public DataAccountUser(String email, String password, String name, String apellidoPaterno,
- String apellidoMaterno, String username, String fechaUltimoPassword, String telefono,
- boolean administrador, String profileValue, String idUsuario, String idCliente, String stamps,
- boolean unlimited, int profile, boolean activo, String registeredDate, boolean eliminado,
- String tokenAccess, String tokenAccessHash) {
- this.email = email;
- this.password = password;
+ public DataAccountUser(String idUsuario, String idDealer, String name, String taxId, String username,
+ String lastPasswordChange, String email, String notificationEmail, boolean isAdmin,
+ int profile, boolean isActive, String registeredDate, String accessToken,
+ String phone, String stamps, boolean isUnlimited) {
+ this.idUsuario = idUsuario;
+ this.idDealer = idDealer;
this.name = name;
- this.apellidoPaterno = apellidoPaterno;
- this.apellidoMaterno = apellidoMaterno;
+ this.taxId = taxId;
this.username = username;
- this.fechaUltimoPassword = fechaUltimoPassword;
- this.telefono = telefono;
- this.administrador = administrador;
- this.profileValue = profileValue;
- this.idUsuario = idUsuario;
- this.idCliente = idCliente;
- this.stamps = stamps;
- this.unlimited = unlimited;
+ this.lastPasswordChange = lastPasswordChange;
+ this.email = email;
+ this.notificationEmail = notificationEmail;
+ this.isAdmin = isAdmin;
this.profile = profile;
- this.activo = activo;
+ this.isActive = isActive;
this.registeredDate = registeredDate;
- this.eliminado = eliminado;
- this.tokenAccess = tokenAccess;
- this.tokenAccessHash = tokenAccessHash;
+ this.accessToken = accessToken;
+ this.phone = phone;
+ this.stamps = stamps;
+ this.isUnlimited = isUnlimited;
}
}
diff --git a/src/main/java/Utils/Responses/BalanceAccount/BalanceAcctResponse.java b/src/main/java/Utils/Responses/BalanceAccount/BalanceAcctResponse.java
index 18d2629..73bca59 100644
--- a/src/main/java/Utils/Responses/BalanceAccount/BalanceAcctResponse.java
+++ b/src/main/java/Utils/Responses/BalanceAccount/BalanceAcctResponse.java
@@ -3,28 +3,66 @@
import Utils.Responses.IResponse;
public class BalanceAcctResponse extends IResponse {
- public String idSaldoCliente;
- public String idClienteUsuario;
- public int saldoTimbres;
- public int timbresUtilizados;
- public String fechaExpiracion;
- public boolean unlimited;
- public int timbresAsignados;
+ // Datos principales
+ public String idUserBalance;
+ public String idUser;
+ public int stampsBalance;
+ public int stampsUsed;
+ public int stampsAssigned;
+ public boolean isUnlimited;
+ public String expirationDate;
- public BalanceAcctResponse(int httpStatusCode, String status, String idSaldoCliente, String idClienteUsuario,
- int saldoTimbres, int timbresUtilizados, String fechaExpiracion, boolean unlimited, int timbresAsignados,
- String msg, String msgDetail) {
- super(httpStatusCode, status, msg, msgDetail);
- this.idSaldoCliente = idSaldoCliente;
- this.idClienteUsuario = idClienteUsuario;
- this.saldoTimbres = saldoTimbres;
- this.timbresUtilizados = timbresUtilizados;
- this.fechaExpiracion = fechaExpiracion;
- this.unlimited = unlimited;
- this.timbresAsignados = timbresAsignados;
- }
+ // Subestructura de la transacción
+ public LastTransaction lastTransaction;
- public BalanceAcctResponse(int httpStatusCode, String status, String msg, String msgDetail) {
- super(httpStatusCode, status, msg, msgDetail);
- }
+ // Constructor completo
+ public BalanceAcctResponse(int httpStatusCode, String status, String idUserBalance, String idUser,
+ int stampsBalance, int stampsUsed, int stampsAssigned, boolean isUnlimited,
+ String expirationDate, LastTransaction lastTransaction,
+ String msg, String msgDetail) {
+ super(httpStatusCode, status, msg, msgDetail);
+ this.idUserBalance = idUserBalance;
+ this.idUser = idUser;
+ this.stampsBalance = stampsBalance;
+ this.stampsUsed = stampsUsed;
+ this.stampsAssigned = stampsAssigned;
+ this.isUnlimited = isUnlimited;
+ this.expirationDate = expirationDate;
+ this.lastTransaction = lastTransaction;
+ }
+
+ // Constructor sin los datos de la transacción
+ public BalanceAcctResponse(int httpStatusCode, String status, String msg, String msgDetail) {
+ super(httpStatusCode, status, msg, msgDetail);
+ }
+
+ // Clase interna para la transacción
+ public static class LastTransaction {
+ public int folio;
+ public String idUser;
+ public String idUserReceiver;
+ public String nameReceiver;
+ public Integer stampsIn;
+ public Integer stampsOut; // Usamos Integer para poder representar 'null' en el JSON
+ public Integer stampsCurrent;
+ public String comment;
+ public String date;
+ public boolean isEmailSent;
+
+ // Constructor de la transacción
+ public LastTransaction(int folio, String idUser, String idUserReceiver, String nameReceiver,
+ int stampsIn, Integer stampsOut, int stampsCurrent, String comment, String date,
+ boolean isEmailSent) {
+ this.folio = folio;
+ this.idUser = idUser;
+ this.idUserReceiver = idUserReceiver;
+ this.nameReceiver = nameReceiver;
+ this.stampsIn = stampsIn;
+ this.stampsOut = stampsOut;
+ this.stampsCurrent = stampsCurrent;
+ this.comment = comment;
+ this.date = date;
+ this.isEmailSent = isEmailSent;
+ }
+ }
}
diff --git a/src/test/java/Tests/Account/AccountUser/SWAccountUserServiceTest.java b/src/test/java/Tests/Account/AccountUser/SWAccountUserServiceTest.java
index 46d8c06..b586fcf 100644
--- a/src/test/java/Tests/Account/AccountUser/SWAccountUserServiceTest.java
+++ b/src/test/java/Tests/Account/AccountUser/SWAccountUserServiceTest.java
@@ -8,7 +8,6 @@
import Services.Account.AccountUser.SWAccountUserService;
import Tests.Utils;
-import Utils.Helpers.EnumAccountUser.AccountUserProfiles;
import Utils.Responses.Account.AccountUser.AccountUserResponse;
import Utils.Responses.Account.AccountUser.DataAccountUser;
@@ -17,17 +16,18 @@ public class SWAccountUserServiceTest {
@Test
public void CrearUsuario_Success() throws Exception {
try {
- SWAccountUserService app = new SWAccountUserService(Utils.userSW, Utils.passwordSW, Utils.urlSW,
- Utils.urlApiSW,
- null, 0);
+ SWAccountUserService app = new SWAccountUserService(Utils.tokenSW, Utils.urlApiSW, null, 0);
AccountUserResponse response = null;
- response = (AccountUserResponse) app.CrearUsuario("hijoJava16_" + Utils.userSW.toString(),
- Utils.passwordSW + "$", "Prueba SW Java 1.6", Utils.rfc, 1, AccountUserProfiles.Hijo, false, true);
+ String newUser = "hijoJava16__" + Utils.userSW.toString();
+ response = (AccountUserResponse) app.CrearUsuario(newUser,
+ Utils.passwordSW + "$", "Prueba SW Java 1.6", Utils.rfc, 1, "3920000000", false,
+ "notification@email.com");
Assert.assertNotNull(response.HttpStatusCode);
Assert.assertNotNull(response.Status);
Assert.assertNotNull(response.message);
Assert.assertNotNull(response.messageDetail);
- Assert.assertTrue(response.Status.equals("success") || response.message.equals("AU1001Usuario ya existe."));
+ Assert.assertTrue(response.Status.equals("success")
+ || response.message.equals("El email '" + newUser + "' ya esta en uso."));
} catch (Exception e) {
}
}
@@ -36,13 +36,16 @@ public void CrearUsuario_Success() throws Exception {
public void CrearUsuario_Success_Token() throws Exception {
SWAccountUserService app = new SWAccountUserService(Utils.tokenSW, Utils.urlApiSW, null, 0);
AccountUserResponse response = null;
- response = (AccountUserResponse) app.CrearUsuario("hijoJava16__" + Utils.userSW.toString(),
- Utils.passwordSW + "$", "Prueba SW Java 1.6", Utils.rfc, 1, AccountUserProfiles.Hijo, false, true);
+ String newUser = "hijoJava16__" + Utils.userSW.toString();
+ response = (AccountUserResponse) app.CrearUsuario(newUser,
+ Utils.passwordSW + "$", "Prueba SW Java 1.6", Utils.rfc, 1, "3920000000", false,
+ "notification@email.com");
Assert.assertNotNull(response.HttpStatusCode);
Assert.assertNotNull(response.Status);
Assert.assertNotNull(response.message);
Assert.assertNotNull(response.messageDetail);
- Assert.assertTrue(response.Status.equals("success") || response.message.equals("AU1001Usuario ya existe."));
+ Assert.assertTrue(response.Status.equals("success")
+ || response.message.equals("El email '" + newUser + "' ya esta en uso."));
}
@Test
@@ -50,7 +53,8 @@ public void CrearUsuario_Error_Token() throws Exception {
SWAccountUserService app = new SWAccountUserService("Token...", Utils.urlApiSW, null, 0);
AccountUserResponse response = null;
response = (AccountUserResponse) app.CrearUsuario("hijoJava16__" + Utils.userSW.toString(),
- Utils.passwordSW + "$", "Prueba SW Java 1.6", Utils.rfc, 1, AccountUserProfiles.Hijo, false, true);
+ Utils.passwordSW + "$", "Prueba SW Java 1.6", Utils.rfc, 1, "3920000000", false,
+ "notification@email.com");
Assert.assertNotNull(response.HttpStatusCode);
Assert.assertNotNull(response.Status);
Assert.assertNotNull(response.message);
@@ -64,7 +68,7 @@ public void CrearUsuario_Error_Contra() throws Exception {
AccountUserResponse response = null;
response = (AccountUserResponse) app.CrearUsuario("hijoJava16__" + Utils.userSW.toString(),
Utils.passwordSW,
- "Prueba SW Java 1.6", Utils.rfc, 1, AccountUserProfiles.Hijo, false, true);
+ "Prueba SW Java 1.6", Utils.rfc, 1, "3920000000", false, "notification@email.com");
Assert.assertNotNull(response.HttpStatusCode);
Assert.assertNotNull(response.Status);
Assert.assertNotNull(response.message);
@@ -79,7 +83,7 @@ public void ActualizarUsuario_Error_UsuarioDiferente() throws Exception {
AccountUserResponse response = null;
response = (AccountUserResponse) app.ActualizarUsuario(
UUID.fromString("be2a859c-cd5f-42b5-b35d-f065b3a9aac4"),
- "prueba actualizada nombre", "XXXE0101010", false, true);
+ "prueba actualizada nombre", "XXXE0101010", false, "3920000000", "correo@email.com");
Assert.assertNotNull(response.HttpStatusCode);
Assert.assertNotNull(response.Status);
Assert.assertNotNull(response.message);
@@ -89,18 +93,18 @@ public void ActualizarUsuario_Error_UsuarioDiferente() throws Exception {
@Test
public void ActualizarUsuario_Success() throws Exception {
- SWAccountUserService app = new SWAccountUserService("hijoJava16__" + Utils.userSW, Utils.passwordSW + "$",
+ SWAccountUserService app = new SWAccountUserService(Utils.userSW, Utils.passwordSW,
Utils.urlSW, Utils.urlApiSW, null, 0);
AccountUserResponse response = null;
response = (AccountUserResponse) app.ActualizarUsuario(
- UUID.fromString("be2a859c-cd5f-42b5-b35d-f065b3a9aac4"),
- "prueba actualizada nombre", "XXXE0101010", false, true);
+ UUID.fromString("85B28EA4-0970-4B53-A6C4-D0F57216E934"),
+ "prueba actualizada nombre", "EKU9003173C9", false, "3120000000", "correo1@email.com");
Assert.assertNotNull(response.HttpStatusCode);
- Assert.assertNotNull(response.data);
Assert.assertNotNull(response.Status);
Assert.assertNotNull(response.message);
Assert.assertNotNull(response.messageDetail);
- Assert.assertTrue(response.Status.equals("success"));
+ Assert.assertTrue(response.Status.equals("success") || response.message
+ .equals("No es posible actualizar, los datos enviados son identicos a los actuales"));
}
@Test
@@ -108,7 +112,36 @@ public void EliminarUsuario_Error_NoEncontrado() throws Exception {
SWAccountUserService app = new SWAccountUserService(Utils.userSW, Utils.passwordSW, Utils.urlSW, Utils.urlApiSW,
null, 0);
AccountUserResponse response = null;
- response = (AccountUserResponse) app.EliminarUsuario(UUID.fromString("dec88273-6587-4f1e-9673-317b30e07aab"));
+ response = (AccountUserResponse) app
+ .EliminarUsuario(UUID.fromString("dec88273-6587-4f1e-9673-317b30e07aab"));
+ Assert.assertNotNull(response.HttpStatusCode);
+ Assert.assertNotNull(response.Status);
+ Assert.assertNotNull(response.message);
+ Assert.assertNotNull(response.messageDetail);
+ Assert.assertTrue(response.Status.equals("error"));
+ }
+
+ @Test
+ public void EliminarUsuario_Error_NoPertenecealDealer() throws Exception {
+ SWAccountUserService app = new SWAccountUserService(Utils.userSW, Utils.passwordSW, Utils.urlSW, Utils.urlApiSW,
+ null, 0);
+ AccountUserResponse response = null;
+ response = (AccountUserResponse) app
+ .EliminarUsuario(UUID.fromString("2c4ff198-0512-4128-a85d-41e8aedaa0d6"));
+ Assert.assertNotNull(response.HttpStatusCode);
+ Assert.assertNotNull(response.Status);
+ Assert.assertNotNull(response.message);
+ Assert.assertNotNull(response.messageDetail);
+ Assert.assertTrue(response.Status.equals("error"));
+ }
+
+ @Test
+ public void EliminarUsuario_Error_NoSePuedeEliminarPorqueTieneSaldo() throws Exception {
+ SWAccountUserService app = new SWAccountUserService(Utils.userSW, Utils.passwordSW, Utils.urlSW, Utils.urlApiSW,
+ null, 0);
+ AccountUserResponse response = null;
+ response = (AccountUserResponse) app
+ .EliminarUsuario(UUID.fromString("be2a859c-cd5f-42b5-b35d-f065b3a9aac4"));
Assert.assertNotNull(response.HttpStatusCode);
Assert.assertNotNull(response.Status);
Assert.assertNotNull(response.message);
@@ -121,47 +154,50 @@ public void EliminarUsuario_Success() throws Exception {
SWAccountUserService app = new SWAccountUserService(Utils.userSW, Utils.passwordSW, Utils.urlSW, Utils.urlApiSW,
null, 0);
AccountUserResponse response = null;
- response = (AccountUserResponse) app.EliminarUsuario(UUID.fromString("dec88273-6587-4f1e-9673-317b30e07aab"));
+ response = (AccountUserResponse) app
+ .EliminarUsuario(UUID.fromString("4522ae3c-681b-4129-9dea-516178ca4f84"));
Assert.assertNotNull(response.HttpStatusCode);
Assert.assertNotNull(response.Status);
Assert.assertNotNull(response.message);
Assert.assertNotNull(response.messageDetail);
Assert.assertTrue(
- response.Status.equals("success") || response.message.equals("No se encuentra registro de usuario"));
+ response.Status.equals("success")
+ || response.message.equals("El usuario ya ha sido previamente removido"));
}
@Test
public void EliminarUsuario_Token_Success() throws Exception {
SWAccountUserService app = new SWAccountUserService(Utils.tokenSW, Utils.urlApiSW, null, 0);
AccountUserResponse response = null;
- response = (AccountUserResponse) app.EliminarUsuario(UUID.fromString("dec88273-6587-4f1e-9673-317b30e07aab"));
+ response = (AccountUserResponse) app
+ .EliminarUsuario(UUID.fromString("dec88273-6587-4f1e-9673-317b30e07aab"));
Assert.assertNotNull(response.HttpStatusCode);
Assert.assertNotNull(response.Status);
Assert.assertNotNull(response.message);
Assert.assertNotNull(response.messageDetail);
Assert.assertTrue(
- response.Status.equals("success") || response.message.equals("No se encuentra registro de usuario"));
+ response.Status.equals("success")
+ || response.message.equals("El usuario ya ha sido previamente removido"));
}
@Test
- public void ListaUsuarios_Success() throws Exception {
+ public void TodosUsuariosHijo_Success() throws Exception {
SWAccountUserService app = new SWAccountUserService(Utils.userSW, Utils.passwordSW, Utils.urlSW, Utils.urlApiSW,
null, 0);
AccountUserResponse> response = null;
- response = (AccountUserResponse>) app.ObtenerUsuarios(1, 10);
+ response = (AccountUserResponse>) app.ObtenerUsuariosHijo();
List lista = response.data;
if (lista != null) {
for (int i = 0; i < lista.size(); i++) {
DataAccountUser dato = lista.get(i);
System.out.println("Email: " + dato.email);
- System.out.println("Password: " + dato.password);
System.out.println("Nombre: " + dato.name);
System.out.println("Perfil: " + dato.profile);
System.out.println("Stamps: " + dato.stamps);
System.out.println("idUsuario: " + dato.idUsuario);
- System.out.println("Rfc: " + dato.apellidoPaterno);
- System.out.println("Ilimitado: " + dato.unlimited);
- System.out.println("Activo: " + dato.activo + "\n");
+ System.out.println("Rfc: " + dato.taxId);
+ System.out.println("Ilimitado: " + dato.isUnlimited);
+ System.out.println("Activo: " + dato.isActive + "\n");
}
}
Assert.assertNotNull(response.HttpStatusCode);
@@ -172,23 +208,22 @@ public void ListaUsuarios_Success() throws Exception {
}
@Test
- public void ListaUsuarios_Token_Success() throws Exception {
+ public void TodosUsuariosHijo_Token_Success() throws Exception {
SWAccountUserService app = new SWAccountUserService(Utils.tokenSW, Utils.urlApiSW, null, 0);
AccountUserResponse> response = null;
- response = (AccountUserResponse>) app.ObtenerUsuarios(1, 10);
+ response = (AccountUserResponse>) app.ObtenerUsuariosHijo();
List lista = response.data;
if (lista != null) {
for (int i = 0; i < lista.size(); i++) {
DataAccountUser dato = lista.get(i);
System.out.println("Email: " + dato.email);
- System.out.println("Password: " + dato.password);
System.out.println("Nombre: " + dato.name);
System.out.println("Perfil: " + dato.profile);
System.out.println("Stamps: " + dato.stamps);
System.out.println("idUsuario: " + dato.idUsuario);
- System.out.println("Rfc: " + dato.apellidoPaterno);
- System.out.println("Ilimitado: " + dato.unlimited);
- System.out.println("Activo: " + dato.activo + "\n");
+ System.out.println("Rfc: " + dato.taxId);
+ System.out.println("Ilimitado: " + dato.isUnlimited);
+ System.out.println("Activo: " + dato.isActive + "\n");
}
}
Assert.assertNotNull(response.HttpStatusCode);
@@ -199,23 +234,22 @@ public void ListaUsuarios_Token_Success() throws Exception {
}
@Test
- public void ListaUsuarios_Token_Error() throws Exception {
+ public void TodosUsuariosHijo_Token_Error() throws Exception {
SWAccountUserService app = new SWAccountUserService("Token...", Utils.urlApiSW, null, 0);
AccountUserResponse> response = null;
- response = (AccountUserResponse>) app.ObtenerUsuarios(1, 10);
+ response = (AccountUserResponse>) app.ObtenerUsuariosHijo();
List lista = response.data;
if (lista != null) {
for (int i = 0; i < lista.size(); i++) {
DataAccountUser dato = lista.get(i);
System.out.println("Email: " + dato.email);
- System.out.println("Password: " + dato.password);
System.out.println("Nombre: " + dato.name);
System.out.println("Perfil: " + dato.profile);
System.out.println("Stamps: " + dato.stamps);
System.out.println("idUsuario: " + dato.idUsuario);
- System.out.println("Rfc: " + dato.apellidoPaterno);
- System.out.println("Ilimitado: " + dato.unlimited);
- System.out.println("Activo: " + dato.activo + "\n");
+ System.out.println("Rfc: " + dato.taxId);
+ System.out.println("Ilimitado: " + dato.isUnlimited);
+ System.out.println("Activo: " + dato.isActive + "\n");
}
}
Assert.assertNotNull(response.HttpStatusCode);
@@ -226,21 +260,23 @@ public void ListaUsuarios_Token_Error() throws Exception {
}
@Test
- public void ObtenerUsuario_Token_Success() throws Exception {
+ public void UsuariosPorRFC_Token_Success() throws Exception {
SWAccountUserService app = new SWAccountUserService(Utils.tokenSW, Utils.urlApiSW, null, 0);
- AccountUserResponse response = null;
- response = (AccountUserResponse) app.ObtenerInfoUsuario();
- DataAccountUser usuario = response.data;
- if (usuario != null) {
- System.out.println("Email: " + usuario.email);
- System.out.println("Password: " + usuario.password);
- System.out.println("Nombre: " + usuario.name);
- System.out.println("Perfil: " + usuario.profile);
- System.out.println("Stamps: " + usuario.stamps);
- System.out.println("idUsuario: " + usuario.idUsuario);
- System.out.println("Rfc: " + usuario.apellidoPaterno);
- System.out.println("Ilimitado: " + usuario.unlimited);
- System.out.println("Activo: " + usuario.activo + "\n");
+ AccountUserResponse> response = null;
+ response = (AccountUserResponse>) app.ObtenerUsuarioPorRfc("EKU9003173C9");
+ List lista = response.data;
+ if (lista != null) {
+ for (int i = 0; i < lista.size(); i++) {
+ DataAccountUser dato = lista.get(i);
+ System.out.println("Email: " + dato.email);
+ System.out.println("Nombre: " + dato.name);
+ System.out.println("Perfil: " + dato.profile);
+ System.out.println("Stamps: " + dato.stamps);
+ System.out.println("idUsuario: " + dato.idUsuario);
+ System.out.println("Rfc: " + dato.taxId);
+ System.out.println("Ilimitado: " + dato.isUnlimited);
+ System.out.println("Activo: " + dato.isActive + "\n");
+ }
}
Assert.assertNotNull(response.HttpStatusCode);
Assert.assertNotNull(response.Status);
@@ -250,71 +286,75 @@ public void ObtenerUsuario_Token_Success() throws Exception {
}
@Test
- public void ObtenerUsuario_Success() throws Exception {
- SWAccountUserService app = new SWAccountUserService(Utils.userSW, Utils.passwordSW, Utils.urlSW, Utils.urlApiSW,
- null, 0);
- AccountUserResponse response = null;
- response = (AccountUserResponse) app.ObtenerInfoUsuario();
- DataAccountUser usuario = response.data;
- if (usuario != null) {
- System.out.println("Email: " + usuario.email);
- System.out.println("Password: " + usuario.password);
- System.out.println("Nombre: " + usuario.name);
- System.out.println("Perfil: " + usuario.profile);
- System.out.println("Stamps: " + usuario.stamps);
- System.out.println("idUsuario: " + usuario.idUsuario);
- System.out.println("Rfc: " + usuario.apellidoPaterno);
- System.out.println("Ilimitado: " + usuario.unlimited);
- System.out.println("Activo: " + usuario.activo + "\n");
+ public void UsuariosPorRFC_Token_Error() throws Exception {
+ SWAccountUserService app = new SWAccountUserService("WrongToken...", Utils.urlApiSW, null, 0);
+ AccountUserResponse> response = null;
+ response = (AccountUserResponse>) app.ObtenerUsuarioPorRfc("EKU9003173C9");
+ List lista = response.data;
+ if (lista != null) {
+ for (int i = 0; i < lista.size(); i++) {
+ DataAccountUser dato = lista.get(i);
+ System.out.println("Email: " + dato.email);
+ System.out.println("Nombre: " + dato.name);
+ System.out.println("Perfil: " + dato.profile);
+ System.out.println("Stamps: " + dato.stamps);
+ System.out.println("idUsuario: " + dato.idUsuario);
+ System.out.println("Rfc: " + dato.taxId);
+ System.out.println("Ilimitado: " + dato.isUnlimited);
+ System.out.println("Activo: " + dato.isActive + "\n");
+ }
}
Assert.assertNotNull(response.HttpStatusCode);
Assert.assertNotNull(response.Status);
Assert.assertNotNull(response.message);
Assert.assertNotNull(response.messageDetail);
- Assert.assertTrue(response.Status.equals("success"));
+ Assert.assertTrue(response.Status.equals("error"));
}
@Test
- public void ObtenerUsuario_Token_Error() throws Exception {
- SWAccountUserService app = new SWAccountUserService("Token...", Utils.urlApiSW, null, 0);
- AccountUserResponse response = null;
- response = (AccountUserResponse) app.ObtenerInfoUsuario();
- DataAccountUser usuario = response.data;
- if (usuario != null) {
- System.out.println("Email: " + usuario.email);
- System.out.println("Password: " + usuario.password);
- System.out.println("Nombre: " + usuario.name);
- System.out.println("Perfil: " + usuario.profile);
- System.out.println("Stamps: " + usuario.stamps);
- System.out.println("idUsuario: " + usuario.idUsuario);
- System.out.println("Rfc: " + usuario.apellidoPaterno);
- System.out.println("Ilimitado: " + usuario.unlimited);
- System.out.println("Activo: " + usuario.activo + "\n");
+ public void UsuariosActivos_Token_Success() throws Exception {
+ SWAccountUserService app = new SWAccountUserService(Utils.tokenSW, Utils.urlApiSW, null, 0);
+ AccountUserResponse> response = null;
+ response = (AccountUserResponse>) app.ObtenerUsuariosActivos(true);
+ List lista = response.data;
+ if (lista != null) {
+ for (int i = 0; i < lista.size(); i++) {
+ DataAccountUser dato = lista.get(i);
+ System.out.println("Email: " + dato.email);
+ System.out.println("Nombre: " + dato.name);
+ System.out.println("Perfil: " + dato.profile);
+ System.out.println("Stamps: " + dato.stamps);
+ System.out.println("idUsuario: " + dato.idUsuario);
+ System.out.println("Rfc: " + dato.taxId);
+ System.out.println("Ilimitado: " + dato.isUnlimited);
+ System.out.println("Activo: " + dato.isActive + "\n");
+ }
}
Assert.assertNotNull(response.HttpStatusCode);
Assert.assertNotNull(response.Status);
Assert.assertNotNull(response.message);
Assert.assertNotNull(response.messageDetail);
- Assert.assertTrue(response.Status.equals("error"));
+ Assert.assertTrue(response.Status.equals("success"));
}
@Test
- public void ObtenerUsuarioId_Token_Success() throws Exception {
+ public void UsuariosNoActivos_Token_Success() throws Exception {
SWAccountUserService app = new SWAccountUserService(Utils.tokenSW, Utils.urlApiSW, null, 0);
- AccountUserResponse response = null;
- response = (AccountUserResponse) app
- .ObtenerInfoUsuarioId(UUID.fromString("be2a859c-cd5f-42b5-b35d-f065b3a9aac4"));
- DataAccountUser usuario = response.data;
- if (usuario != null) {
- System.out.println("Email: " + usuario.email);
- System.out.println("Password: " + usuario.password);
- System.out.println("Nombre: " + usuario.name);
- System.out.println("Perfil: " + usuario.profile);
- System.out.println("Stamps: " + usuario.stamps);
- System.out.println("idUsuario: " + usuario.idUsuario);
- System.out.println("Rfc: " + usuario.apellidoPaterno);
- System.out.println("Ilimitado: " + usuario.unlimited);
- System.out.println("Activo: " + usuario.activo + "\n");
+ AccountUserResponse> response = null;
+ response = (AccountUserResponse>) app.ObtenerUsuariosActivos(false);
+ List lista = response.data;
+ if (lista != null) {
+ for (int i = 0; i < lista.size(); i++) {
+ DataAccountUser dato = lista.get(i);
+ System.out.println("Email: " + dato.email);
+ System.out.println("Nombre: " + dato.name);
+ System.out.println("Perfil: " + dato.profile);
+ System.out.println("Stamps: " + dato.stamps);
+ System.out.println("idUsuario: " + dato.idUsuario);
+ System.out.println("Rfc: " + dato.taxId);
+ System.out.println("Ilimitado: " + dato.isUnlimited);
+ System.out.println("Activo: " + dato.isActive + "\n");
+ }
}
Assert.assertNotNull(response.HttpStatusCode);
Assert.assertNotNull(response.Status);
@@ -324,23 +364,49 @@ public void ObtenerUsuarioId_Token_Success() throws Exception {
}
@Test
- public void ObtenerUsuarioId_Success() throws Exception {
- SWAccountUserService app = new SWAccountUserService(Utils.userSW, Utils.passwordSW, Utils.urlSW, Utils.urlApiSW,
- null, 0);
- AccountUserResponse response = null;
- response = (AccountUserResponse) app
- .ObtenerInfoUsuarioId(UUID.fromString("be2a859c-cd5f-42b5-b35d-f065b3a9aac4"));
- DataAccountUser usuario = response.data;
- if (usuario != null) {
- System.out.println("Email: " + usuario.email);
- System.out.println("Password: " + usuario.password);
- System.out.println("Nombre: " + usuario.name);
- System.out.println("Perfil: " + usuario.profile);
- System.out.println("Stamps: " + usuario.stamps);
- System.out.println("idUsuario: " + usuario.idUsuario);
- System.out.println("Rfc: " + usuario.apellidoPaterno);
- System.out.println("Ilimitado: " + usuario.unlimited);
- System.out.println("Activo: " + usuario.activo + "\n");
+ public void UsuariosActivos_Token_Error() throws Exception {
+ SWAccountUserService app = new SWAccountUserService("WrongToken...", Utils.urlApiSW, null, 0);
+ AccountUserResponse> response = null;
+ response = (AccountUserResponse>) app.ObtenerUsuarioPorRfc("EKU9003173C9");
+ List lista = response.data;
+ if (lista != null) {
+ for (int i = 0; i < lista.size(); i++) {
+ DataAccountUser dato = lista.get(i);
+ System.out.println("Email: " + dato.email);
+ System.out.println("Nombre: " + dato.name);
+ System.out.println("Perfil: " + dato.profile);
+ System.out.println("Stamps: " + dato.stamps);
+ System.out.println("idUsuario: " + dato.idUsuario);
+ System.out.println("Rfc: " + dato.taxId);
+ System.out.println("Ilimitado: " + dato.isUnlimited);
+ System.out.println("Activo: " + dato.isActive + "\n");
+ }
+ }
+ Assert.assertNotNull(response.HttpStatusCode);
+ Assert.assertNotNull(response.Status);
+ Assert.assertNotNull(response.message);
+ Assert.assertNotNull(response.messageDetail);
+ Assert.assertTrue(response.Status.equals("error"));
+ }
+
+ @Test
+ public void UsuariosPorEmail_Token_Success() throws Exception {
+ SWAccountUserService app = new SWAccountUserService(Utils.tokenSW, Utils.urlApiSW, null, 0);
+ AccountUserResponse> response = null;
+ response = (AccountUserResponse>) app.ObtenerUsuarioPorEmail(Utils.userSW);
+ List lista = response.data;
+ if (lista != null) {
+ for (int i = 0; i < lista.size(); i++) {
+ DataAccountUser dato = lista.get(i);
+ System.out.println("Email: " + dato.email);
+ System.out.println("Nombre: " + dato.name);
+ System.out.println("Perfil: " + dato.profile);
+ System.out.println("Stamps: " + dato.stamps);
+ System.out.println("idUsuario: " + dato.idUsuario);
+ System.out.println("Rfc: " + dato.taxId);
+ System.out.println("Ilimitado: " + dato.isUnlimited);
+ System.out.println("Activo: " + dato.isActive + "\n");
+ }
}
Assert.assertNotNull(response.HttpStatusCode);
Assert.assertNotNull(response.Status);
@@ -350,28 +416,29 @@ public void ObtenerUsuarioId_Success() throws Exception {
}
@Test
- public void ObtenerUsuarioId_Token_Error() throws Exception {
- SWAccountUserService app = new SWAccountUserService("Token...", Utils.urlApiSW, null, 0);
- AccountUserResponse response = null;
- response = (AccountUserResponse) app
- .ObtenerInfoUsuarioId(UUID.fromString("be2a859c-cd5f-42e6-b35d-f065b3a9aac4"));
- DataAccountUser usuario = response.data;
- if (usuario != null) {
- System.out.println("Email: " + usuario.email);
- System.out.println("Password: " + usuario.password);
- System.out.println("Nombre: " + usuario.name);
- System.out.println("Perfil: " + usuario.profile);
- System.out.println("Stamps: " + usuario.stamps);
- System.out.println("idUsuario: " + usuario.idUsuario);
- System.out.println("Rfc: " + usuario.apellidoPaterno);
- System.out.println("Ilimitado: " + usuario.unlimited);
- System.out.println("Activo: " + usuario.activo + "\n");
+ public void UsuariosPorId_Token_Success() throws Exception {
+ SWAccountUserService app = new SWAccountUserService(Utils.tokenSW, Utils.urlApiSW, null, 0);
+ AccountUserResponse> response = null;
+ response = (AccountUserResponse>) app.ObtenerUsuarioPorId(UUID.fromString("be2a859c-cd5f-42b5-b35d-f065b3a9aac4"));
+ List lista = response.data;
+ if (lista != null) {
+ for (int i = 0; i < lista.size(); i++) {
+ DataAccountUser dato = lista.get(i);
+ System.out.println("Email: " + dato.email);
+ System.out.println("Nombre: " + dato.name);
+ System.out.println("Perfil: " + dato.profile);
+ System.out.println("Stamps: " + dato.stamps);
+ System.out.println("idUsuario: " + dato.idUsuario);
+ System.out.println("Rfc: " + dato.taxId);
+ System.out.println("Ilimitado: " + dato.isUnlimited);
+ System.out.println("Activo: " + dato.isActive + "\n");
+ }
}
Assert.assertNotNull(response.HttpStatusCode);
Assert.assertNotNull(response.Status);
Assert.assertNotNull(response.message);
Assert.assertNotNull(response.messageDetail);
- Assert.assertTrue(response.Status.equals("error"));
+ Assert.assertTrue(response.Status.equals("success"));
}
}
diff --git a/src/test/java/Tests/Authentication/SWAuthenticationServiceTest.java b/src/test/java/Tests/Authentication/SWAuthenticationServiceTest.java
index c0628b2..e0ae4e0 100644
--- a/src/test/java/Tests/Authentication/SWAuthenticationServiceTest.java
+++ b/src/test/java/Tests/Authentication/SWAuthenticationServiceTest.java
@@ -11,10 +11,10 @@
import Exceptions.GeneralException;
public class SWAuthenticationServiceTest {
- @Test
- public void testAuth(){
+ @Test
+ public void testAuth() {
try {
- SWAuthenticationService auth = new SWAuthenticationService(Utils.userSW, Utils.passwordSW, Utils.urlSW);
+ SWAuthenticationService auth = new SWAuthenticationService(Utils.userSW, Utils.passwordSW, Utils.urlSW);
SuccessAuthResponse res = (SuccessAuthResponse) auth.Token();
String expected = "success";
System.out.println(res.token);
@@ -23,22 +23,23 @@ public void testAuth(){
System.out.println(res.messageDetail);
Assert.assertTrue(expected.equalsIgnoreCase(res.Status));
} catch (Exception e) {
- Assert.fail(e.getMessage());
+ Assert.fail(e.getMessage());
}
}
- @Test
- public void testBadAuth(){
+
+ @Test
+ public void testBadAuth() {
try {
- SWAuthenticationService auth = new SWAuthenticationService(Utils.userSW, Utils.passwordSW, Utils.urlSW);
+ SWAuthenticationService auth = new SWAuthenticationService(Utils.userSW, Utils.passwordSW, Utils.urlSW);
auth.Token();
} catch (AuthException e) {
System.out.println(e.getErrorMSG());
System.out.println(e.getHttpStatusCode());
Assert.assertTrue(true);
} catch (GeneralException e) {
- Assert.fail(e.getMessage());
- } catch (IOException e) {
- Assert.fail(e.getMessage());
- }
+ Assert.fail(e.getMessage());
+ } catch (IOException e) {
+ Assert.fail(e.getMessage());
+ }
}
}
diff --git a/src/test/java/Tests/BalanceAccount/SWBalanceAccountServiceTest.java b/src/test/java/Tests/BalanceAccount/SWBalanceAccountServiceTest.java
index 74b56f4..cf36b83 100644
--- a/src/test/java/Tests/BalanceAccount/SWBalanceAccountServiceTest.java
+++ b/src/test/java/Tests/BalanceAccount/SWBalanceAccountServiceTest.java
@@ -5,94 +5,124 @@
import Services.BalanceAccount.SWBalanceAccountService;
import Tests.Utils;
import Utils.Responses.BalanceAccount.BalanceAcctResponse;
-import Utils.Helpers.EnumBalanceStamp.AccountBalanceAction;
import java.io.IOException;
import java.util.UUID;
import org.junit.Assert;
import org.junit.Test;
-
public class SWBalanceAccountServiceTest {
@Test
public void testBalanceAccountService() throws AuthException, GeneralException, IOException {
- SWBalanceAccountService app = new SWBalanceAccountService(Utils.userSW, Utils.passwordSW, Utils.urlSW);
+ SWBalanceAccountService app = new SWBalanceAccountService(Utils.userSW, Utils.passwordSW, Utils.urlSW,
+ Utils.urlApiSW);
BalanceAcctResponse response = (BalanceAcctResponse) app.GetBalanceAccount();
System.out.println(response.Status);
System.out.println(response.HttpStatusCode);
- System.out.println(response.idSaldoCliente);
- System.out.println(response.idClienteUsuario);
- System.out.println(response.saldoTimbres);
- System.out.println(response.timbresUtilizados);
- System.out.println(response.fechaExpiracion);
- System.out.println(response.unlimited);
- System.out.println(response.timbresAsignados);
+ System.out.println(response.idUserBalance);
+ System.out.println(response.idUser);
+ System.out.println(response.stampsBalance);
+ System.out.println(response.stampsUsed);
+ System.out.println(response.expirationDate);
+ System.out.println(response.isUnlimited);
+ System.out.println(response.stampsAssigned);
+ if (response.lastTransaction != null) {
+ System.out.println("Folio: " + response.lastTransaction.folio);
+ System.out.println("ID Usuario: " + response.lastTransaction.idUser);
+ System.out.println("ID Usuario Receptor: " + response.lastTransaction.idUserReceiver);
+ System.out.println("Nombre Receptor: " + response.lastTransaction.nameReceiver);
+ System.out.println("Stamps In: " + response.lastTransaction.stampsIn);
+ System.out.println("Stamps Out: "
+ + (response.lastTransaction.stampsOut != null ? response.lastTransaction.stampsOut : "null"));
+ System.out.println("Stamps Current: " + response.lastTransaction.stampsCurrent);
+ System.out.println("Comentario: " + response.lastTransaction.comment);
+ System.out.println("Fecha: " + response.lastTransaction.date);
+ System.out.println("Email Enviado: " + response.lastTransaction.isEmailSent);
+ } else {
+ System.out.println("No hay transacción disponible.");
+ }
String expect_status = "success";
Assert.assertTrue(expect_status.equalsIgnoreCase(response.Status));
}
+
@Test
public void testBalanceAccountService_authToken() throws Exception {
- SWBalanceAccountService app = new SWBalanceAccountService(Utils.tokenSW, Utils.urlSW);
+ SWBalanceAccountService app = new SWBalanceAccountService(Utils.tokenSW, Utils.urlApiSW);
BalanceAcctResponse response = (BalanceAcctResponse) app.GetBalanceAccount();
System.out.println(response.Status);
System.out.println(response.HttpStatusCode);
- System.out.println(response.idSaldoCliente);
- System.out.println(response.idClienteUsuario);
- System.out.println(response.saldoTimbres);
- System.out.println(response.timbresUtilizados);
- System.out.println(response.fechaExpiracion);
- System.out.println(response.unlimited);
- System.out.println(response.timbresAsignados);
+ System.out.println(response.idUserBalance);
+ System.out.println(response.idUser);
+ System.out.println(response.stampsBalance);
+ System.out.println(response.stampsUsed);
+ System.out.println(response.expirationDate);
+ System.out.println(response.isUnlimited);
+ System.out.println(response.stampsAssigned);
+ if (response.lastTransaction != null) {
+ System.out.println("Folio: " + response.lastTransaction.folio);
+ System.out.println("ID Usuario: " + response.lastTransaction.idUser);
+ System.out.println("ID Usuario Receptor: " + response.lastTransaction.idUserReceiver);
+ System.out.println("Nombre Receptor: " + response.lastTransaction.nameReceiver);
+ System.out.println("Stamps In: " + response.lastTransaction.stampsIn);
+ System.out.println("Stamps Out: "
+ + (response.lastTransaction.stampsOut != null ? response.lastTransaction.stampsOut : "null"));
+ System.out.println("Stamps Current: " + response.lastTransaction.stampsCurrent);
+ System.out.println("Comentario: " + response.lastTransaction.comment);
+ System.out.println("Fecha: " + response.lastTransaction.date);
+ System.out.println("Email Enviado: " + response.lastTransaction.isEmailSent);
+ } else {
+ System.out.println("No hay transacción disponible.");
+ }
String expect_status = "success";
Assert.assertTrue(expect_status.equalsIgnoreCase(response.Status));
}
+
@Test
public void testBalanceAccountService_incorrectToken() {
- try {
- SWBalanceAccountService app = new SWBalanceAccountService("wrong token", Utils.urlSW);
+ try {
+ SWBalanceAccountService app = new SWBalanceAccountService("wrong token", Utils.urlSW);
BalanceAcctResponse response = (BalanceAcctResponse) app.GetBalanceAccount();
System.out.println(response.Status);
System.out.println(response.HttpStatusCode);
- System.out.println(response.idSaldoCliente);
- System.out.println(response.idClienteUsuario);
- System.out.println(response.saldoTimbres);
- System.out.println(response.timbresUtilizados);
- System.out.println(response.fechaExpiracion);
- System.out.println(response.unlimited);
- System.out.println(response.timbresAsignados);
- Assert.assertTrue(response.HttpStatusCode == 401);
- }
- catch(AuthException e) {
- Assert.fail();
- } catch (GeneralException e) {
- Assert.fail();
- } catch (IOException e) {
- Assert.fail();
- }
- }
- @Test
- public void testBalanceAccountService_emptyUserParams(){
- try {
- SWBalanceAccountService app = new SWBalanceAccountService("", "", "");
- app.GetBalanceAccount();
- }
- catch(AuthException e) {
- System.out.println(e.getErrorMSG());
- System.out.println(e.getHttpStatusCode());
- Assert.assertTrue(true);
- } catch (GeneralException e) {
- Assert.fail();
- } catch (IOException e) {
- Assert.fail();
- }
+ System.out.println(response.idUserBalance);
+ System.out.println(response.idUser);
+ System.out.println(response.stampsBalance);
+ System.out.println(response.stampsUsed);
+ System.out.println(response.expirationDate);
+ System.out.println(response.isUnlimited);
+ System.out.println(response.stampsAssigned);
+ if (response.lastTransaction != null) {
+ System.out.println("Folio: " + response.lastTransaction.folio);
+ System.out.println("ID Usuario: " + response.lastTransaction.idUser);
+ System.out.println("ID Usuario Receptor: " + response.lastTransaction.idUserReceiver);
+ System.out.println("Nombre Receptor: " + response.lastTransaction.nameReceiver);
+ System.out.println("Stamps In: " + response.lastTransaction.stampsIn);
+ System.out.println("Stamps Out: "
+ + (response.lastTransaction.stampsOut != null ? response.lastTransaction.stampsOut : "null"));
+ System.out.println("Stamps Current: " + response.lastTransaction.stampsCurrent);
+ System.out.println("Comentario: " + response.lastTransaction.comment);
+ System.out.println("Fecha: " + response.lastTransaction.date);
+ System.out.println("Email Enviado: " + response.lastTransaction.isEmailSent);
+ } else {
+ System.out.println("No hay transacción disponible.");
+ }
+ } catch (AuthException e) {
+ Assert.fail();
+ } catch (GeneralException e) {
+ Assert.fail();
+ } catch (IOException e) {
+ Assert.fail();
+ }
}
+
@Test
- public void testAddStampsByToken_Sucess(){
+ public void testAddStampsByToken_Sucess() {
try {
- SWBalanceAccountService app = new SWBalanceAccountService(Utils.tokenSW, Utils.urlApiSW);
- BalanceAcctResponse response = (BalanceAcctResponse) app.AddBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
+ SWBalanceAccountService app = new SWBalanceAccountService(Utils.tokenSW, Utils.urlApiSW);
+ BalanceAcctResponse response = (BalanceAcctResponse) app
+ .AddBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
Assert.assertNotNull(response);
String expect_status = "success";
Assert.assertTrue(expect_status.equalsIgnoreCase(response.Status));
@@ -106,10 +136,12 @@ public void testAddStampsByToken_Sucess(){
}
@Test
- public void testAddStampsByAuth_Sucess(){
+ public void testAddStampsByAuth_Sucess() {
try {
- SWBalanceAccountService app = new SWBalanceAccountService(Utils.userSW, Utils.passwordSW, Utils.urlSW, Utils.urlApiSW);
- BalanceAcctResponse response = (BalanceAcctResponse) app.AddBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
+ SWBalanceAccountService app = new SWBalanceAccountService(Utils.userSW, Utils.passwordSW, Utils.urlSW,
+ Utils.urlApiSW);
+ BalanceAcctResponse response = (BalanceAcctResponse) app
+ .AddBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
Assert.assertNotNull(response);
String expect_status = "success";
Assert.assertTrue(expect_status.equalsIgnoreCase(response.Status));
@@ -120,14 +152,15 @@ public void testAddStampsByAuth_Sucess(){
} catch (IOException e) {
Assert.fail();
}
-
+
}
@Test
- public void testAddStampsByToken_emptyToken(){
+ public void testAddStampsByToken_emptyToken() {
try {
- SWBalanceAccountService app = new SWBalanceAccountService("", Utils.urlApiSW);
- BalanceAcctResponse response = (BalanceAcctResponse) app.AddBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
+ SWBalanceAccountService app = new SWBalanceAccountService("", Utils.urlApiSW);
+ BalanceAcctResponse response = (BalanceAcctResponse) app
+ .AddBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
Assert.assertNotNull(response);
String expect_status = "error";
Assert.assertTrue(expect_status.equalsIgnoreCase(response.Status));
@@ -141,10 +174,11 @@ public void testAddStampsByToken_emptyToken(){
}
@Test
- public void testAddStampsByAuth_emptyUser(){
+ public void testAddStampsByAuth_emptyUser() {
try {
- SWBalanceAccountService app = new SWBalanceAccountService("", "", Utils.urlApiSW);
- BalanceAcctResponse response = (BalanceAcctResponse) app.AddBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
+ SWBalanceAccountService app = new SWBalanceAccountService("", "", Utils.urlSW, Utils.urlApiSW);
+ BalanceAcctResponse response = (BalanceAcctResponse) app
+ .AddBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
Assert.assertNotNull(response);
String expect_status = "error";
Assert.assertTrue(expect_status.equalsIgnoreCase(response.Status));
@@ -158,10 +192,11 @@ public void testAddStampsByAuth_emptyUser(){
}
@Test
- public void testAddStampsByToken_incorrectToken(){
+ public void testAddStampsByToken_incorrectToken() {
try {
- SWBalanceAccountService app = new SWBalanceAccountService("empty.token.sw", Utils.urlApiSW);
- BalanceAcctResponse response = (BalanceAcctResponse)app.AddBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
+ SWBalanceAccountService app = new SWBalanceAccountService("empty.token.sw", Utils.urlApiSW);
+ BalanceAcctResponse response = (BalanceAcctResponse) app
+ .AddBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
Assert.assertNotNull(response);
String expect_status = "error";
Assert.assertTrue(expect_status.equalsIgnoreCase(response.Status));
@@ -175,10 +210,12 @@ public void testAddStampsByToken_incorrectToken(){
}
@Test
- public void testAddStampsByAuth_incorrectUser(){
+ public void testAddStampsByAuth_incorrectUser() {
try {
- SWBalanceAccountService app = new SWBalanceAccountService("wronguser@mail.com", "12345678a", Utils.urlApiSW);
- BalanceAcctResponse response = (BalanceAcctResponse) app.AddBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
+ SWBalanceAccountService app = new SWBalanceAccountService("wronguser@mail.com", "12345678a",
+ Utils.urlSW,Utils.urlApiSW);
+ BalanceAcctResponse response = (BalanceAcctResponse) app
+ .AddBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
Assert.assertNotNull(response);
String expect_status = "error";
Assert.assertTrue(expect_status.equalsIgnoreCase(response.Status));
@@ -194,8 +231,9 @@ public void testAddStampsByAuth_incorrectUser(){
@Test
public void testRemoveStampsByToken_Sucess() {
try {
- SWBalanceAccountService app = new SWBalanceAccountService(Utils.tokenSW, Utils.urlApiSW);
- BalanceAcctResponse response = (BalanceAcctResponse) app.RemoveBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
+ SWBalanceAccountService app = new SWBalanceAccountService(Utils.tokenSW, Utils.urlApiSW);
+ BalanceAcctResponse response = (BalanceAcctResponse) app.RemoveBalanceAccountStamp(
+ UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
Assert.assertNotNull(response);
String expect_status = "success";
Assert.assertTrue(expect_status.equalsIgnoreCase(response.Status));
@@ -211,8 +249,10 @@ public void testRemoveStampsByToken_Sucess() {
@Test
public void testRemoveStampsByAuth_Sucess() {
try {
- SWBalanceAccountService app = new SWBalanceAccountService(Utils.userSW, Utils.passwordSW, Utils.urlSW, Utils.urlApiSW);
- BalanceAcctResponse response = (BalanceAcctResponse) app.RemoveBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
+ SWBalanceAccountService app = new SWBalanceAccountService(Utils.userSW, Utils.passwordSW, Utils.urlSW,
+ Utils.urlApiSW);
+ BalanceAcctResponse response = (BalanceAcctResponse) app.RemoveBalanceAccountStamp(
+ UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
Assert.assertNotNull(response);
String expect_status = "success";
Assert.assertTrue(expect_status.equalsIgnoreCase(response.Status));
@@ -222,14 +262,15 @@ public void testRemoveStampsByAuth_Sucess() {
Assert.fail();
} catch (IOException e) {
Assert.fail();
- }
+ }
}
@Test
public void testRemoveStampsByToken_emptyToken() {
try {
- SWBalanceAccountService app = new SWBalanceAccountService("", Utils.urlApiSW);
- BalanceAcctResponse response = (BalanceAcctResponse) app.RemoveBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
+ SWBalanceAccountService app = new SWBalanceAccountService("", Utils.urlApiSW);
+ BalanceAcctResponse response = (BalanceAcctResponse) app.RemoveBalanceAccountStamp(
+ UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
Assert.assertNotNull(response);
String expect_status = "error";
Assert.assertTrue(expect_status.equalsIgnoreCase(response.Status));
@@ -245,8 +286,9 @@ public void testRemoveStampsByToken_emptyToken() {
@Test
public void testRemoveStampsByAuth_emptyUser() {
try {
- SWBalanceAccountService app = new SWBalanceAccountService("", "", Utils.urlApiSW);
- BalanceAcctResponse response = (BalanceAcctResponse) app.RemoveBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
+ SWBalanceAccountService app = new SWBalanceAccountService("", "", Utils.urlSW,Utils.urlApiSW);
+ BalanceAcctResponse response = (BalanceAcctResponse) app.RemoveBalanceAccountStamp(
+ UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
Assert.assertNotNull(response);
String expect_status = "error";
Assert.assertTrue(expect_status.equalsIgnoreCase(response.Status));
@@ -262,8 +304,9 @@ public void testRemoveStampsByAuth_emptyUser() {
@Test
public void testRemoveStampsByToken_incorrectToken() {
try {
- SWBalanceAccountService app = new SWBalanceAccountService("empty.token.sw", Utils.urlApiSW);
- BalanceAcctResponse response = (BalanceAcctResponse) app.RemoveBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
+ SWBalanceAccountService app = new SWBalanceAccountService("empty.token.sw", Utils.urlApiSW);
+ BalanceAcctResponse response = (BalanceAcctResponse) app.RemoveBalanceAccountStamp(
+ UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
Assert.assertNotNull(response);
String expect_status = "error";
Assert.assertTrue(expect_status.equalsIgnoreCase(response.Status));
@@ -279,8 +322,10 @@ public void testRemoveStampsByToken_incorrectToken() {
@Test
public void testRemoveStampsByAuth_incorrectUser() {
try {
- SWBalanceAccountService app = new SWBalanceAccountService("wronguser@mail.com", "12345678a", Utils.urlApiSW);
- BalanceAcctResponse response = (BalanceAcctResponse) app.RemoveBalanceAccountStamp(UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
+ SWBalanceAccountService app = new SWBalanceAccountService("wronguser@mail.com", "12345678a",
+ Utils.urlSW,Utils.urlApiSW);
+ BalanceAcctResponse response = (BalanceAcctResponse) app.RemoveBalanceAccountStamp(
+ UUID.fromString("828f19b1-77dc-48bc-9cfa-d48b5cf7e30c"), 1, "PruebaJava16");
Assert.assertNotNull(response);
String expect_status = "error";
Assert.assertTrue(expect_status.equalsIgnoreCase(response.Status));
diff --git a/src/test/java/Tests/Pdf/SWPdfServiceTest.java b/src/test/java/Tests/Pdf/SWPdfServiceTest.java
index 83588eb..9d61858 100644
--- a/src/test/java/Tests/Pdf/SWPdfServiceTest.java
+++ b/src/test/java/Tests/Pdf/SWPdfServiceTest.java
@@ -276,7 +276,7 @@ public void GeneratePdf_CP20__Success() throws AuthException, GeneralException,
@Test
public void RegeneratePdf_Success() throws GeneralException, AuthException, IOException {
SWPdfService pdf = new SWPdfService(Utils.tokenSW, Utils.urlApiSW);
- PdfResponse response = (PdfResponse)pdf.RegeneratePdf("4714f6f7-ccb4-4eb5-8ba6-3a523092e2b4");
+ PdfResponse response = (PdfResponse)pdf.RegeneratePdf("da3b7571-1cfd-4fb7-8bcd-123ef1cba77f");
Assert.assertNotNull(response);
System.out.println(response.message);
Assert.assertTrue(response.Status.equals("success"));
@@ -285,7 +285,7 @@ public void RegeneratePdf_Success() throws GeneralException, AuthException, IOEx
@Test
public void RegeneratePdf_Auth_Success() throws AuthException, GeneralException, IOException{
SWPdfService pdf = new SWPdfService(Utils.userSW, Utils.passwordSW, Utils.urlApiSW, Utils.urlSW);
- PdfResponse response = (PdfResponse)pdf.RegeneratePdf("4714f6f7-ccb4-4eb5-8ba6-3a523092e2b4");
+ PdfResponse response = (PdfResponse)pdf.RegeneratePdf("da3b7571-1cfd-4fb7-8bcd-123ef1cba77f");
Assert.assertNotNull(response);
System.out.println(response.message);
Assert.assertTrue(response.Status.equals("success"));
diff --git a/src/test/java/Tests/Resend/SWResendServiceTest.java b/src/test/java/Tests/Resend/SWResendServiceTest.java
index 9e51001..e37797e 100644
--- a/src/test/java/Tests/Resend/SWResendServiceTest.java
+++ b/src/test/java/Tests/Resend/SWResendServiceTest.java
@@ -16,7 +16,7 @@ public void ResendEmail_Success() throws Exception {
null,
0);
ResendResponse response = null;
- response = (ResendResponse) app.ResendEmail(UUID.fromString("4714f6f7-ccb4-4eb5-8ba6-3a523092e2b4"),
+ response = (ResendResponse) app.ResendEmail(UUID.fromString("da3b7571-1cfd-4fb7-8bcd-123ef1cba77f"),
"ex1@gmail.com,ex2@gmail.com,ex3@gmail.com,ex4@gmail.com,ex5@gmail.com");
Assert.assertNotNull(response.HttpStatusCode);
Assert.assertNotNull(response.Status);
@@ -31,7 +31,7 @@ public void ResendEmail_Success() throws Exception {
public void ResendEmail_Token_Success() throws Exception {
SWResendService app = new SWResendService(Utils.tokenSW, Utils.urlApiSW, null, 0);
ResendResponse response = null;
- response = (ResendResponse) app.ResendEmail(UUID.fromString("4714f6f7-ccb4-4eb5-8ba6-3a523092e2b4"),
+ response = (ResendResponse) app.ResendEmail(UUID.fromString("da3b7571-1cfd-4fb7-8bcd-123ef1cba77f"),
"ex1@gmail.com,ex2@gmail.com,ex3@gmail.com,ex4@gmail.com,ex5@gmail.com");
Assert.assertNotNull(response.HttpStatusCode);
Assert.assertNotNull(response.Status);
diff --git a/src/test/java/Tests/Storage/SWStorageServiceTest.java b/src/test/java/Tests/Storage/SWStorageServiceTest.java
index ecd3f32..028550d 100644
--- a/src/test/java/Tests/Storage/SWStorageServiceTest.java
+++ b/src/test/java/Tests/Storage/SWStorageServiceTest.java
@@ -20,7 +20,7 @@ public class SWStorageServiceTest {
public void testGetXmlToken_Success() throws AuthException, GeneralException, IOException {
SWStorageService storage = new SWStorageService(Utils.tokenSW, Utils.urlApiSW, null, 0);
StorageResponse res = (StorageResponse) storage
- .getXml(UUID.fromString("4714f6f7-ccb4-4eb5-8ba6-3a523092e2b4"));
+ .getXml(UUID.fromString("da3b7571-1cfd-4fb7-8bcd-123ef1cba77f"));
Assert.assertNotNull(res);
Assert.assertEquals(res.message, "success", res.Status);
Assert.assertNotNull(res.getData());
@@ -33,7 +33,7 @@ public void testGetXmlAuth_Success() throws AuthException, GeneralException, IOE
SWStorageService storage = new SWStorageService(Utils.userSW, Utils.passwordSW, Utils.urlSW,
Utils.urlApiSW, null, 0);
StorageResponse res = (StorageResponse) storage
- .getXml(UUID.fromString("4714f6f7-ccb4-4eb5-8ba6-3a523092e2b4"));
+ .getXml(UUID.fromString("da3b7571-1cfd-4fb7-8bcd-123ef1cba77f"));
Assert.assertNotNull(res);
Assert.assertEquals(res.message, "success", res.Status);
// Assert.assertNotNull(res.getData());
diff --git a/src/test/java/Tests/Utils.java b/src/test/java/Tests/Utils.java
index a33cec0..53f97bc 100644
--- a/src/test/java/Tests/Utils.java
+++ b/src/test/java/Tests/Utils.java
@@ -30,8 +30,8 @@
* @since 2022-04-30
*/
public class Utils {
- public static String urlSW = "http://services.test.sw.com.mx";
- public static String urlApiSW = "http://api.test.sw.com.mx";
+ public static String urlSW = "https://services.test.sw.com.mx";
+ public static String urlApiSW = "https://api.test.sw.com.mx";
public static String userSW = System.getenv("SDKTEST_USER");
public static String passwordSW = System.getenv("SDKTEST_PASSWORD");
public static String tokenSW = System.getenv("SDKTEST_TOKEN");
@@ -44,8 +44,8 @@ public class Utils {
public static String rfc = "EKU9003173C9";
public static String cancelacionXml = loadResourceAsString("src/test/resources/Extras/CancelacionXML.xml");
public static String aceptacionRechazoXml = loadResourceAsString("src/test/resources/Extras/AceptacionRechazo.xml");
- public static String uuid = "fe4e71b0-8959-4fb9-8091-f5ac4fb0fef8";
- public static String foliosustitucion = "0e4c30b8-11d8-40d8-894d-ef8b32eb4bdf";
+ public static String uuid = "1f0110e0-6e11-49b9-b78c-5929cc3bfc01";
+ public static String foliosustitucion = "9509174a-f367-474e-bde7-4fb3347a9a22";
/**
* Genera un CFDI especifico y lo sella en caso de indicarse.
diff --git a/src/test/java/Tests/helpers/Sign.java b/src/test/java/Tests/helpers/Sign.java
index d64f75a..9288fa5 100644
--- a/src/test/java/Tests/helpers/Sign.java
+++ b/src/test/java/Tests/helpers/Sign.java
@@ -3,7 +3,7 @@
import java.io.*;
import java.security.Signature;
import org.apache.commons.ssl.PKCS8Key;
-import javax.xml.bind.DatatypeConverter;
+import jakarta.xml.bind.DatatypeConverter;
/**
* Sign Está clase permite realizar sellado y transformacion de CFDI.