{"id":24561577,"url":"https://github.com/01barthez/tp-inf-211","last_synced_at":"2026-04-17T00:02:26.070Z","repository":{"id":271033887,"uuid":"912209719","full_name":"01Barthez/TP-Inf-211","owner":"01Barthez","description":"TP: Object Oriented Programming. Subjet: Managing a supermarket’s stock can be challenging, with numerous products, suppliers, and inventory processes to oversee. As a developer for Dovv Supermarket in Biyem-Assi, Yaounde you’ve been tasked with creating a stock management system. This system will organize products by categories, manage supplier...","archived":false,"fork":false,"pushed_at":"2025-01-04T23:22:51.000Z","size":2193,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-16T22:26:52.561Z","etag":null,"topics":["cpp","crud-application","java","javascript","management-system","oriented-object-programming","python3","sql","staruml","uml-class-diagram"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"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/01Barthez.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":"2025-01-04T23:07:03.000Z","updated_at":"2025-01-14T01:11:21.000Z","dependencies_parsed_at":null,"dependency_job_id":"9385d25c-8228-4d1a-bc9d-ea762e8c19fa","html_url":"https://github.com/01Barthez/TP-Inf-211","commit_stats":null,"previous_names":["01barthez/tp-inf-211"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/01Barthez/TP-Inf-211","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/01Barthez%2FTP-Inf-211","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/01Barthez%2FTP-Inf-211/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/01Barthez%2FTP-Inf-211/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/01Barthez%2FTP-Inf-211/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/01Barthez","download_url":"https://codeload.github.com/01Barthez/TP-Inf-211/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/01Barthez%2FTP-Inf-211/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31909235,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-16T18:22:33.417Z","status":"ssl_error","status_checked_at":"2026-04-16T18:21:47.142Z","response_time":69,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["cpp","crud-application","java","javascript","management-system","oriented-object-programming","python3","sql","staruml","uml-class-diagram"],"created_at":"2025-01-23T08:33:09.757Z","updated_at":"2026-04-17T00:02:26.045Z","avatar_url":"https://github.com/01Barthez.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TP-Inf-211\n\nManaging a supermarket’s stock can be challenging, with numerous products, suppliers, and inventory processes to oversee. As a developer for Dovv Supermarket in Biyem-Assi, Yaounde you’ve been tasked with creating a stock management system. This system will organize products by categories, manage supplier and customer data, track product inventory, and streamline the ordering and restocking process.\n\n## Students Informations\n\nName: Kenwou Barthez\nMatricule: 22T2959\n\n### Exercise 1: Define Classes and Attributes\n\nHere I Identify and define the main classes necessary for the stock management system. For each class, I’ll list its attributes and methods\n\n1 - Supermaket\n    • Attributes: id, name, location, addressInfo, suppliers, products, customers, orders.\n    • Methods: displayInfo().\n\n2 - Supplier\n    • Attributes: id, name, contactInfo, gender, productsSupplied\n    • Methods: supplyProduct(), addSupplier(), getSupplierInfos(), deleteSupplier().\n\n3 - Customer\n    • Attributes: id, name, contactInfo, gender, orderHistory\n    • Methods: placeOrder(), addCustomer(), getCustomerInfos(), deleteCustomer().\n    • \n4 - Product\n    • Attributes: id, name, price, quantity, category, supplier_id, \n    • Methods: createProduct(), restockProduct(), getProductInfos(), updateProduct(), deleteProduct().\n\n5 - Order\n    • Attributes: id, customer, products, quantities, totalPrice\n    • Methods: processOrder(), cancelOrder(), getOrder(), createOrder().\n### Exercise 2: Create a UML Diagram\n\nHere I create a UML class diagram based on the classes and relationships defined\nin Exercise 1 above; The diagram clearly show how the Product, Supplier, Customer, and Order classes relate to each other; Its Include inheritance, associations, and multiplicities; its also include key attributes and methods for each class.\n\nThe Diagramm was drawed with starUML app, and this picture show the result.\nFor mor information you can upload the model using the file “UML-diagram-TP.mdj” in  a root folder.\n\n![UML Model](./UML-Diagram-TP.jpg)\n\n### Exercise 3: Create a UML Diagram\n\nJavaScript Version : \nFor this version we have to begin by make sure that a node is install (execute ```node –version``` my result: “v22.12.0”), and after that, make sure that packet who automatically generate ID is present, if is not present, we’ll install it using the command ```npm install``` or ```npm install uuid```.\n\nTo execute and test my files, me have to run the command: \n```node path_to_file/name_of_file.ext```\n\nFor example to run index file, the command is: \n```node index.js```\n For the Supermarket file, the command is: \n```node models/Supermaket.js```\n(NB: This command supposing that y’re on the root of the project).\n\nPython Version : \nFor this version compliling file is more simple...Just make sure that y’ve python3 install on your computer on typing ```python3 –version``` for my own the result is ```Python 3.12.3```.\nto execute some file, just type: ```python3 path_to_file/name_of_file.ext```\nJust make sure that y’re on root dir.\n\nC++Version :\nHere is also relaively simple…\nonce in a root directory, \n-switched to build folder by executing : ```cd build```.\n-Genereate the build file: ```cmake ..```\n-Compile the projet: ```make```\n- Execute the projet: ```./supermarket_app```\n\nIt’s also important to make sure that y’ve install this in local to avoid mistakes:```sudo apt-get update\nsudo apt-get install uuid-dev```\n\n \nJava Version :\nHere is also simple to run the file, just run the command: \n\n\nResult:\n\nFor the test that I made, the result we be: \n```bash\n        Supermarket Infos:\n        -----------------\n        \n        ID: fdb66c5e-a314-44c1-8100-7b43d31dee15\n        Name: DOVV\n        Location: Odza B10\n        Address Info: dovv-suppermaket@store.cm\n        Suppliers: 0\n        Products: 0\n        Customers: 0\n        Orders: 0\n        \n20 units added. New stock: 120\nProduct is on stock !\n\n\t\tSupplier Infos:\n\t\t-----------------\n\t\t\n\t\tID: 7b022177-22db-4f65-bc2a-7d302106e075\n\t\tName: Supplier A\n\t\tContact Info: supplierA@example.com\n\t\tSexe: Male\n\t\tProducts Supplied: 0\n\t\t\nSupplier \"Supplier A\" added to supermarket \"DOVV\".\n\n\t\tCustomer Infos:\n\t\t-----------------\n\t\t\n\t\tID: 51dec104-aa5d-47f9-898e-84c830e5b593\n\t\tName: Customer B\n\t\tContact Info: customer@example.com\n\t\tSexe: Female\n\t\tOrder History: 0\n\t\t\nCustomer \"Customer B\" added to supermarket \"DOVV\".\n\n\t\tOrder Infos:\n\t\t-----------------\n\t\t\n\t\tID: bae302ed-789c-4584-b454-abe8e9368963\n\t\tCustomer ID: [ CustomerID123 ]\n\t\tProduct ID: [ undefined ]\n\t\tQuantity: 10\n\t\t\nProduct successful added to the supermaket \"DOVV\" !\nOrder have been placed succefully !\nThis order has just successfully been deleted!\n\n\nEnd of my tests !!! 😄️\n```\n\nWe can add more actions, test, more methods or manage of differents maners…\n\n## Conclusion\nThanks for reading, thank for this work.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F01barthez%2Ftp-inf-211","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F01barthez%2Ftp-inf-211","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F01barthez%2Ftp-inf-211/lists"}