基于javaweb+mysql的ssm医院病历信息管理系统(java+ssm+jsp+bootstrap+easyui+mysql)
私信源码获取及调试交流
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb+mysql的SSM医院病历信息管理系统(java+ssm+jsp+bootstrap+easyui+mysql)
项目介绍
本项目分为管理员、医生两种角色。 管理员角色包含以下功能: 登录页面,个人信息,修改密码,医生管理(职位管理、科室管理、医生管理)、患者管理(患者管理、患者统计)、患者病历(病历类型、病历管理、已删病历)、系统管理(登录日志)等功能。
医生角色包含以下功能: 登录页面,个人信息,修改密码,患者管理、患者病历(病历管理、已删病历)等功能。
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 5.数据库:MySql 5.7版本; 6.是否maven项目:否
技术栈
- 后端:Spring+SpringMVC+Mybatis 2. 前端:JSP+css+javascript+jQuery+bootstrap+easyui
使用说明
- 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven; 若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中conf/jdbc.properties配置文件中的数据库配置改为自己的配置; 4. 运行项目,在浏览器中输入http://localhost:8080/ 登录
public BaseResponse<String> addDepartment(@RequestBody @Validated AddDepartmentReqVO reqVO) {
return iadminService.addDepartment(reqVO);
@PostMapping(value = "/getDepartment")
@ApiOperation(value = "获取所有科室", httpMethod = "POST", notes = "获取所有科室")
public List<GetDepartmentRspVO> getDepartment() {
return iadminService.getDepartment();
用户管理控制层:
@RestController
@RequestMapping(value = "/user")
@Api(tags = "用户管理API")
public class UserController {
@Autowired
@PostMapping(value = "/getAllRole")
public List<GetAllRoleRspVO> getAllRole() {
return iUserService.getAllRole();
医生管理控制层:
@Controller
@RequestMapping("doctor")
public class DoctorController {
@Autowired
private DoctorService doctorService;
/*
* 查询医生
* */
@RequestMapping("doctorList")
public Object doctorList(Doctor doctor, Integer page, Integer limit){
PageHelper.startPage(page, limit);
List<Doctor> listAll = doctorService.doctorList(doctor);
PageInfo pageInfo = new PageInfo(listAll);
Map<String, Object> tableData = new HashMap<String, Object>();
//这是layui要求返回的json数据格式
tableData.put("code", 0);
tableData.put("msg", "");
//将全部数据的条数作为count传给前台(一共多少条)
tableData.put("count", pageInfo.getTotal());
//将分页后的数据返回(每页要显示的数据)
tableData.put("data", pageInfo.getList());
/**
* 后台添加角色
* @param addRoleVO
* @return
*/
@RequestMapping(value = "/addRole", method = RequestMethod.POST)
public BaseResponse<String> addRole(@RequestBody @Validated AddRoleVO addRoleVO) {
return iadminService.addRole(addRoleVO);
/**
* 获取审核角色
* @param
* @return
public class DoctorController {
@Autowired
private DoctorService doctorService;
/*
* 查询医生
* */
@RequestMapping("doctorList")
@ResponseBody
public Object doctorList(Doctor doctor, Integer page, Integer limit){
PageHelper.startPage(page, limit);
List<Doctor> listAll = doctorService.doctorList(doctor);
PageInfo pageInfo = new PageInfo(listAll);
* 个人资料设置
* @return
*/
@PostMapping(value = "/getUserInfo")
public List<UserInfoVO> getUserInfo() {
return iUserService.getUserInfo();
@PostMapping(value = "/changeUserInfo")
public BaseResponse<String> changeUserInfo(@RequestBody @Validated UserInfoVO reqVO) {
return iUserService.changeUserInfo(reqVO);
@PostMapping(value = "/getAnnContent")
public AnnRspVO getAnnContent(@RequestParam String id) {
return iUserService.getAnnContent(id);
@PostMapping(value = "/adddepartment")
@ApiOperation(value = "添加科室", httpMethod = "POST", notes = "添加科室")
@ApiImplicitParam(name = "reqVO",value = "添加科室", dataType = "AddDepartmentReqVO")
public BaseResponse<String> addDepartment(@RequestBody @Validated AddDepartmentReqVO reqVO) {
return iadminService.addDepartment(reqVO);
@PostMapping(value = "/getDepartment")
@ApiOperation(value = "获取所有科室", httpMethod = "POST", notes = "获取所有科室")
public List<GetDepartmentRspVO> getDepartment() {
return iadminService.getDepartment();
用户管理控制层:
public Object addDoctor(Doctor doctor, Paiban paiban){
int count = doctorService.count(doctor);
if(count==0){
int i = doctorService.addDoctor(doctor);
if(i==1){
return "添加成功";
}else{
return "添加失败";
}else{
return doctor.getDoctorName()+"已存在";
/*
* 修改医生
*/
@RequestMapping(value = "/dologin", method = RequestMethod.POST)
public BaseResponse<String> doLogin(@RequestBody @Validated UserLoginReqVO reqVO, Model model) {
return iUserService.doLogin(reqVO);
/**
* 保存用户注册信息,向用户发送激活链接
* @param reqVO
* @return
*/
@RequestMapping(value = "/doregister", method = RequestMethod.POST)
public BaseResponse<String> registered(@RequestBody @Validated UserRegisterReqVO reqVO, Model model) {
return iUserService.saveUserAndSendEmail(reqVO);
@Api(tags = "用户管理API")
public class UserController {
@Autowired
private IUserService iUserService;
/**
* 登录验证
* @param reqVO
* @param model
* @return
*/
@RequestMapping(value = "/dologin", method = RequestMethod.POST)
/**
* 修改密码
* @param reqVO
* @return
*/
@PostMapping(value = "/changePassword")
public BaseResponse<String> changePassword(@RequestBody @Validated ChangePasswordReqVO reqVO) {
return iUserService.changePassword(reqVO);
/**
* 个人资料设置
* @return
*/
@PostMapping(value = "/getUserInfo")
public List<UserInfoVO> getUserInfo() {
@PostMapping(value = "/getDepartment")
@ApiOperation(value = "获取所有科室", httpMethod = "POST", notes = "获取所有科室")
public List<GetDepartmentRspVO> getDepartment() {
return iadminService.getDepartment();
用户管理控制层:
@RestController
@RequestMapping(value = "/user")
@Api(tags = "用户管理API")
public class UserController {
@Autowired
private IUserService iUserService;
iadminService.changeRoleStatus(status, email);
/**
* 公告
* @param reqVO
* @return
*/
@PostMapping(value = "/addAnnouncement")
public BaseResponse<String> addAnnouncement(@RequestBody @Validated AnnouncementVO reqVO) {
return iadminService.addAnnouncement(reqVO);
@GetMapping(value = "/getAnnouncement")
public PageRspVO<AnnouncementVO> getAnnouncement(BasePageReqVO reqVO) {
public Object doctorList(Doctor doctor, Integer page, Integer limit){
PageHelper.startPage(page, limit);
List<Doctor> listAll = doctorService.doctorList(doctor);
PageInfo pageInfo = new PageInfo(listAll);
Map<String, Object> tableData = new HashMap<String, Object>();
//这是layui要求返回的json数据格式
tableData.put("code", 0);
tableData.put("msg", "");
//将全部数据的条数作为count传给前台(一共多少条)
tableData.put("count", pageInfo.getTotal());
//将分页后的数据返回(每页要显示的数据)
tableData.put("data", pageInfo.getList());
return tableData;
* @param reqVO
* @return
*/
@PostMapping(value = "/addAnnouncement")
public BaseResponse<String> addAnnouncement(@RequestBody @Validated AnnouncementVO reqVO) {
return iadminService.addAnnouncement(reqVO);
@GetMapping(value = "/getAnnouncement")
public PageRspVO<AnnouncementVO> getAnnouncement(BasePageReqVO reqVO) {
return iadminService.getAnnouncement(reqVO);
@PostMapping(value = "/changeAnnouncement")
public BaseResponse<String> changeAnnouncement(@RequestBody @Validated AnnouncementVO announcementVO) {
return iadminService.changeAnnouncement(announcementVO);
@PostMapping(value = "/deleteAnnouncement")
public BaseResponse<String> deleteAnnouncement(@RequestParam String id) {
tableData.put("code", 0);
tableData.put("msg", "");
//将全部数据的条数作为count传给前台(一共多少条)
tableData.put("count", pageInfo.getTotal());
//将分页后的数据返回(每页要显示的数据)
tableData.put("data", pageInfo.getList());
return tableData;
/*
* 添加医生
* */
@RequestMapping("addDoctor")
* @param reqVO
* @param model
* @return
*/
@RequestMapping(value = "/dologin", method = RequestMethod.POST)
public BaseResponse<String> doLogin(@RequestBody @Validated UserLoginReqVO reqVO, Model model) {
return iUserService.doLogin(reqVO);
/**
* 保存用户注册信息,向用户发送激活链接
* @param reqVO
* @return