基于javaweb的私人牙医管理系统(java+springboot+html+layui+echarts+mysql)
基于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版本;
技术栈
后端:SpringBoot
前端:html+jQuery+layui+echarts
使用说明
- 使用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)相关推荐
- 基于javaweb+mysql的私人牙医管理系统(java+SpringBoot+html+layui+echarts+maven+mysql)
项目介绍 私人牙医管理系统.该项目分为前后台,共三种角色:管理员.医生.客户: 前台主要功能包括:首页.医生介绍.新闻资讯.关于我们.联系我们等功能: 后台管理员主要功能包括: 客户管理:客户信息统计 ...
- Java项目:私人牙医管理系统(java+SpringBoot+html+layui+echarts+maven+mysql)
源码获取:博客首页 "资源" 里下载! 项目介绍 私人牙医管理系统.该项目分为前后台,共三种角色:管理员.医生.客户: 前台主要功能包括:首页.医生介绍.新闻资讯.关于我们.联系我 ...
- 基于javaweb的景区旅游管理系统(java+springboot+html+layui+bootstrap+jquery+mysql)
基于javaweb的景区旅游管理系统(java+springboot+html+layui+bootstrap+jquery+mysql) 运行环境 Java≥8.MySQL≥5.7 开发工具 ecl ...
- 基于javaweb的驾校预约管理系统(java+ssm+html+layui+bootstrap+mysql)
基于javaweb的驾校预约管理系统(java+ssm+html+layui+bootstrap+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/ ...
- 基于javaweb的农产品溯源管理系统(java+ssm+jsp+layui+jquery+mysql)
基于javaweb的农产品溯源管理系统(java+ssm+jsp+layui+jquery+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/ide ...
- 基于javaweb的汽车租赁系统(java+ssm+jsp+layui+echarts+mysql)
基于javaweb的汽车租赁系统(java+ssm+jsp+layui+echarts+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/ ...
- 基于javaweb的平行志愿管理系统(java+springboot+mybatis+vue+mysql)
基于javaweb的平行志愿管理系统(java+springboot+mybatis+vue+mysql) 运行环境 Java≥8.MySQL≥5.7.Node.js≥10 开发工具 后端:eclip ...
- 基于javaweb的蓝天幼儿园管理系统(java+springboot+thymeleaf+html+mysql)
基于javaweb的蓝天幼儿园管理系统(java+springboot+thymeleaf+html+mysql) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/my ...
- 基于javaweb的精美物流管理系统(java+springboot+vue+mysql)
基于javaweb的精美物流管理系统(java+springboot+vue+mysql) 运行环境 Java≥8.MySQL≥5.7.Node.js≥10 开发工具 后端:eclipse/idea/ ...
最新文章
- Open-falcon运维监控系统——微信接口二次开发
- HDOJ--4821--String【弦hash】
- 大数据盘点00后求职选择,过半职场新人会因工作太简单辞职?
- 你应该知道的25道Javascript面试题
- mysql 32k 限制,MySQL之最大和最小
- BootstrapTable分页(二)
- AttributeError: 'str' object has no attribute 'decode'
- 20181207 上课截图
- ❤️测试人的曲折职场路:从毕业的5K到20K,四年我换了3份工作…
- linux的文件与目录,linux-文件与目录
- Pycharm下tensorflow导入错误
- 浅谈机顶盒破解之修改开机画面 修改开机动画 修改系统app 去掉认证app
- 分享一份软件测试面试指南
- sap 服务器文件 暴露pdf地址,访问地址预览
- 数字图像处理复习总结
- DeFi之道丨告别朝九晚五,一文了解区块链新组织形式DO
- 念念不忘,必有回响。5次失败后,淘宝爬虫终于可以用了
- 【路径规划】基于遗传算法求解多中心VRP问题matlab源码
- PATH linux环境变量 LD_LIBRARY_PATH详解
- 国网通信之数据通信网