rapida-partner 1.7.6 → 1.8.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/rapidaObject.json CHANGED
@@ -1,3456 +1,726 @@
1
- {
2
- "id": "simplea",
3
- "title": "Simplea",
4
- "description": "Simplea - Logística para importação e exportação",
5
- "flow": "permeson",
6
- "businessPlan": {
7
- "businessValue": "",
8
- "targetMarket": "",
9
- "benchmarkings": "",
10
- "legalIssues": "",
11
- "ethicalIssues": "",
12
- "afterSales": ""
13
- },
14
- "frontend": { "framework": "react", "uiKit": "material" },
15
- "backend": {
16
- "framework": "dotnet",
17
- "jwtSecret": "",
18
- "database": {
19
- "provider": "sqlserver",
20
- "credentials": {
21
- "databaseName": "dev-simplea",
22
- "username": "macroex-adm",
23
- "password": "x4Fs1^T7%qNpGW$mjN$#",
24
- "host": "tcp:dev-macroex-mssql-srv.database.windows.net",
25
- "port": 1433
26
- },
27
- "connectionString": "Server=tcp:dev-macroex-mssql-srv.database.windows.net,1433;Initial Catalog=dev-simplea;Persist Security Info=False;User ID=macroex-adm;Password=x4Fs1^T7%qNpGW$mjN$#;MultipleActiveResultSets=True;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;"
1
+ {
2
+ "id": "movieBackoffice",
3
+ "title": "Movie Backoffice",
4
+ "description": "Sistema de gerenciamento para filmes e personagens.",
5
+ "flow": "permeson",
6
+ "businessPlan": {
7
+ "businessValue": "Gerenciar e otimizar as operações do Movie.",
8
+ "targetMarket": "Empresas que utilizam o Movie para gerenciar sugestões e feedbacks.",
9
+ "benchmarkings": "Análise de sistemas de gerenciamento de feedbacks.",
10
+ "legalIssues": "Conformidade com leis de proteção de dados.",
11
+ "ethicalIssues": "Garantir a privacidade dos usuários.",
12
+ "afterSales": "Suporte contínuo e atualizações regulares.",
13
+ "monetization": "Assinaturas mensais para acesso ao sistema."
28
14
  },
29
- "storage": {
30
- "provider": "azure",
31
- "credentials": {
32
- "clientEmail": "devsimpleastg",
33
- "privateKey": "DefaultEndpointsProtocol=https;AccountName=devsimpleastg;AccountKey=qJkTWPOKwEX70m6vZhaNGegsvR5/uxPMRjBcXf0eeXdGluiOkwT7XtdxHeTM0LSw1RZaYXrcQo94+ASthIxnsw==;EndpointSuffix=core.windows.net",
34
- "projectId": "simplea-storage"
15
+ "frontend": { "framework": "svelte", "uiKit": "flowbite" },
16
+ "backend": {
17
+ "framework": "nest",
18
+ "jwtSecret": "Kunl4t3kw1llN3v3rD13",
19
+ "database": {
20
+ "provider": "mongodb",
21
+ "connectionString": "mongodb+srv://kunlatek:Kunlatek751@cluster0.b0pfr.mongodb.net/movie-v1",
22
+ "credentials": {
23
+ "databaseName": "movie-v1",
24
+ "username": "kunlatek",
25
+ "password": "Kunlatek751",
26
+ "host": "cluster0.b0pfr.mongodb.net"
27
+ }
35
28
  },
36
- "publicBucketName": "simplea-public-files",
37
- "privateBucketName": "simplea-private-files"
38
- }
39
- },
40
- "modules": [
41
- {
42
- "title": "Clientes",
43
- "id": "clienteModule",
44
- "icon": "user",
45
- "components": [
46
- {
47
- "componentType": "form",
48
- "id": "clienteForm",
49
- "contracts": [
50
- {
51
- "id": "",
52
- "endpoint": "/clientes",
53
- "actions": ["create", "update", "delete", "get", "getById"]
54
- }
55
- ],
56
- "title": "Gerenciamento de clientes",
57
- "icon": "user",
58
- "elements": [
59
- {
60
- "type": "tab",
61
- "id": "clienteTab",
62
- "tabs": [
63
- {
64
- "title": "Dados básicos",
65
- "id": "clienteTabMain",
66
- "elements": [
29
+ "storage": {
30
+ "provider": "gcs",
31
+ "credentials": {
32
+ "clientEmail": "rapida-personal@rapida-personal-projects.iam.gserviceaccount.com",
33
+ "privateKey": "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDCDEQRUfKKxYUj\nVorX+aiEHhPRrrcNHVw40qq517wP7IgIp2UlA5uf0rV2cdn1njA9RMQxp6l7Qt+0\nBZg1JZM8l9Uv1SckRlkKST4k2B3MDOEl1riAPxIE/jBCUT9l2DCbir0Nu+CqGhGD\nUXOMpF0XWYL9GIBRo8Paf//yU0b86VBDfQGgnFkMKFq3bVDkPd8hQTBgTFT5F1Rh\nDcoUpAp/n3SYxkAK1V7Je+fnChF1DQPj8Nd5CLm4DsCM1B+HtaegsaE1ulXwhi1J\nlIFFGv49g0f2qOs3hytTPt0d8UpxFd9/Oq0tmcjuzK4bYzJdVZZPf+4xflHz+6R8\n2o7grTeDAgMBAAECggEABHdsz6s/tnMCdARHcN41w0i/8wke/IXK/CHZPSrakNFE\ndlKIEPiKyfx7Ic1QE4e/G4HsNCpkS8qHxKiGTt7dCz2BcjbpTjvyS7rQ298/nFVF\nj23oVEdfXk8NhFFDcNAvmjzwyhKjgrbT5V5oFvonjGSKj9HTDk4DMZHVrdm93g9k\nZ9XJBVeLh14/rkZLMDZ9DVjUMiQ6xElMH3IQD4MwEcul9eqM8bs2APgZlzzfO76m\nAuq20l4JqOcJJl8wzC7z12eNDNJrQNh2sHsT9zV5PabfNoQhnU6fDvKr0PG0PGRR\nS5PTDeiMY47rJVPgwxthSke3abtdgA9SNie8OqZl6QKBgQD+yFT+ndFYKvHg2WNi\ns0jK0QqFQB84LQtOX2YhQ0137mtSv0z7wO90e28dfUqsjax4DxPMp+AW0cC3SBEv\n2T8/rJrgzGucPt4Jzml5HYl2NgCkNAtHIJ1vtXJdX5d3WmYhH7cUTPmV6nMS8OlF\nheSyfudCiOo89phQf0pI6lhQKwKBgQDC+aOU2cxMVA5VH0txX0G9tPQjBvzY09ev\nVLGrxlmdAcQVXYCWdoESEfTv3E4JPklAz5B2/XnALxM5ewJgjoP6buOCJrQcgJNC\nSsG9Ll3zF4c+opFmaYTzcAY9HWHa4Pc+GAxFrrcPGzVBLjSrl7FPdykkPiBNxNJa\nnOzzrL4yCQKBgQC7b/pHjycx6/YiawuY0zjcLMnGmhPdqhXFRJ3IHtFhR/+g0qf6\nFkiTszNdyI0lQNz/PmhciaxsXUegDt7GCtdjKsKOWxVXz1BeeoJR3g8A7l2ub7NU\nUoRAaIaIdwjhf5nfCIwR3UdIqUCbUKzsvsIvJvlPk5Zv3yLTJbIqzmzGHQKBgBiQ\nnUSGwE+pk3i0DaxGBSFiqBO1sKuc3SLQ9+WdgvLeIxdSBX5vhcmCC6sgxZAykcYh\noKDtRKarB7AJSH5j1kr6J53hRHYG2QbUJl6wddPH1hlVIB6YEtEc/xw6FHcgOuZO\n31T0M0oq8mW47Zfk78kESWGwlh9WOe6CsPPugrQJAoGBAP3o8DqH1Pb7vlowsz78\n8fsCuydEJgsPSwHHqBveeUHBQLGSiGIIKRXWR1a13mWXQTqQkROZCwvVCMX6FHZZ\nKv3rzgsTkaaoqM0RVLcQSSDoyu2yP/JJv+VYsvMf2S3dUkDAeYDZFizPeFF42t92\n+MSId41OkBvJ/JvqsBWlWFYK\n-----END PRIVATE KEY-----\n",
34
+ "projectId": "rapida-personal-projects"
35
+ },
36
+ "publicBucketName": "rapida-public-files",
37
+ "privateBucketName": "rapida-private-files"
38
+ },
39
+ "logging": {
40
+ "discordWebhookUrl": "https://discord.com/api/webhooks/1370095507959054429/Ay8pIM-sinbjsLMAAWGrRDFT-oyBD3xu7yB2Ke0Bx6RxpKN882taB4_tkD2xsdk8MirZ"
41
+ },
42
+ "email": {
43
+ "smtpUser": "noreply.rapida@gmail.com",
44
+ "smtpPass": "ekgwxlazvjjllfxf",
45
+ "smtpFrom": "noreply@kunlatek.com"
46
+ },
47
+ "baseUrl": "http://localhost:5173"
48
+ },
49
+ "modules": [
50
+ {
51
+ "id": "movieModule",
52
+ "title": "Episódio",
53
+ "icon": "movie",
54
+ "components": [
55
+ {
56
+ "title": "Gerenciar filme",
57
+ "userStory": "Como um usuário autorizado, eu quero usar o formulário de gerenciamento de filmes para cadastrar e editar filmes, incluindo a foto, o nome, a descrição, a data de lançamento, a pontuação no IMDb e os gêneros associados. Quero também ter a opção de adicionar e gerenciar episódios, incluindo seus títulos, descrições, datas de lançamento e personagens relacionados. Isso me permite manter um registro completo e detalhado do conteúdo audiovisual no sistema.",
58
+ "componentType": "form",
59
+ "contracts": [
60
+ {
61
+ "id": "movies",
62
+ "endpoint": "/movies",
63
+ "actions": ["create", "update", "getById", "get", "delete"],
64
+ "request": {
65
+ "entity": "Movie",
66
+ "description": "Represents a movie or TV series in the system.",
67
+ "fields": [
67
68
  {
68
- "type": "inheritance",
69
- "form": {
70
- "id": "clienteDadosBasicosForm",
71
- "title": "Gerenciamento de dados basicos do cliente",
72
- "componentType": "form",
73
- "contracts": [
74
- {
75
- "id": "clienteDadosBasicos",
76
- "endpoint": "/clientes",
77
- "actions": [
78
- "create",
79
- "delete",
80
- "get",
81
- "getById",
82
- "update"
83
- ],
84
- "request": {
85
- "entity": "CLIENTE",
86
- "fields": [
87
- {
88
- "name": "TIPO_PESSOA",
89
- "dataType": "integer",
90
- "enum": [1, 2]
91
- },
92
- { "name": "MATRIZ", "dataType": "integer" },
93
- {
94
- "name": "NUMERO_CADASTRO",
95
- "dataType": "nvarchar"
96
- },
97
- {
98
- "name": "NUMERO_CADASTRO_PROTHEUS",
99
- "dataType": "nvarchar"
100
- },
101
- { "name": "CPF_CNPJ", "dataType": "nvarchar" },
102
- {
103
- "name": "NOME_RAZAO_SOCIAL",
104
- "dataType": "nvarchar"
105
- },
106
- {
107
- "name": "NOME_FANTASIA",
108
- "dataType": "nvarchar"
109
- },
110
- {
111
- "name": "CONTRIBUINTE_SUBSTITUTO",
112
- "dataType": "nvarchar"
113
- },
114
- {
115
- "name": "SITUACAO_INSCRICAO_ESTADUAL",
116
- "dataType": "integer",
117
- "enum": [1, 2, 3, 4, 5, 6]
118
- },
119
- {
120
- "name": "INSCRICAO_ESTADUAL",
121
- "dataType": "nvarchar"
122
- },
123
- {
124
- "name": "BANDEIRA",
125
- "dataType": "integer",
126
- "enum": [1, 2, 3, 4]
127
- },
128
- {
129
- "name": "CENTRO_RESULTADOS",
130
- "dataType": "integer",
131
- "enum": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
132
- },
133
- {
134
- "name": "COMERCIAL_RESPONSAVEL_ID",
135
- "dataType": "uniqueidentifier",
136
- "foreignKey": {
137
- "entity": "COLABORADOR",
138
- "connectionAttribute": "ID",
139
- "relationship": "one-to-one"
140
- }
141
- },
142
- {
143
- "name": "GRAU_PARTICULARIDADE",
144
- "dataType": "integer",
145
- "enum": [0, 1, 2, 3, 4, 5]
146
- },
147
- {
148
- "name": "CODIGO_DUIMP",
149
- "dataType": "nvarchar"
150
- },
151
- {
152
- "name": "CODIGO_TIN",
153
- "dataType": "nvarchar"
154
- },
155
- {
156
- "name": "CODIGO_CNAE",
157
- "dataType": "nvarchar"
158
- },
159
- {
160
- "name": "DESCRICAO_CNAE",
161
- "dataType": "nvarchar"
162
- },
163
- {
164
- "name": "REGIME_FISCAL",
165
- "dataType": "integer",
166
- "enum": [1, 2, 3]
167
- },
168
- {
169
- "name": "CONTRIBUINTE_ICMS",
170
- "dataType": "boolean"
171
- },
172
- {
173
- "name": "BANCO_ID",
174
- "dataType": "uniqueidentifier",
175
- "foreignKey": {
176
- "entity": "BANCO",
177
- "connectionAttribute": "ID",
178
- "relationship": "one-to-one"
179
- }
180
- },
181
- { "name": "AGENCIA", "dataType": "nvarchar" },
182
- { "name": "CONTA", "dataType": "nvarchar" },
183
- { "name": "CHAVE_PIX", "dataType": "nvarchar" }
184
- ]
185
- }
186
- },
187
- {
188
- "id": "clienteUnidadeDeNegocio",
189
- "endpoint": "/clientes/{clienteId}/unidades-negocios",
190
- "actions": ["create", "update", "get"],
191
- "request": {
192
- "entity": "CLIENTE_UNIDADE_NEGOCIO",
193
- "fields": [
194
- {
195
- "name": "UNIDADE_NEGOCIO",
196
- "dataType": "uniqueidentifier",
197
- "isRequired": true,
198
- "foreignKey": {
199
- "entity": "Empresa",
200
- "connectionAttribute": "ID",
201
- "relationship": "many-to-many"
202
- }
203
- }
204
- ]
205
- }
206
- },
207
- {
208
- "id": "clienteTipos",
209
- "endpoint": "/clientes/{clienteId}/tipos",
210
- "actions": ["create", "update", "get"],
211
- "request": {
212
- "entity": "CLIENTE_TIPO",
213
- "fields": [
214
- {
215
- "name": "TIPO",
216
- "dataType": "uniqueidentifier",
217
- "isRequired": true,
218
- "enum": [1, 2, 3],
219
- "foreignKey": {
220
- "entity": "CLIENTE_TIPO",
221
- "connectionAttribute": "ID",
222
- "relationship": "many-to-many"
223
- }
224
- }
225
- ]
226
- }
227
- }
228
- ],
229
- "elements": [
230
- {
231
- "type": "select",
232
- "dataType": "integer",
233
- "label": "Tipo de Cliente",
234
- "name": "TIPO_CLIENTE",
235
- "isRequired": true,
236
- "isMultiple": true,
237
- "options": [
238
- { "label": "DISTRIBUIDOR", "value": 1 },
239
- { "label": "IMPORTADOR", "value": 2 },
240
- { "label": "PROSPECÇÃO", "value": 3 }
241
- ]
242
- },
243
- {
244
- "type": "select",
245
- "dataType": "integer",
246
- "label": "Pessoa ou Empresa",
247
- "name": "TIPO_PESSOA",
248
- "isRequired": true,
249
- "options": [
250
- { "label": "FISICA", "value": 1 },
251
- { "label": "JURIDICA", "value": 0 }
252
- ]
253
- },
254
- {
255
- "type": "select",
256
- "dataType": "integer",
257
- "label": "Matriz",
258
- "name": "MATRIZ",
259
- "isRequired": true,
260
- "options": [
261
- { "label": "SIM", "value": 1 },
262
- { "label": "NÃO", "value": 0 }
263
- ],
264
- "conditions": [
265
- {
266
- "type": "form",
267
- "elements": [
268
- {
269
- "key": "ePessoa",
270
- "value": 0,
271
- "comparisonOperator": "==="
272
- }
273
- ]
274
- }
275
- ]
276
- },
277
- {
278
- "type": "input",
279
- "dataType": "nvarchar",
280
- "label": "Número de Cadastro",
281
- "name": "NUMERO_CADASTRO",
282
- "isDisabled": true,
283
- "tooltip": "Corresponde ao ID do cliente na base de dados"
284
- },
285
- {
286
- "type": "autocomplete",
287
- "dataType": "nvarchar",
288
- "label": "Número de Cadastro Protheus",
289
- "name": "NUMERO_CADASTRO_PROTHEUS",
290
- "isDisabled": true,
291
- "optionsApi": {
292
- "endpoint": "/api/v1/cliente",
293
- "paramType": "query",
294
- "paramsToFilter": ["cpfCnpj", "nome"],
295
- "labelField": ["numeroCadastro", "nome"],
296
- "valueField": "_id",
297
- "relatedEntity": "CLIENTE",
298
- "filtersFromOtherFormFields": [
299
- {
300
- "formFieldName": "cpfCnpj",
301
- "filterPropertyName": "cpfCnpj"
302
- }
303
- ]
304
- },
305
- "conditions": [
306
- {
307
- "type": "form",
308
- "elements": [
309
- {
310
- "key": "PROSPECCAO",
311
- "value": 0,
312
- "comparisonOperator": "==="
313
- }
314
- ]
315
- }
316
- ]
317
- },
318
- {
319
- "type": "input",
320
- "dataType": "nvarchar",
321
- "label": "CPF/CNPJ",
322
- "name": "CPF_CNPJ",
323
- "isRequired": true,
324
- "isUnique": true,
325
- "validators": ["cnpj", "cpf"],
326
- "businessRules": [
327
- {
328
- "rule": {
329
- "description": "SE o campo TIPO_PESSOA = 0 ENTAO realizar consulta de CNPJ na API externa"
330
- }
331
- },
332
- {
333
- "rule": {
334
- "description": "SE o campo TIPO_PESSOA = 0 E o campo MATRIZ = 0 ENTAO o campo CPF_CNPJ deve ser validado se já existe matriz."
335
- }
336
- }
337
- ],
338
- "apiRequest": {
339
- "endpoint": "/consumo-itegracao/consultar-cnpj",
340
- "paramType": "query",
341
- "hasAuthentication": true,
342
- "filtersFromOtherFormFields": [
343
- {
344
- "formFieldName": "CPF_CNPJ",
345
- "filterPropertyName": "cpfCnpj"
346
- }
347
- ],
348
- "formFieldsFilledByApiResponse": [
349
- {
350
- "formFieldName": "NOME_RAZAO_SOCIAL",
351
- "propertiesFromApiToFillFormField": [
352
- "razaoSocial"
353
- ]
354
- },
355
- {
356
- "formFieldName": "NOME_FANTASIA",
357
- "propertiesFromApiToFillFormField": [
358
- "nomeFantasia"
359
- ]
360
- },
361
- {
362
- "formFieldName": "INSCRICAO_ESTADUAL",
363
- "propertiesFromApiToFillFormField": [
364
- "inscricaoEstadual"
365
- ]
366
- },
367
- {
368
- "formFieldName": "SITUACAO_INSCRICAO_ESTADUAL",
369
- "propertiesFromApiToFillFormField": [
370
- "situacaoInscricaoEstadual"
371
- ]
372
- },
373
- {
374
- "formFieldName": "CODIGO_CNAE",
375
- "propertiesFromApiToFillFormField": [
376
- "cnaePrincipal.codigo"
377
- ]
378
- },
379
- {
380
- "formFieldName": "DESCRICAO_CNAE",
381
- "propertiesFromApiToFillFormField": [
382
- "cnaePrincipal.descricao"
383
- ]
384
- }
385
- ]
386
- }
387
- },
388
- {
389
- "type": "input",
390
- "dataType": "nvarchar",
391
- "label": "Nome/Razão Social",
392
- "name": "NOME_RAZAO_SOCIAL",
393
- "isRequired": true
394
- },
395
- {
396
- "type": "input",
397
- "dataType": "nvarchar",
398
- "label": "Nome Fantasia",
399
- "name": "NOME_FANTASIA",
400
- "conditions": [
401
- {
402
- "type": "form",
403
- "elements": [
404
- {
405
- "key": "TIPO_PESSOA",
406
- "value": 0,
407
- "comparisonOperator": "==="
408
- }
409
- ]
410
- }
411
- ]
412
- },
413
- {
414
- "type": "input",
415
- "dataType": "nvarchar",
416
- "label": "Contribuinte Substituto",
417
- "name": "CONTRIBUINTE_SUBSTITUTO",
418
- "conditions": [
419
- {
420
- "type": "form",
421
- "elements": [
422
- {
423
- "key": "TIPO_PESSOA",
424
- "value": 0,
425
- "comparisonOperator": "==="
426
- }
427
- ]
428
- }
429
- ]
430
- },
431
- {
432
- "type": "select",
433
- "dataType": "integer",
434
- "label": "Situação da Inscrição Estadual",
435
- "name": "SITUACAO_INSCRICAO_ESTADUAL",
436
- "options": [
437
- { "label": "ATIVA", "value": 1 },
438
- { "label": "INATIVA", "value": 2 },
439
- { "label": "ISENTO", "value": 3 },
440
- { "label": "NÃO HABILITADO", "value": 4 },
441
- { "label": "SUSPENSA", "value": 5 },
442
- { "label": "BAIXADA", "value": 6 }
443
- ],
444
- "conditions": [
445
- {
446
- "type": "form",
447
- "elements": [
448
- {
449
- "key": "ePessoa",
450
- "value": 0,
451
- "comparisonOperator": "==="
452
- }
453
- ]
454
- }
455
- ]
456
- },
457
- {
458
- "type": "input",
459
- "dataType": "nvarchar",
460
- "label": "Inscrição Estadual",
461
- "name": "INSCRICAO_ESTADUAL",
462
- "conditions": [
463
- {
464
- "type": "form",
465
- "elements": [
466
- {
467
- "key": "ePessoa",
468
- "value": 0,
469
- "comparisonOperator": "==="
470
- }
471
- ]
472
- }
473
- ]
474
- },
475
- {
476
- "type": "select",
477
- "dataType": "integer",
478
- "label": "Bandeira",
479
- "name": "BANDEIRA",
480
- "options": [
481
- { "label": "OURO", "value": 1 },
482
- { "label": "PRATA", "value": 2 },
483
- { "label": "BRONZE", "value": 3 },
484
- { "label": "SUSPENSO", "value": 4 }
485
- ]
486
- },
487
- {
488
- "type": "select",
489
- "dataType": "integer",
490
- "label": "Centro de Resultados",
491
- "name": "CENTRO_RESULTADOS",
492
- "options": [
493
- { "label": "DISTRIBUIÇÃO 1", "value": 1 },
494
- { "label": "DISTRIBUIÇÃO 2", "value": 2 },
495
- { "label": "DISTRIBUIÇÃO 3", "value": 3 },
496
- { "label": "ENC. PNEUS", "value": 4 },
497
- { "label": "TERCEIRIZADO", "value": 5 },
498
- { "label": "CONTA E ORDEM", "value": 6 },
499
- { "label": "ENCOMENDA", "value": 7 },
500
- { "label": "EXPORT", "value": 8 },
501
- { "label": "DIST. PNEUS", "value": 9 },
502
- { "label": "DIST. QUIM./OUTROS", "value": 10 }
503
- ]
504
- },
505
- {
506
- "type": "autocomplete",
507
- "dataType": "uniqueidentifier",
508
- "label": "Unidade de Negócio",
509
- "name": "UNIDADE_NEGOCIO_ID",
510
- "isMultiple": true,
511
- "optionsApi": {
512
- "endpoint": "/empresas",
513
- "labelField": ["nome"],
514
- "valueField": "ID",
515
- "paramsToFilter": ["nome"],
516
- "paramType": "query",
517
- "relatedEntity": "EMPRESA"
518
- }
519
- },
520
- {
521
- "type": "autocomplete",
522
- "dataType": "uniqueidentifier",
523
- "label": "Comercial Responsável",
524
- "name": "COMERCIAL_RESPONSAVEL_ID",
525
- "optionsApi": {
526
- "endpoint": "/colaboradores-por-setor",
527
- "labelField": ["nome", "cargo"],
528
- "valueField": "_id",
529
- "paramsToFilter": ["nome", "setor"],
530
- "paramType": "query",
531
- "relatedEntity": "COLABORADOR"
532
- }
533
- },
534
- {
535
- "type": "select",
536
- "dataType": "integer",
537
- "label": "Grau de Particularidade",
538
- "name": "GRAU_PARTICULARIDADE",
539
- "options": [
540
- { "label": "0", "value": 0 },
541
- { "label": "1", "value": 1 },
542
- { "label": "2", "value": 2 },
543
- { "label": "3", "value": 3 },
544
- { "label": "4", "value": 4 },
545
- { "label": "5", "value": 5 }
546
- ]
547
- },
548
- {
549
- "type": "input",
550
- "dataType": "nvarchar",
551
- "label": "Código DUIMP",
552
- "name": "CODIGO_DUIMP"
553
- },
554
- {
555
- "type": "input",
556
- "dataType": "nvarchar",
557
- "label": "Código TIN",
558
- "name": "CODIGO_TIN"
559
- },
560
- {
561
- "type": "input",
562
- "dataType": "nvarchar",
563
- "label": "Código CNAE Principal",
564
- "name": "CODIGO_CNAE",
565
- "conditions": [
566
- {
567
- "type": "form",
568
- "elements": [
569
- {
570
- "key": "ePessoa",
571
- "value": 0,
572
- "comparisonOperator": "==="
573
- }
574
- ]
575
- }
576
- ]
577
- },
578
- {
579
- "type": "input",
580
- "dataType": "nvarchar",
581
- "label": "Descrição CNAE Principal",
582
- "name": "DESCRICAO_CNAE",
583
- "conditions": [
584
- {
585
- "type": "form",
586
- "elements": [
587
- {
588
- "key": "ePessoa",
589
- "value": 0,
590
- "comparisonOperator": "==="
591
- }
592
- ]
593
- }
594
- ]
595
- },
596
- {
597
- "type": "select",
598
- "dataType": "integer",
599
- "label": "Regime Fiscal",
600
- "name": "REGIME_FISCAL",
601
- "options": [
602
- { "label": "SIMPLES NACIONAL", "value": 1 },
603
- { "label": "LUCRO PRESUMIDO", "value": 2 },
604
- { "label": "LUCRO REAL", "value": 3 }
605
- ],
606
- "conditions": [
607
- {
608
- "type": "form",
609
- "elements": [
610
- {
611
- "key": "ePessoa",
612
- "value": 0,
613
- "comparisonOperator": "==="
614
- }
615
- ]
616
- }
617
- ]
618
- },
619
- {
620
- "type": "select",
621
- "dataType": "integer",
622
- "label": "Contribuinte de ICMS",
623
- "name": "CONTRIBUINTE_ICMS",
624
- "isRequired": true,
625
- "options": [
626
- { "label": "SIM", "value": 1 },
627
- { "label": "NÃO", "value": 0, "isSelected": true }
628
- ],
629
- "conditions": [
630
- {
631
- "type": "form",
632
- "elements": [
633
- {
634
- "key": "ePessoa",
635
- "value": 0,
636
- "comparisonOperator": "==="
637
- }
638
- ]
639
- }
640
- ]
641
- },
642
- {
643
- "type": "fieldset",
644
- "title": "Informações bancárias",
645
- "id": "informacoesBancariasFieldset",
646
- "elements": [
647
- {
648
- "type": "autocomplete",
649
- "dataType": "nvarchar",
650
- "label": "Banco",
651
- "name": "BANCO_ID",
652
- "optionsApi": {
653
- "endpoint": "/bancos",
654
- "labelField": ["nome", "codigo"],
655
- "valueField": "_id",
656
- "paramsToFilter": ["nome", "codigo"],
657
- "paramType": "query",
658
- "relatedEntity": "BANCO"
659
- }
660
- },
661
- {
662
- "type": "input",
663
- "dataType": "nvarchar",
664
- "label": "Agência",
665
- "name": "AGENCIA",
666
- "conditions": [
667
- {
668
- "type": "form",
669
- "elements": [
670
- {
671
- "key": "BANCO_ID",
672
- "value": { "$ne": null },
673
- "comparisonOperator": "!=="
674
- }
675
- ]
676
- }
677
- ]
678
- },
679
- {
680
- "type": "input",
681
- "dataType": "nvarchar",
682
- "label": "Conta",
683
- "name": "CONTA",
684
- "conditions": [
685
- {
686
- "type": "form",
687
- "elements": [
688
- {
689
- "key": "BANCO_ID",
690
- "value": { "$ne": null },
691
- "comparisonOperator": "!=="
692
- }
693
- ]
694
- }
695
- ]
696
- },
697
- {
698
- "type": "input",
699
- "dataType": "nvarchar",
700
- "label": "Chave PIX",
701
- "name": "CHAVE_PIX",
702
- "conditions": [
703
- {
704
- "type": "form",
705
- "elements": [
706
- {
707
- "key": "BANCO_ID",
708
- "value": { "$ne": null },
709
- "comparisonOperator": "!=="
710
- }
711
- ]
712
- }
713
- ]
714
- }
715
- ]
716
- }
717
- ]
718
- }
719
- }
720
- ]
721
- },
722
- {
723
- "title": "Endereços",
724
- "id": "clienteTabEnderecos",
725
- "elements": [
69
+ "name": "_id",
70
+ "dataType": "uniqueidentifier",
71
+ "isRequired": true,
72
+ "isPrimaryKey": true
73
+ },
726
74
  {
727
- "type": "inheritance",
728
- "form": {
729
- "id": "clienteEnderecoForm",
730
- "title": "Gerenciamento de Enderecos do cliente",
731
- "componentType": "form",
732
- "contracts": [
733
- {
734
- "id": "clienteEndereco",
735
- "endpoint": "/clientes/{clienteId}/enderecos",
736
- "actions": [
737
- "create",
738
- "delete",
739
- "get",
740
- "getById",
741
- "update"
742
- ],
743
- "request": {
744
- "entity": "CLIENTE_ENDERECO",
745
- "fields": [
746
- {
747
- "name": "TIPO",
748
- "dataType": "integer",
749
- "isRequired": true,
750
- "enum": [1, 2, 3, 4, 5, 6, 7, 8]
751
- },
752
- {
753
- "name": "CEP",
754
- "dataType": "nvarchar",
755
- "isRequired": true
756
- },
757
- {
758
- "name": "CIDADE_ID",
759
- "dataType": "uniqueidentifier",
760
- "isRequired": true,
761
- "foreignKey": {
762
- "entity": "Cidade",
763
- "connectionAttribute": "Id",
764
- "relationship": "one-to-many"
765
- }
766
- },
767
- {
768
- "name": "LOGRADOURO",
769
- "dataType": "nvarchar",
770
- "isRequired": true
771
- },
772
- {
773
- "name": "NUMERO",
774
- "dataType": "nvarchar",
775
- "isRequired": true
776
- },
777
- {
778
- "name": "BAIRRO",
779
- "dataType": "nvarchar",
780
- "isRequired": true
781
- },
782
- {
783
- "name": "COMPLEMENTO",
784
- "dataType": "longtext"
785
- },
786
- {
787
- "name": "PRINCIPAL",
788
- "dataType": "boolean",
789
- "isRequired": true
790
- }
791
- ]
792
- }
793
- }
794
- ],
795
- "elements": [
796
- {
797
- "title": "Endereços",
798
- "id": "enderecos",
799
- "type": "array",
800
- "name": "ENDERECO",
801
- "businessRules": [
802
- {
803
- "rule": {
804
- "description": "SE inserir um endereço com mesmo LOGRADOURO, NUMERO E CEP ENTAO não deve permitir a inserção duplicada"
805
- }
806
- },
807
- {
808
- "rule": {
809
- "description": "SE inserir um endereço com PRINCIPAL = 1 ENTAO todos os outros endereços devem ser PRINCIPAL = 0"
810
- }
811
- },
812
- {
813
- "rule": {
814
- "description": "SE não existir nenhum endereço PRINCIPAL = 1 ENTAO deve ter algum PRINCIPAL = 1"
815
- }
816
- },
817
- {
818
- "rule": {
819
- "description": "SE existir endereco TIPO = 1 ENTAO não deve permitir inserir outro endereço TIPO = 1"
820
- }
821
- }
822
- ],
823
- "elements": [
824
- {
825
- "type": "select",
826
- "dataType": "integer",
827
- "label": "Tipo",
828
- "name": "TIPO",
829
- "isRequired": true,
830
- "options": [
831
- { "label": "MATRIZ", "value": 1 },
832
- { "label": "FILIAL", "value": 2 },
833
- { "label": "SUCURSAL", "value": 3 },
834
- { "label": "ARMAZÉM", "value": 4 },
835
- {
836
- "label": "UNIDADE DE PRODUÇÃO",
837
- "value": 5
838
- },
839
- { "label": "LOCAL DE ENTREGA", "value": 6 },
840
- { "label": "FATURAMENTO", "value": 7 },
841
- { "label": "LOCAL DE COLETA", "value": 8 }
842
- ]
843
- },
844
- {
845
- "type": "input",
846
- "dataType": "nvarchar",
847
- "label": "CEP",
848
- "name": "CEP",
849
- "isRequired": true,
850
- "validators": ["cep"],
851
- "apiRequest": {
852
- "endpoint": "viacep.com.br/ws/{{CEP}}/json/",
853
- "paramType": "query",
854
- "filtersFromOtherFormFields": [
855
- {
856
- "formFieldName": "CEP",
857
- "filterPropertyName": "CEP"
858
- }
859
- ],
860
- "formFieldsFilledByApiResponse": [
861
- {
862
- "formFieldName": "ENDERECO",
863
- "propertiesFromApiToFillFormField": [
864
- "logradouro"
865
- ]
866
- },
867
- {
868
- "formFieldName": "COMPLEMENTO",
869
- "propertiesFromApiToFillFormField": [
870
- "complemento"
871
- ]
872
- },
873
- {
874
- "formFieldName": "BAIRRO",
875
- "propertiesFromApiToFillFormField": [
876
- "bairro"
877
- ]
878
- },
879
- {
880
- "formFieldName": "CIDADE",
881
- "propertiesFromApiToFillFormField": [
882
- "localidade"
883
- ]
884
- },
885
- {
886
- "formFieldName": "ESTADO",
887
- "propertiesFromApiToFillFormField": ["uf"]
888
- }
889
- ],
890
- "conditions": [
891
- {
892
- "type": "form",
893
- "conditionResponse": "fillFields",
894
- "fillFields": [
895
- {
896
- "fieldKey": "PAIS",
897
- "value": "BRASIL"
898
- }
899
- ]
900
- }
901
- ]
902
- }
903
- },
904
- {
905
- "type": "autocomplete",
906
- "dataType": "nvarchar",
907
- "label": "País",
908
- "name": "PAIS_ID",
909
- "isRequired": true,
910
- "optionsApi": {
911
- "endpoint": "/paises",
912
- "labelField": ["nome", "codigo"],
913
- "valueField": "_id",
914
- "paramsToFilter": ["nome", "codigo"],
915
- "paramType": "query",
916
- "relatedEntity": "Paises"
917
- }
918
- },
919
- {
920
- "type": "autocomplete",
921
- "dataType": "nvarchar",
922
- "label": "Estado",
923
- "name": "SUBDIVISAO_ID",
924
- "isRequired": true,
925
- "optionsApi": {
926
- "endpoint": "/subdivisao",
927
- "labelField": ["nome", "codigo"],
928
- "valueField": "_id",
929
- "paramsToFilter": [
930
- "nome",
931
- "codigo",
932
- "paisId",
933
- "uf"
934
- ],
935
- "paramType": "query",
936
- "relatedEntity": "SUBDIVISAO",
937
- "filtersFromOtherFormFields": [
938
- {
939
- "formFieldName": "paisId",
940
- "filterPropertyName": "PAIS_ID"
941
- }
942
- ]
943
- }
944
- },
945
- {
946
- "type": "autocomplete",
947
- "dataType": "nvarchar",
948
- "label": "Cidade",
949
- "name": "CIDADE_ID",
950
- "isRequired": true,
951
- "optionsApi": {
952
- "endpoint": "/cidades",
953
- "labelField": ["nome", "codigo"],
954
- "valueField": "_id",
955
- "paramsToFilter": [
956
- "nome",
957
- "codigo",
958
- "subdivisaoId"
959
- ],
960
- "paramType": "query",
961
- "relatedEntity": "Cidades",
962
- "filtersFromOtherFormFields": [
963
- {
964
- "formFieldName": "subdivisaoId",
965
- "filterPropertyName": "SUBDIVISAO_ID"
966
- }
967
- ]
968
- }
969
- },
970
- {
971
- "type": "input",
972
- "dataType": "nvarchar",
973
- "label": "Endereço",
974
- "name": "LOGRADOURO",
975
- "isRequired": true
976
- },
977
- {
978
- "type": "input",
979
- "dataType": "nvarchar",
980
- "label": "Número",
981
- "name": "NUMERO",
982
- "isRequired": true
983
- },
984
- {
985
- "type": "input",
986
- "dataType": "nvarchar",
987
- "label": "Bairro",
988
- "name": "BAIRRO",
989
- "isRequired": true
990
- },
991
- {
992
- "type": "input",
993
- "dataType": "nvarchar",
994
- "label": "Complemento",
995
- "name": "COMPLEMENTO"
996
- },
997
- {
998
- "type": "select",
999
- "dataType": "integer",
1000
- "label": "Principal",
1001
- "name": "PRINCIPAL",
1002
- "isRequired": true,
1003
- "options": [
1004
- { "label": "SIM", "value": 1 },
1005
- { "label": "NÃO", "value": 0 }
1006
- ]
1007
- }
1008
- ]
1009
- }
1010
- ]
1011
- }
1012
- }
1013
- ]
1014
- },
1015
- {
1016
- "title": "Contatos",
1017
- "id": "clienteTabContatos",
1018
- "elements": [
75
+ "name": "pictureFile",
76
+ "dataType": "nvarchar",
77
+ "isRequired": false
78
+ },
1019
79
  {
1020
- "type": "inheritance",
1021
- "form": {
1022
- "id": "clienteContatosForm",
1023
- "title": "Gerenciamento de Contatos do cliente",
1024
- "componentType": "form",
1025
- "contracts": [
1026
- {
1027
- "id": "clienteContatos",
1028
- "endpoint": "/clientes/{clienteId}/contatos",
1029
- "actions": [
1030
- "create",
1031
- "delete",
1032
- "get",
1033
- "getById",
1034
- "update"
1035
- ],
1036
- "request": {
1037
- "entity": "CLIENTE_CONTATO",
1038
- "fields": [
1039
- {
1040
- "name": "NOME",
1041
- "dataType": "nvarchar",
1042
- "isRequired": true
1043
- },
1044
- {
1045
- "name": "EMAIL",
1046
- "dataType": "nvarchar",
1047
- "isRequired": true
1048
- },
1049
- {
1050
- "name": "TELEFONE",
1051
- "dataType": "nvarchar",
1052
- "isRequired": true
1053
- },
1054
- {
1055
- "name": "AREA",
1056
- "dataType": "integer",
1057
- "isRequired": true,
1058
- "enum": [
1059
- 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13
1060
- ]
1061
- },
1062
- {
1063
- "name": "PRINCIPAL",
1064
- "dataType": "boolean",
1065
- "isRequired": true
1066
- },
1067
- {
1068
- "name": "RECEBER_XML_NFE",
1069
- "dataType": "boolean",
1070
- "isRequired": true
1071
- },
1072
- {
1073
- "name": "FOLLOW_UP",
1074
- "dataType": "boolean",
1075
- "isRequired": true
1076
- },
1077
- {
1078
- "name": "NOTIFICACAO_WHATSAPP",
1079
- "dataType": "boolean",
1080
- "isRequired": true
1081
- }
1082
- ]
1083
- }
1084
- }
1085
- ],
1086
- "elements": [
1087
- {
1088
- "type": "array",
1089
- "id": "contatos",
1090
- "title": "Contatos",
1091
- "name": "CONTATO",
1092
- "businessRules": [
1093
- {
1094
- "rule": {
1095
- "description": "SE não existir nenhum contato PRINCIPAL = 1 ENTAO deve ter algum PRINCIPAL = 1"
1096
- }
1097
- },
1098
- {
1099
- "rule": {
1100
- "description": "SE existir contato TIPO = 1 ENTAO não deve permitir inserir outro contato TIPO = 1"
1101
- }
1102
- }
1103
- ],
1104
- "elements": [
1105
- {
1106
- "type": "input",
1107
- "dataType": "nvarchar",
1108
- "label": "Nome do Contato",
1109
- "name": "NOME",
1110
- "isRequired": true
1111
- },
1112
- {
1113
- "type": "input",
1114
- "dataType": "nvarchar",
1115
- "label": "Email",
1116
- "name": "EMAIL",
1117
- "isRequired": true,
1118
- "isUnique": true,
1119
- "validators": ["email"],
1120
- "maskRegex": "^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,}$"
1121
- },
1122
- {
1123
- "type": "input",
1124
- "dataType": "nvarchar",
1125
- "label": "Telefone",
1126
- "name": "TELEFONE",
1127
- "isRequired": true,
1128
- "validators": ["phone"]
1129
- },
1130
- {
1131
- "type": "select",
1132
- "dataType": "integer",
1133
- "label": "Área",
1134
- "name": "AREA",
1135
- "options": [
1136
- { "label": "ADMINISTRATIVO", "value": 1 },
1137
- { "label": "COMERCIAL", "value": 2 },
1138
- { "label": "FINANCEIRO", "value": 3 },
1139
- { "label": "LOGÍSTICA", "value": 4 },
1140
- { "label": "EXPORTAÇÃO", "value": 5 },
1141
- { "label": "IMPORTAÇÃO", "value": 6 },
1142
- { "label": "RECURSOS HUMANOS", "value": 7 },
1143
- { "label": "MARKETING", "value": 8 },
1144
- { "label": "SUPORTE", "value": 9 },
1145
- { "label": "CONTÁBIL", "value": 10 },
1146
- { "label": "FISCAL", "value": 11 },
1147
- { "label": "DIRETORIA", "value": 12 },
1148
- { "label": "GERÊNCIA", "value": 13 }
1149
- ]
1150
- },
1151
- {
1152
- "type": "select",
1153
- "dataType": "integer",
1154
- "label": "Principal",
1155
- "name": "PRINCIPAL",
1156
- "isRequired": true,
1157
- "options": [
1158
- { "label": "SIM", "value": 1 },
1159
- { "label": "NÃO", "value": 0 }
1160
- ]
1161
- },
1162
- {
1163
- "type": "select",
1164
- "dataType": "integer",
1165
- "label": "Receber XML/NFe",
1166
- "name": "RECEBER_XML_NFE",
1167
- "isRequired": true,
1168
- "options": [
1169
- { "label": "SIM", "value": 1 },
1170
- {
1171
- "label": "NÃO",
1172
- "value": 0,
1173
- "isSelected": true
1174
- }
1175
- ]
1176
- },
1177
- {
1178
- "type": "select",
1179
- "dataType": "integer",
1180
- "label": "Follow-up",
1181
- "name": "FOLLOW_UP",
1182
- "isRequired": true,
1183
- "options": [
1184
- { "label": "SIM", "value": 1 },
1185
- {
1186
- "label": "NÃO",
1187
- "value": 0,
1188
- "isSelected": true
1189
- }
1190
- ]
1191
- },
1192
- {
1193
- "type": "select",
1194
- "dataType": "integer",
1195
- "label": "Notificação WhatsApp",
1196
- "name": "NOTIFICACAO_WHATSAPP",
1197
- "isRequired": true,
1198
- "options": [
1199
- { "label": "SIM", "value": 1 },
1200
- {
1201
- "label": "NÃO",
1202
- "value": 0,
1203
- "isSelected": true
1204
- }
1205
- ]
1206
- }
1207
- ]
1208
- }
1209
- ]
1210
- }
1211
- }
1212
- ]
1213
- },
1214
- {
1215
- "title": "Operação",
1216
- "id": "clienteTabOperacao",
1217
- "elements": [
80
+ "name": "name",
81
+ "dataType": "nvarchar",
82
+ "isRequired": true
83
+ },
1218
84
  {
1219
- "type": "inheritance",
1220
- "form": {
1221
- "id": "clienteOperacaoForm",
1222
- "componentType": "form",
1223
- "title": "Gerenciamento de operacoes do cliente",
1224
- "contracts": [
1225
- {
1226
- "id": "clienteOperacaoClienteRelacionamento",
1227
- "endpoint": "/clientes/{clienteId}/relacionamentos",
1228
- "actions": [
1229
- "create",
1230
- "delete",
1231
- "get",
1232
- "getById",
1233
- "update"
1234
- ],
1235
- "request": {
1236
- "entity": "CLIENTE_OPERACAO_RELACIONAMENTO",
1237
- "fields": [
1238
- {
1239
- "name": "USUARIO_ID",
1240
- "dataType": "uniqueidentifier",
1241
- "isRequired": true,
1242
- "foreignKey": {
1243
- "entity": "COLABORADOR",
1244
- "connectionAttribute": "ID",
1245
- "relationship": "one-to-many"
1246
- }
1247
- },
1248
- {
1249
- "name": "RELACIONAMENTO",
1250
- "dataType": "integer",
1251
- "isRequired": true,
1252
- "enum": [1, 2, 3]
1253
- }
1254
- ]
1255
- }
1256
- },
1257
- {
1258
- "id": "clienteModalidadesOperacoes",
1259
- "endpoint": "/clientes/{clienteId}/modalidades-operacoes",
1260
- "actions": ["create", "update", "get"],
1261
- "request": {
1262
- "entity": "CLIENTE_OPERACAO_MODALIDADE_OPERACAO",
1263
- "fields": [
1264
- {
1265
- "name": "MODALIDADE_OPERACAO",
1266
- "dataType": "uniqueidentifier",
1267
- "isRequired": true,
1268
- "enum": [1, 2, 3, 4],
1269
- "foreignKey": {
1270
- "entity": "CLIENTE_OPERACAO_MODALIDADE_OPERACAO",
1271
- "connectionAttribute": "ID",
1272
- "relationship": "many-to-many"
1273
- }
1274
- }
1275
- ]
1276
- }
1277
- },
1278
- {
1279
- "id": "clienteRegimesAduaneiros",
1280
- "endpoint": "/clientes/{clienteId}/regimes-aduaneiros",
1281
- "actions": ["create", "update", "get"],
1282
- "request": {
1283
- "entity": "CLIENTE_OPERACAO_REGIME_ADUANEIRO",
1284
- "fields": [
1285
- {
1286
- "name": "REGIME_ADUANEIRO",
1287
- "dataType": "uniqueidentifier",
1288
- "isRequired": true,
1289
- "enum": [1, 2, 3, 4, 5, 6, 7, 8],
1290
- "foreignKey": {
1291
- "entity": "CLIENTE_OPERACAO_REGIME_ADUANEIRO",
1292
- "connectionAttribute": "ID",
1293
- "relationship": "many-to-many"
1294
- }
1295
- }
1296
- ]
1297
- }
1298
- },
1299
- {
1300
- "id": "clienteBeneficios",
1301
- "endpoint": "/clientes/{clienteId}/beneficios",
1302
- "actions": ["create", "update", "get"],
1303
- "request": {
1304
- "entity": "CLIENTE_OPERACAO_BENEFICIO",
1305
- "fields": [
1306
- {
1307
- "name": "BENEFICIO",
1308
- "dataType": "uniqueidentifier",
1309
- "isRequired": true,
1310
- "enum": [1, 2, 3, 4, 5],
1311
- "foreignKey": {
1312
- "entity": "CLIENTE_OPERACAO_BENEFICIO",
1313
- "connectionAttribute": "ID",
1314
- "relationship": "many-to-many"
1315
- }
1316
- }
1317
- ]
1318
- }
1319
- },
1320
- {
1321
- "id": "clienteParticularidades",
1322
- "endpoint": "/clientes/{clienteId}/particularidades",
1323
- "actions": ["create", "update", "get"],
1324
- "request": {
1325
- "entity": "CLIENTE_OPERACAO_PARTICULARIDADE",
1326
- "fields": [
1327
- {
1328
- "name": "PARTICULARIDADE",
1329
- "dataType": "uniqueidentifier",
1330
- "isRequired": true,
1331
- "enum": [
1332
- 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
1333
- 14, 15, 16, 17, 18
1334
- ],
1335
- "foreignKey": {
1336
- "entity": "CLIENTE_OPERACAO_PARTICULARIDADE",
1337
- "connectionAttribute": "ID",
1338
- "relationship": "many-to-many"
1339
- }
1340
- }
1341
- ]
1342
- }
1343
- }
1344
- ],
1345
- "elements": [
1346
- {
1347
- "title": "Usuários da operação",
1348
- "id": "usuariosOperacaoFieldset",
1349
- "type": "fieldset",
1350
- "elements": [
1351
- {
1352
- "title": "Relacionamento",
1353
- "id": "relacionamentos",
1354
- "type": "array",
1355
- "name": "CLIENTE_RELACIONAMENTO",
1356
- "elements": [
1357
- {
1358
- "type": "autocomplete",
1359
- "dataType": "uniqueidentifier",
1360
- "label": "Usuário",
1361
- "name": "USUARIO_ID",
1362
- "isUnique": true,
1363
- "optionsApi": {
1364
- "endpoint": "/colaboradores-por-setor",
1365
- "labelField": ["nome", "cargo"],
1366
- "valueField": "_id",
1367
- "paramsToFilter": ["nome", "setor"],
1368
- "paramType": "query",
1369
- "relatedEntity": "Colaborador"
1370
- }
1371
- },
1372
- {
1373
- "type": "select",
1374
- "dataType": "integer",
1375
- "label": "Relacionamento",
1376
- "name": "RELACIONAMENTO",
1377
- "options": [
1378
- {
1379
- "label": "SUPERVISOR OPERACIONAL",
1380
- "value": 1
1381
- },
1382
- {
1383
- "label": "GESTOR RESPONSÁVEL",
1384
- "value": 2
1385
- },
1386
- {
1387
- "label": "SUPORTE OPERACIONAL",
1388
- "value": 3
1389
- }
1390
- ]
1391
- }
1392
- ]
1393
- }
1394
- ]
1395
- },
1396
- {
1397
- "title": "Dados da Operação",
1398
- "id": "dadosOperacaoFieldset",
1399
- "type": "fieldset",
1400
- "elements": [
1401
- {
1402
- "type": "select",
1403
- "dataType": "integer",
1404
- "label": "Modalidade de Operação",
1405
- "name": "MODALIDADE_OPERACAO",
1406
- "isMultiple": true,
1407
- "options": [
1408
- { "label": "CONTA E ORDEM", "value": 1 },
1409
- { "label": "CONTA PRÓPRIA", "value": 2 },
1410
- { "label": "ENCOMENDA", "value": 3 },
1411
- { "label": "DISTRIBUIÇÃO", "value": 4 }
1412
- ],
1413
- "conditions": [
1414
- {
1415
- "type": "form",
1416
- "conditionResponse": "fillFields",
1417
- "fillFields": [
1418
- {
1419
- "fieldKey": "MODALIDADE_OPERACAO_VINCULACAO",
1420
- "value": "MODALIDADE_OPERACAO"
1421
- },
1422
- {
1423
- "fieldKey": "MODALIDADE_OPERACAO_NEGOCIACAO",
1424
- "value": "MODALIDADE_OPERACAO"
1425
- }
1426
- ]
1427
- }
1428
- ]
1429
- },
1430
- {
1431
- "type": "select",
1432
- "dataType": "integer",
1433
- "label": "Regime Aduaneiro",
1434
- "name": "REGIME_ADUANEIRO",
1435
- "isMultiple": true,
1436
- "options": [
1437
- { "label": "IMPORTAÇÃO", "value": 1 },
1438
- { "label": "EXPORTAÇÃO", "value": 2 },
1439
- { "label": "DRAWBACK", "value": 3 },
1440
- {
1441
- "label": "ADMISSÃO TEMPORÁRIA",
1442
- "value": 4
1443
- },
1444
- {
1445
- "label": "EXPORTAÇÃO TEMPORÁRIA",
1446
- "value": 5
1447
- },
1448
- { "label": "RECOF-SPED", "value": 6 },
1449
- { "label": "REPETRO", "value": 7 },
1450
- {
1451
- "label": "ENTREPOSTO ADUANEIRO",
1452
- "value": 8
1453
- }
1454
- ]
1455
- },
1456
- {
1457
- "type": "select",
1458
- "dataType": "integer",
1459
- "label": "Tipo de Benefício",
1460
- "name": "TIPO_BENEFICIO",
1461
- "isMultiple": true,
1462
- "options": [
1463
- { "label": "PRODERO", "value": 1 },
1464
- { "label": "ALAGOAS", "value": 2 },
1465
- { "label": "INVEST", "value": 3 },
1466
- { "label": "COMPET", "value": 4 },
1467
- { "label": "FUNDAP", "value": 5 }
1468
- ]
1469
- },
1470
- {
1471
- "type": "select",
1472
- "dataType": "integer",
1473
- "label": "Particularidade",
1474
- "name": "PARTICULARIDADES",
1475
- "isMultiple": true,
1476
- "options": [
1477
- {
1478
- "label": "ACEITA A TRANSFERENCIA DE SALDO",
1479
- "value": 1
1480
- },
1481
- {
1482
- "label": "AUTORIZAÇÃO DO CLIENTE PARA COBRANÇA / DEVOLUÇÃO DE VALORES",
1483
- "value": 2
1484
- },
1485
- {
1486
- "label": "CODIGO DO CLIENTE NA NOTA FISCAL",
1487
- "value": 3
1488
- },
1489
- { "label": "COMPPETE", "value": 4 },
1490
- { "label": "CONSTRUÇÃO CIVIL", "value": 5 },
1491
- { "label": "CONTA CORRENTE", "value": 6 },
1492
- {
1493
- "label": "CONTRATO DE ARMAZENAGEM DEVERÁ ACOMPANHAR O TRANSPORTE",
1494
- "value": 7
1495
- },
1496
- { "label": "CUSTO FINANCEIRO", "value": 8 },
1497
- {
1498
- "label": "DISPENSA DE ANTECIPAÇÃO DE IMPOSTO",
1499
- "value": 9
1500
- },
1501
- {
1502
- "label": "ENVIAR FOLLOW EM EXCEL",
1503
- "value": 10
1504
- },
1505
- {
1506
- "label": "FRETE INTERNO NA NFE ",
1507
- "value": 11
1508
- },
1509
- {
1510
- "label": "NOTA FISCAL DE TRANSFERÊNCIA EMITIDA PELO CLIENTE DEVERÁ ACOMPANHAR O TRANSPORTE",
1511
- "value": 12
1512
- },
1513
- {
1514
- "label": "NOTA FISCAL DE VENDA EMITIDA PELO CLIENTE DEVERÁ ACOMPANHAR O TRANSPORTE",
1515
- "value": 13
1516
- },
1517
- {
1518
- "label": "PRAZO PARA PAGAMENTO DA NFE - 90 DIAS",
1519
- "value": 14
1520
- },
1521
- {
1522
- "label": "PRAZO PARA PAGAMENTO DO ICMS - 20 DIAS DO MÊS SUBSEQUENTE AO FATURAMENTO",
1523
- "value": 15
1524
- },
1525
- {
1526
- "label": "SUBSTITUTO TRIBUTÁRIO",
1527
- "value": 16
1528
- },
1529
- {
1530
- "label": "TAXA DE CONSULTORIA",
1531
- "value": 17
1532
- },
1533
- {
1534
- "label": "PRAZO PARA PAGAMENTO TOTAL DA IMPORTAÇÃO DE 20 DIAS",
1535
- "value": 18
1536
- }
1537
- ]
1538
- }
1539
- ]
1540
- }
1541
- ]
1542
- }
1543
- }
1544
- ]
1545
- },
1546
- {
1547
- "title": "Comissão",
1548
- "id": "clienteTabComissao",
1549
- "elements": [
85
+ "name": "description",
86
+ "dataType": "longtext",
87
+ "isRequired": true
88
+ },
1550
89
  {
1551
- "type": "inheritance",
1552
- "form": {
1553
- "id": "clienteComissaoForm",
1554
- "title": "Gerenciamento de Comissões do cliente",
1555
- "componentType": "form",
1556
- "contracts": [
1557
- {
1558
- "id": "clienteComissao",
1559
- "endpoint": "/clientes/{clienteId}/comissoes",
1560
- "actions": [
1561
- "create",
1562
- "delete",
1563
- "get",
1564
- "getById",
1565
- "update"
1566
- ],
1567
- "request": {
1568
- "entity": "CLIENTE_COMISSAO",
1569
- "fields": [
1570
- {
1571
- "name": "COMISSIONADO",
1572
- "dataType": "integer",
1573
- "enum": [1, 2, 3, 4, 5, 6, 7],
1574
- "isRequired": true
1575
- },
1576
- {
1577
- "name": "TIPO_COMISSAO",
1578
- "dataType": "integer",
1579
- "enum": [1, 2],
1580
- "isRequired": true
1581
- },
1582
- {
1583
- "name": "COMISSAO_NEGOCIADA",
1584
- "dataType": "decimal",
1585
- "isRequired": true
1586
- },
1587
- {
1588
- "name": "FATOR_INCIDENCIA",
1589
- "dataType": "integer",
1590
- "enum": [1, 2, 3, 4],
1591
- "isRequired": true
1592
- }
1593
- ]
1594
- }
1595
- }
1596
- ],
1597
- "elements": [
1598
- {
1599
- "title": "Comissionado",
1600
- "id": "comissoes",
1601
- "type": "array",
1602
- "name": "COMISSAO",
1603
- "businessRules": [
1604
- {
1605
- "rule": {
1606
- "description": "SE COMISSIONADO e FATOR_INCIDENCIA ja existirem ENTAO não pode duplicar."
1607
- }
1608
- }
1609
- ],
1610
- "elements": [
1611
- {
1612
- "type": "select",
1613
- "dataType": "integer",
1614
- "label": "Comissionado",
1615
- "name": "COMISSIONADO",
1616
- "options": [
1617
- { "label": "COMISSIONADO A", "value": 1 },
1618
- { "label": "COMISSIONADO B", "value": 2 },
1619
- { "label": "COMISSIONADO C", "value": 3 },
1620
- { "label": "COMISSIONADO D", "value": 4 },
1621
- { "label": "COMISSIONADO E", "value": 5 },
1622
- { "label": "COMISSIONADO F", "value": 6 },
1623
- { "label": "COMISSIONADO G", "value": 7 }
1624
- ]
1625
- },
1626
- {
1627
- "type": "select",
1628
- "dataType": "integer",
1629
- "label": "Tipo de Comissão",
1630
- "name": "TIPO_COMISSAO",
1631
- "options": [
1632
- { "label": "VALOR", "value": 1 },
1633
- { "label": "PERCENTUAL", "value": 2 }
1634
- ]
1635
- },
1636
- {
1637
- "type": "input",
1638
- "dataType": "decimal",
1639
- "label": "Comissão Negociada",
1640
- "name": "COMISSAO_NEGOCIADA",
1641
- "isRequired": true,
1642
- "minLength": 0
1643
- },
1644
- {
1645
- "type": "select",
1646
- "dataType": "integer",
1647
- "label": "Fator de Incidência",
1648
- "name": "FATOR_INCIDENCIA",
1649
- "options": [
1650
- { "label": "VALOR FIXO", "value": 1 },
1651
- {
1652
- "label": "REPASSE DO ICMS - DESCONTO FINANCEIRO",
1653
- "value": 2
1654
- },
1655
- {
1656
- "label": "REPASSE DO ICMS - DESCONTO INCONDICIONAL",
1657
- "value": 3
1658
- },
1659
- { "label": "VALOR POR PROCESSO", "value": 4 }
1660
- ]
1661
- }
1662
- ]
1663
- }
1664
- ]
1665
- }
1666
- }
1667
- ]
1668
- },
1669
- {
1670
- "title": "Especialidade",
1671
- "id": "clienteTabEspecialidade",
1672
- "elements": [
90
+ "name": "releaseDate",
91
+ "dataType": "date",
92
+ "isRequired": true
93
+ },
1673
94
  {
1674
- "type": "inheritance",
1675
- "form": {
1676
- "id": "clienteEspecialidadeForm",
1677
- "componentType": "form",
1678
- "title": "Gerenciamento de especialidades do cliente",
1679
- "contracts": [
1680
- {
1681
- "id": "clienteEspecialidade",
1682
- "endpoint": "/clientes/{clienteId}/especialidades",
1683
- "actions": ["create", "delete", "get", "getById"],
1684
- "request": {
1685
- "entity": "CLIENTE_ESPECIALIDADE",
1686
- "fields": [
1687
- {
1688
- "name": "ESPECIALIDADE_ID",
1689
- "dataType": "uniqueidentifier",
1690
- "isRequired": true,
1691
- "foreignKey": {
1692
- "connectionAttribute": "ID",
1693
- "entity": "NcmEspecialidade",
1694
- "relationship": "many-to-many"
1695
- }
1696
- }
1697
- ]
1698
- }
1699
- }
1700
- ],
1701
- "elements": [
1702
- {
1703
- "title": "Especialidade",
1704
- "id": "especialidades",
1705
- "type": "array",
1706
- "name": "ESPECIALIDADE",
1707
- "elements": [
1708
- {
1709
- "type": "autocomplete",
1710
- "dataType": "nvarchar",
1711
- "label": "Especialidade",
1712
- "name": "ESPECIALIDADE_ID",
1713
- "isUnique": true,
1714
- "optionsApi": {
1715
- "endpoint": "/grupo-produto",
1716
- "labelField": ["nome"],
1717
- "valueField": "_id",
1718
- "paramsToFilter": ["nome"],
1719
- "paramType": "query",
1720
- "relatedEntity": "ESPECIALIDADE"
1721
- }
1722
- }
1723
- ]
1724
- }
1725
- ]
1726
- }
1727
- }
1728
- ]
1729
- },
1730
- {
1731
- "title": "Vinculação",
1732
- "id": "clienteTabVinculacao",
1733
- "elements": [
95
+ "name": "imdbRating",
96
+ "dataType": "decimal",
97
+ "isRequired": true
98
+ },
1734
99
  {
1735
- "type": "inheritance",
1736
- "form": {
1737
- "title": "Vinculação",
1738
- "id": "clienteVinculacaoForm",
1739
- "componentType": "form",
1740
- "contracts": [
1741
- {
1742
- "id": "",
1743
- "endpoint": "/clientes/{clienteId}/vinculacao",
1744
- "actions": [
1745
- "create",
1746
- "update",
1747
- "delete",
1748
- "get",
1749
- "getById"
1750
- ],
1751
- "request": {
1752
- "entity": "CLIENTE_VINCULACAO",
1753
- "fields": [
1754
- {
1755
- "name": "DATA_VINCULACAO",
1756
- "dataType": "datetime2",
1757
- "isRequired": true
1758
- },
1759
- {
1760
- "name": "PRAZO_CONTRATO_DIAS",
1761
- "dataType": "integer",
1762
- "isRequired": true
1763
- },
1764
- {
1765
- "name": "DATA_VENCIMENTO",
1766
- "dataType": "datetime2",
1767
- "isRequired": true
1768
- },
1769
- {
1770
- "name": "NUMERO_DOSSIE",
1771
- "dataType": "nvarchar",
1772
- "isRequired": true
1773
- },
1774
- {
1775
- "name": "NUMERO_CONTRATO_VINCULADO",
1776
- "dataType": "nvarchar",
1777
- "isRequired": true
1778
- },
1779
- {
1780
- "name": "MODALIDADE_OPERACAO_VINCULACAO",
1781
- "dataType": "integer"
1782
- }
1783
- ]
1784
- }
1785
- }
1786
- ],
1787
- "elements": [
1788
- {
1789
- "title": "Cliente Vinculado",
1790
- "id": "clientesVinculados",
1791
- "type": "array",
1792
- "name": "VINCULACAO",
1793
- "businessRules": [
1794
- {
1795
- "rule": {
1796
- "description": "SE a vinculação estiver sendo manipulada por uma filial e não na matriz ENTAO deve negar informando para alterar na matriz"
1797
- }
1798
- }
1799
- ],
1800
- "elements": [
1801
- {
1802
- "type": "input",
1803
- "dataType": "datetime2",
1804
- "label": "Data de Vinculação",
1805
- "name": "DATA_VINCULACAO",
1806
- "isRequired": true
1807
- },
1808
- {
1809
- "type": "input",
1810
- "dataType": "integer",
1811
- "label": "Prazo descrito no contrato (em dias)",
1812
- "name": "PRAZO_CONTRATO_DIAS",
1813
- "isRequired": true,
1814
- "minLength": 0
1815
- },
1816
- {
1817
- "type": "input",
1818
- "dataType": "datetime2",
1819
- "label": "Data de Vencimento",
1820
- "name": "DATA_VENCIMENTO",
1821
- "isRequired": true
1822
- },
1823
- {
1824
- "type": "input",
1825
- "dataType": "nvarchar",
1826
- "label": "Número do Dossiê",
1827
- "name": "NUMERO_DOSSIE",
1828
- "isRequired": true
1829
- },
1830
- {
1831
- "type": "input",
1832
- "dataType": "nvarchar",
1833
- "label": "Número do Contrato Vinculado",
1834
- "name": "NUMERO_CONTRATO_VINCULADO",
1835
- "isRequired": true
1836
- },
1837
- {
1838
- "type": "select",
1839
- "dataType": "integer",
1840
- "label": "Modalidade de Operação",
1841
- "name": "MODALIDADE_OPERACAO_VINCULACAO",
1842
- "isRequired": true,
1843
- "options": [
1844
- { "label": "CONTA E ORDEM", "value": 1 },
1845
- { "label": "CONTA PRÓPRIA", "value": 2 },
1846
- { "label": "ENCOMENDA", "value": 3 },
1847
- { "label": "DISTRIBUIÇÃO", "value": 4 }
1848
- ]
1849
- }
1850
- ]
1851
- }
1852
- ]
100
+ "name": "movieGenres",
101
+ "dataType": "uniqueidentifier",
102
+ "isRequired": true,
103
+ "foreignKey": {
104
+ "entity": "MovieGenre",
105
+ "connectionAttribute": "_id",
106
+ "relationship": "many-to-many"
1853
107
  }
108
+ },
109
+ {
110
+ "name": "link1",
111
+ "dataType": "nvarchar",
112
+ "isRequired": true
113
+ },
114
+ {
115
+ "name": "link2",
116
+ "dataType": "nvarchar",
117
+ "isRequired": false
118
+ },
119
+ {
120
+ "name": "link3",
121
+ "dataType": "nvarchar",
122
+ "isRequired": false
1854
123
  }
1855
124
  ]
1856
- },
1857
- {
1858
- "title": "Seguros",
1859
- "id": "clienteTabSeguros",
1860
- "elements": [
1861
- {
1862
- "type": "inheritance",
1863
- "form": {
1864
- "title": "Seguros",
1865
- "componentType": "form",
1866
- "id": "clienteSegurosForm",
1867
- "contracts": [
1868
- {
1869
- "endpoint": "/clientes/{clienteId}/seguros",
1870
- "id": "clienteSeguros",
1871
- "actions": [
1872
- "create",
1873
- "delete",
1874
- "get",
1875
- "getById",
1876
- "update"
1877
- ],
1878
- "request": {
1879
- "entity": "CLIENTE_SEGURO",
1880
- "fields": [
1881
- {
1882
- "name": "POSSUI_SEGURO_MERCADORIA",
1883
- "dataType": "boolean",
1884
- "isRequired": true
1885
- },
1886
- {
1887
- "name": "PERCENTUAL_SEGURO_DI",
1888
- "dataType": "float"
1889
- },
1890
- {
1891
- "name": "FATOR_INCIDENCIA_DI",
1892
- "dataType": "integer",
1893
- "enum": [1, 2, 3]
1894
- },
1895
- {
1896
- "name": "PERCENTUAL_SEGURO_NF",
1897
- "dataType": "float"
1898
- },
1899
- {
1900
- "name": "FATOR_INCIDENCIA_NF",
1901
- "dataType": "integer",
1902
- "enum": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
1903
- },
1904
- {
1905
- "name": "POSSUI_SEGURO_CREDITO_INTERNACIONAL",
1906
- "dataType": "boolean"
1907
- },
1908
- {
1909
- "name": "SEGURADORA_CREDITO_INTERNACIONAL",
1910
- "dataType": "nvarchar"
1911
- },
1912
- {
1913
- "name": "PERCENTUAL_CREDITO_INTERNACIONAL",
1914
- "dataType": "float"
1915
- },
1916
- {
1917
- "name": "LIMITE_CREDITO_INTERNACIONAL",
1918
- "dataType": "float"
1919
- },
1920
- {
1921
- "name": "SALDO_CREDITO_INTERNACIONAL",
1922
- "dataType": "float"
1923
- },
1924
- {
1925
- "name": "POSSUI_LIMITE_CREDITO_INTERNO",
1926
- "dataType": "boolean"
1927
- },
1928
- {
1929
- "name": "LIMITE_CREDITO_INTERNO",
1930
- "dataType": "float"
1931
- },
1932
- {
1933
- "name": "SALDO_CREDITO_INTERNO",
1934
- "dataType": "float"
1935
- },
1936
- {
1937
- "name": "WAIVER_LETTER",
1938
- "dataType": "boolean"
1939
- },
1940
- {
1941
- "name": "CLIENTE_SEGURO_FORNECEDOR",
1942
- "dataType": "uniqueidentifier",
1943
- "foreignKey": {
1944
- "entity": "PrestadorDeServico",
1945
- "connectionAttribute": "ID",
1946
- "relationship": "many-to-many"
1947
- }
1948
- }
1949
- ]
1950
- }
1951
- },
1952
- {
1953
- "id": "clientesSegurosExportadores",
1954
- "endpoint": "/clientes/{clienteId}/seguros-exportadores",
1955
- "actions": ["get"],
1956
- "request": {
1957
- "entity": "CLIENTE_SEGURO_FORNECEDOR",
1958
- "fields": [
1959
- {
1960
- "name": "FORNECEDOR_ID",
1961
- "dataType": "uniqueidentifier",
1962
- "foreignKey": {
1963
- "entity": "PrestadorDeServico",
1964
- "connectionAttribute": "Id",
1965
- "relationship": "one-to-many"
1966
- }
1967
- },
1968
- {
1969
- "name": "CLIENTE_SEGURO_ID",
1970
- "dataType": "uniqueidentifier",
1971
- "foreignKey": {
1972
- "entity": "CLIENTE_SEGURO",
1973
- "connectionAttribute": "ID",
1974
- "relationship": "one-to-many"
1975
- }
1976
- }
1977
- ],
1978
- "uniqueConstraints": [
1979
- {
1980
- "identificator": "UQ_CLIENTE_SEGURO_FORNECEDOR",
1981
- "fields": [
1982
- "CLIENTE_SEGURO_ID",
1983
- "EXPORTADOR_ID"
1984
- ]
1985
- }
1986
- ]
1987
- }
1988
- }
1989
- ],
1990
- "elements": [
1991
- {
1992
- "title": "Seguro de Mercadoria",
1993
- "id": "seguroMercadoriaFieldset",
1994
- "type": "fieldset",
1995
- "elements": [
1996
- {
1997
- "type": "select",
1998
- "dataType": "integer",
1999
- "label": "Seguro de Mercadoria",
2000
- "name": "POSSUI_SEGURO_MERCADORIA",
2001
- "isRequired": true,
2002
- "options": [
2003
- { "label": "SIM", "value": 1 },
2004
- {
2005
- "label": "NÃO",
2006
- "value": 0,
2007
- "isSelected": true
2008
- }
2009
- ]
2010
- },
2011
- {
2012
- "type": "input",
2013
- "dataType": "float",
2014
- "label": "Percentual Seguro DI",
2015
- "name": "PERCENTUAL_SEGURO_DI",
2016
- "conditions": [
2017
- {
2018
- "type": "form",
2019
- "elements": [
2020
- {
2021
- "key": "POSSUI_SEGURO_MERCADORIA",
2022
- "value": 1,
2023
- "comparisonOperator": "==="
2024
- }
2025
- ]
2026
- }
2027
- ]
2028
- },
2029
- {
2030
- "type": "select",
2031
- "dataType": "integer",
2032
- "label": "Fator Incidência DI",
2033
- "name": "FATOR_INCIDENCIA_DI",
2034
- "options": [
2035
- { "label": "C&F", "value": 1 },
2036
- { "label": "CIF", "value": 2 },
2037
- { "label": "FOB", "value": 3 }
2038
- ],
2039
- "conditions": [
2040
- {
2041
- "type": "form",
2042
- "elements": [
2043
- {
2044
- "key": "POSSUI_SEGURO_MERCADORIA",
2045
- "value": 1,
2046
- "comparisonOperator": "==="
2047
- }
2048
- ]
2049
- }
2050
- ]
2051
- },
2052
- {
2053
- "type": "input",
2054
- "dataType": "float",
2055
- "label": "Percentual Seguro NF",
2056
- "name": "PERCENTUAL_SEGURO_NF",
2057
- "minLength": 0,
2058
- "conditions": [
2059
- {
2060
- "type": "form",
2061
- "elements": [
2062
- {
2063
- "key": "POSSUI_SEGURO_MERCADORIA",
2064
- "value": 1,
2065
- "comparisonOperator": "==="
2066
- }
2067
- ]
2068
- }
2069
- ]
2070
- },
2071
- {
2072
- "type": "select",
2073
- "dataType": "integer",
2074
- "label": "Fator Incidência NF",
2075
- "name": "FATOR_INCIDENCIA_NF",
2076
- "options": [
2077
- {
2078
- "label": "BASE DE CÁLCULO DO ICMS",
2079
- "value": 1
2080
- },
2081
- { "label": "ICMS", "value": 2 },
2082
- { "label": "REPASSE DO ICMS", "value": 3 },
2083
- {
2084
- "label": "VALOR DA NOTA FISCAL",
2085
- "value": 4
2086
- },
2087
- { "label": "CIF", "value": 5 },
2088
- { "label": "SALÁRIO MÍNIMO", "value": 6 },
2089
- { "label": "FRETE", "value": 7 },
2090
- { "label": "UNIDADE", "value": 8 },
2091
- { "label": "SPREAD", "value": 9 },
2092
- { "label": "IR", "value": 10 }
2093
- ],
2094
- "conditions": [
2095
- {
2096
- "type": "form",
2097
- "elements": [
2098
- {
2099
- "key": "POSSUI_SEGURO_MERCADORIA",
2100
- "value": 1,
2101
- "comparisonOperator": "==="
2102
- }
2103
- ]
2104
- }
2105
- ]
2106
- }
2107
- ]
2108
- },
2109
- {
2110
- "title": "Seguro de Crédito Internacional",
2111
- "id": "seguroCreditoInternacionalFieldset",
2112
- "type": "fieldset",
2113
- "elements": [
2114
- {
2115
- "type": "select",
2116
- "dataType": "integer",
2117
- "label": "Seguro de Crédito Internacional",
2118
- "name": "POSSUI_SEGURO_CREDITO_INTERNACIONAL",
2119
- "isRequired": true,
2120
- "options": [
2121
- { "label": "SIM", "value": 1 },
2122
- {
2123
- "label": "NÃO",
2124
- "value": 0,
2125
- "isSelected": true
2126
- }
2127
- ]
2128
- },
2129
- {
2130
- "type": "input",
2131
- "dataType": "nvarchar",
2132
- "label": "Seguradora",
2133
- "name": "SEGURADORA_CREDITO_INTERNACIONAL",
2134
- "conditions": [
2135
- {
2136
- "type": "form",
2137
- "elements": [
2138
- {
2139
- "key": "POSSUI_SEGURO_CREDITO_INTERNACIONAL",
2140
- "value": 1,
2141
- "comparisonOperator": "==="
2142
- }
2143
- ]
2144
- }
2145
- ]
2146
- },
2147
- {
2148
- "type": "input",
2149
- "dataType": "float",
2150
- "label": "Percentual",
2151
- "name": "PERCENTUAL_CREDITO_INTERNACIONAL",
2152
- "conditions": [
2153
- {
2154
- "type": "form",
2155
- "elements": [
2156
- {
2157
- "key": "POSSUI_SEGURO_CREDITO_INTERNACIONAL",
2158
- "value": 1,
2159
- "comparisonOperator": "==="
2160
- }
2161
- ]
2162
- }
2163
- ]
2164
- },
2165
- {
2166
- "type": "input",
2167
- "dataType": "float",
2168
- "label": "Limite",
2169
- "name": "LIMITE_CREDITO_INTERNACIONAL",
2170
- "conditions": [
2171
- {
2172
- "type": "form",
2173
- "elements": [
2174
- {
2175
- "key": "POSSUI_SEGURO_CREDITO_INTERNACIONAL",
2176
- "value": 1,
2177
- "comparisonOperator": "==="
2178
- }
2179
- ]
2180
- }
2181
- ]
2182
- },
2183
- {
2184
- "type": "input",
2185
- "dataType": "float",
2186
- "label": "Saldo",
2187
- "name": "SALDO_CREDITO_INTERNACIONAL",
2188
- "conditions": [
2189
- {
2190
- "type": "form",
2191
- "elements": [
2192
- {
2193
- "key": "POSSUI_SEGURO_CREDITO_INTERNACIONAL",
2194
- "value": 1,
2195
- "comparisonOperator": "==="
2196
- }
2197
- ]
2198
- }
2199
- ]
2200
- }
2201
- ]
2202
- },
2203
- {
2204
- "title": "Limite de Crédito Interno",
2205
- "id": "limiteCreditoInternoFieldset",
2206
- "type": "fieldset",
2207
- "elements": [
2208
- {
2209
- "type": "select",
2210
- "dataType": "integer",
2211
- "label": "Limite de Crédito Interno",
2212
- "name": "POSSUI_LIMITE_CREDITO_INTERNO",
2213
- "isRequired": true,
2214
- "options": [
2215
- { "label": "Sim", "value": 1 },
2216
- {
2217
- "label": "Não",
2218
- "value": 0,
2219
- "isSelected": true
2220
- }
2221
- ]
2222
- },
2223
- {
2224
- "type": "input",
2225
- "dataType": "float",
2226
- "label": "Limite",
2227
- "name": "LIMITE_CREDITO_INTERNO",
2228
- "conditions": [
2229
- {
2230
- "type": "form",
2231
- "elements": [
2232
- {
2233
- "key": "POSSUI_LIMITE_CREDITO_INTERNO",
2234
- "value": 1,
2235
- "comparisonOperator": "==="
2236
- }
2237
- ]
2238
- }
2239
- ]
2240
- },
2241
- {
2242
- "type": "input",
2243
- "dataType": "float",
2244
- "label": "Saldo",
2245
- "name": "SALDO_CREDITO_INTERNO",
2246
- "conditions": [
2247
- {
2248
- "type": "form",
2249
- "elements": [
2250
- {
2251
- "key": "POSSUI_LIMITE_CREDITO_INTERNO",
2252
- "value": 1,
2253
- "comparisonOperator": "==="
2254
- }
2255
- ]
2256
- }
2257
- ]
2258
- }
2259
- ]
2260
- },
2261
- {
2262
- "title": "Limite de Crédito Internacional",
2263
- "id": "waiverLetterFieldset",
2264
- "type": "fieldset",
2265
- "elements": [
2266
- {
2267
- "type": "select",
2268
- "dataType": "integer",
2269
- "label": "Waiver Letter",
2270
- "name": "WAIVER_LETTER",
2271
- "options": [
2272
- { "label": "SIM", "value": 1 },
2273
- { "label": "NÃO", "value": 0 }
2274
- ],
2275
- "conditions": [
2276
- {
2277
- "type": "form",
2278
- "elements": [
2279
- {
2280
- "key": "POSSUI_LIMITE_CREDITO_INTERNACIONAL",
2281
- "value": 1,
2282
- "comparisonOperator": "==="
2283
- }
2284
- ]
2285
- }
2286
- ]
2287
- },
2288
- {
2289
- "type": "autocomplete",
2290
- "dataType": "uniqueidentifier",
2291
- "label": "Exportadores",
2292
- "name": "EXPORTADORES_IDS",
2293
- "isMultiple": true,
2294
- "optionsApi": {
2295
- "endpoint": "/fornecedores",
2296
- "labelField": ["RAZAO_SOCIAL"],
2297
- "valueField": "ID",
2298
- "paramsToFilter": ["RAZAO_SOCIAL"],
2299
- "paramType": "query",
2300
- "relatedEntity": "PrestadorDeServico"
2301
- },
2302
- "conditions": [
2303
- {
2304
- "type": "form",
2305
- "elements": [
2306
- {
2307
- "key": "POSSUI_LIMITE_CREDITO_INTERNACIONAL",
2308
- "value": 1,
2309
- "comparisonOperator": "==="
2310
- }
2311
- ]
2312
- }
2313
- ]
2314
- }
2315
- ]
2316
- }
2317
- ]
125
+ }
126
+ }
127
+ ],
128
+ "id": "movieForm",
129
+ "guards": "isAuthorized",
130
+ "elements": [
131
+ {
132
+ "type": "tab",
133
+ "id": "movieTab",
134
+ "tabs": [
135
+ {
136
+ "id": "mainTab",
137
+ "title": "Principal",
138
+ "elements": [
139
+ {
140
+ "label": "Foto",
141
+ "type": "file",
142
+ "dataType": "text",
143
+ "name": "pictureFile",
144
+ "storageConfig": {
145
+ "fileNameStrategy": "uuid",
146
+ "path": "movies",
147
+ "visibility": "public"
148
+ }
149
+ },
150
+ {
151
+ "type": "input",
152
+ "dataType": "text",
153
+ "label": "Nome",
154
+ "name": "name",
155
+ "isRequired": true
156
+ },
157
+ {
158
+ "type": "input",
159
+ "dataType": "wysiwyg",
160
+ "label": "Descrição",
161
+ "name": "description",
162
+ "isRequired": true
163
+ },
164
+ {
165
+ "type": "input",
166
+ "dataType": "date",
167
+ "label": "Data de lançamento",
168
+ "name": "releaseDate",
169
+ "isRequired": true
170
+ },
171
+ {
172
+ "type": "input",
173
+ "name": "imdbRating",
174
+ "label": "Pontuação do IMDb",
175
+ "dataType": "number",
176
+ "isRequired": true
177
+ },
178
+ {
179
+ "type": "autocomplete",
180
+ "dataType": "text",
181
+ "label": "Gêneros",
182
+ "name": "movieGenres",
183
+ "optionsApi": {
184
+ "endpoint": "/api/movies-genres",
185
+ "labelField": ["name"],
186
+ "valueField": "_id",
187
+ "paramsToFilter": ["name"],
188
+ "paramType": "query",
189
+ "relatedEntity": "MovieGenres"
190
+ },
191
+ "isMultiple": true,
192
+ "isRequired": true
193
+ },
194
+ {
195
+ "type": "input",
196
+ "name": "link1",
197
+ "label": "Link 1",
198
+ "dataType": "text",
199
+ "isRequired": true
200
+ },
201
+ {
202
+ "type": "input",
203
+ "name": "link2",
204
+ "label": "Link 2",
205
+ "dataType": "text"
206
+ },
207
+ {
208
+ "type": "input",
209
+ "name": "link3",
210
+ "label": "Link 3",
211
+ "dataType": "text"
2318
212
  }
213
+ ]
214
+ }
215
+ ]
216
+ }
217
+ ]
218
+ },
219
+ {
220
+ "componentType": "list",
221
+ "id": "movieList",
222
+ "title": "Lista de filmes",
223
+ "guards": ["isAuthorized"],
224
+ "dataSource": {
225
+ "endpoint": "/movies",
226
+ "paramType": "query",
227
+ "hasAuthentication": true
228
+ },
229
+ "properties": [
230
+ { "property": "pictureFile", "type": "image", "label": "Cartaz" },
231
+ { "property": "name", "type": "title", "label": "Nome" },
232
+ {
233
+ "property": "releaseDate",
234
+ "type": "subtitle",
235
+ "label": "Data de lançamento"
236
+ },
237
+ {
238
+ "property": "movieGenres.name",
239
+ "type": "subtitle",
240
+ "label": "Gênero"
241
+ },
242
+ {
243
+ "property": "description",
244
+ "type": "description",
245
+ "label": "Descrição",
246
+ "isHtml": true
247
+ }
248
+ ],
249
+ "callsToActionMenu": [
250
+ {
251
+ "label": "Editar",
252
+ "icon": "pencil",
253
+ "action": {
254
+ "link": {
255
+ "endpoint": "/movie-form",
256
+ "propertiesAsQueryParam": ["_id"]
257
+ }
258
+ }
259
+ },
260
+ {
261
+ "label": "Excluir",
262
+ "icon": "delete",
263
+ "action": {
264
+ "link": { "endpoint": "/movie-list" },
265
+ "request": {
266
+ "endpoint": "/movies",
267
+ "verb": "delete",
268
+ "propertiesAsPathParam": ["_id"],
269
+ "dialog": {
270
+ "title": "Excluir conteúdo",
271
+ "message": "Deseja realmente excluir esse conteúdo?"
2319
272
  }
2320
- ]
2321
- },
2322
- {
2323
- "title": "Negociação",
2324
- "id": "clienteTabNegociacao",
2325
- "elements": [
273
+ }
274
+ }
275
+ }
276
+ ]
277
+ },
278
+ {
279
+ "title": "Gerenciar gênero de filme",
280
+ "userStory": "Como um usuário autorizado, eu quero usar o formulário de gerenciamento de gênero de filme para criar e editar gêneros de filmes, fornecendo um nome e uma descrição para cada um. Isso me permite organizar e categorizar filmes de forma precisa no sistema.",
281
+ "componentType": "form",
282
+ "contracts": [
283
+ {
284
+ "id": "moviesGenres",
285
+ "endpoint": "/movie-genres",
286
+ "actions": ["create", "get", "getById", "update", "delete"],
287
+ "request": {
288
+ "entity": "moviesGenres",
289
+ "description": "",
290
+ "fields": [
2326
291
  {
2327
- "type": "inheritance",
2328
- "form": {
2329
- "id": "clienteNegociacaoForm",
2330
- "componentType": "form",
2331
- "title": "Gerenciamento de negociacoes do cliente",
2332
- "contracts": [
2333
- {
2334
- "id": "clienteNegociacao",
2335
- "endpoint": "/clientes/{clienteId}/negociacoes",
2336
- "actions": [
2337
- "create",
2338
- "delete",
2339
- "get",
2340
- "getById",
2341
- "update"
2342
- ],
2343
- "request": {
2344
- "entity": "CLIENTE_NEGOCIACAO",
2345
- "fields": [
2346
- {
2347
- "name": "MODALIDADE_OPERACAO_NEGOCIACAO",
2348
- "dataType": "integer",
2349
- "isRequired": true,
2350
- "enum": [1, 2, 3, 4]
2351
- },
2352
- {
2353
- "name": "VALOR_MINIMO_FATURAMENTO_MENSAL",
2354
- "dataType": "decimal",
2355
- "isRequired": true
2356
- },
2357
- {
2358
- "name": "VALOR_MAXIMO_FATURAMENTO_MENSAL",
2359
- "dataType": "decimal",
2360
- "isRequired": true
2361
- },
2362
- {
2363
- "name": "ESPECIALIDADE_ID",
2364
- "dataType": "uniqueidentifier",
2365
- "foreignKey": {
2366
- "entity": "NcmEspecialidade",
2367
- "connectionAttribute": "Id",
2368
- "relationship": "one-to-many"
2369
- }
2370
- },
2371
- {
2372
- "name": "SUBDIVISAO_ID",
2373
- "dataType": "uniqueidentifier",
2374
- "foreignKey": {
2375
- "entity": "Subdivisao",
2376
- "connectionAttribute": "Id",
2377
- "relationship": "one-to-many"
2378
- }
2379
- },
2380
- {
2381
- "name": "FATOR_INCIDENCIA_NEGOCIACAO",
2382
- "dataType": "integer",
2383
- "enum": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
2384
- },
2385
- {
2386
- "name": "TAXA_ADMINISTRATIVA_INTERNA",
2387
- "dataType": "decimal"
2388
- },
2389
- {
2390
- "name": "PARAMETRO_CALCULO_NEGOCIACAO",
2391
- "dataType": "integer",
2392
- "enum": [1, 2]
2393
- },
2394
- {
2395
- "name": "VALOR_CALCULO_NEGOCIACAO",
2396
- "dataType": "decimal"
2397
- },
2398
- { "name": "IR", "dataType": "decimal" },
2399
- { "name": "SPREAD", "dataType": "decimal" },
2400
- {
2401
- "name": "POSSUI_DESCONTO_NEGOCIACAO",
2402
- "dataType": "boolean"
2403
- },
2404
- {
2405
- "name": "TIPO_DESCONTO_NEGOCIACAO",
2406
- "dataType": "integer",
2407
- "enum": [1, 2]
2408
- },
2409
- {
2410
- "name": "VALOR_DESCONTO_NEGOCIACAO",
2411
- "dataType": "decimal"
2412
- },
2413
- {
2414
- "name": "FATOR_INCIDENCIA_DESCONTO_NEGOCIACAO",
2415
- "dataType": "integer",
2416
- "enum": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
2417
- },
2418
- {
2419
- "name": "NATUREZA_DESCONTO_NEGOCIACAO",
2420
- "dataType": "integer",
2421
- "enum": [1, 2]
2422
- }
2423
- ]
2424
- }
2425
- }
2426
- ],
2427
- "elements": [
2428
- {
2429
- "title": "Negociação",
2430
- "id": "negociacoes",
2431
- "type": "array",
2432
- "name": "negociacoes",
2433
- "businessRules": [
2434
- {
2435
- "rule": {
2436
- "description": "SE os dados da negociacao ja existir ENTAO deve evitar inserção"
2437
- }
2438
- },
2439
- {
2440
- "rule": {
2441
- "description": "SE o valor máximo de uma negociação for menor que o valor mínimo de outra negociação, com mesma modalidade de operação e especialidade e uf ENTAO deve evitar inserção"
2442
- }
2443
- },
2444
- {
2445
- "rule": {
2446
- "description": "SE o valor mínimo de uma negociação for maior que o valor máximo de outra negociação, com mesma modalidade de operação e especialidade e uf ENTAO deve evitar inserção"
2447
- }
2448
- }
2449
- ],
2450
- "elements": [
2451
- {
2452
- "title": "Dados da Negociação",
2453
- "id": "dadosNegociacaoFieldset",
2454
- "type": "fieldset",
2455
- "elements": [
2456
- {
2457
- "type": "select",
2458
- "dataType": "integer",
2459
- "label": "Modalidade de Operação",
2460
- "name": "MODALIDADE_OPERACAO_NEGOCIACAO",
2461
- "options": [
2462
- { "label": "CONTA E ORDEM", "value": 1 },
2463
- { "label": "CONTA PRÓPRIA", "value": 2 },
2464
- { "label": "ENCOMENDA", "value": 3 },
2465
- { "label": "DISTRIBUIÇÃO", "value": 4 }
2466
- ]
2467
- },
2468
- {
2469
- "type": "input",
2470
- "dataType": "decimal",
2471
- "label": "De (R$)",
2472
- "name": "VALOR_MINIMO_FATURAMENTO_MENSAL",
2473
- "todo": "Validar que o valor mínimo não seja maior que o valor máximo"
2474
- },
2475
- {
2476
- "type": "input",
2477
- "dataType": "decimal",
2478
- "label": "Até (R$)",
2479
- "name": "VALOR_MAXIMO_FATURAMENTO_MENSAL",
2480
- "todo": "Validar que o valor máximo não seja menor que o valor mínimo"
2481
- },
2482
- {
2483
- "type": "autocomplete",
2484
- "dataType": "uniqueidentifier",
2485
- "label": "Especialidade",
2486
- "name": "ESPECIALIDADE_ID",
2487
- "optionsApi": {
2488
- "endpoint": "/grupo-produto",
2489
- "labelField": ["nome"],
2490
- "valueField": "_id",
2491
- "paramsToFilter": ["nome"],
2492
- "paramType": "query",
2493
- "relatedEntity": "NcmEspecialidade"
2494
- },
2495
- "businessRules": [
2496
- {
2497
- "rule": {
2498
- "description": "SE tiver especialidade na tela ESPECIALIDADE ENTAO deve aparecer somente as que foram selecionadas la."
2499
- }
2500
- }
2501
- ]
2502
- },
2503
- {
2504
- "type": "autocomplete",
2505
- "dataType": "uniqueidentifier",
2506
- "label": "UF Desembaraço",
2507
- "name": "SUBDIVISAO_ID",
2508
- "optionsApi": {
2509
- "endpoint": "/subdivisao",
2510
- "labelField": ["nome", "codigo"],
2511
- "valueField": "_id",
2512
- "paramsToFilter": [
2513
- "nome",
2514
- "codigo",
2515
- "uf"
2516
- ],
2517
- "paramType": "query",
2518
- "relatedEntity": "Subdivisao"
2519
- }
2520
- },
2521
- {
2522
- "type": "select",
2523
- "dataType": "integer",
2524
- "label": "Fator Incidência Negociação",
2525
- "name": "FATOR_INCIDENCIA_NEGOCIACAO",
2526
- "options": [
2527
- {
2528
- "label": "BASE DE CALCULO DO ICMS",
2529
- "value": 1
2530
- },
2531
- { "label": "ICMS", "value": 2 },
2532
- {
2533
- "label": "REPASSE DO ICMS",
2534
- "value": 3
2535
- },
2536
- {
2537
- "label": "VALOR DA NOTA FISCAL",
2538
- "value": 4
2539
- },
2540
- {
2541
- "label": "INDICE DA NOTA FISCAL",
2542
- "value": 5
2543
- },
2544
- { "label": "CIF", "value": 6 },
2545
- { "label": "SALARIO MINIMO", "value": 7 },
2546
- { "label": "FRETE", "value": 8 },
2547
- { "label": "UNIDADE", "value": 9 },
2548
- { "label": "SPREAD", "value": 10 },
2549
- { "label": "IR", "value": 11 }
2550
- ]
2551
- },
2552
- {
2553
- "type": "input",
2554
- "dataType": "decimal",
2555
- "label": "Taxa Administrativa Interna",
2556
- "name": "TAXA_ADMINISTRATIVA_INTERNA",
2557
- "conditions": [
2558
- {
2559
- "type": "form",
2560
- "elements": [
2561
- {
2562
- "key": "MODALIDADE_OPERACAO_NEGOCIACAO",
2563
- "comparisonOperator": "===",
2564
- "value": 1
2565
- },
2566
- {
2567
- "key": "MODALIDADE_OPERACAO_NEGOCIACAO",
2568
- "comparisonOperator": "===",
2569
- "value": 2
2570
- }
2571
- ]
2572
- }
2573
- ]
2574
- },
2575
- {
2576
- "type": "select",
2577
- "dataType": "integer",
2578
- "label": "Parâmetro de Cálculo",
2579
- "name": "PARAMETRO_CALCULO_NEGOCIACAO",
2580
- "conditions": [
2581
- {
2582
- "type": "form",
2583
- "elements": [
2584
- {
2585
- "key": "MODALIDADE_OPERACAO_NEGOCIACAO",
2586
- "comparisonOperator": "===",
2587
- "value": 1
2588
- },
2589
- {
2590
- "key": "MODALIDADE_OPERACAO_NEGOCIACAO",
2591
- "comparisonOperator": "===",
2592
- "value": 2
2593
- }
2594
- ]
2595
- }
2596
- ],
2597
- "options": [
2598
- { "label": "VALOR", "value": 1 },
2599
- { "label": "PERCENTUAL", "value": 2 }
2600
- ]
2601
- },
2602
- {
2603
- "type": "input",
2604
- "dataType": "decimal",
2605
- "label": "Valor",
2606
- "minLength": 0,
2607
- "name": "VALOR_CALCULO_NEGOCIACAO",
2608
- "conditions": [
2609
- {
2610
- "type": "form",
2611
- "elements": [
2612
- {
2613
- "key": "PARAMETRO_CALCULO_NEGOCIACAO",
2614
- "comparisonOperator": "!==",
2615
- "value": null
2616
- }
2617
- ]
2618
- }
2619
- ]
2620
- },
2621
- {
2622
- "type": "input",
2623
- "dataType": "decimal",
2624
- "label": "IR",
2625
- "minLength": 0,
2626
- "name": "IR",
2627
- "conditions": [
2628
- {
2629
- "type": "form",
2630
- "elements": [
2631
- {
2632
- "key": "MODALIDADE_OPERACAO_NEGOCIACAO",
2633
- "comparisonOperator": "===",
2634
- "value": 3
2635
- },
2636
- {
2637
- "key": "MODALIDADE_OPERACAO_NEGOCIACAO",
2638
- "comparisonOperator": "===",
2639
- "value": 4
2640
- }
2641
- ]
2642
- }
2643
- ]
2644
- },
2645
- {
2646
- "type": "input",
2647
- "dataType": "decimal",
2648
- "label": "Spread",
2649
- "minLength": 0,
2650
- "name": "SPREAD",
2651
- "conditions": [
2652
- {
2653
- "type": "form",
2654
- "elements": [
2655
- {
2656
- "key": "MODALIDADE_OPERACAO_NEGOCIACAO",
2657
- "comparisonOperator": "===",
2658
- "value": 3
2659
- },
2660
- {
2661
- "key": "MODALIDADE_OPERACAO_NEGOCIACAO",
2662
- "comparisonOperator": "===",
2663
- "value": 4
2664
- }
2665
- ]
2666
- }
2667
- ]
2668
- }
2669
- ]
2670
- },
2671
- {
2672
- "title": "Dados de desconto",
2673
- "id": "dadosDescontoFieldset",
2674
- "type": "fieldset",
2675
- "elements": [
2676
- {
2677
- "type": "select",
2678
- "dataType": "integer",
2679
- "label": "Desconto",
2680
- "name": "POSSUI_DESCONTO",
2681
- "isRequired": true,
2682
- "options": [
2683
- { "label": "SIM", "value": 1 },
2684
- {
2685
- "label": "NÃO",
2686
- "value": 0,
2687
- "isSelected": true
2688
- }
2689
- ]
2690
- },
2691
- {
2692
- "type": "select",
2693
- "dataType": "integer",
2694
- "label": "Tipo de Desconto",
2695
- "name": "TIPO_DESCONTO",
2696
- "options": [
2697
- { "label": "VALOR", "value": 1 },
2698
- { "label": "PERCENTUAL", "value": 2 }
2699
- ],
2700
- "conditions": [
2701
- {
2702
- "type": "form",
2703
- "elements": [
2704
- {
2705
- "key": "POSSUI_DESCONTO",
2706
- "value": 1,
2707
- "comparisonOperator": "==="
2708
- }
2709
- ]
2710
- }
2711
- ]
2712
- },
2713
- {
2714
- "type": "input",
2715
- "dataType": "decimal",
2716
- "label": "Valor",
2717
- "name": "VALOR_DESCONTO",
2718
- "conditions": [
2719
- {
2720
- "type": "form",
2721
- "elements": [
2722
- {
2723
- "key": "POSSUI_DESCONTO",
2724
- "value": 1,
2725
- "comparisonOperator": "==="
2726
- }
2727
- ]
2728
- }
2729
- ]
2730
- },
2731
- {
2732
- "type": "select",
2733
- "dataType": "integer",
2734
- "label": "Fator de Incidência",
2735
- "name": "FATOR_INCIDENCIA_DESCONTO",
2736
- "options": [
2737
- {
2738
- "label": "BASE DE CALCULO DO ICMS",
2739
- "value": 1
2740
- },
2741
- { "label": "ICMS", "value": 2 },
2742
- {
2743
- "label": "REPASSE DO ICMS",
2744
- "value": 3
2745
- },
2746
- {
2747
- "label": "VALOR DA NOTA FISCAL",
2748
- "value": 4
2749
- },
2750
- {
2751
- "label": "INDICE DA NOTA FISCAL",
2752
- "value": 5
2753
- },
2754
- { "label": "CIF", "value": 6 },
2755
- { "label": "SALARIO MINIMO", "value": 7 },
2756
- { "label": "FRETE", "value": 8 },
2757
- { "label": "UNIDADE", "value": 9 },
2758
- { "label": "SPREAD", "value": 10 },
2759
- { "label": "IR", "value": 11 }
2760
- ],
2761
- "conditions": [
2762
- {
2763
- "type": "form",
2764
- "elements": [
2765
- {
2766
- "key": "POSSUI_DESCONTO",
2767
- "value": 1,
2768
- "comparisonOperator": "==="
2769
- }
2770
- ]
2771
- }
2772
- ]
2773
- },
2774
- {
2775
- "type": "select",
2776
- "dataType": "integer",
2777
- "label": "Natureza de Desconto",
2778
- "name": "NATUREZA_DESCONTO",
2779
- "options": [
2780
- {
2781
- "label": "DESCONTO INCONDICIONAL",
2782
- "value": 1
2783
- },
2784
- {
2785
- "label": "DESCONTO FINANCEIRO",
2786
- "value": 2
2787
- }
2788
- ],
2789
- "conditions": [
2790
- {
2791
- "type": "form",
2792
- "elements": [
2793
- {
2794
- "key": "POSSUI_DESCONTO_NEGOCIACAO",
2795
- "value": 1,
2796
- "comparisonOperator": "==="
2797
- }
2798
- ]
2799
- }
2800
- ]
2801
- }
2802
- ]
2803
- }
2804
- ]
2805
- }
2806
- ]
2807
- }
292
+ "name": "name",
293
+ "dataType": "text",
294
+ "isRequired": true,
295
+ "maxSize": 255
296
+ },
297
+ {
298
+ "name": "description",
299
+ "dataType": "text",
300
+ "isRequired": true,
301
+ "maxSize": 255
2808
302
  }
2809
303
  ]
2810
- },
2811
- {
2812
- "title": "Radar",
2813
- "id": "clienteTabRadar",
2814
- "elements": [
304
+ }
305
+ }
306
+ ],
307
+ "id": "movieGenreForm",
308
+ "guards": "isAuthorized",
309
+ "elements": [
310
+ {
311
+ "type": "input",
312
+ "dataType": "text",
313
+ "label": "Nome",
314
+ "name": "name",
315
+ "isRequired": true
316
+ },
317
+ {
318
+ "type": "input",
319
+ "dataType": "wysiwyg",
320
+ "label": "Descrição",
321
+ "name": "description",
322
+ "isRequired": true
323
+ }
324
+ ]
325
+ },
326
+ {
327
+ "componentType": "list",
328
+ "id": "movieGenreList",
329
+ "title": "Lista de gêneros de filmes",
330
+ "guards": ["isAuthorized"],
331
+ "dataSource": {
332
+ "endpoint": "/movies-genres",
333
+ "paramType": "query",
334
+ "hasAuthentication": true
335
+ },
336
+ "properties": [
337
+ { "property": "name", "type": "title", "label": "Nome" },
338
+ {
339
+ "property": "description",
340
+ "type": "description",
341
+ "label": "Descrição"
342
+ }
343
+ ],
344
+ "callsToActionMenu": [
345
+ {
346
+ "label": "Editar",
347
+ "icon": "pencil",
348
+ "action": {
349
+ "link": {
350
+ "endpoint": "/movie-genre-form",
351
+ "propertiesAsQueryParam": ["_id"]
352
+ }
353
+ }
354
+ },
355
+ {
356
+ "label": "Excluir",
357
+ "icon": "delete",
358
+ "action": {
359
+ "link": { "endpoint": "/movie-genre-list" },
360
+ "request": {
361
+ "endpoint": "/movies-genres",
362
+ "verb": "delete",
363
+ "propertiesAsPathParam": ["_id"],
364
+ "dialog": {
365
+ "title": "Excluir conteúdo",
366
+ "message": "Deseja realmente excluir esse conteúdo?"
367
+ }
368
+ }
369
+ }
370
+ }
371
+ ]
372
+ },
373
+ {
374
+ "title": "Gerenciar episódio",
375
+ "componentType": "form",
376
+ "id": "movieEpisodeForm",
377
+ "contracts": [
378
+ {
379
+ "id": "moviesEpisodes",
380
+ "endpoint": "/movies-episodes",
381
+ "actions": ["create", "get", "getById", "update", "delete"],
382
+ "request": {
383
+ "entity": "MovieEpisode",
384
+ "description": "Represents an episode of a TV series or show.",
385
+ "fields": [
2815
386
  {
2816
- "type": "inheritance",
2817
- "form": {
2818
- "title": "Radar",
2819
- "componentType": "form",
2820
- "id": "clienteRadarForm",
2821
- "contracts": [
2822
- {
2823
- "id": "clienteRadar",
2824
- "endpoint": "/clientes/{clienteId}/radar",
2825
- "actions": [
2826
- "create",
2827
- "update",
2828
- "delete",
2829
- "get",
2830
- "getById"
2831
- ],
2832
- "request": {
2833
- "entity": "CLIENTE_RADAR",
2834
- "fields": [
2835
- {
2836
- "name": "MODALIDADE",
2837
- "dataType": "integer",
2838
- "isRequired": true
2839
- },
2840
- {
2841
- "name": "LIMITE_RADAR",
2842
- "dataType": "float",
2843
- "isRequired": false
2844
- },
2845
- {
2846
- "name": "DATA_OBTENCAO",
2847
- "dataType": "datetime2",
2848
- "isRequired": true
2849
- },
2850
- {
2851
- "name": "DATA_VENCIMENTO",
2852
- "dataType": "datetime2",
2853
- "isRequired": false
2854
- },
2855
- {
2856
- "name": "SALDO_RADAR",
2857
- "dataType": "float",
2858
- "isRequired": false
2859
- }
2860
- ]
2861
- }
2862
- },
2863
- {
2864
- "id": "processosVinculadosRadar",
2865
- "endpoint": "/clientes/{clienteId}/radar/{radarId}/processos",
2866
- "actions": [
2867
- "create",
2868
- "update",
2869
- "delete",
2870
- "get",
2871
- "getById"
2872
- ],
2873
- "request": {
2874
- "entity": "CLIENTE_RADAR_PROCESSO",
2875
- "fields": [
2876
- {
2877
- "name": "PROCESSO_ID",
2878
- "dataType": "nvarchar",
2879
- "isRequired": true
2880
- },
2881
- {
2882
- "name": "VMLD",
2883
- "dataType": "float",
2884
- "isRequired": true
2885
- },
2886
- {
2887
- "name": "DATA_LIBERACAO",
2888
- "dataType": "datetime2"
2889
- }
2890
- ]
2891
- }
2892
- }
2893
- ],
2894
- "elements": [
2895
- {
2896
- "type": "select",
2897
- "dataType": "integer",
2898
- "label": "Modalidade",
2899
- "name": "MODALIDADE",
2900
- "isRequired": true,
2901
- "options": [
2902
- { "label": "RADAR EXPRESSO", "value": 1 },
2903
- { "label": "RADAR LIMITADO", "value": 2 },
2904
- { "label": "RADAR ILIMITADO", "value": 3 }
2905
- ]
2906
- },
2907
- {
2908
- "type": "input",
2909
- "dataType": "float",
2910
- "label": "Limite",
2911
- "name": "LIMITE_RADAR",
2912
- "isRequired": true,
2913
- "isDisabled": true,
2914
- "businessRules": [
2915
- {
2916
- "rule": {
2917
- "description": "SE MODALIDADE == 1 ENTAO deve ser preenchido com USD 50.000,00"
2918
- }
2919
- },
2920
- {
2921
- "rule": {
2922
- "description": "SE MODALIDADE == 2 ENTAO deve ser preenchido com USD 150.000,00"
2923
- }
2924
- }
2925
- ],
2926
- "conditions": [
2927
- {
2928
- "type": "form",
2929
- "elements": [
2930
- {
2931
- "key": "modalidadeRadar",
2932
- "comparisonOperator": "!==",
2933
- "value": 3
2934
- }
2935
- ]
2936
- }
2937
- ]
2938
- },
2939
- {
2940
- "type": "input",
2941
- "dataType": "datetime2",
2942
- "label": "Obtenção",
2943
- "name": "DATA_OBTENCAO",
2944
- "isRequired": true
2945
- },
2946
- {
2947
- "type": "input",
2948
- "dataType": "datetime2",
2949
- "label": "Vencimento",
2950
- "name": "DATA_VENCIMENTO"
2951
- },
2952
- {
2953
- "type": "input",
2954
- "dataType": "float",
2955
- "label": "Saldo do Radar (em dólares)",
2956
- "name": "SALDO_RADAR",
2957
- "isDisabled": true
2958
- },
2959
- {
2960
- "title": "Processo",
2961
- "id": "processosVinculadosRadarFieldset",
2962
- "type": "fieldset",
2963
- "elements": [
2964
- {
2965
- "title": "Processo",
2966
- "id": "processos",
2967
- "type": "array",
2968
- "name": "processos",
2969
- "elements": [
2970
- {
2971
- "type": "autocomplete",
2972
- "dataType": "nvarchar",
2973
- "label": "Processo",
2974
- "name": "PROCESSO_ID",
2975
- "isRequired": true,
2976
- "optionsApi": {
2977
- "endpoint": "/clientes/{id}/radar/processos/autocomplete",
2978
- "labelField": ["numero", "cliente.nome"],
2979
- "valueField": "_id",
2980
- "paramsToFilter": [
2981
- "numero",
2982
- "cliente.nome",
2983
- "clienteId"
2984
- ],
2985
- "paramType": "query",
2986
- "relatedEntity": "PROCESSOS",
2987
- "filtersFromOtherFormFields": [
2988
- {
2989
- "formFieldName": "_id",
2990
- "filterPropertyName": "clienteId"
2991
- }
2992
- ]
2993
- }
2994
- },
2995
- {
2996
- "type": "input",
2997
- "dataType": "float",
2998
- "label": "VMLD",
2999
- "name": "VMLD",
3000
- "isRequired": true
3001
- },
3002
- {
3003
- "type": "input",
3004
- "dataType": "datetime2",
3005
- "label": "Data de Liberação",
3006
- "name": "DATA_LIBERACAO"
3007
- }
3008
- ]
3009
- }
3010
- ]
3011
- }
3012
- ]
387
+ "name": "_id",
388
+ "dataType": "uniqueidentifier",
389
+ "isRequired": true,
390
+ "isPrimaryKey": true
391
+ },
392
+ {
393
+ "name": "movieId",
394
+ "dataType": "uniqueidentifier",
395
+ "isRequired": true,
396
+ "foreignKey": {
397
+ "entity": "Movie",
398
+ "connectionAttribute": "_id",
399
+ "relationship": "one-to-many"
3013
400
  }
3014
- }
3015
- ]
3016
- },
3017
- {
3018
- "title": "Despachante",
3019
- "id": "clienteTabDespachante",
3020
- "elements": [
401
+ },
402
+ {
403
+ "name": "title",
404
+ "dataType": "nvarchar",
405
+ "isRequired": true
406
+ },
3021
407
  {
3022
- "type": "inheritance",
3023
- "form": {
3024
- "id": "clienteDespachanteForm",
3025
- "title": "Gerenciamento de despachante do cliente",
3026
- "componentType": "form",
3027
- "contracts": [
3028
- {
3029
- "id": "clienteDespachante",
3030
- "endpoint": "/clientes/{clienteId}/despachantes",
3031
- "actions": [
3032
- "create",
3033
- "delete",
3034
- "get",
3035
- "getById",
3036
- "update"
3037
- ],
3038
- "request": {
3039
- "entity": "CLIENTE_DESPACHANTE",
3040
- "fields": [
3041
- {
3042
- "name": "DESPACHANTE_ID",
3043
- "dataType": "uniqueidentifier",
3044
- "isRequired": true,
3045
- "foreignKey": {
3046
- "entity": "PrestadorDeServico",
3047
- "connectionAttribute": "Id",
3048
- "relationship": "one-to-many"
3049
- }
3050
- },
3051
- {
3052
- "name": "DESPESA_ID",
3053
- "dataType": "uniqueidentifier",
3054
- "isRequired": true,
3055
- "foreignKey": {
3056
- "entity": "Despesa",
3057
- "connectionAttribute": "Id",
3058
- "relationship": "one-to-many"
3059
- }
3060
- },
3061
- {
3062
- "name": "PARAMETRO_CALCULO",
3063
- "dataType": "integer",
3064
- "isRequired": true
3065
- },
3066
- {
3067
- "name": "FATOR_INCIDENCIA",
3068
- "dataType": "integer",
3069
- "isRequired": true
3070
- },
3071
- { "name": "VALOR", "dataType": "integer" },
3072
- {
3073
- "name": "FATOR_INCIDENCIA_LI",
3074
- "dataType": "integer"
3075
- },
3076
- { "name": "LI", "dataType": "integer" },
3077
- { "name": "MAPA", "dataType": "integer" },
3078
- { "name": "SDA", "dataType": "integer" },
3079
- {
3080
- "name": "ESPECIALIDADE_ID",
3081
- "dataType": "uniqueidentifier",
3082
- "foreignKey": {
3083
- "entity": "NcmEspecialidade",
3084
- "connectionAttribute": "Id",
3085
- "relationship": "one-to-many"
3086
- }
3087
- },
3088
- {
3089
- "name": "SUBDIVISAO_ID",
3090
- "dataType": "uniqueidentifier",
3091
- "foreignKey": {
3092
- "entity": "Subdivisao",
3093
- "connectionAttribute": "Id",
3094
- "relationship": "one-to-many"
3095
- }
3096
- },
3097
- {
3098
- "name": "TIPO_CARGA",
3099
- "dataType": "integer",
3100
- "enum": [1, 2, 3]
3101
- },
3102
- {
3103
- "name": "ENTREPOSTO_ADUANEIRO",
3104
- "dataType": "integer"
3105
- }
3106
- ]
3107
- }
3108
- }
3109
- ],
3110
- "elements": [
3111
- {
3112
- "title": "Despachante Vinculado",
3113
- "id": "despachantesVinculados",
3114
- "type": "array",
3115
- "name": "despachantesVinculados",
3116
- "businessRules": [
3117
- {
3118
- "rule": {
3119
- "description": "SE os campos DESPACHANTE_ID, DESPESA_ID, PARAMETRO_CALCULO, FATOR_INCIDENCIA, ESPECIALIDADE_ID, ESTADO_ID, TIPO_CARGA e ENTREPOSTO_ADUANEIRO estiverem duplicados para o mesmo cliente ENTÃO deve evitar inserção"
3120
- }
3121
- }
3122
- ],
3123
- "elements": [
3124
- {
3125
- "type": "autocomplete",
3126
- "dataType": "uniqueidentifier",
3127
- "label": "Despachante",
3128
- "name": "DESPACHANTE_ID",
3129
- "isRequired": true,
3130
- "optionsApi": {
3131
- "endpoint": "/despachantes",
3132
- "labelField": ["termo"],
3133
- "valueField": "_id",
3134
- "paramsToFilter": ["termo"],
3135
- "paramType": "query",
3136
- "relatedEntity": "PRESTADOR_SERVICO"
3137
- }
3138
- },
3139
- {
3140
- "type": "autocomplete",
3141
- "dataType": "uniqueidentifier",
3142
- "label": "Despesa",
3143
- "name": "DESPESA_ID",
3144
- "isRequired": true,
3145
- "optionsApi": {
3146
- "endpoint": "/despesas",
3147
- "labelField": ["termo"],
3148
- "valueField": "_id",
3149
- "paramsToFilter": ["termo"],
3150
- "paramType": "query",
3151
- "relatedEntity": "DESPESA"
3152
- }
3153
- },
3154
- {
3155
- "type": "select",
3156
- "dataType": "integer",
3157
- "label": "Parâmetro de Cálculo",
3158
- "name": "PARAMETRO_CALCULO",
3159
- "isRequired": true,
3160
- "options": [
3161
- { "label": "VALOR", "value": 1 },
3162
- { "label": "PERCENTUAL", "value": 2 }
3163
- ]
3164
- },
3165
- {
3166
- "type": "select",
3167
- "dataType": "integer",
3168
- "label": "Fator de Incidência",
3169
- "name": "FATOR_INCIDENCIA",
3170
- "isRequired": true,
3171
- "options": [
3172
- { "label": "SALÁRIO MÍNIMO", "value": 1 },
3173
- { "label": "VALOR FIXO", "value": 2 },
3174
- { "label": "PERCENTUAL", "value": 3 },
3175
- { "label": "GARRAFAS", "value": 4 },
3176
- { "label": "UNIDADE", "value": 5 }
3177
- ],
3178
- "conditions": [
3179
- {
3180
- "type": "form",
3181
- "elements": [
3182
- {
3183
- "key": "FATOR_INCIDENCIA",
3184
- "comparisonOperator": "===",
3185
- "value": 2
3186
- }
3187
- ],
3188
- "conditionResponse": "fillFields",
3189
- "fillFields": [
3190
- {
3191
- "fieldKey": "VALOR",
3192
- "value": "TODO: ADICIONAR SALARIO MINIMO ANUAL"
3193
- }
3194
- ]
3195
- }
3196
- ]
3197
- },
3198
- {
3199
- "type": "input",
3200
- "dataType": "integer",
3201
- "label": "Valor",
3202
- "name": "VALOR",
3203
- "isRequired": true,
3204
- "conditions": [
3205
- {
3206
- "type": "form",
3207
- "elements": [
3208
- {
3209
- "key": "FATOR_INCIDENCIA",
3210
- "comparisonOperator": "===",
3211
- "value": 2
3212
- }
3213
- ],
3214
- "conditionResponse": "fillFields",
3215
- "fillFields": [
3216
- {
3217
- "fieldKey": "VALOR",
3218
- "value": "TODO: ADICIONAR SALARIO MINIMO ANUAL"
3219
- }
3220
- ]
3221
- }
3222
- ]
3223
- },
3224
- {
3225
- "type": "select",
3226
- "dataType": "integer",
3227
- "label": "Fator de Incidência LI",
3228
- "name": "FATOR_INCIDENCIA_LI",
3229
- "options": [
3230
- { "label": "1 A 3 LIS", "value": 1 },
3231
- { "label": "3 A 5 LIS", "value": 2 }
3232
- ]
3233
- },
3234
- {
3235
- "type": "input",
3236
- "dataType": "integer",
3237
- "label": "LI",
3238
- "name": "LI"
3239
- },
3240
- {
3241
- "type": "input",
3242
- "dataType": "integer",
3243
- "label": "MAPA",
3244
- "name": "MAPA"
3245
- },
3246
- {
3247
- "type": "input",
3248
- "dataType": "integer",
3249
- "label": "SDA",
3250
- "name": "SDA"
3251
- },
3252
- {
3253
- "type": "autocomplete",
3254
- "dataType": "uniqueidentifier",
3255
- "label": "Especialidade",
3256
- "name": "ESPECIALIDADE_ID",
3257
- "optionsApi": {
3258
- "endpoint": "/grupo-produto",
3259
- "labelField": ["nome"],
3260
- "valueField": "_id",
3261
- "paramsToFilter": ["nome"],
3262
- "paramType": "query",
3263
- "relatedEntity": "GRUPO_PRODUTO"
3264
- },
3265
- "businessRules": [
3266
- {
3267
- "rule": {
3268
- "description": "SE tiver especialidade na tela ESPECIALIDADE ENTAO deve aparecer somente as que foram selecionadas la."
3269
- }
3270
- }
3271
- ]
3272
- },
3273
- {
3274
- "type": "autocomplete",
3275
- "dataType": "uniqueidentifier",
3276
- "label": "UF Desembaraço",
3277
- "name": "SUBDIVISAO_ID",
3278
- "optionsApi": {
3279
- "endpoint": "/subdivisao",
3280
- "labelField": ["nome", "codigo"],
3281
- "valueField": "_id",
3282
- "paramsToFilter": ["nome", "codigo", "uf"],
3283
- "paramType": "query",
3284
- "relatedEntity": "SUBDIVISAO"
3285
- }
3286
- },
3287
- {
3288
- "type": "select",
3289
- "dataType": "integer",
3290
- "label": "Tipo de Carga",
3291
- "name": "TIPO_CARGA",
3292
- "options": [
3293
- { "label": "COMPLETA - FTL", "value": 1 },
3294
- { "label": "FRACIONADA - LTL", "value": 2 },
3295
- { "label": "PARCIAL - PTL", "value": 3 }
3296
- ]
3297
- },
3298
- {
3299
- "type": "select",
3300
- "dataType": "integer",
3301
- "label": "Entreposto Aduaneiro",
3302
- "name": "ENTREPOSTO_ADUANEIRO",
3303
- "options": [
3304
- { "label": "SIM", "value": 1 },
3305
- {
3306
- "label": "NÃO",
3307
- "value": 0,
3308
- "isSelected": true
3309
- }
3310
- ]
3311
- }
3312
- ]
3313
- }
3314
- ]
408
+ "name": "description",
409
+ "dataType": "longtext",
410
+ "isRequired": true
411
+ },
412
+ {
413
+ "name": "releaseDate",
414
+ "dataType": "datetime2",
415
+ "isRequired": true
416
+ },
417
+ {
418
+ "name": "characters",
419
+ "dataType": "uniqueidentifier",
420
+ "isRequired": false,
421
+ "foreignKey": {
422
+ "entity": "Character",
423
+ "connectionAttribute": "_id",
424
+ "relationship": "many-to-many"
3315
425
  }
3316
426
  }
3317
427
  ]
3318
- },
3319
- {
3320
- "title": "Documentos",
3321
- "id": "clienteTabDocumentos",
3322
- "elements": [
428
+ }
429
+ }
430
+ ],
431
+ "elements": [
432
+ {
433
+ "type": "array",
434
+ "id": "episodes",
435
+ "name": "episodes",
436
+ "title": "Episódio",
437
+ "elements": [
438
+ {
439
+ "type": "input",
440
+ "dataType": "text",
441
+ "label": "Título do episódio",
442
+ "name": "episodeTitle",
443
+ "isRequired": true
444
+ },
445
+ {
446
+ "type": "input",
447
+ "dataType": "wysiwyg",
448
+ "label": "Descrição do episódio",
449
+ "name": "episodeDescription"
450
+ },
451
+ {
452
+ "type": "input",
453
+ "dataType": "date",
454
+ "label": "Data de lançamento do episódio",
455
+ "name": "episodeReleaseDate"
456
+ },
457
+ {
458
+ "type": "autocomplete",
459
+ "dataType": "text",
460
+ "name": "charactersId",
461
+ "label": "Personagens no episódio",
462
+ "optionsApi": {
463
+ "endpoint": "/characters",
464
+ "labelField": ["characterName"],
465
+ "valueField": "_id",
466
+ "paramsToFilter": ["characterName"],
467
+ "paramType": "query",
468
+ "relatedEntity": "Character"
469
+ }
470
+ }
471
+ ]
472
+ }
473
+ ]
474
+ },
475
+ {
476
+ "componentType": "list",
477
+ "id": "movieEpisodeList",
478
+ "title": "Lista de episódios de filmes",
479
+ "guards": ["isAuthorized"],
480
+ "dataSource": {
481
+ "endpoint": "/movies-episodes",
482
+ "paramType": "query",
483
+ "hasAuthentication": true
484
+ },
485
+ "properties": [
486
+ { "property": "episodeTitle", "type": "title", "label": "Título" },
487
+ {
488
+ "property": "episodeDescription",
489
+ "type": "description",
490
+ "label": "Descrição"
491
+ }
492
+ ],
493
+ "callsToActionMenu": [
494
+ {
495
+ "label": "Editar",
496
+ "icon": "pencil",
497
+ "action": {
498
+ "link": {
499
+ "endpoint": "/movie-episode-form",
500
+ "propertiesAsQueryParam": ["_id"]
501
+ }
502
+ }
503
+ },
504
+ {
505
+ "label": "Excluir",
506
+ "icon": "delete",
507
+ "action": {
508
+ "link": { "endpoint": "/movie-episode-list" },
509
+ "request": {
510
+ "endpoint": "/movies-episodes",
511
+ "verb": "delete",
512
+ "propertiesAsPathParam": ["_id"],
513
+ "dialog": {
514
+ "title": "Excluir conteúdo",
515
+ "message": "Deseja realmente excluir esse conteúdo?"
516
+ }
517
+ }
518
+ }
519
+ }
520
+ ]
521
+ }
522
+ ]
523
+ },
524
+ {
525
+ "id": "characterModule",
526
+ "title": "Personagem",
527
+ "icon": "character",
528
+ "components": [
529
+ {
530
+ "title": "Personagem",
531
+ "userStory": "Como um usuário autorizado, quero usar o formulário de personagem para criar e editar personagens, fornecendo um nome, uma descrição, um tipo (como \"protagonista\" ou \"antagonista\") e um gênero para cada um. Isso me permite manter um registro detalhado e organizado dos personagens no sistema.",
532
+ "componentType": "form",
533
+ "id": "characterForm",
534
+ "contracts": [
535
+ {
536
+ "id": "characters",
537
+ "endpoint": "/characters",
538
+ "actions": ["create", "get", "getById", "update", "delete"],
539
+ "request": {
540
+ "entity": "Character",
541
+ "description": "Represents a character in a story or narrative.",
542
+ "fields": [
3323
543
  {
3324
- "type": "inheritance",
3325
- "form": {
3326
- "id": "clienteDocumentosForm",
3327
- "title": "Gerenciamento de documentos do cliente",
3328
- "componentType": "form",
3329
- "contracts": [
3330
- {
3331
- "id": "clienteDocumentos",
3332
- "endpoint": "/clientes/{clienteId}/documentos",
3333
- "actions": [
3334
- "create",
3335
- "delete",
3336
- "get",
3337
- "getById",
3338
- "update"
3339
- ],
3340
- "request": {
3341
- "entity": "CLIENTE_DOCUMENTO",
3342
- "fields": [
3343
- {
3344
- "name": "ESPECIE_DOCUMENTO_ID",
3345
- "dataType": "uniqueidentifier",
3346
- "isRequired": true,
3347
- "foreignKey": {
3348
- "entity": "EspecieDeDocumento",
3349
- "connectionAttribute": "Id",
3350
- "relationship": "one-to-many"
3351
- }
3352
- },
3353
- {
3354
- "name": "APELIDO",
3355
- "dataType": "nvarchar",
3356
- "isRequired": true
3357
- },
3358
- {
3359
- "name": "TIPO_DOCUMENTO",
3360
- "dataType": "integer",
3361
- "isRequired": true,
3362
- "enum": [1, 2, 3]
3363
- },
3364
- {
3365
- "name": "DATA_VALIDADE",
3366
- "dataType": "datetime2"
3367
- },
3368
- {
3369
- "name": "ARQUIVO",
3370
- "dataType": "nvarchar",
3371
- "isRequired": true
3372
- }
3373
- ]
3374
- }
3375
- }
3376
- ],
3377
- "elements": [
3378
- {
3379
- "type": "array",
3380
- "id": "documentos",
3381
- "title": "Documento",
3382
- "name": "DOCUMENTOS",
3383
- "elements": [
3384
- {
3385
- "type": "autocomplete",
3386
- "dataType": "uniqueidentifier",
3387
- "label": "Nome",
3388
- "name": "ESPECIE_DOCUMENTO_ID",
3389
- "isRequired": true,
3390
- "optionsApi": {
3391
- "endpoint": "/especies-de-documento",
3392
- "labelField": ["termo"],
3393
- "valueField": "_id",
3394
- "paramsToFilter": ["termo"],
3395
- "paramType": "query",
3396
- "relatedEntity": "ESPECIE_DOCUMENTO"
3397
- }
3398
- },
3399
- {
3400
- "type": "input",
3401
- "dataType": "nvarchar",
3402
- "label": "Apelido",
3403
- "name": "APELIDO",
3404
- "isRequired": true
3405
- },
3406
- {
3407
- "type": "select",
3408
- "dataType": "integer",
3409
- "label": "Tipo de Documento",
3410
- "name": "TIPO_DOCUMENTO",
3411
- "isRequired": true,
3412
- "options": [
3413
- { "label": "CÓPIA", "value": 1 },
3414
- { "label": "ORIGINAL", "value": 2 },
3415
- { "label": "CÓPIA ASSINADA", "value": 3 }
3416
- ]
3417
- },
3418
- {
3419
- "type": "input",
3420
- "dataType": "datetime2",
3421
- "label": "Data de Validade",
3422
- "name": "DATA_VALIDADE"
3423
- },
3424
- {
3425
- "type": "file",
3426
- "dataType": "nvarchar",
3427
- "label": "Selecionar Arquivo",
3428
- "name": "ARQUIVO",
3429
- "storageConfig": {
3430
- "fileNameStrategy": "uuid",
3431
- "path": "",
3432
- "visibility": "private"
3433
- },
3434
- "isRequired": true
3435
- }
3436
- ]
3437
- }
3438
- ]
3439
- }
544
+ "name": "_id",
545
+ "dataType": "uniqueidentifier",
546
+ "isRequired": true,
547
+ "isPrimaryKey": true
548
+ },
549
+ {
550
+ "name": "characterName",
551
+ "dataType": "nvarchar",
552
+ "isRequired": true
553
+ },
554
+ {
555
+ "name": "characterImage",
556
+ "dataType": "nvarchar",
557
+ "isRequired": false
558
+ },
559
+ {
560
+ "name": "characterDescription",
561
+ "dataType": "longtext",
562
+ "isRequired": false
563
+ },
564
+ {
565
+ "name": "characterType",
566
+ "dataType": "nvarchar",
567
+ "enum": [
568
+ "protagonist",
569
+ "antagonist",
570
+ "hero",
571
+ "villain",
572
+ "sidekick",
573
+ "supporting"
574
+ ],
575
+ "isRequired": false
576
+ },
577
+ {
578
+ "name": "characterGender",
579
+ "dataType": "nvarchar",
580
+ "enum": ["male", "female", "other"],
581
+ "isRequired": false
3440
582
  }
3441
583
  ]
3442
- },
3443
- {
3444
- "title": "Relatório",
3445
- "id": "clienteTabRelatorio",
3446
- "elements": []
3447
584
  }
3448
- ]
585
+ }
586
+ ],
587
+ "guards": "isAuthorized",
588
+ "elements": [
589
+ {
590
+ "type": "input",
591
+ "dataType": "text",
592
+ "label": "Nome do personagem",
593
+ "name": "characterName",
594
+ "isRequired": true
595
+ },
596
+ {
597
+ "label": "Foto do personagem",
598
+ "type": "file",
599
+ "dataType": "text",
600
+ "name": "characterImage",
601
+ "storageConfig": {
602
+ "fileNameStrategy": "uuid",
603
+ "path": "characters",
604
+ "visibility": "public"
605
+ }
606
+ },
607
+ {
608
+ "type": "input",
609
+ "dataType": "wysiwyg",
610
+ "label": "Descrição do personagem",
611
+ "name": "characterDescription"
612
+ },
613
+ {
614
+ "type": "select",
615
+ "label": "Tipo de personagem",
616
+ "name": "characterType",
617
+ "dataType": "text",
618
+ "options": [
619
+ { "value": "protagonist", "label": "Protagonista" },
620
+ { "value": "antagonist", "label": "Antagonista" },
621
+ { "value": "hero", "label": "Herói" },
622
+ { "value": "villain", "label": "Vilão" },
623
+ { "value": "sidekick", "label": "Ajudante" },
624
+ { "value": "supporting", "label": "Secundário" }
625
+ ]
626
+ },
627
+ {
628
+ "type": "select",
629
+ "label": "Gênero do personagem",
630
+ "name": "characterGender",
631
+ "dataType": "text",
632
+ "options": [
633
+ { "value": "male", "label": "Masculino" },
634
+ { "value": "female", "label": "Feminino" },
635
+ { "value": "other", "label": "Outro" }
636
+ ]
637
+ }
638
+ ]
639
+ },
640
+ {
641
+ "title": "Lista de personagens",
642
+ "componentType": "list",
643
+ "id": "characterList",
644
+ "guards": ["isAuthorized"],
645
+ "dataSource": {
646
+ "endpoint": "/characters",
647
+ "paramType": "query",
648
+ "hasAuthentication": true
649
+ },
650
+ "properties": [
651
+ { "label": "Nome", "property": "characterName", "type": "title" },
652
+ {
653
+ "label": "Descrição",
654
+ "property": "characterDescription",
655
+ "type": "description",
656
+ "isHtml": true
657
+ }
658
+ ],
659
+ "callsToActionMenu": [
660
+ {
661
+ "label": "Editar",
662
+ "icon": "pencil",
663
+ "action": {
664
+ "link": {
665
+ "endpoint": "/character-form",
666
+ "propertiesAsQueryParam": ["_id"]
667
+ }
668
+ }
669
+ },
670
+ {
671
+ "label": "Excluir",
672
+ "icon": "delete",
673
+ "action": {
674
+ "link": { "endpoint": "/character-list" },
675
+ "request": {
676
+ "endpoint": "/characters",
677
+ "verb": "delete",
678
+ "propertiesAsPathParam": ["_id"],
679
+ "dialog": {
680
+ "title": "Excluir projeto",
681
+ "message": "Deseja realmente excluir essa projeto?"
682
+ }
683
+ }
684
+ }
685
+ }
686
+ ]
687
+ }
688
+ ]
689
+ }
690
+ ],
691
+ "styles": [
692
+ {
693
+ "themeName": "light",
694
+ "main": {
695
+ "headerHeight": "60px",
696
+ "typography": { "fontFamily": "Arial, sans-serif", "fontSize": "16px" },
697
+ "colors": {
698
+ "primary": "#4F46E5",
699
+ "primaryContrast": "#FFFFFF",
700
+ "secondary": "#6B7280",
701
+ "secondaryContrast": "#FFFFFF",
702
+ "background": "#FFFFFF",
703
+ "error": "#DC2626",
704
+ "success": "#16A34A",
705
+ "warning": "#D97706"
706
+ },
707
+ "shadows": { "boxShadow": "0 1px 3px rgba(0, 0, 0, 0.1)" },
708
+ "borders": { "radius": "4px" },
709
+ "components": {
710
+ "input": {
711
+ "text": "#111827",
712
+ "background": "#F9FAFB",
713
+ "border": "#D1D5DB",
714
+ "borderRadius": "4px",
715
+ "focusBorder": "#4F46E5",
716
+ "placeholder": "#9CA3AF",
717
+ "width": "248px"
3449
718
  }
3450
- ]
719
+ },
720
+ "spacing": "8px",
721
+ "maxWidth": "1200px",
722
+ "footerHeight": "60px"
3451
723
  }
3452
- ]
3453
- }
3454
- ],
3455
- "styles": []
3456
- }
724
+ }
725
+ ]
726
+ }