{"id":18153234,"url":"https://github.com/jlokitha/pos-system-backend-v2","last_synced_at":"2025-04-30T16:07:49.932Z","repository":{"id":258248954,"uuid":"871021359","full_name":"jlokitha/POS-System-Backend-v2","owner":"jlokitha","description":"The POS System Backend is a comprehensive RESTful service designed for efficient management of customer, item, and order data, built using Spring and MySQL. It facilitates robust CRUD operations, order processing, and integrates profile picture handling for enhanced user experience.","archived":false,"fork":false,"pushed_at":"2024-10-16T10:22:08.000Z","size":111,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-30T16:06:09.479Z","etag":null,"topics":["logging","mysql","pos-system","postman-collection","rest","rest-api","restful-api","spring","spring-data-jpa","spring-web-mvc","tomcat-server"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jlokitha.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null}},"created_at":"2024-10-11T05:44:48.000Z","updated_at":"2025-01-14T04:32:14.000Z","dependencies_parsed_at":null,"dependency_job_id":"182a4188-7889-4df1-93ea-c62b49acb27b","html_url":"https://github.com/jlokitha/POS-System-Backend-v2","commit_stats":null,"previous_names":["jlokitha/pos-system-backend-v2"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jlokitha%2FPOS-System-Backend-v2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jlokitha%2FPOS-System-Backend-v2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jlokitha%2FPOS-System-Backend-v2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jlokitha%2FPOS-System-Backend-v2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jlokitha","download_url":"https://codeload.github.com/jlokitha/POS-System-Backend-v2/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251739654,"owners_count":21635892,"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":["logging","mysql","pos-system","postman-collection","rest","rest-api","restful-api","spring","spring-data-jpa","spring-web-mvc","tomcat-server"],"created_at":"2024-11-02T03:06:05.548Z","updated_at":"2025-04-30T16:07:49.902Z","avatar_url":"https://github.com/jlokitha.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"﻿# POS System Backend - v2\r\n\r\n## Overview\r\nA backend service for a Point of Sale (POS) system designed to manage customer, item, and order data efficiently. This service facilitates the creation, retrieval, updating, and deletion of records, providing robust capabilities for handling orders and monitoring application health.\r\n\r\n## Technologies Used\r\nThe following technologies were used in the development of the Backend Server:\r\n\r\n- **Java 17**\r\n- **Spring Framework**\r\n- **Hibernate ORM**\r\n- **Spring Web MVC**\r\n- **Spring Data JPA**\r\n- **MySQL**\r\n- **Maven**\r\n- **Tomcat**\r\n\r\n## API endpoints\r\n- **Customer Management:**\r\n    - Create new customer records.\r\n    - Read and retrieve customer details.\r\n    - Update existing customer information.\r\n    - Delete customer records as needed.\r\n\r\n\r\n- **Item Management:**\r\n    - Add new items to the inventory.\r\n    - Retrieve item details.\r\n    - Update item information and pricing.\r\n    - Remove items from the inventory.\r\n\r\n\r\n- **Order Handling:**\r\n    - Save new orders with customer and item details.\r\n    - Retrieve order history and status.\r\n\r\n\r\n- **Health Check:**\r\n    - Verify the application's health status.\r\n\r\n## Benefits\r\n\r\n- **Efficient Management:** Streamlines customer and item management with CRUD operations, improving operational efficiency.\r\n- **Robust Order Handling:** Facilitates accurate and reliable order processing, enhancing sales and inventory tracking.\r\n- **Reliable Data Storage:** Uses Spring and JPA for stable data management and persistence.\r\n- **Scalable Architecture:** Built on spring, Java, and Tomcat, allowing for easy scaling as business needs grow.\r\n\r\n## Installation\r\nTo install and run the System, follow these steps:\r\n\r\n1. Clone the repository:\r\n\r\n   ```bash\r\n   git clone https://github.com/jlokitha/POS-System-Backend-v2.git\r\n\r\n2. Navigate to the project directory:\r\n\r\n   ```bash\r\n   cd POS-System-Backend-v2\r\n\r\n3. Open the project in IntelliJ IDEA:\r\n\r\n   ```bash\r\n   idea .\r\n## Setup and Configuration\r\n- **Configure Tomcat:**\r\n    - Go to `Run` \u003e `Edit Configurations`.\r\n    - Click the `+` button and select `Tomcat Server` \u003e `Local`.\r\n    - Set the Tomcat Home directory to your [Tomcat](https://tomcat.apache.org/download-90.cgi) installation path.\r\n    - Apply and save the configuration.\r\n\r\n\r\n- **Update Database Credentials:**\r\n    - Open the `src/main/java/lk/ijse/possystembackendv2/config/WebAppRootConfig.java` file.\r\n    - Update the MySQL username and password:\r\n\r\n      ```bash\r\n      @Bean\r\n      public DataSource dataSource() {\r\n        DriverManagerDataSource dmds = new DriverManagerDataSource();\r\n        dmds.setDriverClassName(\"com.mysql.cj.jdbc.Driver\");\r\n        dmds.setUrl(\"jdbc:mysql://localhost:3306/pos_system?createDatabaseIfNotExist=true\");\r\n        dmds.setUsername(\"Your Username\");\r\n        dmds.setPassword(\"Your Password\");\r\n        return dmds;\r\n      }\r\n\r\n- **Run Tomcat:**\r\n    - In IntelliJ IDEA, select the Tomcat configuration you created.\r\n    - Click the `Run` button (green play icon) to start Tomcat.\r\n    - The application should be deployed and accessible from your browser.\r\n\r\n\r\n## API Documentation\r\nYou can find the API documentation for this project at [API Documentation](https://documenter.getpostman.com/view/35384124/2sAXxV4pTW).\r\n\r\n## License\r\nThis project is licensed under the MIT License - see the [MIT License](LICENSE) file for details.\r\n\r\n##\r\n\u003cdiv align=\"center\"\u003e\r\n\u003ca href=\"https://github.com/jlokitha\" target=\"_blank\"\u003e\u003cimg src = \"https://img.shields.io/badge/GitHub-000000?style=for-the-badge\u0026logo=github\u0026logoColor=white\"\u003e\u003c/a\u003e\r\n\u003ca href=\"https://git-scm.com/\" target=\"_blank\"\u003e\u003cimg src = \"https://img.shields.io/badge/Git-000000?style=for-the-badge\u0026logo=git\u0026logoColor=white\"\u003e\u003c/a\u003e\r\n\u003ca href=\"https://spring.io/projects/spring-framework\" target=\"_blank\"\u003e\u003cimg src = \"https://img.shields.io/badge/Spring_Framework-100000?style=for-the-badge\u0026logo=spring\u0026logoColor=white\"\u003e\u003c/a\u003e\r\n\u003ca href=\"https://spring.io/projects/spring-data-jpa\" target=\"_blank\"\u003e\u003cimg src = \"https://img.shields.io/badge/Spring_Data_JPA-100000?style=for-the-badge\u0026logo=spring\u0026logoColor=white\"\u003e\u003c/a\u003e\r\n\u003ca href=\"https://hibernate.org/orm/\" target=\"_blank\"\u003e\u003cimg src = \"https://img.shields.io/badge/Hibernate-100000?style=for-the-badge\u0026logo=Hibernate\u0026logoColor=white\"\u003e\u003c/a\u003e\r\n\u003ca href=\"https://www.mysql.com/downloads/\" target=\"_blank\"\u003e\u003cimg src = \"https://img.shields.io/badge/MySQL-000000?style=for-the-badge\u0026logo=mysql\u0026logoColor=white\"\u003e\u003c/a\u003e\r\n\u003ca href=\"https://maven.apache.org/download.cgi\" target=\"_blank\"\u003e\u003cimg src = \"https://img.shields.io/badge/Maven-000000?style=for-the-badge\u0026logo=apachemaven\u0026logoColor=white\"\u003e\u003c/a\u003e\r\n\u003ca href=\"https://tomcat.apache.org/download-90.cgi\" target=\"_blank\"\u003e\u003cimg src = \"https://img.shields.io/badge/Tomcat-000000?style=for-the-badge\u0026logo=apachetomcat\u0026logoColor=white\"\u003e\u003c/a\u003e\r\n\u003ca href=\"https://www.postman.com/downloads/\" target=\"_blank\"\u003e\u003cimg src = \"https://img.shields.io/badge/Postman-000000?style=for-the-badge\u0026logo=Postman\u0026logoColor=white\"\u003e\u003c/a\u003e\r\n\u003ca href=\"https://www.jetbrains.com/idea/download/?section=windows\" target=\"_blank\"\u003e\u003cimg src = \"https://img.shields.io/badge/intellij-000000?style=for-the-badge\u0026logo=intellijidea\u0026logoColor=white\"\u003e\u003c/a\u003e\r\n\u003c/div\u003e \u003cbr\u003e\r\n\u003cp align=\"center\"\u003e\r\n  \u0026copy; 2024 Janindu Lokitha\r\n\u003c/p\u003e\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjlokitha%2Fpos-system-backend-v2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjlokitha%2Fpos-system-backend-v2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjlokitha%2Fpos-system-backend-v2/lists"}