Giter VIP home page Giter VIP logo

wpf_supermarket's Introduction

๐Ÿ›’ Supermarket Management Application

Overview

This repository contains a Supermarket Management Application built using C#, WPF, and SQL Server. The application is structured on the MVVM model and aims to provide a robust system for managing supermarket operations efficiently.

Features

General Features

  • ๐Ÿ“ฆ Products Management: Store information about products, including product name, barcode, category, and manufacturer.
  • ๐Ÿญ Manufacturers Management: Manage manufacturers' details, including name and country of origin.
  • ๐Ÿ“‚ Product Categories: Support for various product categories such as food, clothing, stationery, etc.
  • ๐Ÿ“Š Stock Management: Handle product stocks with details like quantity, unit of measure, date of procurement, expiry date, purchase price, and selling price.
  • ๐Ÿ‘ค User Management: Store information about users, including username, password, and user type.
  • ๐Ÿงพ Receipts Management: Manage receipts with details like the issuance date, cashier, list of sold products with quantities and subtotals, and total amount collected.

Administrator Functionalities

  • ๐Ÿ› ๏ธ CRUD Operations: Add, modify, delete, and view users, categories, manufacturers, products, and stocks. Note that data is logically deleted (becomes inactive) rather than physically removed from the database.
  • ๐Ÿ“ฅ Stock Entry: Manual entry of purchase price; the selling price is auto-calculated based on a predefined formula.
  • ๐Ÿ”’ Price Validation: Ensure purchase prices are immutable post-entry and selling prices cannot be set below the purchase price.
  • โœ… Form Validation: Validate all input fields in the forms for addition, modification, and deletion.
  • ๐Ÿ” Data Search and Reporting:
    • List products by a selected manufacturer and category.
    • Display the value of each product category based on current selling prices.
    • View the total amount collected by a user for a selected month, broken down by day.
    • Display the details of the largest receipt of the day, selected via a calendar interface.

Cashier Functionalities

  • ๐Ÿ”Ž Product Search: Search for products by name, barcode, expiry date, manufacturer, and category.
  • ๐Ÿงพ Receipt Management: Issue and view receipt details. The subtotal and total amounts are calculated at the time of display.
    • Example:
      2 x Mineral Water .......... 8 lei
      3 x Milka Chocolate ..... 30 lei
      Total .............................. 38 lei
      
  • ๐Ÿ”’ Immutable Receipts: Once a receipt is confirmed, it cannot be modified.
  • ๐Ÿ“Š Stock Management: Automatically manage stock quantities upon product sales. Stocks are depleted in the order they were received and marked inactive when empty or expired.

Additional Features

  • ๐Ÿ–ผ๏ธ Barcode Display: Display product barcodes as images using the ZXing.Net package.
  • ๐ŸŒ Country API Integration: Automatically populate the country of origin for manufacturers using data from the CountriesNow API.

Technology Stack

  • ๐Ÿ’ป Programming Language: C#
  • ๐Ÿ–ผ๏ธ Framework: WPF (Windows Presentation Foundation)
  • ๐Ÿ’พ Database: SQL Server
  • ๐Ÿ› ๏ธ ORM: Entity Framework

Installation and Setup

  1. Clone the repository:
    git clone https://github.com/alexandru-pestritu/WPF_Supermarket
  2. Open the solution file in Visual Studio.
  3. Update the connection string in App.config to point to your SQL Server instance.
  4. Build and run the application.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.