基于微信小程序的预制菜商城的设计与实现-毕业设计源码25172

目  录

1 绪论

1.1 研究背景和意义

1.2国内外研究现状

1.3论文结构与章节安排

2 系统分析

2.1 可行性分析

2.1.1技术可行性分析

2.1.2 操作可行性分析

2.1.3经济可行性分析

2.2 系统功能分析

2.2.1 功能性分析

2.2.2 非功能性分析

2.3 系统用例分析

2.4 系统流程分析

2.5系统流程分析

2.5.1用户登录流程

2.5.2信息添加流程

2.5.3信息删除流程

2.6本章小结

3 系统总体设计

3.1 系统架构设计

3.2 系统功能模块设计

3.3 数据库设计

3.3.1 数据库概念结构设计

3.3.2 数据库逻辑结构设计

3.4本章小结

4 系统详细设计与实现

4.1普通用户功能模块

4.1.1 用户注册界面

4.1.2 用户登录界面

4.1.3基本信息界面

4.1.4商城中心界面

4.1.5购物车界面

4.1.6订单详情界面

4.1.7收货地址管理界面

4.2管理员功能模块

4.2.1 管理员功能界面

4.2.2系统用户界面

4.2.3系统管理界面

4.2.4取消订单管理界面

4.2.5 订单列表界面

4.2.6 订单配送界面

5系统测试

5.1测试目的

5.2测试概述

5.3单元测试

5.3.1登录测试

5.3.2商品管理测试

5.3.3购买商品测试 

5.3.4集成测试

结论

参考文献

致  谢

摘要

随着信息技术的快速发展和移动互联网的普及,电子商务已成为人们日常生活的重要组成部分。特别是在食品行业,随着消费者对食品安全、营养、便捷的需求日益增加,预制菜作为一种新型食品形态,逐渐受到市场的青睐。预制菜商城的兴起,不仅满足了消费者对于方便、快捷、多样化的食品需求,同时也为食品企业提供了新的销售渠道和增长机遇。

在微信小程序这一平台上,构建预制菜商城具有得天独厚的优势。微信小程序凭借其即用即走、无需下载安装、与社交生态紧密结合等特点,为用户提供了极佳的购物体验。对于商家而言,微信小程序提供了丰富的API接口和营销工具,有助于精准触达目标用户,提升品牌曝光度和用户粘性。

Django作为一款成熟、稳定、易扩展的Python Web框架,以其高效的ORM映射、灵活的URL路由、丰富的第三方库支持等特点,在Web开发领域占有一席之地。将Django应用于预制菜商城的后端开发,可以确保系统的稳定性、可扩展性和可维护性。

本文将详细介绍基于Django和微信小程序的预制菜商城的设计与实现过程。通过对商城系统的需求分析、架构设计、功能实现等方面的阐述,旨在为开发者提供一个清晰、实用的开发参考,同时也为预制菜行业的电子商务发展贡献一份力量。

关键词:Django;预制菜商城;Web开发

Abstract

With the rapid development of information technology and the popularization of mobile Internet, e-commerce has become an important part of people's daily life. Especially in the food industry, with the increasing demand from consumers for food safety, nutrition, and convenience, pre made dishes, as a new form of food, are gradually favored by the market. The rise of prefabricated food malls not only meets the needs of consumers for convenient, fast, and diversified food, but also provides new sales channels and growth opportunities for food enterprises.

On the WeChat mini program platform, building a pre made food mall has unique advantages. WeChat mini programs provide users with an excellent shopping experience with their features of being ready to use, no need to download or install, and close integration with the social ecosystem. For merchants, WeChat mini programs provide rich API interfaces and marketing tools, which help to accurately reach target users, improve brand exposure and user stickiness.

As a mature, stable, and easily scalable Python web framework, Django has a place in the field of web development due to its efficient ORM mapping, flexible URL routing, and rich third-party library support. Applying Django to the backend development of a prefabricated food mall can ensure the stability, scalability, and maintainability of the system.

This article will provide a detailed introduction to the design and implementation process of a prefabricated food mall based on Django and WeChat mini programs. By elaborating on the requirements analysis, architecture design, and functional implementation of the shopping mall system, the aim is to provide developers with a clear and practical development reference, while also contributing to the development of e-commerce in the pre packaged food industry.

Keywords:Django; Prefabricated Vegetable Mall; Web development

1 绪论

1.1 研究背景和意义

在数字化与移动互联网飞速发展的当下,电子商务已经渗透到日常生活的方方面面,特别是在食品零售领域,其便捷性和多样性受到了广大消费者的热烈欢迎。预制菜作为一种新型食品形态,凭借其方便、快捷、多样化的特点,正逐渐成为现代都市生活的新宠。然而,传统的预制菜销售模式往往受限于地域、时间和渠道,难以满足消费者日益增长的个性化需求。

微信小程序作为一种轻量级的应用程序,以其即用即走、无需下载安装、与社交生态紧密结合的特点,为预制菜销售提供了新的可能性。通过微信小程序,预制菜商家可以更加便捷地触达目标用户,提供个性化的购物体验,并借助微信的社交属性进行精准营销。

Django作为一款成熟、稳定、易扩展的Python Web框架,具有强大的数据处理能力、灵活的URL路由设计以及丰富的第三方库支持,为构建高效、稳定的预制菜商城提供了有力保障。通过Django框架,开发者可以更加高效地进行后端开发,实现复杂的业务逻辑和数据处理,为前端提供稳定、可靠的数据支持。

因此,本研究旨在结合Django框架和微信小程序,设计并实现一个预制菜商城系统。通过该系统,消费者可以随时随地浏览和购买预制菜产品,享受便捷的购物体验;商家则可以更加精准地触达目标用户,提升品牌曝光度和销售额。同时,本研究还旨在为预制菜行业的电子商务发展提供有益的探索和实践,推动该行业的数字化转型和创新发展。

1.2国内外研究现状

国内研究现状:

在中国,随着电子商务的蓬勃发展和消费者对便捷、新鲜购物需求的增加,预制菜商城的发展势头强劲。目前,国内市场上已经涌现出一批具有影响力的预制菜电商平台,如京东到家、美团买菜等。这些平台通过整合供应链、优化物流配送和提供优质的售后服务,为消费者带来了便捷、新鲜的购物体验。同时,国内的政策环境也为预制菜电子商务的发展提供了有力支持,如推动农产品上行、建设冷链物流体系等。

此外,微信小程序作为国内领先的移动社交平台微信的衍生产品,其用户基数庞大,社交属性强,为预制菜商城的发展提供了得天独厚的优势。越来越多的预制菜商家开始将微信小程序作为重要的销售渠道之一,通过小程序提供线上购买、线下自提或配送到家等服务,满足消费者的多元化需求。

国外研究现状:

在欧美等发达国家或地区,预制菜销售市场同样发展成熟且普及。一些国际知名的电商平台如Amazon Fresh、Instacart等,在预制菜销售领域占据重要地位。这些平台通过先进的物流体系和优质的售后服务,为消费者提供了便捷、多样的购物选择。

与此同时,微信小程序在国外市场也取得了一定的成功。虽然其用户基数和影响力相对较小,但仍有不少预制菜商家开始尝试利用微信小程序拓展海外市场。这些商家通过小程序与当地的消费者建立联系,提供个性化的购物体验,进一步拓展市场份额。

综上所述,无论是国内还是国外,预制菜商城的发展都呈现出蓬勃的态势。借助Django框架和微信小程序等技术手段,可以更加高效地实现预制菜商城的设计与实现,为消费者带来更加便捷、新鲜的购物体验。

1.3论文结构与章节安排

本文共分为六章,章节内容安排如下:

第一章为引言,此章节对所设计和实现的系统的背景和状况以及意义进行详细的论述以及说明,同时进行了论文整体框架的结构的简要介绍。

第二章为系统需求分析,章节所做的主要的工作是对系统进行了技术、经济和操作方面可行性的分析;对系统实行了总体功能的需求、用例分析。

第三章为系统的设计,主要是对系统的功能结构进行设计,并对系统数据库的概念结构以及物理结构的设计进行了分析。

第四章就是对系统的实现,根据系统功能的划分,分别的对系统所需要实现的前台客户功能和后台管理员功能进行了分析和说明。

第五章:系统测试。主要对系统的部分界面进行测试并对主要功能进行测试

第六章:总结。

2 系统分析

系统分析是开发一个项目的先决条件,通过系统分析可以很好的了解系统的主体用户的基本需求情况,同时这也是项目的开发的原因。进而对系统开发进行可行性分析,通常包括技术可行性、经济可行性等,可行性分析同时也是从项目整体角度进行的分析。然后就是对项目的具体需求进行分析,分析的手段一般都是通过用户的用例图来实现。下面是详细的介绍。

2.1 可行性分析

系统可行行分析是对系统对系统可行性进行一个探讨。在探讨系统的可行性上我们主要从技术上的可行性和经济上的可行性以及操作的可行性上进行分析,如果三个层面度通过,我们则认为系统是比较可行的。

2.1.1技术可行性分析

基于微信小程序的预制菜商城的设计与实现在技术上是完全可行的。Django作为一个成熟的Python Web框架,提供了丰富的功能和工具,使得开发人员能够快速构建稳定、高效的Web应用程序。此外,Python作为一种广泛使用的编程语言,具有强大的数据处理和分析能力,可以很好地满足预制菜商城的需求。

2.1.2 操作可行性分析

操作方面主要考虑的是用户在使用以及管理人员在管理的时候,是否简单可行,没有任何计算机基础的用户能否使用,开发的基于微信小程序的预制菜商城的设计与实现在设计的时候秉承简单易学的理念,在用户进入系统后都会有固定的导航按钮,只要认字就可以操作完成,而且管理员在管理方面也只需简单的增删改查即可完成,因此在操作上也是可行的。

2.1.3经济可行性分析

开发基于微信小程序的预制菜商城的设计与实现并不需要投入太多,开发工具、服务器、数据库等,都可以通过网络搜索、下载、安装,只需要一台普通的计算机就可以完成操作,而且在系统功能规划上通过走访调查目前用户对预制菜商城的需求,了解它们对系统具体实现的功能需求,然后进行设计开发,不存在任何开销,因此系统的开发在经济方面是可行的。

2.2 系统功能分析

2.2.1 功能性分析

基于微信小程序的预制菜商城的设计与实现主要划分为了普通用户和管理员这两大部分,具体功能描述如下:

  • 普通用户功能介绍:

注册登录:普通用户可以通过注册账号并登录系统,以便享受更多功能,如购物、查看订单等。

首页:用户登录后可以浏览到商城的首页,显示最新的预制菜品信息、促销活动等内容,方便用户选择购买。

购物车:用户可以将感兴趣的预制菜品加入购物车,方便随时查看已选商品并进行下单操作。

商城中心:用户可以浏览商城中心,查看所有预制菜品的分类、价格、详情等信息,以便选择购买。

我的:用户可以查看和管理个人信息,包括基本信息、收货地址、收藏的商品、订单历史、购物车状态以及订单配送情况等。

收货地址:用户可以管理收货地址,包括添加新地址、修改地址、删除地址等操作,以确保订单能准确配送到指定地址。

取消订单:用户可以在一定时间内取消未配送的订单,以便调整购物计划或变更配送地址等需求。

收藏:用户可以将喜欢的预制菜品加入收藏夹,方便日后查看和购买。

订单:用户可以查看订单状态、订单详情、配送信息等,保证购物过程的透明和便利性。

  • 管理员功能介绍:

登录:管理员需要能够通过管理员账号和密码登录系统,以便进行管理和监控。

后台首页:管理员需要一个后台首页,用于显示系统的整体运行情况,包括订单数量、用户数量、销售情况等重要信息。

系统用户管理:管理员需要进行系统用户的管理,包括添加新用户、删除用户、重置密码等操作,以保证系统安全性和用户管理的完整性。

取消订单管理:管理员需要能够查看和管理订单的取消情况,包括审核取消订单、处理退款等操作。

系统管理:管理员需要可以管理系统首页的轮播图,包括上传、编辑、删除轮播图等操作。

商城管理:管理员需要管理系统中的商城功能,包括商品管理、库存管理、价格设置等。管理员可以添加新商品、编辑商品信息、下架过期商品等,以确保商城的正常运营。

分类列表:管理员需要能够管理商城中的分类信息,包括添加新分类、编辑分类、删除分类等操作。

订单列表:管理员需要能够查看所有订单的列表,包括订单状态、订单详情、用户信息等,并能够进行订单的处理、跟踪和管理。

订单配送:管理员需要能够管理订单的配送情况,包括分配配送员、更新配送状态等操作。

2.2.2 非功能性分析

基于微信小程序的预制菜商城的设计与实现的非功能性需求比如基于微信小程序的预制菜商城的设计与实现的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如下2-1表格中:

2-1基于微信小程序的预制菜商城的设计与实现非功能需求表

安全性

主要指基于微信小程序的预制菜商城的设计与实现数据库的安装,数据库的使用和密码的设定必须合乎规范。

可靠性

可靠性是指基于微信小程序的预制菜商城的设计与实现能够按照用户提交的指示进行操作,经过测试,可靠性90%以上。

性能

性能是影响基于微信小程序的预制菜商城的设计与实现占据市场的必要条件,所以性能最好要佳才好。

可扩展性

比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。

易用性

用户只要跟着基于微信小程序的预制菜商城的设计与实现的页面展示内容进行操作,就可以了。

可维护性

基于微信小程序的预制菜商城的设计与实现开发的可维护性是非常重要的,经过测试,可维护性没有问题

2.3 系统用例分析

基于微信小程序的预制菜商城的设计与实现的完整UML用例图分别如下图所示。

普通用户角色用例图如下图所示。

图2-1 普通用户角色用例图

管理员角色用例图如下图所示。

图2-2管理员角色用例图

2.4 系统流程分析

2.5系统流程分析

2.5.1用户登录流程

对于系统的安全性的第一关,就是用户想要进入系统,必须通过登录窗口,输入自己的登录信息才可以进行登录,用户输入的信息准确无误后才可以进入到操作系统界面,进行功能模块的相对应操作,如果用户输入的信息不正确,则窗口出现提示框,用户登录失败,返回到第一步进行重新输入,如图2-3所示。

图2-3登录操作流程图

2.5.2信息添加流程

对于基于微信小程序的预制菜商城的设计与实现,需要随时添加所需要的数据信息,对于用户添加信息,需要根据添加界面,根据选框的内容进行填写所要添加的数据信息,信息输入完成后判断数据信息是否符合要求,符合要求则添加完成,用户所添加的信息不符合要求,则需要返回到第一步,重新输入数据信息,再进行判断操作,如图2-4所示。

图2-4信息添加流程图

2.5.3信息删除流程

不管是哪个用户角色进入到不通的系统操作界面,都可以进行不同的信息内容的操作功能,对用系统数据信息的删除,用户一旦将信息删除,那么该删除的数据信息将无法恢复,所以用户在对数据删除事,一定判断删除的内容是否是确定要删除的,确定无误后选择确定删除操作,如图2-5所示。

图2-5信息删除流程图

2.6本章小结

本章主要通过对基于微信小程序的预制菜商城的设计与实现的可行性分析、功能需求分析、系统用例分析、系统流程分析,确定整个基于微信小程序的预制菜商城的设计与实现要实现的功能。同时也为基于微信小程序的预制菜商城的设计与实现的代码实现和测试提供了标准。

3 系统总体设计

本章主要讨论的内容包括基于微信小程序的预制菜商城的设计与实现的系统架构设计、功能模块设计和数据库系统设计。

3.1 系统架构设计

本基于微信小程序的预制菜商城的设计与实现从架构上分为三层:表现层(UI)、业务逻辑层(BLL)以及数据层(DL)。

图3-1基于微信小程序的预制菜商城的设计与实现系统架构设计图

表现层(UI):又称UI层,主要完成本基于微信小程序的预制菜商城的设计与实现的UI交互功能,一个良好的UI可以打打提高用户的用户体验,增强用户使用本基于微信小程序的预制菜商城的设计与实现时的舒适度。UI的界面设计也要适应不同版本的基于微信小程序的预制菜商城的设计与实现以及不同尺寸的分辨率,以做到良好的兼容性。UI交互功能要求合理,用户进行交互操作时必须要得到与之相符的交互结果,这就要求表现层要与业务逻辑层进行良好的对接。

业务逻辑层(BLL):主要完成本基于微信小程序的预制菜商城的设计与实现的数据处理功能。用户从表现层传输过来的数据经过业务逻辑层进行处理交付给数据层,系统从数据层读取的数据经过业务逻辑层进行处理交付给表现层。

数据层(DL):由于本基于微信小程序的预制菜商城的设计与实现的数据是放在服务端的mysql数据库中,因此本属于服务层的部分可以直接整合在业务逻辑层中,所以数据层中只有数据库,其主要完成本基于微信小程序的预制菜商城的设计与实现的数据存储和管理功能。

3.2 系统功能模块设计

在上一章节中主要对系统的功能性需求和非功能性需求进行分析,并且根据需求分析了本基于微信小程序的预制菜商城的设计与实现中的用例。那么接下来就要开始对本基于微信小程序的预制菜商城的设计与实现的架构、主要功能开始进行设计。基于微信小程序的预制菜商城的设计与实现根据前面章节的需求分析得出,其总体设计模块图如下图所示。

图3-2 基于微信小程序的预制菜商城的设计与实现功能模块图

3.3 数据库设计

数据库设计一般包括需求分析、概念模型设计、数据库表建立三大过程,其中需求分析前面章节已经阐述,概念模型设计有概念模型和逻辑结构设计两部分。

3.3.1 数据库概念结构设计

下面是整个基于微信小程序的预制菜商城的设计与实现中主要的数据库表总E-R实体关系图。

图3-3 基于微信小程序的预制菜商城的设计与实现总E-R关系图

3.3.2 数据库逻辑结构设计

通过上一小节中基于微信小程序的预制菜商城的设计与实现中总E-R关系图上得出一共需要创建很多个数据表。在此我主要罗列几个主要的数据库表结构设计。

表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

默认判断

表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

text

65535

0

Y

N

添加字段:

14

field_set

text

65535

0

Y

N

修改字段:

15

field_get

text

65535

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

更新时间:

表cancel_order (取消订单)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

cancel_order_id

int

10

0

N

Y

取消订单ID

2

user_account

int

10

0

Y

N

0

用户账号

3

user_name

varchar

64

0

Y

N

用户姓名

4

order_number

varchar

64

0

Y

N

订单编号

5

cancel_time

date

10

0

Y

N

取消时间

6

reason_for_cancellation

text

65535

0

Y

N

取消原因

7

examine_state

varchar

16

0

N

N

未审核

审核状态

8

examine_reply

varchar

16

0

Y

N

审核回复

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

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_delivery (物流配送)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

logistics_delivery_id

int

10

0

N

Y

物流配送ID

2

order_number

varchar

64

0

Y

N

订单号

3

product_name

varchar

64

0

Y

N

商品名称

4

purchase_quantity

varchar

64

0

Y

N

购买数量

5

total_transaction_amount

double

11

2

Y

N

0.00

交易总额

6

the_date_of_issuance

date

10

0

Y

N

发货日期

7

delivery_number

varchar

30

0

Y

N

配送订单

8

ordinary_users

int

10

0

Y

N

0

普通用户

9

shipping_address

varchar

64

0

Y

N

收货地址

10

delivery_status

varchar

64

0

Y

N

配送状态

11

signing_status

varchar

64

0

Y

N

签收状态

12

recommend

int

10

0

N

N

0

智能推荐

13

contact_name

varchar

255

0

Y

N

联系人名字

14

merchant_id

int

10

0

Y

N

商家id

15

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

16

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表mall_center (商城中心)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

mall_center_id

int

10

0

N

Y

商城中心ID

2

production_date

date

10

0

Y

N

生产日期

3

ingredients_composition

varchar

64

0

Y

N

食材组成

4

nutrient_composition

varchar

64

0

Y

N

营养成分

5

production_process

varchar

255

0

Y

N

制作过程

6

traceability_function

varchar

255

0

Y

N

溯源功能

7

hits

int

10

0

N

N

0

点击数

8

praise_len

int

10

0

N

N

0

点赞数

9

cart_title

varchar

125

0

Y

N

标题:[0,125]用于产品html的标签中

10

cart_img

text

65535

0

Y

N

封面图:用于显示于产品列表页

11

cart_description

varchar

255

0

Y

N

描述:[0,255]用于产品规格描述

12

cart_price_ago

double

8

2

N

N

0.00

原价:[1]

13

cart_price

double

8

2

N

N

0.00

卖价:[1]

14

cart_inventory

int

10

0

N

N

0

商品库存

15

cart_type

varchar

64

0

N

N

未分类

商品分类:

16

cart_content

longtext

2147483647

0

Y

N

正文:产品的主体内容

17

cart_img_1

text

65535

0

Y

N

主图1:

18

cart_img_2

text

65535

0

Y

N

主图2:

19

cart_img_3

text

65535

0

Y

N

主图3:

20

cart_img_4

text

65535

0

Y

N

主图4:

21

cart_img_5

text

65535

0

Y

N

主图5:

22

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

23

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

待付款

订单状态:待付款,待发货,待签收,已签收,待退款,已退款,已拒绝,已完成

23

remark

text

65535

0

Y

N

订单备注

24

delivery_state

varchar

16

0

Y

N

未配送

发货状态:未配送,已配送

25

vip_discount

double

11

2

Y

N

0.00

折扣

表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已取消

表regular_users (普通用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

regular_users_id

int

10

0

N

Y

普通用户ID

2

user_name

varchar

64

0

Y

N

用户姓名

3

user_phone_number

varchar

16

0

Y

N

用户电话

4

examine_state

varchar

16

0

N

N

已通过

审核状态

5

user_id

int

10

0

N

N

0

用户ID

6

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

7

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

更新时间:

表traceability_process (溯源过程)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

traceability_process_id

int

10

0

N

Y

溯源过程ID

2

dish_name

varchar

64

0

Y

N

菜品名称

3

dish_pictures

varchar

255

0

Y

N

菜品图片

4

categorization_of_dishes

varchar

64

0

Y

N

菜品分类

5

dish_content

varchar

64

0

Y

N

菜品内容

6

production_process

text

65535

0

Y

N

制作过程

7

creating_videos

varchar

255

0

Y

N

制作视频

8

production_details

text

65535

0

Y

N

制作详情

9

hits

int

10

0

N

N

0

点击数

10

praise_len

int

10

0

N

N

0

点赞数

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

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

email

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

open_id

varchar

255

0

Y

N

针对获取用户信息字段

14

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

15

vip_level

varchar

255

0

Y

N

会员等级

16

vip_discount

double

11

2

Y

N

0.00

会员折扣

表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

更新时间:

3.4本章小结

整个基于微信小程序的预制菜商城的设计与实现的需求分析主要对系统总体架构以及功能模块的设计,通过建立E-R模型和数据库逻辑系统设计完成了数据库系统设计。

4 系统详细设计与实现

基于微信小程序的预制菜商城的设计与实现的详细设计与实现主要是根据前面的基于微信小程序的预制菜商城的设计与实现的需求分析和基于微信小程序的预制菜商城的设计与实现的总体设计来设计页面并实现业务逻辑。主要从基于微信小程序的预制菜商城的设计与实现界面实现、业务逻辑实现这两部分进行介绍。

4.1普通用户功能模块

4.1.1 用户注册界面

基于微信小程序的预制菜商城的设计与实现的用户可以进行注册登录,填写上自己的账号+密码+确认密码+昵称+邮箱+手机号等后再点击“注册”按钮后将会先验证输入的有没有空数据,再次验证密码和确认密码是否是一样的,最后验证输入的账户名和数据库表中已经注册的账户名是否重复,只有都验证没问题后即可用户注册成功。用户注册界面展示如下图所示。

图4-1注册界面图

注册代码:

def Register(self, ctx):

        print("===================注册=====================")

        userService = service_select("user")

        body = ctx.body

        if "username" not in body and body["username"] == '':

            return ctx.response(json.dumps({

                "error": {

                    "code": 70000,

                    "message": "用户名不能为空",

                }

            }, ensure_ascii=False))

        if "user_group" not in body and body["user_group"] == '':

            return ctx.response(json.dumps({

                "error": {

                    "code": 70000,

                    "message": "用户组不能为空",

                }

            }, ensure_ascii=False))

        if "password" not in body and body["password"] == '':

            return ctx.response(json.dumps({

                "error": {

                    "code": 70000,

                    "message": "密码不能为空",

                }

            }, ensure_ascii=False))

        post_param = body

        post_param['nickname'] = body["nickname"] or ""

        post_param['password'] = md5hash(body["password"])

        obj = userService.Get_obj({"username": post_param['username']}, {"like": False})

        if obj:

            return ctx.response(json.dumps({

                "error": {

                    "code": 70000,

                    "message": "用户名已存在",

                }

            }, ensure_ascii=False))

        ret = {

            "error": {

                "code": 70000,

                "message": "注册失败",

            }

        }

        bl = userService.Add(post_param)

        if bl:

            ret = {

                "result": {

                    "bl": True,

                    "message": "注册成功"

                }

            }

        return ctx.response(json.dumps(ret, ensure_ascii=False))

4.1.2 用户登录界面

基于微信小程序的预制菜商城的设计与实现中的用户是可以通过自己的账户名和密码进行登录的,当用户输入完整的自己的账户名和密码信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的账户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到基于微信小程序的预制菜商城的设计与实现的首页中;否则将会提示相应错误信息,用户登录界面如下图所示。

图4-2用户登录界面图

登录代码:

def Login(self, ctx):

        print("===================登录=====================")

        ret = {

            "error": {

                "code": 70000,

                "message": "账户不存在",

            }

        }

        body = ctx.body

        password = md5hash(body["password"]) or ""

        obj = service_select("user").Get_obj(

            {"username": body["username"]}, {"like": False}

        )

        if obj:

            user_group = service_select("user_group").Get_obj({'name': obj['user_group']}, {"like": False})

            if user_group and user_group['source_table'] != '':

                user_obj = service_select(user_group['source_table']).Get_obj({"user_id": obj['user_id']},                                                                       {"like": False})

                if user_obj['examine_state'] == '未通过':

                    ret = {

                        "error": {

                            "code": 70000,

                            "message": "账户未通过审核",

                        }

                    }

                    return ret

                if user_obj['examine_state'] == '未审核':

                    ret = {

                        "error": {

                            "code": 70000,

                            "message": "账户未审核",

                        }

                    }

                    return ret

            if obj["state"] == 1:

                if obj["password"] == password:

                    timeout = timezone.now()

                    timestamp = int(time.mktime(timeout.timetuple())) * 1000

                    token = md5hash(str(obj["user_id"]) + "_" + str(timestamp))

                    ctx.request.session[token] = obj["user_id"]

                    service_select("access_token").Add(

                        {"token": token, "user_id": obj["user_id"]}

                    )

                    obj["token"] = token

                    ret = {

                        "result": {"obj": obj}

                    }

                else:

                    ret = {

                        "error": {

                            "code": 70000,

                            "message": "密码错误",

                        }

                    }

            else:

                ret = {

                    "error": {

                        "code": 70000,

                        "message": "用户账户不可用,请联系管理员",

                    }

                }

        return ctx.response(json.dumps(ret, ensure_ascii=False))

4.1.3基本信息界面

在点击“基本信息”可以对头像、昵称、密码等信息进行管控。基本信息界面如下图所示。

图4-3基本信息界面图

4.1.4商城中心界面

用户可以查看商城中心所有在售商品,包括图片介绍及价格等,可以对喜欢的商品添加到购物车或进行购买。商城中心界面如下图所示。

图4-4商城中心界面图

4.1.5购物车界面

当用户浏览到心仪的商品时,可以将商品添加至购物车内,查看购物车列表,修改或者删除购物车。购物车界面如下图所示。

图4-5购物车界面图

4.1.6订单详情界面

用户可以查看订单的详细信息,包括订单编号、下单时间、订单备注等,可以对订单进行支付。订单详情界面如下图所示。

图4-6订单详情界面图

4.1.7收货地址管理界面

用户输入收货人、手机号及详细地址可以对收货地址进行添加。收货地址管理界面如下图所示。

图4-7收货地址管理界面图

收货地址管理添加代码:

def Add(self, ctx):

body = ctx.body

unique = self.config.get("unique")

obj = None

if unique:

qy = {}

for i in range(len(unique)):

key = unique[i]

qy[key] = body.get(key)

obj = self.service.Get_obj(qy)

if not obj:

error = self.Add_before(ctx)

if error["code"]:

return {"error": error}

error = self.Events("add_before", ctx, None)

if error["code"]:

return {"error": error}

result = self.service.Add(body, self.config)

if self.service.error:

return {"error": self.service.error}

res = self.Add_after(ctx, result)

if res:

result = res

res = self.Events("add_after", ctx, result)

if res:

result = res

return {"result": result}

else:

return {"error": {"code": 10000, "message": "已存在"}}

4.2管理员功能模块

4.2.1 管理员功能界面

管理员可以查看后台首页、系统用户、取消订单管理、系统管理、商城管理(商城中心、分类列表、订单列表、订单配送)等,并且可以根据需要进行相应的操作。在功能界面还可以查看商品销售金额统计和商品销售数量统计。管理员功能界面如下图所示。

图4-8管理员功能界面图

4.2.2系统用户界面

管理员可以对系统中所有的用户角色进行管控,包含了管理员、普通用户这两种角色,如果需要添加新的用户,点击页面中的“添加”按钮根据提示输入上用户信息,点击“提交”以后在对应的用户界面就可以查看到了,可以点击用户后面的“删除”按钮直接删除某一用户。系统用户管理界面如下图所示。

图4-9系统用户界面图

4.2.3系统管理界面

管理员可以对系统前台展示的轮播图进行增删改查,方便用户进行查看。轮播图管理界面如下图所示。

图4-10系统管理界面图

4.2.4取消订单管理界面

管理员点击“取消订单管理”这一菜单的时候,会出现取消订单列表、取消订单添加这两个子菜单,可以对这两个模块进行增删改查操作。管理员查看和管理订单的取消情况,包括审核取消订单、处理退款等操作。取消订单列表和取消订单添加界面如下图所示。

图4-11取消订单列表界面图

图4-12取消订单添加界面图

4.2.5 订单列表界面

管理员可以订单列表进行添加、修改、删除查询的功能,订单列表界面如下图所示。

图4-13订单列表管理界面图

4.2.6 订单配送界面

管理员管理订单的配送情况,包括分配配送员、更新配送状态等操作。订单配送界面如下图所示。

图4-14订单配送管理界面图

5系统测试

5.1测试目的

该系统能够完成商品选购,商品管理,订单管理,用户管理等功能,做到所开发的系统操作简单,符合系统开放性要求,该系统能够在开放的硬件体系结构中运行,并且能与其他系统顺利连接。

5.2测试概述

根据系统测试目的并结合面向对象的测试方法,给出如下系统测试方案:

1、尽可能早的、并且不断地进行系统测试。因为错误发现的越早,修正它所付出的代价以及费用就会越小。

2、设计本测试用例时,应该给出测试的预期结果。一个合理的测试用例由两部分组成:主要有测试用的输入数据和该输入数据所期望的系统运行结果。

3、在设计本测试用例时,不仅需要有合法的输入测试用例,还应该要有非法的输入测试用例。因为,因为在系统的实际使用过程中,通常由于各种原因,用户往往会使用一些非法的输入测试用例来进行测试。测试用例为了测试系统的正确性和完整性,本节将对系统中重点模块的测试进行介绍。

5.3单元测试

5.3.1登录测试

5-1登录测试用例

测试项

首页登录功能测试

输入数据

1、输入正确的用户名和密码,单击“登录”按钮

2、输入错误的用户名和密码,单击“登录”按钮

3、不输入用户名和密码,单击“登录”按钮

预计输出数据

1、数据库中存在的用户能正确登录,。结果弹出主界面。

2、错误的或者无效用户登录,登录系统失败。

3、输入用户名或密码信息为空,登录系统失败。

使用上述测试用例对前台首页登录界面进行测试,当在用户名输入框中输入正确的用户名和密码时候,系统将弹出登录成功信息提示对话框。

使用上述测试用例对前台首页登录界面进行测试,当在用户名输入框中输入错误的或无效的用户名时,系统将弹出错误信息提示对话框。

通过测试可以观察到实现的运行结果与测试用例中预计输出的结果是相符的,所以测试通过。

5.3.2商品管理测试

商品管理进行测试 。

名称:用户管理测试。        目的:测试商品管理界面 。

内容:口令的输入,合法性检查,合理性检查,界面的显示控制。 

下表描述了商品表中目前所存在的记录。

表5-2商品表预存数据

    商品名

商品类别

商品价格

商品状态

A

A

389

上架

B

B

249

上架

C

C

322

下架

D

D

168

上架

添加时应注意事项:

管理员添加商品时必须添加已存在的商品类别,若该商品不属于现有的所有类别,则应该先添加商品类别。

下表描述了添加商品进行测试的用例,主要是为了防止添加商品时出现异常和存在的漏洞。

表5-3添加商品测试用例

输入

输出

商品名

商品价格

商品图片

   空

参数错误

参数错误

请选择上传图片

A

1

a.jpg

添加成功

5.3.3购买商品测试 

名称:购买商品测试。        目的:测试购买商品界面。 

内容:口令的输入,合法性检查,合理性检查,界面的显示控制。 

下表描述了购买商品的测试用例,防止购买时出错。

表5-4购买商品测试用例

输入

输出

用户ID

商品ID

商品数量

11

1

1

购买商品成功

22

商品

请填写商品数量

33

商品

a

购买失败

用户购买商品时,首先判断商品数量是否小于库存,若超出库存数量,则提示商品数量不足。

5.3.4集成测试

集成测试的方案主要如下所述:

1.将系统移植到另一台计算机上,运行出错。修改配置信息后运行成功。

2.用户信息管理模块综合测试,添加新用户roess,为其分配一般管理员角色,查看一般管理员角色权限,保存设置,以roess身份登录,查看所拥有权限。

3.最后基于微信小程序的预制菜商城的设计与实现,以不同角色的身份进入系统,对系统各模块功能进行测试,测试模块间逻辑功是否有误。

经过测试,发现此开发系统可以满足基于微信小程序的预制菜商城的设计与实现流程的基本工作流程和基本要求。

结论

本研究针对基于微信小程序的预制菜商城的设计与实现地需求建模,数据建模及过程建模分析设计并实现基于微信小程序的预制菜商城的设计与实现的过程。给出系统应用架构并分析优劣势,通过功能分解图,系统组件图描述功能需求。设计建立了数据库,给出系统关键数据结构的定义。通过类关系图描述组件间的协作关系,给出各个类的定义方法。通过描述每一个类的字段,属性及方法实现基于微信小程序的预制菜商城的设计与实现的前后端代码。最终给出系统集成整合方法,完成基于微信小程序的预制菜商城的设计与实现地设计与实现。

在此项目的开发中,先要按照产品经理做出的产品模型铺出大体的页面,并在其中找好页面的逻辑关系,并且中途总结一些页面上的问题重新反馈给产品经理,当静态页面的搭建的大体已经完善时,就需要和负责后台开发的技术开发者联系,来接好前后台的数据接口,可以让后台的信息在前台显示出来,在这个项目实现中,不光明白了前端开发和产品经理的联系,也明白了后台在整个系统中起到了什么作用,因为前后台的连接,用户可以对系统进行操作,可以在输入自己的相关信息后,通过后台加工,完成对数据库的查找、修改、添加,而理解了这些关系与实现的方法后。再去完善整个系统的功能就更加清晰与简单了。此次的项目它涉及了前台与后台系统的搭建,在学校所学的知识基础上,此次的项目,让我对于一个系统的前端开发,以及后台的作用都有了一个更深切的认知。

参考文献

[1]Jalili P ,Jalili B ,Ahmad I , et al.Python approach for using homotopy perturbation method to investigate heat transfer problems[J].Case Studies in Thermal Engineering,2024,54104049-.

[2]Gkrepis A ,Kosmas O ,Vlachos D , et al.Numerical solution of the Schrödinger equation using Neural Networks in Python[J].Journal of Physics: Conference Series,2024,2701(1):

[3]Aoyama T ,Yoshimi K ,Ido K , et al.H-wave – A Python package for the Hartree-Fock approximation and the random phase approximation[J].Computer Physics Communications,2024,298109087-.

[4]Zhang H ,Wang Y ,Lian B , et al.Scbean: a python library for single-cell multi-omics data analysis.[J].Bioinformatics (Oxford, England),2024,

[5]Hodson O T ,Doore J K ,Kenney A T , et al.Ratingcurve: A Python Package for Fitting Streamflow Rating Curves[J].Hydrology,2024,11(2):

[6]陈丽.基于Python编程语言的数字化教育平台设计[J].电子技术,2024,53(01):202-203.

[7]闫娇娇.基于Think PHP+Vue商城管理系统的设计与实现[J].电脑知识与技术,2023,19(34):59-62.DOI:10.14004/j.cnki.ckt.2023.1834.

[8]胡从寅,杨文远,赵鑫等.基于Django+Vue.js的设计作品交易平台的实现[J].软件,2023,44(11):42-46.

[9]武玲梅,李秋萍,黄秀芳等.基于Django框架的电影推荐系统的设计与实现[J].电脑知识与技术,2023,19(04):56-61.DOI:10.14004/j.cnki.ckt.2023.0204.

[10]林正敏,王淑娥,于小亿等.基于Django的智慧养老系统设计[J].电脑知识与技术,2023,19(02):25-28.DOI:10.14004/j.cnki.ckt.2023.0099.

[11]王军.基于Django的高校后勤库存管理系统设计实现[J].计算机时代,2022,(07):59-61+65.DOI:10.16644/j.cnki.cn33-1094/tp.2022.07.015.

[12]陈娇,杨欣,韩艳等.基于微信小程序的校园综合服务化线上商城的研究与探索[J].中阿科技论坛(中英文),2022,(04):102-106.

[13]李常宝.基于微信小程序的电子商城的设计与开发[J].吕梁教育学院学报,2021,38(03):133-136.

[14]胡杨林.基于微服务和小程序的电子商城设计与实现[D].西北大学,2021.DOI:10.27405/d.cnki.gxbdu.2021.000827.

[15]董汉磊,聂雅琳,胡奎强等.基于Django框架的美多商城系统设计与实现[J].长江信息通信,2021,34(04):125-127.

[16]马静.基于微信小程序的购物商城系统的设计与实现[J].微型电脑应用,2021,37(03):31-34.

[17]曹艳琴.基于微信公众平台的美妆商城小程序的设计与实现[J].信息与电脑(理论版),2021,33(05):121-123.

[18]康娇兰.基于微信小程序的区块链商城系统的设计与实现[D].华中科技大学,2021.DOI:10.27157/d.cnki.ghzku.2021.004151.

[19]王博.基于个性化推荐的居舍优品商城的设计与实现[D].北京交通大学,2020.DOI:10.26944/d.cnki.gbfju.2020.000659.

[20]傅伟,涂刚,张贤龙.基于微信小程序的电子商城设计与实现[J].电脑编程技巧与维护,2020,(03):60-62.DOI:10.16184/j.cnki.comprg.2020.03.022.

致  谢

逝者如斯夫,不舍昼夜。转眼间,大学生活便已经接近尾声,人面对着离别与结束,总是充满着不舍与茫然,我亦如此,仍记得那年秋天,我迫不及待的提前一天到了学校,面对学校巍峨的大门,我心里充满了期待:这里,就是我新生活的起点吗?那天,阳光明媚,学校的欢迎仪式很热烈,我面对着一个个对着我微笑的同学,仿佛一缕缕阳光透过胸口照进了我心里,同时,在那天我认识可爱的室友,我们携手共同度过了这难忘的两年。如今,我望着这篇论文的致谢,不禁又要问自己:现在,我们就要说再见了吗?

感慨莫名,不知所言。遥想当初刚来学校的时候,心里总是想着工科学校会过于板正,会缺乏一些柔情,当时心里甚至有一点点排斥,但是随着我对学校的慢慢认识与了解,我才认识到了她的美丽,她的柔情,并且慢慢的喜欢上了这个校园,但是时间太快了,快到我还没有好好体会她的美丽便要离开了,但是她带给我的回忆,永远不会离开我,也许真正离开那天我的眼里会满含泪水,我不是因为难过,我只是想将她的样子映在我的泪水里,刻在我的心里。最后,感谢我的老师们,是你们教授了我们知识与做人的道理;感谢我的室友们,是你们陪伴了我如此之久;感谢每位关心与支持我的人。

少年,追风赶月莫停留,平荒尽处是春山。

免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值