基于javaweb的私人牙医管理系统(java+springboot+html+layui+echarts+mysql)

运行环境

Java≥8、MySQL≥5.7

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

基于javaweb+SpringBoot的私人牙医管理系统(java+SpringBoot+html+layui+echarts+maven+mysql)

项目介绍

私人牙医管理系统。该项目分为前后台,共三种角色:管理员、医生、客户;

前台主要功能包括:首页、医生介绍、新闻资讯、关于我们、联系我们等功能; 后台管理员主要功能包括: 客户管理:客户信息统计、客户列表、添加客户; 医生管理:医生列表、病例列表、新增病例、添加医生; 药品管理:药品信息统计、药品列表、药品添加; 文章管理:文章列表、添加文章; 医生登录主要功能包括: 病例管理:在诊病历、历史病例、新增病例; 客户管理:客户列表、新增客户、预约信息; 普通客户登录主要功能包括: 基本信息、修改密码、预约信息、病例查看; 共10张表;

环境需要

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.是否Maven项目: 是;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目

6.数据库:MySql 8.0版本;

技术栈

  1. 后端:SpringBoot

  2. 前端:html+jQuery+layui+echarts

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 将项目中db.properties配置文件中的数据库配置改为自己的配置 3. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,配置tomcat,然后运行; 4. 运行项目, 前台网站运行地址:http://localhost:8087/user/toCusWel 普通用户登录地址:http://localhost:8087/login/toUserLogin

后台运行地址:管理员及医生登录:http://localhost:8087/login/toDocLogin

医生管理控制层:

@Controller

@RequestMapping(“doctor”)

public class DoctorController {

@Autowired

private DoctorService doctorService;

/*

  • 查询医生

  • */

@RequestMapping(“doctorList”)

@ResponseBody

public Object doctorList(Doctor doctor, Integer page, Integer limit){

PageHelper.startPage(page, limit);

List 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;

/*

  • 添加医生

  • */

@RequestMapping(“addDoctor”)

@ResponseBody

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(“editDoctor”)

@ResponseBody

public Object editDoctor(Doctor doctor){

int i = doctorService.editDoctor(doctor);

if(i==1){

return “修改成功”;

}else{

return “修改失败”;

/*

  • 删除医生

  • */

@RequestMapping(“deleteDoctor”)

@ResponseBody

public Object deleteDoctor(Integer doctorId){

int i1 = doctorService.checkCount(doctorId);

if(i1>0){

return “该医生还有病人”;

}else{

int i = doctorService.deleteDoctor(doctorId);

if(i==1){

return “删除成功”;

}else{

return “删除失败”;

/*

  • 查询科室

  • */

@RequestMapping(“findAllDepartments”)

@ResponseBody

public Object findAllDepartments(){

List allDepartments = doctorService.findAllDepartments();

return allDepartments;

/*

  • 查询类型

  • */

@RequestMapping(“findAllRegisteredtype”)

@ResponseBody

public Object findAllRegisteredtype(){

List allRegisteredtype = doctorService.findAllRegisteredtype();

return allRegisteredtype;

用户管理控制层:

@Controller

@RequestMapping(“user”)

public class UserController {

@Autowired

private UserService userService;

@RequestMapping(“selectAllUser”)

@ResponseBody

public Object selectAllUser(Integer page,Integer limit,User user){

PageHelper.startPage(page, limit);

List allUser = userService.selectAllUser(user);

PageInfo pageInfo = new PageInfo(allUser);

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;

/*

  • 修改用户

  • */

@RequestMapping(“updateUser”)

@ResponseBody

public Object updateUser(User user){

if(userService.updateUser(user)>0){

return “修改成功”;

}else{

return “修改失败”;

/*

  • 删除用户

  • */

@RequestMapping(“deleteUser”)

@ResponseBody

public Object deleteUser(Integer userid){

userService.deleteUser(userid);

return “删除成功”;

/*

  • 初始化用户分配角色

  • */

@RequestMapping(“initUserRole”)

@ResponseBody

public DataGridView initUserRole(Integer userid){

return userService.queryUserRole(userid);

/*

  • 添加用户

  • */

@RequestMapping(“addUser”)

@ResponseBody

public Object addUser(User user){

int i1 = userService.checkUser(user);

if(i1==1){

return “当前登陆名已存在”;

}else {

//加盐

String salt = UserCredentialsMatcher.generateSalt(6);

//MD5加密迭代两次

user.setPwd(UserCredentialsMatcher.encryptPassword(“md5”, “123456”, salt, 2));

user.setType(2);

user.setSalt(salt);

System.out.println(salt);

int i = userService.addUser(user);

if (i > 0) {

return “添加成功”;

} else {

return “添加失败”;

/*

  • 重置密码

  • */

@RequestMapping(“resetUserPwd”)

@ResponseBody

public Object resetUserPwd(User user,Integer userid){

user.setUserid(userid);

//加盐

String salt = UserCredentialsMatcher.generateSalt(6);

//MD5加密迭代两次

user.setPwd(UserCredentialsMatcher.encryptPassword(“md5”, “123456”, salt, 2));

user.setType(2);

user.setSalt(salt);

userService.resetUserPwd(user);

return “重置成功”;

/*

  • 保存用户和角色的关系

  • */

@RequestMapping(“saveUserRole”)

@ResponseBody

public Object saveUserRole(UserRole userRole){

userService.saveUserRole(userRole);

return “分配成功”;

} /*

  • 修改资料

  • */

@RequestMapping(“editLogin”)

@ResponseBody

public Object editLogin(User user){

int i = userService.editLogin(user);

if(i==1){

return “修改成功”;

}else{

return “修改失败”;

@Autowired

private MenuService menuService;

@RequestMapping(“editPwd”)

@ResponseBody

public Object editPwd(User user,String loginname,String pwd,String pwd1){

//第一步:建立subject

Subject subject = SecurityUtils.getSubject();

//第二步:封装token 凭证

UsernamePasswordToken token = new UsernamePasswordToken(loginname, pwd);

try {

//只要能通过认证就能通过了

subject.login(token);

//加盐

String salt = UserCredentialsMatcher.generateSalt(6);

//MD5加密迭代两次

user.setPwd(UserCredentialsMatcher.encryptPassword(“md5”, pwd1, salt, 2));

user.setSalt(salt);

userService.editPwd(user);

return “1”;//修改成功

} catch (IncorrectCredentialsException e) {

return “0”;//密码错误

系统管理控制层:

@Controller

public class SysController {

@Autowired

private UserService userService;

/*

  • 跳转管理菜单

  • */

@RequestMapping(“toMenuManager”)

public String toMenuManager() {

return “view/menu/menuManager”;

/*

  • 跳转加载菜单管理左边的菜单树

  • */

@RequestMapping(“toMenuLeft”)

public String toMenuLeft() {

return “view/menu/menuLeft”;

/*

  • 跳转加载菜单管理左边的增删改

  • */

@RequestMapping(“toMenuRight”)

public String toMenuRight() {

return “view/menu/menuRight”;

/*

  • 跳转加载角色

  • */

@RequestMapping(“toLoadAllRole”)

public String toLoadAllRole() {

return “view/role/roleManager”;

/*

  • 跳转加载用户

  • */

@RequestMapping(“toLoadAllUser”)

public String toLoadAllUser() {

return “view/user/userManager”;

/*

  • 跳转加载doctor.html

  • */

@RequestMapping(“toDoctor”)

public String toDoctor() {

return “view/center/doctor”;

/*

  • 跳转加载departments.html

  • */

@RequestMapping(“toDepartments”)

public String toDepartments() {

return “view/center/departments”;

/*

  • 跳转加载registeredtype.html

  • */

@RequestMapping(“toRegisteredType”)

public String toRegisteredtype() {

return “view/center/registeredType”;

/*

  • 跳转加载icon.html

  • */

@RequestMapping(“icon”)

public String icon() {

return “view/center/icon”;

/*

  • 跳转加载type.html

  • */

@RequestMapping(“toType”)

public String toType() {

return “view/center/type”;

/*

  • 跳转加载area.html

  • */

@RequestMapping(“toArea”)

public String toArea() {

return “view/center/area”;

/*

  • 跳转加载skull.html

  • */

@RequestMapping(“toSkull”)

public String toSkull() {

return “view/center/skull”;

/*

  • 跳转加载warehuose.html

  • */

@RequestMapping(“toWarehuose”)

public String toWarehuose() {

return “view/center/warehuose”;

/*

  • 跳转加载supplyManage.html

  • */

@RequestMapping(“toSupplyManage”)

public String toSupplyManage() {

return “view/center/supplyManage”;

/*

  • 跳转加载supply.html

  • */

@RequestMapping(“toSupply”)

public String toSupply() {

return “view/center/supply”;

/*

  • 跳转加载unit.html

  • */

@RequestMapping(“toUnit”)

public String toUnit() {

return “view/center/unit”;

/*

  • 跳转加载updateLogin.html

  • */

@RequestMapping(“toUpdateLogin”)

public String toUpdateLogin(User user, Integer userid, Model model) {

List users = userService.updateLogin(user);

model.addAttribute(“usersLogin”,users);

return “view/user/updateLogin”;

/*

  • 跳转加载projectTypeManage.html

  • */

@RequestMapping(“toProjectTypeManage”)

public String toProjectTypeManage() {

return “view/center/projectTypeManage”;

/*

  • 跳转加载paiban.html

  • */

@RequestMapping(“toPaiban”)

public String toPaiban() {

return “view/center/paiban”;

/*

  • 跳转加载drugdictionary.html

  • */

@RequestMapping(“toDrugdictionary”)

public String toDrugdictionary() {

return “view/center/drugdictionary”;

/*

  • 跳转加载main.html

  • */

@RequestMapping(“toMain”)

public String toMain() {

return “view/main/main”;

/*

  • 跳转加载reportManage.html

  • */

@RequestMapping(“toReportFinance”)

public String toReportFinance() {

return “view/finance/reportManage”;

/*

  • 跳转加载zhuYuanManage.html

  • */

@RequestMapping(“toZhuYaunManage”)

public String toZhuYaunManage() {

return “view/finance/zhuYuanManage”;

/*

  • 跳转加载zhuYuanManage.html

  • */

@RequestMapping(“toBingYear”)

public String toBingYear() {

return “view/finance/reportBing”;

/*

  • 跳转加载zhuYuanBing.html

  • */

@RequestMapping(“toBing2”)

public String toBing2() {

return “view/finance/zhuYuanBing”;

/*

  • 跳转加载doctorDuibi.html

  • */

@RequestMapping(“toDoctorDuibi”)

public String toDoctorDuibi() {

return “view/finance/doctorDuibi”;

/*

  • 跳转加载current.html

  • */

@RequestMapping(“toCurrent”)

public String toCurrenti() {

return “view/finance/current”;


基于javaweb的私人牙医管理系统(java+springboot+html+layui+echarts+mysql)相关推荐

  1. 基于javaweb+mysql的私人牙医管理系统(java+SpringBoot+html+layui+echarts+maven+mysql)

    项目介绍 私人牙医管理系统.该项目分为前后台,共三种角色:管理员.医生.客户: 前台主要功能包括:首页.医生介绍.新闻资讯.关于我们.联系我们等功能: 后台管理员主要功能包括: 客户管理:客户信息统计 ...

  2. Java项目:私人牙医管理系统(java+SpringBoot+html+layui+echarts+maven+mysql)

    源码获取:博客首页 "资源" 里下载! 项目介绍 私人牙医管理系统.该项目分为前后台,共三种角色:管理员.医生.客户: 前台主要功能包括:首页.医生介绍.新闻资讯.关于我们.联系我 ...

  3. 基于javaweb的景区旅游管理系统(java+springboot+html+layui+bootstrap+jquery+mysql)

    基于javaweb的景区旅游管理系统(java+springboot+html+layui+bootstrap+jquery+mysql) 运行环境 Java≥8.MySQL≥5.7 开发工具 ecl ...

  4. 基于javaweb的驾校预约管理系统(java+ssm+html+layui+bootstrap+mysql)

    基于javaweb的驾校预约管理系统(java+ssm+html+layui+bootstrap+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/ ...

  5. 基于javaweb的农产品溯源管理系统(java+ssm+jsp+layui+jquery+mysql)

    基于javaweb的农产品溯源管理系统(java+ssm+jsp+layui+jquery+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/ide ...

  6. 基于javaweb的汽车租赁系统(java+ssm+jsp+layui+echarts+mysql)

    基于javaweb的汽车租赁系统(java+ssm+jsp+layui+echarts+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/ ...

  7. 基于javaweb的平行志愿管理系统(java+springboot+mybatis+vue+mysql)

    基于javaweb的平行志愿管理系统(java+springboot+mybatis+vue+mysql) 运行环境 Java≥8.MySQL≥5.7.Node.js≥10 开发工具 后端:eclip ...

  8. 基于javaweb的蓝天幼儿园管理系统(java+springboot+thymeleaf+html+mysql)

    基于javaweb的蓝天幼儿园管理系统(java+springboot+thymeleaf+html+mysql) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/my ...

  9. 基于javaweb的精美物流管理系统(java+springboot+vue+mysql)

    基于javaweb的精美物流管理系统(java+springboot+vue+mysql) 运行环境 Java≥8.MySQL≥5.7.Node.js≥10 开发工具 后端:eclipse/idea/ ...

最新文章

  1. Open-falcon运维监控系统——微信接口二次开发
  2. HDOJ--4821--String【弦hash】
  3. 大数据盘点00后求职选择,过半职场新人会因工作太简单辞职?
  4. 你应该知道的25道Javascript面试题
  5. mysql 32k 限制,MySQL之最大和最小
  6. BootstrapTable分页(二)
  7. AttributeError: 'str' object has no attribute 'decode'
  8. 20181207 上课截图
  9. ❤️测试人的曲折职场路:从毕业的5K到20K,四年我换了3份工作…
  10. linux的文件与目录,linux-文件与目录
  11. Pycharm下tensorflow导入错误
  12. 浅谈机顶盒破解之修改开机画面 修改开机动画 修改系统app 去掉认证app
  13. 分享一份软件测试面试指南
  14. sap 服务器文件 暴露pdf地址,访问地址预览
  15. 数字图像处理复习总结
  16. DeFi之道丨告别朝九晚五,一文了解区块链新组织形式DO
  17. 念念不忘,必有回响。5次失败后,淘宝爬虫终于可以用了
  18. 【路径规划】基于遗传算法求解多中心VRP问题matlab源码
  19. PATH linux环境变量 LD_LIBRARY_PATH详解
  20. 国网通信之数据通信网

热门文章

  1. 一摞Python风格的麻将
  2. CANoe/CANalyzer log 文件随笔
  3. PAL制式 NTSC制式
  4. 渐进符号表示时间复杂度上、下界
  5. AI+SHU,爱数这一次聚焦在了平台和生态
  6. 埃森哲被勒索了,你的数据安全吗?
  7. 一个51单片机的键盘扫描程序,算法简单有效
  8. CI130X智能语音芯片应用于智能面板,支持红外设备离线语音控制、场景控制等功能
  9. 网站自动跳转中英文页面的方法
  10. 在Windows Server 2008R2上安装Intel I219-V网卡驱动(技嘉B150主板亲测)