Merge pull request 'fix: minor issue and add test' (!1818) from warmfix_improve_newPaymentTicket_description into master
gitea/salix-front/pipeline/head Build queued... Details

Reviewed-on: #1818
This commit is contained in:
Javier Segarra 2025-05-20 07:24:33 +00:00
commit 52fdc1f8de
3 changed files with 51 additions and 13 deletions

View File

@ -52,30 +52,50 @@ const filterBanks = {
const state = useState(); const state = useState();
const user = state.getUser(); const user = state.getUser();
const originalDescription = ref('');
const initialData = ref({ const initialData = ref({
...$props.formData, ...$props.formData,
companyFk: user.value.companyFk, companyFk: user.value.companyFk,
payed: Date.vnNew(), payed: Date.vnNew(),
originalDescription: '',
}); });
function setPaymentType(data, accounting) { function setPaymentType(data, accounting) {
data.bankFk = accounting.id;
if (!accounting) return; if (!accounting) return;
data.bankFk = accounting.id;
accountingType.value = accounting.accountingType; accountingType.value = accounting.accountingType;
data.description = []; data.description = [];
data.payed = Date.vnNew();
isCash.value = accountingType.value.code == 'cash'; isCash.value = accountingType.value.code == 'cash';
viewReceipt.value = isCash.value; viewReceipt.value = isCash.value;
if (accountingType.value.daysInFuture)
data.payed.setDate(data.payed.getDate() + accountingType.value.daysInFuture);
maxAmount.value = accountingType.value && accountingType.value.maxAmount;
if (accountingType.value.code == 'compensation') return (data.description = '');
let descriptions = []; switch (accountingType.value.code) {
if (accountingType.value.receiptDescription) case 'compensation':
descriptions.push(accountingType.value.receiptDescription); data.description.push($props.formData.description);
if (data.description > 0) descriptions.push(data.description); break;
data.description = descriptions.join(', ');
default:
if (
accountingType.value.receiptDescription != null &&
accountingType.value.receiptDescription != ''
) {
data.description.push(accountingType.value.receiptDescription);
}
const originalDescription =
data.originalDescription || $props.formData.description;
if (originalDescription) {
data.description.push(originalDescription);
}
}
data.description = data.description.join(', ');
data.payed = Date.vnNew();
if (accountingType.value.daysInFuture) {
data.payed.setDate(data.payed.getDate() + accountingType.value.daysInFuture);
}
maxAmount.value = accountingType.value && accountingType.value.maxAmount;
} }
const calculateFromAmount = (event) => { const calculateFromAmount = (event) => {

View File

@ -6,7 +6,7 @@ describe('TicketBasicData', () => {
cy.visit('/#/ticket/31/basic-data'); cy.visit('/#/ticket/31/basic-data');
}); });
it('Should redirect to customer basic data', () => { it.skip('Should redirect to customer basic data', () => {
cy.get('.q-page').should('be.visible'); cy.get('.q-page').should('be.visible');
cy.get(':nth-child(2) > div > .text-primary').click(); cy.get(':nth-child(2) > div > .text-primary').click();
cy.dataCy('Address_select').click(); cy.dataCy('Address_select').click();
@ -16,7 +16,7 @@ describe('TicketBasicData', () => {
).click(); ).click();
cy.url().should('include', '/customer/1104/basic-data'); cy.url().should('include', '/customer/1104/basic-data');
}); });
it.only('stepper', () => { it('stepper', () => {
cy.get('.q-stepper__tab--active').should('have.class', 'q-stepper__tab--active'); cy.get('.q-stepper__tab--active').should('have.class', 'q-stepper__tab--active');
cy.get('.q-stepper__nav > .q-btn--standard').click(); cy.get('.q-stepper__nav > .q-btn--standard').click();

View File

@ -26,6 +26,24 @@ describe('TicketList', () => {
cy.get('@windowOpen').should('be.calledWithMatch', /\/ticket\/\d+\/sale/); cy.get('@windowOpen').should('be.calledWithMatch', /\/ticket\/\d+\/sale/);
}); });
it('should create payment ticket', () => {
cy.searchInFilterPanel().click();
const rowSelected =
'tbody > :nth-child(2) > :nth-child(1) > .q-checkbox > .q-checkbox__inner ';
cy.get(rowSelected).click();
cy.get(
'[style="transform: translate(-256px, 0px); margin: 140px 20px; z-index: 2;"] > div > .q-btn',
).click();
const description = 'Albaran: 31';
cy.dataCy('Reference_input').should('have.value', description);
cy.selectOption('[data-cy="paymentBank"]', 'Cash');
cy.dataCy('Delivered amount_input').clear().type('41.62');
cy.dataCy('Reference_input').should('have.value', `Cash, ${description}`);
cy.get('[aria-label="View recipt"]').click();
cy.get('.q-btn--standard > .q-btn__content > .block').click();
});
it('should open ticket summary', () => { it('should open ticket summary', () => {
searchResults(); searchResults();
cy.getRow().find('.q-btn:last').click(); cy.getRow().find('.q-btn:last').click();