基于Django的疫情困扰下的民慧钢材销售分析及纾困策略
摘 要
疫情之下,实体经济面临下行压力。2019年以来,新冠肺炎疫情卷土而来,各地地疫情防控形势严峻,许多中小微企业经营发展屡次遭受打击。面对疫情常态化的社会现实,为纾困中小企业,助力经济复苏,保障社会稳定运行,国家有关部门相继出台一系列政策“组合拳”,加大纾困支持力度,提振市场信心。受疫情影响,许多国家生产受阻、供应链中断,产业链面临巨大风险。然而危机也意味着机遇,疫情正在重塑全球供应链版图,敦促企业通过数字化手段提高供应链管理能力。拥有稳定、可快速响应的供应系统已成为企业的核心竞争力。
本系统主要是提供给用户一个购买钢材的平台,通过价格优势吸引众多消费者来购买,实现正常运营。本文主要是采用Python语言、Django技术、MySQL数据库、Apache服务器作为开发平台,系统采用B/S结构进行开发,完成一个钢材销售销售商城。目标是实现一个以销售为中心的计算机系统,构建用户信息与账号,账号与订单信息有机结合的业务系统。
关键词:Django技术;销售系统;MySQL数据库
Based on Django's epidemic situation, Minhui steel
sales analysis and rescue strategy
ABSTRACT
Under the epidemic, the real economy faces downward pressure. Since 2019, the COVID-19 has swept in, and the situation of epidemic prevention and control in various regions is grim. Many small and medium-sized enterprises have suffered repeated blows to their business development. In the face of the social reality of the normalization of the epidemic situation, in order to rescue small and medium-sized enterprises, help economic recovery, and ensure the stable operation of the society, the relevant national departments have successively issued a series of policies "combination boxing" to increase the rescue support and boost market confidence. Affected by the epidemic, production in many countries has been blocked and supply chain has been interrupted, and the industrial chain is facing huge risks. However, the crisis also means opportunities. The epidemic is reshaping the global supply chain landscape and urging enterprises to improve their supply chain management capabilities through digital means. Having a stable and responsive supply system has become the core competitiveness of enterprises.
This system is mainly to provide users with a platform to purchase steel, attract many consumers to purchase through price advantages, and realize normal operation. This paper mainly uses Python language, Django technology, MySQL database, Apache server as the development platform, and the system uses B/S structure for development, to complete a steel sales mall. The goal is to achieve a sales-centric computer system and build a business system that organically combines user information and account number, account number and order information.
Key words: Django technology; Sales system; MySQL database
目 录
第1章 绪论
1.1研究背景
1.2研究意义
1.3系统目标
1.4本文的结构
第2章 关键技术介绍
2.1开发环境介绍
2.2统一建模语言
2.3 Django框架
2.4 MySQL简介
第3章 系统分析
3.1可行性分析
3.1.1操作可行性
3.1.2技术可行性
3.1.3经济可行性
3.2功能需求分析
3.3用例分析
3.4数据流分析
3.5数据字典
第4章 系统设计
4.1结构设计
4.2功能设计
4.3数据库设计
4.3.1概念设计
4.3.2表设计
第5章 系统详细设计
5.1登录模块
5.2注册模块
5.3商品浏览模块
5.5商品评论模块
5.6购买商品模块
5.7用户管理模块
5.8商品管理模块
5.9订单管理模块
第6章 系统测试
6.1测试目的
6.2测试用例
第7章 结论
参考文献
致 谢
疫情要防住、经济要稳住。针对中小企业面临的实际困难,从推动各地积极安排中小微企业纾困专项资金,到5月18日银保监会表态要求国有大型商业银行2022年新增普惠型小微企业贷款1.6万亿元,再到做好大宗原材料保供稳价、加强生产要素保障力度、实行“企一策”“一厂一策”差异化举措,融资、降本、服务各项纾困助企政策正加快实施。
疫情当前,受限于时间、空间,无法实时实地跟进,导致信息传递滞后、供应链管理风险加剧。这也给了企业重新审视自身管理能力的窗口。越来越多的企业选择通过销售系统,突破空间和时间的限制,实现业务全流程线上监管。数字经济为企业注入源源不断的动力。产业数字化增强了企业应对疫情冲击的韧劲儿。
电子商务的骤起,一时间网络进行购物这一形式备受欢迎,到现在,网购更是普及。现如今,各个行业也通过网购的方式来进行拓展业务,增加企业的知名度以及提升业绩,满足了用户像网购一样,线上查看钢材资讯、钢材商城,利用当下火热的计算机技术来针对钢材销售相关业务建设一个安全、可靠、专业的信息管理系统,能让管理的流程更加的便捷,能让投入的人力有所减少,能够让效率得到明显的提升,还能给用户提供更高品质的服务。
1.3系统目标
对于典型的数据库系统,尤其是对于像钢材销售商城这样的数据流量特别大的网络系统,必须要满足使用方便、操作灵活等要求。本系统在设计时应该满足以下几个目标
(1)采用人机对话的操作方式,界面美观、友好,信息查询灵活、方便,数据存储准确、安全可靠;
(2)全面展示所有商品,并可展示主要商品;
(3)便于顾客快捷地进行商品信息查询;
(4)用户可以随时修改自己的基本资料;
(5)实现下单的功能;
(6)顾客可以随时查看自己的订单信息;
(7)对客户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误;
(8)系统最大限度地实现了易维护性和易操作性;
(9)系统运行稳定、安全可靠。
本文具体内容包括:绪论、系统采用的关键技术、系统分析、系统设计、系统实现和系统测试。本文着重描述了系统的组成与结构,阐述了系统的设计方案、实现方法以及所采用的开发工具和相关技术,另外,重点剖析了部分环节的开发过程。本系统在一定的环境下对系统的重要模块进行了模拟测试,证实了系统的可用性、可靠性。
1.软件体系结构方案:采用B/S模式,B/S代表的是服务器端由Web服务器发放,客户端由浏览器接收的系统,它的前台是Html语言,由浏览器解释。B/S结构可以由Web服务器能够解释的脚本语言如JSP、PHP、ASP、JavaScript。
2.操作系统方案:Windows 7(旗舰版)操作系统,该系统可以兼容需要的软件,并且具有良好的运行速度,界面良好。
3.后台数据库:选用MySQL。MySQL旨在通过数据库加密、更加安全的默认设置、加强的密码政策和细化许可控制、及加强的安全模型等特性,为企业数据提供最高级别的安全性。
4.开发工具:选用Pycharm
5.开发语言:Python语言。
6.开发技术:Django+Html+CSS+JS技术
统一建模语言(Unified Modeling Language ,UML)是一种可视化建模语言,通俗上讲就是系统开发者利用UML可以清楚地表达出自己对系统是如何设计,是一种设计思想的体现,然而UML就是作为辅助工具,就如汽车轴承的轮滑油。UML包括了一些可以相互组合图表的图形元素。由于UML是一种语言,所以UML具有组合这些元素的法规。UML提供了多种图来设计设计系统,如设计系统前期常用的用例图,行为图等,这些图需要用多个视图来展示一个系统,这组视图被称为一个模型(Model)。一个UML模型描述了一个系统需要做什么。同时,UML提供了组织和扩展这些图的方法。
Django是一个由Python编写的具有完整架站能力的开源Web框架。使用Django,只要很少的代码,Python的程序开发人员就可以轻松地完成一个正式网站所需要的大部分内容,并进一步开发出全功能的Web服务[10]。
Django本身基于MVC模型,即Model(模型)+View(视图)+ Controller(控制器)设计模式,因此天然具有MVC的出色基因:开发快捷、部署方便、可重用性高、维护成本低等。Python加Django是快速开发、设计、部署网站的最佳组合[11]。
Django具有以下特点:
能完善、要素齐全:该有的、可以没有的都有,常用的、不常用的工具都用。Django提供了大量的特性和工具,无须你自己定义、组合、增删及修改[12]。
完善的文档:经过十多年的发展和完善,Django有广泛的实践经验和完善的在线文档(可惜大多数为英文)。开发者遇到问题时可以搜索在线文档寻求解决方案[13]。
强大的数据库访问组件:Django的Model层自带数据库ORM组件,使得开发者无须学习其他数据库访问技术(SQL、pymysql、SQLALchemy等)。
灵活的URL映射:Django使用正则表达式管理URL映射,灵活性高。
丰富的Template模板语言:类似jinjia模板语言,不但原生功能丰富,还可以自定义模板标签[14]。
MySQL是SUN公司之前开发的中小型数据库服务器,是其公司推出的一个关系型数据库管理系统,同SQL Server一样,它提供商业和企业级的数据管理,具有可扩展性、可伸缩性、集成程度高等有优点,在性能指标等各方面上都能和甲骨文公司的Oracle数据库媲美,它具有Web开发的所有功能,开发人员可以用它来管理数据库文件、开发数据库应用程序和Web程序,它采用了最先进的数据库架构,与Windows下的各种操作系统完美兼容。它可以控制数据操作不管数据存在哪里,即使是移动终端。
本系统操作简单,易理解。钢材销售商城与大部分电子商务系统的操作流程类似,避免了用户学习使用系统的时间和负担。
3.1.1操作可行性
本系统使用的是现流行的开发语言,即Django技术。同时所有的信息都是以网页的形式展示,系统中的信息都可以在后台操作数据库达到数据更新的效果。用户只需要会计算机的基本操作或者会上网就可以使用本系统,系统管理员只需要懂得文件上传,处理文本即可操作管理后台。系统布局较简单,功能操作不复杂,完全符合现代市场需求。因此本系统具有操作可行性。
3.1.2技术可行性
本系统在Windows7开发环境下,利用Pycharm开发工具,并使用MySQL作为数据库管理系统来实现系统的各种功能。MySQL属于主从式的数据库服务器这也是主从式数据库服务器的特点,服务器本身重在数据的管理,为用户端应用程序提供一致的接口。可以提高系统的性能,降低它的局限性。
3.1.3经济可行性
本系统是一个在线的钢材销售商城,顾客可以直接在系统上购买商品,同时计算机的价格十分低廉,性能却有了长足的进步。而此系统的开发可以有效的提高工作效率,降低管理成本,节省管理费用,为企业的工作效率带来了一个质的飞跃。因此,本系统在经济上是完全具有可行性的。
通过本系统,卖家节省了用于交易场所、服务质量、维护商铺杂支开销等方面的投入,从而降低了价格;买家方面,不仅节约了时间成本,同时降低了购买成本,可以“货比三家”地随意挑选性价比高的产品。加快了交易和货币流通速度,而进而推动经济的增长。
根据条件需要,系统结构主要由二大用户组成。一是买家组成的买家用户,二是作为商家或者卖家的管理员用户。
1用户登录及身份要求
验证买家、管理员等用户的信息
2本系统销售功能需求(面向买家用户)
允许买家查看公告消息。
允许买家用户评论商品。
允许买家用户查询商品的信息。
允许买家用户对购物车的管理。
自动生成订单。
买家用户在线支付订单费用。
买家选择商品,进行购买,填写发货地址、联系电话等信息。
3本系统销售功能需求(面向卖家用户)
对商品信息的管理(添加、删除,修改,查询)。
对买家的订单的管理(删除,修改,查询)。
管理商品的销售数据。
对买家卖家用户注册信息的管理(添加,删除,修改,查询)。
对商品信息的管理(删除,修改,查询)。
对买家的订单的管理(删除,修改,查询)。
对商品类别管理(添加、删除、修改商品类别)。
1.管理员主要负责首页、网站管理(轮播图、公告消息)人员管理(管理员、普通用户)内容管理(钢材资讯、资讯分类)购物管理(钢材商城、分类列表、订单列表)模块管理(物流信息、钢材信息、钢材类型、销售数据)个人管理,下图所示描述管理员的用例。
2.买家用户主要使用系统的在线购买业务,下图所示为买家用户用例图。
数据流图的设计主要是由于系统目前功能还没有确定,可以先描述可能要使用到的功能内容,并且向用户了解“系统从外界接受什么数据”和“系统向外界送出什么数据”等信息,根据用户所给的答复进行设计数据流图。
如下为系统的0层数据流图,系统用户分为管理员和普通用户。
图3-4系统数据流图(0层)
如下图所示为系统1层数据流图。
钢材销售商城第二层数据流图主要详细反应各功能模块对应的操作与数据进行交互的原理。并且更详细的显示出各角色对功能模块操作的数据流向,让开发人员能了解该系统的开发方向,能够更准确的开发出系统模型。
将商品信息维护进行细化得到商品信息管理二层数据流程图,如下图所示。
图3-6商品管理数据流图(2层)
将订单信息管理进行细化得到订单信息管理二层数据流程图,如下图所示。
图3-7订单管理数据流图(2层)
1.数据存储描述
下表描述了用户信息的数据流、数据来源、数据去向和数据流组成的词条。
数据流 | 用户信息 |
数据流来源 | MySQL数据库中用户信息表,用户详细信息表 |
数据去向 | 系统界面,用户信息管理界面 |
数据流组成 | 用户名、用户密码、添加时间、编号 |
下表描述了购物车信息的数据流、数据来源、数据去向和数据流组成的词条。
数据流 | 购物车信息 |
数据流来源 | MySQL数据库中购物车表,购物车详细信息表 |
数据去向 | 购物车界面 |
数据流组成 | 购物车ID、用户ID、商品ID、数量 |
下表描述了订单信息的数据流、数据来源、数据去向和数据流组成的词条。
数据流 | 订单信息 |
数据流来源 | MySQL数据库中订单表,订单详情表 |
数据去向 | 用户订单界面,订单管理界面 |
数据流组成 | 用户ID、订单ID、商品ID、下单时间、订单金额 |
下表描述了商品类别的数据流、数据来源、数据去向和数据流组成的词条。
数据流 | 商品类别信息 |
数据流来源 | MySQL数据库中商品类别表、商品详情表 |
数据去向 | 商品详情界面、购物车界面、商品类别管理界面 |
数据流组成 | 商品类别名 |
下表描述了商品管理的数据流、数据来源、数据去向和数据流组成的词条。
数据流 | 商品信息 |
数据流来源 | MySQL数据库中商品表、商品类别表 |
数据去向 | 商品查询界面、商品详情界面、购物车界面、商品管理界面 |
数据流组成 | 商品名、商品价格、库存数量、商品类别 |
下表描述用户通过输入用户名和密码进行身份验证处理,验证成功后将返回的信息显示在界面上。
处理逻辑名称 | 用户身份验证 |
简述 | 检查输入信息的合法性 |
输入的数据流 | 用户名+密码 |
处理过程 | 根据输入的用户名和密码,检索用户,显示查询信息 |
输出的数据流 | 用户信息、商品信息 |
下表描述用户成功登录系统后通过商品名查询商品信息,根据查询后返回的数据显示在界面上。
处理逻辑名称 | 商品信息查询 |
简述 | 检查输入信息的合法性 |
输入的数据流 | 商品名或商品编号或商品类别 |
处理过程 | 登录成功的用户,通过商品名查询用户所需的商品,还可查询用户的订单及评论。 |
输出的数据流 | 用户订单信息,购物车信息 |
下表描述管理员用户成功登录系统后可以添加商品,添加后,重新查询商品表,返回的商品数据显示在界面上。
表3-8商品信息添加
处理逻辑名称 | 商品信息添加 |
简述 | 检查输入信息的合法性 |
输入的数据流 | 商品信息 |
处理过程 | 登录成功的管理员用户,往数据库添加一条商品信息数据。 |
输出的数据流 | 商品信息,订单信息 |
下表描述管理员用户成功登录系统后,购买商品,填写订单收货人、收货地址、联系电话等,生成购买订单后,重新查询订单表,返回的订单数据显示在界面上。
表3-9订单生成
处理逻辑名称 | 订单生成 |
简述 | 检查输入信息的合法性 |
输入的数据流 | 订单信息 |
处理过程 | 登录成功的用户,往数据库添加一条订单信息数据。 |
输出的数据流 | 订单信息 |
本系统的设计是基于Django技术+MySQL数据库+Apache服务器的方式设计,以Pycharm为开发工具,并运用Photoshop CS6技术美化网页,辅之以CSS技术。本系统使用的角色主要有系统管理员和普通用户,系统分为前台和后台,前台主要用于商品的展示和购买,后台用于商品信息和订单信息的管理,首先以普通用户通过账号注册后登录系统前台,可以进行各种商品的信息浏览和搜索,用户可以将需要的商品进行下单购买,用户可以查询订单是否已经被确认,订单生成后表示用户购买成功,前台系统除了可以进行商品的下单还可以查看前台的商城信息,进行商品评论,用户同时可以修改个人的信息资料,查看个人的购买记录;以管理员的身份登录系统后台可以进行商品类目维护、商品数据维护、商品上架、商品下架、客户订单维护、系统数据维护。
系统功能结构图如下所示。
图4-1系统功能结构图
1.用户登录模块:确保用户注册信息的真实度是提高系统效率和盈利的重要因素。真实的用户才能带来价值,注册是保证真实用户使用系统主要业务的第一步,通过对用户注册信息的审核,可防止机器注册。使用现如今较为流行的管理员进行账号激活的验证方式,对用户注册信息进行过滤,未激活用户信息将不能使用系统主要功能。
如下图所示为用户登录流程图。
图4-2用户登录流程图
2.商品浏览模块:没有登录的用户和登录的用户都可以在系统前台进行商品浏览,用户可以查看商品的详细信息和选择相应的商品类别进行该类别下的商品查看,用户还可以通过商品名称的关键字进行搜索。
如下图所示为商品浏览流程图。
图4-3商品浏览流程图
3.订单管理模块:用户购买商品后,填写收货地址、收货人、电话等信息,生成订单信息,管理员可以审核订单,删除、修改订单,对订单信息进行相应的商品发货。
如下图所示为订单管理流程图。
图4-4订单管理流程图
5.用户管理模块
系统管理员可以对用户信息进行增、删、改、查的操作。
用户对个人添加至购物车里面的商品进行增删改查等操作。
如下图所示为购物车模块流程图。
图4-5购物车模块流程图
用户在线评论商品,管理员回复评论,管理删除评论。
系统管理员可以对商品类别进行增、删、改、查的操作。
4.3.1概念设计
本系统的E-R图表现了系统中各个实体之间的联系,经过分析,系统的实体有商品、商品类别、留言、购物车、订单、用户等。
商品实体图如下图所示。
图4-6商品实体图
商品类别实体图如下图所示。
图4-7商品类别实体图
用户实体图如下图所示。
图4-9用户实体图
购物车的实体图如下图所示。
图4-10购物车实体图
订单的实体图如下图所示。
图4-10订单实体图
系统总体的实体图如下图所示。
图4-11系统E-R图
4.3.2表设计
数据库表设计:经过前期的需求分析、可执行分析、数据流分析等各个流程分析,结合软件工程的高内聚、低耦合规则,并考虑到以后的程序功能扩展,设计如下几张表。
表access_token (登陆访问时长)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | token_id | int | 10 | 0 | N | Y | 临时访问牌ID | |
2 | token | varchar | 64 | 0 | Y | N | 临时访问牌 | |
3 | info | text | 65535 | 0 | Y | N | ||
4 | maxage | int | 10 | 0 | N | N | 2 | 最大寿命:默认2小时 |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户编号: |
表address (收货地址:)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | address_id | int | 10 | 0 | N | Y | 收货地址: | |
2 | name | varchar | 32 | 0 | Y | N | 姓名: | |
3 | phone | varchar | 13 | 0 | Y | N | 手机: | |
4 | postcode | varchar | 8 | 0 | Y | N | 邮编: | |
5 | address | varchar | 255 | 0 | N | N | 地址: | |
6 | user_id | mediumint | 8 | 0 | N | N | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | default | bit | 1 | 0 | N | N | 0 | 默认判断 |
表article (文章:用于内容管理系统的文章)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | article_id | mediumint | 8 | 0 | N | Y | 文章id:[0,8388607] | |
2 | title | varchar | 125 | 0 | N | Y | 标题:[0,125]用于文章和html的title标签中 | |
3 | type | varchar | 64 | 0 | N | N | 0 | 文章分类:[0,1000]用来搜索指定类型的文章 |
4 | hits | int | 10 | 0 | N | N | 0 | 点击数:[0,1000000000]访问这篇文章的人次 |
5 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
6 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
8 | source | varchar | 255 | 0 | Y | N | 来源:[0,255]文章的出处 | |
9 | url | varchar | 255 | 0 | Y | N | 来源地址:[0,255]用于跳转到发布该文章的网站 | |
10 | tag | varchar | 255 | 0 | Y | N | 标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开 | |
11 | content | longtext | 2147483647 | 0 | Y | N | 正文:文章的主体内容 | |
12 | img | varchar | 255 | 0 | Y | N | 封面图 | |
13 | description | text | 65535 | 0 | Y | N | 文章描述 |
表article_type (文章分类)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | type_id | smallint | 5 | 0 | N | Y | 分类ID:[0,10000] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000]决定分类显示的先后顺序 |
3 | name | varchar | 16 | 0 | N | N | 分类名称:[2,16] | |
4 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
5 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该分类的作用 | |
6 | icon | text | 65535 | 0 | Y | N | 分类图标: | |
7 | url | varchar | 255 | 0 | Y | N | 外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表auth (用户权限管理)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | auth_id | int | 10 | 0 | N | Y | 授权ID: | |
2 | user_group | varchar | 64 | 0 | Y | N | 用户组: | |
3 | mod_name | varchar | 64 | 0 | Y | N | 模块名: | |
4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
5 | page_title | varchar | 255 | 0 | Y | N | 页面标题: | |
6 | path | varchar | 255 | 0 | Y | N | 路由路径: | |
7 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳转方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可删除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | varchar | 500 | 0 | Y | N | 添加字段: | |
14 | field_set | varchar | 500 | 0 | Y | N | 修改字段: | |
15 | field_get | varchar | 500 | 0 | Y | N | 查询字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表导航名称: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表导航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表cart (购物车)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | cart_id | int | 10 | 0 | N | Y | 购物车ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | img | varchar | 255 | 0 | N | N | 0 | 图片: |
4 | user_id | int | 10 | 0 | N | N | 0 | 用户ID: |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | state | int | 10 | 0 | N | N | 0 | 状态:使用中,已失效 |
8 | price | double | 9 | 2 | N | N | 0.00 | 单价: |
9 | price_ago | double | 9 | 2 | N | N | 0.00 | 原价: |
10 | price_count | double | 11 | 2 | N | N | 0.00 | 总价: |
11 | num | int | 10 | 0 | N | N | 1 | 数量: |
12 | goods_id | mediumint | 8 | 0 | N | N | 商品id:[0,8388607] | |
13 | type | varchar | 64 | 0 | N | N | 未分类 | 商品分类: |
14 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]用于产品规格描述 |
表collect (收藏)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | collect_id | int | 10 | 0 | N | Y | 收藏ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 收藏人ID: |
3 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
4 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
5 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
6 | title | varchar | 255 | 0 | Y | N | 标题: | |
7 | img | varchar | 255 | 0 | Y | N | 封面: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表comment (评论)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | comment_id | int | 10 | 0 | N | Y | 评论ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 评论人ID: |
3 | reply_to_id | int | 10 | 0 | N | N | 0 | 回复评论ID:空为0 |
4 | content | longtext | 2147483647 | 0 | Y | N | 内容: | |
5 | nickname | varchar | 255 | 0 | Y | N | 昵称: | |
6 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
10 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
11 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
表goods (商品信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | goods_id | mediumint | 8 | 0 | N | Y | 产品id:[0,8388607] | |
2 | title | varchar | 125 | 0 | Y | N | 标题:[0,125]用于产品和html的<title>标签中 | |
3 | img | text | 65535 | 0 | Y | N | 封面图:用于显示于产品列表页 | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]用于产品规格描述 | |
5 | price_ago | double | 8 | 2 | N | N | 0.00 | 原价:[1] |
6 | price | double | 8 | 2 | N | N | 0.00 | 卖价:[1] |
7 | sales | int | 10 | 0 | N | N | 0 | 销量:[0,1000000000] |
8 | inventory | int | 10 | 0 | N | N | 0 | 商品库存 |
9 | type | varchar | 64 | 0 | N | N | 商品分类: | |
10 | hits | int | 10 | 0 | N | N | 0 | 点击量:[0,1000000000]访问这篇产品的人次 |
11 | content | longtext | 2147483647 | 0 | Y | N | 正文:产品的主体内容 | |
12 | img_1 | text | 65535 | 0 | Y | N | 主图1: | |
13 | img_2 | text | 65535 | 0 | Y | N | 主图2: | |
14 | img_3 | text | 65535 | 0 | Y | N | 主图3: | |
15 | img_4 | text | 65535 | 0 | Y | N | 主图4: | |
16 | img_5 | text | 65535 | 0 | Y | N | 主图5: | |
17 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
18 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
19 | customize_field | text | 65535 | 0 | Y | N | 自定义字段 | |
20 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
21 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
22 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
23 | user_id | int | 10 | 0 | Y | N | 0 | 添加人 |
表goods_type (商品类型)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | type_id | int | 10 | 0 | N | Y | 商品分类ID: | |
2 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
3 | name | varchar | 255 | 0 | Y | N | 商品名称: | |
4 | desc | varchar | 255 | 0 | Y | N | 描述: | |
5 | icon | varchar | 255 | 0 | Y | N | 图标: | |
6 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
7 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表hits (用户点击)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | hits_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
表logistics_information (物流信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | logistics_information_id | int | 10 | 0 | N | Y | 物流信息ID | |
2 | order_no | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | trade_name | varchar | 64 | 0 | Y | N | 商品名称 | |
4 | commodity_type | varchar | 64 | 0 | Y | N | 商品类型 | |
5 | commodity_price | varchar | 64 | 0 | Y | N | 商品价格 | |
6 | buying_users | int | 10 | 0 | Y | N | 0 | 购买用户 |
7 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
8 | contact_number | varchar | 64 | 0 | Y | N | 联系电话 | |
9 | ship_to_address | varchar | 64 | 0 | Y | N | 收货地址 | |
10 | purchase_quantity | varchar | 64 | 0 | Y | N | 购买数量 | |
11 | purchase_date | date | 10 | 0 | Y | N | 购买日期 | |
12 | total_order_price | varchar | 64 | 0 | Y | N | 订单总价 | |
13 | order_status | varchar | 64 | 0 | Y | N | 订单状态 | |
14 | sign_in_status | varchar | 64 | 0 | Y | N | 签收状态 | |
15 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
16 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
17 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表notice (公告)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | notice_id | mediumint | 8 | 0 | N | Y | 公告id: | |
2 | title | varchar | 125 | 0 | N | N | 标题: | |
3 | content | longtext | 2147483647 | 0 | Y | N | 正文: | |
4 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表order (订单)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | order_id | int | 10 | 0 | N | Y | 订单ID: | |
2 | order_number | varchar | 64 | 0 | Y | N | 订单号: | |
3 | goods_id | mediumint | 8 | 0 | N | N | 商品id:[0,8388607] | |
4 | title | varchar | 32 | 0 | Y | N | 商品标题: | |
5 | img | varchar | 255 | 0 | Y | N | 商品图片: | |
6 | price | double | 10 | 2 | N | N | 0.00 | 价格: |
7 | price_ago | double | 10 | 2 | N | N | 0.00 | 原价: |
8 | num | int | 10 | 0 | N | N | 1 | 数量: |
9 | price_count | double | 8 | 2 | N | N | 0.00 | 总价: |
10 | norms | varchar | 255 | 0 | Y | N | 规格: | |
11 | type | varchar | 64 | 0 | N | N | 未分类 | 商品分类: |
12 | contact_name | varchar | 32 | 0 | Y | N | 联系人姓名: | |
13 | contact_email | varchar | 125 | 0 | Y | N | 联系人邮箱: | |
14 | contact_phone | varchar | 11 | 0 | Y | N | 联系人手机: | |
15 | contact_address | varchar | 255 | 0 | Y | N | 收件地址: | |
16 | postal_code | varchar | 9 | 0 | Y | N | 邮政编码: | |
17 | user_id | int | 10 | 0 | N | N | 0 | 买家ID: |
18 | merchant_id | mediumint | 8 | 0 | N | N | 0 | 商家ID: |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
21 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]用于产品规格描述 | |
22 | state | varchar | 16 | 0 | N | N | 待付款 | 订单状态:待付款,待发货,待签收,已签收,待退款,已退款,已拒绝,已完成 |
表ordinary_users (普通用户)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | ordinary_users_id | int | 10 | 0 | N | Y | 普通用户ID | |
2 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
3 | user_gender | varchar | 64 | 0 | Y | N | 用户性别 | |
4 | user_age | varchar | 64 | 0 | Y | N | 用户年龄 | |
5 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
6 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表praise (点赞)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | praise_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | status | bit | 1 | 0 | N | N | 1 | 点赞状态:1为点赞,0已取消 |
表sales_data (销售数据)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | sales_data_id | int | 10 | 0 | N | Y | 销售数据ID | |
2 | document_no | varchar | 64 | 0 | Y | N | 单据编号 | |
3 | steel_production_plant | varchar | 64 | 0 | Y | N | 生产钢厂 | |
4 | steel_product_name | varchar | 64 | 0 | Y | N | 钢材品名 | |
5 | steel_material | varchar | 64 | 0 | Y | N | 钢材材质 | |
6 | specification_and_model | varchar | 64 | 0 | Y | N | 规格型号 | |
7 | batch_number | varchar | 64 | 0 | Y | N | 生产批号 | |
8 | sales_volumes | varchar | 64 | 0 | Y | N | 销售数量 | |
9 | business_type | varchar | 64 | 0 | Y | N | 业务类型 | |
10 | customer_type | varchar | 64 | 0 | Y | N | 客户类型 | |
11 | business_area | varchar | 64 | 0 | Y | N | 业务区域 | |
12 | sales_department | varchar | 64 | 0 | Y | N | 销售部门 | |
13 | unit_price_including_tax | varchar | 64 | 0 | Y | N | 含税单价 | |
14 | total_price_and_tax | varchar | 64 | 0 | Y | N | 价税合计 | |
15 | steel_warehouse | varchar | 64 | 0 | Y | N | 钢材仓库 | |
16 | province | varchar | 64 | 0 | Y | N | 所在省份 | |
17 | city | varchar | 64 | 0 | Y | N | 所在城市 | |
18 | districtcounty | varchar | 64 | 0 | Y | N | 所在区县 | |
19 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
20 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
21 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表slides (轮播图)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | slides_id | int | 10 | 0 | N | Y | 轮播图ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | content | varchar | 255 | 0 | Y | N | 内容: | |
4 | url | varchar | 255 | 0 | Y | N | 链接: | |
5 | img | varchar | 255 | 0 | Y | N | 轮播图: | |
6 | hits | int | 10 | 0 | N | N | 0 | 点击量: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表steel_information (钢材信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | steel_information_id | int | 10 | 0 | N | Y | 钢材信息ID | |
2 | steel_brand | varchar | 64 | 0 | Y | N | 钢材品牌 | |
3 | steel_product_name | varchar | 64 | 0 | Y | N | 钢材品名 | |
4 | steel_type | varchar | 64 | 0 | Y | N | 钢材类型 | |
5 | specification_and_model | varchar | 64 | 0 | Y | N | 规格型号 | |
6 | steel_material | varchar | 64 | 0 | Y | N | 钢材材质 | |
7 | steel_use | varchar | 64 | 0 | Y | N | 钢材用途 | |
8 | steel_price | varchar | 64 | 0 | Y | N | 钢材价格 | |
9 | business_type | varchar | 64 | 0 | Y | N | 业务类型 | |
10 | steel_picture | varchar | 255 | 0 | Y | N | 钢材图片 | |
11 | introduction_to_steel | longtext | 2147483647 | 0 | Y | N | 钢材简介 | |
12 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
13 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表steel_mall (钢材商城)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | steel_mall_id | int | 10 | 0 | N | Y | 钢材商城ID | |
2 | notice | varchar | 64 | 0 | Y | N | 须知 | |
3 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
4 | cart_title | varchar | 125 | 0 | Y | N | 标题:[0,125]用于产品html的标签中 | |
5 | cart_img | text | 65535 | 0 | Y | N | 封面图:用于显示于产品列表页 | |
6 | cart_description | varchar | 255 | 0 | Y | N | 描述:[0,255]用于产品规格描述 | |
7 | cart_price_ago | double | 8 | 2 | N | N | 0.00 | 原价:[1] |
8 | cart_price | double | 8 | 2 | N | N | 0.00 | 卖价:[1] |
9 | cart_inventory | int | 10 | 0 | N | N | 0 | 商品库存 |
10 | cart_type | varchar | 64 | 0 | N | N | 未分类 | 商品分类: |
11 | cart_content | longtext | 2147483647 | 0 | Y | N | 正文:产品的主体内容 | |
12 | cart_img_1 | text | 65535 | 0 | Y | N | 主图1: | |
13 | cart_img_2 | text | 65535 | 0 | Y | N | 主图2: | |
14 | cart_img_3 | text | 65535 | 0 | Y | N | 主图3: | |
15 | cart_img_4 | text | 65535 | 0 | Y | N | 主图4: | |
16 | cart_img_5 | text | 65535 | 0 | Y | N | 主图5: | |
17 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
18 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表steel_type (钢材类型)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | steel_type_id | int | 10 | 0 | N | Y | 钢材类型ID | |
2 | steel_type | varchar | 64 | 0 | Y | N | 钢材类型 | |
3 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
4 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表upload (文件上传)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | upload_id | int | 10 | 0 | N | Y | 上传ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 访问路径 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路径 | |
5 | display | varchar | 255 | 0 | Y | N | 显示顺序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父级ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夹 | |
8 | type | varchar | 32 | 0 | Y | N | 文件类型 |
表user (用户账户:用于保存用户登录信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_id | mediumint | 8 | 0 | N | Y | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
2 | state | smallint | 5 | 0 | N | N | 1 | 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
3 | user_group | varchar | 32 | 0 | Y | N | 所在用户组:[0,32767]决定用户身份和权限 | |
4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登录时间: |
5 | phone | varchar | 11 | 0 | Y | N | 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手机认证:[0,1](0未认证|1审核中|2已认证) |
7 | username | varchar | 16 | 0 | N | N | 用户名:[0,16]用户登录时所用的账户名称 | |
8 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
9 | password | varchar | 64 | 0 | N | N | 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
10 | | varchar | 64 | 0 | Y | N | 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
11 | email_state | smallint | 5 | 0 | N | N | 0 | 邮箱认证:[0,1](0未认证|1审核中|2已认证) |
12 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
13 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
表user_group (用户组:用于用户前端身份和鉴权)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | group_id | mediumint | 8 | 0 | N | Y | 用户组ID:[0,8388607] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000] |
3 | name | varchar | 16 | 0 | N | N | 名称:[0,16] | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该用户组的特点或权限范围 | |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | register | smallint | 5 | 0 | Y | N | 0 | 注册位置: |
9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
本系统主要的用户有系统管理员、买家用户,一个系统最基本的功能就是登录功能,本系统可以进行系统登录的角色有买家用户、管理员,买家对应前台登录界面,管理员对应后台登录界面,首先进入登录页,输入用户名和密码,然后提交至服务端进行数据库数据验证,通过Django逻辑代码判断数据库是否存在用户输入的这一个记录,如果存在,则判断用户身份,如果是买家用户,则进入买家前台,如果是管理员用户,则进入系统主页,并把用户对象存放在session中,如果不存在这样一条记录,则返回登录界面。
登录界面如下所示。
客户在第一次进行注册时,需要填写自己的名字和密码,填写完成后,提交表单,该表单将自动验证你的信息,如果文件格式不正确,则会在窗口提醒你不正确,如果文件格式正确,窗口将会弹出注册成功。
用户注册界面如下所示。
系统为用户提供简洁的商品视图,买家可以自由切换视图,可以以列表的形式排列商品,也可以以网格状的形式显示商品,方便用户找到自己需要的商品。在shangpinxinxilist.jsp实现商品列表的展示,用户点击某个商品,通过商品id传递值,找到数据表的该商品的信息。
如下图所示为商品浏览界面。
系统提供商品评论功能,在pinglunadd.jsp实现商品的评论,添加评论后,存入数据库的评论表。管理员管理商品的评论信息。
如下图所示为评论的部分界面。
图5-4评论商品界面
用户在浏览商品后,登录系统前台,进行商品购买,可将商品先添加至购买车,然后在购物车里结算,在个人后台可以查看购买车里面的商品,确定商品之后可以生成订单,然后支付。
如下图所示为购买商品的部分界面。
用户注册后在数据库生成一条用户数据,并显示在用户管理列表中,管理员可对用户数据增删改查,禁用用户账号,让用户无法登录系统。修改密码是经过跟数据库的原来的密码字段的数据进行判断,如果输入两次的新密码一致,则更新密码这属性对应的一条数据。
如下图所示为用户管理的部分界面。
如下图所示为修改密码界面。
图5-7修改密码界面
管理人员可以对商品进行增删查改的操作,这些操作将在商品管理界面进行。
如下图所示为商品管理界面。
首先,用户登录系统,进行商品的下单,下单时要指定商品名称、购买数量、备注等重要信息,生成订单,管理员登录后台进行用户订单审核,审核通过,进行商品发货,用户购买成功,用户可以查看自己的订单、有权删除或修改订单。
管理人员可以对订单进行增删查改的操作,这些操作将在订单管理界面进行。
如下图为个人订单界面。
图5-9个人订单界面
如下图为订单管理界面。
该系统能够完成商品选购,加入购物车,商品管理,商品类别管理,订单管理,购物车管理,用户管理等功能,做到所开发的系统操作简单,尽量使系统操作不受用户对电脑知识水平的限制,符合系统可维护性,由于系统涉及的信息比较广,数据库中的数据需定期修改,系统可利用的空间及性能也随之下降,为了使系统更好地运转,系统可以对系统数据及一些简单的功能进行独立的维护及调整;符合系统开放性要求,该系统能够在开放的硬件体系结构中运行,并且能与其他系统顺利连接。
字段名称 | 描述 |
测试项 | 首页注册功能测试 |
输入数据 | 1、输入正确的邮箱、用户名、密码、确认密码、以及验证码之后点击“注册”按钮 2、输入错误的用户名或密码、邮箱、验证码等,单击“注册”按钮 3、不输入邮箱、用户名、密码、确认密码、以及验证码之后点击“注册”按钮 |
预计输出数据 | 1、用户能正确注册账号,成功插入数据库用户的账户资料,提示注册成功。 2、无法注册用户信息,注册失败。 3、无法注册用户信息,注册失败。 |
使用上述测试用例对前台首页注册界面进行测试,当在输入正确的邮箱、用户名、密码、确认密码、以及验证码之后,系统将弹出注册成功信息提示对话框。
使用上述测试用例对前台首页注册界面进行测试,当在输入错误的用户名或密码、邮箱、验证码之后,系统将提示错误。
使用上述测试用例对前台首页注册界面进行测试,当在不输入用户名、密码、邮箱、验证码之后,点击注册按钮。
2.登录界面进行测试
测试项 | 首页登录功能测试 |
输入数据 | 1、输入正确的用户名和密码,单击“登录”按钮 2、输入错误的用户名和密码,单击“登录”按钮 3、不输入用户名和密码,单击“登录”按钮 |
预计输出数据 | 1、数据库中存在的用户能正确登录,。结果弹出主界面。 2、错误的或者无效用户登录,登录系统失败。 3、输入用户名或密码信息为空,登录系统失败。 |
使用上述测试用例对前台首页登录界面进行测试,当在用户名输入框中输入正确的用户名和密码时候,系统将弹出登录成功信息提示对话框。
使用上述测试用例对前台首页登录界面进行测试,当在用户名输入框中输入错误的或无效的用户名时,系统将弹出错误信息提示对话框。
通过测试可以观察到实现的运行结果与测试用例中预计输出的结果是相符的,所以测试通过。
名称:用户管理测试 目的:测试商品管理界面
内容:口令的输入,合法性检查,合理性检查,界面的显示控制。
下表描述了商品表中目前所存在的记录。
商品名 | 商品类别 | 商品价格 | 商品状态 |
商品A | A | 389 | 上架 |
商品B | B | 249 | 上架 |
商品C | C | 322 | 下架 |
商品D | D | 168 | 上架 |
添加时应注意事项:
管理员添加商品时必须添加已存在的商品类别,若该商品不属于现有的所有类别,则应该先添加商品类别。
下表描述了添加商品进行测试的用例,主要是为了防止添加商品时出现异常和存在的漏洞。
输入 | 输出 | ||
商品名 | 商品价格 | 商品图片 | |
空 | A123 | 空 | 参数错误 |
商品A | 123 | Coid.doc | 参数错误 |
商品A | 100 | 空 | 请选择上传图片 |
商品A | 100 | a.jpg | 添加成功 |
名称:购买商品测试 目的:测试购买商品界面
内容:口令的输入,合法性检查,合理性检查,界面的显示控制。
下表描述了购买商品的测试用例,防止购买时出错。
表6-7购买商品测试用例
输入 | 输出 | ||
用户ID | 商品ID | 商品数量 | |
11 | 901 | 1 | 购买商品成功 |
22 | 901 | 请填写商品数量 | |
33 | 901 | A123 | 购买失败 |
用户购买商品时,首先判断商品数量是否小于库存,若超出库存数量,则提示商品数量不足。
5.订单生成测试
名称:订单生成测试 目的:测试提交订单界面
内容:口令的输入,合法性检查,合理性检查,界面的显示控制。
下表描述了订单生成的测试用例,防止订单生成错误,造成企业和客户的损失。
表6-8订单生成测试用例
输入 | 输出 | |||
订单编号 | 联系人 | 地址 | 电话 | |
11 | 张三 | 上海市静安区11号 | 212312323 | 订单生成成功 |
22 | 张三 | 123423423 | 请填写收货地址 | |
33 | 张三 | 上海市静安区11号 | 请填写联系电话 | |
44 | 上海市静安区11号 | 123423423 | 请填写联系人姓名 |
经过这几个月的设计和开发,“基于Django的疫情困扰下的民慧钢材销售分析及纾困策略”已经完成了,政策指引下,构建企业相互依存、相互促进的发展生态,提升产业链供应链现代化水平,即是为企业筑牢抵御风险的护城河。疫情之下,相信政府与企业携手,通过政策引领、科技助力、金融支撑,必将找到破局之路,共克难关。
在系统的分析阶段,主要是分析系统的需求,理解系统要完成的基本功能,找出系统的用例(Use Case)和角色(Actor),画出系统的用例模型图,用例模型是此后系统建模的基础。在用例的基础上分析顺序图和协作图,得到系统的所有对象,然后建立对象模型。抽象出系统的类,并将系统中联系紧密的类划分为若干个包,画出包图。有了这些基础,就可以将系统划分为小单元功能模块。
整个过程中,我必须认可UML统一建模语言,它让我很清晰的知道自己想做什么,想实现什么,对系统后面的代码编写起到决定性的帮助,同时经过本次系统的设计与实现,让我积累了很多经验,提高了编写程序的能力,为以后的学习和工作打下了坚实的基础。
由于时间有限,本系统还有待继续完善和改进,因此需要进一步进行分析和修改,以使其更加完善!
参考文献
[1]唐亚东,罗恩韬,赵全友.基于MVC模式的湘科院点餐系统的设计与实现[J].信息与电脑(理论版),2019,31(17):67-69+72.
[2]许佩迪,王海燕,李闯.基于JSP的网上在线图书借阅系统开发与设计[J].智能计算机与应用,2019,9(05):310-311+319.
[3]谢建华,郑剑,梁杰华.校园贫困生申请及管理系统的设计与实现[J].电脑知识与技术,2019,15(24):88-90+94.
[4]刘景丽,谭晓丹,杨琨.高职现代学徒制“JSP”人才培养模式探析[J].教育与职业,2019(16):53-56.
[5]李亚娟,张宝丽,秦爽,陈岩.基于JSP技术的动态网页开发技术研究[J].电脑知识与技术,2019,15(23):262-263.
[6]叶钧.基于JSP的课堂交互系统[J].电脑编程技巧与维护,2019(07):26-27+42.
[7]李文轩.用JSP实现拖拽上传文件和文件夹[J].金融科技时代,2019(07):51-53.
[8]徐梦雨,牛思允.基于J2EE的医院药品管理系统[J].电脑知识与技术,2019,15(19):105-108.
[9]纪丽娜.基于BBS的在线培训项目管理设计[J].电子技术与软件工程,2019(13):37-40.
[10]荣先钊,林宇驰,张上.网上书城的设计与开发[J].福建电脑,2019,35(06):117-118.
[11]李宏坤,郑光勇,谢舞,彭承辉.基于springboot框架的公司考勤系统的研究与设计[J].电脑知识与技术,2019,15(18):55-56.
[12]刘卓华,冉瑞生.基于JSP模型的客户管理系统设计与实现[J].电脑知识与技术,2019,15(18):64-67.
[13]田升,郭凤婷,刘印锋.基于Web的学生请假管理设计与实现[J].电脑编程技巧与维护,2019(06):100-103.
[14]李秋锦.基于MVC模式的学生选课系统的开发与设计[J].科技经济导刊,2019,27(17):11.
[15]李珊.基于JSP的高校学生公寓管理系统的设计与实现[J].中国管理信息化,2019,22(12):123-124.
[16]RizmaAldillah.AResearchontheImplementationRulesandRegulationsoftheWestPythonProvinceGrainSpecificSustainableAgriculturalLandComplianceAct[J].JournalofInnovationandSocialScienceResearch,2020,7(3).
[17]CummingRoyceT,BankSarah,LeTirantStephane,BradlerSven.NotesontheleafinsectsofthegenusPhylliumofSumatraandPython,Indonesia,includingthedescriptionoftwonewspecieswithpurplecoxae(Phasmatodea,Phylliidae).[J].ZooKeys,2020,913.
[18]ZhengzhaoChen,RenheJiang,ZejunZhang,YuPei,MinxuePan,TianZhang,XuandongLi.Enhancingexample-basedcodesearchwithfunctionalsemantics[J].TheJournalofSystems&Software,2020,165.
[19]DikkyIndrawan,EkoRuddyCahyadi,AriefDaryanto,HenkHogeveen.TheroleoffarmbusinesstypeonbiosecuritypracticesinWestPythonbroilerfarms[J].PreventiveVeterinaryMedicine,2020,176.
[20]YingXinLiu,XiYuanLi.DesignandImplementationofaBusinessPlatformSystemBasedonPython[J].ProcediaComputerScience,2020,166.
致 谢
大学的学习生活总是感觉短暂的,总感到知识还没有学够,但大学毕业就在我们面前,即毕业设计即将的结束,意味着我们的大学生涯即将结束。毕业设计是我们在大学所学知识的一次总结,更是对我们过去所学知识的提炼和升华,通过毕业设计,我们认识到大学学习过程中还有那些知识没有掌握,那些知识需要我们进入深入研究。这次毕业设计让我学到了很多新的知识,研究了一些新的以前自己不熟悉的领域,使我处理问题的能力得到了一定的提升,同时也为今后的继续深造或踏入社会大门提供了很好的锻炼机会。
我也曾经沮丧过,失落过,想放弃过,可是因为你们这不厌其烦的鼓励和支持才使得我坚持了下来,这里我要对我的老师和同学们说句“谢谢你们”。因为我们的知识是有限的,所以本文将不可避免的会出现一些错误和不足之处,还请老师指正。
请关注点赞+私信博主,免费领取项目源码