@accon/connect 0.8.9 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/logistics/levo-ja/dto/create-levo-ja-order.dto.d.ts +38 -0
- package/dist/logistics/levo-ja/dto/create-levo-ja-order.dto.js +44 -0
- package/dist/logistics/levo-ja/dto/create-levo-ja-order.dto.js.map +1 -0
- package/dist/logistics/levo-ja/dto/create-levo-ja-response.dto.d.ts +15 -0
- package/dist/logistics/levo-ja/dto/create-levo-ja-response.dto.js +21 -0
- package/dist/logistics/levo-ja/dto/create-levo-ja-response.dto.js.map +1 -0
- package/dist/logistics/levo-ja/levo-ja.config.d.ts +25 -0
- package/dist/logistics/levo-ja/levo-ja.config.js +27 -0
- package/dist/logistics/levo-ja/levo-ja.config.js.map +1 -0
- package/dist/logistics/levo-ja/levo-ja.order-output.d.ts +15 -0
- package/dist/logistics/levo-ja/levo-ja.order-output.js +178 -0
- package/dist/logistics/levo-ja/levo-ja.order-output.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
export declare class CreateLevoJaOrderDto {
|
|
2
|
+
token: string;
|
|
3
|
+
codCliente: string;
|
|
4
|
+
Usuario: string;
|
|
5
|
+
numeroPedido: string;
|
|
6
|
+
centroCusto: string;
|
|
7
|
+
DataRetirada?: string;
|
|
8
|
+
pontos: PontoDto[];
|
|
9
|
+
retorno?: 'S' | 'N';
|
|
10
|
+
obsRetorno?: string;
|
|
11
|
+
formaPagamento?: 'D' | 'C' | 'F';
|
|
12
|
+
pontoReceber?: number;
|
|
13
|
+
tipoCalculo?: 'faixaCep' | string;
|
|
14
|
+
buscaEndFull?: 'S' | 'N';
|
|
15
|
+
codigoProf?: string;
|
|
16
|
+
valorRotaProfissional?: number;
|
|
17
|
+
valorRotaServico?: number;
|
|
18
|
+
categoria?: string;
|
|
19
|
+
ordenar?: boolean;
|
|
20
|
+
semProfissional?: 'S' | 'N';
|
|
21
|
+
}
|
|
22
|
+
export declare class PontoDto {
|
|
23
|
+
rua: string;
|
|
24
|
+
numero?: string;
|
|
25
|
+
complemento?: string | null;
|
|
26
|
+
bairro?: string;
|
|
27
|
+
cidade?: string;
|
|
28
|
+
uf?: string;
|
|
29
|
+
obs?: string;
|
|
30
|
+
la?: number;
|
|
31
|
+
lo?: number;
|
|
32
|
+
cep?: string;
|
|
33
|
+
telefone?: string | null;
|
|
34
|
+
procurarPor?: string | null;
|
|
35
|
+
numeroNota?: string;
|
|
36
|
+
email?: string | null;
|
|
37
|
+
codigoFinalizarEnd?: number;
|
|
38
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PontoDto = exports.CreateLevoJaOrderDto = void 0;
|
|
4
|
+
class CreateLevoJaOrderDto {
|
|
5
|
+
token;
|
|
6
|
+
codCliente;
|
|
7
|
+
Usuario;
|
|
8
|
+
numeroPedido;
|
|
9
|
+
centroCusto;
|
|
10
|
+
DataRetirada;
|
|
11
|
+
pontos;
|
|
12
|
+
retorno;
|
|
13
|
+
obsRetorno;
|
|
14
|
+
formaPagamento;
|
|
15
|
+
pontoReceber;
|
|
16
|
+
tipoCalculo;
|
|
17
|
+
buscaEndFull;
|
|
18
|
+
codigoProf;
|
|
19
|
+
valorRotaProfissional;
|
|
20
|
+
valorRotaServico;
|
|
21
|
+
categoria;
|
|
22
|
+
ordenar;
|
|
23
|
+
semProfissional;
|
|
24
|
+
}
|
|
25
|
+
exports.CreateLevoJaOrderDto = CreateLevoJaOrderDto;
|
|
26
|
+
class PontoDto {
|
|
27
|
+
rua;
|
|
28
|
+
numero;
|
|
29
|
+
complemento;
|
|
30
|
+
bairro;
|
|
31
|
+
cidade;
|
|
32
|
+
uf;
|
|
33
|
+
obs;
|
|
34
|
+
la;
|
|
35
|
+
lo;
|
|
36
|
+
cep;
|
|
37
|
+
telefone;
|
|
38
|
+
procurarPor;
|
|
39
|
+
numeroNota;
|
|
40
|
+
email;
|
|
41
|
+
codigoFinalizarEnd;
|
|
42
|
+
}
|
|
43
|
+
exports.PontoDto = PontoDto;
|
|
44
|
+
//# sourceMappingURL=create-levo-ja-order.dto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-levo-ja-order.dto.js","sourceRoot":"","sources":["../../../../lib/logistics/levo-ja/dto/create-levo-ja-order.dto.ts"],"names":[],"mappings":";;;AAAA,MAAa,oBAAoB;IAC/B,KAAK,CAAS;IACd,UAAU,CAAS;IACnB,OAAO,CAAS;IAChB,YAAY,CAAS;IACrB,WAAW,CAAS;IACpB,YAAY,CAAU;IACtB,MAAM,CAAa;IACnB,OAAO,CAAa;IACpB,UAAU,CAAU;IACpB,cAAc,CAAmB;IACjC,YAAY,CAAU;IACtB,WAAW,CAAuB;IAClC,YAAY,CAAa;IACzB,UAAU,CAAU;IACpB,qBAAqB,CAAU;IAC/B,gBAAgB,CAAU;IAC1B,SAAS,CAAU;IACnB,OAAO,CAAW;IAClB,eAAe,CAAa;CAC7B;AApBD,oDAoBC;AAED,MAAa,QAAQ;IACnB,GAAG,CAAS;IACZ,MAAM,CAAU;IAChB,WAAW,CAAiB;IAC5B,MAAM,CAAU;IAChB,MAAM,CAAU;IAChB,EAAE,CAAU;IACZ,GAAG,CAAU;IACb,EAAE,CAAU;IACZ,EAAE,CAAU;IACZ,GAAG,CAAU;IACb,QAAQ,CAAiB;IACzB,WAAW,CAAiB;IAC5B,UAAU,CAAU;IACpB,KAAK,CAAiB;IACtB,kBAAkB,CAAU;CAC7B;AAhBD,4BAgBC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type CreateLevoJaOrderResponseDto = CreateServicoSuccessResponseDto | CreateServicoErrorResponseDto;
|
|
2
|
+
export declare class CreateServicoSuccessResponseDto {
|
|
3
|
+
Sucesso: string;
|
|
4
|
+
detalhes: DetalhesServicoDto;
|
|
5
|
+
}
|
|
6
|
+
export declare class DetalhesServicoDto {
|
|
7
|
+
distancia: number;
|
|
8
|
+
duracao: string;
|
|
9
|
+
valor: string;
|
|
10
|
+
obs: string;
|
|
11
|
+
urlRastreamento: string;
|
|
12
|
+
}
|
|
13
|
+
export declare class CreateServicoErrorResponseDto {
|
|
14
|
+
Erro: string;
|
|
15
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CreateServicoErrorResponseDto = exports.DetalhesServicoDto = exports.CreateServicoSuccessResponseDto = void 0;
|
|
4
|
+
class CreateServicoSuccessResponseDto {
|
|
5
|
+
Sucesso;
|
|
6
|
+
detalhes;
|
|
7
|
+
}
|
|
8
|
+
exports.CreateServicoSuccessResponseDto = CreateServicoSuccessResponseDto;
|
|
9
|
+
class DetalhesServicoDto {
|
|
10
|
+
distancia;
|
|
11
|
+
duracao;
|
|
12
|
+
valor;
|
|
13
|
+
obs;
|
|
14
|
+
urlRastreamento;
|
|
15
|
+
}
|
|
16
|
+
exports.DetalhesServicoDto = DetalhesServicoDto;
|
|
17
|
+
class CreateServicoErrorResponseDto {
|
|
18
|
+
Erro;
|
|
19
|
+
}
|
|
20
|
+
exports.CreateServicoErrorResponseDto = CreateServicoErrorResponseDto;
|
|
21
|
+
//# sourceMappingURL=create-levo-ja-response.dto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-levo-ja-response.dto.js","sourceRoot":"","sources":["../../../../lib/logistics/levo-ja/dto/create-levo-ja-response.dto.ts"],"names":[],"mappings":";;;AAIA,MAAa,+BAA+B;IAC1C,OAAO,CAAS;IAChB,QAAQ,CAAqB;CAC9B;AAHD,0EAGC;AAED,MAAa,kBAAkB;IAC7B,SAAS,CAAS;IAClB,OAAO,CAAS;IAChB,KAAK,CAAS;IACd,GAAG,CAAS;IACZ,eAAe,CAAS;CACzB;AAND,gDAMC;AAED,MAAa,6BAA6B;IACxC,IAAI,CAAS;CACd;AAFD,sEAEC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { FromSchema } from 'json-schema-to-ts';
|
|
2
|
+
export declare const LEVO_JA_CONFIG_SCHEMA: {
|
|
3
|
+
readonly $schema: "http://json-schema.org/draft-07/schema#";
|
|
4
|
+
readonly title: "Levo Já Configuration";
|
|
5
|
+
readonly type: "object";
|
|
6
|
+
readonly properties: {
|
|
7
|
+
readonly codCliente: {
|
|
8
|
+
readonly type: "string";
|
|
9
|
+
readonly title: "Código do cliente";
|
|
10
|
+
readonly description: "Seu código do cliente disponível para o serviço na plataforma Levo Já.";
|
|
11
|
+
};
|
|
12
|
+
readonly tokenGravarServico: {
|
|
13
|
+
readonly type: "string";
|
|
14
|
+
readonly title: "Token Gravar Serviço";
|
|
15
|
+
readonly description: "Token de autenticação para o evento Gravar Serviço.";
|
|
16
|
+
};
|
|
17
|
+
readonly habilitarEnvioDePedidosAgendados: {
|
|
18
|
+
readonly type: "string";
|
|
19
|
+
readonly title: "Habilitar envio de pedidos agendados";
|
|
20
|
+
readonly description: "Escreva o valor \"HABILITAR\" para adicionar pedidos agendados ao gravar serviços do Levo Já";
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
readonly required: readonly ["codCliente", "tokenGravarServico"];
|
|
24
|
+
};
|
|
25
|
+
export type LevoJaConfig = FromSchema<typeof LEVO_JA_CONFIG_SCHEMA>;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LEVO_JA_CONFIG_SCHEMA = void 0;
|
|
4
|
+
exports.LEVO_JA_CONFIG_SCHEMA = {
|
|
5
|
+
$schema: 'http://json-schema.org/draft-07/schema#',
|
|
6
|
+
title: 'Levo Já Configuration',
|
|
7
|
+
type: 'object',
|
|
8
|
+
properties: {
|
|
9
|
+
codCliente: {
|
|
10
|
+
type: 'string',
|
|
11
|
+
title: 'Código do cliente',
|
|
12
|
+
description: 'Seu código do cliente disponível para o serviço na plataforma Levo Já.',
|
|
13
|
+
},
|
|
14
|
+
tokenGravarServico: {
|
|
15
|
+
type: 'string',
|
|
16
|
+
title: 'Token Gravar Serviço',
|
|
17
|
+
description: 'Token de autenticação para o evento Gravar Serviço.',
|
|
18
|
+
},
|
|
19
|
+
habilitarEnvioDePedidosAgendados: {
|
|
20
|
+
type: 'string',
|
|
21
|
+
title: 'Habilitar envio de pedidos agendados',
|
|
22
|
+
description: 'Escreva o valor "HABILITAR" para adicionar pedidos agendados ao gravar serviços do Levo Já',
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
required: ['codCliente', 'tokenGravarServico'],
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=levo-ja.config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"levo-ja.config.js","sourceRoot":"","sources":["../../../lib/logistics/levo-ja/levo-ja.config.ts"],"names":[],"mappings":";;;AAEa,QAAA,qBAAqB,GAAG;IACnC,OAAO,EAAE,yCAAyC;IAClD,KAAK,EAAE,uBAAuB;IAC9B,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,mBAAmB;YAC1B,WAAW,EACT,wEAAwE;SAC3E;QACD,kBAAkB,EAAE;YAClB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,sBAAsB;YAC7B,WAAW,EAAE,qDAAqD;SACnE;QACD,gCAAgC,EAAE;YAChC,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,sCAAsC;YAC7C,WAAW,EACT,4FAA4F;SAC/F;KACF;IACD,QAAQ,EAAE,CAAC,YAAY,EAAE,oBAAoB,CAAC;CACjB,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { EventsService, Order, OrderOutputIntegration, IntegrationPayload, Merchant } from '../../core/index.js';
|
|
2
|
+
import { HttpService } from '@nestjs/axios';
|
|
3
|
+
import { LevoJaConfig } from './levo-ja.config';
|
|
4
|
+
import { CreateLevoJaOrderDto } from './dto/create-levo-ja-order.dto';
|
|
5
|
+
export declare class LevoJaOrderOutput implements OrderOutputIntegration<LevoJaConfig> {
|
|
6
|
+
readonly eventsService: EventsService;
|
|
7
|
+
private readonly httpService;
|
|
8
|
+
private readonly logger;
|
|
9
|
+
private readonly LEVO_JA_BASE_URL;
|
|
10
|
+
private readonly dispatchEvent;
|
|
11
|
+
constructor(eventsService: EventsService, httpService: HttpService);
|
|
12
|
+
onOrderCreated(payload: IntegrationPayload, config: LevoJaConfig): Promise<void>;
|
|
13
|
+
transformOrder(order: Order, merchant: Merchant, config: LevoJaConfig): CreateLevoJaOrderDto;
|
|
14
|
+
private mapPaymentMethod;
|
|
15
|
+
}
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var LevoJaOrderOutput_1;
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.LevoJaOrderOutput = void 0;
|
|
14
|
+
const common_1 = require("@nestjs/common");
|
|
15
|
+
const core_1 = require("../../core/index.js");
|
|
16
|
+
const axios_1 = require("@nestjs/axios");
|
|
17
|
+
const levo_ja_config_1 = require("./levo-ja.config");
|
|
18
|
+
const rxjs_1 = require("rxjs");
|
|
19
|
+
const axios_2 = require("axios");
|
|
20
|
+
const moment = require("moment");
|
|
21
|
+
let LevoJaOrderOutput = LevoJaOrderOutput_1 = class LevoJaOrderOutput {
|
|
22
|
+
eventsService;
|
|
23
|
+
httpService;
|
|
24
|
+
logger = new common_1.Logger(LevoJaOrderOutput_1.name);
|
|
25
|
+
LEVO_JA_BASE_URL;
|
|
26
|
+
dispatchEvent;
|
|
27
|
+
constructor(eventsService, httpService) {
|
|
28
|
+
this.eventsService = eventsService;
|
|
29
|
+
this.httpService = httpService;
|
|
30
|
+
this.dispatchEvent = eventsService.createDispatcherFor('LevoJa', 'OrderOutput');
|
|
31
|
+
this.LEVO_JA_BASE_URL = process.env.LEVO_JA_BASE_URL;
|
|
32
|
+
if (!this.LEVO_JA_BASE_URL) {
|
|
33
|
+
this.logger.error('LEVO_JA_BASE_URL não fornecido via ambiente.');
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
async onOrderCreated(payload, config) {
|
|
37
|
+
const { order, merchant } = payload;
|
|
38
|
+
const orderId = parseInt(order.externalId);
|
|
39
|
+
if (order.type != 'DELIVERY') {
|
|
40
|
+
this.logger.verbose('Ignorando pedido com tipo diferente de DELIVERY');
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
if (order.orderTiming === 'SCHEDULED' &&
|
|
44
|
+
config.habilitarEnvioDePedidosAgendados !== 'HABILITAR') {
|
|
45
|
+
this.logger.verbose('Ignorando pedido agendado com configuração desabilitada');
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
this.logger.verbose('onOrderCreated: iniciando integração');
|
|
49
|
+
try {
|
|
50
|
+
if (!merchant) {
|
|
51
|
+
throw new Error('Dados do estabelecimento não foram fornecidos');
|
|
52
|
+
}
|
|
53
|
+
this.dispatchEvent({
|
|
54
|
+
eventType: 'INTEGRATION_INITIATED',
|
|
55
|
+
orderId,
|
|
56
|
+
});
|
|
57
|
+
this.logger.debug(`onOrderCreated: Transformando o pedido com id: ${order.id}`);
|
|
58
|
+
const body = this.transformOrder(order, merchant, config);
|
|
59
|
+
this.dispatchEvent({
|
|
60
|
+
eventType: 'INTEGRATION_PROCESSING',
|
|
61
|
+
orderId,
|
|
62
|
+
metadata: { body: expect.any(Object) },
|
|
63
|
+
});
|
|
64
|
+
this.logger.debug('onOrderCreated: Pedido transformado', body);
|
|
65
|
+
this.logger.verbose('onOrderCreated: Enviando requisição para Levo Já');
|
|
66
|
+
const { data } = await (0, rxjs_1.firstValueFrom)(this.httpService.post(this.LEVO_JA_BASE_URL || 'https://levoja.app.br/integracao', body));
|
|
67
|
+
this.logger.debug('onOrderCreated: Resposta do Levo Já:', data);
|
|
68
|
+
this.dispatchEvent({
|
|
69
|
+
eventType: 'INTEGRATION_COMPLETED',
|
|
70
|
+
orderId,
|
|
71
|
+
metadata: { data },
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
catch (error) {
|
|
75
|
+
if ((0, axios_2.isAxiosError)(error)) {
|
|
76
|
+
this.logger.error('onOrderCreated: falha ao realizar requisição no Levo Já', JSON.stringify(error.response?.data));
|
|
77
|
+
this.dispatchEvent({
|
|
78
|
+
eventType: 'INTEGRATION_FAILED',
|
|
79
|
+
orderId,
|
|
80
|
+
metadata: { error: error.response?.data },
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
this.dispatchEvent({
|
|
85
|
+
eventType: 'INTEGRATION_FAILED',
|
|
86
|
+
orderId,
|
|
87
|
+
metadata: { error },
|
|
88
|
+
});
|
|
89
|
+
this.logger.error('onOrderCreated: falha ao criar pedido no Levo Já', error);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
transformOrder(order, merchant, config) {
|
|
94
|
+
if (!order.delivery?.deliveryAddress) {
|
|
95
|
+
throw new Error('Pedido sem endereço de entrega');
|
|
96
|
+
}
|
|
97
|
+
const origem = {
|
|
98
|
+
rua: merchant.address.street,
|
|
99
|
+
cidade: merchant.address.city,
|
|
100
|
+
uf: merchant.address.state,
|
|
101
|
+
numero: merchant.address.number,
|
|
102
|
+
la: merchant.address.latitude,
|
|
103
|
+
lo: merchant.address.longitude,
|
|
104
|
+
bairro: merchant.address.district,
|
|
105
|
+
cep: merchant.address.postalCode,
|
|
106
|
+
telefone: merchant.commercialNumber,
|
|
107
|
+
email: merchant.contactEmails[0],
|
|
108
|
+
complemento: merchant.address.complement,
|
|
109
|
+
};
|
|
110
|
+
const destino = {
|
|
111
|
+
rua: order.delivery.deliveryAddress.street,
|
|
112
|
+
numero: order.delivery.deliveryAddress.number,
|
|
113
|
+
complemento: order.delivery.deliveryAddress.complement,
|
|
114
|
+
bairro: order.delivery.deliveryAddress.district,
|
|
115
|
+
cidade: order.delivery.deliveryAddress.city,
|
|
116
|
+
uf: order.delivery.deliveryAddress.state,
|
|
117
|
+
cep: order.delivery.deliveryAddress.postalCode,
|
|
118
|
+
la: order.delivery.deliveryAddress.coordinates.latitude,
|
|
119
|
+
lo: order.delivery.deliveryAddress.coordinates.longitude,
|
|
120
|
+
obs: order.delivery.deliveryAddress.reference,
|
|
121
|
+
telefone: order.customer?.phone?.number || null,
|
|
122
|
+
procurarPor: order.customer?.name || null,
|
|
123
|
+
email: order.customer?.email || null,
|
|
124
|
+
};
|
|
125
|
+
const formaPagamento = this.mapPaymentMethod(order);
|
|
126
|
+
const dto = {
|
|
127
|
+
token: config.tokenGravarServico,
|
|
128
|
+
codCliente: config.codCliente,
|
|
129
|
+
Usuario: order.merchant.name,
|
|
130
|
+
centroCusto: order.merchant.name,
|
|
131
|
+
numeroPedido: order.displayId ?? order.id,
|
|
132
|
+
pontos: [origem, destino],
|
|
133
|
+
formaPagamento,
|
|
134
|
+
ordenar: false,
|
|
135
|
+
retorno: 'N',
|
|
136
|
+
semProfissional: 'S',
|
|
137
|
+
};
|
|
138
|
+
if (order.orderTiming === 'SCHEDULED' &&
|
|
139
|
+
order.schedule?.scheduledDateTimeStart) {
|
|
140
|
+
dto.DataRetirada = moment(order.schedule.scheduledDateTimeStart).format('YYYY-MM-DD HH:mm:ss');
|
|
141
|
+
}
|
|
142
|
+
return dto;
|
|
143
|
+
}
|
|
144
|
+
mapPaymentMethod(order) {
|
|
145
|
+
const method = order.payments.methods.find((m) => m.type === 'PENDING' || m.type === 'PREPAID');
|
|
146
|
+
if (!method)
|
|
147
|
+
return undefined;
|
|
148
|
+
switch (method.method) {
|
|
149
|
+
case 'CASH':
|
|
150
|
+
return 'D';
|
|
151
|
+
case 'CREDIT':
|
|
152
|
+
case 'DEBIT':
|
|
153
|
+
case 'CREDIT_DEBIT':
|
|
154
|
+
case 'PIX':
|
|
155
|
+
case 'DIGITAL_WALLET':
|
|
156
|
+
return 'C';
|
|
157
|
+
default:
|
|
158
|
+
return undefined;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
};
|
|
162
|
+
exports.LevoJaOrderOutput = LevoJaOrderOutput;
|
|
163
|
+
exports.LevoJaOrderOutput = LevoJaOrderOutput = LevoJaOrderOutput_1 = __decorate([
|
|
164
|
+
(0, core_1.RegistryIntegration)({
|
|
165
|
+
id: 'levo-ja',
|
|
166
|
+
type: 'OrderOutput',
|
|
167
|
+
title: 'Levo Já',
|
|
168
|
+
category: 'Logistics',
|
|
169
|
+
description: 'Integração com a Levo Já, plataforma de logística urbana que conecta seu sistema a uma rede de entregadores sob demanda, automatizando a criação, acompanhamento e finalização de entregas',
|
|
170
|
+
logoUrl: 'https://storage.googleapis.com/clientesmapptools/f9dd9184c571dec3aa1c1d16583dc452.png',
|
|
171
|
+
websiteUrl: 'https://levoja.app.br/',
|
|
172
|
+
configSchema: levo_ja_config_1.LEVO_JA_CONFIG_SCHEMA,
|
|
173
|
+
}),
|
|
174
|
+
(0, common_1.Injectable)(),
|
|
175
|
+
__metadata("design:paramtypes", [core_1.EventsService,
|
|
176
|
+
axios_1.HttpService])
|
|
177
|
+
], LevoJaOrderOutput);
|
|
178
|
+
//# sourceMappingURL=levo-ja.order-output.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"levo-ja.order-output.js","sourceRoot":"","sources":["../../../lib/logistics/levo-ja/levo-ja.order-output.ts"],"names":[],"mappings":"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"}
|