├── .github └── logo.png ├── docs ├── assets │ └── logo.png └── CadastroFornecedorModelo.pdf ├── jsonExemplo └── jsonExemplo.json └── readme.md /.github/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VFLOWS/Teste-Estagio/HEAD/.github/logo.png -------------------------------------------------------------------------------- /docs/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VFLOWS/Teste-Estagio/HEAD/docs/assets/logo.png -------------------------------------------------------------------------------- /docs/CadastroFornecedorModelo.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VFLOWS/Teste-Estagio/HEAD/docs/CadastroFornecedorModelo.pdf -------------------------------------------------------------------------------- /jsonExemplo/jsonExemplo.json: -------------------------------------------------------------------------------- 1 | { razaoSocial: 'Razao social', 2 | nomeFantasia: 'Nome Fantasia', 3 | cnpj: '123456', 4 | inscricaoEstadual: '123456', 5 | inscricaoMunicipal: '123456', 6 | nomeContato: 'Nome contato', 7 | telefoneContato: '+5562999999999999' 8 | emailContato: 'email@email.com', 9 | produtos: { 10 | [ indice: 1, 11 | descricaoProduto: 'Descrição produto', 12 | unidadeMedida: 'unidadeMedida', 13 | qtdeEstoque: '123', 14 | valorUnitario: '1554.00', 15 | valorTotal: '2555.00' 16 | ], 17 | [ indice: 2, 18 | descricaoProduto: 'Descrição produto', 19 | unidadeMedida: 'unidadeMedida', 20 | qtdeEstoque: '123', 21 | valorUnitario: '1554.00', 22 | valorTotal: '2555.00' 23 | ], 24 | } 25 | anexos: { 26 | [ indice: 1, 27 | nomeArquivo: 'iouahsiuahusihausihiahiuah', 28 | blobArquivo: 'iouahsiuahusihausihiahiuah' 29 | ], 30 | [ indice: 2, 31 | nomeArquivo: 'iouahsiuahusihausihiahiuah', 32 | blobArquivo: 'iouahsiuahusihausihiahiuah' 33 | ], 34 | } 35 | 36 | } -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 |
3 | Tecnologia que flui!10 | 11 |
12 | Sobre o desafio 13 | | 14 | Requisitos 15 | | 16 | Layout 17 | | 18 | Entrega 19 |
20 | 21 | ## 🚀 Sobre o desafio 22 | 23 | O objetivo deste desafio é avaliar seus conhecimentos técnicos, como lida com os requisitos e capacidade de pensar em soluções. 24 | 25 | Durante esse desafio vamos construir um formulário para cadastro de fornecedores e produtos. 26 | 27 | O desenvolvimento do formulário deve seguir o layout existente na guia: **Layout** 28 | 29 | 30 | ## 📋 Requisitos 31 | 32 | 33 | - **HTML**: na versão 5; 34 | - **JAVASCRIPT**: Dar preferência a ao ECMA-6 no desenvolvimento do código; 35 | - **BOOTSTRAP**: 36 | - [CSS](https://fluig.totvs.com/style-guide/css/fluig-style-guide.min.css) 37 | - [JQUERY-3.5.1 ](https://jquery.com/download/) 38 | 39 | - **Outras Considerações**: 40 | - Usar documentação de recursos e estilos conforme este [link](https://style.fluig.com/) 41 | - Não deverão ser utilizados outros recursos tecnológicos para desenvolvimento 42 | 43 | 44 | 45 | ### Sobre o preenchimento dos campos existentes no formulário de cadastro 46 | 47 | - **Razão Social**: obrigatório 48 | - **Nome Fantasia**: obrigatório 49 | - **CNPJ**: obrigatório 50 | - **Inscrição Estadual**: opcional 51 | - **Inscrição Municipal**: opcional 52 | - **Endereço**: obrigatório (deve ser preenchido automaticamente usando a API via CEP) 53 | - **Nome da pessoa de contato**: obrigatório 54 | - **Telefone**: obrigatório 55 | - **E-mail**: obrigatório 56 | - **Tabela de Produtos**: obrigatório a inclusão de pelo menos 1 item 57 | - **Descrição**: obrigatório 58 | - **Unidade de Medida**: obrigatório 59 | - **Quantidade em Estoque**: obrigatório 60 | - **Valor Unitário**: obrigatório 61 | - **Valor Total**: obrigatório (bloqueado, deve ser preenchido automaticamente considerando o valor unitário x a quantidade em estoque) 62 | - **Tabela de Anexos**: obrigatório a inclusão de pelo menos 1 documento 63 | - Os documentos anexados deverão ser armazenados em memória (blob e session storage) para envio 64 | - O Botão Excluir (lixeira) - Ao excluir o documento, deverá ser excluído da memória 65 | - O Botão Visualizar (olho) - Ao visualizar o documento, deve ser feito o download 66 | - **Botão Salvar Fornecedor**: ao clicar no botão, deverá ser aberto modal de loading de envio, e deverá ser formatado um JSON com os dados a serem enviados, conforme exemplo: [jsonExemplo](./jsonExemplo/) 67 | - **OBS Sobre o JSON**: o JSON de resultado pode ser baixado ou apenas exibido no console do browser. 68 | 69 | ## O que será avaliado no projeto 70 | 71 | - Qualidade de código. 72 | - Estruturas de pastas. 73 | - Criação de componentes. 74 | - Soluções encontradas. 75 | - Tolerância a exceções do código. 76 | - Uso das tecnologias. 77 | 78 | ## 🎨 Layout 79 | 80 | O layout do desafio está em anexo na pasta [docs](./docs/) deste repositório. 81 | 82 | ## 📅 Entrega 83 | 84 | Esse desafio **deve ser entregue em um repositório público** do github e enviar um e-mail para `contato@vflows.com.br` **com o link** do repositório e com o assunto **`Entrega de desafio front-end`** para correção. (☞ ゚ヮ゚)☞ 85 | NÃO COMPILAR EM REACT!!!! O DESAFIO É APENAS EM HTML+CSS+JS, SERÃO DESCONSIDERADOS PROJETOS EM REACT/NODE. 86 | 87 | Qualquer procedimento que seja necessário para execução do seu projeto, coloque no README do teu repositório. 88 | --- 89 | 90 | Made by [VFlows](https://vflows.com.br) 91 | --------------------------------------------------------------------------------