传智健康day02 预约管理-检查项管理

简介: 传智健康day02 预约管理-检查项管理

1. 需求分析

传智健康管理系统是一款应用于健康管理机构的业务系统,实现健康管理机构工作内容可视化、患者管理专业化、健康评估数字化、健康干预流程化、知识库集成化,从而提高健康管理师的工作效率,加强与患者间的互动,增强管理者对健康管理机构运营情况的了解。


系统分为传智健康后台管理系统和移动端应用两部分。其中后台系统提供给健康管理机构内部人员(包括系统管理员、健康管理师等)使用,微信端应用提供给健康管理机构的用户(体检用户)使用。


本项目功能架构图:85.png 通过上面的功能架构图可以看到,传智健康后台管理系统有会员管理、预约管理、健康评估、健康干预等功能。移动端有会员管理、体检预约、体检报告等功能。后台系统和移动端应用都会通过Dubbo调用服务层发布的服务来完成具体的操作。本项目属于典型的SOA架构形式。


本章节完成的功能开发是预约管理功能,包括检查项管理、检查组管理、体检套餐管理、预约设置等 (参见产品原型)。预约管理属于系统的基础功能,主要就是管理一些体检的基础数据。



2. 基础环境搭建

2.1 导入预约管理模块数据表

操作步骤:

(1)根据资料中提供的itcasthealth.pdm文件导出SQL脚本

86.png87.png

2)创建本项目使用的数据库health

88.png

(3)将PowerDesigner导出的SQL脚本导入itcast_health数据库进行建表

89.png

2.2 导入预约管理模块实体类

将资料中提供的POJO实体类复制到health_common工程中。

90.png

2.3 导入项目所需公共资源

项目开发过程中一般会提供一些公共资源,供多个模块或者系统来使用。

本章节我们导入的公共资源有:

(1)返回消息常量类MessageConstant,放到health_common工程中

91.png

2)返回结果Result和PageResult类,封装查询条件的QueryPageBean类,放到health_common工程中

92.png

(3)html、js、css、图片等静态资源,放到health_backend工程中 注意:后续随着项目开发还会陆续导入其他一些公共资源。

93.png


3. 新增检查项

3.1 完善页面

检查项管理页面对应的是checkitem.html页面,根据产品设计的原型已经完成了页面基本结构的编写, 现在需要完善页面动态效果。

3.1.1弹出新增窗口

页面中已经提供了新增窗口,只是处于隐藏状态。只需要将控制展示状态的属性dialogFormVisible改为true就可以显示出新增窗口。


新建按钮绑定的方法为handleCreate,所以在handleCreate方法中修改dialogFormVisible属性的值为true即可。同时为了增加用户体验度,需要每次点击新建按钮时清空表单输入项。

// 重置表单
resetForm() {
    this.formData = {};//重置数据
},
// 弹出添加窗口
handleCreate() {
    //弹出新增窗口
    this.dialogFormVisible = true;
    this.resetForm();
},

3.1.2 输入校验

rules: {//校验规则
    code: [{ required: true, message: '项目编码为必填项', trigger: 'blur' }],
    name: [{ required: true, message: '项目名称为必填项', trigger: 'blur' }]
}

3.1.3 提交表单数据

handleAdd () {
    //进行表单校验
    this.$refs['dataAddForm'].validate((valid) => {
        if(valid){
            //表单校验通过,发送ajax请求,将录入的数据提交到后台处理
            var _this = this;
            axios.post("/checkitem/add.do",this.formData).then((resp) => {
                // resp.data = {};
                if(resp.data.flag){ // 服务器端处理成功
                    //弹出提示信息
                    _this.$message({
                        message: resp.data.message,
                        type: 'success'
                    });
                    //关闭新增窗口
                    _this.dialogFormVisible = false;
                    //重新调用分页查询方法,查询出最新的数据
                    _this.findPage();
                }else{ // 服务器端处理失败
                    _this.$message.error(resp.data.message);
                }
            });
        }else{ // 失败
            this.$message.error("校验失败,请重新填写");
            return false;
        }
    })
},


3.2 后台代码

3.2.1 Controller

在health_backend工程中创建CheckItemController

package com.itterence.controller;
import com.alibaba.dubbo.config.annotation.Reference;
import com.itterence.service.CheckItemService;
import com.itterence.constant.MessageConstant;
import com.itterence.entity.Result;
import com.itterence.pojo.CheckItem;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * 检查项管理
 */
@RestController//相当于@ResponseBody + @Controller合在一起的作用
@RequestMapping("checkitem")
public class CheckItemController {
    @Reference
    private CheckItemService checkItemService;
    //新增检查项
    @RequestMapping("add")
    public Result add(@RequestBody CheckItem checkItem){
        try {
            checkItemService.add(checkItem);
        }catch (Exception e){
            e.printStackTrace();
            //服务调用失败
            return new Result(false, MessageConstant.ADD_CHECKITEM_FAIL);
        }
        return new Result(true,MessageConstant.ADD_CHECKITEM_SUCCESS);
    }
}


3.2.2 服务接口

在health_interface工程中创建CheckItemService接口

package com.itterence.service;
import com.itterence.pojo.CheckItem;
/**
 * 服务接口
 */
public interface CheckItemService {
    public void add(CheckItem checkItem);
}


3.2.3 服务实现类

在health_service_provider工程中创建CheckItemServiceImpl实现类

package com.itterence.service.impl;
import com.alibaba.dubbo.config.annotation.Service;
import com.itterence.dao.CheckItemDao;
import com.itterence.pojo.CheckItem;
import com.itterence.service.CheckItemService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
/**
 * 检查项服务
 */
@Service(interfaceClass=CheckItemService.class)
@Transactional
public class CheckItemServiceImpl implements CheckItemService {
    @Autowired
    private CheckItemDao checkItemDao;
    @Override
    public void add(CheckItem checkItem) {
        checkItemDao.add(checkItem);
    }
}


3.2.4 Dao接口

在health_service_provider工程中创建CheckItemDao接口,本项目是基于Mybatis的Mapper代理技术实现持久层操作,故只需要提供接口和Mapper映射文件,无须提供实现类

package com.itterence.dao;
import com.itterence.pojo.CheckItem;
public interface CheckItemDao {
    public void add(CheckItem checkItem);
}



3.2.5 Mapper映射文件

在health_service_provider工程中创建CheckItemDao.xml映射文件,需要和CheckItemDao接口在同一目录下

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.itterence.dao.CheckItemDao">
    <!--插入检查项数据-->
    <insert id="add" parameterType="com.itterence.pojo.CheckItem">
        insert into t_checkitem(code,name,sex,age,price,type,remark,attention)
                      values
        (#{code},#{name},#{sex},#{age},#{price},#{type},#{remark},#{attention})
    </insert>
</mapper>



相关文章
|
4月前
|
BI
PACS系统,覆盖医院所有科室,实现了全院医学影像和报告的信息共享
PACS系统整合医院放射、CT、MR等检查设备,与HIS系统无缝对接,实现自动化申请与报告。支持DICOM及非DICOM影像获取与强大分析功能,覆盖多科室,促进全院影像资源共享,提升医疗服务效率。超声工作站支持灵活报告生成与管理,具备断网离线工作能力,优化病例检索与影像采集流程,配备统计模块以图表形式展示多维度数据分析,助力高效决策。
124 0
PACS系统,覆盖医院所有科室,实现了全院医学影像和报告的信息共享
|
6月前
|
关系型数据库 MySQL 数据库连接
学员健康管理系统 大作业
学员健康管理系统 大作业
|
7月前
|
小程序 JavaScript Java
个人健康|个人健康管理小程序|基于微信小程序的个人健康管理系统设计与实现(源码+数据库+文档)
个人健康|个人健康管理小程序|基于微信小程序的个人健康管理系统设计与实现(源码+数据库+文档)
375 0
|
7月前
|
小程序 前端开发 NoSQL
微信小程序健康预约检查管理系统的开发与实现
微信小程序健康预约检查管理系统的开发与实现
136 0
|
7月前
【PM专用】快速统计团队还有谁没有登记上报信息,快速筛选出属于自己项目组的成员,未完成XXX工作事项的名单
【PM专用】快速统计团队还有谁没有登记上报信息,快速筛选出属于自己项目组的成员,未完成XXX工作事项的名单
|
存储 SQL NoSQL
传智健康day04 预约管理-套餐管理
传智健康day04 预约管理-套餐管理
传智健康day04 预约管理-套餐管理
|
SQL JSON 前端开发
医疗管理系统-检查项管理 2
医疗管理系统-检查项管理
66 0
|
SQL 前端开发 数据可视化
医疗管理系统-检查项管理 1
医疗管理系统-检查项管理
50 0
|
项目管理
工程设备在线监测管理系统WMWS自动预警功能介绍
WMWS(Wincom Monitoring Web System)是稳控科技专门为终端客户开发的在线监测管理系统,基于BS 架构。可在浏览端实现项目管理、数据查看与下载、曲线查看等操作。系统界面风格简约、布局统一、逻辑清晰,具有极佳的操控体验。三层监测要素架构,实现了多项目、多设备、多测点无限扩展,可满足小型、中型的单(多)项目管理。
工程设备在线监测管理系统WMWS自动预警功能介绍
|
机器学习/深度学习 人工智能 算法
基于PaddleX的可疑人员电子图片信息检查
基于PaddleX的可疑人员电子图片信息检查
119 0
基于PaddleX的可疑人员电子图片信息检查
下一篇
DataWorks