版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
家庭食谱管理系统
摘要
新中国经过70年的发展,从吃不饱穿不暖到现在这个物质充裕的
年代,经历了翻天覆地的变化,人们对美食的要求也日新月异的不断提
高。从简简单单的粗茶淡饭,到现在的大鱼大肉,而且吃法也越来越丰
富,如西餐,日料,泰餐等不仅仅局限于中餐。俗话说病从口入,随着
时间的推移,人们出现了健康饮食问题。
在计算机网络飞速发展的今天,信息化建设不仅仅局限于企事业单
位,家庭信息化建设已经到来,这为人们管理自己的饮食提供了基础条
件。家庭食谱管理系统的设计开发,可以方便人们规划自己及家人的饮
食安排,辅助生成适合自己家人健康的食谱表,同时可以记录自己的烹
饪方法,按类别进行管理,方便备忘,同时激发人们对生活的爱好。
本系统为桌面应用程序,采取C#、XAML编程语言进行软件开发,软件
的模板框架为WP3数据库使用SQLServer,集成开发环境使用Visual
StudiOo
关键词:WPF;SQL;C#
目录
第一章前言....................................................1
1.1.选题背景...............................................1
1.2.研究目的和意义........................................1
1.3.开发工具及技术........................................1
第二章需求分析................................................5
2.1.需求调研..............................................5
2.2.可行性分析............................................5
2.3.系统用户用例图........................................6
2.4.功能模块需求..........................................7
2.5.性能需求..............................................8
2.6.界面需求..............................................8
2.7.软硬件需求............................................9
第三章系统分析设计..........................................10
3.1.系统设计原则.........................................10
3.2.系统功能分析.........................................10
3.3.数据库设计...........................................13
第四章系统功能实现..........................................18
4.1.系统配置.............................................18
4.2.系统登录界面实现.....................................19
4.3.系统主界面实现.......................................19
4.4.总体功能模块.........................................20
第五章系统测试..............................................25
5.1.系统测试的目的和意义.................................25
5.2.测试实例.............................................25
第六章结论...................................................27
参考文献......................................................28
致谢.........................................................29
3
第一章前百
1.L选题背景
俗话说“人是铁,饭是钢,一顿不吃饿得慌”,饮食是人类的基本
需求,是生存的基本条件,但现在面临不合理的饮食习惯,如吃的食物
总类少,果蔬少,饮食结构不对,饮食方法不对,油脂多,食盐多,食
糖多等问题,这对人们的健康造成很大的伤害,增加了患病风险。
进入21世纪以来,计算机网络,信息技术,数据库技术得到了飞
速发展,随着信息化的加快,人们管理自己的饮食规划已迫在眉睫。
1.2.研究和意义
家庭食谱管理系统,可以方便安排家人的近期饮食计戈力根据不同
家庭成员的状况对饮食计划进行检查,提醒,对每餐的食谱进行记录,
以备需要时进行检索,同时可以建立自己的烹饪方法资料库,把日常积
累的经验整理成文字图片,进行上传。通过信息系统来辅助人们平衡膳
食,这样既能提供身体所需要的能量和营养,又能满足身体功能的需要,
同时也降低了患病的风险。
1.3.开发工具及技术
本次设计主要采用VisualStudio2019集成开发环境加
SQLServer2016数据库进行,在设计过程中主要采用了WPF技术完成,
同时涉及到一些理论与技术,下面对VisualStudio、SQLServer>C#^
WPF、MVVM、EntityFramework进行简略介绍。
数据驱动UI的理念,通过数据绑定通知,依赖属性,命令、XAML声
明式编程等特性使用程序开发变得简洁易用。
1.3,5.MVVM
MVVM为Model-View-ViewModel的简称,其中M代表数据模型,
V代表界面视图,VM代表业务逻辑交互。MVVM把View视图的状
态和行为进行抽象化,把视图的UI和业务逻辑进行分开。ViewModel就
是帮我们做业务处理的事情,它在取出Model的数据又处理View中
需要展示的业务逻辑与属性。View通过命令绑定在ViewModel,然后
执行这些命令进行操作。前端的UI和功能也是松耦合的关联,可伸缩
性越来越强。视图独立于Model,数据模型的变化和修改不会影响视
图,同时一个ViewModel可同时绑定多个视图。ViewModel的高扩展
性、高复用度、高可读性、高效性、高独立性等特性非常明显。
1.3.6.EntityFramework
EntityFramework为EF的全称,是微软公司开发的数据持久层的
关系对象映射解决方案。EF用编程语言中的类对应数据库中的表,用
类中的属性对应数据库中的字段,通过类名称和属性名称约束来对应数
据库中的表和字段,这个约束是默认的,但通过映射设置可以进行指定
不同的名称。EF再通过Lamda表达式,转换成数据库的SQL语言,这
个一步省略了写数据库查询语句的步骤,让开发人员更关系程序的业
务,在复杂的查询时也支持手动添加SQL语句。总之EF通过实体映射,
帮开发者省去了直接操作数据库的步骤,极大的提升了开发效率。
3
第二章需求分析
2.1.需求调研
随着计算机厢络的快速发展,人民生活水平的日益提高,合理的规
划管理自己及家人的饮食,以及有一款可以有效的供使用的计算机食谱
管理系统,通过其可以记录家人的饮食数据,规划饮食,制作烹饪教程、
收集菜品名录。
2.2.可行性分析
信息系统的开发,都会受到人员、时间、和资源的约束、开发任何
一个项目都是有成本的,因此在开发家庭食谱管理系统之前必须从操
作、技术、经济、法律等可行性来分析。
2.2.1.技术可行性
本毕业设计开发使用到的工具为VisualStudio2019和SqlServer
数据库,开发使用的后端语言为C#,UI前端语言为XAML。C#作为面
向对象的编程语言,具有简单易学,方便灵活,本人在平时的工作期间
使用的就是C#语言,有很大的熟练度,对于开发家庭食谱管理系统的
难度不算高。数据库的设计和流程的业务建模,也是日常工作经常使用
到的,对于完成系统开发后的测试,木人也完成掌握功能测试的方法和
技术。因此完成此系统在技术方面完成可行。
2.2.2.经济可行性
当今的信息化时代,信息系统的大范围应用可以为人们的生活提供
便捷,企业集成开发本系统可以带来不少的经济效益,本系统开发基础
设施要求不高,在形成产品后面多亿万万个家庭,所带来的收入远大于
成本,所以经济上完成具有可行性。
4
2.2.3.操作可行性
本信息系统操作简单,没有复杂难懂的设计,操作的通用性与大多
数信息系统保持统一,只要会使用windows操作系统就可以使用本系
统,加上项目上线后会有一定的培训,所以在操作可行上没有问题。
2.2.4.法律可行性
本系统开发时使用的开发环境和数据库都是社区版本,所以不存在
侵权等行为,所以法律上也是可行的。
综合这四种可行性分析,开发此家庭食谱管理系统可以更方便是人
们的生活得到更好的服务,所以开发本家庭食谱管理系统是可行的。
2.3.系统用户用例图
管理员是系统权利最大也是最重要系统用户,他的业务涉及到七大
功能模块,同时也管理着本系统的其他使用用户。
5
2.4.功能模块需求
系统使用方便,界面简洁友好,实现下面功能模块:
用户管理模块:该模块对当前系统使用用户的管理.,可以查看用户
的类型、单位、备注、创建日期等信息,也可以进行新增删除用户,同
时可以对忘记密码的用户进行重置密码功能。
基础数据维护模块:该模块提供系统其它模块常用的一些业务常量
数据维护,包括新建、修改、删除操作。
系统设置模块:该模块提供了系统用户修改自己登录密码的操作。
家庭成员管理模块:该模块提供家庭成员的基本信息与忌口喜好信
息维护管理,包括新建、修改、删除操作。
菜品名录模块:该模块提供了菜品类型和菜品管理,包括新建、修
改、删除菜品类型和菜品等操作。
下厨房模块:该模块提供了对烹饪教程的管理,包括新建、修改、
删除烹饪教程。
食谱管理模块:该模块提供了对食谱的新建、查询、删除操作,可
以根据家庭成员信息进行食谱的合理规划等。
首页模块:该模块实现了一个对家庭食谱的网格化展示效果,方便
用户更直观的查看最近一周的饮食安排。
6
管理员用户模块
图2-2管理员用户模块
2.5.性能需求
2.5.1.系统的安全性
家庭食谱管理系统严格的控制访问权限,登录系统的用户,必须有
授权,没有授权的用户不能以任何方式进行登录,更不能查看系统的任
何信息,全保系统的完整性和保密性。
2.5.2.数据的完整性
系统业务模块中必须的数据项,必须进行不能为空数据验证;各种
相互关联的数据必须具有正确性;相同引用的数据在不同的数据集合中
的一致性。
7
2.6.界面需求
界面的设计好坏是系统使用用户第一感受,一个好的界面设计可以
提升用户的兴趣,激发用户对系统的依赖程度,同时提升用户对系统的
使用程度。WPF作为微软公司主打的矢量图形模型开发框架,完成可
以满足优秀界面设计的基础条件。
2.7.软硬件需求
2.7.1.硬件需求
CPU:Inteli3及以上
内存:2G及以上
硬盘:40G及以上
2.7.2.软件需求
操作系统:Windows7/8/8.1/10
开发工具:VisualStudio2019
数据库:SQLServer2016
开发语言:C#
框架版本:.NetFramework4.6.2
8
第三章系统分析设计
3.L系统设计原则
3.1.L实用性原则
系统以家庭单位用户的需求为目标,方便用户以高准确度、强专业
性,优效率性的标准提高家庭成员饮食健康的管理。
3.1.2.先进性原则
本系统设计将充分应用现有成熟的计算机技术、网络技术、软件开
发技术,为用户提供高性能的系统。系统将高效运用WPF技术的特性
加快系统界面的加载与渲染,满足高要求高界面设计需求。
3.1.3,安全性原则
本系统在设计过程充分考虑到安全性的重要性,系统的所有用户的
登录密码都使用MD5进行加密,所有的业务模块权限都进行安全管理。
3.1.4.可扩展性原则
硬件可扩展性包括在系统上线后服务器处理器、内存容量、硬盘容
量等,往往无法再满足业务的需求,目前这都是可扩充的。在软件可扩
展性方面,系统采用了MVVM架构设计,视图、数据模块、业务处理
都是进行松耦合的关联处理,当系统功能不再满足时都可以进行实时扩
展。
3.2.系统功能分析
本系统的设计阶段,通过对需要的分析理解,可以总结出各个需求
点,现需要把这些需求点设计成功能模块,但在设计功能模块的数据库
9
结构前,需要梳理功能模块的思维图。
3.2.1.用户登录功能模块梳理
用户登录需要身份标识及验证,系统需要记录用户的身份信息,用
户登录模块涉及用户名、密码、用户类型信息,如图3・1所示。
图3-1用户登录
3.2.2.家庭成员功能模块梳理
家庭成员模块需要记录家庭成员的姓名,对于长辈我们需要记录尊
称等,同时考虑到每个人身体的状况及个人口味喜好,还有临时用餐人
员,家庭成员功能模块涉及姓名、昵称、忌口情况、喜好情况、是否为
来宾,如图3-2所示。
10
是否为来宾
家庭成员昵称、尊称
喜好情况
忌口情况
图3-2家庭成员
3.2.3.菜品功能模块梳理
菜品功能模块,主要记录一些菜品名称、以及菜品的含糖量、盐量、
油腻程度等信息,如图3・3所示。
菜品名称
菜品菜品类型
菜品描述
采品特点
图3-3菜品
3.2.4.食谱功能模块梳理
食谱功能模块主要是每日各餐别的饮食计划,包括用餐日期、餐别、
用餐家庭成员、菜品信息等,如图3-4所示。
11
图3-4食谱
3.2.5.下厨房功能模块梳理
下厨房功能模块主要记录菜品的烹饪方式,以及自己做菜时的经
验,描述详细的烹饪过程,同时支持上传相关拍摄照片。下厨房模块主
要涉及菜品名称,食材,烹饪详细步骤、相关图片,如图3-5所示。
图3-5下厨房
3.3.数据库设计
本系统的数据存储采用的是是SQLServer2016关系型数据库管理
系统,它具有易用性、分布式组织、伸缩性、良好的性价比等特点。数
据库的物理模型建模,采用Sybase(美国软件厂商)的PowerDcsigner
12
进行设计。PowerDcsigner采用模型驱动的方法进行企业建模和设计解
决方案,大大提高了数据库设计的效率。
3.3.1.基础数据表
基础数据表存储各个业务模块配置信息,表的结构如表3-1所示。
表3-1基础信息表
Name▼|Code▼Comment▼DataTyp▼|Lengt▼Preci▼
1NomIDIDnjmeric(30);30p
2KindKind类型varcharflOO)-100i
3ValueValue值varcharflOO):100M
i
4RemarkRemark备注varchar(100)?100
排序
5OrderByOrderByfloati
6CreateTimeCreateTime创建时间datetime
i____i
7CreateUserCreateUser创建者varchar(50)50
i
创建单位v9rchar(50)50
8CreateDeptCreateDept-
修改时间
9UpdateTimeUpdateTimedatetime-
修改者jvarchar(50);50
10UpdateUserUpdateUseri.“......
11UpdateDeptUpdateDept修改单位varchar(50)i50
(•
(•
•一―_…i_________
...............i____
3.3.2.用户表
用户表存储了系统使用用户的登录名、加密、用户类型、备注等信
息,表的结构如表3・2所示。
表3-2用户表
“M
Name▼|Code▼Comment▼DataTyp▼Lengt▼1Pred▼
日0
UserIDUserIDIUnumefic(30)30
□口
2UserNameUserName用户名varcharflOO)100-♦
□口
・•
・
・
3PasswordPassword用户密码varcharflOO)100・
・
■・
口
□・
・
4UserTypeUserType用户类型varchar(100)100・••
□♦口
・•
・
5RemarkRemark备注varcharflOO)100・
■・•
・
口
□・
・
・
6CreateDeptCreateDept建单位varchar(50)[50・•
口
口
・♦
“臻时间・•
CreateTimeCreateTime・•
datetime?・
口
・•
・
;varchar(50):50・
8CreateUserCreateUser健者・♦
〔
・
FUpdateDeptUpdateDept庭改单位jvarchar(%):5(j・
・♦口
・•
joUpdateTimeUpdateTime©改时间datetime・
□-♦口
口•
varchar{5d)150・•
UpdateUserUpdateUser自改者・
TfE:・•
一
口
・
・
口
・
・
・
•口
□・♦•
・•
・
fl:口
・
・
□・•
・
・
・
♦口
口♦•
-R・••
3.3.3.家庭成员表
家庭成员表存储了家庭成员的家人姓名、家人昵称、类型、备注等
基本信息,表的结构如表3-3所示。
13
表3-3家庭成员表
NameCode▼Comment▼Data▼Preci▼PB▼F□
FamilyID=IFamilyID-numeric(30):30
人
姓名
家a□
2FamilyName50
家
人
»••••••••••••••••••••••••••••••••••••••••«呢□
称u
3Nickname50
类
型
<成□
家a
4FamilyType
备
注
一□
5Remarku
位
创
Re建i.oob
二
单□
6CreateDeptcre/archar(5
创50
建n
时
•••••••••••••••••••••••••••••••••••••••••a间»・♦♦・・・・♦・・□
7CreateTimecre
创
建
者□
8_CreateUser位50
改
单
e修□
rUpdateDept间50
改
时
UP.修□
ioUpdateTime
改
者
UP修二一□
rfUpdateUserUP50□
□
□
3.3.4.家庭成员饮食禁忌表
家庭成员饮食禁忌表存储了每位家庭成员的饮食习惯信息,忌口或
喜爱1的食物等,表的结构如表3.4所示。
表3-4家庭成员饮食禁忌表□
Name丁|CodeComment▼|DataTyp▼Lengt▼
1|Famib'AvoidlD^EIFamilyAvoidIDIDnumenc(30)30,□
2FamilyIDFamilyID家庭成员numetic(30)30□J,
ID田
3AvoidTypeAvoidType禁忌类型(禁varchar(50)50□
4ContentContentvarchar(500j500□
内容田
5CreateDeptCreateDept创建单位varchar(50)50□
6CreateTimeCreateTimedatetime□
创建时间田
7CreateLhcrCreateUacr创建者varchar(50)50□
8UpdateDeptJpdateDept⑥改单位varchar(50)50□
□田
9UpdateTimeJpdateTime修改时间datetime□
10UpdateUserJpdateUser修改者varchar(50)50
»•••••••••••••••••••••□•
.........................................•
□BD4•
□J•4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高龄结肠镜检查肠道准备的个体化时间管理
- 高龄患者恶性梗阻支架放疗病例
- 高血压合并糖尿病患者降压目标值的设定
- 安徽合肥百花中学等四校2025-2026学年高一下学期5月期中考试 英语试卷
- 高温环境中药动学指南建议
- 幼儿园家园协同幼儿行为问题干预效果-基于协同干预记录与行为变化数据
- 幼儿园绘本共读对幼儿语言发展促进效果研究-基于2024年语言活动录音与复述质量评分
- 骨髓抑制期患者心理状态评估量表应用
- 骨质疏松与老年跌倒的关联性管理
- 甘肃省酒泉市2025-2026学年高二上学期12月月考地理试题
- 噪声软件使用说明书
- 烟气余热回收技术参数换算公式
- 中医病证诊断疗效
- GB/T 2970-2016厚钢板超声检测方法
- 智能农业实验报告
- GB/T 23445-2009聚合物水泥防水涂料
- 人工神经网络HOPFIELD神经网络
- 中小学生励志主题班会课件《告诉你孩子:几年的放纵-换来的是一生卑微和坎坷》
- 2022年山东司法警官职业学院单招综合素质考试笔试试题及答案解析
- 022pet热灌装饮料生产工艺及品质控制
- (完整版)英语高频词汇800词
评论
0/150
提交评论