QT进阶项目:菜农种植信息管理系统
本系统需要实现数据载入/保存、数据维护,数据查询、数据统计和数据导入/导出五个主要功能,另外根据情况添加辅助功能模块。
系统截图:
项目地址github地址:点击这里
文件结构说明:
vs加载工程文件:
开发环境说明:
本系统采用Visual studio 2015版配合使用Qt 5.9.9 开发完成。Qt下载参考网址http://download.qt.io/archive/qt/5.9/
Visual Studio使用版本
Qt使用版本
为了在Visual studio 2015中方便的使用Qt,推荐安装对应的Qt插件。
Qt插件版本
为了使得插件能够正常工作,需要在插件中配置安装的Qt环境。
Qt插件的环境配置
系统功能模块结构
菜农种植信息查询系统由五大功能模块组成:文件模块、编辑模块、筛选模块、查询模块、统计模块。
1. 文件模块
文件模块包括四个子模块:数据加载、数据保存、数据导出、统计结果导出。
1.数据加载:每次系统启动会自动将预先保存好的数据文件加载入内容,以便后续使用。
2.数据保存:由于在系统的使用过程中可以对数据进行一系列的插入、修改、删除等操作,因此需要对修改后的数据进行保存。
3.数据导出:数据经过筛选、修改后,可以通过导出为.csv文件以供其他使用。
4.统计结果导出:由于系统具有统计功能,所以也能对系统的统计结果导出为.csv文件。
2. 编辑模块
编辑模块包括九个子模块:蔬菜插入、蔬菜修改、蔬菜删除、蔬菜基本信息插入、蔬菜基本信息修改、蔬菜基本信息删除、蔬菜种植信息插入、蔬菜种植信息修改、蔬菜种植信息删除。
1.插入模块:蔬菜插入模块是在种类信息表中插入蔬菜;蔬菜基本信息插入模块是在蔬菜基本信息表中插入一条关于某个蔬菜的基本信息;蔬菜种植信息插入是在蔬菜种植信息表中插入某种蔬菜在某一年的种植信息。
2.修改模块:蔬菜修改模块是在种类信息表中修改蔬菜名称;蔬菜基本信息修改模块可以在蔬菜基本信息表中修改某个蔬菜的基本信息(包括名称和营养成分);蔬菜种植信息修改是在蔬菜种植信息表中修改某种蔬菜在某一年的种植信息(包括蔬菜名称、种植重量、种植面积和种植年份)。
3.删除模块:蔬菜删除模块是在种类信息表中删除蔬菜,同时蔬菜对应的蔬菜基本信息以及蔬菜种植信息也会对应删除;蔬菜基本信息删除模块是在蔬菜基本信息表中删除一条某个蔬菜的基本信息;蔬菜种植信息删除是在蔬菜种植信息表中插入某种蔬菜在某一年的种植信息。
3. 筛选模块
筛选模块包括五个子模块:蔬菜种类筛选、蔬菜营养成分筛选、蔬菜种植年份筛选、蔬菜种植面积筛选、蔬菜收获种类筛选,并且这些子模块可以同时使用,即实现了多条件筛选。
1.蔬菜种类筛选:可以在蔬菜种类信息表、蔬菜基本信息表、蔬菜种植信息表中筛选出所需种类的蔬菜。
2.蔬菜营养成分筛选:可以在蔬菜基本信息表中筛选出包含某类营养物质的蔬菜。
3.蔬菜种植年份筛选:可以在蔬菜种植信息表中筛选出指定种植年份的种植信息。
4.蔬菜种植面积筛选:可以在蔬菜种植信息表中筛选出指定种植面积范围内的蔬菜种植信息记录。
5.蔬菜收获重量筛选:可以在蔬菜种植信息表中筛选出指定收获重量范围内的蔬菜种植信息记录。
4. 查询模块
查询模块包括六个子模块:种类名称查询、种类编号查询、蔬菜名称查询、营养成分查询、种植年份查询、任意信息的组合查询。
1.种类名称查询:可以通过蔬菜的部分名称查询蔬菜的种植信息(如查询“椒”,就能得到甜椒、青椒等等蔬菜的详细信息以及种植信息)。
2.种类编号查询:可以查询蔬菜的编号显示所有该种类的蔬菜以及种植信息。
3.蔬菜名称查询:可以查询某种蔬菜的名称并显示该蔬菜的详细信息以及种植信息。
4.营养成分查询:可以查询含有某类营养物质的蔬菜,并显示其相应的种植信息。
5.种植年份查询:可以查询指定年份的种植信息。
6.任意信息的组合查询:可以同时输入上述信息中的任意两个,实现组合查询信息。
5. 统计模块
统计模块包括四个子模块:种类数量统计、种类种植重量统计、种类种植面积统计、蔬菜种植面积和重量统计。
1.种类蔬菜数量统计:可以统计各个种类的蔬菜数量,并且以统计图的形式展示。
2.种类种植重量统计:可以统计各个种类在指定年份范围内的种植重量的统计,并且以统计图的形式展示。
3.种类种植面积统计:可以统计各个种类在指定年份范围内的种植面积的统计,并且以统计图的形式展示。
4.蔬菜种植面积和重量的统计:可以统计各个蔬菜在指定年份内的种植面积和种植重量的统计,由于蔬菜种类繁多,所以以文字的形式展示。
系统实现说明:
考虑到系统的结构,将采用链表的数据结构,具体又可分为一个三个方向上的十字链表或者两个两个方向上的十字链表来实现,这里选择的是三个方向上的十字链表。具体结构如下图所示。