Completed

Desenvolver Crud Anglarjs Material

Published on the January 18, 2018 in IT & Programming

About this project

Open

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.

Category IT & Programming
Subcategory Web development
What is the scope of the project? Medium-sized change
Is this a project or a position? Project
I currently have I have specifications
Required availability As needed
Experience in this type of projects Yes (I have managed this kind of project before)
Roles needed Developer

Delivery term: Not specified

Skills needed

Other projects posted by M. F. C.