Merge pull request 'refactor: refs #6696 remove VnUsesMana component and update related logic in TicketEditMana and TicketSale' (!1675) from 6696-manaAfterDepartment into dev
gitea/salix-front/pipeline/head This commit looks good
Details
gitea/salix-front/pipeline/head This commit looks good
Details
Reviewed-on: #1675 Reviewed-by: Alex Moreno <alexm@verdnatura.es>
This commit is contained in:
commit
b321ab3240
|
@ -1,60 +0,0 @@
|
|||
<script setup>
|
||||
import { ref } from 'vue';
|
||||
import { useI18n } from 'vue-i18n';
|
||||
|
||||
const { t } = useI18n();
|
||||
const props = defineProps({
|
||||
usesMana: {
|
||||
type: Boolean,
|
||||
required: true,
|
||||
},
|
||||
manaCode: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
manaVal: {
|
||||
type: String,
|
||||
default: 'mana',
|
||||
},
|
||||
manaLabel: {
|
||||
type: String,
|
||||
default: 'Promotion mana',
|
||||
},
|
||||
manaClaimVal: {
|
||||
type: String,
|
||||
default: 'manaClaim',
|
||||
},
|
||||
claimLabel: {
|
||||
type: String,
|
||||
default: 'Claim mana',
|
||||
},
|
||||
});
|
||||
|
||||
const manaCode = ref(props.manaCode);
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="column q-gutter-y-sm q-mt-sm">
|
||||
<QRadio
|
||||
v-model="manaCode"
|
||||
dense
|
||||
:val="manaVal"
|
||||
:label="t(manaLabel)"
|
||||
:dark="true"
|
||||
class="q-mb-sm"
|
||||
/>
|
||||
<QRadio
|
||||
v-model="manaCode"
|
||||
dense
|
||||
:val="manaClaimVal"
|
||||
:label="t(claimLabel)"
|
||||
:dark="true"
|
||||
class="q-mb-sm"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
<i18n>
|
||||
es:
|
||||
Promotion mana: Maná promoción
|
||||
Claim mana: Maná reclamación
|
||||
</i18n>
|
|
@ -340,17 +340,18 @@ function claimUrl(section) {
|
|||
<template #body="props">
|
||||
<QTr :props="props">
|
||||
<QTd v-for="col in props.cols" :key="col.name" :props="props">
|
||||
<span v-if="col.name != 'description'">{{
|
||||
t(col.value)
|
||||
}}</span>
|
||||
<span class="link" v-if="col.name === 'description'">{{
|
||||
t(col.value)
|
||||
}}</span>
|
||||
<ItemDescriptorProxy
|
||||
v-if="col.name == 'description'"
|
||||
:id="props.row.sale.itemFk"
|
||||
:sale-fk="props.row.saleFk"
|
||||
></ItemDescriptorProxy>
|
||||
<template v-if="col.name === 'description'">
|
||||
<span class="link">{{
|
||||
dashIfEmpty(col.field(props.row))
|
||||
}}</span>
|
||||
<ItemDescriptorProxy
|
||||
:id="props.row.sale.itemFk"
|
||||
:sale-fk="props.row.saleFk"
|
||||
/>
|
||||
</template>
|
||||
<template v-else>
|
||||
{{ dashIfEmpty(col.field(props.row)) }}
|
||||
</template>
|
||||
</QTd>
|
||||
</QTr>
|
||||
</template>
|
||||
|
|
|
@ -185,7 +185,7 @@ const sumRisk = ({ clientRisks }) => {
|
|||
/>
|
||||
<VnLv
|
||||
:label="t('customer.summary.payMethod')"
|
||||
:value="entity.payMethod.name"
|
||||
:value="entity.payMethod?.name"
|
||||
/>
|
||||
<VnLv :label="t('customer.summary.bankAccount')" :value="entity.iban" />
|
||||
<VnLv :label="t('customer.summary.dueDay')" :value="entity.dueDay" />
|
||||
|
|
|
@ -4,7 +4,6 @@ import { useI18n } from 'vue-i18n';
|
|||
import { computed, ref } from 'vue';
|
||||
import { useRoute } from 'vue-router';
|
||||
import { toCurrency } from 'src/filters';
|
||||
import VnUsesMana from 'components/ui/VnUsesMana.vue';
|
||||
|
||||
const $props = defineProps({
|
||||
newPrice: {
|
||||
|
@ -15,23 +14,36 @@ const $props = defineProps({
|
|||
type: Object,
|
||||
default: null,
|
||||
},
|
||||
componentId: {
|
||||
type: Number,
|
||||
default: null,
|
||||
},
|
||||
});
|
||||
|
||||
const emit = defineEmits(['save', 'cancel', 'update:componentId']);
|
||||
|
||||
const route = useRoute();
|
||||
const mana = ref(null);
|
||||
const usesMana = ref(false);
|
||||
|
||||
const emit = defineEmits(['save', 'cancel']);
|
||||
const usesMana = ref([]);
|
||||
|
||||
const { t } = useI18n();
|
||||
const QPopupProxyRef = ref(null);
|
||||
const manaCode = ref($props.manaCode);
|
||||
|
||||
const componentId = computed({
|
||||
get: () => $props.componentId,
|
||||
set: (val) => emit('update:componentId', val),
|
||||
});
|
||||
|
||||
const save = (sale = $props.sale) => {
|
||||
emit('save', sale);
|
||||
QPopupProxyRef.value.hide();
|
||||
};
|
||||
|
||||
const cancel = () => {
|
||||
emit('cancel');
|
||||
QPopupProxyRef.value.hide();
|
||||
};
|
||||
|
||||
const getMana = async () => {
|
||||
const { data } = await axios.get(`Tickets/${route.params.id}/getDepartmentMana`);
|
||||
mana.value = data;
|
||||
|
@ -39,15 +51,12 @@ const getMana = async () => {
|
|||
};
|
||||
|
||||
const getUsesMana = async () => {
|
||||
const { data } = await axios.get('Sales/usesMana');
|
||||
const { data } = await axios.get('Sales/getComponents');
|
||||
usesMana.value = data;
|
||||
};
|
||||
|
||||
const cancel = () => {
|
||||
emit('cancel');
|
||||
QPopupProxyRef.value.hide();
|
||||
};
|
||||
const hasMana = computed(() => typeof mana.value === 'number');
|
||||
|
||||
defineExpose({ save });
|
||||
</script>
|
||||
|
||||
|
@ -59,17 +68,29 @@ defineExpose({ save });
|
|||
>
|
||||
<div class="container">
|
||||
<div class="header">Mana: {{ toCurrency(mana) }}</div>
|
||||
<QSpinner v-if="!hasMana" color="primary" size="md" />
|
||||
|
||||
<QSpinner v-if="!usesMana.length" color="primary" />
|
||||
|
||||
<div class="q-pa-md" v-else>
|
||||
<slot :popup="QPopupProxyRef" />
|
||||
<div v-if="usesMana" class="column q-gutter-y-sm q-mt-sm">
|
||||
<VnUsesMana :mana-code="manaCode" />
|
||||
|
||||
<div v-if="usesMana.length" class="column q-gutter-y-sm q-mt-sm">
|
||||
<QRadio
|
||||
v-for="(item, index) in usesMana"
|
||||
:key="index"
|
||||
v-model="componentId"
|
||||
:val="item.id"
|
||||
:label="item.name"
|
||||
dense
|
||||
:dark="true"
|
||||
class="q-mb-sm"
|
||||
:data-cy="`componentOption-${item.id}`"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div v-if="newPrice" class="column items-center q-mt-lg">
|
||||
<span class="text-primary">{{ t('New price') }}</span>
|
||||
<span class="text-subtitle1">
|
||||
{{ toCurrency($props.newPrice) }}
|
||||
</span>
|
||||
<span class="text-subtitle1">{{ toCurrency(newPrice) }}</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -77,7 +98,6 @@ defineExpose({ save });
|
|||
<QBtn
|
||||
color="primary"
|
||||
class="no-border-radius"
|
||||
dense
|
||||
style="width: 50%"
|
||||
@click="cancel()"
|
||||
>
|
||||
|
@ -86,7 +106,6 @@ defineExpose({ save });
|
|||
<QBtn
|
||||
color="primary"
|
||||
class="no-border-radius"
|
||||
dense
|
||||
style="width: 50%"
|
||||
@click="save()"
|
||||
data-cy="saveManaBtn"
|
||||
|
@ -116,8 +135,3 @@ defineExpose({ save });
|
|||
min-width: 230px;
|
||||
}
|
||||
</style>
|
||||
|
||||
<i18n>
|
||||
es:
|
||||
New price: Nuevo precio
|
||||
</i18n>
|
||||
|
|
|
@ -45,7 +45,7 @@ const isTicketEditable = ref(false);
|
|||
const sales = ref([]);
|
||||
const editableStatesOptions = ref([]);
|
||||
const selectedSales = ref([]);
|
||||
const manaCode = ref('mana');
|
||||
const componentId = ref(null);
|
||||
const ticketState = computed(() => store.data?.ticketState?.state?.code);
|
||||
const transfer = ref({
|
||||
lastActiveTickets: [],
|
||||
|
@ -187,7 +187,7 @@ const getRowUpdateInputEvents = (sale) => {
|
|||
};
|
||||
|
||||
const resetChanges = async () => {
|
||||
arrayData.fetch({ append: false });
|
||||
await arrayData.fetch({ append: false });
|
||||
tableRef.value.CrudModelRef.hasChanges = false;
|
||||
await tableRef.value.reload();
|
||||
|
||||
|
@ -308,14 +308,15 @@ const changePrice = async (sale) => {
|
|||
if (newPrice != null && newPrice != sale.price) {
|
||||
if (await isSalePrepared(sale)) {
|
||||
await confirmUpdate(() => updatePrice(sale, newPrice));
|
||||
} else updatePrice(sale, newPrice);
|
||||
} else await updatePrice(sale, newPrice);
|
||||
}
|
||||
};
|
||||
const updatePrice = async (sale, newPrice) => {
|
||||
try {
|
||||
await axios.post(`Sales/${sale.id}/updatePrice`, { newPrice });
|
||||
sale.price = newPrice;
|
||||
edit.value = { ...DEFAULT_EDIT };
|
||||
await axios.post(`Sales/${sale.id}/updatePrice`, {
|
||||
newPrice: newPrice,
|
||||
componentId: componentId.value,
|
||||
});
|
||||
notify('globals.dataSaved', 'positive');
|
||||
resetChanges();
|
||||
} catch (e) {
|
||||
|
@ -327,28 +328,31 @@ const changeDiscount = async (sale) => {
|
|||
const newDiscount = edit.value.discount;
|
||||
if (newDiscount != null && newDiscount != sale.discount) {
|
||||
if (await isSalePrepared(sale))
|
||||
await confirmUpdate(() => updateDiscount([sale], newDiscount));
|
||||
else await updateDiscount([sale], newDiscount);
|
||||
await confirmUpdate(() =>
|
||||
updateDiscount([sale], newDiscount, componentId.value),
|
||||
);
|
||||
else await updateDiscount([sale], newDiscount, componentId.value);
|
||||
}
|
||||
};
|
||||
|
||||
const updateDiscounts = async (sales, newDiscount) => {
|
||||
const updateDiscounts = async (sales, newDiscount, componentId) => {
|
||||
const salesTracking = await fetchSalesTracking();
|
||||
|
||||
const someSaleIsPrepared = salesTracking.some((sale) =>
|
||||
matchSale(salesTracking, sale),
|
||||
);
|
||||
if (someSaleIsPrepared) await confirmUpdate(() => updateDiscount(sales, newDiscount));
|
||||
else updateDiscount(sales, newDiscount);
|
||||
if (someSaleIsPrepared)
|
||||
await confirmUpdate(() => updateDiscount(sales, newDiscount, componentId));
|
||||
else updateDiscount(sales, newDiscount, componentId);
|
||||
};
|
||||
|
||||
const updateDiscount = async (sales, newDiscount = 0) => {
|
||||
const updateDiscount = async (sales, newDiscount, componentId) => {
|
||||
try {
|
||||
const salesIds = sales.map(({ id }) => id);
|
||||
const params = {
|
||||
salesIds,
|
||||
newDiscount,
|
||||
manaCode: manaCode.value,
|
||||
newDiscount: newDiscount ?? 0,
|
||||
componentId,
|
||||
};
|
||||
await axios.post(`Tickets/${route.params.id}/updateDiscount`, params);
|
||||
notify('globals.dataSaved', 'positive');
|
||||
|
@ -821,10 +825,11 @@ watch(
|
|||
ref="editPriceProxyRef"
|
||||
:sale="row"
|
||||
:new-price="getNewPrice"
|
||||
v-model:component-id="componentId"
|
||||
@save="changePrice"
|
||||
>
|
||||
<VnInput
|
||||
@keyup.enter.stop="() => editManaProxyRef.save(row)"
|
||||
@keyup.enter.stop="() => editPriceProxyRef.save(row)"
|
||||
v-model.number="edit.price"
|
||||
:label="t('basicData.price')"
|
||||
type="number"
|
||||
|
@ -843,7 +848,7 @@ watch(
|
|||
ref="editManaProxyRef"
|
||||
:sale="row"
|
||||
:new-price="getNewPrice"
|
||||
:mana-code="manaCode"
|
||||
v-model:component-id="componentId"
|
||||
@save="changeDiscount"
|
||||
>
|
||||
<VnInput
|
||||
|
|
|
@ -47,6 +47,7 @@ const { notify } = useNotify();
|
|||
const acl = useAcl();
|
||||
const btnDropdownRef = ref(null);
|
||||
const editManaProxyRef = ref(null);
|
||||
const componentId = ref(null);
|
||||
const { openConfirmationModal } = useVnConfirm();
|
||||
|
||||
const newDiscount = ref(null);
|
||||
|
@ -112,7 +113,7 @@ const changeMultipleDiscount = () => {
|
|||
});
|
||||
|
||||
if (newDiscount.value != null && hasChanges)
|
||||
emit('updateDiscounts', props.sales, newDiscount.value);
|
||||
emit('updateDiscounts', props.sales, newDiscount.value, componentId.value);
|
||||
btnDropdownRef.value.hide();
|
||||
};
|
||||
|
||||
|
@ -206,6 +207,7 @@ const createRefund = async (withWarehouse) => {
|
|||
ref="editManaProxyRef"
|
||||
:sale="row"
|
||||
@save="changeMultipleDiscount"
|
||||
v-model:component-id="componentId"
|
||||
>
|
||||
<VnInput
|
||||
autofocus
|
||||
|
|
|
@ -113,7 +113,7 @@ const ticketCard = {
|
|||
name: 'TicketExpedition',
|
||||
meta: {
|
||||
title: 'expedition',
|
||||
icon: 'vn:package',
|
||||
icon: 'view_in_ar',
|
||||
},
|
||||
component: () => import('src/pages/Ticket/Card/TicketExpedition.vue'),
|
||||
},
|
||||
|
@ -168,7 +168,7 @@ const ticketCard = {
|
|||
name: 'TicketBoxing',
|
||||
meta: {
|
||||
title: 'boxing',
|
||||
icon: 'view_in_ar',
|
||||
icon: 'videocam',
|
||||
},
|
||||
component: () => import('src/pages/Ticket/Card/TicketBoxing.vue'),
|
||||
},
|
||||
|
|
|
@ -6,7 +6,6 @@ describe.skip('ClaimAction', () => {
|
|||
const destinationRow = '.q-item__section > .q-field';
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/claim/${claimId}/action`);
|
||||
});
|
||||
|
|
|
@ -7,7 +7,6 @@ describe.skip('ClaimDevelopment', () => {
|
|||
const newReason = 'Calor';
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/claim/${claimId}/development`);
|
||||
cy.waitForElement('tbody');
|
||||
|
|
|
@ -2,7 +2,6 @@ import '../commands.js';
|
|||
|
||||
describe('EntryBasicData', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('buyer');
|
||||
cy.visit(`/#/entry/list`);
|
||||
});
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
import '../commands.js';
|
||||
describe('EntryDescriptor', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('buyer');
|
||||
cy.visit(`/#/entry/list`);
|
||||
});
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
import '../commands.js';
|
||||
describe('EntryDms', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('buyer');
|
||||
cy.visit(`/#/entry/list`);
|
||||
});
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
import '../commands.js';
|
||||
describe('EntryLock', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('buyer');
|
||||
cy.visit(`/#/entry/list`);
|
||||
});
|
||||
|
|
|
@ -2,7 +2,6 @@ import '../commands.js';
|
|||
|
||||
describe('EntryNotes', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('buyer');
|
||||
cy.visit(`/#/entry/list`);
|
||||
});
|
||||
|
|
|
@ -2,7 +2,6 @@ import './commands';
|
|||
|
||||
describe('EntryList', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('buyer');
|
||||
cy.visit(`/#/entry/list`);
|
||||
});
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
describe('EntryStockBought', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('buyer');
|
||||
cy.visit(`/#/entry/stock-Bought`);
|
||||
});
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
describe('EntrySupplier when is supplier', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('supplier');
|
||||
cy.visit(`/#/entry/my`, {
|
||||
onBeforeLoad(win) {
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
import './commands';
|
||||
describe('EntryDms', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('buyerBoss');
|
||||
cy.visit(`/#/entry/waste-recalc`);
|
||||
});
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
/// <reference types="cypress" />
|
||||
describe.skip('InvoiceOut manual invoice', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/ticket/list`);
|
||||
cy.get('#searchbar input').type('{enter}');
|
||||
|
|
|
@ -4,7 +4,6 @@ describe('InvoiceOut negative bases', () => {
|
|||
`:nth-child(1) > [data-col-field="${opt}"] > .no-padding > .link`;
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/invoice-out/negative-bases`);
|
||||
});
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
/// <reference types="cypress" />
|
||||
describe('InvoiceOut global invoicing', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('administrative');
|
||||
cy.visit(`/#/invoice-out/global-invoicing`);
|
||||
});
|
||||
|
@ -17,7 +16,7 @@ describe('InvoiceOut global invoicing', () => {
|
|||
cy.dataCy('InvoiceOutGlobalPrinterSelect').type('printer1');
|
||||
cy.get('.q-menu .q-item').contains('printer1').click();
|
||||
cy.get(
|
||||
'[label="Invoice date"] > .q-field > .q-field__inner > .q-field__control'
|
||||
'[label="Invoice date"] > .q-field > .q-field__inner > .q-field__control',
|
||||
).click();
|
||||
cy.get(':nth-child(5) > div > .q-btn > .q-btn__content > .block').click();
|
||||
cy.get('.q-date__years-content > :nth-child(2) > .q-btn').click();
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
/// <reference types="cypress" />
|
||||
describe('ItemBarcodes', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/item/1/barcode`);
|
||||
});
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
/// <reference types="cypress" />
|
||||
describe('Item botanical', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/item/1/botanical`);
|
||||
});
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
|
||||
describe.skip('Item list', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/item/list`);
|
||||
cy.typeSearchbar('{enter}');
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
/// <reference types="cypress" />
|
||||
describe('Item summary', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/item/1/summary`);
|
||||
});
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
describe('Item tag', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/item/1/tags`);
|
||||
cy.get('.q-page').should('be.visible');
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
/// <reference types="cypress" />
|
||||
describe('Item tax', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/item/1/tax`);
|
||||
});
|
||||
|
|
|
@ -6,7 +6,6 @@ describe('Item type', () => {
|
|||
const type = 'Flower';
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/item/item-type`);
|
||||
});
|
||||
|
|
|
@ -6,7 +6,6 @@ describe('OrderList', () => {
|
|||
|
||||
beforeEach(() => {
|
||||
cy.login('developer');
|
||||
cy.viewport(1920, 1080);
|
||||
cy.visit('/#/order/list');
|
||||
});
|
||||
|
||||
|
|
|
@ -2,7 +2,6 @@ describe('Agency modes', () => {
|
|||
const name = 'inhouse pickup';
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/route/agency/1/modes`);
|
||||
});
|
||||
|
|
|
@ -13,7 +13,6 @@ describe('AgencyWorkCenter', () => {
|
|||
};
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/route/agency/11/workCenter`);
|
||||
});
|
||||
|
|
|
@ -24,7 +24,6 @@ describe('Cmr list', () => {
|
|||
};
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit('/#/route/cmr');
|
||||
cy.typeSearchbar('{enter}');
|
||||
|
|
|
@ -27,7 +27,6 @@ describe('RoadMap', () => {
|
|||
const summaryUrl = '/summary';
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/route/roadmap`);
|
||||
cy.typeSearchbar('{enter}');
|
||||
|
|
|
@ -32,7 +32,6 @@ describe.skip('RouteAutonomous', () => {
|
|||
const dataSaved = 'Data saved';
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/route/agency-term`);
|
||||
cy.typeSearchbar('{enter}');
|
||||
|
|
|
@ -75,7 +75,6 @@ describe.skip('Route extended list', () => {
|
|||
}
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(url);
|
||||
cy.typeSearchbar('{enter}');
|
||||
|
|
|
@ -26,8 +26,8 @@ describe('Route', () => {
|
|||
const summaryUrl = '/summary';
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.viewport(1920, 1080);
|
||||
cy.visit(`/#/route/list`);
|
||||
cy.typeSearchbar('{enter}');
|
||||
});
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
describe('Vehicle', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('deliveryAssistant');
|
||||
cy.visit(`/#/route/vehicle/7/summary`);
|
||||
});
|
||||
|
|
|
@ -21,7 +21,6 @@ describe('Vehicle list', () => {
|
|||
const summaryUrl = '/summary';
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/route/vehicle/list`);
|
||||
cy.typeSearchbar('{enter}');
|
||||
|
|
|
@ -10,7 +10,6 @@ describe('Vehicle Notes', () => {
|
|||
const newNoteText = 'probando';
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/route/vehicle/1/notes`);
|
||||
});
|
||||
|
|
|
@ -5,7 +5,6 @@ describe('ParkingList', () => {
|
|||
const summaryHeader = '.header-link';
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/shelving/parking/list`);
|
||||
});
|
||||
|
|
|
@ -3,7 +3,6 @@ describe('ShelvingList', () => {
|
|||
const parking =
|
||||
'.q-card > :nth-child(1) > .q-select > .q-field__inner > .q-field__control > .q-field__control-container';
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/shelving/1/basic-data`);
|
||||
});
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
/// <reference types="cypress" />
|
||||
describe('ShelvingList', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/shelving/list`);
|
||||
});
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
describe('Supplier Balance', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/supplier/1/balance`);
|
||||
});
|
||||
|
|
|
@ -9,7 +9,6 @@ describe('Ticket descriptor', () => {
|
|||
const weightValue = '[data-cy="vnLvWeight"]';
|
||||
beforeEach(() => {
|
||||
cy.login('developer');
|
||||
cy.viewport(1920, 1080);
|
||||
});
|
||||
|
||||
it('should clone the ticket without warehouse', () => {
|
||||
|
|
|
@ -5,7 +5,6 @@ describe('Ticket expedtion', () => {
|
|||
|
||||
beforeEach(() => {
|
||||
cy.login('developer');
|
||||
cy.viewport(1920, 1080);
|
||||
});
|
||||
|
||||
it('should change the state', () => {
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
describe('TicketFilter', () => {
|
||||
beforeEach(() => {
|
||||
cy.login('developer');
|
||||
cy.viewport(1920, 1080);
|
||||
cy.visit('/#/ticket/list');
|
||||
});
|
||||
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
describe('TicketList', () => {
|
||||
beforeEach(() => {
|
||||
cy.login('developer');
|
||||
cy.viewport(1920, 1080);
|
||||
cy.visit('/#/ticket/list', false);
|
||||
});
|
||||
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
describe('TicketNotes', () => {
|
||||
beforeEach(() => {
|
||||
cy.login('developer');
|
||||
cy.viewport(1920, 1080);
|
||||
cy.visit('/#/ticket/31/observation');
|
||||
});
|
||||
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
describe('TicketRequest', () => {
|
||||
beforeEach(() => {
|
||||
cy.login('developer');
|
||||
cy.viewport(1920, 1080);
|
||||
cy.visit('/#/ticket/31/request');
|
||||
});
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@ const firstRow = 'tbody > :nth-child(1)';
|
|||
describe('TicketSale', () => {
|
||||
describe('#23', () => {
|
||||
beforeEach(() => {
|
||||
cy.login('salesBoss');
|
||||
cy.login('claimManager');
|
||||
cy.viewport(1920, 1080);
|
||||
cy.visit('/#/ticket/23/sale');
|
||||
});
|
||||
|
@ -15,6 +15,8 @@ describe('TicketSale', () => {
|
|||
cy.get('[data-col-field="price"]').find('.q-btn').click();
|
||||
cy.waitForElement('[data-cy="ticketEditManaProxy"]');
|
||||
cy.dataCy('ticketEditManaProxy').should('exist');
|
||||
cy.get('[data-cy="componentOption-37"]').click();
|
||||
|
||||
cy.waitForElement('[data-cy="Price_input"]');
|
||||
cy.dataCy('Price_input').clear().type(price);
|
||||
cy.intercept('POST', /\/api\/Sales\/\d+\/updatePrice/).as('updatePrice');
|
||||
|
@ -33,6 +35,7 @@ describe('TicketSale', () => {
|
|||
cy.get('[data-col-field="discount"]').find('.q-btn').click();
|
||||
cy.waitForElement('[data-cy="ticketEditManaProxy"]');
|
||||
cy.dataCy('ticketEditManaProxy').should('exist');
|
||||
cy.get('[data-cy="componentOption-37"]').click();
|
||||
cy.waitForElement('[data-cy="Disc_input"]');
|
||||
cy.dataCy('Disc_input').clear().type(discount);
|
||||
cy.intercept('POST', /\/api\/Tickets\/\d+\/updateDiscount/).as(
|
||||
|
@ -83,8 +86,7 @@ describe('TicketSale', () => {
|
|||
});
|
||||
describe('#24 add claim', () => {
|
||||
beforeEach(() => {
|
||||
cy.login('developer');
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('salesPerson');
|
||||
cy.visit('/#/ticket/24/sale');
|
||||
});
|
||||
|
||||
|
@ -102,8 +104,7 @@ describe('TicketSale', () => {
|
|||
});
|
||||
describe('#31 free ticket', () => {
|
||||
beforeEach(() => {
|
||||
cy.login('developer');
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('claimManager');
|
||||
cy.visit('/#/ticket/31/sale');
|
||||
});
|
||||
|
||||
|
@ -139,14 +140,15 @@ describe('TicketSale', () => {
|
|||
cy.dataCy('ticketSaleMoreActionsDropdown').should('be.disabled');
|
||||
});
|
||||
|
||||
it.only('should update discount when "Update discount" is clicked', () => {
|
||||
it('should update discount when "Update discount" is clicked', () => {
|
||||
const discount = Number((Math.random() * 99 + 1).toFixed(2));
|
||||
|
||||
selectFirstRow();
|
||||
cy.dataCy('ticketSaleMoreActionsDropdown').click();
|
||||
cy.waitForElement('[data-cy="updateDiscountItem"]');
|
||||
cy.dataCy('updateDiscountItem').should('exist');
|
||||
cy.dataCy('updateDiscountItem').click();
|
||||
cy.waitForElement('[data-cy="componentOption-37"]');
|
||||
cy.get('[data-cy="componentOption-37"]').click();
|
||||
cy.waitForElement('[data-cy="ticketSaleDiscountInput"]');
|
||||
cy.dataCy('ticketSaleDiscountInput').find('input').focus();
|
||||
cy.intercept('POST', /\/api\/Tickets\/\d+\/updateDiscount/).as(
|
||||
|
@ -191,8 +193,7 @@ describe('TicketSale', () => {
|
|||
});
|
||||
describe('#32 transfer', () => {
|
||||
beforeEach(() => {
|
||||
cy.login('developer');
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('salesPerson');
|
||||
cy.visit('/#/ticket/32/sale');
|
||||
});
|
||||
it('transfer sale to a new ticket', () => {
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
describe('VnBreadcrumbs', () => {
|
||||
const lastBreadcrumb = '.q-breadcrumbs--last > .q-breadcrumbs__el';
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit('/');
|
||||
});
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
describe('WagonTypeCreate', () => {
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit('/#/wagon/type/list');
|
||||
cy.waitForElement('.q-page', 6000);
|
||||
|
|
|
@ -2,7 +2,6 @@ describe('WagonTypeEdit', () => {
|
|||
const trayColorRow =
|
||||
'.q-select > .q-field__inner > .q-field__control > .q-field__control-container';
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit('/#/wagon/type/1/edit');
|
||||
});
|
||||
|
|
|
@ -4,7 +4,6 @@ describe('WorkerPit', () => {
|
|||
const savePIT = '#st-actions > .q-btn-group > .q-btn--standard';
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/worker/1107/pit`);
|
||||
});
|
||||
|
|
|
@ -4,7 +4,6 @@ describe('ZoneDeliveryDays', () => {
|
|||
const submitForm = '.q-form > .q-btn > .q-btn__content';
|
||||
beforeEach(() => {
|
||||
cy.login('developer');
|
||||
cy.viewport(1920, 1080);
|
||||
cy.visit(`/#/zone/delivery-days`);
|
||||
});
|
||||
|
||||
|
|
|
@ -4,7 +4,6 @@ describe('ZoneUpcomingDeliveries', () => {
|
|||
|
||||
beforeEach(() => {
|
||||
cy.login('developer');
|
||||
cy.viewport(1920, 1080);
|
||||
cy.visit(`/#/zone/upcoming-deliveries`);
|
||||
});
|
||||
|
||||
|
|
Loading…
Reference in New Issue