1 系统需求分析
1.1 系统功能模块架构
介绍移动电商系统整体功能,服务对象,给出功能结构图,然后分别描述系统各大功能:
- 系统功能描述:
1.登录系统:用户可以通过输入用户名和密码来登录SSM移动电商平台,以便进行各种操作功能。
2.注册账户:用户可以在系统中进行注册,输入个人信息,设置账户信息、密码等。注册成功后,用户就可以登录平台。
3.查询商品信息:平台将提供商品信息查询功能,用户可以根据关键字、商品分类、价格等字段进行搜索,系统将返回相应的商品信息。
4.加入购物车:用户可在浏览商品信息时,将心仪的商品加入个人购物车。购物车中保存着用户选择的商品信息,方便随时管理。
5.购买商品:用户可从购物车中选择需要支付的商品,确认订单信息后进行支付,平台会自动完成扣款和商品配送等操作。
6.修改个人信息:用户可以在个人中心页面中,修改个人信息、修改密码及其他个人信息。
7.查询个人信息:用户可以在个人中心页面中查看自己的订单信息,收货地址,购物车信息等。平台也将提供数据分析功能,展示用户消费情况及购物心理分析等内容。
1.2 系统运行流程
图4-1 系统运行流程图
1.3 数据库设计
本系统的数据库表包含用户表、用户地址表、商品表、购物车表、商品评论表、商品图片表、商品库存表、商品类型表、品牌表、
如下给出每张表的列名、字段、类型等。
名称 | 字段 | 数据类型 |
商品编号 | goods_id | int |
商品名称 | name | varchar |
商品货号 | sn | varchar |
商品简介 | brief | varchar |
商品详细描述 | description | text |
商品单价 | price | double |
商品成本价 | cost | double |
商品市场价 | mktprice | double |
是否上架, | mkt_enable | tinyint |
分类编号 | cat_id | int |
品牌编号 | brand_id | int |
商品重量 | weight | decimal |
商品详情图片 | intro | text |
商品参数 | params | text |
创建时间 | creatime | timestamp |
最后修改时间 | last_modify | timestamp |
浏览次数 | view_count | int |
购买次数 | buy_count | int |
缩略图(主图) | thumbnail | varchar |
大图(主图) | big | varchar |
小图(主图) | small | varchar |
原图(主图) | orinal | varchar |
表4.1 商品表
表4.2 用户表
名称 | 字段 | 数据类型 |
会员id | member_id | int |
会员名 | name | varchar |
密码 | password | varchar |
邮箱 | | varchar |
性别 | gender | tinyint |
电话 | mobile | varchar |
头像 | image | varchar |
注册时间 | create_time | date |
上次更新时间 | last_time | date |
表4.3 地址表
名称 | 字段 | 数据类型 |
地址id | address_id | int |
会员id | member_id | int |
省 | province | varchar |
市 | city | varchar |
区 | region | varchar |
详细地址 | addr | text |
收货人 | receiver | varchar |
收货人联系电话 | mobile | varchar |
创建时间 | createtime | timestamp |
上次更改时间 | modifytime | timestamp |
表4.4 购物车表
名称 | 字段 | 数据类型 |
分类编号,自增主键 | cat_id | int |
分类名称 | name | varchar |
父分类编号,若有则填 | parent_id | int |
分类路径,用来辨别分类的位置 | cat_path | varchar |
分类下包含的商品数量 | goods_count | int |
排序,可改变分类在首页显示的位置 | sort | int |
类型编号 | type_id | int |
是否显示,显示为0,不显示为1 | list_show | tinyint |
分类的图片 | image | varchar |
创建分类的时间 | creatime | timestamp |
修改分类的时间 | modifytime | timestamp |
表4.5 评论表
名称 | 字段 | 数据类型 |
评论id | comment_id | int |
订单id | order_id | int |
商品id | goods_id | int |
会员id | mem_member_id | int |
会员id | member_id | int |
打分 | score | tinyint |
创建时间 | creatime | timestamp |
表4.6 图片表
名称 | 字段 | 数据类型 |
图片编号 | img_id | int |
商品id | goods_id | int |
缩略图(主图) | thumbnail | varchar |
大图(主图) | big | varchar |
小图(主图) | small | varchar |
原图(主图) | original | varchar |
isdefault | isdefault | smallint |
创建时间 | creatime | timestamp |
上次更改时间 | modifytime | timestamp |
表4.7 库存表
名称 | 字段 | 数据类型 |
库存编号 | store_id | int |
商品编号 | goods_id | int |
库存 | store | int |
可用库存 | enable_store | int |
操作类型 | operate_type | tinyint |
入库时间 | intime | timestamp |
出库时间 | outime | timestamp |
表4.8 类型表
名称 | 字段 | 数据类型 |
编号 | type_id | int |
名称 | name | varchar |
参数 | params | text |
是否可用 | disabled | tinyint |
是否实体类型 | is_physical | tinyint |
创建时间 | creatime | timestamp |
最后操作时间 | modifytime | timestamp |
表4.8 品牌表
名称 | 字段 | 数据类型 |
编号 | brand_id | int |
名称 | name | varchar |
商标 | logo | varchar |
父分类 | keywords | text |
详细描述 | description | text |
链接 | url | varchar |
是否显示 | disabled | tinyint |
创建时间 | creatime | timestamp |
最后修改时间 | modifytime | timestamp |
2 系统详细设计
2.1 用户登录/注册功能
1)功能介绍
登录实现,就是用户将账号密码发送给后端,然后,后端通过查数据库,判断一下是否有这个账号,然后查出该账号的密码跟用户传输的密码是否匹配,匹配成功就可以返回成功信息,并将其显示在用户界面中
2)流程设计
用户登录/注册时
2.2 APP主页查询功能
1)功能介绍
根据商品名称、销量排名,在数据库中检索相应的产品,用于在主页显示的数据返回给APP 显示商品列表;
2.3 商品分类功能
1)功能介绍
对所有商品的类型字段进行分类,能查询大类及其子类并将结果返回给APP在检索商品时能更加轻松的找到想要的商品
2.4 商品列表功能
1)功能介绍
根据查询内容将所有的商品以一个列表的形式检索出来并返回给APP
2)流程设计
根据用户提交的商品信息,以及当前用户的信息,将其存入数据库。
2)流程设计
3 功能实现
本次项目,我负责的功能模块是APP主页和商品分类,下面展示我负责的功能模块实现
3.1 APP主页功能
根据用户提交的查询要求查询用于在主页显示的数据返回给APP,可查询销量排行榜、性价比排行榜、根据商品名称模糊查询商品
(1)代码截图
1) LXHAppHeaderController
2) LXHAppHeaderService
3)mapper相关语句
4)dao相关语句
(2)运行过程截图
1)查询商品中销量最好的商品返回前10
url:http://localhost:8080/LXH_MS_Pro/header/get_goods_buyCount_top.do
2)查询性比前10的商品列表返回
url:http://localhost:8080/LXH_MS_Pro/header/get_goods_price_top.do
3)根据商品首页的搜索框输入商品的模糊名称查询商品列表
url:http://localhost:8080/LXH_MS_Pro/header/get_goods_names.do?goodsName=casio
3.2 商品分类功能
可以查询所有商品大类、还可以根据用户提交的某个大类查询该大类下的子类,并将查询结果返回给APP
(1)代码截图
1) LXHGoodTypeController
2) LXHAppHeaderService
3)mapper相关语句
1))、查询大类
2))、根据类型id查询包含的品牌id(小类)列表
3))、根据品牌id(小类)列表查询包含的品牌信息
4))、根据品牌id(小类)查询商品列表
4)dao相关语句
因为涉及不同dao类的dao,截取用到部分
(2)运行过程截图
1)查询商品大类
url: http://localhost:8080/LXH_MS_Pro/good_type/get_type.do
2)查询大类id查询该大类下包含的品牌(小类)
url: http://localhost:8080/LXH_MS_Pro/good_type/get_sun_type.do?id=2
3)根据品牌id查询包含的商品信息
url: http://localhost:8080/LXH_MS_Pro/good_type/get_brand_goods.do?id=15