微信点餐系统(二)-项目设计

项目设计:

角色划分:

买家(手机端) 卖家(PC端)

功能模块划分:

 

架构部署:

 

项目支持分布式应用,即tomcat为多个服务器,下面图是微服务简介

 

数据库设计:

 

 

create table product_info(
    product_id varchar(32) not null,
    product_name varchar(64) not null comment '商品名称',
    product_price decimal(8,2) not null comment '商品单价',
    product_stock int not null comment '库存',
    product_description varchar(64) comment '描述',
    product_icon varchar(512) comment '小图',
    category_type int not null comment '类目编号',
    create_time timestamp not null default current_timestamp comment '创建时间',
    update_time timestamp not null default current_timestamp on update current_timestamp comment '更新时间',
    primary key(product_id)
) comment '商品表';
/*这里商品id不使用自增是因为在大型项目中,如果使用自增的话,将会导致溢出,即商品id号不够用,当然小项目无所谓够用*/

  

create table product_category (
    category_id int not null auto_increment,
    category_name varchar(64) not null comment '类目名字',
    category_type int not null comment '类目编号',
    create_time timestamp not null default current_timestamp comment '创建时间',
    update_time timestamp not null default current_timestamp on update current_timestamp comment '更新时间',
    primary key(category_id),
    unique key uqe_category_type(category_type)
)comment '类目表';
/*这里不使用类目编号作为商品表的外键*/


  

create table order_table(
  order_id varchar(32) not null,
  buyer_name varchar(32) not null comment '买家姓名',
  buyer_phone varchar(32) not null comment '买家电话',
  buyer_address varchar(128) not null comment '买家地址',
  buyer_openid varchar(64) not null comment '买家微信openid',
  order_amount decimal(8,2) not null comment '订单总金额',
  order_status tinyint(3) not null default '0' comment '订单状态,默认0新下单',
  pay_status tinyint(3) not null default '0' comment '支付状态,默认0未支付',
  create_time timestamp not null default current_timestamp comment '创建时间',
  update_time timestamp not null default current_timestamp on update current_timestamp comment '更新时间',
  primary key (order_id),
  key idx_buyer_openid (buyer_openid)
) comment '订单表';

  

create table order_detail(
  detail_id varchar(32) not null,
  order_id varchar(32) not null,
  product_id varchar(32) not null,
  product_name varchar(64) not null comment '商品名称',
  product_price decimal(8,2) not null comment '商品单价',
  product_quantity int not null comment '商品数量',
  product_icon varchar(512) comment '商品小图',
  create_time timestamp not null default current_timestamp comment '创建时间',
  update_time timestamp not null default current_timestamp on update current_timestamp comment '更新时间',
  primary key (detail_id),
  key idx_order_id (order_id)
)comment '订单详情表';

  

 

原文地址:https://www.cnblogs.com/xzmxddx/p/10278761.html