电子商务系统二

简介: 电子商务系统二

4. 订单类 (Order)

java复制代码

 

import java.time.LocalDate;

 

import java.util.ArrayList;

 

import java.util.List;

 

 

 

public class Order {

 

private int orderId;

 

private User user;

 

private LocalDate orderDate;

 

private List<OrderItem> orderItems;

 

private double totalPrice;

 

private String shippingAddress;

 

 

 

public Order(User user, LocalDate orderDate, String shippingAddress) {

 

this.user = user;

 

this.orderDate = orderDate;

 

this.orderItems = new ArrayList<>();

 

this.shippingAddress = shippingAddress;

 

}

 

 

 

// 添加订单项

 

public void addOrderItem(Product product, int quantity) {

 

orderItems.add(new OrderItem(product, quantity));

 

calculateTotalPrice();

 

}

 

 

 

// 计算总价

 

private void calculateTotalPrice() {

 

totalPrice = orderItems.stream()

 

.mapToDouble(orderItem -> orderItem.getProduct().getPrice() * orderItem.getQuantity())

 

.sum();

 

}

 

 

 

// Getters and Setters

 

public int getOrderId() {

 

return orderId;

 

}

 

 

 

public void setOrderId(int orderId) {

 

this.orderId = orderId;

 

}

 

 

 

public User getUser() {

 

return user;

 

}

 

 

 

public LocalDate getOrderDate() {

 

return orderDate;

 

}

 

 

 

public List<OrderItem> getOrderItems() {

 

return orderItems;

 

}

 

 

 

public double getTotalPrice() {

 

return totalPrice;

 

}

 

 

 

public String getShippingAddress() {

 

return shippingAddress;

 

}

 

 

 

public void setShippingAddress(String shippingAddress) {

 

this.shippingAddress = shippingAddress;

 

}

 

 

 

// toString method

 

@Override 

 

public String toString() {

 

return "Order{" +

 

"orderId=" + orderId +

 

", user=" + user +

 

", orderDate=" + orderDate +

 

", orderItems=" + orderItems +

 

", totalPrice=" + totalPrice +

 

", shippingAddress='" + shippingAddress + '\'' +

 

'}';

 

}

 

 

 

// 订单项类

 

static class OrderItem {

 

private Product product;

 

private int quantity;

 

 

 

public OrderItem(Product product, int quantity) {

 

this.product = product;

 

this.quantity = quantity;

 

}

 

 

 

public Product getProduct() {

 

return product;

 

}

 

 

 

public int getQuantity() {

 

return quantity;

 

}

 

 

 

// toString method

 

@Override 

 

public String toString() {

 

return "OrderItem{" +

 

"product=" + product +

 

", quantity=" + quantity +

 

'}';

 

}

 

}

 

}

5. 电子商务系统类 (ECommerceSystem)

java复制代码

 

import java.util.ArrayList;

 

import java.util.HashMap;

 

import java.util.List;

 

import java.util.Map;

 

 

 

public class ECommerceSystem {

 

private Map<String, User> users; // 用户名和用户的映射

 

private List<Product> products; // 商品列表

 

private Map<Integer, Order> orders; // 订单ID和订单的映射

 

 

 

public ECommerceSystem() {

 

users = new HashMap<>();

 

products = new ArrayList<>();

 

orders = new HashMap<>();

 

}

 

 

 

// 注册新用户

 

public void registerUser(String username, String password, String email) {

 

User newUser = new User(username, password, email);

 

users.put(username, newUser);

 

}

 

 

 

// 用户登录

 

public User login(String username, String password) {

 

User user = users.get(username);

 

if (user != null && user.getPassword().equals(password)) {

 

return user;

 

}

 

return null;

 

}

 

 

 

// 浏览商品

 

public List<Product> browseProducts() {

 

return products;

 

}

 

 

 

// 添加到购物车

 

public ShoppingCart addToCart(User user, Product product, int quantity) {

 

ShoppingCart cart = new ShoppingCart();

 

cart.addItem(product, quantity);

 

// 在实际应用中,应该返回用户已有的购物车,或者将商品添加到用户现有的购物车中

 

return

 

目录
相关文章
|
10月前
|
存储 安全 区块链
DAPP众筹互助模式系统开发|技术方案
智能合约的主要目的之一是在多方之间去信任化地自动达成金融协议
|
数据库 存储 关系型数据库
|
9月前
|
传感器 小程序 搜索推荐
(源码)java开发的一套(智慧校园系统源码、电子班牌、原生小程序开发)多端展示:web端、saas端、家长端、教师端
通过电子班牌设备和智慧校园数据平台的统一管理,在电子班牌上,班牌展示、学生上课刷卡考勤、考勤状况汇总展示,课表展示,考场管理,请假管理,成绩查询,考试优秀标兵展示、校园通知展示,班级文化各片展示等多种化展示。
131 0
(源码)java开发的一套(智慧校园系统源码、电子班牌、原生小程序开发)多端展示:web端、saas端、家长端、教师端
|
9月前
基于thinkphp5的书店管理系统学习笔记分享
基于thinkphp5的书店管理系统学习笔记分享
31 0
|
10月前
|
Java 数据安全/隐私保护
电子商务系统一
电子商务系统一
85 1
|
10月前
|
存储 区块链 数据安全/隐私保护
IDO私募预售平台项目系统开发|DAPP开发
智能合约使用计算机协议来自动执行操作,从而节省各种商业流程的时间
商城dapp系统开发技术分析丨商城dapp开发案例及源码
商城dapp系统开发技术分析丨商城dapp开发案例及源码
|
SQL 存储 JavaScript
会议OA系统会议管理模块开发思路(layui搭建)
会议OA系统会议管理模块开发思路(layui搭建)
126 0
|
JSON 前端开发 Java
Layui实现OA会议系统之会议管理模块总合
Layui实现OA会议系统之会议管理模块总合
177 0

热门文章

最新文章