2

代码实现进销存管理系统

 1 month ago
source link: https://blog.51cto.com/u_14882565/10514408
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

C++ 代码实现进销存管理系统

库存管理模块

负责管理库存信息,包括商品的入库、出库、库存数量的查询等功能。

#include <iostream>
#include <unordered_map>

// 商品类
class Item {
public:
    Item(std::string name, double price) : name(name), price(price) {}
    std::string getName() const { return name; }
    double getPrice() const { return price; }
private:
    std::string name;
    double price;
};

// 库存管理类
class InventoryManager {
public:
    void addStock(Item item, int quantity) {
        stock[item.getName()] += quantity;
    }

    void removeStock(Item item, int quantity) {
        if (stock[item.getName()] >= quantity) {
            stock[item.getName()] -= quantity;
        } else {
            std::cout << "Not enough stock available for " << item.getName() << std::endl;
        }
    }

    int getStockQuantity(Item item) {
        return stock[item.getName()];
    }

private:
    std::unordered_map<std::string, int> stock;
};

int main() {
    InventoryManager inventoryManager;

    Item item1("Apple", 1.5);
    Item item2("Banana", 2.0);

    inventoryManager.addStock(item1, 100);
    inventoryManager.addStock(item2, 50);

    std::cout << "Stock of " << item1.getName() << ": " << inventoryManager.getStockQuantity(item1) << std::endl;
    std::cout << "Stock of " << item2.getName() << ": " << inventoryManager.getStockQuantity(item2) << std::endl;

    inventoryManager.removeStock(item1, 20);
    std::cout << "Stock of " << item1.getName() << ": " << inventoryManager.getStockQuantity(item1) << std::endl;

    return 0;
}

销售管理模块

负责管理销售订单信息,包括录入销售订单、查询销售订单、生成销售报表等功能。

#include <iostream>
#include <vector>

// 销售订单类
class SalesOrder {
public:
    SalesOrder(int orderId, std::string customerName, std::vector<Item> items) 
        : orderId(orderId), customerName(customerName), items(items) {}

    int getOrderId() const { return orderId; }
    std::string getCustomerName() const { return customerName; }
    std::vector<Item> getItems() const { return items; }
private:
    int orderId;
    std::string customerName;
    std::vector<Item> items;
};

// 销售管理类
class SalesManager {
public:
    void createOrder(SalesOrder order) {
        orders.push_back(order);
        std::cout << "Sales order created successfully for customer " << order.getCustomerName() << std::endl;
    }

    SalesOrder getOrderDetails(int orderId) {
        for (const auto& order : orders) {
            if (order.getOrderId() == orderId) {
                return order;
            }
        }
        throw std::runtime_error("Order not found");
    }

private:
    std::vector<SalesOrder> orders;
};

int main() {
    SalesManager salesManager;

    Item item1("Apple", 1.5);
    Item item2("Banana", 2.0);
    std::vector<Item> items = {item1, item2};

    SalesOrder order(1001, "John Doe", items);
    salesManager.createOrder(order);

    try {
        SalesOrder orderDetails = salesManager.getOrderDetails(1001);
        std::cout << "Order details for order " << orderDetails.getOrderId() << ":\n";
        std::cout << "Customer: " << orderDetails.getCustomerName() << std::endl;
        std::cout << "Items:\n";
        for (const auto& item : orderDetails.getItems()) {
            std::cout << "- " << item.getName() << " ($" << item.getPrice() << ")\n";
        }
    } catch (const std::runtime_error& e) {
        std::cerr << e.what() << std::endl;
    }

    return 0;
}

采购管理模块

负责管理采购订单信息,包括录入采购订单、查询采购订单、生成采购报表等功能。

// 采购管理类
class PurchaseManager {
public:
    void createOrder(PurchaseOrder order) {
        orders.push_back(order);
        std::cout << "Purchase order created successfully for supplier " << order.getSupplierName() << std::endl;
    }

    PurchaseOrder getOrderDetails(int orderId) {
        for (const auto& order : orders) {
            if (order.getOrderId() == orderId) {
                return order;
            }
        }
        throw std::runtime_error("Order not found");
    }

private:
    std::vector<PurchaseOrder> orders;
};

用户管理模块

负责管理系统用户信息,包括用户的登录、注销、权限管理等功能。

// 用户类
class User {
public:
    User(std::string username, std::string password) : username(username), password(password) {}
    std::string getUsername() const { return username; }
    std::string getPassword() const { return password; }
private:
    std::string username;
    std::string password;
};

// 用户管理类
class UserManager {
public:
    bool login(std::string username, std::string password) {
        for (const auto& user : users) {
            if (user.getUsername() == username && user.getPassword() == password) {
                std::cout << "Login successful for user " << username << std::endl;
                return true;
            }
        }
        std::cout << "Login failed for user " << username << std::endl;
        return false;
    }

    void logout() {
        // Perform logout logic
    }

    void addUser(User user) {
        users.push_back(user);
        std::cout << "User " << user.getUsername() << " added successfully" << std::endl;
    }

    void removeUser(std::string username) {
        for (auto it = users.begin(); it != users.end(); ++it) {
            if (it->getUsername() == username) {
                users.erase(it);
                std::cout << "User " << username << " removed successfully" << std::endl;
                return;
            }
        }
        std::cout << "User " << username << " not found" << std::endl;
    }

private:
    std::vector<User> users;
};

报表生成模块

负责生成各类报表,如库存报表、销售报表、采购报表等。

// 报表类
class Report {
public:
    void generateReport() {
        // Generate report logic
    }
};

// 报表生成类
class ReportGenerator {
public:
    Report generateInventoryReport() {
        // Generate inventory report logic
        Report report;
        report.generateReport();
        return report;
    }

    Report generateSalesReport(Date startDate, Date endDate) {
        // Generate sales report logic
        Report report;
        report.generateReport();
        return report;
    }

    Report generatePurchaseReport(Date startDate, Date endDate) {
        // Generate purchase report logic
        Report report;
        report.generateReport();
        return report;
    }
};

Python 代码实现进销存管理系统

库存管理模块

负责管理库存信息,包括商品的入库、出库、库存数量的查询等功能。

class Item:
    def __init__(self, name, price):
        self.name = name
        self.price = price

class InventoryManager:
    def __init__(self):
        self.stock = {}

    def add_stock(self, item, quantity):
        if item.name in self.stock:
            self.stock[item.name] += quantity
        else:
            self.stock[item.name] = quantity

    def remove_stock(self, item, quantity):
        if item.name in self.stock and self.stock[item.name] >= quantity:
            self.stock[item.name] -= quantity
        else:
            print("Not enough stock available for", item.name)

    def get_stock_quantity(self, item):
        return self.stock.get(item.name, 0)

# Usage
inventory_manager = InventoryManager()
item1 = Item("Apple", 1.5)
item2 = Item("Banana", 2.0)
inventory_manager.add_stock(item1, 100)
inventory_manager.add_stock(item2, 50)
print("Stock of", item1.name + ":", inventory_manager.get_stock_quantity(item1))
print("Stock of", item2.name + ":", inventory_manager.get_stock_quantity(item2))
inventory_manager.remove_stock(item1, 20)
print("Stock of", item1.name + ":", inventory_manager.get_stock_quantity(item1))

销售管理模块

负责管理销售订单信息,包括录入销售订单、查询销售订单、生成销售报表等功能。

class SalesOrder:
    def __init__(self, order_id, customer_name, items):
        self.order_id = order_id
        self.customer_name = customer_name
        self.items = items

class SalesManager:
    def __init__(self):
        self.orders = []

    def create_order(self, order):
        self.orders.append(order)
        print("Sales order created successfully for customer", order.customer_name)

    def get_order_details(self, order_id):
        for order in self.orders:
            if order.order_id == order_id:
                return order
        raise ValueError("Order not found")

# Usage
sales_manager = SalesManager()
item1 = Item("Apple", 1.5)
item2 = Item("Banana", 2.0)
order = SalesOrder(1001, "John Doe", [item1, item2])
sales_manager.create_order(order)
order_details = sales_manager.get_order_details(1001)
print("Order details for order", order_details.order_id, ":")
print("Customer:", order_details.customer_name)
print("Items:")
for item in order_details.items:
    print("-", item.name, "($", item.price, ")")

采购管理模块

负责管理采购订单信息,包括录入采购订单、查询采购订单、生成采购报表等功能。

class PurchaseOrder:
    def __init__(self, order_id, supplier_name, items):
        self.order_id = order_id
        self.supplier_name = supplier_name
        self.items = items

class PurchaseManager:
    def __init__(self):
        self.orders = []

    def create_order(self, order):
        self.orders.append(order)
        print("Purchase order created successfully for supplier", order.supplier_name)

    def get_order_details(self, order_id):
        for order in self.orders:
            if order.order_id == order_id:
                return order
        raise ValueError("Order not found")

# Usage (Similar to SalesManager)

用户管理模块

负责管理系统用户信息,包括用户的登录、注销、权限管理等功能。

class User:
    def __init__(self, username, password):
        self.username = username
        self.password = password

class UserManager:
    def __init__(self):
        self.users = []

    def login(self, username, password):
        for user in self.users:
            if user.username == username and user.password == password:
                print("Login successful for user", username)
                return True
        print("Login failed for user", username)
        return False

    def add_user(self, user):
        self.users.append(user)
        print("User", user.username, "added successfully")

    def remove_user(self, username):
        for user in self.users:
            if user.username == username:
                self.users.remove(user)
                print("User", username, "removed successfully")
                return
        print("User", username, "not found")

# Usage
user_manager = UserManager()
user = User("john_doe", "password123")
user_manager.add_user(user)
user_manager.login("john_doe", "password123")

报表生成模块

负责生成各类报表,如库存报表、销售报表、采购报表等。

class Report:
    def generate_report(self):
        pass

class ReportGenerator:
    def generate_inventory_report(self):
        # Generate inventory report logic
        report = Report()
        report.generate_report()
        return report

    def generate_sales_report(self, start_date, end_date):
        # Generate sales report logic
        report = Report()
        report.generate_report()
        return report

    def generate_purchase_report(self, start_date, end_date):
        # Generate purchase report logic
        report = Report()
        report.generate_report()
        return report

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK