Skip to content

Latest commit

 

History

History
118 lines (86 loc) · 3.01 KB

README.md

File metadata and controls

118 lines (86 loc) · 3.01 KB

Order_Management_System

正在施工中,本身为简易 Demo,着重帮助掌握 Go 语言语法以及 Gin 开发框架简单使用,喜欢就点个 Star 吧!

准备工作

数据库

本项目数据库为mysql-8.0.29-winx64,数据字段如下所示:

image-20230423214159264

提供 SQL 语句一键建表

DROP TABLE IF EXISTS userinfo;
CREATE TABLE userinfo (
  userid INT AUTO_INCREMENT PRIMARY KEY,
  username VARCHAR(50) NOT NULL,
  password VARCHAR(255) NOT NULL,
  registerAt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  status INT DEFAULT 1,
  isdelete INT DEFAULT 0
);

DROP TABLE IF EXISTS shops;
CREATE TABLE shops (
  shopid INT AUTO_INCREMENT PRIMARY KEY,
  shopname VARCHAR(255) NOT NULL,
  rating FLOAT NOT NULL DEFAULT 5.0
);


DROP TABLE IF EXISTS orders;
CREATE TABLE orders (
  orderid INT AUTO_INCREMENT PRIMARY KEY,
  userid INT NOT NULL,
  shopid INT NOT NULL,
  status ENUM('待支付', '待发货', '待收货', '已完成', '已取消') DEFAULT '待支付',
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  FOREIGN KEY (userid) REFERENCES userinfo(userid),
  FOREIGN KEY (shopid) REFERENCES shops(shopid)
);

DROP TABLE IF EXISTS reviews;
CREATE TABLE reviews (
  reviewid INT AUTO_INCREMENT PRIMARY KEY,
  orderid INT NOT NULL,
  userid INT NOT NULL,
  content TEXT NOT NULL,
  rating INT NOT NULL,
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  FOREIGN KEY (orderid) REFERENCES orders(orderid),
  FOREIGN KEY (userid) REFERENCES userinfo(userid)
);

Go 语言环境

golang 版本为go1.20.2 windows/amd64

提供一篇写的挺好的帖子,感谢大哥的开源精神!

vs code 配置 go 开发环境 - 知乎 (zhihu.com)

若无法下载 import 依赖,请在命令行输入:

go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct

运行项目

开发框架采用 Gin(一个用 Go (Golang) 编写的 HTTP Web 框架)

cd Order_Management_System
go mod init github.com/jjyaoao/Order_Management_System
go mod tidy
go run .\Order_Management_System.go

实现功能

用户表段

  • 登录操作:select
  • 修改密码:update
  • 用户注册:add
  • 删除用户:delete (逻辑删除 update)

订单表段:

  • 加入购物车 :add
  • 外卖下单:add
  • 订单送达:update
  • 取消订单:update

评价表段:

  • 评价: add(增加评价记录)
  • update(修改订单状态,修改整个店铺的评分)

展望

目前只是实现一些初级的功能,还有一些未来的设想可以继续补充,例如:

  • 用户名的注册去重

  • 数据库中密文储存用户密码

  • 更佳细腻的用户登录检测

  • 实现与前端页面的交互连接

  • 将购物车功能与订单功能分开

  • 增加物流信息,实现待发货待收货的功能。

这里也是一些未完成的设想,鉴于本人太菜,以后会慢慢填坑的(bushi