diff --git a/src/i18n/en/index.js b/src/i18n/en/index.js
index 7dc414e2a..19d7fb67c 100644
--- a/src/i18n/en/index.js
+++ b/src/i18n/en/index.js
@@ -161,6 +161,8 @@ export default {
hasDebt: 'Customer has debt',
notChecked: 'Customer not checked',
noWebAccess: 'Web access is disabled',
+ passwordRequirements:
+ 'The password must have at least { length } length characters, {nAlpha} alphabetic characters, {nUpper} capital letters, {nDigits} digits and {nPunct} symbols (Ex: $%&.)\n',
},
summary: {
basicData: 'Basic data',
diff --git a/src/i18n/es/index.js b/src/i18n/es/index.js
index 46287e8b6..a2cb29a53 100644
--- a/src/i18n/es/index.js
+++ b/src/i18n/es/index.js
@@ -160,6 +160,8 @@ export default {
hasDebt: 'El cliente tiene riesgo',
notChecked: 'El cliente no está comprobado',
noWebAccess: 'El acceso web está desactivado',
+ passwordRequirements:
+ 'La contraseña debe tener al menos { length } caracteres de longitud, {nAlpha} caracteres alfabéticos, {nUpper} letras mayúsculas, {nDigits} dígitos y {nPunct} símbolos (Ej: $%&.)',
},
summary: {
basicData: 'Datos básicos',
diff --git a/src/pages/Customer/Card/CustomerCreditContracts.vue b/src/pages/Customer/Card/CustomerCreditContracts.vue
index c23e3e6c0..04952e913 100644
--- a/src/pages/Customer/Card/CustomerCreditContracts.vue
+++ b/src/pages/Customer/Card/CustomerCreditContracts.vue
@@ -143,7 +143,7 @@ const updateData = () => {
{{ t('Grade') }}:
- {{ item.insurances[0].grade }}
+ {{ item.insurances[0].grade || '-' }}
diff --git a/src/pages/Customer/Card/CustomerWebAccess.vue b/src/pages/Customer/Card/CustomerWebAccess.vue
index 80f294e25..03399e235 100644
--- a/src/pages/Customer/Card/CustomerWebAccess.vue
+++ b/src/pages/Customer/Card/CustomerWebAccess.vue
@@ -1,24 +1,63 @@
+ (canChangePassword = data)"
+ auto-load
+ />
+ (userPasswords = data[0])"
+ auto-load
+ url="UserPasswords"
+ />
+
@@ -63,6 +102,35 @@ const filter = { where: { id: `${route.params.id}` } };
+
+
+
+
+
+
@@ -74,4 +142,5 @@ es:
User: Usuario
Recovery email: Correo de recuperacion
This email is used for user to regain access their account: Este correo electrónico se usa para que el usuario recupere el acceso a su cuenta
+ Change password: Cambiar contraseña
diff --git a/src/pages/Customer/components/CustomerChangePassword.vue b/src/pages/Customer/components/CustomerChangePassword.vue
new file mode 100644
index 000000000..f0be5e510
--- /dev/null
+++ b/src/pages/Customer/components/CustomerChangePassword.vue
@@ -0,0 +1,140 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{
+ t('customer.card.passwordRequirements', {
+ length: $props.userPasswords.length,
+ nAlpha: $props.userPasswords.nAlpha,
+ nDigits: $props.userPasswords.nDigits,
+ nPunct: $props.userPasswords.nPunct,
+ nUpper: $props.userPasswords.nUpper,
+ })
+ }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+es:
+ New password: Nueva contraseña
+ Request password: Repetir contraseña
+ Change password: Cambiar contraseña
+ Passwords don't match: Las contraseñas no coinciden
+
diff --git a/src/pages/Customer/components/CustomerNewPayment.vue b/src/pages/Customer/components/CustomerNewPayment.vue
index c2ec07183..9fd5e8119 100644
--- a/src/pages/Customer/components/CustomerNewPayment.vue
+++ b/src/pages/Customer/components/CustomerNewPayment.vue
@@ -52,14 +52,14 @@ const filterBanks = {
const filterClientFindOne = {
fields: ['email'],
where: {
- id: `${route.params.id}`,
+ id: route.params.id,
},
};
const initialData = reactive({
amountPaid: $props.totalCredit,
bankFk: null,
- clientFk: `${route.params.id}`,
+ clientFk: route.params.id,
companyFk: $props.companyId,
compensationAccount: null,
description: null,