diff --git a/.gitignore b/.gitignore index ad9a362..61101b4 100644 --- a/.gitignore +++ b/.gitignore @@ -397,4 +397,3 @@ FodyWeavers.xsd # JetBrains Rider *.sln.iml src/Recruitment.Tool.xml -/Francesco.Recipes.World/Migrations/20250304095839_AddFewNewBackendModels.Designer.cs diff --git a/Francesco.Recipes.World/Controllers/Favorit/FavoritController.cs b/Francesco.Recipes.World/Controllers/Favorit/FavoritController.cs new file mode 100644 index 0000000..7d66c1f --- /dev/null +++ b/Francesco.Recipes.World/Controllers/Favorit/FavoritController.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Controllers.Favorit +{ + public class FavoritController + { + } +} diff --git a/Francesco.Recipes.World/Controllers/Ingredient/IngredientController.cs b/Francesco.Recipes.World/Controllers/Ingredient/IngredientController.cs new file mode 100644 index 0000000..187acb8 --- /dev/null +++ b/Francesco.Recipes.World/Controllers/Ingredient/IngredientController.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Controllers.Ingredient +{ + public class IngredientController + { + } +} diff --git a/Francesco.Recipes.World/Controllers/Instruction/InstructionController.cs b/Francesco.Recipes.World/Controllers/Instruction/InstructionController.cs new file mode 100644 index 0000000..17c9b8d --- /dev/null +++ b/Francesco.Recipes.World/Controllers/Instruction/InstructionController.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Controllers.Instruction +{ + public class InstructionController + { + } +} diff --git a/Francesco.Recipes.World/Controllers/MediaFile/MediaFilesController.cs b/Francesco.Recipes.World/Controllers/MediaFile/MediaFilesController.cs new file mode 100644 index 0000000..d17c5fd --- /dev/null +++ b/Francesco.Recipes.World/Controllers/MediaFile/MediaFilesController.cs @@ -0,0 +1,9 @@ +namespace Francesco.Recipes.World.Controllers.MediaFile +{ + using Microsoft.AspNetCore.Mvc; + + public class MediaFilesController : Controller + { + + } +} diff --git a/Francesco.Recipes.World/Controllers/Recipe/RecipeController.cs b/Francesco.Recipes.World/Controllers/Recipe/RecipeController.cs new file mode 100644 index 0000000..a4b93ae --- /dev/null +++ b/Francesco.Recipes.World/Controllers/Recipe/RecipeController.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Controllers.Recipe +{ + public class RecipeController + { + } +} diff --git a/Francesco.Recipes.World/Controllers/ShoppingList/ShoppingLIstController.cs b/Francesco.Recipes.World/Controllers/ShoppingList/ShoppingLIstController.cs new file mode 100644 index 0000000..03e77c6 --- /dev/null +++ b/Francesco.Recipes.World/Controllers/ShoppingList/ShoppingLIstController.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Controllers.ShoppingList +{ + public class ShoppingLIstController + { + } +} diff --git a/Francesco.Recipes.World/Data/FrancescosRecipesWorldDbContext.cs b/Francesco.Recipes.World/Data/FrancescosRecipesWorldDbContext.cs index fe4646e..e27bf78 100644 --- a/Francesco.Recipes.World/Data/FrancescosRecipesWorldDbContext.cs +++ b/Francesco.Recipes.World/Data/FrancescosRecipesWorldDbContext.cs @@ -1,25 +1,108 @@ -namespace Francesco.Recipes.World.Data -{ - using Francesco.Recipes.World.Models.BackendModels.Category; +namespace Francesco.Recipes.World.Data; + +using System.Runtime.CompilerServices; +using Francesco.Recipes.World.Models.BackendModels; +using Francesco.Recipes.World.Models.BackendModels.Category; + using Francesco.Recipes.World.Models.BackendModels.Favorit; using Francesco.Recipes.World.Models.BackendModels.Ingredient; + using Francesco.Recipes.World.Models.BackendModels.IngredientShoppingList; using Francesco.Recipes.World.Models.BackendModels.Instruction; + using Francesco.Recipes.World.Models.BackendModels.MediaFile; using Francesco.Recipes.World.Models.BackendModels.Recipe; using Francesco.Recipes.World.Models.BackendModels.RecipeIngredient; + using Francesco.Recipes.World.Models.BackendModels.Shoppinglist; using Francesco.Recipes.World.Models.BackendModels.Unit; - using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore; - public class FrancescosRecipesWorldDbContext : DbContext +public class FrancescosRecipesWorldDbContext : DbContext +{ + public FrancescosRecipesWorldDbContext(DbContextOptions options) + : base(options) { - public FrancescosRecipesWorldDbContext(DbContextOptions options) - : base(options) - { + } + + public DbSet Categories => Set(); + public DbSet Ingredients => Set(); + public DbSet Instructions => Set(); + public DbSet Recipes => Set(); + public DbSet RecipeIngredients => Set(); + public DbSet Units => Set(); + public DbSet Favorits => Set(); + public DbSet IngredientsShoppingLists => Set(); + public DbSet ShoppingLists => Set(); + public DbSet MediaFiles => Set(); + public override Task SaveChangesAsync(CancellationToken cancellationToken = default) + { + foreach (var entry in ChangeTracker.Entries()) + { + if (entry.Entity is ITimeStampedEntity timeStampedEntity) + { + switch (entry.State) + { + case EntityState.Added: + timeStampedEntity.CreatedAt = DateTime.UtcNow; + break; + case EntityState.Modified: + timeStampedEntity.ModifiedAt = DateTime.UtcNow; + break; + } + } } - public DbSet Categories => Set(); - public DbSet Ingredients => Set(); - public DbSet Instructions => Set(); - public DbSet Recipes => Set(); - public DbSet RecipeIngredients => Set(); - public DbSet Units => Set(); + return base.SaveChangesAsync(cancellationToken); + } + protected override void OnModelCreating(ModelBuilder builder) + { + if (builder is null) + { + throw new ArgumentNullException(nameof(builder)); + } + + SeedData(builder); + + base.OnModelCreating(builder); + } + + private static void SeedData(ModelBuilder modelBuilder) + { + modelBuilder.Entity() + .HasData(GetCategories()); + + modelBuilder.Entity() + .HasData(GetUnits()); + } + private static IEnumerable GetCategories() + { + return new List() + { + new Category { Id = Guid.Parse("b248244f-f21c-4555-a14d-5dd49a2717cf"), Name = "Vorspeisen & Snacks" }, + new Category { Id = Guid.Parse("5186c5d6-5aff-4a6e-baf4-b61b72d889fe"), Name = "Erste Gänge" }, + new Category { Id = Guid.Parse("abbc6bb0-97ea-49f5-b31e-6507eb784fd1"), Name = "Hauptgerichte" }, + new Category { Id = Guid.Parse("90deec39-dcd0-422d-9018-ac8389e332e1"), Name = "Desserts & Süßspeisen" }, + new Category { Id = Guid.Parse("28e39168-701a-4084-81da-d96c987c462f"), Name = "Beilagen & Salate" }, + new Category { Id = Guid.Parse("20585b74-4805-4aff-a6df-aa6b7af04ff1"), Name = "Kuchen" }, + new Category { Id = Guid.Parse("adfb75ce-3ef3-428b-a5ca-b0c4c619d5ec"), Name = "Hefegebäck & Brot" }, + new Category { Id = Guid.Parse("d332f88d-d241-48c5-a2f2-bfd124eada7e"), Name = "Soßen & Saucen" }, + new Category { Id = Guid.Parse("23b1c740-e427-44f9-a6ea-d33d3f30f05a"), Name = "Marmeladen & Eingemachtes" }, + new Category { Id = Guid.Parse("0a91a200-dc76-4e00-b38c-b38cab5b69d7"), Name = "Getränke" }, + }; + } + + private static IEnumerable GetUnits() + { + return new List() + { + new Unit { Id = Guid.Parse("62eb2c11-8768-46fb-9db0-c77f940bb4aa"), Name = "liter", Symbol = "l" }, + new Unit { Id = Guid.Parse("6c41f7e6-ca75-49cc-8541-cebd5a9c560b"), Name = "gramm", Symbol = "g" }, + new Unit { Id = Guid.Parse("7e3d1b86-ac48-45d6-814e-d3492a86db1d"), Name = "kilogramm", Symbol = "kg" }, + new Unit { Id = Guid.Parse("0c3648ec-4981-42c8-abf8-18bf1a2ff4c2"), Name = "stücke", Symbol = "stk" }, + new Unit { Id = Guid.Parse("d82f4abd-e4e4-4104-a9c0-1acdeaa701f5"), Name = "blatt", Symbol = "blatt" }, + new Unit { Id = Guid.Parse("df5cb4c3-4de6-4c6f-be8c-da41b2986408"), Name = "messerspitze", Symbol = "msp" }, + new Unit { Id = Guid.Parse("e45a3af2-2ed6-4ac4-b06f-b4175663a7be"), Name = "stange", Symbol = "stange" }, + new Unit { Id = Guid.Parse("7ea2f51d-7493-4f19-a663-1f309186d3ae"), Name = "bund", Symbol = "bund" }, + new Unit { Id = Guid.Parse("66556e0e-eb2b-4bc3-9a56-135dd508ed09"), Name = "zehe", Symbol = "zehe" }, + new Unit { Id = Guid.Parse("2e9894ac-14fa-43fd-ba07-35cdd8ebd461"), Name = "teelöffel", Symbol = "TL" }, + new Unit { Id = Guid.Parse("24a91b89-3389-4465-89e4-2f70d2ea6fd7"), Name = "esslöffel", Symbol = "EL" }, + }; } } diff --git a/Francesco.Recipes.World/Data/Repository/Category/CategoryRepository.cs b/Francesco.Recipes.World/Data/Repository/Category/CategoryRepository.cs new file mode 100644 index 0000000..60e0775 --- /dev/null +++ b/Francesco.Recipes.World/Data/Repository/Category/CategoryRepository.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Data.Repository.Category +{ + public class CategoryRepository + { + } +} diff --git a/Francesco.Recipes.World/Data/Repository/Category/ICategoryRepository.cs b/Francesco.Recipes.World/Data/Repository/Category/ICategoryRepository.cs new file mode 100644 index 0000000..cfd14f4 --- /dev/null +++ b/Francesco.Recipes.World/Data/Repository/Category/ICategoryRepository.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Data.Repository.Category +{ + public interface ICategoryRepository + { + } +} diff --git a/Francesco.Recipes.World/Data/Repository/ErrorViewModel.cs b/Francesco.Recipes.World/Data/Repository/ErrorViewModel.cs new file mode 100644 index 0000000..1f2259d --- /dev/null +++ b/Francesco.Recipes.World/Data/Repository/ErrorViewModel.cs @@ -0,0 +1,9 @@ +namespace Francesco.Recipes.World.Data.Repository +{ + public class ErrorViewModel + { + public string? RequestId { get; set; } + + public bool ShowRequestId => !string.IsNullOrEmpty(RequestId); + } +} diff --git a/Francesco.Recipes.World/Data/Repository/Favorit/FavoritRepository.cs b/Francesco.Recipes.World/Data/Repository/Favorit/FavoritRepository.cs new file mode 100644 index 0000000..3292412 --- /dev/null +++ b/Francesco.Recipes.World/Data/Repository/Favorit/FavoritRepository.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Data.Repository.Favorit +{ + public class FavoritRepository + { + } +} diff --git a/Francesco.Recipes.World/Data/Repository/Favorit/IFavoritRepository.cs b/Francesco.Recipes.World/Data/Repository/Favorit/IFavoritRepository.cs new file mode 100644 index 0000000..1691bb0 --- /dev/null +++ b/Francesco.Recipes.World/Data/Repository/Favorit/IFavoritRepository.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Data.Repository.Favorit +{ + public interface IFavoritRepository + { + } +} diff --git a/Francesco.Recipes.World/Data/Repository/Ingredient/IIngredientRepository.cs b/Francesco.Recipes.World/Data/Repository/Ingredient/IIngredientRepository.cs new file mode 100644 index 0000000..a24cb71 --- /dev/null +++ b/Francesco.Recipes.World/Data/Repository/Ingredient/IIngredientRepository.cs @@ -0,0 +1,17 @@ +namespace FrancescoRecipesWorld.Repositories +{ + using Francesco.Recipes.World.Models.BackendModels.Ingredient; + using Francesco.Recipes.World.Models.BackendModels.Recipe; + + public interface IIngredientRepository + { + Task CreateIngredientToRecipeAsync(int recipeId, string ingredientName); + Task UpdateIngredientAsync(Ingredient ingredient); + Task> GetIngredientsByRecipeIdAsync(Guid recipeId); + Task> GetRecipesByIngredientIdAsync(Guid ingredientId); + Task> GetIngredientsByNameAsync(string name); + Task RemoveIngredientFromRecipeAsync(Recipe recipe, Guid ingredientId); + Task GetIngredientByIdAsync(Guid ingredientId); + + } +} diff --git a/Francesco.Recipes.World/Data/Repository/Ingredient/IngredientRepository.cs b/Francesco.Recipes.World/Data/Repository/Ingredient/IngredientRepository.cs new file mode 100644 index 0000000..4d32131 --- /dev/null +++ b/Francesco.Recipes.World/Data/Repository/Ingredient/IngredientRepository.cs @@ -0,0 +1,66 @@ +namespace FrancescoRecipesWorld.Repositories +{ + using Francesco.Recipes.World.Data; + using Francesco.Recipes.World.Models.BackendModels.Ingredient; + using Francesco.Recipes.World.Models.BackendModels.Recipe; + + public class IngredientRepository : IIngredientRepository + { + private readonly FrancescosRecipesWorldDbContext _context; + private readonly RecipeRepository _recipeRepository; + public IngredientRepository( + FrancescosRecipesWorldDbContext context, RecipeRepository recipeRepository) + { + _context = context; + _recipeRepository = recipeRepository; + } + + public async Task CreateIngredientToRecipeAsync(int recipeId, string ingredientName) + { + var recipe = await _context.Recipes.FindAsync(recipeId); + if (recipe == null) + { + throw new ArgumentException("Recipe not found", nameof(recipeId)); + } + + var newIngredient = new Ingredient + { + Name = ingredientName, + }; + _context.Ingredients.Add(newIngredient); + await _context.SaveChangesAsync(); + return newIngredient; + } + + public Task RemoveIngredientFromRecipeAsync(Recipe recipe, Guid ingredientId) + { + throw new NotImplementedException(); + } + + public Task> GetIngredientsByNameAsync(string name) + { + throw new NotImplementedException(); + } + + public Task> GetIngredientsByRecipeIdAsync(Guid recipeId) + { + throw new NotImplementedException(); + } + + public Task> GetRecipesByIngredientIdAsync(Guid ingredientId) + { + throw new NotImplementedException(); + } + + public Task UpdateIngredientAsync(Ingredient ingredient) + { + throw new NotImplementedException(); + } + + public async Task GetIngredientByIdAsync(Guid ingredientId) + { + var ingredient = await _context.Ingredients.FindAsync(ingredientId); + return ingredient ?? throw new InvalidDataException($"Address {ingredientId} not found."); + } + } +} diff --git a/Francesco.Recipes.World/Data/Repository/Instruction/IInstructionsRepository.cs b/Francesco.Recipes.World/Data/Repository/Instruction/IInstructionsRepository.cs new file mode 100644 index 0000000..9eb5c68 --- /dev/null +++ b/Francesco.Recipes.World/Data/Repository/Instruction/IInstructionsRepository.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Data.Repository.Instruction +{ + public interface IInstructionsRepository + { + } +} diff --git a/Francesco.Recipes.World/Data/Repository/Instruction/InstructionsRepository.cs b/Francesco.Recipes.World/Data/Repository/Instruction/InstructionsRepository.cs new file mode 100644 index 0000000..7306bb2 --- /dev/null +++ b/Francesco.Recipes.World/Data/Repository/Instruction/InstructionsRepository.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Data.Repository.Instruction +{ + public class InstructionsRepository + { + } +} diff --git a/Francesco.Recipes.World/Data/Repository/MediaFile/IMediaFileRepository.cs b/Francesco.Recipes.World/Data/Repository/MediaFile/IMediaFileRepository.cs new file mode 100644 index 0000000..e8c1058 --- /dev/null +++ b/Francesco.Recipes.World/Data/Repository/MediaFile/IMediaFileRepository.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Data.Repository.MediaFile +{ + public interface IMEdiaFileRepository + { + } +} diff --git a/Francesco.Recipes.World/Data/Repository/MediaFile/MediaFileRepository.cs b/Francesco.Recipes.World/Data/Repository/MediaFile/MediaFileRepository.cs new file mode 100644 index 0000000..0c3490e --- /dev/null +++ b/Francesco.Recipes.World/Data/Repository/MediaFile/MediaFileRepository.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Data.Repository.MediaFile +{ + public class MediaFileRepository + { + } +} diff --git a/Francesco.Recipes.World/Data/Repository/Recipe/IRecipeRepository.cs b/Francesco.Recipes.World/Data/Repository/Recipe/IRecipeRepository.cs new file mode 100644 index 0000000..cd4e97b --- /dev/null +++ b/Francesco.Recipes.World/Data/Repository/Recipe/IRecipeRepository.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Data.Repository.Recipe +{ + public interface IRecipeRepository + { + } +} diff --git a/Francesco.Recipes.World/Data/Repository/Recipe/RecipeRepository.cs b/Francesco.Recipes.World/Data/Repository/Recipe/RecipeRepository.cs new file mode 100644 index 0000000..bd57464 --- /dev/null +++ b/Francesco.Recipes.World/Data/Repository/Recipe/RecipeRepository.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Data.Repository.Recipe +{ + public class RecipeRepository + { + } +} diff --git a/Francesco.Recipes.World/Data/Repository/ShoppingLIst/IShoppingListRepository.cs b/Francesco.Recipes.World/Data/Repository/ShoppingLIst/IShoppingListRepository.cs new file mode 100644 index 0000000..c7e3943 --- /dev/null +++ b/Francesco.Recipes.World/Data/Repository/ShoppingLIst/IShoppingListRepository.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Data.Repository.ShoppingLIst +{ + public interface IShoppingListRepository + { + } +} diff --git a/Francesco.Recipes.World/Data/Repository/ShoppingLIst/ShoppingListRepository.cs b/Francesco.Recipes.World/Data/Repository/ShoppingLIst/ShoppingListRepository.cs new file mode 100644 index 0000000..5b0c2cb --- /dev/null +++ b/Francesco.Recipes.World/Data/Repository/ShoppingLIst/ShoppingListRepository.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Data.Repository.ShoppingLIst +{ + public class ShoppingListRepository + { + } +} diff --git a/Francesco.Recipes.World/Data/Repository/Unit/IUnitRepository.cs b/Francesco.Recipes.World/Data/Repository/Unit/IUnitRepository.cs new file mode 100644 index 0000000..443f0b1 --- /dev/null +++ b/Francesco.Recipes.World/Data/Repository/Unit/IUnitRepository.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Data.Repository.Unit +{ + public interface IUnitRepository + { + } +} diff --git a/Francesco.Recipes.World/Data/Repository/Unit/UnitRepository.cs b/Francesco.Recipes.World/Data/Repository/Unit/UnitRepository.cs new file mode 100644 index 0000000..ab66777 --- /dev/null +++ b/Francesco.Recipes.World/Data/Repository/Unit/UnitRepository.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Data.Repository.Unit +{ + public class UnitRepository + { + } +} diff --git a/Francesco.Recipes.World/Francesco.Recipes.World.csproj b/Francesco.Recipes.World/Francesco.Recipes.World.csproj index f9e0493..fff88d5 100644 --- a/Francesco.Recipes.World/Francesco.Recipes.World.csproj +++ b/Francesco.Recipes.World/Francesco.Recipes.World.csproj @@ -25,6 +25,7 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive + all runtime; build; native; contentfiles; analyzers; buildtransitive @@ -38,4 +39,8 @@ + + + + diff --git a/Francesco.Recipes.World/Models/BackendModels/Category/Category.cs b/Francesco.Recipes.World/Models/BackendModels/Category/Category.cs index 64934a2..5fa42d4 100644 --- a/Francesco.Recipes.World/Models/BackendModels/Category/Category.cs +++ b/Francesco.Recipes.World/Models/BackendModels/Category/Category.cs @@ -4,7 +4,7 @@ public class Category { public Guid Id { get; set; } - public string? Name { get; set; } + public string Name { get; set; } public virtual ICollection Recipes { get; set; } = new List(); } } diff --git a/Francesco.Recipes.World/Models/BackendModels/Unit/Unit.cs b/Francesco.Recipes.World/Models/BackendModels/Unit/Unit.cs index 902657a..e11bce3 100644 --- a/Francesco.Recipes.World/Models/BackendModels/Unit/Unit.cs +++ b/Francesco.Recipes.World/Models/BackendModels/Unit/Unit.cs @@ -7,8 +7,8 @@ namespace Francesco.Recipes.World.Models.BackendModels.Unit public class Unit { public Guid Id{ get; set; } - public string? Name { get; set; } - public string? Symbol { get; set; } + public string Name { get; set; } + public string Symbol { get; set; } public virtual ICollection RecipeIngredient { get; set; } = new List(); } } diff --git a/Francesco.Recipes.World/Services/Category/CategoryService.cs b/Francesco.Recipes.World/Services/Category/CategoryService.cs new file mode 100644 index 0000000..df69cb8 --- /dev/null +++ b/Francesco.Recipes.World/Services/Category/CategoryService.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Data.Repository.Category +{ + public class CategoryService + { + } +} diff --git a/Francesco.Recipes.World/Services/Favorit/FavoritService.cs b/Francesco.Recipes.World/Services/Favorit/FavoritService.cs new file mode 100644 index 0000000..a37845b --- /dev/null +++ b/Francesco.Recipes.World/Services/Favorit/FavoritService.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Data.Repository.Favorit +{ + public class FavoritService + { + } +} diff --git a/Francesco.Recipes.World/Services/Ingredient/IngredientService.cs b/Francesco.Recipes.World/Services/Ingredient/IngredientService.cs new file mode 100644 index 0000000..8bdfb20 --- /dev/null +++ b/Francesco.Recipes.World/Services/Ingredient/IngredientService.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Data.Repository.Ingredient +{ + public class IngredientService + { + } +} diff --git a/Francesco.Recipes.World/Services/Instruction/InstructionsService.cs b/Francesco.Recipes.World/Services/Instruction/InstructionsService.cs new file mode 100644 index 0000000..1b156dd --- /dev/null +++ b/Francesco.Recipes.World/Services/Instruction/InstructionsService.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Repository.Instructions +{ + public class InstructionsService + { + } +} diff --git a/Francesco.Recipes.World/Services/MediaFile/MediaFileService.cs b/Francesco.Recipes.World/Services/MediaFile/MediaFileService.cs new file mode 100644 index 0000000..03c64e1 --- /dev/null +++ b/Francesco.Recipes.World/Services/MediaFile/MediaFileService.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Repository.MediaFile +{ + public class MediaFileService + { + } +} diff --git a/Francesco.Recipes.World/Services/Recipe/RecipeService.cs b/Francesco.Recipes.World/Services/Recipe/RecipeService.cs new file mode 100644 index 0000000..f6bc9dc --- /dev/null +++ b/Francesco.Recipes.World/Services/Recipe/RecipeService.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Repository.Recipe +{ + public class RecipeService + { + } +} diff --git a/Francesco.Recipes.World/Services/ShoppingLIst/ShoppingListService.cs b/Francesco.Recipes.World/Services/ShoppingLIst/ShoppingListService.cs new file mode 100644 index 0000000..84b68ee --- /dev/null +++ b/Francesco.Recipes.World/Services/ShoppingLIst/ShoppingListService.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Repository.ShoppingLIst +{ + public class ShoppingListService + { + } +} diff --git a/Francesco.Recipes.World/Services/Unit/UnitService.cs b/Francesco.Recipes.World/Services/Unit/UnitService.cs new file mode 100644 index 0000000..82c2c8d --- /dev/null +++ b/Francesco.Recipes.World/Services/Unit/UnitService.cs @@ -0,0 +1,6 @@ +namespace Francesco.Recipes.World.Repository.Unit +{ + public class UnitService + { + } +}