#1407 email core francia LCR
This commit is contained in:
parent
62550b76f6
commit
c9521d1024
|
@ -0,0 +1 @@
|
|||
UPDATE `vn2008`.`mandato_tipo` SET `Nombre`='LCR' WHERE `idmandato_tipo`='3';
|
|
@ -0,0 +1,4 @@
|
|||
|
||||
INSERT INTO `vn`.`sample`(`id`, `code`, `description`, `isVisible`, `hasCompany`)
|
||||
VALUES
|
||||
(17, 'client-lcr', 'Autorisation pour débit', 1, 1);
|
|
@ -523,7 +523,8 @@ INSERT INTO `vn`.`greuge`(`id`, `clientFk`, `description`, `amount`, `shipped`,
|
|||
INSERT INTO `vn`.`mandateType`(`id`, `name`)
|
||||
VALUES
|
||||
(1, 'B2B'),
|
||||
(2, 'CORE');
|
||||
(2, 'CORE'),
|
||||
(3, 'LCR');
|
||||
|
||||
INSERT INTO `vn`.`mandate`(`id`, `clientFk`, `companyFk`, `code`, `created`, `mandateTypeFk`)
|
||||
VALUES
|
||||
|
|
|
@ -14,10 +14,19 @@ module.exports = Self => {
|
|||
if (sample.hasCompany && !changes.companyFk)
|
||||
throw new UserError('Choose a company');
|
||||
|
||||
const mandateSamples = [
|
||||
{sample: 'sepa-core', type: 'CORE'},
|
||||
{sample: 'client-lcr', type: 'LCR'}
|
||||
];
|
||||
|
||||
const mandate = mandateSamples.find(mandate => {
|
||||
return mandate.sample === sample.code;
|
||||
});
|
||||
|
||||
// Renew mandate
|
||||
if (sample.code === 'sepa-core') {
|
||||
if (mandate) {
|
||||
let mandateType = await models.MandateType.findOne({
|
||||
where: {name: 'CORE'}
|
||||
where: {name: mandate.type}
|
||||
});
|
||||
|
||||
let oldMandate = await models.Mandate.findOne({
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
{"type": "email", "name": "letter-debtor-nd"},
|
||||
{"type": "email", "name": "claim-pickup-order"},
|
||||
{"type": "email", "name": "sepa-core"},
|
||||
{"type": "email", "name": "client-lcr"},
|
||||
{"type": "email", "name": "driver-route"},
|
||||
{"type": "report", "name": "rpt-delivery-note"},
|
||||
{"type": "report", "name": "rpt-claim-pickup-order"},
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
const CssReader = require(`${appPath}/lib/cssReader`);
|
||||
|
||||
module.exports = new CssReader([
|
||||
`${appPath}/common/css/layout.css`,
|
||||
`${appPath}/common/css/email.css`,
|
||||
`${appPath}/common/css/misc.css`])
|
||||
.mergeStyles();
|
|
@ -0,0 +1,27 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="fr">
|
||||
<head>
|
||||
<title>{{ $t('subject') }}</title>
|
||||
</head>
|
||||
<body>
|
||||
<section class="container">
|
||||
<!-- Header component -->
|
||||
<email-header></email-header>
|
||||
<!-- End header component -->
|
||||
<section class="main">
|
||||
<!-- Title block -->
|
||||
<div class="title">
|
||||
<h1>{{ $t('title') }}</h1>
|
||||
</div>
|
||||
<!-- Title block end -->
|
||||
|
||||
<p>{{$t('description.dear')}},</p>
|
||||
<p>{{$t('description.instructions')}}</p>
|
||||
<p>{{$t('description.conclusion')}}</p>
|
||||
</section>
|
||||
<!-- Footer component -->
|
||||
<email-footer :locale="locale"></email-footer>
|
||||
<!-- End footer component -->
|
||||
</section>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,49 @@
|
|||
const database = require(`${appPath}/lib/database`);
|
||||
const reportEngine = require(`${appPath}/lib/reportEngine.js`);
|
||||
const UserException = require(`${appPath}/lib/exceptions/userException`);
|
||||
|
||||
module.exports = {
|
||||
name: 'client-lcr',
|
||||
async asyncData(ctx, params) {
|
||||
const promises = [];
|
||||
const data = {
|
||||
isPreview: ctx.method === 'GET',
|
||||
};
|
||||
|
||||
if (!params.clientFk)
|
||||
throw new UserException('No client id specified');
|
||||
|
||||
promises.push(reportEngine.toPdf('rpt-lcr', ctx));
|
||||
promises.push(this.methods.fetchClient(params.clientFk));
|
||||
|
||||
return Promise.all(promises).then(result => {
|
||||
const stream = result[0];
|
||||
const [[client]] = result[1];
|
||||
|
||||
Object.assign(data, client);
|
||||
Object.assign(data, {attachments: [{filename: 'rpt-lcr.pdf', content: stream}]});
|
||||
|
||||
return data;
|
||||
});
|
||||
},
|
||||
created() {
|
||||
if (this.locale)
|
||||
this.$i18n.locale = this.locale;
|
||||
},
|
||||
|
||||
methods: {
|
||||
fetchClient(clientFk) {
|
||||
return database.pool.query(`
|
||||
SELECT
|
||||
u.lang locale,
|
||||
c.email recipient
|
||||
FROM client c
|
||||
JOIN account.user u ON u.id = c.id
|
||||
WHERE c.id = ?`, [clientFk]);
|
||||
},
|
||||
},
|
||||
components: {
|
||||
'email-header': require('../email-header'),
|
||||
'email-footer': require('../email-footer'),
|
||||
},
|
||||
};
|
|
@ -0,0 +1,64 @@
|
|||
module.exports = {
|
||||
messages: {
|
||||
es: {
|
||||
subject: 'Autorisation pour débit',
|
||||
title: 'Autorisation pour débit',
|
||||
description: {
|
||||
dear: 'Messieurs',
|
||||
instructions: `Étant donné les excellentes relations existantes entre nos
|
||||
deux sociétés et en vue de faciliter les processus de
|
||||
paiement de nos factures, nous vous suggérons l'utilisation
|
||||
du système française de compensation LCR.
|
||||
Ce service consiste à effectuer des recouvrements
|
||||
automatiques, de manière électronique, de nos effets -
|
||||
lettres de change et billets à ordre - tirés sur votre société
|
||||
en Euro, qui présente comme principal avantage pour vous
|
||||
la substantielle réduction de coûts dans des termes de frais
|
||||
et commissions bancaires.
|
||||
Dans le cas où vous accepteriez notre proposition, à
|
||||
l’échéance de chaque effet, votre compte sera débité
|
||||
automatiquement par votre Banque.
|
||||
Ainsi, nous vous demandons de signer et envoyer à votre
|
||||
Banque l'original de l'autorisation pour débit en annexe,
|
||||
dûment remplie, et de nous retourner une photocopie de la
|
||||
dite autorisation.
|
||||
Ce système étant basé sur la transmission de données de
|
||||
manière électronique, le maniement de documents
|
||||
physiques á été éliminé
|
||||
En vous remercieront pour votre collaboration, nous vous
|
||||
prions d’agréer, Messieurs, nos salutations distinguées.`,
|
||||
conclusion: 'Bien cordialement'
|
||||
},
|
||||
},
|
||||
fr: {
|
||||
subject: 'Autorisation pour débit',
|
||||
title: 'Autorisation pour débit',
|
||||
description: {
|
||||
dear: 'Messieurs',
|
||||
instructions: `Étant donné les excellentes relations existantes entre nos
|
||||
deux sociétés et en vue de faciliter les processus de
|
||||
paiement de nos factures, nous vous suggérons l'utilisation
|
||||
du système française de compensation LCR.
|
||||
Ce service consiste à effectuer des recouvrements
|
||||
automatiques, de manière électronique, de nos effets -
|
||||
lettres de change et billets à ordre - tirés sur votre société
|
||||
en Euro, qui présente comme principal avantage pour vous
|
||||
la substantielle réduction de coûts dans des termes de frais
|
||||
et commissions bancaires.
|
||||
Dans le cas où vous accepteriez notre proposition, à
|
||||
l’échéance de chaque effet, votre compte sera débité
|
||||
automatiquement par votre Banque.
|
||||
Ainsi, nous vous demandons de signer et envoyer à votre
|
||||
Banque l'original de l'autorisation pour débit en annexe,
|
||||
dûment remplie, et de nous retourner une photocopie de la
|
||||
dite autorisation.
|
||||
Ce système étant basé sur la transmission de données de
|
||||
manière électronique, le maniement de documents
|
||||
physiques á été éliminé
|
||||
En vous remercieront pour votre collaboration, nous vous
|
||||
prions d’agréer, Messieurs, nos salutations distinguées.`,
|
||||
conclusion: 'Bien cordialement'
|
||||
},
|
||||
},
|
||||
},
|
||||
};
|
Loading…
Reference in New Issue