欢迎光临散文网 会员登陆 & 注册

熙心健康项目开发杂记

2023-07-11 13:14 作者:量子程序员Linus  | 我要投稿

目录

1 引言

    1.1 项目背景

    1.2 项目意义

    1.3 项目开发目标

    1.4 项目前端技术架构

    1.5 项目后端技术架构

    1.6 开发工具

2 数据集

    2.1表结构

    2.2建表SQL

3 方法

    3.1 服务器端项目启动

    3.2 前端项目启动

    3.3 用户进行体检预约

    3.4 医生编辑体检报告

    3.5 用户查看体检报告

4 项目结果

    4.1 运行结果

    4.2 结果评估

5 结论

6 参考文献



1 引言

1.1 项目背景

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

 

1.2 项目意义

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

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

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

 

1.3 项目开发目标

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

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

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

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

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


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

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

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

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

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


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


1.4 项目前端技术架构

1、VUE-CLI

1.5 项目后端技术架构

1、JDK 1.8

2、SpringBoot

3、MySQL

1.6 开发工具

1、前端项目:IntelliJ IDEA

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

3、Apache Maven

4、MySQL   

5、Navicat Premium 8

6、代码托管平台:GitHub



2 数据集

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

2.1 表结构

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 方法

3.1 服务器端项目启动

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

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

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

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

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

3.2 前端项目启动

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

    (1) 体检预约APP前端

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

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

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

3.3 用户进行体检预约

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

预约登录界面
功能界面
预约界面
机构选择界面
项目选择界面
日期选择界面
订单确认界面
预约结果界面

3.4 医生编辑体检报告

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

医生登录界面
报告管理界面
报告编辑界面

3.5 用户查看体检报告

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

预约登录界面
功能界面
报告查询界面
报告总检界面
报告详情界面



4 项目结果

4.1 运行结果

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

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

4.2 结果评估

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

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



5 结论

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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


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



6 参考文献

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

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

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

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

熙心健康项目开发杂记的评论 (共 条)

分享到微博请遵守国家法律