diff --git a/Jenkinsfile b/Jenkinsfile
index 02ffc7969..39a9928cd 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -108,7 +108,6 @@ pipeline {
}
stage('E2E') {
environment {
- CREDENTIALS = credentials('docker-registry')
COMPOSE_PROJECT = "${PROJECT_NAME}-${env.BUILD_ID}"
COMPOSE_PARAMS = "-p ${env.COMPOSE_PROJECT} -f test/cypress/docker-compose.yml --project-directory ."
}
@@ -116,8 +115,10 @@ pipeline {
script {
sh 'rm junit/e2e-*.xml || true'
env.COMPOSE_TAG = PROTECTED_BRANCH.contains(env.CHANGE_TARGET) ? env.CHANGE_TARGET : 'dev'
+ withDockerRegistry([credentialsId: 'docker-registry', url: "https://${env.REGISTRY}" ]) {
+ sh "docker-compose ${env.COMPOSE_PARAMS} up -d"
+ }
def image = docker.build('lilium-dev', '-f docs/Dockerfile.dev docs')
- sh "docker-compose ${env.COMPOSE_PARAMS} up -d"
image.inside("--network ${env.COMPOSE_PROJECT}_default -e CI -e TZ") {
sh 'sh test/cypress/cypressParallel.sh 4'
}
diff --git a/src/components/TicketProblems.vue b/src/components/TicketProblems.vue
index 5978f4e21..255bea9cd 100644
--- a/src/components/TicketProblems.vue
+++ b/src/components/TicketProblems.vue
@@ -12,7 +12,7 @@ defineProps({ row: { type: Object, required: true } });
>
- {{ t('ticketSale.claim') }}:
+ {{ $t('ticketSale.claim') }}:
{{ row.claim?.claimFk }}
diff --git a/src/components/common/VnAccountNumber.vue b/src/components/common/VnAccountNumber.vue
index c4fa78674..56add7329 100644
--- a/src/components/common/VnAccountNumber.vue
+++ b/src/components/common/VnAccountNumber.vue
@@ -1,12 +1,9 @@
-
-
+
diff --git a/src/components/common/VnInput.vue b/src/components/common/VnInput.vue
index aeb4a31fd..9e13f5351 100644
--- a/src/components/common/VnInput.vue
+++ b/src/components/common/VnInput.vue
@@ -83,7 +83,7 @@ const mixinRules = [
requiredFieldRule,
...($attrs.rules ?? []),
(val) => {
- const { maxlength } = vnInputRef.value;
+ const maxlength = $props.maxlength;
if (maxlength && +val.length > maxlength)
return t(`maxLength`, { value: maxlength });
const { min, max } = vnInputRef.value.$attrs;
@@ -108,7 +108,7 @@ const handleInsertMode = (e) => {
e.preventDefault();
const input = e.target;
const cursorPos = input.selectionStart;
- const { maxlength } = vnInputRef.value;
+ const maxlength = $props.maxlength;
let currentValue = value.value;
if (!currentValue) currentValue = e.key;
const newValue = e.key;
@@ -143,7 +143,7 @@ const handleUppercase = () => {
:rules="mixinRules"
:lazy-rules="true"
hide-bottom-space
- :data-cy="$attrs.dataCy ?? $attrs.label + '_input'"
+ :data-cy="$attrs['data-cy'] ?? $attrs.label + '_input'"
>
diff --git a/src/components/ui/CatalogItem.vue b/src/components/ui/CatalogItem.vue
index 7806562b2..0ae890e37 100644
--- a/src/components/ui/CatalogItem.vue
+++ b/src/components/ui/CatalogItem.vue
@@ -132,7 +132,8 @@ const card = toRef(props, 'item');
display: flex;
flex-direction: column;
gap: 4px;
-
+ white-space: nowrap;
+ width: 192px;
p {
margin-bottom: 0;
}
diff --git a/src/i18n/locale/en.yml b/src/i18n/locale/en.yml
index 5b667555e..d7187371e 100644
--- a/src/i18n/locale/en.yml
+++ b/src/i18n/locale/en.yml
@@ -369,6 +369,7 @@ globals:
countryFk: Country
countryCodeFk: Country
companyFk: Company
+ nickname: Alias
model: Model
fuel: Fuel
active: Active
diff --git a/src/i18n/locale/es.yml b/src/i18n/locale/es.yml
index 3f004485d..fc3018f39 100644
--- a/src/i18n/locale/es.yml
+++ b/src/i18n/locale/es.yml
@@ -370,6 +370,7 @@ globals:
countryFk: País
countryCodeFk: País
companyFk: Empresa
+ nickname: Alias
errors:
statusUnauthorized: Acceso denegado
statusInternalServerError: Ha ocurrido un error interno del servidor
diff --git a/src/pages/Supplier/Card/SupplierFiscalData.vue b/src/pages/Supplier/Card/SupplierFiscalData.vue
index ecee5b76b..4293bd41a 100644
--- a/src/pages/Supplier/Card/SupplierFiscalData.vue
+++ b/src/pages/Supplier/Card/SupplierFiscalData.vue
@@ -108,7 +108,6 @@ function handleLocation(data, location) {
diff --git a/src/pages/Supplier/SupplierList.vue b/src/pages/Supplier/SupplierList.vue
index c9625518f..d1d437a19 100644
--- a/src/pages/Supplier/SupplierList.vue
+++ b/src/pages/Supplier/SupplierList.vue
@@ -4,7 +4,6 @@ import { useI18n } from 'vue-i18n';
import VnTable from 'components/VnTable/VnTable.vue';
import VnSection from 'src/components/common/VnSection.vue';
import VnInput from 'src/components/common/VnInput.vue';
-import VnSelect from 'src/components/common/VnSelect.vue';
import FetchData from 'src/components/FetchData.vue';
import { useSummaryDialog } from 'src/composables/useSummaryDialog';
import SupplierSummary from './Card/SupplierSummary.vue';
@@ -53,7 +52,7 @@ const columns = computed(() => [
label: t('globals.alias'),
name: 'alias',
columnFilter: {
- name: 'search',
+ name: 'nickname',
},
cardVisible: true,
},
@@ -120,6 +119,21 @@ const columns = computed(() => [
],
},
]);
+
+const filterColumns = computed(() => {
+ const copy = [...columns.value];
+ copy.splice(copy.length - 1, 0, {
+ align: 'left',
+ label: t('globals.params.provinceFk'),
+ name: 'provinceFk',
+ options: provincesOptions.value,
+ columnFilter: {
+ component: 'select',
+ },
+ });
+
+ return copy;
+});
[
/>
-
-
diff --git a/src/pages/Ticket/Card/TicketSale.vue b/src/pages/Ticket/Card/TicketSale.vue
index 456a151a3..cc16af72c 100644
--- a/src/pages/Ticket/Card/TicketSale.vue
+++ b/src/pages/Ticket/Card/TicketSale.vue
@@ -681,6 +681,17 @@ watch(
:disabled-attr="isTicketEditable"
>
+
+
+ {{ `saleGroup: ${row.saleGroupFk}` }}
+
+
diff --git a/test/cypress/integration/vnComponent/VnAccountNumber.spec.js b/test/cypress/integration/vnComponent/VnAccountNumber.spec.js
index 63ab646fe..0dc12205b 100644
--- a/test/cypress/integration/vnComponent/VnAccountNumber.spec.js
+++ b/test/cypress/integration/vnComponent/VnAccountNumber.spec.js
@@ -1,35 +1,50 @@
-describe('VnInput Component', () => {
+describe('VnAccountNumber', () => {
beforeEach(() => {
cy.login('developer');
cy.viewport(1920, 1080);
cy.visit('/#/supplier/1/fiscal-data');
});
- it('should replace character at cursor position in insert mode', () => {
- // Simula escribir en el input
- cy.dataCy('supplierFiscalDataAccount').clear();
- cy.dataCy('supplierFiscalDataAccount').type('4100000001');
- // Coloca el cursor en la posición 0
- cy.dataCy('supplierFiscalDataAccount').type('{movetostart}');
- // Escribe un número y verifica que se reemplace correctamente
- cy.dataCy('supplierFiscalDataAccount').type('999');
- cy.dataCy('supplierFiscalDataAccount').should('have.value', '9990000001');
+ describe('VnInput handleInsertMode()', () => {
+ it('should replace character at cursor position in insert mode', () => {
+ cy.get('input[data-cy="supplierFiscalDataAccount"]').type(
+ '{selectall}4100000001',
+ );
+ cy.get('input[data-cy="supplierFiscalDataAccount"]').type('{movetostart}');
+ cy.get('input[data-cy="supplierFiscalDataAccount"]').type('999');
+ cy.get('input[data-cy="supplierFiscalDataAccount"]').should(
+ 'have.value',
+ '9990000001',
+ );
+ });
+
+ it('should replace character at cursor position in insert mode', () => {
+ cy.get('input[data-cy="supplierFiscalDataAccount"]').clear();
+ cy.get('input[data-cy="supplierFiscalDataAccount"]').type('4100000001');
+ cy.get('input[data-cy="supplierFiscalDataAccount"]').type('{movetostart}');
+ cy.get('input[data-cy="supplierFiscalDataAccount"]').type('999');
+ cy.get('input[data-cy="supplierFiscalDataAccount"]').should(
+ 'have.value',
+ '9990000001',
+ );
+ });
+
+ it('should respect maxlength prop', () => {
+ cy.get('input[data-cy="supplierFiscalDataAccount"]').clear();
+ cy.get('input[data-cy="supplierFiscalDataAccount"]').type('123456789012345');
+ cy.get('input[data-cy="supplierFiscalDataAccount"]').should(
+ 'have.value',
+ '1234567890',
+ );
+ });
});
- it('should replace character at cursor position in insert mode', () => {
- // Simula escribir en el input
- cy.dataCy('supplierFiscalDataAccount').clear();
- cy.dataCy('supplierFiscalDataAccount').type('4100000001');
- // Coloca el cursor en la posición 0
- cy.dataCy('supplierFiscalDataAccount').type('{movetostart}');
- // Escribe un número y verifica que se reemplace correctamente en la posicion incial
- cy.dataCy('supplierFiscalDataAccount').type('999');
- cy.dataCy('supplierFiscalDataAccount').should('have.value', '9990000001');
- });
-
- it('should respect maxlength prop', () => {
- cy.dataCy('supplierFiscalDataAccount').clear();
- cy.dataCy('supplierFiscalDataAccount').type('123456789012345');
- cy.dataCy('supplierFiscalDataAccount').should('have.value', '1234567890'); // asumiendo que maxlength es 10
+ it('should convert short account number to standard format', () => {
+ cy.get('input[data-cy="supplierFiscalDataAccount"]').clear();
+ cy.get('input[data-cy="supplierFiscalDataAccount"]').type('123.');
+ cy.get('input[data-cy="supplierFiscalDataAccount"]').should(
+ 'have.value',
+ '1230000000',
+ );
});
});