├── .DS_Store ├── .gitignore ├── .vscode ├── launch.json └── tasks.json ├── Finance.sln ├── images └── swagger.png ├── readme.md ├── source ├── .DS_Store ├── Dockerfile ├── MyWallet.Application │ ├── .DS_Store │ ├── AccountNotFoundException.cs │ ├── ApplicationException.cs │ ├── CustomerNotFoundException.cs │ ├── MyWallet.Application.csproj │ ├── Repositories │ │ ├── IAccountReadOnlyRepository.cs │ │ ├── IAccountWriteOnlyRepository.cs │ │ ├── ICustomerReadOnlyRepository.cs │ │ └── ICustomerWriteOnlyRepository.cs │ └── UseCases │ │ ├── AccountOutput.cs │ │ ├── CloseAccount │ │ ├── CloseAccountUseCase.cs │ │ └── ICloseAccountUseCase.cs │ │ ├── CustomerOutput.cs │ │ ├── Deposit │ │ ├── DepositOutput.cs │ │ ├── DepositUseCase.cs │ │ └── IDepositUseCase.cs │ │ ├── GetAccountDetails │ │ ├── GetAccountDetailsUseCase.cs │ │ └── IGetAccountDetailsUseCase.cs │ │ ├── GetCustomerDetails │ │ ├── GetCustomerDetailsUseCase.cs │ │ └── IGetCustomerDetailsUseCase.cs │ │ ├── Register │ │ ├── IRegisterUseCase.cs │ │ ├── RegisterOutput.cs │ │ └── RegisterUseCase.cs │ │ ├── TransactionOutput.cs │ │ └── Withdraw │ │ ├── IWithdrawUseCase.cs │ │ ├── WithdrawOutput.cs │ │ └── WithdrawUseCase.cs ├── MyWallet.Domain │ ├── .DS_Store │ ├── Accounts │ │ ├── Account.cs │ │ ├── AccountCannotBeClosedException.cs │ │ ├── Credit.cs │ │ ├── Debit.cs │ │ ├── ITransaction.cs │ │ ├── InsuficientFundsException.cs │ │ └── TransactionCollection.cs │ ├── Customers │ │ ├── AccountCollection.cs │ │ └── Customer.cs │ ├── DomainException.cs │ ├── IAggregateRoot.cs │ ├── IEntity.cs │ ├── MyWallet.Domain.csproj │ └── ValueObjects │ │ ├── Amount.cs │ │ ├── AmountShouldBePositiveException.cs │ │ ├── InvalidPersonnummerException.cs │ │ ├── Name.cs │ │ ├── NameShouldNotBeEmptyException.cs │ │ ├── Personnummer.cs │ │ └── PersonnummerShouldNotBeEmptyException.cs ├── MyWallet.Infrastructure │ ├── .DS_Store │ ├── AccountNotFoundException.cs │ ├── ApplicationModule.cs │ ├── CustomerNotFoundException.cs │ ├── EntityFrameworkDataAccess │ │ ├── .DS_Store │ │ ├── ContextFactory.cs │ │ ├── Entities │ │ │ ├── Account.cs │ │ │ ├── Credit.cs │ │ │ ├── Customer.cs │ │ │ └── Debit.cs │ │ ├── EntityFrameworkModule.cs │ │ ├── FinanceContext.cs │ │ ├── Migrations │ │ │ ├── 20181111112931_InitialCreate.Designer.cs │ │ │ ├── 20181111112931_InitialCreate.cs │ │ │ └── FinanceContextModelSnapshot.cs │ │ └── Repositories │ │ │ ├── AccountRepository.cs │ │ │ └── CustomerRepository.cs │ ├── InMemoryDataAccess │ │ ├── FinanceContext.cs │ │ ├── InMemoryModule.cs │ │ └── Repositories │ │ │ ├── AccountRepository.cs │ │ │ └── CustomerRepository.cs │ ├── InfrastructureException.cs │ └── MyWallet.Infrastructure.csproj ├── MyWallet.WebApi │ ├── .DS_Store │ ├── .vscode │ │ ├── launch.json │ │ └── tasks.json │ ├── Filters │ │ ├── DomainExceptionFilter.cs │ │ └── ValidateModelAttribute.cs │ ├── MyWallet.WebApi.csproj │ ├── Program.cs │ ├── Startup.cs │ ├── UseCases │ │ ├── AccountDetailsModel.cs │ │ ├── CloseAccount │ │ │ ├── AccountsController.cs │ │ │ └── Presenter.cs │ │ ├── CustomerDetailsModel.cs │ │ ├── Deposit │ │ │ ├── AccountsController.cs │ │ │ ├── CurrentAccountBalanceModel.cs │ │ │ ├── DepositRequest.cs │ │ │ └── Presenter.cs │ │ ├── GetAccountDetails │ │ │ ├── AccountsController.cs │ │ │ └── Presenter.cs │ │ ├── GetCustomerDetails │ │ │ ├── CustomersController.cs │ │ │ └── Presenter.cs │ │ ├── Register │ │ │ ├── CustomerModel.cs │ │ │ ├── CustomersController.cs │ │ │ ├── Presenter.cs │ │ │ └── RegisterRequest.cs │ │ ├── TransactionModel.cs │ │ └── Withdraw │ │ │ ├── AccountsController.cs │ │ │ ├── CurrentBalanceModel.cs │ │ │ ├── Presenter.cs │ │ │ └── WithdrawRequest.cs │ ├── WebApiModule.cs │ ├── appsettings.json │ ├── autofac.json │ └── autofac.production.json └── docker-compose.yml └── tests ├── .DS_Store ├── MyWallet.Domain.Tests ├── .DS_Store ├── AccountTests.cs ├── AmountTests.cs ├── CreditTests.cs ├── CustomerTests.cs ├── DebitTests.cs ├── MyWallet.Domain.Tests.csproj ├── NameTests.cs ├── SSNTests.cs └── TransactionCollectionTests.cs ├── MyWallet.UseCases.Tests ├── .DS_Store ├── AccountTests.cs ├── CustomerTests.cs └── MyWallet.UseCases.Tests.csproj └── MyWallet.WebApi.Tests ├── .DS_Store ├── CustomerRegistration.cs ├── MyWallet.WebApi.Tests.csproj ├── autofac.json └── autofac.production.json /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/.DS_Store -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/.gitignore -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/.vscode/launch.json -------------------------------------------------------------------------------- /.vscode/tasks.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/.vscode/tasks.json -------------------------------------------------------------------------------- /Finance.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/Finance.sln -------------------------------------------------------------------------------- /images/swagger.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/images/swagger.png -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/readme.md -------------------------------------------------------------------------------- /source/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/.DS_Store -------------------------------------------------------------------------------- /source/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/Dockerfile -------------------------------------------------------------------------------- /source/MyWallet.Application/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/.DS_Store -------------------------------------------------------------------------------- /source/MyWallet.Application/AccountNotFoundException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/AccountNotFoundException.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/ApplicationException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/ApplicationException.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/CustomerNotFoundException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/CustomerNotFoundException.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/MyWallet.Application.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/MyWallet.Application.csproj -------------------------------------------------------------------------------- /source/MyWallet.Application/Repositories/IAccountReadOnlyRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/Repositories/IAccountReadOnlyRepository.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/Repositories/IAccountWriteOnlyRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/Repositories/IAccountWriteOnlyRepository.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/Repositories/ICustomerReadOnlyRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/Repositories/ICustomerReadOnlyRepository.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/Repositories/ICustomerWriteOnlyRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/Repositories/ICustomerWriteOnlyRepository.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/AccountOutput.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/AccountOutput.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/CloseAccount/CloseAccountUseCase.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/CloseAccount/CloseAccountUseCase.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/CloseAccount/ICloseAccountUseCase.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/CloseAccount/ICloseAccountUseCase.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/CustomerOutput.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/CustomerOutput.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/Deposit/DepositOutput.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/Deposit/DepositOutput.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/Deposit/DepositUseCase.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/Deposit/DepositUseCase.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/Deposit/IDepositUseCase.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/Deposit/IDepositUseCase.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/GetAccountDetails/GetAccountDetailsUseCase.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/GetAccountDetails/GetAccountDetailsUseCase.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/GetAccountDetails/IGetAccountDetailsUseCase.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/GetAccountDetails/IGetAccountDetailsUseCase.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/GetCustomerDetails/GetCustomerDetailsUseCase.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/GetCustomerDetails/GetCustomerDetailsUseCase.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/GetCustomerDetails/IGetCustomerDetailsUseCase.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/GetCustomerDetails/IGetCustomerDetailsUseCase.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/Register/IRegisterUseCase.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/Register/IRegisterUseCase.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/Register/RegisterOutput.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/Register/RegisterOutput.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/Register/RegisterUseCase.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/Register/RegisterUseCase.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/TransactionOutput.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/TransactionOutput.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/Withdraw/IWithdrawUseCase.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/Withdraw/IWithdrawUseCase.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/Withdraw/WithdrawOutput.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/Withdraw/WithdrawOutput.cs -------------------------------------------------------------------------------- /source/MyWallet.Application/UseCases/Withdraw/WithdrawUseCase.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Application/UseCases/Withdraw/WithdrawUseCase.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/.DS_Store -------------------------------------------------------------------------------- /source/MyWallet.Domain/Accounts/Account.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/Accounts/Account.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/Accounts/AccountCannotBeClosedException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/Accounts/AccountCannotBeClosedException.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/Accounts/Credit.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/Accounts/Credit.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/Accounts/Debit.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/Accounts/Debit.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/Accounts/ITransaction.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/Accounts/ITransaction.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/Accounts/InsuficientFundsException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/Accounts/InsuficientFundsException.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/Accounts/TransactionCollection.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/Accounts/TransactionCollection.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/Customers/AccountCollection.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/Customers/AccountCollection.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/Customers/Customer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/Customers/Customer.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/DomainException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/DomainException.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/IAggregateRoot.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/IAggregateRoot.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/IEntity.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/IEntity.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/MyWallet.Domain.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/MyWallet.Domain.csproj -------------------------------------------------------------------------------- /source/MyWallet.Domain/ValueObjects/Amount.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/ValueObjects/Amount.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/ValueObjects/AmountShouldBePositiveException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/ValueObjects/AmountShouldBePositiveException.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/ValueObjects/InvalidPersonnummerException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/ValueObjects/InvalidPersonnummerException.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/ValueObjects/Name.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/ValueObjects/Name.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/ValueObjects/NameShouldNotBeEmptyException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/ValueObjects/NameShouldNotBeEmptyException.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/ValueObjects/Personnummer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/ValueObjects/Personnummer.cs -------------------------------------------------------------------------------- /source/MyWallet.Domain/ValueObjects/PersonnummerShouldNotBeEmptyException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Domain/ValueObjects/PersonnummerShouldNotBeEmptyException.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/.DS_Store -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/AccountNotFoundException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/AccountNotFoundException.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/ApplicationModule.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/ApplicationModule.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/CustomerNotFoundException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/CustomerNotFoundException.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/EntityFrameworkDataAccess/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/EntityFrameworkDataAccess/.DS_Store -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/EntityFrameworkDataAccess/ContextFactory.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/EntityFrameworkDataAccess/ContextFactory.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Entities/Account.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Entities/Account.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Entities/Credit.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Entities/Credit.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Entities/Customer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Entities/Customer.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Entities/Debit.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Entities/Debit.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/EntityFrameworkDataAccess/EntityFrameworkModule.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/EntityFrameworkDataAccess/EntityFrameworkModule.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/EntityFrameworkDataAccess/FinanceContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/EntityFrameworkDataAccess/FinanceContext.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Migrations/20181111112931_InitialCreate.Designer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Migrations/20181111112931_InitialCreate.Designer.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Migrations/20181111112931_InitialCreate.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Migrations/20181111112931_InitialCreate.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Migrations/FinanceContextModelSnapshot.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Migrations/FinanceContextModelSnapshot.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Repositories/AccountRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Repositories/AccountRepository.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Repositories/CustomerRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/EntityFrameworkDataAccess/Repositories/CustomerRepository.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/InMemoryDataAccess/FinanceContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/InMemoryDataAccess/FinanceContext.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/InMemoryDataAccess/InMemoryModule.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/InMemoryDataAccess/InMemoryModule.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/InMemoryDataAccess/Repositories/AccountRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/InMemoryDataAccess/Repositories/AccountRepository.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/InMemoryDataAccess/Repositories/CustomerRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/InMemoryDataAccess/Repositories/CustomerRepository.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/InfrastructureException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/InfrastructureException.cs -------------------------------------------------------------------------------- /source/MyWallet.Infrastructure/MyWallet.Infrastructure.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.Infrastructure/MyWallet.Infrastructure.csproj -------------------------------------------------------------------------------- /source/MyWallet.WebApi/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/.DS_Store -------------------------------------------------------------------------------- /source/MyWallet.WebApi/.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/.vscode/launch.json -------------------------------------------------------------------------------- /source/MyWallet.WebApi/.vscode/tasks.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/.vscode/tasks.json -------------------------------------------------------------------------------- /source/MyWallet.WebApi/Filters/DomainExceptionFilter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/Filters/DomainExceptionFilter.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/Filters/ValidateModelAttribute.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/Filters/ValidateModelAttribute.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/MyWallet.WebApi.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/MyWallet.WebApi.csproj -------------------------------------------------------------------------------- /source/MyWallet.WebApi/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/Program.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/Startup.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/Startup.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/AccountDetailsModel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/AccountDetailsModel.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/CloseAccount/AccountsController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/CloseAccount/AccountsController.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/CloseAccount/Presenter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/CloseAccount/Presenter.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/CustomerDetailsModel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/CustomerDetailsModel.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/Deposit/AccountsController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/Deposit/AccountsController.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/Deposit/CurrentAccountBalanceModel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/Deposit/CurrentAccountBalanceModel.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/Deposit/DepositRequest.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/Deposit/DepositRequest.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/Deposit/Presenter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/Deposit/Presenter.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/GetAccountDetails/AccountsController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/GetAccountDetails/AccountsController.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/GetAccountDetails/Presenter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/GetAccountDetails/Presenter.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/GetCustomerDetails/CustomersController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/GetCustomerDetails/CustomersController.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/GetCustomerDetails/Presenter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/GetCustomerDetails/Presenter.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/Register/CustomerModel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/Register/CustomerModel.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/Register/CustomersController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/Register/CustomersController.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/Register/Presenter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/Register/Presenter.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/Register/RegisterRequest.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/Register/RegisterRequest.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/TransactionModel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/TransactionModel.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/Withdraw/AccountsController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/Withdraw/AccountsController.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/Withdraw/CurrentBalanceModel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/Withdraw/CurrentBalanceModel.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/Withdraw/Presenter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/Withdraw/Presenter.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/UseCases/Withdraw/WithdrawRequest.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/UseCases/Withdraw/WithdrawRequest.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/WebApiModule.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/WebApiModule.cs -------------------------------------------------------------------------------- /source/MyWallet.WebApi/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/appsettings.json -------------------------------------------------------------------------------- /source/MyWallet.WebApi/autofac.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/autofac.json -------------------------------------------------------------------------------- /source/MyWallet.WebApi/autofac.production.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/MyWallet.WebApi/autofac.production.json -------------------------------------------------------------------------------- /source/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/source/docker-compose.yml -------------------------------------------------------------------------------- /tests/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/.DS_Store -------------------------------------------------------------------------------- /tests/MyWallet.Domain.Tests/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.Domain.Tests/.DS_Store -------------------------------------------------------------------------------- /tests/MyWallet.Domain.Tests/AccountTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.Domain.Tests/AccountTests.cs -------------------------------------------------------------------------------- /tests/MyWallet.Domain.Tests/AmountTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.Domain.Tests/AmountTests.cs -------------------------------------------------------------------------------- /tests/MyWallet.Domain.Tests/CreditTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.Domain.Tests/CreditTests.cs -------------------------------------------------------------------------------- /tests/MyWallet.Domain.Tests/CustomerTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.Domain.Tests/CustomerTests.cs -------------------------------------------------------------------------------- /tests/MyWallet.Domain.Tests/DebitTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.Domain.Tests/DebitTests.cs -------------------------------------------------------------------------------- /tests/MyWallet.Domain.Tests/MyWallet.Domain.Tests.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.Domain.Tests/MyWallet.Domain.Tests.csproj -------------------------------------------------------------------------------- /tests/MyWallet.Domain.Tests/NameTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.Domain.Tests/NameTests.cs -------------------------------------------------------------------------------- /tests/MyWallet.Domain.Tests/SSNTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.Domain.Tests/SSNTests.cs -------------------------------------------------------------------------------- /tests/MyWallet.Domain.Tests/TransactionCollectionTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.Domain.Tests/TransactionCollectionTests.cs -------------------------------------------------------------------------------- /tests/MyWallet.UseCases.Tests/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.UseCases.Tests/.DS_Store -------------------------------------------------------------------------------- /tests/MyWallet.UseCases.Tests/AccountTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.UseCases.Tests/AccountTests.cs -------------------------------------------------------------------------------- /tests/MyWallet.UseCases.Tests/CustomerTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.UseCases.Tests/CustomerTests.cs -------------------------------------------------------------------------------- /tests/MyWallet.UseCases.Tests/MyWallet.UseCases.Tests.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.UseCases.Tests/MyWallet.UseCases.Tests.csproj -------------------------------------------------------------------------------- /tests/MyWallet.WebApi.Tests/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.WebApi.Tests/.DS_Store -------------------------------------------------------------------------------- /tests/MyWallet.WebApi.Tests/CustomerRegistration.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.WebApi.Tests/CustomerRegistration.cs -------------------------------------------------------------------------------- /tests/MyWallet.WebApi.Tests/MyWallet.WebApi.Tests.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.WebApi.Tests/MyWallet.WebApi.Tests.csproj -------------------------------------------------------------------------------- /tests/MyWallet.WebApi.Tests/autofac.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.WebApi.Tests/autofac.json -------------------------------------------------------------------------------- /tests/MyWallet.WebApi.Tests/autofac.production.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivanpaulovich/clean-architecture-webapi-ef-core/HEAD/tests/MyWallet.WebApi.Tests/autofac.production.json --------------------------------------------------------------------------------