首页 > 滚动 > > 内容页

熙心健康项目开发杂记

发表于: 2023-07-11 13:09:09 来源:哔哩哔哩

目录

1 引言


(相关资料图)

项目背景

项目意义

项目开发目标

项目前端技术架构

项目后端技术架构

开发工具

2 数据集

表结构

建表SQL

3 方法

服务器端项目启动

前端项目启动

用户进行体检预约

医生编辑体检报告

用户查看体检报告

4 项目结果

运行结果

结果评估

5 结论

6 参考文献

1引言

1.1 项目背景

随着社会的快速发展和人们对健康意识的提升,体检已经成为人们关注自身健康的重要环节。然而,传统的体检系统存在着预约困难、报告信息不透明、流程繁琐等问题。为了解决这些问题,我们小组决定开发一个全新的体检系统,旨在提供简单便捷的预约流程、透明、易于理解的报告信息,以及美观的界面,同时适配手机设备。

1.2 项目意义

首先,我们的体检系统将大大简化体检流程,为用户提供便捷的预约操作。通过在线预约系统,用户可以轻松选择预约时间和地点,免除了传统体检系统中排队等待的不便。这将有助于节省用户的时间和精力,提高用户的满意度。

其次,我们的体检系统将提供透明、易于理解的报告信息。传统的体检报告往往只呈现简单的指标和数据,用户很难理解和分析。然而,我们的系统将对体检报告进行可视化处理,通过图表、图像等方式展示用户的体检结果,使用户能够直观地了解自己的健康状况,进一步促使他们关注个人健康。

最后,我们的体检系统将拥有美观的界面,并且适配手机设备。手机已经成为人们生活中不可或缺的工具,将体检系统与手机相结合,可以让用户随时随地查看预约情况和体检报告,提供了便捷的使用体验。同时,美观的界面设计可以增加用户对系统的好感度,培养用户的使用习惯,提高系统的用户黏性和满意度。

1.3 项目开发目标

我们小组的开发目标是建立一个高效、易用、美观、适配手机设备的体检系统,具体包括以下几个方面:

1. 预约体检流程的简化: 我们将开发一个直观、用户友好的预约界面,用户可以快速选择预约时间和地点,减少预约的繁琐步骤,提高用户的使用便捷性。

2. 透明、易于理解的体检报告: 我们将通过数据可视化的方式展示用户的体检结果,利用图表、图像等形式直观地展示数据,降低用户对体检报告的理解门槛,使用户能够准确、轻松地了解自己的健康情况。

3. 美观的界面设计: 我们将注重界面的整体设计,采用现代化、简洁大气的风格,以提供良好的用户体验。同时,我们将充分考虑手机设备的特点,进行适配,保证系统在手机上的良好展示效果和操作体验。

4. 数据安全和隐私保护: 为了保障用户的隐私安全,我们将采取严格的数据加密和权限控制措施,确保用户的敏感信息不被泄露。

通过以上目标的实现,我们的体检系统将使用户能够更加方便地进行预约、查看体检报告,同时提升用户对系统的满意度,并鼓励用户更加关注个人的健康问题。我们相信,这个项目将对现代化的医疗服务起到积极的推动作用。

首先,通过简化预约流程和提供透明的报告信息,我们的体检系统将使更多的人愿意参与体检,包括那些对传统体检流程感到不便或困惑的人群。这将促进整个社会的健康意识和健康习惯的提高,为人们提供一个更好的健康管理平台。

其次,我们的体检系统不仅对用户有着积极的影响,对医生和医疗机构也具有重要意义。医生可以在系统中直接编辑体检报告,为患者提供个性化的建议和治疗方案。这将提高医生的工作效率和准确性,减少由于传统报告手写和繁琐操作而可能引起的错误。医疗机构也将受益于系统的使用,可以更加高效地管理体检预约和报告生成,提升整体医疗服务水平。

此外,我们的体检系统将具有一定的商业价值。通过系统收集和分析用户的体检数据,可以为医疗机构和科研机构提供宝贵的大数据资源。这些数据可以用于健康研究、病情分析和预测等方面,有助于提高医疗行业的科学性和智能化水平。

最后,我们的体检系统还对社会公共卫生管理具有积极的意义。通过整合公共卫生部门的资源和数据,我们可以为社区居民提供定期体检的提醒和推送,促进疾病的早期发现和治疗。这将有助于提高社区居民的整体健康水平,降低医疗资源的紧张度,为社会公共卫生管理提供全新的思路和方式。

总的来说,我们的体检系统将通过简化预约流程、提供透明的报告信息、美观的界面设计和适配手机等方面的努力,为用户提供便捷、可靠、个性化的体检服务。同时,该系统还将对医生、医疗机构和社会公共卫生管理产生积极的影响。我们相信,通过持续的改进和创新,我们的体检系统将成为现代化医疗服务的先锋,为人们的健康事业做出重要贡献。

项目前端技术架构

1、VUE-CLI

项目后端技术架构

1、JDK

2、SpringBoot

3、MySQL

开发工具

1、前端项目:IntelliJ IDEA

2、后端项目:STS(spring-tool-suite)

3、Apache Maven

4、MySQL   

5、Navicat Premium 8

6、代码托管平台:GitHub

2 数据集

描述数据集的详细信息。可包括:数据库表结构、表中字段结构。以及基础表预添加数据、业务表预添加数据、表关系数据等。

 表结构

2.2 建表SQL

-- ----------------------------

-- Table structure for checkitem

-- ----------------------------

DROP TABLE IF EXISTS `checkitem`;

CREATE TABLE `checkitem`  (

`ciId` int(11) NOT NULL AUTO_INCREMENT COMMENT '检查项编号',

`ciName` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '检查项名称',

`ciContent` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '检查项内容',

`meaning` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '检查项意义',

`remarks` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',

PRIMARY KEY (`ciId`) USING BTREE

) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------

-- Table structure for checkitemdetailed

-- ----------------------------

DROP TABLE IF EXISTS `checkitemdetailed`;

CREATE TABLE `checkitemdetailed`  (

`cdId` int(11) NOT NULL AUTO_INCREMENT COMMENT '检查项明细编号',

`name` varchar(40) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '检查项细明名称',

`unit` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '检查项明细单位',

`minrange` double NULL DEFAULT NULL COMMENT '检查项细明正常值范围中的最小值',

`maxrange` double NULL DEFAULT NULL COMMENT '检查项细明正常值范围中的最大值',

`normalValue` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '检查项细明正常值(非数字型)',

`normalValueString` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '检查项验证范围说明文字',

`type` int(11) NOT NULL DEFAULT 1 COMMENT '检查项明细类型(1:数值围范验证型;2:数值相等验证型;3:无需验证型;4:描述型;5:其它)',

`ciId` int(11) NOT NULL COMMENT '所属检查项编号',

`remarks` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',

PRIMARY KEY (`cdId`) USING BTREE

) ENGINE = InnoDB AUTO_INCREMENT = 32 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------

-- Table structure for cidetailedreport

-- ----------------------------

DROP TABLE IF EXISTS `cidetailedreport`;

CREATE TABLE `cidetailedreport`  (

`cidrId` int(11) NOT NULL AUTO_INCREMENT COMMENT '检查项明细报告主键',

`name` varchar(40) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '检查项明细名称',

`unit` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '检查项明细单位',

`minrange` double NULL DEFAULT NULL COMMENT '检查项细明正常值范围中的最小值',

`maxrange` double NULL DEFAULT NULL COMMENT '检查项细明正常值范围中的最大值',

`normalValue` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '检查项细明正常值(非数字型)',

`normalValueString` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '检查项验证范围说明文字',

`type` int(11) NOT NULL DEFAULT 1 COMMENT '检查项明细类型(1:数值范围验证型;2:数值相等验证型;3:无需验证型;4:描述型;5:其它)',

`value` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '检查项目明细值',

`isError` int(11) NOT NULL DEFAULT 0 COMMENT '此项是否异常(0:无异常;1:异常)',

`ciId` int(11) NOT NULL COMMENT '所属检查项报告编号',

`orderId` int(11) NOT NULL COMMENT '所属预约编号',

PRIMARY KEY (`cidrId`) USING BTREE

) ENGINE = InnoDB AUTO_INCREMENT = 50 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------

-- Table structure for cireport

-- ----------------------------

DROP TABLE IF EXISTS `cireport`;

CREATE TABLE `cireport`  (

`cirId` int(11) NOT NULL AUTO_INCREMENT COMMENT '检查项报告主键',

`ciId` int(11) NOT NULL COMMENT '检查项编号',

`ciName` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '检查项名称',

`orderId` int(11) NOT NULL COMMENT '所属预约编号',

PRIMARY KEY (`cirId`) USING BTREE

) ENGINE = InnoDB AUTO_INCREMENT = 10 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------

-- Table structure for doctor

-- ----------------------------

DROP TABLE IF EXISTS `doctor`;

CREATE TABLE `doctor`  (

`docId` int(11) NOT NULL AUTO_INCREMENT COMMENT '医生编号',

`docCode` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '医生编码',

`realName` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '真实姓名',

`password` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '密码',

`sex` int(11) NOT NULL COMMENT '性别',

`deptno` int(11) NOT NULL COMMENT '所属科室(1:检验科;2:内科;3:外科)',

PRIMARY KEY (`docId`) USING BTREE,

UNIQUE INDEX `docCode`(`docCode`) USING BTREE

) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------

-- Table structure for hospital

-- ----------------------------

DROP TABLE IF EXISTS `hospital`;

CREATE TABLE `hospital`  (

`hpId` int(11) NOT NULL AUTO_INCREMENT COMMENT '医院编号',

`name` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '医院名称',

`picture` mediumtext CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '医院图片',

`telephone` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '医院电话',

`address` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '医院地址',

`businessHours` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '营业时间',

`deadline` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '采血截止时间',

`rule` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '预约人数规则',

`state` int(11) NOT NULL COMMENT '医院状态(1:正常;2:其他)',

PRIMARY KEY (`hpId`) USING BTREE

) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------

-- Table structure for orders

-- ----------------------------

DROP TABLE IF EXISTS `orders`;

CREATE TABLE `orders`  (

`orderId` int(11) NOT NULL AUTO_INCREMENT COMMENT '订单编号',

`orderDate` date NOT NULL COMMENT '预约日期',

`userId` varchar(11) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '客户编号',

`hpId` int(11) NOT NULL COMMENT '所属医院编号',

`smId` int(11) NOT NULL COMMENT '所属套餐编号',

`state` int(11) NOT NULL DEFAULT 1 COMMENT '订单状态(1:未归档;2:已归档)',

PRIMARY KEY (`orderId`) USING BTREE

) ENGINE = InnoDB AUTO_INCREMENT = 100569838 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------

-- Table structure for overallresult

-- ----------------------------

DROP TABLE IF EXISTS `overallresult`;

CREATE TABLE `overallresult`  (

`orId` int(11) NOT NULL AUTO_INCREMENT COMMENT '总检结论项编号',

`title` varchar(40) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '总检结论项标题',

`content` varchar(400) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '总检结论项内容',

`orderId` int(11) NOT NULL COMMENT '所属预约编号',

PRIMARY KEY (`orId`) USING BTREE

) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------

-- Table structure for setmeal

-- ----------------------------

DROP TABLE IF EXISTS `setmeal`;

CREATE TABLE `setmeal`  (

`smId` int(11) NOT NULL AUTO_INCREMENT COMMENT '套餐编号',

`name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '套餐名称',

`type` int(11) NOT NULL COMMENT '套餐类型(1:男士餐套;0:女士套餐)',

`price` int(11) NOT NULL COMMENT '套餐价格',

PRIMARY KEY (`smId`) USING BTREE

) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------

-- Table structure for setmealdetailed

-- ----------------------------

DROP TABLE IF EXISTS `setmealdetailed`;

CREATE TABLE `setmealdetailed`  (

`sdId` int(11) NOT NULL AUTO_INCREMENT COMMENT '套餐明细编号(无意义主键)',

`smId` int(11) NOT NULL COMMENT '套餐编号',

`ciId` int(11) NOT NULL COMMENT '检查项编号',

PRIMARY KEY (`sdId`) USING BTREE

) ENGINE = InnoDB AUTO_INCREMENT = 26 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------

-- Table structure for users

-- ----------------------------

DROP TABLE IF EXISTS `users`;

CREATE TABLE `users`  (

`userId` varchar(11) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '用户编号(手机号码)',

`password` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '密码',

`realName` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '真实姓名',

`sex` int(11) NOT NULL COMMENT '用户性别(1:男;0女)',

`identityCard` varchar(18) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '身份证号',

`birthday` date NOT NULL COMMENT '出生日期',

`userType` int(11) NOT NULL COMMENT '用户类型(1:普通用户;2:东软内部员工;3:其他)',

PRIMARY KEY (`userId`) USING BTREE

) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

3 方法

服务器端项目启动

启动服务器端项目,查看是否正常启动以及日志信息。

(1)体检预约APP服务器端

运行,APP服务器使用8080端口成功启动。

(2)体检报告管理系统服务器端

运行,管理系统服务器使用8088端口成功启动。

前端项目启动

启动前端项目,查看是否正常启动以及日志信息。

(1) 体检预约APP前端

在终端输入npm run serve回车,项目使用8081端口成功启动。

(2) 体检报告管理系统前端

在终端输入npm run serve回车,项目使用8083端口成功启动。

用户进行体检预约

模拟用户进行体检预约流程。

3.4医生编辑体检报告

模拟医生进行体检报告的编辑流程。

用户查看体检报告

模拟用户进行体检报告查看的流程。

4 项目结果

 运行结果

输出某用户的某次完整体检报告。

以下是系统用户的体检报告,分为总检结论和报告详情,在总检结论中显示了异常项、体检结论标题以及详细内容,在报告详情中显示了各项报告明细的实际值、正常值和是否异常。

结果评估

体检预约过程中对用户是否已有预约进行了判断,如果用户已有预约则给出提示并结束业务流程,如果没有预约则继续正常业务流程,执行结果与设计一致。

体检报告详情页分为总检结论和报告详情,在总检结论中显示了异常项、体检结论标题以及详细内容,在报告详情中显示了各项报告明细的实际值、正常值和是否异常,格式清晰明了,适合用户阅读浏览。

5 结论

我们小组的项目是一个体检系统,它有以下几个功能:

预约体检:用户可以通过网站或手机端选择合适的体检时间和地点,填写个人信息和健康状况,提交预约申请。

查看体检报告:用户可以在体检完成后,通过网站或手机端查看自己的体检报告,了解自己的身体状况和建议。

编辑体检报告:医生可以在网站或手机端对用户的体检报告进行编辑,添加或修改诊断结果和建议,保存或打印报告。

美观的界面:我们小组设计了一个简洁而美观的界面,采用了清晰的布局和色彩,方便用户和医生的操作和浏览,同时也适配了手机端的显示。

我们小组在项目过程中遇到了一些困难,例如:

数据库的连接:我们需要实现web端和服务器的连接和交互。

网站和手机端的开发:我们需要使用合适的技术和工具,开发一个功能完善、性能稳定、界面友好的网站和手机端,同时也要考虑安全性和兼容性。

团队的协作和沟通:我们需要分工合作,明确各自的任务和责任,定期进行会议和讨论,及时反馈进度和问题,共同解决遇到的难题。

我们小组在项目完成后,收获了许多,例如:

技术能力的提升:我们学习了新的技术知识和技能,如数据库设计、网页开发、移动开发等,并且运用到了实际项目中,提高了自己的编程水平和解决问题的能力。

团队合作的经验:我们体验了一个完整的软件开发过程,从需求分析、设计、编码、测试到部署、维护等,并且与其他小组成员进行了有效的协作和沟通,增强了自己的团队意识和协调能力。

个人成长的机会:我们在项目中不仅完成了自己的任务,还主动帮助其他小组成员,互相学习和交流,拓展了自己的视野和思维,并且在遇到困难时不放弃,积极寻求解决方案,培养了自己的创新精神和责任感。

我们项目的优势有以下几点:

为用户提供了一个方便快捷的体检服务,节省了用户的时间和精力,提高了用户的满意度和信任度。用户可以通过我们的系统,轻松地预约体检,选择合适的时间和地点,无需排队等待,也无需担心错过体检。用户还可以在体检完成后,及时地查看自己的体检报告,了解自己的身体状况和建议,及时采取措施改善自己的健康。我们的系统为用户提供了一个便捷、安全、可靠的体检服务,让用户感到舒适和放心。

为医生提供了一个高效便捷的体检管理系统,减少了医生的工作量和错误率,提高了医生的工作效率和质量。医生可以通过我们的系统,方便地管理用户的体检信息,如预约、取消、修改等,并且可以实时地获取用户的体检数据,如血压、血糖、心率等。医生还可以通过我们的系统,对用户的体检报告进行编辑,添加或修改诊断结果和建议,并且可以保存或打印报告。我们的系统为医生提供了一个高效、准确、专业的体检管理系统,让医生节省时间和精力,提升工作水平和质量。

为社会提供了一个有助于健康管理和预防疾病的平台,促进了社会的健康水平和福祉。我们的系统可以帮助用户及时发现自己的身体问题,如高血压、糖尿病、心脏病等,并且可以根据医生的建议,采取相应的措施,如调整饮食、运动、服药等。我们的系统也可以帮助用户养成良好的健康习惯,如定期体检、关注身体变化、保持积极心态等。我们的系统为社会提供了一个有助于健康管理和预防疾病的平台,让社会更加健康和幸福。

总之,我们小组的项目是一个成功的项目,它不仅实现了预期的功能和效果,还给我们带来了宝贵的经验和收获。我们感谢老师和同学们对我们项目的支持和评价,也感谢我们小组成员之间的信任和配合。我们希望我们的项目能够为社会带来一些价值和贡献。

6 参考文献

[1]林静,文银刚.基于SpringBoot+Vue的医学科研数据管理平台的设计与实现[J].价值工程,2023,42(12):126-128.

[2]陈倩怡,何军.Vue+Springboot+MyBatis技术应用解析[J].电脑编程技巧与维护,2020(01):14-15+.16184/.

[3]杨辉,黄家昌.基于Vue的页面设计器实现与应用[J].现代信息科技,2023,7(10):99-101+.19850/.

[4]单树倩,任佳勋.基于SpringBoot和Vue框架的数据库原理网站设计与实现[J].电脑知识与技术,2021,17(30):40-41+.14004/.

标签:

Copyright ©  2015-2022 世界公司网版权所有  备案号:琼ICP备2022009675号-1   联系邮箱:435 227 67@qq.com