Code Monkey home page Code Monkey logo

marketplace's Introduction

Hey there 👋

I'm Davi Coutinho, 27-year old. technical enthusiast who does web and mobile development, architecture and Functional language. Passionate to make cool products.

💻 Languages and Tools

Dark Badge (micro)

📫 How to reach me:

Linkedin

marketplace's People

Contributors

roxdavirox avatar

Stargazers

 avatar

Watchers

 avatar  avatar

marketplace's Issues

Implementar entidade item

Implementar a entidade item dentro da arquitetura DDD como propriedade da entidade Opção

opção 1 --> * Item

Criar Opção e associar com item existente

Criar um endpoint
POST api/Items/{idItem}/Options

para associar um item já existente sem referencia a uma nova opção
a opção recebera a referencia do item existente no método POST

a requisição será tratada dentro do OptionController

desta forma:

[HttpPost("api/Items/{idItem}/Options")]
public async Task<CreateOptionItemResponse> Post(CreateOptionItemRequest request, Guid idItem)
{
      var command = new CreateOptionItemRequest(request, idItem);

      var response =  await _mediator.Send(command);

      return response;
}

Jwt Identity model reference

Referencia com erro no build da implementação do #35

Identity model está com referencia invalida nos pacotes

Services\Jwt\JwtService.cs(3,14): error CS0234: The type or namespace name 'IdentityModel' does not exist in the namespace 'System' (are you missing an assembly reference?) [D:\a\1\s\src\Marketplace.App\Marketplace.App.csproj]
Services\Jwt\JwtService.cs(8,17): error CS0234: The type or namespace name 'IdentityModel' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?) [D:\a\1\s\src\Marketplace.App\Marketplace.App.csproj]
Services\Jwt\JwtSettings.cs(2,17): error CS0234: The type or namespace name 'IdentityModel' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?) [D:\a\1\s\src\Marketplace.App\Marketplace.App.csproj]
Services\Jwt\JwtSettings.cs(38,16): error CS0246: The type or namespace name 'SigningCredentials' could not be found (are you missing a using directive or an assembly reference?) [D:\a\1\s\src\Marketplace.App\Marketplace.App.csproj]
  Marketplace.Infra -> D:\a\1\s\src\Marketplace.Infra\bin\release\netcoreapp2.2\Marketplace.Infra.dll

Build FAILED.

C:\Program Files\dotnet\sdk\2.2.102\Microsoft.Common.CurrentVersion.targets(2110,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "Microsoft.IdentityModel.Tokens". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [D:\a\1\s\src\Marketplace.App\Marketplace.App.csproj]
C:\Program Files\dotnet\sdk\2.2.102\Microsoft.Common.CurrentVersion.targets(2110,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "System.IdentityModel.Tokens.Jwt". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [D:\a\1\s\src\Marketplace.App\Marketplace.App.csproj]
Services\Jwt\JwtService.cs(3,14): error CS0234: The type or namespace name 'IdentityModel' does not exist in the namespace 'System' (are you missing an assembly reference?) [D:\a\1\s\src\Marketplace.App\Marketplace.App.csproj]
Services\Jwt\JwtService.cs(8,17): error CS0234: The type or namespace name 'IdentityModel' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?) [D:\a\1\s\src\Marketplace.App\Marketplace.App.csproj]
Services\Jwt\JwtSettings.cs(2,17): error CS0234: The type or namespace name 'IdentityModel' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?) [D:\a\1\s\src\Marketplace.App\Marketplace.App.csproj]
Services\Jwt\JwtSettings.cs(38,16): error CS0246: The type or namespace name 'SigningCredentials' could not be found (are you missing a using directive or an assembly reference?) [D:\a\1\s\src\Marketplace.App\Marketplace.App.csproj]
    2 Warning(s)
    4 Error(s)

Time Elapsed 00:00:15.37
##[error]Error: C:\Program Files\dotnet\dotnet.exe failed with return code: 1

Criar todos os preços como relativos

Para contornar o problema do #17 #18 com preço fixo e relativo com mais de duas classes, agora a solução será feita usando todos os preços como relativo.

Quando o item for de preço fixo, será usado apenas inicio e fim, independente da quantidade do fim, ele vai retornar como se tivesse apenas 1 preço fixo.

O ultimo intervalo da faixa de valores será de inicio até infinito. ex:
index: 0 Inicio: 1 fim: 10 preço: 10
index:1 inicio: 11 fim: 12+ (sem fim pois é o ultimo preço): 8

Adicionar um campo index para ordenar a faixa de preços e saber qual o ultimo elemento para aplicar a regra de Inicio até infinito

Associar Item com opção via put verb

Um item pode ser criado independente de opção
Mas, é preciso criar um metodo put para atualizar a referencia do item e associar com uma opção existente

ItemPrice: PriceRange

Criar uma relação entre Item (0..1) - (1) PriceRange (1) - (0..*) Price

Um item pode conter um intervalo de preço e este intervalo pode conter varios preços.
estes preços podem ser reutilizados em outros items

Relacionar Option com Item no EF

Problema:

  • Quando o item é associado associado a opção através do controller do option usando o verbo put
    no endpoint api/Options/Items, no banco de dados, apenas o item fica com o Id da opção, mas, nos entidades do dominio do código não é associado.

o item fica com referencia de navegação de propriedade para o option, mas o option fica com a lista vazia

Solução:

  • Criar do EF para navegação inversa e atribuir o item dentro da coleção de items como propriedade do option

complemento da issue #7

Autenticação JWT

Criar autenticação basica com JWT
Informar email e senha e retornar token os padrões especificados pelo JWT

referencia - RFC 7519

Criar:

  • Tabela usuario com email e senha (inicialmente)
  • Repository com criação e autenticação async
  • Registrar usuario no banco
  • endpoint: api/users/register

String de conexão por ambientes

Criar uma string de conexão para cada ambiente Development e Production

Encapsular a string de conexão dentro da camada Shared

Associar Option com Items

criar o metodo post no controller dos items para associar Option com items e persistir no banco de dados

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.