{"id":22408357,"url":"https://github.com/phmatray/bodyrocky","last_synced_at":"2025-06-16T08:03:49.425Z","repository":{"id":98957060,"uuid":"548460965","full_name":"phmatray/BodyRocky","owner":"phmatray","description":"Projet scolaire IPEPS Seraing - Analyse et conception","archived":false,"fork":false,"pushed_at":"2024-02-14T11:00:13.000Z","size":7153,"stargazers_count":0,"open_issues_count":6,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-27T01:48:45.664Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/phmatray.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-10-09T16:07:54.000Z","updated_at":"2023-12-11T14:57:23.000Z","dependencies_parsed_at":"2025-02-01T07:35:55.713Z","dependency_job_id":null,"html_url":"https://github.com/phmatray/BodyRocky","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/phmatray/BodyRocky","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phmatray%2FBodyRocky","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phmatray%2FBodyRocky/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phmatray%2FBodyRocky/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phmatray%2FBodyRocky/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/phmatray","download_url":"https://codeload.github.com/phmatray/BodyRocky/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phmatray%2FBodyRocky/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260123968,"owners_count":22962197,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-05T11:17:24.368Z","updated_at":"2025-06-16T08:03:49.387Z","avatar_url":"https://github.com/phmatray.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"﻿https://chrissainty.com/adding-tailwind-css-v3-to-a-blazor-app/\n\n\n1. Creer le fichier BasketFactory.cs\n\nBodyRocky.Back.Server \u003e DataAccess \u003e Factories \u003e BasketFactory.cs\n\n```csharp\nusing BodyRocky.Back.Server.DataAccess.Entities;\nusing BodyRocky.Back.Server.DataAccess.Enumerations;\n\nnamespace BodyRocky.Back.Server.DataAccess.Factories;\n\npublic class BasketFactory\n{\n    public Basket CreateEmptyBasket(Guid customerId)\n    {\n        return new Basket\n        {\n            BasketID = Guid.Empty,\n            BasketDateAdded = DateTime.UtcNow,\n            BasketStatusCode = (int)BasketStatusEnum.Empty,\n            CustomerID = customerId,\n            BasketProducts = new List\u003cBasketProduct\u003e()\n        };\n    }\n    \n    public Basket CreateBasketWithProducts(Guid customerId, IList\u003cProduct\u003e products)\n    {\n        var basket = CreateEmptyBasket(customerId);\n        basket.CustomerID = customerId;\n        basket.BasketProducts = products.Select(p =\u003e new BasketProduct\n        {\n            BasketID = basket.BasketID,\n            ProductID = p.ProductID,\n            Quantity = 1\n        }).ToList();\n        return basket;\n    }\n}\n```\n\n2. Ajouter une methode dans la classe PersistenceExtensions.cs\n\nBodyRocky.Back.Server \u003e DataAccess \u003e PersistenceExtensions.cs\n\n```csharp\npublic static class PersistenceExtensions\n{\n    public static void AddFactories(this IServiceCollection services)\n    {\n        services.AddSingleton\u003cBasketFactory\u003e();\n    }\n\n    ...\n}\n```\n\n3. Enregistrer les factories dans le Program.cs\n\nBodyRocky.Back.Server \u003e Program.cs\n\n```csharp\nservices.AddFactories(); // Ajouter cette ligne\nservices.AddCrudRepositories();\nservices.AddBusinessServices();\n```\n\n4. Modifier le service BasketService.cs pour injecter le BasketFactory\n\nBodyRocky.Back.Server \u003e Services \u003e BasketService.cs\n\n```csharp\npublic class BasketService\n{\n    private readonly BasketRepository _basketRepository;\n    private readonly BasketFactory _basketFactory;\n    \n    public BasketService(\n        BasketRepository basketRepository,\n        BasketFactory basketFactory)\n    {\n        _basketRepository = basketRepository;\n        _basketFactory = basketFactory;\n    }\n    \n    public async Task\u003cBasket\u003e CreateEmptyBasketAsync(Guid customerId)\n    {\n        var basket = _basketFactory.CreateEmptyBasket(customerId);\n        \n        await _basketRepository.InsertAsync(basket);\n        \n        return basket;\n    }\n\n    // ... autres methodes\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphmatray%2Fbodyrocky","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fphmatray%2Fbodyrocky","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphmatray%2Fbodyrocky/lists"}