@nomalism-com/types 0.37.7 → 0.37.8
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/index.cjs +2 -4
- package/dist/index.js +2 -4
- package/dist/modules/supply/documentSet/interface.d.ts +0 -2
- package/dist/shared/entities/stock.d.ts +0 -1
- package/package.json +4 -1
- package/.editorconfig +0 -9
- package/.prettierrc +0 -7
- package/eslint.config.mjs +0 -39
- package/package-lock.json +0 -4327
- package/src/index.ts +0 -3
- package/src/main.ts +0 -672
- package/src/modules/document/billOfLading/interfaces.ts +0 -26
- package/src/modules/document/billOfLading/route.schema.ts +0 -32
- package/src/modules/document/inventario/interface.ts +0 -19
- package/src/modules/document/inventario/route.schema.ts +0 -16
- package/src/modules/document/materialEntrance/interfaces.ts +0 -207
- package/src/modules/document/materialEntrance/route.schema.ts +0 -53
- package/src/modules/document/order/interfaces.ts +0 -172
- package/src/modules/document/order/route.schema.ts +0 -61
- package/src/modules/document/productionOrder/interfaces.ts +0 -12
- package/src/modules/document/productionOrder/route.schema.ts +0 -13
- package/src/modules/document/proforma/interfaces.ts +0 -15
- package/src/modules/document/proforma/route.schema.ts +0 -14
- package/src/modules/document/propostaFornecedor/interfaces.ts +0 -17
- package/src/modules/document/propostaFornecedor/route.schema.ts +0 -21
- package/src/modules/document/propostaSheets/interface.ts +0 -113
- package/src/modules/document/propostaSheets/route.schema.ts +0 -45
- package/src/modules/document/providerCreditNoteFromReturn/interfaces.ts +0 -48
- package/src/modules/document/providerCreditNoteFromReturn/route.schema.ts +0 -41
- package/src/modules/document/providerFinancialCreditNote/interfaces.ts +0 -36
- package/src/modules/document/providerFinancialCreditNote/route.schema.ts +0 -40
- package/src/modules/document/providerServiceInvoice/interfaces.ts +0 -20
- package/src/modules/document/providerServiceInvoice/route.schema.ts +0 -26
- package/src/modules/document/purchase/interfaces.ts +0 -112
- package/src/modules/document/purchase/route.schema.ts +0 -51
- package/src/modules/document/quebra/interfaces.ts +0 -46
- package/src/modules/document/quebra/route.schema.ts +0 -25
- package/src/modules/document/returnToProvider/interface.ts +0 -59
- package/src/modules/document/returnToProvider/route.schema.ts +0 -27
- package/src/modules/document/transformado/interfaces.ts +0 -31
- package/src/modules/document/transformado/route.schema.ts +0 -26
- package/src/modules/document/upfrontReturn/interfaces.ts +0 -17
- package/src/modules/document/upfrontReturn/route.schema.ts +0 -11
- package/src/modules/documentManagement/multimedia/interfaces.ts +0 -22
- package/src/modules/documentManagement/multimedia/route.schema.ts +0 -9
- package/src/modules/integration/emailLog/interfaces.ts +0 -111
- package/src/modules/integration/emailLog/route.schema.ts +0 -18
- package/src/modules/integration/emailTemplate/interfaces.ts +0 -55
- package/src/modules/integration/emailTemplate/route.schema.ts +0 -95
- package/src/modules/integration/emailTemplateAttachment/interfaces.ts +0 -22
- package/src/modules/integration/emailTemplateAttachment/route.schema.ts +0 -12
- package/src/modules/integration/emailVerification/interfaces.ts +0 -30
- package/src/modules/integration/emailVerification/route.schema.ts +0 -34
- package/src/modules/integration/googleFilePermission/interfaces.ts +0 -32
- package/src/modules/integration/googleFilePermission/route.schema.ts +0 -15
- package/src/modules/integration/googleSheets/interfaces.ts +0 -98
- package/src/modules/integration/googleSheets/route.schema.ts +0 -52
- package/src/modules/integration/observation/interfaces.ts +0 -61
- package/src/modules/integration/observation/route.schema.ts +0 -40
- package/src/modules/integration/observationType/interfaces.ts +0 -37
- package/src/modules/integration/observationType/route.schema.ts +0 -17
- package/src/modules/integration/projectInfo/interfaces.ts +0 -26
- package/src/modules/integration/projectInfo/route.schema.ts +0 -18
- package/src/modules/integration/settings/interfaces.ts +0 -31
- package/src/modules/integration/settings/route.schema.ts +0 -24
- package/src/modules/print/npc/interfaces.ts +0 -34
- package/src/modules/print/npc/route.schema.ts +0 -21
- package/src/modules/print/printer/interfaces.ts +0 -47
- package/src/modules/print/printer/route.schema.ts +0 -60
- package/src/modules/print/schedulePrintJob/interfaces.ts +0 -48
- package/src/modules/print/schedulePrintJob/route.schema.ts +0 -39
- package/src/modules/stock/chat/interfaces.ts +0 -82
- package/src/modules/stock/chat/route.schema.ts +0 -28
- package/src/modules/stock/chatRapidMessage/interface.ts +0 -31
- package/src/modules/stock/chatRapidMessage/route.schema.ts +0 -18
- package/src/modules/stock/dashboard/interface.ts +0 -25
- package/src/modules/stock/dashboard/route.schema.ts +0 -11
- package/src/modules/stock/file/interface.ts +0 -37
- package/src/modules/stock/file/route.schema.ts +0 -37
- package/src/modules/stock/location/interface.ts +0 -77
- package/src/modules/stock/location/route.schema.ts +0 -57
- package/src/modules/stock/prison/interface.ts +0 -70
- package/src/modules/stock/prison/route.schema.ts +0 -50
- package/src/modules/stock/productGoogleSheets/interface.ts +0 -339
- package/src/modules/stock/productGoogleSheets/route.schema.ts +0 -146
- package/src/modules/stock/productImage/interface.ts +0 -69
- package/src/modules/stock/productImage/route.schema.ts +0 -52
- package/src/modules/stock/promotion/interface.ts +0 -61
- package/src/modules/stock/promotion/route.schema.ts +0 -39
- package/src/modules/stock/promotionAssoc/interface.ts +0 -62
- package/src/modules/stock/promotionAssoc/route.schema.ts +0 -35
- package/src/modules/stock/queryList/interfaces.ts +0 -56
- package/src/modules/stock/queryList/route.schema.ts +0 -37
- package/src/modules/stock/queryParameter/interfaces.ts +0 -72
- package/src/modules/stock/queryParameter/route.schema.ts +0 -36
- package/src/modules/stock/recurrentTasks/interface.ts +0 -12
- package/src/modules/stock/returnReason/interfaces.ts +0 -23
- package/src/modules/stock/returnReason/route.schema.ts +0 -14
- package/src/modules/stock/savedEmPicking/interfaces.ts +0 -37
- package/src/modules/stock/savedEmPicking/route.schema.ts +0 -113
- package/src/modules/stock/savedProviderProposal/interfaces.ts +0 -32
- package/src/modules/stock/savedProviderProposal/route.schema.ts +0 -16
- package/src/modules/stock/sideMenu/interface.ts +0 -48
- package/src/modules/stock/sideMenu/route.schema.ts +0 -20
- package/src/modules/stock/stockMovement/interface.ts +0 -78
- package/src/modules/stock/stockMovement/route.schema.ts +0 -34
- package/src/modules/stock/tag/interface.ts +0 -36
- package/src/modules/stock/tag/route.schema.ts +0 -30
- package/src/modules/stock/task/interface.ts +0 -126
- package/src/modules/stock/task/route.schema.ts +0 -48
- package/src/modules/stock/taskMessage/interface.ts +0 -18
- package/src/modules/stock/taskMessage/route.schema.ts +0 -19
- package/src/modules/stock/taskRead/interface.ts +0 -17
- package/src/modules/stock/taskRead/route.schema.ts +0 -18
- package/src/modules/stock/typeOfLocation/interface.ts +0 -51
- package/src/modules/stock/typeOfLocation/route.schema.ts +0 -29
- package/src/modules/stock/unitOfMeasure/interface.ts +0 -64
- package/src/modules/stock/unitOfMeasure/route.schema.ts +0 -41
- package/src/modules/stock/vatTax/interface.ts +0 -55
- package/src/modules/stock/vatTax/route.schema.ts +0 -33
- package/src/modules/stock/vatTaxZone/interface.ts +0 -63
- package/src/modules/stock/vatTaxZone/route.schema.ts +0 -42
- package/src/modules/stock/vatValidation/interfaces.ts +0 -10
- package/src/modules/stock/vatValidation/route.schema.ts +0 -8
- package/src/modules/stock/workflow/interfaces.ts +0 -64
- package/src/modules/stock/workflow/route.schema.ts +0 -28
- package/src/modules/supply/batch/interface.ts +0 -0
- package/src/modules/supply/documentHeader/interfaces.ts +0 -497
- package/src/modules/supply/documentHeader/route.schema.ts +0 -371
- package/src/modules/supply/documentHeaderHistory/interfaces.ts +0 -15
- package/src/modules/supply/documentLine/interfaces.ts +0 -210
- package/src/modules/supply/documentLine/route.schema.ts +0 -108
- package/src/modules/supply/documentLineAssoc/interfaces.ts +0 -52
- package/src/modules/supply/documentLineAssoc/route.schema.ts +0 -16
- package/src/modules/supply/documentLineMT/interface.ts +0 -27
- package/src/modules/supply/documentLineMT/route.schema.ts +0 -18
- package/src/modules/supply/documentLineNote/interfaces.ts +0 -53
- package/src/modules/supply/documentLineNote/route.schema.ts +0 -19
- package/src/modules/supply/documentLineRM/interface.ts +0 -34
- package/src/modules/supply/documentLineRM/route.schema.ts +0 -25
- package/src/modules/supply/documentSet/interface.ts +0 -31
- package/src/modules/supply/documentSet/route.schema.ts +0 -20
- package/src/modules/supply/documentType/interfaces.ts +0 -214
- package/src/modules/supply/documentType/route.schema.ts +0 -75
- package/src/modules/supply/externalDocumentHeader/interface.ts +0 -120
- package/src/modules/supply/externalDocumentHeader/route.schema.ts +0 -79
- package/src/modules/supply/externalDocumentType/interface.ts +0 -14
- package/src/modules/supply/orderManagement/interface.ts +0 -49
- package/src/modules/supply/orderManagement/route.schema.ts +0 -0
- package/src/modules/supply/payment/interface.ts +0 -229
- package/src/modules/supply/payment/route.schema.ts +0 -122
- package/src/modules/supply/preSale/interface.ts +0 -92
- package/src/modules/supply/preSale/route.schema.ts +0 -75
- package/src/modules/supply/preSaleProduct/interface.ts +0 -16
- package/src/modules/supply/preSaleProduct/route.schema.ts +0 -7
- package/src/modules/supply/schedule/interface.ts +0 -47
- package/src/modules/supply/schedule/route.schema.ts +0 -14
- package/src/modules/supply/startDocumentHeaderLastUpdate/interface.ts +0 -15
- package/src/modules/tickets/channel/interfaces.ts +0 -35
- package/src/modules/tickets/channel/route.schema.ts +0 -24
- package/src/modules/tickets/clt/interfaces.ts +0 -26
- package/src/modules/tickets/clt/route.schema.ts +0 -24
- package/src/modules/tickets/language/interfaces.ts +0 -25
- package/src/modules/tickets/language/route.schema.ts +0 -28
- package/src/modules/tickets/tickets/interfaces.ts +0 -80
- package/src/modules/tickets/tickets/route.schema.ts +0 -19
- package/src/modules/user/bankData/interface.ts +0 -64
- package/src/modules/user/bankData/route.schema.ts +0 -40
- package/src/modules/user/chatSubscribers/interfaces.ts +0 -34
- package/src/modules/user/chatSubscribers/route.schema.ts +0 -12
- package/src/modules/user/clientType/interface.ts +0 -47
- package/src/modules/user/clientType/route.schema.ts +0 -31
- package/src/modules/user/clients/interface.ts +0 -138
- package/src/modules/user/clients/route.schema.ts +0 -87
- package/src/modules/user/commissioner/interface.ts +0 -110
- package/src/modules/user/commissioner/route.schema.ts +0 -65
- package/src/modules/user/country/interface.ts +0 -54
- package/src/modules/user/country/route.schema.ts +0 -36
- package/src/modules/user/deliveryMethods/interfaces.ts +0 -28
- package/src/modules/user/deliveryMethods/route.schema.ts +0 -15
- package/src/modules/user/favorites/interfaces.ts +0 -28
- package/src/modules/user/favorites/route.schema.ts +0 -19
- package/src/modules/user/groupPermissions/interface.ts +0 -32
- package/src/modules/user/groupPermissions/route.schema.ts +0 -11
- package/src/modules/user/language/interface.ts +0 -47
- package/src/modules/user/language/route.schema.ts +0 -28
- package/src/modules/user/maturityDates/interfaces.ts +0 -31
- package/src/modules/user/maturityDates/route.schema.ts +0 -18
- package/src/modules/user/password/interfaces.ts +0 -21
- package/src/modules/user/password/route.schema.ts +0 -22
- package/src/modules/user/paymentMethods/interfaces.ts +0 -72
- package/src/modules/user/paymentMethods/route.schema.ts +0 -27
- package/src/modules/user/permissions/interface.ts +0 -34
- package/src/modules/user/permissions/route.schema.ts +0 -11
- package/src/modules/user/persona/interface.ts +0 -157
- package/src/modules/user/persona/route.schema.ts +0 -101
- package/src/modules/user/providerType/interface.ts +0 -47
- package/src/modules/user/providerType/route.schema.ts +0 -28
- package/src/modules/user/providers/interface.ts +0 -130
- package/src/modules/user/providers/route.schema.ts +0 -85
- package/src/modules/user/purchaseConditions/interface.ts +0 -58
- package/src/modules/user/purchaseConditions/route.schema.ts +0 -33
- package/src/modules/user/reasonForExemption/interface.ts +0 -53
- package/src/modules/user/reasonForExemption/route.schema.ts +0 -34
- package/src/modules/user/refreshToken/interface.ts +0 -19
- package/src/modules/user/refreshToken/route.schema.ts +0 -10
- package/src/modules/user/segmentsArea/interface.ts +0 -49
- package/src/modules/user/segmentsArea/route.schema.ts +0 -30
- package/src/modules/user/sessions/interface.ts +0 -24
- package/src/modules/user/sessions/route.schema.ts +0 -10
- package/src/modules/user/shippings/interface.ts +0 -57
- package/src/modules/user/shippings/route.schema.ts +0 -35
- package/src/modules/user/storeOperator/interface.ts +0 -42
- package/src/modules/user/storeOperator/route.schema.ts +0 -45
- package/src/modules/user/swift/interface.ts +0 -55
- package/src/modules/user/swift/route.schema.ts +0 -36
- package/src/modules/user/tenant/interface.ts +0 -59
- package/src/modules/user/tenant/route.schema.ts +0 -46
- package/src/modules/user/theme/interfaces.ts +0 -21
- package/src/modules/user/theme/route.schema.ts +0 -19
- package/src/modules/user/userPermissions/interface.ts +0 -28
- package/src/modules/user/userPermissions/route.schema.ts +0 -12
- package/src/modules/user/userPositions/interface.ts +0 -47
- package/src/modules/user/userPositions/route.schema.ts +0 -29
- package/src/modules/user/userTokens/interface.ts +0 -41
- package/src/modules/user/userTokens/route.schema.ts +0 -17
- package/src/modules/user/users/interface.ts +0 -177
- package/src/modules/user/users/route.schema.ts +0 -58
- package/src/modules/user/vehicles/interfaces.ts +0 -31
- package/src/modules/user/vehicles/route.schema.ts +0 -17
- package/src/modules/user/zipCode/interfaces.ts +0 -27
- package/src/modules/user/zipCode/route.schema.ts +0 -26
- package/src/modules/view/adminPanel/interfaces.ts +0 -180
- package/src/modules/view/errorLog/interfaces.ts +0 -36
- package/src/modules/view/errorLog/route.schema.ts +0 -25
- package/src/shared/entities/documentManagement.ts +0 -16
- package/src/shared/entities/integration.ts +0 -136
- package/src/shared/entities/print.ts +0 -49
- package/src/shared/entities/stock.ts +0 -1248
- package/src/shared/entities/tickets.ts +0 -82
- package/src/shared/entities/user.ts +0 -540
- package/src/shared/errors/documentManagementErrors.ts +0 -13
- package/src/shared/errors/integrationErrors.ts +0 -44
- package/src/shared/errors/stockErrors.ts +0 -267
- package/src/shared/errors/userErrors.ts +0 -108
- package/src/shared/errors/viewErrors.ts +0 -6
- package/src/shared/interface.ts +0 -548
- package/src/shared/messages.ts +0 -141
- package/tsconfig.json +0 -20
- package/tsup.config.ts +0 -10
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import joi from 'joi';
|
|
2
|
-
import { messages } from '../../../shared/messages';
|
|
3
|
-
import * as IShared from '../../../shared/interface';
|
|
4
|
-
import { IProviderProposalRequest, IProviderProposalData } from './interfaces';
|
|
5
|
-
|
|
6
|
-
const providerProposalData: IShared.IRouteRequest<IProviderProposalData> = {
|
|
7
|
-
product_id: joi.string().uuid().required(),
|
|
8
|
-
quantity: joi.number().required(),
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
const providerPRoposalBodyKeys: IShared.IRouteRequest<IProviderProposalRequest> = {
|
|
12
|
-
provider_id: joi.string().uuid().required(),
|
|
13
|
-
data: joi
|
|
14
|
-
.array()
|
|
15
|
-
.items({
|
|
16
|
-
...providerProposalData,
|
|
17
|
-
})
|
|
18
|
-
.required(),
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
export const providerProposalBody = joi.object().keys(providerPRoposalBodyKeys).messages(messages);
|
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
import * as IShared from '../../../shared/interface';
|
|
2
|
-
import { DocumentLinePendingConflict, DocumentLine } from '../../../shared/entities/stock';
|
|
3
|
-
|
|
4
|
-
export type Entity = DocumentLinePendingConflict;
|
|
5
|
-
|
|
6
|
-
export const Route = 'documentLine_pending_conflict';
|
|
7
|
-
export const UpperName = 'DocumentLinePendingConflict';
|
|
8
|
-
export const LowerName = UpperName[0].toLowerCase() + UpperName.substring(1);
|
|
9
|
-
|
|
10
|
-
export const IConflictEnum: {
|
|
11
|
-
update: 'update';
|
|
12
|
-
delete: 'delete';
|
|
13
|
-
price: 'price';
|
|
14
|
-
} = {
|
|
15
|
-
update: 'update',
|
|
16
|
-
delete: 'delete',
|
|
17
|
-
price: 'price',
|
|
18
|
-
};
|
|
19
|
-
export type IConflict = (typeof IConflictEnum)[keyof typeof IConflictEnum];
|
|
20
|
-
export interface IFindByGooglesheetIdResponse {
|
|
21
|
-
document_header_id: string;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
export type IConflictCreateRequest = Omit<
|
|
25
|
-
Entity,
|
|
26
|
-
'id' | 'created_at' | 'created_by' | 'updated_at' | 'updated_by'
|
|
27
|
-
>;
|
|
28
|
-
|
|
29
|
-
export interface IConflictFindByOwnerIdResponse extends Entity {
|
|
30
|
-
document_line: Pick<DocumentLine, 'preco_venda' | 'client_discount' | 'quantity'> & {
|
|
31
|
-
designation: string;
|
|
32
|
-
reference: string;
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export interface ICreateSheetFromDocumentResponse {
|
|
37
|
-
google_sheet_id: string;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
export interface ICloneSheetToNewDocumentResponse {
|
|
41
|
-
id: string;
|
|
42
|
-
document_number: number;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
export interface IIsProcessingResponse {
|
|
46
|
-
is_processing: boolean;
|
|
47
|
-
last_error: string | null;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
export interface ICloneSheetToNewDocumentRequest {
|
|
51
|
-
id: string;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
export interface IImportFromSheetRequest {
|
|
55
|
-
id: string;
|
|
56
|
-
original_document_header_id?: string;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
export interface IRmHeaderField {
|
|
60
|
-
group: string;
|
|
61
|
-
field: string;
|
|
62
|
-
label: string;
|
|
63
|
-
type?: string;
|
|
64
|
-
options?: string[];
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
export type IData = Record<string, IDataBySheetId | undefined>;
|
|
68
|
-
export interface IDataBySheetId {
|
|
69
|
-
group: string;
|
|
70
|
-
field_name: string;
|
|
71
|
-
value: string | number | boolean | null;
|
|
72
|
-
}
|
|
73
|
-
export interface IRmGetDataBySheetIdResponse {
|
|
74
|
-
headers: IRmHeaderField[];
|
|
75
|
-
data: IData[];
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
export interface IRmUpdateDataBySheetIdRequest {
|
|
79
|
-
data: IData[];
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
export interface IRepository {
|
|
83
|
-
importFromSheet(params: IImportFromSheetRequest): Promise<IFindByGooglesheetIdResponse>;
|
|
84
|
-
|
|
85
|
-
isProcessing(params: IShared.IFindByIdRequest): Promise<IIsProcessingResponse>;
|
|
86
|
-
|
|
87
|
-
conflictAccept(params: IShared.IFindByIdRequest): Promise<void>;
|
|
88
|
-
|
|
89
|
-
conflictDelete(params: IShared.IFindByIdRequest): Promise<void>;
|
|
90
|
-
|
|
91
|
-
conflictFindByOwnerId(
|
|
92
|
-
params: IShared.IFindByOwnerIdRequest,
|
|
93
|
-
): Promise<IConflictFindByOwnerIdResponse[]>;
|
|
94
|
-
|
|
95
|
-
rmGetDataBySheetId(params: IShared.IFindByIdRequest): Promise<IRmGetDataBySheetIdResponse>;
|
|
96
|
-
|
|
97
|
-
rmUpdateDataBySheetId(
|
|
98
|
-
params: IShared.IFindByIdRequest,
|
|
99
|
-
body: IRmUpdateDataBySheetIdRequest,
|
|
100
|
-
): Promise<void>;
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
export interface IApi extends IRepository {
|
|
104
|
-
createSheetFromDocument(
|
|
105
|
-
params: IShared.IFindByIdRequest,
|
|
106
|
-
): Promise<ICreateSheetFromDocumentResponse>;
|
|
107
|
-
|
|
108
|
-
cloneSheetToNewDocument(
|
|
109
|
-
params: ICloneSheetToNewDocumentRequest,
|
|
110
|
-
): Promise<ICloneSheetToNewDocumentResponse>;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
export type IController = IShared.IEntityWithUserToken<IRepository>;
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import joi from 'joi';
|
|
2
|
-
|
|
3
|
-
import * as IShared from '../../../shared/interface';
|
|
4
|
-
import { messages } from '../../../shared/messages';
|
|
5
|
-
import {
|
|
6
|
-
ICloneSheetToNewDocumentRequest,
|
|
7
|
-
IRmUpdateDataBySheetIdRequest,
|
|
8
|
-
IImportFromSheetRequest,
|
|
9
|
-
} from './interface';
|
|
10
|
-
|
|
11
|
-
export const importFromSheetKeys = joi
|
|
12
|
-
.object<IImportFromSheetRequest>()
|
|
13
|
-
.keys({
|
|
14
|
-
id: joi.string().required(),
|
|
15
|
-
original_document_header_id: joi.string().uuid().optional(),
|
|
16
|
-
})
|
|
17
|
-
.messages(messages);
|
|
18
|
-
|
|
19
|
-
// find by google sheet id validation
|
|
20
|
-
const findByGoogleSheetIdKeys: IShared.IRouteRequestWithStamps<IShared.IFindByIdRequest> = {
|
|
21
|
-
id: joi.string().required(),
|
|
22
|
-
};
|
|
23
|
-
export const findByGoogleSheetId = joi.object().keys(findByGoogleSheetIdKeys).messages(messages);
|
|
24
|
-
|
|
25
|
-
export const cloneSheetToNewDocumentQuery = joi.object<ICloneSheetToNewDocumentRequest>().keys({
|
|
26
|
-
id: joi.string().uuid().required(),
|
|
27
|
-
});
|
|
28
|
-
|
|
29
|
-
// Validação para lidar com o valor e campos de entrada dinâmicos
|
|
30
|
-
export const rmUpdateDataByDocumentLineIdValidation = joi
|
|
31
|
-
.object<IRmUpdateDataBySheetIdRequest>()
|
|
32
|
-
.keys({
|
|
33
|
-
data: joi
|
|
34
|
-
.array()
|
|
35
|
-
.items(
|
|
36
|
-
joi
|
|
37
|
-
.object({
|
|
38
|
-
filed_name: joi.string().required(),
|
|
39
|
-
value: joi.alternatives().try(joi.string(), joi.number(), joi.boolean()).required(),
|
|
40
|
-
})
|
|
41
|
-
.required(),
|
|
42
|
-
)
|
|
43
|
-
.required(),
|
|
44
|
-
})
|
|
45
|
-
.messages(messages);
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import * as IShared from '../../../shared/interface';
|
|
2
|
-
|
|
3
|
-
export interface IFindProviderReturnRequest {
|
|
4
|
-
provider_id: string;
|
|
5
|
-
search_value?: string | null;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
export interface IFindProviderReturnOptionValue {
|
|
9
|
-
document_line_id: string;
|
|
10
|
-
product_id: string;
|
|
11
|
-
product_thumbnail: string | null;
|
|
12
|
-
product_reference: string;
|
|
13
|
-
product_designation: string;
|
|
14
|
-
quantity: number;
|
|
15
|
-
unit_of_measure_quantity_notation: string;
|
|
16
|
-
provider_total_without_tax: number;
|
|
17
|
-
provider_total: number;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
export interface IFindProviderReturnResponse {
|
|
21
|
-
id: string; // document_header_id
|
|
22
|
-
label: string; // document_name
|
|
23
|
-
value: IFindProviderReturnOptionValue[];
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
export interface ICreateProviderCreditNoteFromReturnDocumentHeaders {
|
|
27
|
-
id: string;
|
|
28
|
-
document_line_ids: string[];
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
export interface ICreateProviderCreditNoteFromReturnRequest {
|
|
32
|
-
emission_date: Date;
|
|
33
|
-
external_document_name: string;
|
|
34
|
-
observations: string;
|
|
35
|
-
document_headers: ICreateProviderCreditNoteFromReturnDocumentHeaders[];
|
|
36
|
-
acerto: number;
|
|
37
|
-
total: number;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
export interface IRepository {
|
|
41
|
-
findProviderReturn(params: IFindProviderReturnRequest): Promise<IFindProviderReturnResponse[]>;
|
|
42
|
-
|
|
43
|
-
createProviderCreditNoteFromReturn(
|
|
44
|
-
params: ICreateProviderCreditNoteFromReturnRequest,
|
|
45
|
-
): Promise<void>;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
export type IController = IShared.IEntityWithUserToken<IRepository>;
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import joi from 'joi';
|
|
2
|
-
import { messages } from '../../../shared/messages';
|
|
3
|
-
import * as IShared from '../../../shared/interface';
|
|
4
|
-
import {
|
|
5
|
-
IFindProviderReturnRequest,
|
|
6
|
-
ICreateProviderCreditNoteFromReturnDocumentHeaders,
|
|
7
|
-
ICreateProviderCreditNoteFromReturnRequest,
|
|
8
|
-
} from './interfaces';
|
|
9
|
-
|
|
10
|
-
const findProviderReturnQueryKeys: IShared.IRouteRequest<IFindProviderReturnRequest> = {
|
|
11
|
-
search_value: joi.string().allow('', null).optional(),
|
|
12
|
-
provider_id: joi.string().uuid().required(),
|
|
13
|
-
};
|
|
14
|
-
export const findProviderReturnQuery = joi
|
|
15
|
-
.object()
|
|
16
|
-
.keys(findProviderReturnQueryKeys)
|
|
17
|
-
.messages(messages);
|
|
18
|
-
|
|
19
|
-
const createProviderCreditNoteFromReturnDocumentHeadersBodyKeys: IShared.IRouteRequest<ICreateProviderCreditNoteFromReturnDocumentHeaders> =
|
|
20
|
-
{
|
|
21
|
-
id: joi.string().uuid().required(),
|
|
22
|
-
document_line_ids: joi.array().unique().items(joi.string().uuid().required()).required(),
|
|
23
|
-
};
|
|
24
|
-
const createProviderCreditNoteFromReturnBodyKeys: IShared.IRouteRequest<ICreateProviderCreditNoteFromReturnRequest> =
|
|
25
|
-
{
|
|
26
|
-
emission_date: joi.date().required(),
|
|
27
|
-
external_document_name: joi.string().required(),
|
|
28
|
-
observations: joi.string().allow(null, '').required(),
|
|
29
|
-
document_headers: joi
|
|
30
|
-
.array()
|
|
31
|
-
.items(
|
|
32
|
-
joi.object().keys(createProviderCreditNoteFromReturnDocumentHeadersBodyKeys).required(),
|
|
33
|
-
)
|
|
34
|
-
.required(),
|
|
35
|
-
acerto: joi.number().required(),
|
|
36
|
-
total: joi.number().positive().required(),
|
|
37
|
-
};
|
|
38
|
-
export const createProviderCreditNoteFromReturnBody = joi
|
|
39
|
-
.object()
|
|
40
|
-
.keys(createProviderCreditNoteFromReturnBodyKeys)
|
|
41
|
-
.messages(messages);
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import * as IShared from '../../../shared/interface';
|
|
2
|
-
|
|
3
|
-
export interface IFindProviderInvoiceRequest {
|
|
4
|
-
provider_id: string;
|
|
5
|
-
search_value?: string | null;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
export interface IFindProviderInvoiceResponse {
|
|
9
|
-
id: string; // invoice document_header_id
|
|
10
|
-
label: string; // invoice external_document_name
|
|
11
|
-
value: number; // invoice grand total
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
export interface IValueByVatTax {
|
|
15
|
-
taxPercentage: number;
|
|
16
|
-
total: number;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
export interface ICreateProviderFinancialCreditNoteRequest {
|
|
20
|
-
external_document_name: string;
|
|
21
|
-
provider_id: string;
|
|
22
|
-
parent_document_header_id: string | null;
|
|
23
|
-
emission_date: Date;
|
|
24
|
-
observations: string;
|
|
25
|
-
values: IValueByVatTax[];
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export interface IRepository {
|
|
29
|
-
findProviderInvoice(params: IFindProviderInvoiceRequest): Promise<IFindProviderInvoiceResponse[]>;
|
|
30
|
-
|
|
31
|
-
createProviderFinancialCreditNote(
|
|
32
|
-
params: ICreateProviderFinancialCreditNoteRequest,
|
|
33
|
-
): Promise<void>;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export type IController = IShared.IEntityWithUserToken<IRepository>;
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import joi from 'joi';
|
|
2
|
-
import { messages } from '../../../shared/messages';
|
|
3
|
-
import * as IShared from '../../../shared/interface';
|
|
4
|
-
import {
|
|
5
|
-
IFindProviderInvoiceRequest,
|
|
6
|
-
IValueByVatTax,
|
|
7
|
-
ICreateProviderFinancialCreditNoteRequest,
|
|
8
|
-
} from './interfaces';
|
|
9
|
-
|
|
10
|
-
const findProviderInvoiceQueryKeys: IShared.IRouteRequest<IFindProviderInvoiceRequest> = {
|
|
11
|
-
search_value: joi.string().allow('', null).optional(),
|
|
12
|
-
provider_id: joi.string().uuid().required(),
|
|
13
|
-
};
|
|
14
|
-
export const findProviderInvoiceQuery = joi
|
|
15
|
-
.object()
|
|
16
|
-
.keys(findProviderInvoiceQueryKeys)
|
|
17
|
-
.messages(messages);
|
|
18
|
-
|
|
19
|
-
const valueByVatTaxKeys: IShared.IRouteRequest<IValueByVatTax> = {
|
|
20
|
-
taxPercentage: joi.number().positive().allow(0).required(),
|
|
21
|
-
total: joi.number().positive().required(),
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
const createProviderFinancialCreditNoteBodyKeys: IShared.IRouteRequest<ICreateProviderFinancialCreditNoteRequest> =
|
|
25
|
-
{
|
|
26
|
-
emission_date: joi.date().required(),
|
|
27
|
-
external_document_name: joi.string().required(),
|
|
28
|
-
provider_id: joi.string().uuid().required(),
|
|
29
|
-
parent_document_header_id: joi.string().uuid().optional().allow(null, ''),
|
|
30
|
-
observations: joi.string().allow(null, '').required(),
|
|
31
|
-
values: joi
|
|
32
|
-
.array()
|
|
33
|
-
.unique('taxPercentage')
|
|
34
|
-
.items(joi.object().keys(valueByVatTaxKeys).required())
|
|
35
|
-
.required(),
|
|
36
|
-
};
|
|
37
|
-
export const createProviderFinancialCreditNoteBody = joi
|
|
38
|
-
.object()
|
|
39
|
-
.keys(createProviderFinancialCreditNoteBodyKeys)
|
|
40
|
-
.messages(messages);
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import * as IShared from '../../../shared/interface';
|
|
2
|
-
|
|
3
|
-
export interface IValueByVatTax {
|
|
4
|
-
taxPercentage: number;
|
|
5
|
-
total: number;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
export interface ICreateProviderServiceInvoiceRequest {
|
|
9
|
-
provider_id: string;
|
|
10
|
-
external_document_name: string;
|
|
11
|
-
emission_date: Date;
|
|
12
|
-
observations: string;
|
|
13
|
-
values: IValueByVatTax[];
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export interface IRepository {
|
|
17
|
-
createProviderServiceInvoice(params: ICreateProviderServiceInvoiceRequest): Promise<void>;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
export type IController = IShared.IEntityWithUserToken<IRepository>;
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import joi from 'joi';
|
|
2
|
-
import { messages } from '../../../shared/messages';
|
|
3
|
-
import * as IShared from '../../../shared/interface';
|
|
4
|
-
import { type ICreateProviderServiceInvoiceRequest, type IValueByVatTax } from './interfaces';
|
|
5
|
-
|
|
6
|
-
const valueByVatTaxKeys: IShared.IRouteRequest<IValueByVatTax> = {
|
|
7
|
-
taxPercentage: joi.number().positive().allow(0).required(),
|
|
8
|
-
total: joi.number().positive().required(),
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
const createProviderServiceInvoiceBodyKeys: IShared.IRouteRequest<ICreateProviderServiceInvoiceRequest> =
|
|
12
|
-
{
|
|
13
|
-
provider_id: joi.string().uuid().required(),
|
|
14
|
-
emission_date: joi.date().required(),
|
|
15
|
-
external_document_name: joi.string().required(),
|
|
16
|
-
observations: joi.string().allow(null, '').required(),
|
|
17
|
-
values: joi
|
|
18
|
-
.array()
|
|
19
|
-
.unique('taxPercentage')
|
|
20
|
-
.items(joi.object().keys(valueByVatTaxKeys).required())
|
|
21
|
-
.required(),
|
|
22
|
-
};
|
|
23
|
-
export const createProviderServiceInvoiceBody = joi
|
|
24
|
-
.object()
|
|
25
|
-
.keys(createProviderServiceInvoiceBodyKeys)
|
|
26
|
-
.messages(messages);
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
import * as IShared from '../../../shared/interface';
|
|
2
|
-
import { DocumentLineNote } from '../../../shared/entities/stock';
|
|
3
|
-
|
|
4
|
-
export const Route = 'purchase';
|
|
5
|
-
export const UpperName = 'Purchase';
|
|
6
|
-
export const LowerName = UpperName[0].toLowerCase() + UpperName.substring(1);
|
|
7
|
-
|
|
8
|
-
export type IUnpaidMaterialEntranceLineType = 'Por comprar' | 'Comprado' | 'Devolvido' | 'Prisão';
|
|
9
|
-
|
|
10
|
-
export interface IUnpaidMaterialEntranceLineDetails {
|
|
11
|
-
document_line_id: string;
|
|
12
|
-
quantity: number;
|
|
13
|
-
notes: DocumentLineNote[];
|
|
14
|
-
pc_name: string | null;
|
|
15
|
-
pc_id: string | null;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export interface IUnpaidMaterialEntranceLineResponse {
|
|
19
|
-
group: string;
|
|
20
|
-
document_line_ids: string[];
|
|
21
|
-
product_id: string;
|
|
22
|
-
reference: string;
|
|
23
|
-
designation: string;
|
|
24
|
-
multimedia_id: string | null;
|
|
25
|
-
provider_ref: string | null;
|
|
26
|
-
pf_id: string;
|
|
27
|
-
ef_name: string;
|
|
28
|
-
quantity: number;
|
|
29
|
-
discount: number;
|
|
30
|
-
provider_purchase_discount: number;
|
|
31
|
-
provider_tax_value: number;
|
|
32
|
-
client_tax_value: number;
|
|
33
|
-
global_discount: number;
|
|
34
|
-
preco_custo: number;
|
|
35
|
-
preco_venda: number;
|
|
36
|
-
margin: number | null;
|
|
37
|
-
total_without_tax: number;
|
|
38
|
-
total: number;
|
|
39
|
-
types: IUnpaidMaterialEntranceLineType[];
|
|
40
|
-
created_by: string;
|
|
41
|
-
created_at: Date;
|
|
42
|
-
details: IUnpaidMaterialEntranceLineDetails[];
|
|
43
|
-
consignacao: boolean;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
export interface IUnpaidMaterialEntranceItemResponse {
|
|
47
|
-
name: string;
|
|
48
|
-
lines: IUnpaidMaterialEntranceLineResponse[];
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
export interface IUnpaidMaterialEntranceResponse {
|
|
52
|
-
entradaMaterial: IUnpaidMaterialEntranceItemResponse[];
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
export interface IPurchaseFromProviderShipping {
|
|
56
|
-
product_id: string;
|
|
57
|
-
price: number;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
export interface IPurchaseFromProviderAdjustment {
|
|
61
|
-
value: number; // (pode ser negativo)
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
export interface IPurchaseFromProviderTaxRetention {
|
|
65
|
-
value: number;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
export interface IPurchaseFromProviderRequest {
|
|
69
|
-
invoice_number: string;
|
|
70
|
-
invoice_emission_date: Date;
|
|
71
|
-
invoice_due_date: Date;
|
|
72
|
-
document_line_ids: string[];
|
|
73
|
-
global_discount?: number | null;
|
|
74
|
-
shipping?: IPurchaseFromProviderShipping;
|
|
75
|
-
adjustment?: IPurchaseFromProviderAdjustment;
|
|
76
|
-
tax_retention?: IPurchaseFromProviderTaxRetention;
|
|
77
|
-
note?: string;
|
|
78
|
-
vat_self_accounting?: boolean;
|
|
79
|
-
purchase_without_invoice: boolean;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
export interface ISyncRequest {
|
|
83
|
-
provider_id: string;
|
|
84
|
-
document_line_ids: string[];
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
export interface ISyncLines {
|
|
88
|
-
document_line_id: string;
|
|
89
|
-
preco_custo: number;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
export interface ISyncResponse {
|
|
93
|
-
provider_discount: number;
|
|
94
|
-
provider_tax: number;
|
|
95
|
-
lines: ISyncLines[];
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
export interface IRepository {
|
|
99
|
-
findUnpaidMaterialEntrance(
|
|
100
|
-
selector: IShared.IFindByIdRequest,
|
|
101
|
-
): Promise<IUnpaidMaterialEntranceResponse>;
|
|
102
|
-
|
|
103
|
-
findUnpaidMaterialEntranceProviders(): Promise<IShared.IFindMinifiedResponse[]>;
|
|
104
|
-
|
|
105
|
-
purchaseFromProvider(data: IPurchaseFromProviderRequest): Promise<void>;
|
|
106
|
-
|
|
107
|
-
sync(data: ISyncRequest): Promise<ISyncResponse>;
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
export type IApi = IRepository;
|
|
111
|
-
|
|
112
|
-
export type IController = IShared.IEntityWithUserToken<IRepository>;
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import joi from 'joi';
|
|
2
|
-
import { messages } from '../../../shared/messages';
|
|
3
|
-
import * as IShared from '../../../shared/interface';
|
|
4
|
-
|
|
5
|
-
import {
|
|
6
|
-
IPurchaseFromProviderRequest,
|
|
7
|
-
ISyncRequest,
|
|
8
|
-
IPurchaseFromProviderShipping,
|
|
9
|
-
IPurchaseFromProviderAdjustment,
|
|
10
|
-
IPurchaseFromProviderTaxRetention,
|
|
11
|
-
} from './interfaces';
|
|
12
|
-
|
|
13
|
-
const purchaseFromProviderBodyKeys: IShared.IRouteRequest<IPurchaseFromProviderRequest> = {
|
|
14
|
-
invoice_number: joi.string().required(),
|
|
15
|
-
invoice_emission_date: joi.date().required(),
|
|
16
|
-
invoice_due_date: joi.date().required(),
|
|
17
|
-
document_line_ids: joi.array().items(joi.string().required()).required(),
|
|
18
|
-
global_discount: joi.number().min(0).max(100).allow(null).optional(),
|
|
19
|
-
shipping: joi
|
|
20
|
-
.object<IPurchaseFromProviderShipping>()
|
|
21
|
-
.keys({
|
|
22
|
-
product_id: joi.string().required(),
|
|
23
|
-
price: joi.number().allow(0).positive().required(),
|
|
24
|
-
})
|
|
25
|
-
.optional(),
|
|
26
|
-
adjustment: joi
|
|
27
|
-
.object<IPurchaseFromProviderAdjustment>()
|
|
28
|
-
.keys({
|
|
29
|
-
value: joi.number().required(),
|
|
30
|
-
})
|
|
31
|
-
.optional(),
|
|
32
|
-
tax_retention: joi
|
|
33
|
-
.object<IPurchaseFromProviderTaxRetention>()
|
|
34
|
-
.keys({
|
|
35
|
-
value: joi.number().allow(0).positive().required(),
|
|
36
|
-
})
|
|
37
|
-
.optional(),
|
|
38
|
-
note: joi.string().allow('', null).optional(),
|
|
39
|
-
vat_self_accounting: joi.boolean().optional(),
|
|
40
|
-
purchase_without_invoice: joi.boolean().required(),
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
export const purchaseFromProviderBody = joi
|
|
44
|
-
.object()
|
|
45
|
-
.keys(purchaseFromProviderBodyKeys)
|
|
46
|
-
.messages(messages);
|
|
47
|
-
|
|
48
|
-
export const syncBody = joi.object<ISyncRequest>().keys({
|
|
49
|
-
document_line_ids: joi.array().items(joi.string().uuid().required()).required(),
|
|
50
|
-
provider_id: joi.string().uuid().required(),
|
|
51
|
-
});
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { DocumentLineNote } from '../../../shared/entities/stock';
|
|
2
|
-
import * as IShared from '../../../shared/interface';
|
|
3
|
-
|
|
4
|
-
export const Route = 'quebra';
|
|
5
|
-
export const UpperName = 'Quebra';
|
|
6
|
-
export const LowerName = UpperName[0].toLowerCase() + UpperName.substring(1);
|
|
7
|
-
|
|
8
|
-
export interface IInventoryLossResponse {
|
|
9
|
-
document_line_id: string;
|
|
10
|
-
id_provider: number;
|
|
11
|
-
product_id: string;
|
|
12
|
-
product_thumbnail: string;
|
|
13
|
-
product_reference: string;
|
|
14
|
-
product_description: string;
|
|
15
|
-
quantity: number;
|
|
16
|
-
unit_of_measure_quantity_notation: string;
|
|
17
|
-
notes: DocumentLineNote[];
|
|
18
|
-
updated_by: string | null;
|
|
19
|
-
updated_at: Date;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export interface ICreateManyProducts {
|
|
23
|
-
id: string;
|
|
24
|
-
quantity: number;
|
|
25
|
-
note?: string;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export interface ICreateManyRequest {
|
|
29
|
-
products: ICreateManyProducts[];
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
export interface IDeleteInventoryLossRequest {
|
|
33
|
-
document_line_ids: string[];
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export interface IRepository {
|
|
37
|
-
findInventoryLosses(): Promise<IInventoryLossResponse[]>;
|
|
38
|
-
|
|
39
|
-
findInventoryLossesProviders(): Promise<IShared.IFindMinifiedResponse[]>;
|
|
40
|
-
|
|
41
|
-
createMany(data: ICreateManyRequest): Promise<string>;
|
|
42
|
-
|
|
43
|
-
deleteInventoryLosses(data: IDeleteInventoryLossRequest): Promise<void>;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
export type IController = IShared.IEntityWithUserToken<IRepository>;
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import joi from 'joi';
|
|
2
|
-
|
|
3
|
-
import * as IShared from '../../../shared/interface';
|
|
4
|
-
import { messages } from '../../../shared/messages';
|
|
5
|
-
import { ICreateManyProducts, ICreateManyRequest, IDeleteInventoryLossRequest } from './interfaces';
|
|
6
|
-
|
|
7
|
-
const productsCreateQuebraKeys: IShared.IRouteRequestWithStamps<ICreateManyProducts> = {
|
|
8
|
-
id: joi.string().uuid().required(),
|
|
9
|
-
quantity: joi.number().positive().required(),
|
|
10
|
-
note: joi.string().optional(),
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
const createQuebraKeys: IShared.IRouteRequestWithStamps<ICreateManyRequest> = {
|
|
14
|
-
products: joi.array().items(joi.object().keys(productsCreateQuebraKeys)).min(1).required(),
|
|
15
|
-
};
|
|
16
|
-
export const createQuebraBody = joi.object().keys(createQuebraKeys).messages(messages);
|
|
17
|
-
// inventoryLossRequest
|
|
18
|
-
const deleteInventoryLossBodyKeys: IShared.IRouteRequest<IDeleteInventoryLossRequest> = {
|
|
19
|
-
document_line_ids: joi.array().items(joi.string().uuid().required()).required(),
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
export const deleteInventoryLossBody = joi
|
|
23
|
-
.object()
|
|
24
|
-
.keys(deleteInventoryLossBodyKeys)
|
|
25
|
-
.messages(messages);
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { DocumentLineNote } from '../../../shared/entities/stock';
|
|
2
|
-
import * as IShared from '../../../shared/interface';
|
|
3
|
-
|
|
4
|
-
export const Route = 'return_to_provider';
|
|
5
|
-
export const UpperName = 'ReturnToProvider';
|
|
6
|
-
export const LowerName = UpperName[0].toLowerCase() + UpperName.substring(1);
|
|
7
|
-
|
|
8
|
-
export interface IFindLinesToReturnResponse {
|
|
9
|
-
document_line_assoc_id: string;
|
|
10
|
-
df_name: string;
|
|
11
|
-
pdf_link: string | null;
|
|
12
|
-
document_line_id: string;
|
|
13
|
-
provider_id: string;
|
|
14
|
-
edh_id: string;
|
|
15
|
-
reference: string;
|
|
16
|
-
designation: string;
|
|
17
|
-
thumbnail: string | null;
|
|
18
|
-
product_id: string;
|
|
19
|
-
quantity: number;
|
|
20
|
-
emails_sent: number;
|
|
21
|
-
already_picked_up: boolean;
|
|
22
|
-
return_to_provider_without_credit_note: boolean;
|
|
23
|
-
notes: DocumentLineNote[];
|
|
24
|
-
updated_by: string | null;
|
|
25
|
-
updated_at: Date;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export const checkLinesToReturnOptions = [
|
|
29
|
-
'Levantar',
|
|
30
|
-
'Cancelar Levantamento',
|
|
31
|
-
'Enviar',
|
|
32
|
-
'Cancelar Envio',
|
|
33
|
-
'Quebrar',
|
|
34
|
-
'Cancelar Devolução',
|
|
35
|
-
] as const;
|
|
36
|
-
|
|
37
|
-
export type ICheckLinesToReturnOptions = (typeof checkLinesToReturnOptions)[number];
|
|
38
|
-
|
|
39
|
-
export interface ICheckLinesToReturnLinesRequest {
|
|
40
|
-
document_line_assoc_id: string;
|
|
41
|
-
document_line_id: string;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
export interface ICheckLinesToReturnRequest {
|
|
45
|
-
option: ICheckLinesToReturnOptions;
|
|
46
|
-
lines: ICheckLinesToReturnLinesRequest[];
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
export interface IRepository {
|
|
50
|
-
checkLinesToReturn(params: ICheckLinesToReturnRequest): Promise<void>;
|
|
51
|
-
|
|
52
|
-
findLinesToReturn(
|
|
53
|
-
params: IShared.IFindOptionalByOwnerIdRequest,
|
|
54
|
-
): Promise<IFindLinesToReturnResponse[]>;
|
|
55
|
-
|
|
56
|
-
findLinesToReturnProviders(): Promise<IShared.IFindMinifiedResponse[]>;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
export type IController = IShared.IEntityWithUserToken<IRepository>;
|