Realizado

Desenvolver Crud Anglarjs Material

Publicado em 18 de Janeiro de 2018 dias na TI e Programação

Sobre este projeto

Aberto

Desenvolver um CRUD em AngularJS, com framework Angular-Material. Esse CRUD deve ser feito com uma DataTable, que aceite edição INLINE (Edita a Linha e salva) e BATCH (Edita várias linhas e salva) e Campo a Campo ( Edita um campo e salva )

** Não se impressione com o tamanho da descrição, isso não significa que o projeto é grande, mas sim que é bem documentado.

Ele deve possuir:
- Um header para Filtros com todos os campos. (Quase pronto nos exemplos)
- Um header Para exibir e esconder colunas (pronto nos exemplos)
- Sortable Columns  - ordenação  (pronto nos exemplos).
- Opção de Infinite Scroll e Paginação comun (pronto nos exemplos)
- Uma Progress Bar para aguardar as requisições da api (pronto nos exemplos)

* é só frontend, a api será fornecida.
* É AngularJS (JavaScript), não Angular 2 (Typescript)

**O código deve estar bem distribuído em Controllers, Services e Directives e bem comentado.
**Os campos devem ter validações, tanto do lado do cliente, como receber erro de validação do lado do Server e exibir.
** As linhas devem ser selecionaveis com um CheckBox (pronto nos exemplos)

É um projeto simples, porque já tem tudo resolvido nesta pesquisa abaixo, basta compilar, organizar e caprichar.

https://github.com/daniel-nagy/md-data-table
https://github.com/iamisti/mdDataTable
http://iamisti.github.io/mdDataTable/
https://codepen.io/enigmatic/pen/JGvwEv
http://iamisti.github.io/mdDataTable/




Não vale usar lib pronta como as desses exemplos acima (https://github.com/daniel-nagy/md-data-table , https://github.com/iamisti/mdDataTable), se quiser usá-los, são open-source, de modo que você pode usar oque quiser, mas deve entregar services e directives próprios.

Preferênica por basear-se na (https://github.com/daniel-nagy/md-data-table) e fazer as edições de campo bem parecidas com oque está aqui (https://codepen.io/enigmatic/pen/JGvwEv)


Prefiro a do daniel-nagy porque ele cria em cima de tabela e dá mais autonomia, a do iamisti está tudo em uma directive, oque tem vantagens, mas para o meu projeto é menos recomendado.

Ambas têm vantagens e desvantagens em relação a outra, porém se complementam muito na funcionalidade que eu quero. Por isso sugiro que peguem oque tem de melhor nas duas.



É Um crud de produtos, os campos do crud são:

- id (int, readonly)
- categoria (múltipla seleção de uma lista genérica ou da api, usar alguma directive de multiple selection do angularjs)
- nome do produto (text input)
- descrição (textarea, validacao de maximo de caracteres)
- descrição html (editor de html, como por exemplo text angular, melhor que abra em popup)
- html (editor de código, como codemirror ou ace , melhor que abra em popup)
- preço (currency)
- data de validade (data , usar datepicker do angularjs material)
- é promoção? (boolean)
- data e hora da promoção (datahora, usar datepicker do angularjs material e algum timepicker que gostar (habilitar e desabilitar conforme o campo  "é promoção" ))
- preço promoção (currency , (habilitar e desabilitar conforme o campo  "é promoção" ))
- variação (seleção única de lista genérica ou da api)
- subvariação ( seleção múltipla, de lista genérica ou da api, filtrada de acorodo com a "variação" )


** por padrão todos obrigatórios
** os campos que


use um modelo de template pronto de angularjs material pra ficar apresentável.


**** EXTRAS (pago a mais, mas não é obrigatorio) - drag drop das colunas.  Ou na propria tabela, ou no Header de exibir e esconder as colunas.


O resultado final deve ficar parecido, por exemplo com a KendoGrid, do KendoUI,  mas esta é JQuery ou algumas outras e não vale.


Como todo este material ai da pesquisa, creio que sejam umas 16h de trabalho,  quem topa? Se ficar muito bom, rola um bônus de 10% a 30%.

Obrigado e até mais.

Categoria TI e Programação
Subcategoria Programação
Qual é o alcance do projeto? Alteração média
Isso é um projeto ou uma posição de trabalho? Um projeto
Tenho, atualmente Eu tenho especificações
Disponibilidade requerida Conforme necessário
Experiência nesse tipo de projeto Sim (Eu já gerenciei esse tipo de projeto)
Funções necessárias Desenvolvedor

Prazo de Entrega: Não estabelecido

Habilidades necessárias

Outro projetos publicados por M. F. C.