Coder Social home page Coder Social logo

desenvolvedor-io / dev-store Goto Github PK

View Code? Open in Web Editor NEW
1.0K 46.0 187.0 7.27 MB

A microservices e-commerce reference application built with ASP.NET 6

Home Page: https://devstore.academy

License: MIT License

Dockerfile 1.28% C# 81.75% HTML 15.19% CSS 0.21% JavaScript 1.57%
asp-net clean-architecture clean-code cqrs design-patterns domain-driven-design hexagonal-architecture microservices solid dotnet-6

dev-store's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dev-store's Issues

[BUG] Cannot use Add-Migrations

Describe the bug
When I try to use Add-Migration DbInit -context OrdersContext in project DevStore.Orders.Infra I got this error bellow:
image

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'Package Manage Console'
  2. Select the project 'DevStore.Orders.Infra'
  3. Run the command 'Add-Migration DbInit -context OrdersContext'
  4. See error

Expected behavior
Generate migrations files

Screenshots
image

Desktop (please complete the following information):

  • OS: Windows 11
  • Visual Studio Community 2022

Additional context
Add any other context about the problem here.

Error 404 when adding product to the cart

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'home page'
  2. Select an product
  3. Click on 'Add to cart'
  4. See 404 error page

Expected behavior
When user click on add to cart the product should be added.

Screenshots
image

[BUG] Error while trying to run the project with Docker

Describe the bug
I used to run this project without any issues for a while, to understand and learn some things. However, lately it has started to throw this error related to the encryption part. It seems like the project is not recognizing the location of the certificate, is there a way to bypass this or completely mitigate this error?

To Reproduce
Steps to reproduce the behavior:

  1. Update project to latest version in main branch
  2. Go to docker path
  3. With cmd/terminal execute docker-compose up
  4. Wait until all containers are up and running.
  5. See error Interop+Crypto+OpenSslCryptographicException: error:2006D080:BIO routines:BIO_new_file:no such file

Stacktrace
devstore-web-mvc-ecommerce | Unhandled exception. Interop+Crypto+OpenSslCryptographicException: error:2006D080:BIO routines:BIO_new_file:no such file devstore-web-mvc-ecommerce | at Interop.Crypto.CheckValidOpenSslHandle(SafeHandle handle) devstore-web-mvc-ecommerce | at Internal.Cryptography.Pal.OpenSslX509CertificateReader.FromFile(String fileName, SafePasswordHandle password, X509KeyStorageFlags keyStorageFlags) devstore-web-mvc-ecommerce | at System.Security.Cryptography.X509Certificates.X509Certificate..ctor(String fileName, String password, X509KeyStorageFlags keyStorageFlags) devstore-web-mvc-ecommerce | at System.Security.Cryptography.X509Certificates.X509Certificate2..ctor(String fileName, String password) devstore-web-mvc-ecommerce | at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Certificates.CertificateConfigLoader.LoadCertificate(CertificateConfig certInfo, String endpointName) devstore-web-mvc-ecommerce | at Microsoft.AspNetCore.Server.Kestrel.KestrelConfigurationLoader.LoadDefaultCert() devstore-web-mvc-ecommerce | at Microsoft.AspNetCore.Server.Kestrel.KestrelConfigurationLoader.Reload() devstore-web-mvc-ecommerce | at Microsoft.AspNetCore.Server.Kestrel.KestrelConfigurationLoader.Load() devstore-web-mvc-ecommerce | at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.BindAsync(CancellationToken cancellationToken) devstore-web-mvc-ecommerce | at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.StartAsync[TContext](IHttpApplication1 application, CancellationToken cancellationToken) devstore-web-mvc-ecommerce | at Microsoft.AspNetCore.Hosting.GenericWebHostService.StartAsync(CancellationToken cancellationToken) devstore-web-mvc-ecommerce | at Microsoft.Extensions.Hosting.Internal.Host.StartAsync(CancellationToken cancellationToken) devstore-web-mvc-ecommerce | at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token) devstore-web-mvc-ecommerce | at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token) devstore-web-mvc-ecommerce | at Program.<Main>$(String[] args) in /src/web/DevStore.WebApp.MVC/Program.cs:line 22 devstore-web-mvc-ecommerce | at Program.<Main>(String[] args) devstore-web-mvc-ecommerce exited with code 139

Expected behavior
Run all services correctly and have no issues with openssl.

Screenshots
print1
print2

Desktop (please complete the following information):

  • OS: [Win 10, Zorin OS, Win 11]

Aditional Info
I tried on several different computers and different OS's believing that it was only in my environment or if it was some wrong configuration of my docker, but on these 4 computers it gave the same error.

Problem with generate-pfx

When generate-pfx tries to delete a file that does not exist in the certs folder, the certificate creation process is aborted.

Cart error when anonymous

When some anonymous user try to put some item into shopping cart receives an error.

The expected behaviour was redirect to login page.

Notifications Microservice

General Description

Create a Notifications Microservice responsible to manage all notifications (such as email, WhatsApp, SMS etc.) for order status changes, password changes etc.

Some Details

  • The others Microservices would communicate with this Microservice via Message Broker.
  • The WebApp would not access this Microservice.
  • It could use either a simple SMTP class or Send Grid.
  • The email templates could be in a Resource

SQL Server Timezone

When running from local machine at Sql Server on Docker some queries get broken because the TimeZone.

At PedidoAPI:
image

But there are items at Database:
image

So, sending the "DateTime.Now" from API Backend it works:

      public async Task<PedidoDTO> ObterUltimoPedido(Guid clienteId)
        {
            const string sql = @"SELECT
                                P.ID AS 'ProdutoId', P.CODIGO, P.VOUCHERUTILIZADO, P.DESCONTO, P.VALORTOTAL,P.PEDIDOSTATUS,
                                P.LOGRADOURO,P.NUMERO, P.BAIRRO, P.CEP, P.COMPLEMENTO, P.CIDADE, P.ESTADO,
                                PIT.ID AS 'ProdutoItemId',PIT.PRODUTONOME, PIT.QUANTIDADE, PIT.PRODUTOIMAGEM, PIT.VALORUNITARIO 
                                FROM PEDIDOS P 
                                INNER JOIN PEDIDOITEMS PIT ON P.ID = PIT.PEDIDOID 
                                WHERE P.CLIENTEID = @clienteId 
                                AND P.DATACADASTRO between DATEADD(minute, -30,  @Now) and @Now
                                ORDER BY P.DATACADASTRO DESC";

            var pedido = await _pedidoRepository.ObterConexao()
                .QueryAsync<dynamic>(sql, new { clienteId, Now = DateTime.Now });

            if (!pedido.Any())
                return null;

            return MapearPedido(pedido);
        }

[FEAT] Banner to show it's a demo project

Is your feature request related to a problem? Please describe.
No

Describe the solution you'd like
A banner to show visitors the site is just a demo and not a real store. The banner must have a link to this repository.

Remove Dapper

There are some projects that are using Dapper. E.g ProductRepository.

We are seeking to replace with EF Core. To be a database agnostic.

Wrong syntax in light compose file

There is a problem in docker-compose-local-light.yml compose file, that causes unable to run the app. As the image below shows the ports is the main problem.

image

Just remove it and it will run perfectly.

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.